cheeseDM/cheese.ipynb
2025-03-31 17:12:24 +02:00

12983 lines
6.8 MiB
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"cells": [
{
"cell_type": "markdown",
"id": "5f7c9658-c285-4854-96c0-e899fc55421b",
"metadata": {},
"source": [
"# DM project: cheese"
]
},
{
"cell_type": "code",
"execution_count": 1,
"id": "7f4f2b89-8257-468c-9f5e-a77e11b8b8ff",
"metadata": {},
"outputs": [],
"source": [
"import os\n",
"import time\n",
"import json\n",
"import random\n",
"\n",
"import pandas as pd\n",
"import plotly.express as px\n",
"import tqdm.notebook as tqdm\n",
"import matplotlib.pyplot as plt\n",
"from matplotlib import colors\n",
"from geopy.geocoders import Nominatim\n",
"from IPython.display import display, HTML\n",
"from mlxtend.preprocessing import TransactionEncoder\n",
"from mlxtend.frequent_patterns import apriori, association_rules"
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "1a0afba8-692b-4377-a2ce-5114983e3bbb",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>cheese</th>\n",
" <th>url</th>\n",
" <th>milk</th>\n",
" <th>country</th>\n",
" <th>region</th>\n",
" <th>family</th>\n",
" <th>type</th>\n",
" <th>fat_content</th>\n",
" <th>calcium_content</th>\n",
" <th>texture</th>\n",
" <th>rind</th>\n",
" <th>color</th>\n",
" <th>flavor</th>\n",
" <th>aroma</th>\n",
" <th>vegetarian</th>\n",
" <th>vegan</th>\n",
" <th>synonyms</th>\n",
" <th>alt_spellings</th>\n",
" <th>producers</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>Aarewasser</td>\n",
" <td>https://www.cheese.com/aarewasser/</td>\n",
" <td>cow</td>\n",
" <td>Switzerland</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>semi-soft</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>buttery</td>\n",
" <td>washed</td>\n",
" <td>yellow</td>\n",
" <td>sweet</td>\n",
" <td>buttery</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>Jumi</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Abbaye de Belloc</td>\n",
" <td>https://www.cheese.com/abbaye-de-belloc/</td>\n",
" <td>sheep</td>\n",
" <td>France</td>\n",
" <td>Pays Basque</td>\n",
" <td>NaN</td>\n",
" <td>semi-hard, artisan</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>creamy, dense, firm</td>\n",
" <td>natural</td>\n",
" <td>yellow</td>\n",
" <td>burnt caramel</td>\n",
" <td>lanoline</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" <td>Abbaye Notre-Dame de Belloc</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>Abbaye de Belval</td>\n",
" <td>https://www.cheese.com/abbaye-de-belval/</td>\n",
" <td>cow</td>\n",
" <td>France</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>semi-hard</td>\n",
" <td>40-46%</td>\n",
" <td>NaN</td>\n",
" <td>elastic</td>\n",
" <td>washed</td>\n",
" <td>ivory</td>\n",
" <td>NaN</td>\n",
" <td>aromatic</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>Abbaye de Citeaux</td>\n",
" <td>https://www.cheese.com/abbaye-de-citeaux/</td>\n",
" <td>cow</td>\n",
" <td>France</td>\n",
" <td>Burgundy</td>\n",
" <td>NaN</td>\n",
" <td>semi-soft, artisan, brined</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>creamy, dense, smooth</td>\n",
" <td>washed</td>\n",
" <td>white</td>\n",
" <td>acidic, milky, smooth</td>\n",
" <td>barnyardy, earthy</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>Abbaye de Tamié</td>\n",
" <td>https://www.cheese.com/tamie/</td>\n",
" <td>cow</td>\n",
" <td>France</td>\n",
" <td>Savoie</td>\n",
" <td>NaN</td>\n",
" <td>soft, artisan</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>creamy, open, smooth</td>\n",
" <td>washed</td>\n",
" <td>white</td>\n",
" <td>fruity, nutty</td>\n",
" <td>perfumed, pungent</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>NaN</td>\n",
" <td>Tamié, Trappiste de Tamie, Abbey of Tamie</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1182</th>\n",
" <td>Sveciaost</td>\n",
" <td>https://www.cheese.com/sveciaost/</td>\n",
" <td>cow</td>\n",
" <td>Sweden</td>\n",
" <td>Low-laying regions</td>\n",
" <td>NaN</td>\n",
" <td>semi-hard, brined</td>\n",
" <td>45%</td>\n",
" <td>NaN</td>\n",
" <td>creamy, supple</td>\n",
" <td>rindless</td>\n",
" <td>pale yellow</td>\n",
" <td>acidic</td>\n",
" <td>NaN</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1183</th>\n",
" <td>Swag</td>\n",
" <td>https://www.cheese.com/swag/</td>\n",
" <td>goat</td>\n",
" <td>Australia</td>\n",
" <td>South Australia</td>\n",
" <td>NaN</td>\n",
" <td>fresh firm, artisan</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>creamy, crumbly</td>\n",
" <td>ash coated</td>\n",
" <td>white</td>\n",
" <td>acidic, creamy</td>\n",
" <td>fresh</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>Woodside Cheese Wrights</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1184</th>\n",
" <td>Swaledale</td>\n",
" <td>https://www.cheese.com/swaledale/</td>\n",
" <td>sheep</td>\n",
" <td>England</td>\n",
" <td>Swaledale, North Yorkshire</td>\n",
" <td>NaN</td>\n",
" <td>hard</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>semi firm</td>\n",
" <td>NaN</td>\n",
" <td>yellow</td>\n",
" <td>smooth, sweet</td>\n",
" <td>floral</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" <td>Swaledale Sheep Cheese</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1185</th>\n",
" <td>Sweet Style Swiss</td>\n",
" <td>https://www.cheese.com/sweet-style-swiss/</td>\n",
" <td>NaN</td>\n",
" <td>Switzerland</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>semi-hard, artisan</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>firm, supple</td>\n",
" <td>waxed</td>\n",
" <td>NaN</td>\n",
" <td>nutty</td>\n",
" <td>nutty, sweet</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1186</th>\n",
" <td>Swiss cheese</td>\n",
" <td>https://www.cheese.com/swiss/</td>\n",
" <td>cow</td>\n",
" <td>United States</td>\n",
" <td>NaN</td>\n",
" <td>Swiss Cheese</td>\n",
" <td>hard, artisan, processed</td>\n",
" <td>7.8 g/100g</td>\n",
" <td>NaN</td>\n",
" <td>firm</td>\n",
" <td>rindless</td>\n",
" <td>pale yellow</td>\n",
" <td>nutty, sweet</td>\n",
" <td>NaN</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" <td>American Swiss Cheese</td>\n",
" <td>NaN</td>\n",
" <td>Various</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>1187 rows × 19 columns</p>\n",
"</div>"
],
"text/plain": [
" cheese url milk \\\n",
"0 Aarewasser https://www.cheese.com/aarewasser/ cow \n",
"1 Abbaye de Belloc https://www.cheese.com/abbaye-de-belloc/ sheep \n",
"2 Abbaye de Belval https://www.cheese.com/abbaye-de-belval/ cow \n",
"3 Abbaye de Citeaux https://www.cheese.com/abbaye-de-citeaux/ cow \n",
"4 Abbaye de Tamié https://www.cheese.com/tamie/ cow \n",
"... ... ... ... \n",
"1182 Sveciaost https://www.cheese.com/sveciaost/ cow \n",
"1183 Swag https://www.cheese.com/swag/ goat \n",
"1184 Swaledale https://www.cheese.com/swaledale/ sheep \n",
"1185 Sweet Style Swiss https://www.cheese.com/sweet-style-swiss/ NaN \n",
"1186 Swiss cheese https://www.cheese.com/swiss/ cow \n",
"\n",
" country region family \\\n",
"0 Switzerland NaN NaN \n",
"1 France Pays Basque NaN \n",
"2 France NaN NaN \n",
"3 France Burgundy NaN \n",
"4 France Savoie NaN \n",
"... ... ... ... \n",
"1182 Sweden Low-laying regions NaN \n",
"1183 Australia South Australia NaN \n",
"1184 England Swaledale, North Yorkshire NaN \n",
"1185 Switzerland NaN NaN \n",
"1186 United States NaN Swiss Cheese \n",
"\n",
" type fat_content calcium_content \\\n",
"0 semi-soft NaN NaN \n",
"1 semi-hard, artisan NaN NaN \n",
"2 semi-hard 40-46% NaN \n",
"3 semi-soft, artisan, brined NaN NaN \n",
"4 soft, artisan NaN NaN \n",
"... ... ... ... \n",
"1182 semi-hard, brined 45% NaN \n",
"1183 fresh firm, artisan NaN NaN \n",
"1184 hard NaN NaN \n",
"1185 semi-hard, artisan NaN NaN \n",
"1186 hard, artisan, processed 7.8 g/100g NaN \n",
"\n",
" texture rind color flavor \\\n",
"0 buttery washed yellow sweet \n",
"1 creamy, dense, firm natural yellow burnt caramel \n",
"2 elastic washed ivory NaN \n",
"3 creamy, dense, smooth washed white acidic, milky, smooth \n",
"4 creamy, open, smooth washed white fruity, nutty \n",
"... ... ... ... ... \n",
"1182 creamy, supple rindless pale yellow acidic \n",
"1183 creamy, crumbly ash coated white acidic, creamy \n",
"1184 semi firm NaN yellow smooth, sweet \n",
"1185 firm, supple waxed NaN nutty \n",
"1186 firm rindless pale yellow nutty, sweet \n",
"\n",
" aroma vegetarian vegan synonyms \\\n",
"0 buttery False False NaN \n",
"1 lanoline True False Abbaye Notre-Dame de Belloc \n",
"2 aromatic False False NaN \n",
"3 barnyardy, earthy False False NaN \n",
"4 perfumed, pungent False False NaN \n",
"... ... ... ... ... \n",
"1182 NaN False False NaN \n",
"1183 fresh True False NaN \n",
"1184 floral True False Swaledale Sheep Cheese \n",
"1185 nutty, sweet False False NaN \n",
"1186 NaN True False American Swiss Cheese \n",
"\n",
" alt_spellings producers \n",
"0 NaN Jumi \n",
"1 NaN NaN \n",
"2 NaN NaN \n",
"3 NaN NaN \n",
"4 Tamié, Trappiste de Tamie, Abbey of Tamie NaN \n",
"... ... ... \n",
"1182 NaN NaN \n",
"1183 NaN Woodside Cheese Wrights \n",
"1184 NaN NaN \n",
"1185 NaN NaN \n",
"1186 NaN Various \n",
"\n",
"[1187 rows x 19 columns]"
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"data = pd.read_csv(\"cheeses.csv\")\n",
"data"
]
},
{
"cell_type": "markdown",
"id": "bf3b548c-5ac4-4126-9ae9-5578ad158015",
"metadata": {},
"source": [
"## I. Cleaning and pre-processing"
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "a0a77563-518e-4808-b744-9fc0c76763fe",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"1162\n",
"939\n"
]
}
],
"source": [
"print(len(data[pd.isnull(data[\"calcium_content\"])]))\n",
"print(len(data[pd.isnull(data[\"fat_content\"])]))"
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "c8489ffa-1067-4eb7-b65a-2fa18fdb4b04",
"metadata": {},
"outputs": [],
"source": [
"unused_columns = [\"alt_spellings\", \"producers\", \"calcium_content\", \"url\", \"fat_content\", \"synonyms\"]\n",
"for col in unused_columns:\n",
" if col in data.columns:\n",
" del data[col]"
]
},
{
"cell_type": "code",
"execution_count": 5,
"id": "5379265a-cd49-41fa-845c-bfae33bb8f5a",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>cheese</th>\n",
" <th>milk</th>\n",
" <th>country</th>\n",
" <th>region</th>\n",
" <th>family</th>\n",
" <th>type</th>\n",
" <th>texture</th>\n",
" <th>rind</th>\n",
" <th>color</th>\n",
" <th>flavor</th>\n",
" <th>aroma</th>\n",
" <th>vegetarian</th>\n",
" <th>vegan</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>Aarewasser</td>\n",
" <td>cow</td>\n",
" <td>Switzerland</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>semi-soft</td>\n",
" <td>buttery</td>\n",
" <td>washed</td>\n",
" <td>yellow</td>\n",
" <td>sweet</td>\n",
" <td>buttery</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Abbaye de Belloc</td>\n",
" <td>sheep</td>\n",
" <td>France</td>\n",
" <td>Pays Basque</td>\n",
" <td>NaN</td>\n",
" <td>semi-hard, artisan</td>\n",
" <td>creamy, dense, firm</td>\n",
" <td>natural</td>\n",
" <td>yellow</td>\n",
" <td>burnt caramel</td>\n",
" <td>lanoline</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>Abbaye de Belval</td>\n",
" <td>cow</td>\n",
" <td>France</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>semi-hard</td>\n",
" <td>elastic</td>\n",
" <td>washed</td>\n",
" <td>ivory</td>\n",
" <td>NaN</td>\n",
" <td>aromatic</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>Abbaye de Citeaux</td>\n",
" <td>cow</td>\n",
" <td>France</td>\n",
" <td>Burgundy</td>\n",
" <td>NaN</td>\n",
" <td>semi-soft, artisan, brined</td>\n",
" <td>creamy, dense, smooth</td>\n",
" <td>washed</td>\n",
" <td>white</td>\n",
" <td>acidic, milky, smooth</td>\n",
" <td>barnyardy, earthy</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>Abbaye de Tamié</td>\n",
" <td>cow</td>\n",
" <td>France</td>\n",
" <td>Savoie</td>\n",
" <td>NaN</td>\n",
" <td>soft, artisan</td>\n",
" <td>creamy, open, smooth</td>\n",
" <td>washed</td>\n",
" <td>white</td>\n",
" <td>fruity, nutty</td>\n",
" <td>perfumed, pungent</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1182</th>\n",
" <td>Sveciaost</td>\n",
" <td>cow</td>\n",
" <td>Sweden</td>\n",
" <td>Low-laying regions</td>\n",
" <td>NaN</td>\n",
" <td>semi-hard, brined</td>\n",
" <td>creamy, supple</td>\n",
" <td>rindless</td>\n",
" <td>pale yellow</td>\n",
" <td>acidic</td>\n",
" <td>NaN</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1183</th>\n",
" <td>Swag</td>\n",
" <td>goat</td>\n",
" <td>Australia</td>\n",
" <td>South Australia</td>\n",
" <td>NaN</td>\n",
" <td>fresh firm, artisan</td>\n",
" <td>creamy, crumbly</td>\n",
" <td>ash coated</td>\n",
" <td>white</td>\n",
" <td>acidic, creamy</td>\n",
" <td>fresh</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1184</th>\n",
" <td>Swaledale</td>\n",
" <td>sheep</td>\n",
" <td>England</td>\n",
" <td>Swaledale, North Yorkshire</td>\n",
" <td>NaN</td>\n",
" <td>hard</td>\n",
" <td>semi firm</td>\n",
" <td>NaN</td>\n",
" <td>yellow</td>\n",
" <td>smooth, sweet</td>\n",
" <td>floral</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1185</th>\n",
" <td>Sweet Style Swiss</td>\n",
" <td>NaN</td>\n",
" <td>Switzerland</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>semi-hard, artisan</td>\n",
" <td>firm, supple</td>\n",
" <td>waxed</td>\n",
" <td>NaN</td>\n",
" <td>nutty</td>\n",
" <td>nutty, sweet</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1186</th>\n",
" <td>Swiss cheese</td>\n",
" <td>cow</td>\n",
" <td>United States</td>\n",
" <td>NaN</td>\n",
" <td>Swiss Cheese</td>\n",
" <td>hard, artisan, processed</td>\n",
" <td>firm</td>\n",
" <td>rindless</td>\n",
" <td>pale yellow</td>\n",
" <td>nutty, sweet</td>\n",
" <td>NaN</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>1187 rows × 13 columns</p>\n",
"</div>"
],
"text/plain": [
" cheese milk country region \\\n",
"0 Aarewasser cow Switzerland NaN \n",
"1 Abbaye de Belloc sheep France Pays Basque \n",
"2 Abbaye de Belval cow France NaN \n",
"3 Abbaye de Citeaux cow France Burgundy \n",
"4 Abbaye de Tamié cow France Savoie \n",
"... ... ... ... ... \n",
"1182 Sveciaost cow Sweden Low-laying regions \n",
"1183 Swag goat Australia South Australia \n",
"1184 Swaledale sheep England Swaledale, North Yorkshire \n",
"1185 Sweet Style Swiss NaN Switzerland NaN \n",
"1186 Swiss cheese cow United States NaN \n",
"\n",
" family type texture \\\n",
"0 NaN semi-soft buttery \n",
"1 NaN semi-hard, artisan creamy, dense, firm \n",
"2 NaN semi-hard elastic \n",
"3 NaN semi-soft, artisan, brined creamy, dense, smooth \n",
"4 NaN soft, artisan creamy, open, smooth \n",
"... ... ... ... \n",
"1182 NaN semi-hard, brined creamy, supple \n",
"1183 NaN fresh firm, artisan creamy, crumbly \n",
"1184 NaN hard semi firm \n",
"1185 NaN semi-hard, artisan firm, supple \n",
"1186 Swiss Cheese hard, artisan, processed firm \n",
"\n",
" rind color flavor aroma \\\n",
"0 washed yellow sweet buttery \n",
"1 natural yellow burnt caramel lanoline \n",
"2 washed ivory NaN aromatic \n",
"3 washed white acidic, milky, smooth barnyardy, earthy \n",
"4 washed white fruity, nutty perfumed, pungent \n",
"... ... ... ... ... \n",
"1182 rindless pale yellow acidic NaN \n",
"1183 ash coated white acidic, creamy fresh \n",
"1184 NaN yellow smooth, sweet floral \n",
"1185 waxed NaN nutty nutty, sweet \n",
"1186 rindless pale yellow nutty, sweet NaN \n",
"\n",
" vegetarian vegan \n",
"0 False False \n",
"1 True False \n",
"2 False False \n",
"3 False False \n",
"4 False False \n",
"... ... ... \n",
"1182 False False \n",
"1183 True False \n",
"1184 True False \n",
"1185 False False \n",
"1186 True False \n",
"\n",
"[1187 rows x 13 columns]"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"data"
]
},
{
"cell_type": "code",
"execution_count": 6,
"id": "633ed80e-e416-41f6-ae58-b86ce4c132af",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"1181 rows remaining\n"
]
}
],
"source": [
"data=data.dropna(subset=[\"country\",\"region\"], how=\"all\")\n",
"data=data.fillna(value={\"country\":\"\"})\n",
"data=data.fillna(value={\"region\":\"\"})\n",
"print(f\"{len(data)} rows remaining\")"
]
},
{
"cell_type": "markdown",
"id": "fd66568f-78d4-4e1a-a91c-8ec483b4b03c",
"metadata": {},
"source": [
"We removed 6 rows for which we could not find a suitable location. "
]
},
{
"cell_type": "code",
"execution_count": 7,
"id": "5a4c0e30-8535-498b-9a9e-0d7d232d4eb7",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>cheese</th>\n",
" <th>milk</th>\n",
" <th>country</th>\n",
" <th>region</th>\n",
" <th>family</th>\n",
" <th>type</th>\n",
" <th>texture</th>\n",
" <th>rind</th>\n",
" <th>color</th>\n",
" <th>flavor</th>\n",
" <th>aroma</th>\n",
" <th>vegetarian</th>\n",
" <th>vegan</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>Aarewasser</td>\n",
" <td>cow</td>\n",
" <td>Switzerland</td>\n",
" <td></td>\n",
" <td>NaN</td>\n",
" <td>semi-soft</td>\n",
" <td>buttery</td>\n",
" <td>washed</td>\n",
" <td>yellow</td>\n",
" <td>sweet</td>\n",
" <td>buttery</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Abbaye de Belloc</td>\n",
" <td>sheep</td>\n",
" <td>France</td>\n",
" <td>Pays Basque</td>\n",
" <td>NaN</td>\n",
" <td>semi-hard, artisan</td>\n",
" <td>creamy, dense, firm</td>\n",
" <td>natural</td>\n",
" <td>yellow</td>\n",
" <td>burnt caramel</td>\n",
" <td>lanoline</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>Abbaye de Belval</td>\n",
" <td>cow</td>\n",
" <td>France</td>\n",
" <td></td>\n",
" <td>NaN</td>\n",
" <td>semi-hard</td>\n",
" <td>elastic</td>\n",
" <td>washed</td>\n",
" <td>ivory</td>\n",
" <td>NaN</td>\n",
" <td>aromatic</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>Abbaye de Citeaux</td>\n",
" <td>cow</td>\n",
" <td>France</td>\n",
" <td>Burgundy</td>\n",
" <td>NaN</td>\n",
" <td>semi-soft, artisan, brined</td>\n",
" <td>creamy, dense, smooth</td>\n",
" <td>washed</td>\n",
" <td>white</td>\n",
" <td>acidic, milky, smooth</td>\n",
" <td>barnyardy, earthy</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>Abbaye de Tamié</td>\n",
" <td>cow</td>\n",
" <td>France</td>\n",
" <td>Savoie</td>\n",
" <td>NaN</td>\n",
" <td>soft, artisan</td>\n",
" <td>creamy, open, smooth</td>\n",
" <td>washed</td>\n",
" <td>white</td>\n",
" <td>fruity, nutty</td>\n",
" <td>perfumed, pungent</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1182</th>\n",
" <td>Sveciaost</td>\n",
" <td>cow</td>\n",
" <td>Sweden</td>\n",
" <td>Low-laying regions</td>\n",
" <td>NaN</td>\n",
" <td>semi-hard, brined</td>\n",
" <td>creamy, supple</td>\n",
" <td>rindless</td>\n",
" <td>pale yellow</td>\n",
" <td>acidic</td>\n",
" <td>NaN</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1183</th>\n",
" <td>Swag</td>\n",
" <td>goat</td>\n",
" <td>Australia</td>\n",
" <td>South Australia</td>\n",
" <td>NaN</td>\n",
" <td>fresh firm, artisan</td>\n",
" <td>creamy, crumbly</td>\n",
" <td>ash coated</td>\n",
" <td>white</td>\n",
" <td>acidic, creamy</td>\n",
" <td>fresh</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1184</th>\n",
" <td>Swaledale</td>\n",
" <td>sheep</td>\n",
" <td>England</td>\n",
" <td>Swaledale, North Yorkshire</td>\n",
" <td>NaN</td>\n",
" <td>hard</td>\n",
" <td>semi firm</td>\n",
" <td>NaN</td>\n",
" <td>yellow</td>\n",
" <td>smooth, sweet</td>\n",
" <td>floral</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1185</th>\n",
" <td>Sweet Style Swiss</td>\n",
" <td>NaN</td>\n",
" <td>Switzerland</td>\n",
" <td></td>\n",
" <td>NaN</td>\n",
" <td>semi-hard, artisan</td>\n",
" <td>firm, supple</td>\n",
" <td>waxed</td>\n",
" <td>NaN</td>\n",
" <td>nutty</td>\n",
" <td>nutty, sweet</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1186</th>\n",
" <td>Swiss cheese</td>\n",
" <td>cow</td>\n",
" <td>United States</td>\n",
" <td></td>\n",
" <td>Swiss Cheese</td>\n",
" <td>hard, artisan, processed</td>\n",
" <td>firm</td>\n",
" <td>rindless</td>\n",
" <td>pale yellow</td>\n",
" <td>nutty, sweet</td>\n",
" <td>NaN</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>1181 rows × 13 columns</p>\n",
"</div>"
],
"text/plain": [
" cheese milk country region \\\n",
"0 Aarewasser cow Switzerland \n",
"1 Abbaye de Belloc sheep France Pays Basque \n",
"2 Abbaye de Belval cow France \n",
"3 Abbaye de Citeaux cow France Burgundy \n",
"4 Abbaye de Tamié cow France Savoie \n",
"... ... ... ... ... \n",
"1182 Sveciaost cow Sweden Low-laying regions \n",
"1183 Swag goat Australia South Australia \n",
"1184 Swaledale sheep England Swaledale, North Yorkshire \n",
"1185 Sweet Style Swiss NaN Switzerland \n",
"1186 Swiss cheese cow United States \n",
"\n",
" family type texture \\\n",
"0 NaN semi-soft buttery \n",
"1 NaN semi-hard, artisan creamy, dense, firm \n",
"2 NaN semi-hard elastic \n",
"3 NaN semi-soft, artisan, brined creamy, dense, smooth \n",
"4 NaN soft, artisan creamy, open, smooth \n",
"... ... ... ... \n",
"1182 NaN semi-hard, brined creamy, supple \n",
"1183 NaN fresh firm, artisan creamy, crumbly \n",
"1184 NaN hard semi firm \n",
"1185 NaN semi-hard, artisan firm, supple \n",
"1186 Swiss Cheese hard, artisan, processed firm \n",
"\n",
" rind color flavor aroma \\\n",
"0 washed yellow sweet buttery \n",
"1 natural yellow burnt caramel lanoline \n",
"2 washed ivory NaN aromatic \n",
"3 washed white acidic, milky, smooth barnyardy, earthy \n",
"4 washed white fruity, nutty perfumed, pungent \n",
"... ... ... ... ... \n",
"1182 rindless pale yellow acidic NaN \n",
"1183 ash coated white acidic, creamy fresh \n",
"1184 NaN yellow smooth, sweet floral \n",
"1185 waxed NaN nutty nutty, sweet \n",
"1186 rindless pale yellow nutty, sweet NaN \n",
"\n",
" vegetarian vegan \n",
"0 False False \n",
"1 True False \n",
"2 False False \n",
"3 False False \n",
"4 False False \n",
"... ... ... \n",
"1182 False False \n",
"1183 True False \n",
"1184 True False \n",
"1185 False False \n",
"1186 True False \n",
"\n",
"[1181 rows x 13 columns]"
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"data"
]
},
{
"cell_type": "code",
"execution_count": 8,
"id": "7ef7494b-ff08-40a5-890f-e0f718cf2842",
"metadata": {},
"outputs": [],
"source": [
"data.loc[data.country.str.contains(\"England, Great Britain, United Kingdom\")|data.country.str.contains(\"England, United Kingdom\"),\"country\"]=\"England\"\n",
"data.loc[data.country.str.contains(\"Scotland\"),\"country\"]=\"Scotland\"\n",
"data.loc[data.country.str.contains(\"Great Britain, United Kingdom, Wales\")|data.country.str.contains(\"United Kingdom, Wales\"),\"country\"]=\"Wales\""
]
},
{
"cell_type": "code",
"execution_count": 9,
"id": "fb044984-c33c-492c-91a2-4e9fff29ceb3",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>index</th>\n",
" <th>cheese</th>\n",
" <th>milk</th>\n",
" <th>country</th>\n",
" <th>region</th>\n",
" <th>family</th>\n",
" <th>type</th>\n",
" <th>texture</th>\n",
" <th>rind</th>\n",
" <th>color</th>\n",
" <th>flavor</th>\n",
" <th>aroma</th>\n",
" <th>vegetarian</th>\n",
" <th>vegan</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>0</td>\n",
" <td>Aarewasser</td>\n",
" <td>cow</td>\n",
" <td>Switzerland</td>\n",
" <td></td>\n",
" <td>NaN</td>\n",
" <td>semi-soft</td>\n",
" <td>buttery</td>\n",
" <td>washed</td>\n",
" <td>yellow</td>\n",
" <td>sweet</td>\n",
" <td>buttery</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>1</td>\n",
" <td>Abbaye de Belloc</td>\n",
" <td>sheep</td>\n",
" <td>France</td>\n",
" <td>Pays Basque</td>\n",
" <td>NaN</td>\n",
" <td>semi-hard, artisan</td>\n",
" <td>creamy, dense, firm</td>\n",
" <td>natural</td>\n",
" <td>yellow</td>\n",
" <td>burnt caramel</td>\n",
" <td>lanoline</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>2</td>\n",
" <td>Abbaye de Belval</td>\n",
" <td>cow</td>\n",
" <td>France</td>\n",
" <td></td>\n",
" <td>NaN</td>\n",
" <td>semi-hard</td>\n",
" <td>elastic</td>\n",
" <td>washed</td>\n",
" <td>ivory</td>\n",
" <td>NaN</td>\n",
" <td>aromatic</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>3</td>\n",
" <td>Abbaye de Citeaux</td>\n",
" <td>cow</td>\n",
" <td>France</td>\n",
" <td>Burgundy</td>\n",
" <td>NaN</td>\n",
" <td>semi-soft, artisan, brined</td>\n",
" <td>creamy, dense, smooth</td>\n",
" <td>washed</td>\n",
" <td>white</td>\n",
" <td>acidic, milky, smooth</td>\n",
" <td>barnyardy, earthy</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>4</td>\n",
" <td>Abbaye de Tamié</td>\n",
" <td>cow</td>\n",
" <td>France</td>\n",
" <td>Savoie</td>\n",
" <td>NaN</td>\n",
" <td>soft, artisan</td>\n",
" <td>creamy, open, smooth</td>\n",
" <td>washed</td>\n",
" <td>white</td>\n",
" <td>fruity, nutty</td>\n",
" <td>perfumed, pungent</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1135</th>\n",
" <td>1182</td>\n",
" <td>Sveciaost</td>\n",
" <td>cow</td>\n",
" <td>Sweden</td>\n",
" <td>Low-laying regions</td>\n",
" <td>NaN</td>\n",
" <td>semi-hard, brined</td>\n",
" <td>creamy, supple</td>\n",
" <td>rindless</td>\n",
" <td>pale yellow</td>\n",
" <td>acidic</td>\n",
" <td>NaN</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1136</th>\n",
" <td>1183</td>\n",
" <td>Swag</td>\n",
" <td>goat</td>\n",
" <td>Australia</td>\n",
" <td>South Australia</td>\n",
" <td>NaN</td>\n",
" <td>fresh firm, artisan</td>\n",
" <td>creamy, crumbly</td>\n",
" <td>ash coated</td>\n",
" <td>white</td>\n",
" <td>acidic, creamy</td>\n",
" <td>fresh</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1137</th>\n",
" <td>1184</td>\n",
" <td>Swaledale</td>\n",
" <td>sheep</td>\n",
" <td>England</td>\n",
" <td>Swaledale, North Yorkshire</td>\n",
" <td>NaN</td>\n",
" <td>hard</td>\n",
" <td>semi firm</td>\n",
" <td>NaN</td>\n",
" <td>yellow</td>\n",
" <td>smooth, sweet</td>\n",
" <td>floral</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1138</th>\n",
" <td>1185</td>\n",
" <td>Sweet Style Swiss</td>\n",
" <td>NaN</td>\n",
" <td>Switzerland</td>\n",
" <td></td>\n",
" <td>NaN</td>\n",
" <td>semi-hard, artisan</td>\n",
" <td>firm, supple</td>\n",
" <td>waxed</td>\n",
" <td>NaN</td>\n",
" <td>nutty</td>\n",
" <td>nutty, sweet</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1139</th>\n",
" <td>1186</td>\n",
" <td>Swiss cheese</td>\n",
" <td>cow</td>\n",
" <td>United States</td>\n",
" <td></td>\n",
" <td>Swiss Cheese</td>\n",
" <td>hard, artisan, processed</td>\n",
" <td>firm</td>\n",
" <td>rindless</td>\n",
" <td>pale yellow</td>\n",
" <td>nutty, sweet</td>\n",
" <td>NaN</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>1140 rows × 14 columns</p>\n",
"</div>"
],
"text/plain": [
" index cheese milk country \\\n",
"0 0 Aarewasser cow Switzerland \n",
"1 1 Abbaye de Belloc sheep France \n",
"2 2 Abbaye de Belval cow France \n",
"3 3 Abbaye de Citeaux cow France \n",
"4 4 Abbaye de Tamié cow France \n",
"... ... ... ... ... \n",
"1135 1182 Sveciaost cow Sweden \n",
"1136 1183 Swag goat Australia \n",
"1137 1184 Swaledale sheep England \n",
"1138 1185 Sweet Style Swiss NaN Switzerland \n",
"1139 1186 Swiss cheese cow United States \n",
"\n",
" region family type \\\n",
"0 NaN semi-soft \n",
"1 Pays Basque NaN semi-hard, artisan \n",
"2 NaN semi-hard \n",
"3 Burgundy NaN semi-soft, artisan, brined \n",
"4 Savoie NaN soft, artisan \n",
"... ... ... ... \n",
"1135 Low-laying regions NaN semi-hard, brined \n",
"1136 South Australia NaN fresh firm, artisan \n",
"1137 Swaledale, North Yorkshire NaN hard \n",
"1138 NaN semi-hard, artisan \n",
"1139 Swiss Cheese hard, artisan, processed \n",
"\n",
" texture rind color flavor \\\n",
"0 buttery washed yellow sweet \n",
"1 creamy, dense, firm natural yellow burnt caramel \n",
"2 elastic washed ivory NaN \n",
"3 creamy, dense, smooth washed white acidic, milky, smooth \n",
"4 creamy, open, smooth washed white fruity, nutty \n",
"... ... ... ... ... \n",
"1135 creamy, supple rindless pale yellow acidic \n",
"1136 creamy, crumbly ash coated white acidic, creamy \n",
"1137 semi firm NaN yellow smooth, sweet \n",
"1138 firm, supple waxed NaN nutty \n",
"1139 firm rindless pale yellow nutty, sweet \n",
"\n",
" aroma vegetarian vegan \n",
"0 buttery False False \n",
"1 lanoline True False \n",
"2 aromatic False False \n",
"3 barnyardy, earthy False False \n",
"4 perfumed, pungent False False \n",
"... ... ... ... \n",
"1135 NaN False False \n",
"1136 fresh True False \n",
"1137 floral True False \n",
"1138 nutty, sweet False False \n",
"1139 NaN True False \n",
"\n",
"[1140 rows x 14 columns]"
]
},
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"data=data.drop(index=data[data[\"country\"].str.contains(\",\")].index)\n",
"data=data.drop(index=data[data[\"country\"].str.contains(\" and \")].index)\n",
"data.reset_index()"
]
},
{
"cell_type": "markdown",
"id": "2f42c973-247a-4f51-947e-fbd76f8f12fc",
"metadata": {},
"source": [
"We removed 41 cheeses because they can come froms several countries. "
]
},
{
"cell_type": "code",
"execution_count": 10,
"id": "59c4e6e7-d624-45a5-a9ea-eb375102b771",
"metadata": {},
"outputs": [],
"source": [
"data[\"location\"]=data[\"region\"]+\", \"+data[\"country\"]"
]
},
{
"cell_type": "code",
"execution_count": 11,
"id": "0dee0f25-4699-4e46-97d0-21bb36d9c603",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>cheese</th>\n",
" <th>milk</th>\n",
" <th>country</th>\n",
" <th>region</th>\n",
" <th>family</th>\n",
" <th>type</th>\n",
" <th>texture</th>\n",
" <th>rind</th>\n",
" <th>color</th>\n",
" <th>flavor</th>\n",
" <th>aroma</th>\n",
" <th>vegetarian</th>\n",
" <th>vegan</th>\n",
" <th>location</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>Aarewasser</td>\n",
" <td>cow</td>\n",
" <td>Switzerland</td>\n",
" <td></td>\n",
" <td>NaN</td>\n",
" <td>semi-soft</td>\n",
" <td>buttery</td>\n",
" <td>washed</td>\n",
" <td>yellow</td>\n",
" <td>sweet</td>\n",
" <td>buttery</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>, Switzerland</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Abbaye de Belloc</td>\n",
" <td>sheep</td>\n",
" <td>France</td>\n",
" <td>Pays Basque</td>\n",
" <td>NaN</td>\n",
" <td>semi-hard, artisan</td>\n",
" <td>creamy, dense, firm</td>\n",
" <td>natural</td>\n",
" <td>yellow</td>\n",
" <td>burnt caramel</td>\n",
" <td>lanoline</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" <td>Pays Basque, France</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>Abbaye de Belval</td>\n",
" <td>cow</td>\n",
" <td>France</td>\n",
" <td></td>\n",
" <td>NaN</td>\n",
" <td>semi-hard</td>\n",
" <td>elastic</td>\n",
" <td>washed</td>\n",
" <td>ivory</td>\n",
" <td>NaN</td>\n",
" <td>aromatic</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>, France</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>Abbaye de Citeaux</td>\n",
" <td>cow</td>\n",
" <td>France</td>\n",
" <td>Burgundy</td>\n",
" <td>NaN</td>\n",
" <td>semi-soft, artisan, brined</td>\n",
" <td>creamy, dense, smooth</td>\n",
" <td>washed</td>\n",
" <td>white</td>\n",
" <td>acidic, milky, smooth</td>\n",
" <td>barnyardy, earthy</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>Burgundy, France</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>Abbaye de Tamié</td>\n",
" <td>cow</td>\n",
" <td>France</td>\n",
" <td>Savoie</td>\n",
" <td>NaN</td>\n",
" <td>soft, artisan</td>\n",
" <td>creamy, open, smooth</td>\n",
" <td>washed</td>\n",
" <td>white</td>\n",
" <td>fruity, nutty</td>\n",
" <td>perfumed, pungent</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>Savoie, France</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1182</th>\n",
" <td>Sveciaost</td>\n",
" <td>cow</td>\n",
" <td>Sweden</td>\n",
" <td>Low-laying regions</td>\n",
" <td>NaN</td>\n",
" <td>semi-hard, brined</td>\n",
" <td>creamy, supple</td>\n",
" <td>rindless</td>\n",
" <td>pale yellow</td>\n",
" <td>acidic</td>\n",
" <td>NaN</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>Low-laying regions, Sweden</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1183</th>\n",
" <td>Swag</td>\n",
" <td>goat</td>\n",
" <td>Australia</td>\n",
" <td>South Australia</td>\n",
" <td>NaN</td>\n",
" <td>fresh firm, artisan</td>\n",
" <td>creamy, crumbly</td>\n",
" <td>ash coated</td>\n",
" <td>white</td>\n",
" <td>acidic, creamy</td>\n",
" <td>fresh</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" <td>South Australia, Australia</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1184</th>\n",
" <td>Swaledale</td>\n",
" <td>sheep</td>\n",
" <td>England</td>\n",
" <td>Swaledale, North Yorkshire</td>\n",
" <td>NaN</td>\n",
" <td>hard</td>\n",
" <td>semi firm</td>\n",
" <td>NaN</td>\n",
" <td>yellow</td>\n",
" <td>smooth, sweet</td>\n",
" <td>floral</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" <td>Swaledale, North Yorkshire, England</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1185</th>\n",
" <td>Sweet Style Swiss</td>\n",
" <td>NaN</td>\n",
" <td>Switzerland</td>\n",
" <td></td>\n",
" <td>NaN</td>\n",
" <td>semi-hard, artisan</td>\n",
" <td>firm, supple</td>\n",
" <td>waxed</td>\n",
" <td>NaN</td>\n",
" <td>nutty</td>\n",
" <td>nutty, sweet</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>, Switzerland</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1186</th>\n",
" <td>Swiss cheese</td>\n",
" <td>cow</td>\n",
" <td>United States</td>\n",
" <td></td>\n",
" <td>Swiss Cheese</td>\n",
" <td>hard, artisan, processed</td>\n",
" <td>firm</td>\n",
" <td>rindless</td>\n",
" <td>pale yellow</td>\n",
" <td>nutty, sweet</td>\n",
" <td>NaN</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" <td>, United States</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>1140 rows × 14 columns</p>\n",
"</div>"
],
"text/plain": [
" cheese milk country region \\\n",
"0 Aarewasser cow Switzerland \n",
"1 Abbaye de Belloc sheep France Pays Basque \n",
"2 Abbaye de Belval cow France \n",
"3 Abbaye de Citeaux cow France Burgundy \n",
"4 Abbaye de Tamié cow France Savoie \n",
"... ... ... ... ... \n",
"1182 Sveciaost cow Sweden Low-laying regions \n",
"1183 Swag goat Australia South Australia \n",
"1184 Swaledale sheep England Swaledale, North Yorkshire \n",
"1185 Sweet Style Swiss NaN Switzerland \n",
"1186 Swiss cheese cow United States \n",
"\n",
" family type texture \\\n",
"0 NaN semi-soft buttery \n",
"1 NaN semi-hard, artisan creamy, dense, firm \n",
"2 NaN semi-hard elastic \n",
"3 NaN semi-soft, artisan, brined creamy, dense, smooth \n",
"4 NaN soft, artisan creamy, open, smooth \n",
"... ... ... ... \n",
"1182 NaN semi-hard, brined creamy, supple \n",
"1183 NaN fresh firm, artisan creamy, crumbly \n",
"1184 NaN hard semi firm \n",
"1185 NaN semi-hard, artisan firm, supple \n",
"1186 Swiss Cheese hard, artisan, processed firm \n",
"\n",
" rind color flavor aroma \\\n",
"0 washed yellow sweet buttery \n",
"1 natural yellow burnt caramel lanoline \n",
"2 washed ivory NaN aromatic \n",
"3 washed white acidic, milky, smooth barnyardy, earthy \n",
"4 washed white fruity, nutty perfumed, pungent \n",
"... ... ... ... ... \n",
"1182 rindless pale yellow acidic NaN \n",
"1183 ash coated white acidic, creamy fresh \n",
"1184 NaN yellow smooth, sweet floral \n",
"1185 waxed NaN nutty nutty, sweet \n",
"1186 rindless pale yellow nutty, sweet NaN \n",
"\n",
" vegetarian vegan location \n",
"0 False False , Switzerland \n",
"1 True False Pays Basque, France \n",
"2 False False , France \n",
"3 False False Burgundy, France \n",
"4 False False Savoie, France \n",
"... ... ... ... \n",
"1182 False False Low-laying regions, Sweden \n",
"1183 True False South Australia, Australia \n",
"1184 True False Swaledale, North Yorkshire, England \n",
"1185 False False , Switzerland \n",
"1186 True False , United States \n",
"\n",
"[1140 rows x 14 columns]"
]
},
"execution_count": 11,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"data"
]
},
{
"cell_type": "code",
"execution_count": 12,
"id": "e2e868d4-33a1-4602-af97-afb1d29e612f",
"metadata": {
"scrolled": true
},
"outputs": [],
"source": [
"locs=set(data[\"location\"])"
]
},
{
"cell_type": "code",
"execution_count": 13,
"id": "debb780e-ec13-4502-ac44-6001335e507d",
"metadata": {},
"outputs": [],
"source": [
"def str_to_gps(loc):\n",
" l=loc.split(\",\")\n",
" loc=\",\".join([l[0],l[-1]])# removing details gives less errors while fetching the GPS coordinates\n",
" try:\n",
" res=Nominatim(user_agent=\"dmProject\").geocode(loc) \n",
" return (res.latitude, res.longitude)\n",
" except AttributeError:\n",
" loc=l[-1]\n",
" res=Nominatim(user_agent=\"dmProject\").geocode(loc) \n",
" return (res.latitude, res.longitude)"
]
},
{
"cell_type": "code",
"execution_count": 14,
"id": "eed3ac7b-5283-4d8e-bc26-61e1d821ccaf",
"metadata": {},
"outputs": [],
"source": [
"def get_locations(backup_file):\n",
" errors=set()\n",
" if os.path.isfile(backup_file):\n",
" with open(backup_file) as f:\n",
" return json.load(f)\n",
" \n",
" locations_to_gps={}\n",
" for loc in tqdm.tqdm(locs):\n",
" time.sleep(1) # We don't want to overload the Nominatim server which will stop responding\n",
" try:\n",
" locations_to_gps[loc] = str_to_gps(loc)\n",
" print(loc, locations_to_gps[loc])\n",
" except AttributeError:\n",
" errors.add(loc)\n",
" print(loc, file=sys.stderr)\n",
" with open(backup_file, \"w\") as f:\n",
" json.dump(locations_to_gps, f)\n",
" return locations_to_gps"
]
},
{
"cell_type": "code",
"execution_count": 15,
"id": "a6966ac7-7a69-4829-8588-d10f85ea98a4",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"{'Galax, Virginia, United States': [36.6612387, -80.9239671],\n",
" 'Northeastern Brazil, Brazil': [-10.3333333, -53.2],\n",
" 'Tieton, Washington, United States': [46.7020686, -120.75535],\n",
" 'Central Balkan Mountains, Bulgaria': [42.6073975, 25.4856617],\n",
" 'Postel, Belgium': [51.2874865, 5.1897863],\n",
" ', Netherlands': [52.2434979, 5.6343227],\n",
" 'Äänekoski, Finland': [62.6032186, 25.7301361],\n",
" 'New Hampshire, United States': [43.4849133, -71.6553992],\n",
" 'Friuli Venezia Giulia and Veneto, Italy': [42.6384261, 12.674297],\n",
" 'County Cavan, Ireland': [54.03497495, -7.2937022825583675],\n",
" 'Charentes-Poitou, France': [45.4039367, 0.3756199],\n",
" 'Veneto, ': [45.6476663, 11.8665254],\n",
" 'Lazio, Sardinia, Italy': [41.9808038, 12.7662312],\n",
" 'Fairview, United States': [40.6333724, -90.1637318],\n",
" 'County Wexford, Ireland': [52.46018745, -6.606515459159162],\n",
" 'Southwestern Wisconsin, United States': [42.53116075, -90.43762550236468],\n",
" 'Co. Carlow, Ireland': [52.69078865, -6.825145150844913],\n",
" 'West Pawlet, VT, United States': [43.356893, -73.24966776033015],\n",
" 'Passendale, Belgium': [50.9003015, 3.0203891],\n",
" 'Serra da Estrela, Portugal': [40.4358994, -7.516865473467464],\n",
" 'Centre-Val de Loire, France': [47.5490251, 1.7324062],\n",
" \"Lucerne, Schwyz, Unterwald, and Zoug, and the following additional places: Muri district in d'Argovi, Switzerland\": [47.0505452,\n",
" 8.3054682],\n",
" 'Bjurholm, Sweden': [63.966667, 19.0],\n",
" 'Po valley region, Italy': [42.6384261, 12.674297],\n",
" 'Wales, Great Britain': [53.28236125, -3.8286207326666837],\n",
" ', Denmark': [55.670249, 10.3333283],\n",
" 'Asiago, Italy': [45.8753771, 11.5106998],\n",
" 'Flanders, Belgium': [51.096246199999996, 4.178629103169916],\n",
" 'Languedoc, France': [43.65420305, 3.674669940206605],\n",
" 'Brickhill, Co. Clare, Ireland': [52.70642975, -8.751786760846851],\n",
" 'Ontario, Canada': [50.000678, -86.000977],\n",
" ', Armenia': [4.491976149999999, -75.74135085294314],\n",
" 'Mornington Peninsula, Melbourne, Australia': [-38.3312575,\n",
" 145.08106868543985],\n",
" 'Bergues, France': [50.9683886, 2.4325247],\n",
" 'Pesaro-Urbino, Italy': [43.694112700000005, 12.701443660480004],\n",
" 'Cheshire, England': [53.2141028, -2.471770086071205],\n",
" 'Indiana, United States': [40.3270127, -86.1746933],\n",
" 'Rhone-Alps, France': [45.2968119, 4.6604809],\n",
" 'Stranraer, Scotland': [54.9044332, -5.026204],\n",
" 'Seattle, Washington, United States': [47.6038321, -122.330062],\n",
" 'St. Gallen (canton), Tufertschwil, Switzerland': [47.1561047, 9.338323],\n",
" 'South East England, United Kingdom': [51.45115235, -0.9935673736185868],\n",
" 'Lombardy, Italy': [45.5703694, 9.7732524],\n",
" 'Utah, United States': [39.4225192, -111.714358],\n",
" 'Illinois, United States': [40.0796606, -89.4337288],\n",
" ', Wales': [52.2928116, -3.73893],\n",
" 'Low-laying regions, Sweden': [59.6749712, 14.5208584],\n",
" 'Avesnes, France': [50.5495906, 1.9721295],\n",
" ', Middle East': [39.3014159, -76.5888477],\n",
" 'Midi-Pyrenees, France': [43.8099068, 1.4344926056549236],\n",
" 'Southern California, United States': [34.169262950000004, -116.787448181486],\n",
" 'Piedmont, Italy': [45.060735, 7.923549],\n",
" 'California, United States': [36.7014631, -118.755997],\n",
" 'Gloucestershire, England': [51.7643786, -2.1880661838719386],\n",
" 'North Wootton, England': [52.7923213, 0.4278194],\n",
" 'Severn Valley, England': [52.454530899999995, -2.3755702502240226],\n",
" 'Extremadura, Spain': [39.1748426, -6.1529891],\n",
" 'Cumbrian, United Kingdom': [54.478530449999994, -3.06553306667584],\n",
" 'Lebanon, CT, United States': [40.375713, -76.4626118],\n",
" 'Lodi, Italy': [45.2613104, 9.491678060021837],\n",
" 'Websterville, VT, United States': [44.162985, -72.47576806895253],\n",
" 'Swabia, Germany': [48.15313125, 10.47129100603846],\n",
" 'Stewarton, Scotland': [55.680265, -4.5153023],\n",
" 'Oxfordshire, Great Britain': [51.7412674, -1.2245951],\n",
" 'Ballarat, Victoria, Australia': [-37.5623013, 143.8605645],\n",
" 'old Liburnia (Dalmatia), Croatia': [45.3658443, 15.6575209],\n",
" 'Orkney Isles, Scotland': [56.7861112, -4.1140518],\n",
" 'Puimichel in Provence Alpes, France': [46.603354, 1.8883335],\n",
" ', Israel': [30.8124247, 34.8594762],\n",
" 'Port Townsend, United States': [48.1179702, -122.769544],\n",
" ', Iraq': [33.0955793, 44.1749775],\n",
" ', Greece': [38.9953683, 21.9877132],\n",
" 'Greensboro, VT, United States': [36.0726355, -79.7919754],\n",
" 'Cornwall, England': [50.443348900000004, -4.62465658489158],\n",
" 'South West England, England': [51.50076785, -2.5503106339491204],\n",
" 'Pembrokeshire, United Kingdom': [51.8339209, -4.916667],\n",
" 'Northern Holland, Netherlands': [52.2434979, 5.6343227],\n",
" 'Prince Edward Island, Canada': [46.3355508, -63.1466676],\n",
" 'Central and Western Macedonia, Thessalia, Greece': [38.9953683, 21.9877132],\n",
" 'Richfield, Wisconsin, United States': [44.8766431, -93.2877877],\n",
" 'Burgundy, France': [47.27808725, 4.222486304306048],\n",
" 'Pokolbin, Hunter Valley, Australia': [-32.7792106, 151.2978747],\n",
" 'Cotswolds, England': [51.7489422, -0.2303579],\n",
" 'Beara Peninsula, Co. Cork, Ireland': [51.7280451, -9.767906428362338],\n",
" 'County Tipperary, Clogheen, Ireland': [52.68482145, -7.898147186112796],\n",
" 'Ceredigion, United Kingdom': [52.2945764, -3.9527809990291427],\n",
" 'Dorset, England': [50.79683685, -2.34473226124306],\n",
" 'Maine, United States': [45.709097, -68.8590201],\n",
" ', Switzerland': [46.7985624, 8.2319736],\n",
" 'Bethania, United Kingdom': [52.2509586, -4.0888576],\n",
" 'Laruns, France': [42.9882368, -0.4266324],\n",
" ', Sweden': [59.6749712, 14.5208584],\n",
" 'St. Louis, Missouri, United States': [38.6280278, -90.1910154],\n",
" 'Moliterno, Italy': [40.2423024, 15.868903],\n",
" 'Minas Gerais, Brazil': [-18.5264844, -44.1588654],\n",
" 'Troyes , Aube, France': [48.2971626, 4.0746257],\n",
" 'Veneto, Trentino, Italy': [45.6476663, 11.8665254],\n",
" 'Lincolnshire, England': [53.1823034, -0.2031208542548153],\n",
" 'Co. Offaly, Ireland': [53.13617215, -7.810340751784169],\n",
" 'Quebec, Canada': [52.4760892, -71.8258668],\n",
" 'Allgau, Germany': [47.8241593, 11.6822424],\n",
" ', Hungary': [47.1817585, 19.5060937],\n",
" 'Marathon, NY, United States': [44.8914036, -89.7748098],\n",
" 'Timsbury, Somerset, Scotland': [56.7861112, -4.1140518],\n",
" 'Petaluma, California, United States': [38.2325829, -122.636465],\n",
" 'Landford, England': [50.9700788, -1.6363792],\n",
" 'Piora Valley, Switzerland': [46.7985624, 8.2319736],\n",
" 'Burgund, France': [47.27808725, 4.222486304306048],\n",
" 'Wigtownshire, Scotland': [54.9042579, -5.0248893],\n",
" 'Macedonia, Thrace, Thessalia, Peloponissos, Ionian Islands, Aegean islands, Crete Island and Epirus, Greece': [40.6186482,\n",
" 22.91795361795959],\n",
" ', Australia': [-24.7761086, 134.755],\n",
" 'Staffordshire, England': [52.824694199999996, -2.0074546723348115],\n",
" 'Haute Vienne, France': [45.91901925, 1.203176771876291],\n",
" 'Alba, Italy': [44.7007236, 8.0357786],\n",
" 'Campania, Italy': [40.860672, 14.843984],\n",
" 'Taxco, Mexico': [18.5565446, -99.6052838],\n",
" 'New York, United States': [40.7127281, -74.0060152],\n",
" 'Svaneti, Samegrelo, Georgia': [42.63545205, 42.24871384619953],\n",
" 'East Midlands, England': [53.1188177, -1.2597068974971675],\n",
" 'Fornells de la Selva, Gironès, Spain': [41.9319675, 2.8090343],\n",
" 'North Cornwall, England': [51.7561518, 0.4645198],\n",
" 'Colorado, United States': [38.7251776, -105.607716],\n",
" 'Nicasio, United States': [38.0615885, -122.6985975],\n",
" ', Brazil': [-10.3333333, -53.2],\n",
" 'Pyrenees, France': [48.8738565, 2.3852638],\n",
" 'Derbyshire, Leicestershire, Nottinghamshire, England': [53.1185033,\n",
" -1.5566179305872214],\n",
" 'Québec, Canada': [52.4760892, -71.8258668],\n",
" 'Manitoba, Canada': [55.001251, -97.001038],\n",
" 'Auvergne, Salers, France': [45.2968119, 4.6604809],\n",
" 'Upper Corsica, France': [46.603354, 1.8883335],\n",
" 'Setubal, Palmela and Sesimbra, Portugal': [38.5241783, -8.8932341],\n",
" 'Roncq, France': [50.7531232, 3.1209016],\n",
" 'Oregon Coast Range, United States': [39.7837304, -100.445882],\n",
" ', Mexico': [23.6585116, -102.0077097],\n",
" 'Roxburghshire, Scotland': [56.7861112, -4.1140518],\n",
" 'Tipperary, Ireland': [52.4734839, -8.1614446],\n",
" 'Wisconsin, United States': [44.4308975, -89.6884637],\n",
" 'Mankato, MN, United States': [44.1634663, -93.9993505],\n",
" 'Devon, England': [50.724140500000004, -3.6607788161410735],\n",
" 'Kimball, United States': [41.1881305, -103.6997645],\n",
" 'Brooklyn NY, United States': [40.6526006, -73.9497211],\n",
" 'Northern Wisconsin, United States': [44.94725995, -91.39373410986752],\n",
" 'All Holland, Netherlands': [52.4601118, 4.6056526],\n",
" 'Tuscany, Italy': [43.4586541, 11.1389204],\n",
" 'Avila, Spain': [40.656478, -4.7002172],\n",
" 'Belvederis, Lithuania': [55.0820118, 23.3897023],\n",
" 'Naples, Italy': [40.8358846, 14.2487679],\n",
" 'Galicia, Spain': [42.61946, -7.863112],\n",
" 'Castelo Branco, Fundão and Idanha-a-Nova, Portugal': [39.97675825,\n",
" -7.446059929966704],\n",
" 'Pullman, Washington, United States': [46.7304268, -117.173895],\n",
" 'Aveyron, France': [44.315857449999996, 2.5065697302419823],\n",
" 'Ann Arbor, Michigan, United States': [42.2813722, -83.7484616],\n",
" 'Oregon, United States': [43.9792797, -120.737257],\n",
" ', Austria': [47.59397, 14.12456],\n",
" 'Bregenzerwald, Kleinwalsertal, Großwalsertal, Laiblachtal (Pfänderstock) and Rheintal, Austria': [47.387028799999996,\n",
" 9.95606355528393],\n",
" 'Airedale farming district, New Zealand': [-41.5000831, 172.8344077],\n",
" 'Cevenes, France': [44.3509309, 3.8584812791602983],\n",
" 'massif des Causses, France': [46.603354, 1.8883335],\n",
" 'Stawley, near Wellington, Somerset, England': [50.9961449, -3.3382702],\n",
" 'Canary Islands, Spain': [28.286398900000002, -16.796011808910734],\n",
" 'Timsbury, Somerset, England': [51.3271927, -2.4755923],\n",
" 'Anjou, France': [45.3462, 4.88149],\n",
" 'Co Limerick, Ireland': [52.518831649999996, -8.795834650292788],\n",
" 'Coquet, England': [54.88091196980861, -1.5495607774216265],\n",
" 'Modena, Italy': [44.5384728, 10.935960870530739],\n",
" 'Herefordshire, West Midlands, United Kingdom': [52.083333, -2.75],\n",
" 'Dalmatia, Croatia': [43.538796500000004, 16.175235566874342],\n",
" 'Gloucestershire County, England': [51.9425914, -2.100154122305389],\n",
" 'Prince Edward County, Ontario, Canada': [44.031827, -77.246933],\n",
" 'Karlovy Vary, Czech Republic': [50.2306216, 12.8701437],\n",
" ', Canada': [61.0666922, -107.991707],\n",
" ', Afghanistan': [33.7680065, 66.2385139],\n",
" ', Portugal': [39.6621648, -8.1353519],\n",
" 'Chirac, France': [45.9140138, 0.6548543],\n",
" 'Allgäu, Germany': [47.5926009, 10.209156],\n",
" 'Ile de France, France': [48.6443057, 2.7537863],\n",
" 'French Basque Country, Midi-Pyrénées, France': [46.603354, 1.8883335],\n",
" 'St Antoine, France': [44.0361186, 0.8397552],\n",
" ', Spain': [39.3260685, -4.8379791],\n",
" 'Charentes, France': [45.4039367, 0.3756199],\n",
" 'Béarnaise in Pyrénées-Atlantique, France': [46.603354, 1.8883335],\n",
" 'Emilia-Romagna, Italy': [44.525696, 11.039437],\n",
" 'Kinfauns, Perthshire, Scotland': [56.3822607, -3.36565],\n",
" 'Bas-Languedoc, Comtat Venaissin, France': [43.687621, 4.2691037],\n",
" 'Piave Valley, Italy, Italy': [45.735099578237005, 7.320173335891282],\n",
" 'North East Victoria, Australia': [-37.8633951, 145.0100994],\n",
" 'Brittany, France': [48.2640845, -2.9202408],\n",
" 'Fethard, Co Tipperary, Ireland': [52.467222, -7.691111],\n",
" 'Castilla Leon, Spain': [40.4598868, -3.4720773],\n",
" 'Carneros, Sonoma, California, United States': [33.223027,\n",
" -111.70568456233669],\n",
" 'Loire Valley, France': [47.44927715, -0.34954901296919916],\n",
" 'Bermondsey, London, England': [51.4970125, -0.063268],\n",
" 'Bursa, Turkey': [39.9895878, 28.8944669],\n",
" 'Centre , the department of Loiret, France': [47.5490251, 1.7324062],\n",
" ', Argentina': [-34.9964963, -64.9672817],\n",
" 'Pays Basque, France': [47.6867895, 7.3927627],\n",
" 'Vermont, United States': [44.5990718, -72.5002608],\n",
" 'Carmarthenshire, Wales': [51.893669849999995, -4.217282721429928],\n",
" 'Island of Pag, Croatia': [45.3658443, 15.6575209],\n",
" 'Sebastopol, California, United States': [38.4021038, -122.824222],\n",
" 'Friuli-Venezia Giulia, Italy': [46.151042, 13.055904],\n",
" ', Turkey': [39.294076, 35.2316631],\n",
" 'Schoonrewoerd, Leerdam, Netherlands': [51.920458, 5.1156505],\n",
" 'Asturias, Spain': [43.3133868, -5.94192],\n",
" 'Ile-de-France/Champagne, France': [48.5499833, 7.7510775],\n",
" 'island wide, Cyprus': [34.9174159, 32.889902651331866],\n",
" 'Rhône-Alpes, France': [45.3175313, 5.721294352585611],\n",
" 'Aberdeenshire, Scotland': [57.166667, -2.666667],\n",
" 'Co. Cork, Ireland': [51.917535900000004, -8.58597726870895],\n",
" 'Oristano, Italy': [40.02656765, 8.679641647435716],\n",
" 'Zasavica, Serbia': [44.9454307, 19.4987239],\n",
" 'North Yorkshire, England': [54.13453275, -1.498628491239545],\n",
" ', Italy': [42.6384261, 12.674297],\n",
" 'Orkney Islands, Scotland': [58.94182309999999, -3.129694439563327],\n",
" 'Croisy-sur-Eure, France': [49.0291802, 1.346505],\n",
" 'Swaledale, North Yorkshire, England': [54.38299324007608,\n",
" -1.9841360652878535],\n",
" 'Canton of Glarus, Switzerland': [46.7985624, 8.2319736],\n",
" 'Pyrenees-Atlantiques, France': [43.18718655, -0.728247400084667],\n",
" 'Pyrénées, France': [48.8738565, 2.3852638],\n",
" 'Valencia, Spain': [39.4697065, -0.3763353],\n",
" 'East Sussex, United Kingdom': [50.9404266, 0.3699977891068864],\n",
" ', Serbia': [44.024322850000004, 21.07657433209902],\n",
" 'Oviken, Sweden': [62.9974877, 14.3928671],\n",
" 'Aquitaine, France': [44.24620635, -0.18399787392367906],\n",
" 'Dumfriesshire, Scotland': [55.166667, -3.5],\n",
" 'Huizen, Netherlands': [52.2958122, 5.2567209],\n",
" 'Leiden, Netherlands': [52.1594747, 4.4908843],\n",
" 'Gevrey-Chambertin, Burgundy, France': [47.2261857, 4.9705666],\n",
" 'Azores, Portugal': [37.80855645, -25.473137391245295],\n",
" 'Dumfries, Scotland': [55.0691397, -3.6107936],\n",
" 'Rhone Valley, France': [46.603354, 1.8883335],\n",
" 'Blarney, Ireland': [51.9325233, -8.5678665],\n",
" 'British Columbia, Canada': [55.001251, -125.002441],\n",
" 'Castile-Leon, Spain': [41.55005, -5.1387401],\n",
" 'Illoud (Haute-Marne), France': [48.2089823, 5.5615126],\n",
" 'Pienza, Italy': [43.0765485, 11.6789076],\n",
" 'Averyon, France': [46.603354, 1.8883335],\n",
" 'Banks Peninsular in Canterbury, New Zealand': [-41.5000831, 172.8344077],\n",
" 'Pyrénées-Atlantiques, France': [43.18718655, -0.728247400084667],\n",
" 'Hamilton, New Zealand': [-37.7878809, 175.281788],\n",
" 'New South Wales, Australia': [-31.8759835, 147.2869493],\n",
" 'Savoie, France': [45.494895150000005, 6.384660381375652],\n",
" 'Tomales, California, United States': [38.2468075, -122.90630461024097],\n",
" 'Wallonia, Belgium': [50.154540049999994, 5.399359762971196],\n",
" 'Aveyron, Laguiole, France': [44.315857449999996, 2.5065697302419823],\n",
" ', United States': [39.7837304, -100.445882],\n",
" 'Banon, France': [44.0381752, 5.6296701],\n",
" 'Emilia Romagna, Italy': [44.525696, 11.039437],\n",
" 'Wales, London, Wales': [52.41446365, -4.0685073132923],\n",
" 'New York, France': [44.8705067, -0.5504343],\n",
" 'Veneto, Italy': [45.6476663, 11.8665254],\n",
" 'Pays dAuge, Normandy, France': [49.0356178, 0.1573083324015645],\n",
" 'Gâtinais, France': [48.15497515, 2.811419156673292],\n",
" 'Co Clare, Ireland': [52.857257450000006, -8.937435925994537],\n",
" 'Gravina in Puglia, Murgia, Italy': [40.819725, 16.422779],\n",
" 'Gippsland, Victoria, Australia': [-37.87448275, 146.9111788341666],\n",
" 'Monterey, California, United States': [36.2231079, -121.387742],\n",
" ', Germany': [51.1638175, 10.4478313],\n",
" ', Mongolia': [46.8250388, 103.8499736],\n",
" 'Serra da Canastra, Minas Gerais state, Brazil': [-20.1615,\n",
" -46.76365461658604],\n",
" 'Pinconning, Michigan, United States': [43.853633, -83.964987],\n",
" 'Co. Mayo, Ireland': [53.9087056, -9.298304863654256],\n",
" 'Västra Götaland, Sweden': [58.215850200000006, 12.651820794914073],\n",
" 'Somerset, England': [51.161750850000004, -3.0753867062227487],\n",
" 'Carrigtwohill, ': [51.9094617, -8.2611809],\n",
" 'Calabria, Italy': [39.0565974, 16.5249864],\n",
" 'Bavaria, Germany': [48.9467562, 11.4038717],\n",
" ', United Kingdom': [54.7023545, -3.2765753],\n",
" ', Poland': [52.215933, 19.134422],\n",
" 'Sulzberg, Austria': [47.52121792021591, 9.91273065974192],\n",
" ', Mauritania': [20.2540382, -9.2399263],\n",
" 'Piemonte, Italy': [45.060735, 7.923549],\n",
" 'Franche Comté, France': [48.68347355, 2.1776625116070027],\n",
" 'Beira Baixa Province, Portugal': [39.6621648, -8.1353519],\n",
" 'Valpadana, Italy': [39.60288591417616, 16.626802703803317],\n",
" 'Carrigtwohill, Ireland': [51.9094617, -8.2611809],\n",
" 'Maribo, Denmark': [54.7758018, 11.5054333],\n",
" 'South West England, United Kingdom': [51.0339991, -2.949011916021195],\n",
" 'Basque, Pyrenees Mountains, France': [45.359277750000004,\n",
" -1.1480053453043046],\n",
" 'Crotone, Italy': [39.1873894, 16.87828188895307],\n",
" 'Provence, France': [44.0580563, 6.0638506],\n",
" 'province of Brittany, France': [46.603354, 1.8883335],\n",
" 'Campania, Paestum, Foggia, Italy': [40.860672, 14.843984],\n",
" 'Shelburne Farms, United States': [34.89046225, -82.24340593189123],\n",
" 'Treviso, Veneto, Italy': [45.806691349999994, 12.206315763116372],\n",
" 'Missouri, United States': [38.7604815, -92.5617875],\n",
" 'Georgia, United States': [32.3293809, -83.1137366],\n",
" 'North East Victoria, ': [54.699881, -1.6031519],\n",
" 'Tasmania, Australia': [-42.035067, 146.6366887],\n",
" 'Amou, Gascony, France': [43.59266, -0.7475291],\n",
" 'Normandy, France': [49.0677708, 0.3138532],\n",
" 'County Carlow, Ireland': [52.69078865, -6.825145150844913],\n",
" 'Berry, France': [44.5760186, 0.3095833],\n",
" 'Inagh, Co Clare, Ireland': [52.9071704, -9.2345138],\n",
" 'Mols, Denmark': [56.187042, 10.460782482125193],\n",
" 'Odell, Bedfordshire, England': [52.21843025, -0.5921260787763352],\n",
" 'Pembrokeshire, Wales': [51.8339209, -4.916667],\n",
" 'Comox Valley, Vancouver Island, Canada': [49.670981, -125.0353253],\n",
" 'Provencale, France': [43.7899311033635, 7.524017533510311],\n",
" 'Milford, NJ, United States': [41.2222218, -73.0570603],\n",
" 'Carnia, Italy': [46.3738716, 13.1339829],\n",
" 'Northwest, United States': [34.3129464, -78.1611077],\n",
" 'Auvergne, France': [45.2968119, 4.6604809],\n",
" 'Friuli-Venezia Giulia and the Veneto, Italy': [42.6384261, 12.674297],\n",
" ', New Zealand': [-41.5000831, 172.8344077],\n",
" 'Adamstown, Co Wexford, Ireland': [53.3360017, -6.4692321],\n",
" 'Castille-Leon, Spain': [41.55005, -5.1387401],\n",
" 'Murazzano, Italy': [44.4746494, 8.0213361],\n",
" 'Massachusetts, United States': [42.3788774, -72.032366],\n",
" 'Haute-Savoie / Upper Savoy, France': [46.06904065, 6.344532137164],\n",
" ', Belgium': [50.6402809, 4.6667145],\n",
" 'Kent, United Kingdom': [51.20707485, 0.7210361813401444],\n",
" 'Landshut, Germany': [48.536217, 12.1516551],\n",
" 'Brisbane, Australia': [-27.4689682, 153.0234991],\n",
" 'Allgaeu Alps, Germany': [51.1638175, 10.4478313],\n",
" 'Aconcagua, Chile': [-33.030515957094444, -71.5177984276482],\n",
" 'Rio Grande do Sul, Brazil': [-29.8425284, -53.7680577],\n",
" 'Menorca, Balearic Islands, Spain': [39.949257200000005, 4.0499641751186415],\n",
" 'Isere, France': [45.28979315, 5.634382477386232],\n",
" 'Stoneyford, Ireland': [52.5362671, -7.2278963],\n",
" 'Loire, France': [45.75385355, 4.045473682551104],\n",
" 'Cotherstone, England': [54.570244, -1.9804176],\n",
" ', England': [52.5310214, -1.2649062],\n",
" 'Jura, Switzerland': [47.3566699, 7.1598893],\n",
" 'Charm, Ohio, United States': [40.5067308, -81.7848553],\n",
" 'Chelmarsh, Bridgnorth, Shropshire, England': [52.4875359, -2.4124407],\n",
" 'West Bengal, India': [22.9964948, 87.6855882],\n",
" 'County Antrim, Ireland': [54.864725500000006, -6.143637910742768],\n",
" ', France': [46.603354, 1.8883335],\n",
" 'Pennsylvania, United States': [40.9699889, -77.7278831],\n",
" 'Stonegate, East Sussex, England': [53.960910892985034, -1.0833748506182423],\n",
" 'Gujarat, India': [22.3850051, 71.745261],\n",
" ', Cyprus': [34.9174159, 32.889902651331866],\n",
" 'Vorarlberg, Austria': [47.25, 9.9166667],\n",
" 'Poitou-Charentes, France': [46.13244785, -0.15455354898441043],\n",
" 'Larzac, France': [44.74693, 1.0075],\n",
" 'Sonoma, California, United States': [38.5110803, -122.8473388],\n",
" 'Midi-Pyrénées, France': [43.8099068, 1.4344926056549236],\n",
" 'Corsica, France': [42.188089649999995, 9.068413771427695],\n",
" 'Coast of Oregon, United States': [39.7837304, -100.445882],\n",
" 'Kilmallock County Limerick, Ireland': [52.400645600000004,\n",
" -8.571161660434711],\n",
" 'Greenville, Indiana, United States': [34.851354, -82.3984882],\n",
" 'Romanian Carpathians, Romania': [46.4046483, 22.9894841933513],\n",
" 'Basilicata, Italy': [40.500571, 16.081953],\n",
" 'Lower Normandy, France': [48.953684499999994, -0.573365358805311],\n",
" 'Lapland, Finland': [67.69291045, 26.728214183162986],\n",
" 'Normandy, Auvilliers, France': [49.0677708, 0.3138532],\n",
" 'Languedoc-Roussillon, France': [43.65420305, 3.674669940206605],\n",
" 'Allagau, Bavarian Alps, Germany': [51.1638175, 10.4478313],\n",
" 'Buxton, Derbyshire, England': [53.2593422, -1.9100768],\n",
" 'Bornholm, Denmark': [55.143122399999996, 14.922629658767558],\n",
" 'Bloomdale, United States': [33.2473378, -96.6794382],\n",
" 'Cornwall, ': [50.416667, -4.75],\n",
" 'Barcelona, Spain': [41.3828939, 2.1774322],\n",
" 'Hunter Valley, Australia': [-32.5421803, 151.2185641],\n",
" 'North Carolina, United States': [35.6729639, -79.0392919],\n",
" 'Laqueuille, France': [45.6507627, 2.7320917],\n",
" 'Minnesota, United States': [45.9896587, -94.6113288],\n",
" 'Sardinia & Campania, Italy': [42.6384261, 12.674297],\n",
" 'South Australia, Australia': [-30.5343665, 135.6301212],\n",
" 'Central and Western Macedonia, Thessaly, Greece': [38.9953683, 21.9877132],\n",
" ', Ireland': [52.865196, -7.9794599],\n",
" 'NY, United States': [43.1561681, -75.8449946],\n",
" 'Bourgogne, France': [47.27808725, 4.222486304306048],\n",
" 'Virginia, United States': [37.1232245, -78.4927721],\n",
" 'Póvoa de Lanhoso, Portugal': [41.5759516, -8.2699521],\n",
" 'Colby, Wisconsin, United States': [44.5684775, -69.66002565150262],\n",
" 'Lanarkshire, Scotland': [55.5752966, -3.833333],\n",
" 'Herault, France': [43.591422, 3.3553309364095925],\n",
" ', Scotland': [56.7861112, -4.1140518],\n",
" 'Murcia, Spain': [37.9923795, -1.1305431],\n",
" 'La Velle, Wisconsin, United States': [45.1699553, -109.88428658948227],\n",
" 'Ann Arbor, MI, United States': [42.2813722, -83.7484616],\n",
" 'New Jersey, United States': [40.0757384, -74.4041622],\n",
" 'Duhallow, Ireland': [52.1837912, -9.00609563330653],\n",
" ', Iceland': [64.9841821, -18.1059013],\n",
" 'Iowa, United States': [41.9216734, -93.3122705],\n",
" 'Queenstown, New Zealand': [-45.0321923, 168.661],\n",
" 'Tain, Scotland': [57.8119372, -4.0550663],\n",
" 'Sardegna, Italy': [40.0912813, 9.0305773],\n",
" 'Nottinghamshire, England': [53.1459288, -1.0214971168122484],\n",
" 'Peekskill, United States': [41.289811, -73.9204922],\n",
" 'Fife, Scotland': [56.3333331, -3.0000001],\n",
" 'Umbria, Lazio, Italy': [42.965916, 12.490236],\n",
" 'Nord-Pas-de-Calais, France': [50.5289634, 2.454515765955904],\n",
" 'Victoria, Australia': [-36.5986096, 144.6780052],\n",
" 'Het Groene Hart, Netherlands': [51.5246, 4.280818038775446],\n",
" 'Inagh, Co Clare, ': [52.9071704, -9.2345138],\n",
" ', Holland': [52.2434979, 5.6343227]}"
]
},
"execution_count": 15,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"locations_to_gps = get_locations(\"locations_to_gps.json\")\n",
"locations_to_gps"
]
},
{
"cell_type": "code",
"execution_count": 16,
"id": "204d1446-e58f-4585-8ac0-7466930e4291",
"metadata": {},
"outputs": [],
"source": [
"latitudes, longitudes = [], []\n",
"for i, value in enumerate(data.location):\n",
" latitudes.append(locations_to_gps[value][0])\n",
" longitudes.append(locations_to_gps[value][1])\n",
"data[\"latitude\"] = latitudes\n",
"data[\"longitude\"] = longitudes"
]
},
{
"cell_type": "code",
"execution_count": 17,
"id": "0e10c205-7492-489d-8404-da10c8a6a487",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>cheese</th>\n",
" <th>milk</th>\n",
" <th>country</th>\n",
" <th>region</th>\n",
" <th>family</th>\n",
" <th>type</th>\n",
" <th>texture</th>\n",
" <th>rind</th>\n",
" <th>color</th>\n",
" <th>flavor</th>\n",
" <th>aroma</th>\n",
" <th>vegetarian</th>\n",
" <th>vegan</th>\n",
" <th>location</th>\n",
" <th>latitude</th>\n",
" <th>longitude</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>Aarewasser</td>\n",
" <td>cow</td>\n",
" <td>Switzerland</td>\n",
" <td></td>\n",
" <td>NaN</td>\n",
" <td>semi-soft</td>\n",
" <td>buttery</td>\n",
" <td>washed</td>\n",
" <td>yellow</td>\n",
" <td>sweet</td>\n",
" <td>buttery</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>, Switzerland</td>\n",
" <td>46.798562</td>\n",
" <td>8.231974</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Abbaye de Belloc</td>\n",
" <td>sheep</td>\n",
" <td>France</td>\n",
" <td>Pays Basque</td>\n",
" <td>NaN</td>\n",
" <td>semi-hard, artisan</td>\n",
" <td>creamy, dense, firm</td>\n",
" <td>natural</td>\n",
" <td>yellow</td>\n",
" <td>burnt caramel</td>\n",
" <td>lanoline</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" <td>Pays Basque, France</td>\n",
" <td>47.686790</td>\n",
" <td>7.392763</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>Abbaye de Belval</td>\n",
" <td>cow</td>\n",
" <td>France</td>\n",
" <td></td>\n",
" <td>NaN</td>\n",
" <td>semi-hard</td>\n",
" <td>elastic</td>\n",
" <td>washed</td>\n",
" <td>ivory</td>\n",
" <td>NaN</td>\n",
" <td>aromatic</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>, France</td>\n",
" <td>46.603354</td>\n",
" <td>1.888334</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>Abbaye de Citeaux</td>\n",
" <td>cow</td>\n",
" <td>France</td>\n",
" <td>Burgundy</td>\n",
" <td>NaN</td>\n",
" <td>semi-soft, artisan, brined</td>\n",
" <td>creamy, dense, smooth</td>\n",
" <td>washed</td>\n",
" <td>white</td>\n",
" <td>acidic, milky, smooth</td>\n",
" <td>barnyardy, earthy</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>Burgundy, France</td>\n",
" <td>47.278087</td>\n",
" <td>4.222486</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>Abbaye de Tamié</td>\n",
" <td>cow</td>\n",
" <td>France</td>\n",
" <td>Savoie</td>\n",
" <td>NaN</td>\n",
" <td>soft, artisan</td>\n",
" <td>creamy, open, smooth</td>\n",
" <td>washed</td>\n",
" <td>white</td>\n",
" <td>fruity, nutty</td>\n",
" <td>perfumed, pungent</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>Savoie, France</td>\n",
" <td>45.494895</td>\n",
" <td>6.384660</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1182</th>\n",
" <td>Sveciaost</td>\n",
" <td>cow</td>\n",
" <td>Sweden</td>\n",
" <td>Low-laying regions</td>\n",
" <td>NaN</td>\n",
" <td>semi-hard, brined</td>\n",
" <td>creamy, supple</td>\n",
" <td>rindless</td>\n",
" <td>pale yellow</td>\n",
" <td>acidic</td>\n",
" <td>NaN</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>Low-laying regions, Sweden</td>\n",
" <td>59.674971</td>\n",
" <td>14.520858</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1183</th>\n",
" <td>Swag</td>\n",
" <td>goat</td>\n",
" <td>Australia</td>\n",
" <td>South Australia</td>\n",
" <td>NaN</td>\n",
" <td>fresh firm, artisan</td>\n",
" <td>creamy, crumbly</td>\n",
" <td>ash coated</td>\n",
" <td>white</td>\n",
" <td>acidic, creamy</td>\n",
" <td>fresh</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" <td>South Australia, Australia</td>\n",
" <td>-30.534367</td>\n",
" <td>135.630121</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1184</th>\n",
" <td>Swaledale</td>\n",
" <td>sheep</td>\n",
" <td>England</td>\n",
" <td>Swaledale, North Yorkshire</td>\n",
" <td>NaN</td>\n",
" <td>hard</td>\n",
" <td>semi firm</td>\n",
" <td>NaN</td>\n",
" <td>yellow</td>\n",
" <td>smooth, sweet</td>\n",
" <td>floral</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" <td>Swaledale, North Yorkshire, England</td>\n",
" <td>54.382993</td>\n",
" <td>-1.984136</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1185</th>\n",
" <td>Sweet Style Swiss</td>\n",
" <td>NaN</td>\n",
" <td>Switzerland</td>\n",
" <td></td>\n",
" <td>NaN</td>\n",
" <td>semi-hard, artisan</td>\n",
" <td>firm, supple</td>\n",
" <td>waxed</td>\n",
" <td>NaN</td>\n",
" <td>nutty</td>\n",
" <td>nutty, sweet</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>, Switzerland</td>\n",
" <td>46.798562</td>\n",
" <td>8.231974</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1186</th>\n",
" <td>Swiss cheese</td>\n",
" <td>cow</td>\n",
" <td>United States</td>\n",
" <td></td>\n",
" <td>Swiss Cheese</td>\n",
" <td>hard, artisan, processed</td>\n",
" <td>firm</td>\n",
" <td>rindless</td>\n",
" <td>pale yellow</td>\n",
" <td>nutty, sweet</td>\n",
" <td>NaN</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" <td>, United States</td>\n",
" <td>39.783730</td>\n",
" <td>-100.445882</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>1140 rows × 16 columns</p>\n",
"</div>"
],
"text/plain": [
" cheese milk country region \\\n",
"0 Aarewasser cow Switzerland \n",
"1 Abbaye de Belloc sheep France Pays Basque \n",
"2 Abbaye de Belval cow France \n",
"3 Abbaye de Citeaux cow France Burgundy \n",
"4 Abbaye de Tamié cow France Savoie \n",
"... ... ... ... ... \n",
"1182 Sveciaost cow Sweden Low-laying regions \n",
"1183 Swag goat Australia South Australia \n",
"1184 Swaledale sheep England Swaledale, North Yorkshire \n",
"1185 Sweet Style Swiss NaN Switzerland \n",
"1186 Swiss cheese cow United States \n",
"\n",
" family type texture \\\n",
"0 NaN semi-soft buttery \n",
"1 NaN semi-hard, artisan creamy, dense, firm \n",
"2 NaN semi-hard elastic \n",
"3 NaN semi-soft, artisan, brined creamy, dense, smooth \n",
"4 NaN soft, artisan creamy, open, smooth \n",
"... ... ... ... \n",
"1182 NaN semi-hard, brined creamy, supple \n",
"1183 NaN fresh firm, artisan creamy, crumbly \n",
"1184 NaN hard semi firm \n",
"1185 NaN semi-hard, artisan firm, supple \n",
"1186 Swiss Cheese hard, artisan, processed firm \n",
"\n",
" rind color flavor aroma \\\n",
"0 washed yellow sweet buttery \n",
"1 natural yellow burnt caramel lanoline \n",
"2 washed ivory NaN aromatic \n",
"3 washed white acidic, milky, smooth barnyardy, earthy \n",
"4 washed white fruity, nutty perfumed, pungent \n",
"... ... ... ... ... \n",
"1182 rindless pale yellow acidic NaN \n",
"1183 ash coated white acidic, creamy fresh \n",
"1184 NaN yellow smooth, sweet floral \n",
"1185 waxed NaN nutty nutty, sweet \n",
"1186 rindless pale yellow nutty, sweet NaN \n",
"\n",
" vegetarian vegan location latitude \\\n",
"0 False False , Switzerland 46.798562 \n",
"1 True False Pays Basque, France 47.686790 \n",
"2 False False , France 46.603354 \n",
"3 False False Burgundy, France 47.278087 \n",
"4 False False Savoie, France 45.494895 \n",
"... ... ... ... ... \n",
"1182 False False Low-laying regions, Sweden 59.674971 \n",
"1183 True False South Australia, Australia -30.534367 \n",
"1184 True False Swaledale, North Yorkshire, England 54.382993 \n",
"1185 False False , Switzerland 46.798562 \n",
"1186 True False , United States 39.783730 \n",
"\n",
" longitude \n",
"0 8.231974 \n",
"1 7.392763 \n",
"2 1.888334 \n",
"3 4.222486 \n",
"4 6.384660 \n",
"... ... \n",
"1182 14.520858 \n",
"1183 135.630121 \n",
"1184 -1.984136 \n",
"1185 8.231974 \n",
"1186 -100.445882 \n",
"\n",
"[1140 rows x 16 columns]"
]
},
"execution_count": 17,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"data"
]
},
{
"cell_type": "code",
"execution_count": 18,
"id": "d41b1dc8-90df-44b8-9d83-d218f82a3637",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
" <script type=\"text/javascript\">\n",
" window.PlotlyConfig = {MathJaxConfig: 'local'};\n",
" if (window.MathJax && window.MathJax.Hub && window.MathJax.Hub.Config) {window.MathJax.Hub.Config({SVG: {font: \"STIX-Web\"}});}\n",
" if (typeof require !== 'undefined') {\n",
" require.undef(\"plotly\");\n",
" define('plotly', function(require, exports, module) {\n",
" /**\n",
"* plotly.js v2.35.2\n",
"* Copyright 2012-2024, Plotly, Inc.\n",
"* All rights reserved.\n",
"* Licensed under the MIT license\n",
"*/\n",
"/*! For license information please see plotly.min.js.LICENSE.txt */\n",
"!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define([],e):\"object\"==typeof exports?exports.Plotly=e():t.Plotly=e()}(self,(function(){return function(){var t={6713:function(t,e,r){\"use strict\";var n=r(34809),i={\"X,X div\":'direction:ltr;font-family:\"Open Sans\",verdana,arial,sans-serif;margin:0;padding:0;',\"X input,X button\":'font-family:\"Open Sans\",verdana,arial,sans-serif;',\"X input:focus,X button:focus\":\"outline:none;\",\"X a\":\"text-decoration:none;\",\"X a:hover\":\"text-decoration:none;\",\"X .crisp\":\"shape-rendering:crispEdges;\",\"X .user-select-none\":\"-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;\",\"X svg\":\"overflow:hidden;\",\"X svg a\":\"fill:#447adb;\",\"X svg a:hover\":\"fill:#3c6dc5;\",\"X .main-svg\":\"position:absolute;top:0;left:0;pointer-events:none;\",\"X .main-svg .draglayer\":\"pointer-events:all;\",\"X .cursor-default\":\"cursor:default;\",\"X .cursor-pointer\":\"cursor:pointer;\",\"X .cursor-crosshair\":\"cursor:crosshair;\",\"X .cursor-move\":\"cursor:move;\",\"X .cursor-col-resize\":\"cursor:col-resize;\",\"X .cursor-row-resize\":\"cursor:row-resize;\",\"X .cursor-ns-resize\":\"cursor:ns-resize;\",\"X .cursor-ew-resize\":\"cursor:ew-resize;\",\"X .cursor-sw-resize\":\"cursor:sw-resize;\",\"X .cursor-s-resize\":\"cursor:s-resize;\",\"X .cursor-se-resize\":\"cursor:se-resize;\",\"X .cursor-w-resize\":\"cursor:w-resize;\",\"X .cursor-e-resize\":\"cursor:e-resize;\",\"X .cursor-nw-resize\":\"cursor:nw-resize;\",\"X .cursor-n-resize\":\"cursor:n-resize;\",\"X .cursor-ne-resize\":\"cursor:ne-resize;\",\"X .cursor-grab\":\"cursor:-webkit-grab;cursor:grab;\",\"X .modebar\":\"position:absolute;top:2px;right:2px;\",\"X .ease-bg\":\"-webkit-transition:background-color .3s ease 0s;-moz-transition:background-color .3s ease 0s;-ms-transition:background-color .3s ease 0s;-o-transition:background-color .3s ease 0s;transition:background-color .3s ease 0s;\",\"X .modebar--hover>:not(.watermark)\":\"opacity:0;-webkit-transition:opacity .3s ease 0s;-moz-transition:opacity .3s ease 0s;-ms-transition:opacity .3s ease 0s;-o-transition:opacity .3s ease 0s;transition:opacity .3s ease 0s;\",\"X:hover .modebar--hover .modebar-group\":\"opacity:1;\",\"X .modebar-group\":\"float:left;display:inline-block;box-sizing:border-box;padding-left:8px;position:relative;vertical-align:middle;white-space:nowrap;\",\"X .modebar-btn\":\"position:relative;font-size:16px;padding:3px 4px;height:22px;cursor:pointer;line-height:normal;box-sizing:border-box;\",\"X .modebar-btn svg\":\"position:relative;top:2px;\",\"X .modebar.vertical\":\"display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-end;max-height:100%;\",\"X .modebar.vertical svg\":\"top:-1px;\",\"X .modebar.vertical .modebar-group\":\"display:block;float:none;padding-left:0px;padding-bottom:8px;\",\"X .modebar.vertical .modebar-group .modebar-btn\":\"display:block;text-align:center;\",\"X [data-title]:before,X [data-title]:after\":\"position:absolute;-webkit-transform:translate3d(0, 0, 0);-moz-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);display:none;opacity:0;z-index:1001;pointer-events:none;top:110%;right:50%;\",\"X [data-title]:hover:before,X [data-title]:hover:after\":\"display:block;opacity:1;\",\"X [data-title]:before\":'content:\"\";position:absolute;background:rgba(0,0,0,0);border:6px solid rgba(0,0,0,0);z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;',\"X [data-title]:after\":\"content:attr(data-title);background:#69738a;color:#fff;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;\",\"X .vertical [data-title]:before,X .vertical [data-title]:after\":\"top:0%;right:200%;\",\"X .vertical [data-title]:before\":\"border:6px solid rgba(0,0,0,0);border-left-color:#69738a;margin-top:8px;margin-right:-30px;\",Y:'font-family:\"Open Sans\",verdana,arial,sans-serif;position:fixed;top:50px;right:20px;z-index:10000;font-size:10pt;max-width:180px;',\"Y p\":\"margin:0;\",\"Y .notifier-note\":\"min-width:180px;max-width:250px;border:1px solid #fff;z-index:3000;margin:0;background-color:#8c97af;background-color:rgba(140,151,175,.9);color:#fff;padding:10px;overflow-wrap:break-word;word-wrap:break-word;-ms-hyphens:auto;-webkit-hyphens:auto;hyphens:auto;\",\"Y .notifier-close\":\"color:#fff;opacity:.8;float:right;padding:0 5px;background:none;border:none;font-size:20px;font-weight:bold;line-height:20px;\",\"Y .notifier-close:hover\":\"color:#444;text-decoration:none;cursor:pointer;\"};for(var a in i){var o=a.replace(/^,/,\" ,\").replace(/X/g,\".js-plotly-plot .plotly\").replace(/Y/g,\".plotly-notifier\");n.addStyleRule(o,i[a])}},14187:function(t,e,r){\"use strict\";t.exports=r(47908)},20273:function(t,e,r){\"use strict\";t.exports=r(58218)},6457:function(t,e,r){\"use strict\";t.exports=r(89362)},15849:function(t,e,r){\"use strict\";t.exports=r(53794)},38847:function(t,e,r){\"use strict\";t.exports=r(29698)},7659:function(t,e,r){\"use strict\";t.exports=r(51252)},60089:function(t,e,r){\"use strict\";t.exports=r(48050)},22084:function(t,e,r){\"use strict\";t.exports=r(58075)},35892:function(t,e,r){\"use strict\";t.exports=r(9419)},81204:function(t,e,r){\"use strict\";t.exports=r(28128)},55857:function(t,e,r){\"use strict\";t.exports=r(47050)},12862:function(t,e,r){\"use strict\";t.exports=r(91405)},97629:function(t,e,r){\"use strict\";t.exports=r(34406)},67549:function(t,e,r){\"use strict\";t.exports=r(17430)},2660:function(t,e,r){\"use strict\";t.exports=r(91995)},86071:function(t,e,r){\"use strict\";t.exports=r(81264)},66200:function(t,e,r){\"use strict\";t.exports=r(42849)},53446:function(t,e,r){\"use strict\";t.exports=r(52213)},86899:function(t,e,r){\"use strict\";t.exports=r(91132)},13430:function(t,e,r){\"use strict\";t.exports=r(50453)},21548:function(t,e,r){\"use strict\";t.exports=r(29251)},53939:function(t,e,r){\"use strict\";t.exports=r(72892)},1902:function(t,e,r){\"use strict\";t.exports=r(74461)},29096:function(t,e,r){\"use strict\";t.exports=r(66143)},23820:function(t,e,r){\"use strict\";t.exports=r(81955)},82017:function(t,e,r){\"use strict\";t.exports=r(36858)},113:function(t,e,r){\"use strict\";t.exports=r(92106)},20260:function(t,e,r){\"use strict\";var n=r(67549);n.register([r(20273),r(15849),r(21548),r(1902),r(29096),r(23820),r(12862),r(1639),r(10067),r(53446),r(31014),r(113),r(78170),r(8202),r(92382),r(82017),r(86899),r(54357),r(66903),r(90594),r(71680),r(7412),r(55857),r(784),r(74221),r(22084),r(44001),r(97281),r(12345),r(53939),r(29117),r(5410),r(5057),r(81204),r(86071),r(14226),r(35892),r(2660),r(96599),r(28573),r(76832),r(60089),r(51469),r(97629),r(27700),r(7659),r(11780),r(27195),r(6457),r(84639),r(14187),r(66200),r(13430),r(90590),r(38847)]),t.exports=n},28573:function(t,e,r){\"use strict\";t.exports=r(25638)},90594:function(t,e,r){\"use strict\";t.exports=r(75297)},7412:function(t,e,r){\"use strict\";t.exports=r(58859)},27700:function(t,e,r){\"use strict\";t.exports=r(12683)},5410:function(t,e,r){\"use strict\";t.exports=r(6305)},29117:function(t,e,r){\"use strict\";t.exports=r(83910)},78170:function(t,e,r){\"use strict\";t.exports=r(49913)},12345:function(t,e,r){\"use strict\";t.exports=r(15186)},96599:function(t,e,r){\"use strict\";t.exports=r(71760)},54357:function(t,e,r){\"use strict\";t.exports=r(17822)},51469:function(t,e,r){\"use strict\";t.exports=r(56534)},74221:function(t,e,r){\"use strict\";t.exports=r(18070)},44001:function(t,e,r){\"use strict\";t.exports=r(52378)},14226:function(t,e,r){\"use strict\";t.exports=r(30929)},5057:function(t,e,r){\"use strict\";t.exports=r(83866)},11780:function(t,e,r){\"use strict\";t.exports=r(66939)},27195:function(t,e,r){\"use strict\";t.exports=r(23748)},84639:function(t,e,r){\"use strict\";t.exports=r(73304)},1639:function(t,e,r){\"use strict\";t.exports=r(12864)},90590:function(t,e,r){\"use strict\";t.exports=r(99855)},97281:function(t,e,r){\"use strict\";t.exports=r(91450)},784:function(t,e,r){\"use strict\";t.exports=r(51943)},8202:function(t,e,r){\"use strict\";t.exports=r(80809)},66903:function(t,e,r){\"use strict\";t.exports=r(95984)},76832:function(t,e,r){\"use strict\";t.exports=r(51671)},92382:function(t,e,r){\"use strict\";t.exports=r(47181)},10067:function(t,e,r){\"use strict\";t.exports=r(37276)},71680:function(t,e,r){\"use strict\";t.exports=r(75703)},31014:function(t,e,r){\"use strict\";t.exports=r(38261)},11645:function(t){\"use strict\";t.exports=[{path:\"\",backoff:0},{path:\"M-2.4,-3V3L0.6,0Z\",backoff:.6},{path:\"M-3.7,-2.5V2.5L1.3,0Z\",backoff:1.3},{path:\"M-4.45,-3L-1.65,-0.2V0.2L-4.45,3L1.55,0Z\",backoff:1.55},{path:\"M-2.2,-2.2L-0.2,-0.2V0.2L-2.2,2.2L-1.4,3L1.6,0L-1.4,-3Z\",backoff:1.6},{path:\"M-4.4,-2.1L-0.6,-0.2V0.2L-4.4,2.1L-4,3L2,0L-4,-3Z\",backoff:2},{path:\"M2,0A2,2 0 1,1 0,-2A2,2 0 0,1 2,0Z\",backoff:0,noRotate:!0},{path:\"M2,2V-2H-2V2Z\",backoff:0,noRotate:!0}]},50222:function(t,e,r){\"use strict\";var n=r(11645),i=r(80337),a=r(54826),o=r(78032).templatedArray;r(35081),t.exports=o(\"annotation\",{visible:{valType:\"boolean\",dflt:!0,editType:\"calc+arraydraw\"},text:{valType:\"string\",editType:\"calc+arraydraw\"},textangle:{valType:\"angle\",dflt:0,editType:\"calc+arraydraw\"},font:i({editType:\"calc+arraydraw\",colorEditType:\"arraydraw\"}),width:{valType:\"number\",min:1,dflt:null,editType:\"calc+arraydraw\"},height:{valType:\"number\",min:1,dflt:null,editType:\"calc+arraydraw\"},opacity:{valType:\"number\",min:0,max:1,dflt:1,editType:\"arraydraw\"},align:{valType:\"enumerated\",values:[\"left\",\"center\",\"right\"],dflt:\"center\",editType:\"arraydraw\"},valign:{valType:\"enumerated\",values:[\"top\",\"middle\",\"bottom\"],dflt:\"middle\",editType:\"arraydraw\"},bgcolor:{valType:\"color\",dflt:\"rgba(0,0,0,0)\",editType:\"arraydraw\"},bordercolor:{valType:\"color\",dflt:\"rgba(0,0,0,0)\",editType:\"arraydraw\"},borderpad:{valType:\"number\",min:0,dflt:1,editType:\"calc+arraydraw\"},borderwidth:{valType:\"number\",min:0,dflt:1,editType:\"calc+arraydraw\"},showarrow:{valType:\"boolean\",dflt:!0,editType:\"calc+arraydraw\"},arrowcolor:{valType:\"color\",editType:\"arraydraw\"},arrowhead:{valType:\"integer\",min:0,max: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\"}}})},60317:function(t,e,r){\"use strict\";var n=r(34809),i=r(29714),a=r(3377).draw;function o(t){var e=t._fullLayout;n.filterVisible(e.annotations).forEach((function(e){var r=i.getFromId(t,e.xref),n=i.getFromId(t,e.yref),a=i.getRefType(e.xref),o=i.getRefType(e.yref);e._extremes={},\"range\"===a&&s(e,r),\"range\"===o&&s(e,n)}))}function s(t,e){var r,n=e._id,a=n.charAt(0),o=t[a],s=t[\"a\"+a],l=t[a+\"ref\"],c=t[\"a\"+a+\"ref\"],u=t[\"_\"+a+\"padplus\"],h=t[\"_\"+a+\"padminus\"],f={x:1,y:-1}[a]*t[a+\"shift\"],p=3*t.arrowsize*t.arrowwidth||0,d=p+f,m=p-f,g=3*t.startarrowsize*t.arrowwidth||0,y=g+f,v=g-f;if(c===l){var x=i.findExtremes(e,[e.r2c(o)],{ppadplus:d,ppadminus:m}),_=i.findExtremes(e,[e.r2c(s)],{ppadplus:Math.max(u,y),ppadminus:Math.max(h,v)});r={min:[x.min[0],_.min[0]],max:[x.max[0],_.max[0]]}}else y=s?y+s:y,v=s?v-s:v,r=i.findExtremes(e,[e.r2c(o)],{ppadplus:Math.max(u,d,y),ppadminus:Math.max(h,m,v)});t._extremes[n]=r}t.exports=function(t){var e=t._fullLayout;if(n.filterVisible(e.annotations).length&&t._fullData.length)return n.syncOrAsync([a,o],t)}},6035:function(t,e,r){\"use strict\";var n=r(34809),i=r(33626),a=r(78032).arrayEditor;function o(t,e){var r,n,i,a,o,l,c,u=t._fullLayout.annotations,h=[],f=[],p=[],d=(e||[]).length;for(r=0;r<u.length;r++)if(a=(i=u[r]).clicktoshow){for(n=0;n<d;n++)if(l=(o=e[n]).xaxis,c=o.yaxis,l._id===i.xref&&c._id===i.yref&&l.d2r(o.x)===s(i._xclick,l)&&c.d2r(o.y)===s(i._yclick,c)){(i.visible?\"onout\"===a?f:p:h).push(r);break}n===d&&i.visible&&\"onout\"===a&&f.push(r)}return{on:h,off:f,explicitOff:p}}function s(t,e){return\"log\"===e.type?e.l2r(t):e.d2r(t)}t.exports={hasClickToShow:function(t,e){var r=o(t,e);return r.on.length>0||r.explicitOff.length>0},onClick:function(t,e){var r,s,l=o(t,e),c=l.on,u=l.off.concat(l.explicitOff),h={},f=t._fullLayout.annotations;if(c.length||u.length){for(r=0;r<c.length;r++)(s=a(t.layout,\"annotations\",f[c[r]])).modifyItem(\"visible\",!0),n.extendFlat(h,s.getUpdateObj());for(r=0;r<u.length;r++)(s=a(t.layout,\"annotations\",f[u[r]])).modifyItem(\"visible\",!1),n.extendFlat(h,s.getUpdateObj());return i.call(\"update\",t,{},h)}}}},53271:function(t,e,r){\"use strict\";var n=r(34809),i=r(78766);t.exports=function(t,e,r,a){a(\"opacity\");var o=a(\"bgcolor\"),s=a(\"bordercolor\"),l=i.opacity(s);a(\"borderpad\");var c=a(\"borderwidth\"),u=a(\"showarrow\");if(a(\"text\",u?\" \":r._dfltTitle.annotation),a(\"textangle\"),n.coerceFont(a,\"font\",r.font),a(\"width\"),a(\"align\"),a(\"height\")&&a(\"valign\"),u){var h,f,p=a(\"arrowside\");-1!==p.indexOf(\"end\")&&(h=a(\"arrowhead\"),f=a(\"arrowsize\")),-1!==p.indexOf(\"start\")&&(a(\"startarrowhead\",h),a(\"startarrowsize\",f)),a(\"arrowcolor\",l?e.bordercolor:i.defaultLine),a(\"arrowwidth\",2*(l&&c||1)),a(\"standoff\"),a(\"startstandoff\")}var d=a(\"hovertext\"),m=r.hoverlabel||{};if(d){var g=a(\"hoverlabel.bgcolor\",m.bgcolor||(i.opacity(o)?i.rgb(o):i.defaultLine)),y=a(\"hoverlabel.bordercolor\",m.bordercolor||i.contrast(g)),v=n.extendFlat({},m.font);v.color||(v.color=y),n.coerceFont(a,\"hoverlabel.font\",v)}a(\"captureevents\",!!d)}},59741:function(t,e,r){\"use strict\";var n=r(10721),i=r(8083);t.exports=function(t,e,r,a){e=e||{};var o=\"log\"===r&&\"linear\"===e.type,s=\"linear\"===r&&\"log\"===e.type;if(o||s)for(var l,c,u=t._fullLayout.annotations,h=e._id.charAt(0),f=0;f<u.length;f++)l=u[f],c=\"annotations[\"+f+\"].\",l[h+\"ref\"]===e._id&&p(h),l[\"a\"+h+\"ref\"]===e._id&&p(\"a\"+h);function p(t){var r=l[t],s=null;s=o?i(r,e.range):Math.pow(10,r),n(s)||(s=null),a(c+t,s)}}},63737:function(t,e,r){\"use strict\";var n=r(34809),i=r(29714),a=r(59008),o=r(53271),s=r(50222);function l(t,e,r){function a(r,i){return n.coerce(t,e,s,r,i)}var l=a(\"visible\"),c=a(\"clicktoshow\");if(l||c){o(t,e,r,a);for(var u=e.showarrow,h=[\"x\",\"y\"],f=[-10,-30],p={_fullLayout:r},d=0;d<2;d++){var m=h[d],g=i.coerceRef(t,e,p,m,\"\",\"paper\");if(\"paper\"!==g&&i.getFromId(p,g)._annIndices.push(e._index),i.coercePosition(e,p,a,g,m,.5),u){var y=\"a\"+m,v=i.coerceRef(t,e,p,y,\"pixel\",[\"pixel\",\"paper\"]);\"pixel\"!==v&&v!==g&&(v=e[y]=\"pixel\");var x=\"pixel\"===v?f[d]:.4;i.coercePosition(e,p,a,v,y,x)}a(m+\"anchor\"),a(m+\"shift\")}if(n.noneOrAll(t,e,[\"x\",\"y\"]),u&&n.noneOrAll(t,e,[\"ax\",\"ay\"]),c){var _=a(\"xclick\"),b=a(\"yclick\");e._xclick=void 0===_?e.x:i.cleanPosition(_,p,e.xref),e._yclick=void 0===b?e.y:i.cleanPosition(b,p,e.yref)}}}t.exports=function(t,e){a(t,e,{name:\"annotations\",handleItemDefaults:l})}},3377:function(t,e,r){\"use strict\";var n=r(45568),i=r(33626),a=r(44122),o=r(34809),s=o.strTranslate,l=r(29714),c=r(78766),u=r(62203),h=r(32141),f=r(30635),p=r(27983),d=r(14751),m=r(78032).arrayEditor,g=r(23768);function y(t,e){var r=t._fullLayout.annotations[e]||{},n=l.getFromId(t,r.xref),i=l.getFromId(t,r.yref);n&&n.setScale(),i&&i.setScale(),x(t,r,e,!1,n,i)}function v(t,e,r,n,i){var a=i[r],o=i[r+\"ref\"],s=-1!==r.indexOf(\"y\"),c=\"domain\"===l.getRefType(o),u=s?n.h:n.w;return t?c?a+(s?-e:e)/t._length:t.p2r(t.r2p(a)+e):a+(s?-e:e)/u}function x(t,e,r,a,y,x){var _,b,w=t._fullLayout,T=t._fullLayout._size,k=t._context.edits;a?(_=\"annotation-\"+a,b=a+\".annotations\"):(_=\"annotation\",b=\"annotations\");var A=m(t.layout,b,e),M=A.modifyBase,S=A.modifyItem,E=A.getUpdateObj;w._infolayer.selectAll(\".\"+_+'[data-index=\"'+r+'\"]').remove();var C=\"clip\"+w._uid+\"_ann\"+r;if(e._input&&!1!==e.visible){var L={x:{},y:{}},I=+e.textangle||0,P=w._infolayer.append(\"g\").classed(_,!0).attr(\"data-index\",String(r)).style(\"opacity\",e.opacity),z=P.append(\"g\").classed(\"annotation-text-g\",!0),O=k[e.showarrow?\"annotationTail\":\"annotationPosition\"],D=e.captureevents||k.annotationText||O,R=z.append(\"g\").style(\"pointer-events\",D?\"all\":null).call(p,\"pointer\").on(\"click\",(function(){t._dragging=!1,t.emit(\"plotly_clickannotation\",Z(n.event))}));e.hovertext&&R.on(\"mouseover\",(function(){var r=e.hoverlabel,n=r.font,i=this.getBoundingClientRect(),a=t.getBoundingClientRect();h.loneHover({x0:i.left-a.left,x1:i.right-a.left,y:(i.top+i.bottom)/2-a.top,text:e.hovertext,color:r.bgcolor,borderColor:r.bordercolor,fontFamily:n.family,fontSize:n.size,fontColor:n.color,fontWeight:n.weight,fontStyle:n.style,fontVariant:n.variant,fontShadow:n.fontShadow,fontLineposition:n.fontLineposition,fontTextcase:n.fontTextcase},{container:w._hoverlayer.node(),outerContainer:w._paper.node(),gd:t})})).on(\"mouseout\",(function(){h.loneUnhover(w._hoverlayer.node())}));var F=e.borderwidth,B=e.borderpad,N=F+B,j=R.append(\"rect\").attr(\"class\",\"bg\").style(\"stroke-width\",F+\"px\").call(c.stroke,e.bordercolor).call(c.fill,e.bgcolor),U=e.width||e.height,V=w._topclips.selectAll(\"#\"+C).data(U?[0]:[]);V.enter().append(\"clipPath\").classed(\"annclip\",!0).attr(\"id\",C).append(\"rect\"),V.exit().remove();var q=e.font,H=w._meta?o.templateString(e.text,w._meta):e.text,G=R.append(\"text\").classed(\"annotation-text\",!0).text(H);k.annotationText?G.call(f.makeEditable,{delegate:R,gd:t}).call(W).on(\"edit\",(function(r){e.text=r,this.call(W),S(\"text\",r),y&&y.autorange&&M(y._name+\".autorange\",!0),x&&x.autorange&&M(x._name+\".autorange\",!0),i.call(\"_guiRelayout\",t,E())})):G.call(W)}else n.selectAll(\"#\"+C).remove();function Z(t){var n={index:r,annotation:e._input,fullAnnotation:e,event:t};return a&&(n.subplotId=a),n}function W(r){return r.call(u.font,q).attr({\"text-anchor\":{left:\"start\",right:\"end\"}[e.align]||\"middle\"}),f.convertToTspans(r,t,Y),r}function Y(){var r=G.selectAll(\"a\");1===r.size()&&r.text()===G.text()&&R.insert(\"a\",\":first-child\").attr({\"xlink:xlink:href\":r.attr(\"xlink:href\"),\"xlink:xlink:show\":r.attr(\"xlink:show\")}).style({cursor:\"pointer\"}).node().appendChild(j.node());var n=R.select(\".annotation-text-math-group\"),h=!n.empty(),m=u.bBox((h?n:G).node()),_=m.width,b=m.height,A=e.width||_,D=e.height||b,B=Math.round(A+2*N),q=Math.round(D+2*N);function H(t,e){return\"auto\"===e&&(e=t<1/3?\"left\":t>2/3?\"right\":\"center\"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[e]}for(var W=!1,Y=[\"x\",\"y\"],X=0;X<Y.length;X++){var $,J,K,Q,tt,et=Y[X],rt=e[et+\"ref\"]||et,nt=e[\"a\"+et+\"ref\"],it={x:y,y:x}[et],at=(I+(\"x\"===et?0:-90))*Math.PI/180,ot=B*Math.cos(at),st=q*Math.sin(at),lt=Math.abs(ot)+Math.abs(st),ct=e[et+\"anchor\"],ut=e[et+\"shift\"]*(\"x\"===et?1:-1),ht=L[et],ft=l.getRefType(rt);if(it&&\"domain\"!==ft){var pt=it.r2fraction(e[et]);(pt<0||pt>1)&&(nt===rt?((pt=it.r2fraction(e[\"a\"+et]))<0||pt>1)&&(W=!0):W=!0),$=it._offset+it.r2p(e[et]),Q=.5}else{var dt=\"domain\"===ft;\"x\"===et?(K=e[et],$=dt?it._offset+it._length*K:$=T.l+T.w*K):(K=1-e[et],$=dt?it._offset+it._length*K:$=T.t+T.h*K),Q=e.showarrow?.5:K}if(e.showarrow){ht.head=$;var mt=e[\"a\"+et];if(tt=ot*H(.5,e.xanchor)-st*H(.5,e.yanchor),nt===rt){var gt=l.getRefType(nt);\"domain\"===gt?(\"y\"===et&&(mt=1-mt),ht.tail=it._offset+it._length*mt):\"paper\"===gt?\"y\"===et?(mt=1-mt,ht.tail=T.t+T.h*mt):ht.tail=T.l+T.w*mt:ht.tail=it._offset+it.r2p(mt),J=tt}else ht.tail=$+mt,J=tt+mt;ht.text=ht.tail+tt;var yt=w[\"x\"===et?\"width\":\"height\"];if(\"paper\"===rt&&(ht.head=o.constrain(ht.head,1,yt-1)),\"pixel\"===nt){var vt=-Math.max(ht.tail-3,ht.text),xt=Math.min(ht.tail+3,ht.text)-yt;vt>0?(ht.tail+=vt,ht.text+=vt):xt>0&&(ht.tail-=xt,ht.text-=xt)}ht.tail+=ut,ht.head+=ut}else J=tt=lt*H(Q,ct),ht.text=$+tt;ht.text+=ut,tt+=ut,J+=ut,e[\"_\"+et+\"padplus\"]=lt/2+J,e[\"_\"+et+\"padminus\"]=lt/2-J,e[\"_\"+et+\"size\"]=lt,e[\"_\"+et+\"shift\"]=tt}if(W)R.remove();else{var _t=0,bt=0;if(\"left\"!==e.align&&(_t=(A-_)*(\"center\"===e.align?.5:1)),\"top\"!==e.valign&&(bt=(D-b)*(\"middle\"===e.valign?.5:1)),h)n.select(\"svg\").attr({x:N+_t-1,y:N+bt}).call(u.setClipUrl,U?C:null,t);else{var wt=N+bt-m.top,Tt=N+_t-m.left;G.call(f.positionText,Tt,wt).call(u.setClipUrl,U?C:null,t)}V.select(\"rect\").call(u.setRect,N,N,A,D),j.call(u.setRect,F/2,F/2,B-F,q-F),R.call(u.setTranslate,Math.round(L.x.text-B/2),Math.round(L.y.text-q/2)),z.attr({transform:\"rotate(\"+I+\",\"+L.x.text+\",\"+L.y.text+\")\"});var kt,At=function(r,n){P.selectAll(\".annotation-arrow-g\").remove();var l=L.x.head,h=L.y.head,f=L.x.tail+r,p=L.y.tail+n,m=L.x.text+r,_=L.y.text+n,b=o.rotationXYMatrix(I,m,_),w=o.apply2DTransform(b),A=o.apply2DTransform2(b),C=+j.attr(\"width\"),O=+j.attr(\"height\"),D=m-.5*C,F=D+C,B=_-.5*O,N=B+O,U=[[D,B,D,N],[D,N,F,N],[F,N,F,B],[F,B,D,B]].map(A);if(!U.reduce((function(t,e){return t^!!o.segmentsIntersect(l,h,l+1e6,h+1e6,e[0],e[1],e[2],e[3])}),!1)){U.forEach((function(t){var e=o.segmentsIntersect(f,p,l,h,t[0],t[1],t[2],t[3]);e&&(f=e.x,p=e.y)}));var V=e.arrowwidth,q=e.arrowcolor,H=e.arrowside,G=P.append(\"g\").style({opacity:c.opacity(q)}).classed(\"annotation-arrow-g\",!0),Z=G.append(\"path\").attr(\"d\",\"M\"+f+\",\"+p+\"L\"+l+\",\"+h).style(\"stroke-width\",V+\"px\").call(c.stroke,c.rgb(q));if(g(Z,H,e),k.annotationPosition&&Z.node().parentNode&&!a){var W=l,Y=h;if(e.standoff){var X=Math.sqrt(Math.pow(l-f,2)+Math.pow(h-p,2));W+=e.standoff*(f-l)/X,Y+=e.standoff*(p-h)/X}var $,J,K=G.append(\"path\").classed(\"annotation-arrow\",!0).classed(\"anndrag\",!0).classed(\"cursor-move\",!0).attr({d:\"M3,3H-3V-3H3ZM0,0L\"+(f-W)+\",\"+(p-Y),transform:s(W,Y)}).style(\"stroke-width\",V+6+\"px\").call(c.stroke,\"rgba(0,0,0,0)\").call(c.fill,\"rgba(0,0,0,0)\");d.init({element:K.node(),gd:t,prepFn:function(){var t=u.getTranslate(R);$=t.x,J=t.y,y&&y.autorange&&M(y._name+\".autorange\",!0),x&&x.autorange&&M(x._name+\".autorange\",!0)},moveFn:function(t,r){var n=w($,J),i=n[0]+t,a=n[1]+r;R.call(u.setTranslate,i,a),S(\"x\",v(y,t,\"x\",T,e)),S(\"y\",v(x,r,\"y\",T,e)),e.axref===e.xref&&S(\"ax\",v(y,t,\"ax\",T,e)),e.ayref===e.yref&&S(\"ay\",v(x,r,\"ay\",T,e)),G.attr(\"transform\",s(t,r)),z.attr({transform:\"rotate(\"+I+\",\"+i+\",\"+a+\")\"})},doneFn:function(){i.call(\"_guiRelayout\",t,E());var e=document.querySelector(\".js-notes-box-panel\");e&&e.redraw(e.selectedObj)}})}}};e.showarrow&&At(0,0),O&&d.init({element:R.node(),gd:t,prepFn:function(){kt=z.attr(\"transform\")},moveFn:function(t,r){var n=\"pointer\";if(e.showarrow)e.axref===e.xref?S(\"ax\",v(y,t,\"ax\",T,e)):S(\"ax\",e.ax+t),e.ayref===e.yref?S(\"ay\",v(x,r,\"ay\",T.w,e)):S(\"ay\",e.ay+r),At(t,r);else{if(a)return;var i,o;if(y)i=v(y,t,\"x\",T,e);else{var l=e._xsize/T.w,c=e.x+(e._xshift-e.xshift)/T.w-l/2;i=d.align(c+t/T.w,l,0,1,e.xanchor)}if(x)o=v(x,r,\"y\",T,e);else{var u=e._ysize/T.h,h=e.y-(e._yshift+e.yshift)/T.h-u/2;o=d.align(h-r/T.h,u,0,1,e.yanchor)}S(\"x\",i),S(\"y\",o),y&&x||(n=d.getCursor(y?.5:i,x?.5:o,e.xanchor,e.yanchor))}z.attr({transform:s(t,r)+kt}),p(R,n)},clickFn:function(r,n){e.captureevents&&t.emit(\"plotly_clickannotation\",Z(n))},doneFn:function(){p(R),i.call(\"_guiRelayout\",t,E());var e=document.querySelector(\".js-notes-box-panel\");e&&e.redraw(e.selectedObj)}})}}}t.exports={draw:function(t){var e=t._fullLayout;e._infolayer.selectAll(\".annotation\").remove();for(var r=0;r<e.annotations.length;r++)e.annotations[r].visible&&y(t,r);return a.previousPromises(t)},drawOne:y,drawRaw:x}},23768:function(t,e,r){\"use strict\";var n=r(45568),i=r(78766),a=r(11645),o=r(34809),s=o.strScale,l=o.strRotate,c=o.strTranslate;t.exports=function(t,e,r){var o,u,h,f,p=t.node(),d=a[r.arrowhead||0],m=a[r.startarrowhead||0],g=(r.arrowwidth||1)*(r.arrowsize||1),y=(r.arrowwidth||1)*(r.startarrowsize||1),v=e.indexOf(\"start\")>=0,x=e.indexOf(\"end\")>=0,_=d.backoff*g+r.standoff,b=m.backoff*y+r.startstandoff;if(\"line\"===p.nodeName){o={x:+t.attr(\"x1\"),y:+t.attr(\"y1\")},u={x:+t.attr(\"x2\"),y:+t.attr(\"y2\")};var w=o.x-u.x,T=o.y-u.y;if(f=(h=Math.atan2(T,w))+Math.PI,_&&b&&_+b>Math.sqrt(w*w+T*T))return void O();if(_){if(_*_>w*w+T*T)return void O();var k=_*Math.cos(h),A=_*Math.sin(h);u.x+=k,u.y+=A,t.attr({x2:u.x,y2:u.y})}if(b){if(b*b>w*w+T*T)return void O();var M=b*Math.cos(h),S=b*Math.sin(h);o.x-=M,o.y-=S,t.attr({x1:o.x,y1:o.y})}}else if(\"path\"===p.nodeName){var E=p.getTotalLength(),C=\"\";if(E<_+b)return void O();var L=p.getPointAtLength(0),I=p.getPointAtLength(.1);h=Math.atan2(L.y-I.y,L.x-I.x),o=p.getPointAtLength(Math.min(b,E)),C=\"0px,\"+b+\"px,\";var P=p.getPointAtLength(E),z=p.getPointAtLength(E-.1);f=Math.atan2(P.y-z.y,P.x-z.x),u=p.getPointAtLength(Math.max(0,E-_)),C+=E-(C?b+_:_)+\"px,\"+E+\"px\",t.style(\"stroke-dasharray\",C)}function O(){t.style(\"stroke-dasharray\",\"0px,100px\")}function D(e,a,o,u){e.path&&(e.noRotate&&(o=0),n.select(p.parentNode).append(\"path\").attr({class:t.attr(\"class\"),d:e.path,transform:c(a.x,a.y)+l(180*o/Math.PI)+s(u)}).style({fill:i.rgb(r.arrowcolor),\"stroke-width\":0}))}v&&D(m,o,h,y),x&&D(d,u,f,g)}},3599:function(t,e,r){\"use strict\";var n=r(3377),i=r(6035);t.exports={moduleType:\"component\",name:\"annotations\",layoutAttributes:r(50222),supplyLayoutDefaults:r(63737),includeBasePlot:r(20706)(\"annotations\"),calcAutorange:r(60317),draw:n.draw,drawOne:n.drawOne,drawRaw:n.drawRaw,hasClickToShow:i.hasClickToShow,onClick:i.onClick,convertCoords:r(59741)}},38239:function(t,e,r){\"use strict\";var n=r(50222),i=r(13582).overrideAll,a=r(78032).templatedArray;t.exports=i(a(\"annotation\",{visible:n.visible,x:{valType:\"any\"},y:{valType:\"any\"},z:{valType:\"any\"},ax:{valType:\"number\"},ay:{valType:\"number\"},xanchor:n.xanchor,xshift:n.xshift,yanchor:n.yanchor,yshift:n.yshift,text:n.text,textangle:n.textangle,font:n.font,width:n.width,height:n.height,opacity:n.opacity,align:n.align,valign:n.valign,bgcolor:n.bgcolor,bordercolor:n.bordercolor,borderpad:n.borderpad,borderwidth:n.borderwidth,showarrow:n.showarrow,arrowcolor:n.arrowcolor,arrowhead:n.arrowhead,startarrowhead:n.startarrowhead,arrowside:n.arrowside,arrowsize:n.arrowsize,startarrowsize:n.startarrowsize,arrowwidth:n.arrowwidth,standoff:n.standoff,startstandoff:n.startstandoff,hovertext:n.hovertext,hoverlabel:n.hoverlabel,captureevents:n.captureevents}),\"calc\",\"from-root\")},47979:function(t,e,r){\"use strict\";var n=r(34809),i=r(29714);function a(t,e){var r=e.fullSceneLayout.domain,a=e.fullLayout._size,o={pdata:null,type:\"linear\",autorange:!1,range:[-1/0,1/0]};t._xa={},n.extendFlat(t._xa,o),i.setConvert(t._xa),t._xa._offset=a.l+r.x[0]*a.w,t._xa.l2p=function(){return.5*(1+t._pdata[0]/t._pdata[3])*a.w*(r.x[1]-r.x[0])},t._ya={},n.extendFlat(t._ya,o),i.setConvert(t._ya),t._ya._offset=a.t+(1-r.y[1])*a.h,t._ya.l2p=function(){return.5*(1-t._pdata[1]/t._pdata[3])*a.h*(r.y[1]-r.y[0])}}t.exports=function(t){for(var e=t.fullSceneLayout.annotations,r=0;r<e.length;r++)a(e[r],t);t.fullLayout._infolayer.selectAll(\".annotation-\"+t.id).remove()}},34232:function(t,e,r){\"use strict\";var n=r(34809),i=r(29714),a=r(59008),o=r(53271),s=r(38239);function l(t,e,r,a){function l(r,i){return n.coerce(t,e,s,r,i)}function c(t){var n=t+\"axis\",a={_fullLayout:{}};return a._fullLayout[n]=r[n],i.coercePosition(e,a,l,t,t,.5)}l(\"visible\")&&(o(t,e,a.fullLayout,l),c(\"x\"),c(\"y\"),c(\"z\"),n.noneOrAll(t,e,[\"x\",\"y\",\"z\"]),e.xref=\"x\",e.yref=\"y\",e.zref=\"z\",l(\"xanchor\"),l(\"yanchor\"),l(\"xshift\"),l(\"yshift\"),e.showarrow&&(e.axref=\"pixel\",e.ayref=\"pixel\",l(\"ax\",-10),l(\"ay\",-30),n.noneOrAll(t,e,[\"ax\",\"ay\"])))}t.exports=function(t,e,r){a(t,e,{name:\"annotations\",handleItemDefaults:l,fullLayout:r.fullLayout})}},9756:function(t,e,r){\"use strict\";var n=r(3377).drawRaw,i=r(25802),a=[\"x\",\"y\",\"z\"];t.exports=function(t){for(var e=t.fullSceneLayout,r=t.dataScale,o=e.annotations,s=0;s<o.length;s++){for(var l=o[s],c=!1,u=0;u<3;u++){var h=a[u],f=l[h],p=e[h+\"axis\"].r2fraction(f);if(p<0||p>1){c=!0;break}}c?t.fullLayout._infolayer.select(\".annotation-\"+t.id+'[data-index=\"'+s+'\"]').remove():(l._pdata=i(t.glplot.cameraParams,[e.xaxis.r2l(l.x)*r[0],e.yaxis.r2l(l.y)*r[1],e.zaxis.r2l(l.z)*r[2]]),n(t.graphDiv,l,s,t.id,l._xa,l._ya))}}},83348:function(t,e,r){\"use strict\";var n=r(33626),i=r(34809);t.exports={moduleType:\"component\",name:\"annotations3d\",schema:{subplots:{scene:{annotations:r(38239)}}},layoutAttributes:r(38239),handleDefaults:r(34232),includeBasePlot:function(t,e){var r=n.subplotsRegistry.gl3d;if(r)for(var a=r.attrRegex,o=Object.keys(t),s=0;s<o.length;s++){var l=o[s];a.test(l)&&(t[l].annotations||[]).length&&(i.pushUnique(e._basePlotModules,r),i.pushUnique(e._subplots.gl3d,l))}},convert:r(47979),draw:r(9756)}},37177:function(t,e,r){\"use strict\";t.exports=r(24453),r(23428),r(1401),r(72210),r(28569),r(81133),r(78295),r(25512),r(42645),r(62324),r(91662),r(66445),r(50506),r(84756),r(41858),r(57985)},29698:function(t,e,r){\"use strict\";var n=r(37177),i=r(34809),a=r(63821),o=a.EPOCHJD,s=a.ONEDAY,l={valType:\"enumerated\",values:i.sortObjectKeys(n.calendars),editType:\"calc\",dflt:\"gregorian\"},c=function(t,e,r,n){var a={};return a[r]=l,i.coerce(t,e,a,r,n)},u=\"##\",h={d:{0:\"dd\",\"-\":\"d\"},e:{0:\"d\",\"-\":\"d\"},a:{0:\"D\",\"-\":\"D\"},A:{0:\"DD\",\"-\":\"DD\"},j:{0:\"oo\",\"-\":\"o\"},W:{0:\"ww\",\"-\":\"w\"},m:{0:\"mm\",\"-\":\"m\"},b:{0:\"M\",\"-\":\"M\"},B:{0:\"MM\",\"-\":\"MM\"},y:{0:\"yy\",\"-\":\"yy\"},Y:{0:\"yyyy\",\"-\":\"yyyy\"},U:u,w:u,c:{0:\"D M d %X yyyy\",\"-\":\"D M d %X yyyy\"},x:{0:\"mm/dd/yyyy\",\"-\":\"mm/dd/yyyy\"}},f={};function p(t){var e=f[t];return e||(f[t]=n.instance(t))}function d(t){return i.extendFlat({},l,{description:t})}function m(t){return\"Sets the calendar system to use with `\"+t+\"` date data.\"}var g={xcalendar:d(m(\"x\"))},y=i.extendFlat({},g,{ycalendar:d(m(\"y\"))}),v=i.extendFlat({},y,{zcalendar:d(m(\"z\"))}),x=d([\"Sets the calendar system to use for `range` and `tick0`\",\"if this is a date axis. This does not set the calendar for\",\"interpreting data on this axis, that's specified in the trace\",\"or via the global `layout.calendar`\"].join(\" \"));t.exports={moduleType:\"component\",name:\"calendars\",schema:{traces:{scatter:y,bar:y,box:y,heatmap:y,contour:y,histogram:y,histogram2d:y,histogram2dcontour:y,scatter3d:v,surface:v,mesh3d:v,scattergl:y,ohlc:g,candlestick:g},layout:{calendar:d([\"Sets the default calendar system to use for interpreting and\",\"displaying dates throughout the plot.\"].join(\" \"))},subplots:{xaxis:{calendar:x},yaxis:{calendar:x},scene:{xaxis:{calendar:x},yaxis:{calendar:x},zaxis:{calendar:x}},polar:{radialaxis:{calendar:x}}},transforms:{filter:{valuecalendar:d([\"WARNING: All transforms are deprecated and may be removed from the API in next major version.\",\"Sets the calendar system to use for `value`, if it is a date.\"].join(\" \")),targetcalendar:d([\"WARNING: All transforms are deprecated and may be removed from the API in next major version.\",\"Sets the calendar system to use for `target`, if it is an\",\"array of dates. If `target` is a string (eg *x*) we use the\",\"corresponding trace attribute (eg `xcalendar`) if it exists,\",\"even if `targetcalendar` is provided.\"].join(\" \"))}}},layoutAttributes:l,handleDefaults:c,handleTraceDefaults:function(t,e,r,n){for(var i=0;i<r.length;i++)c(t,e,r[i]+\"calendar\",n.calendar)},CANONICAL_SUNDAY:{chinese:\"2000-01-02\",coptic:\"2000-01-03\",discworld:\"2000-01-03\",ethiopian:\"2000-01-05\",hebrew:\"5000-01-01\",islamic:\"1000-01-02\",julian:\"2000-01-03\",mayan:\"5000-01-01\",nanakshahi:\"1000-01-05\",nepali:\"2000-01-05\",persian:\"1000-01-01\",jalali:\"1000-01-01\",taiwan:\"1000-01-04\",thai:\"2000-01-04\",ummalqura:\"1400-01-06\"},CANONICAL_TICK:{chinese:\"2000-01-01\",coptic:\"2000-01-01\",discworld:\"2000-01-01\",ethiopian:\"2000-01-01\",hebrew:\"5000-01-01\",islamic:\"1000-01-01\",julian:\"2000-01-01\",mayan:\"5000-01-01\",nanakshahi:\"1000-01-01\",nepali:\"2000-01-01\",persian:\"1000-01-01\",jalali:\"1000-01-01\",taiwan:\"1000-01-01\",thai:\"2000-01-01\",ummalqura:\"1400-01-01\"},DFLTRANGE:{chinese:[\"2000-01-01\",\"2001-01-01\"],coptic:[\"1700-01-01\",\"1701-01-01\"],discworld:[\"1800-01-01\",\"1801-01-01\"],ethiopian:[\"2000-01-01\",\"2001-01-01\"],hebrew:[\"5700-01-01\",\"5701-01-01\"],islamic:[\"1400-01-01\",\"1401-01-01\"],julian:[\"2000-01-01\",\"2001-01-01\"],mayan:[\"5200-01-01\",\"5201-01-01\"],nanakshahi:[\"0500-01-01\",\"0501-01-01\"],nepali:[\"2000-01-01\",\"2001-01-01\"],persian:[\"1400-01-01\",\"1401-01-01\"],jalali:[\"1400-01-01\",\"1401-01-01\"],taiwan:[\"0100-01-01\",\"0101-01-01\"],thai:[\"2500-01-01\",\"2501-01-01\"],ummalqura:[\"1400-01-01\",\"1401-01-01\"]},getCal:p,worldCalFmt:function(t,e,r){for(var n,i,a,l,c,f=Math.floor((e+.05)/s)+o,d=p(r).fromJD(f),m=0;-1!==(m=t.indexOf(\"%\",m));)\"0\"===(n=t.charAt(m+1))||\"-\"===n||\"_\"===n?(a=3,i=t.charAt(m+2),\"_\"===n&&(n=\"-\")):(i=n,n=\"0\",a=2),(l=h[i])?(c=l===u?u:d.formatDate(l[n]),t=t.substr(0,m)+c+t.substr(m+a),m+=c.length):m+=a;return t}}},10229:function(t,e){\"use strict\";e.defaults=[\"#1f77b4\",\"#ff7f0e\",\"#2ca02c\",\"#d62728\",\"#9467bd\",\"#8c564b\",\"#e377c2\",\"#7f7f7f\",\"#bcbd22\",\"#17becf\"],e.defaultLine=\"#444\",e.lightLine=\"#eee\",e.background=\"#fff\",e.borderLine=\"#BEC8D9\",e.lightFraction=1e3/11},78766:function(t,e,r){\"use strict\";var n=r(65657),i=r(10721),a=r(87800).isTypedArray,o=t.exports={},s=r(10229);o.defaults=s.defaults;var l=o.defaultLine=s.defaultLine;o.lightLine=s.lightLine;var c=o.background=s.background;function u(t){if(i(t)||\"string\"!=typeof t)return t;var e=t.trim();if(\"rgb\"!==e.substr(0,3))return t;var r=e.match(/^rgba?\\s*\\(([^()]*)\\)$/);if(!r)return t;var n=r[1].trim().split(/\\s*[\\s,]\\s*/),a=\"a\"===e.charAt(3)&&4===n.length;if(!a&&3!==n.length)return t;for(var o=0;o<n.length;o++){if(!n[o].length)return t;if(n[o]=Number(n[o]),!(n[o]>=0))return t;if(3===o)n[o]>1&&(n[o]=1);else if(n[o]>=1)return t}var s=Math.round(255*n[0])+\", \"+Math.round(255*n[1])+\", \"+Math.round(255*n[2]);return a?\"rgba(\"+s+\", \"+n[3]+\")\":\"rgb(\"+s+\")\"}o.tinyRGB=function(t){var e=t.toRgb();return\"rgb(\"+Math.round(e.r)+\", \"+Math.round(e.g)+\", \"+Math.round(e.b)+\")\"},o.rgb=function(t){return o.tinyRGB(n(t))},o.opacity=function(t){return t?n(t).getAlpha():0},o.addOpacity=function(t,e){var r=n(t).toRgb();return\"rgba(\"+Math.round(r.r)+\", \"+Math.round(r.g)+\", \"+Math.round(r.b)+\", \"+e+\")\"},o.combine=function(t,e){var r=n(t).toRgb();if(1===r.a)return n(t).toRgbString();var i=n(e||c).toRgb(),a=1===i.a?i:{r:255*(1-i.a)+i.r*i.a,g:255*(1-i.a)+i.g*i.a,b:255*(1-i.a)+i.b*i.a},o={r:a.r*(1-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.interpolate=function(t,e,r){var i=n(t).toRgb(),a=n(e).toRgb(),o={r:r*i.r+(1-r)*a.r,g:r*i.g+(1-r)*a.g,b:r*i.b+(1-r)*a.b};return n(o).toRgbString()},o.contrast=function(t,e,r){var i=n(t);return 1!==i.getAlpha()&&(i=n(o.combine(t,c))),(i.isDark()?e?i.lighten(e):c:r?i.darken(r):l).toString()},o.stroke=function(t,e){var r=n(e);t.style({stroke:o.tinyRGB(r),\"stroke-opacity\":r.getAlpha()})},o.fill=function(t,e){var r=n(e);t.style({fill:o.tinyRGB(r),\"fill-opacity\":r.getAlpha()})},o.clean=function(t){if(t&&\"object\"==typeof t){var e,r,n,i,s=Object.keys(t);for(e=0;e<s.length;e++)if(i=t[n=s[e]],\"color\"===n.substr(n.length-5))if(Array.isArray(i))for(r=0;r<i.length;r++)i[r]=u(i[r]);else t[n]=u(i);else if(\"colorscale\"===n.substr(n.length-10)&&Array.isArray(i))for(r=0;r<i.length;r++)Array.isArray(i[r])&&(i[r][1]=u(i[r][1]));else if(Array.isArray(i)){var l=i[0];if(!Array.isArray(l)&&l&&\"object\"==typeof l)for(r=0;r<i.length;r++)o.clean(i[r])}else i&&\"object\"==typeof i&&!a(i)&&o.clean(i)}}},25158:function(t,e,r){\"use strict\";var n=r(25829),i=r(80337),a=r(93049).extendFlat,o=r(13582).overrideAll;t.exports=o({orientation:{valType:\"enumerated\",values:[\"h\",\"v\"],dflt:\"v\"},thicknessmode:{valType:\"enumerated\",values:[\"fraction\",\"pixels\"],dflt:\"pixels\"},thickness:{valType:\"number\",min:0,dflt:30},lenmode:{valType:\"enumerated\",values:[\"fraction\",\"pixels\"],dflt:\"fraction\"},len:{valType:\"number\",min:0,dflt:1},x:{valType:\"number\"},xref:{valType:\"enumerated\",dflt:\"paper\",values:[\"container\",\"paper\"],editType:\"layoutstyle\"},xanchor:{valType:\"enumerated\",values:[\"left\",\"center\",\"right\"]},xpad:{valType:\"number\",min:0,dflt:10},y:{valType:\"number\"},yref:{valType:\"enumerated\",dflt:\"paper\",values:[\"container\",\"paper\"],editType:\"layoutstyle\"},yanchor:{valType:\"enumerated\",values:[\"top\",\"middle\",\"bottom\"]},ypad:{valType:\"number\",min:0,dflt:10},outlinecolor:n.linecolor,outlinewidth:n.linewidth,bordercolor:n.linecolor,borderwidth:{valType:\"number\",min:0,dflt:0},bgcolor:{valType:\"color\",dflt:\"rgba(0,0,0,0)\"},tickmode:n.minor.tickmode,nticks:n.nticks,tick0:n.tick0,dtick:n.dtick,tickvals:n.tickvals,ticktext:n.ticktext,ticks:a({},n.ticks,{dflt:\"\"}),ticklabeloverflow:a({},n.ticklabeloverflow,{}),ticklabelposition:{valType:\"enumerated\",values:[\"outside\",\"inside\",\"outside top\",\"inside top\",\"outside left\",\"inside left\",\"outside right\",\"inside right\",\"outside bottom\",\"inside bottom\"],dflt:\"outside\"},ticklen:n.ticklen,tickwidth:n.tickwidth,tickcolor:n.tickcolor,ticklabelstep:n.ticklabelstep,showticklabels:n.showticklabels,labelalias:n.labelalias,tickfont:i({}),tickangle:n.tickangle,tickformat:n.tickformat,tickformatstops:n.tickformatstops,tickprefix:n.tickprefix,showtickprefix:n.showtickprefix,ticksuffix:n.ticksuffix,showticksuffix:n.showticksuffix,separatethousands:n.separatethousands,exponentformat:n.exponentformat,minexponent:n.minexponent,showexponent:n.showexponent,title:{text:{valType:\"string\"},font:i({}),side:{valType:\"enumerated\",values:[\"right\",\"top\",\"bottom\"]}},_deprecated:{title:{valType:\"string\"},titlefont:i({}),titleside:{valType:\"enumerated\",values:[\"right\",\"top\",\"bottom\"],dflt:\"top\"}}},\"colorbars\",\"from-root\")},34554:function(t){\"use strict\";t.exports={cn:{colorbar:\"colorbar\",cbbg:\"cbbg\",cbfill:\"cbfill\",cbfills:\"cbfills\",cbline:\"cbline\",cblines:\"cblines\",cbaxis:\"cbaxis\",cbtitleunshift:\"cbtitleunshift\",cbtitle:\"cbtitle\",cboutline:\"cboutline\",crisp:\"crisp\",jsPlaceholder:\"js-placeholder\"}}},42097:function(t,e,r){\"use strict\";var n=r(34809),i=r(78032),a=r(22777),o=r(87433),s=r(12036),l=r(54616),c=r(25158);t.exports=function(t,e,r){var u=i.newContainer(e,\"colorbar\"),h=t.colorbar||{};function f(t,e){return n.coerce(h,u,c,t,e)}var p=r.margin||{t:0,b:0,l:0,r:0},d=r.width-p.l-p.r,m=r.height-p.t-p.b,g=\"v\"===f(\"orientation\"),y=f(\"thicknessmode\");f(\"thickness\",\"fraction\"===y?30/(g?d:m):30);var v=f(\"lenmode\");f(\"len\",\"fraction\"===v?1:g?m:d);var x,_,b,w=\"paper\"===f(\"yref\"),T=\"paper\"===f(\"xref\"),k=\"left\";g?(b=\"middle\",k=T?\"left\":\"right\",x=T?1.02:1,_=.5):(b=w?\"bottom\":\"top\",k=\"center\",x=.5,_=w?1.02:1),n.coerce(h,u,{x:{valType:\"number\",min:T?-2:0,max:T?3:1,dflt:x}},\"x\"),n.coerce(h,u,{y:{valType:\"number\",min:w?-2:0,max:w?3:1,dflt:_}},\"y\"),f(\"xanchor\",k),f(\"xpad\"),f(\"yanchor\",b),f(\"ypad\"),n.noneOrAll(h,u,[\"x\",\"y\"]),f(\"outlinecolor\"),f(\"outlinewidth\"),f(\"bordercolor\"),f(\"borderwidth\"),f(\"bgcolor\");var A=n.coerce(h,u,{ticklabelposition:{valType:\"enumerated\",dflt:\"outside\",values:g?[\"outside\",\"inside\",\"outside top\",\"inside top\",\"outside bottom\",\"inside bottom\"]:[\"outside\",\"inside\",\"outside left\",\"inside left\",\"outside right\",\"inside right\"]}},\"ticklabelposition\");f(\"ticklabeloverflow\",-1!==A.indexOf(\"inside\")?\"hide past domain\":\"hide past div\"),a(h,u,f,\"linear\");var M=r.font,S={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,outerTicks:!1,font:M};-1!==A.indexOf(\"inside\")&&(S.bgColor=\"black\"),l(h,u,f,\"linear\",S),s(h,u,f,\"linear\",S),o(h,u,f,\"linear\",S),f(\"title.text\",r._dfltTitle.colorbar);var E=u.showticklabels?u.tickfont:M,C=n.extendFlat({},M,{family:E.family,size:n.bigFont(E.size)});n.coerceFont(f,\"title.font\",C),f(\"title.side\",g?\"top\":\"right\")}},5881:function(t,e,r){\"use strict\";var n=r(45568),i=r(65657),a=r(44122),o=r(33626),s=r(29714),l=r(14751),c=r(34809),u=c.strTranslate,h=r(93049).extendFlat,f=r(27983),p=r(62203),d=r(78766),m=r(17240),g=r(30635),y=r(65477).flipScale,v=r(97655),x=r(40957),_=r(25829),b=r(4530),w=b.LINE_SPACING,T=b.FROM_TL,k=b.FROM_BR,A=r(34554).cn;t.exports={draw:function(t){var e=t._fullLayout._infolayer.selectAll(\"g.\"+A.colorbar).data(function(t){var e,r,n,i,a=t._fullLayout,o=t.calcdata,s=[];function l(t){return h(t,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function c(){\"function\"==typeof i.calc?i.calc(t,n,e):(e._fillgradient=r.reversescale?y(r.colorscale):r.colorscale,e._zrange=[r[i.min],r[i.max]])}for(var u=0;u<o.length;u++){var f=o[u];if((n=f[0].trace)._module){var p=n._module.colorbar;if(!0===n.visible&&p)for(var d=Array.isArray(p),m=d?p:[p],g=0;g<m.length;g++){var v=(i=m[g]).container;(r=v?n[v]:n)&&r.showscale&&((e=l(r.colorbar))._id=\"cb\"+n.uid+(d&&v?\"-\"+v:\"\"),e._traceIndex=n.index,e._propPrefix=(v?v+\".\":\"\")+\"colorbar.\",e._meta=n._meta,c(),s.push(e))}}}for(var x in a._colorAxes)if((r=a[x]).showscale){var _=a._colorAxes[x];(e=l(r.colorbar))._id=\"cb\"+x,e._propPrefix=x+\".colorbar.\",e._meta=a._meta,i={min:\"cmin\",max:\"cmax\"},\"heatmap\"!==_[0]&&(n=_[1],i.calc=n._module.colorbar.calc),c(),s.push(e)}return s}(t),(function(t){return t._id}));e.enter().append(\"g\").attr(\"class\",(function(t){return t._id})).classed(A.colorbar,!0),e.each((function(e){var r=n.select(this);c.ensureSingle(r,\"rect\",A.cbbg),c.ensureSingle(r,\"g\",A.cbfills),c.ensureSingle(r,\"g\",A.cblines),c.ensureSingle(r,\"g\",A.cbaxis,(function(t){t.classed(A.crisp,!0)})),c.ensureSingle(r,\"g\",A.cbtitleunshift,(function(t){t.append(\"g\").classed(A.cbtitle,!0)})),c.ensureSingle(r,\"rect\",A.cboutline);var y=function(t,e,r){var o=\"v\"===e.orientation,l=e.len,f=e.lenmode,y=e.thickness,b=e.thicknessmode,M=e.outlinewidth,S=e.borderwidth,E=e.bgcolor,C=e.xanchor,L=e.yanchor,I=e.xpad,P=e.ypad,z=e.x,O=o?e.y:1-e.y,D=\"paper\"===e.yref,R=\"paper\"===e.xref,F=r._fullLayout,B=F._size,N=e._fillcolor,j=e._line,U=e.title,V=U.side,q=e._zrange||n.extent((\"function\"==typeof N?N:j.color).domain()),H=\"function\"==typeof j.color?j.color:function(){return j.color},G=\"function\"==typeof N?N:function(){return N},Z=e._levels,W=function(t,e,r){var n,i,a=e._levels,o=[],s=[],l=a.end+a.size/100,c=a.size,u=1.001*r[0]-.001*r[1],h=1.001*r[1]-.001*r[0];for(i=0;i<1e5&&(n=a.start+i*c,!(c>0?n>=l:n<=l));i++)n>u&&n<h&&o.push(n);if(e._fillgradient)s=[0];else if(\"function\"==typeof e._fillcolor){var f=e._filllevels;if(f)for(l=f.end+f.size/100,c=f.size,i=0;i<1e5&&(n=f.start+i*c,!(c>0?n>=l:n<=l));i++)n>r[0]&&n<r[1]&&s.push(n);else(s=o.map((function(t){return t-a.size/2}))).push(s[s.length-1]+a.size)}else e._fillcolor&&\"string\"==typeof e._fillcolor&&(s=[0]);return a.size<0&&(o.reverse(),s.reverse()),{line:o,fill:s}}(0,e,q),Y=W.fill,X=W.line,$=Math.round(y*(\"fraction\"===b?o?B.w:B.h:1)),J=$/(o?B.w:B.h),K=Math.round(l*(\"fraction\"===f?o?B.h:B.w:1)),Q=K/(o?B.h:B.w),tt=R?B.w:r._fullLayout.width,et=D?B.h:r._fullLayout.height,rt=Math.round(o?z*tt+I:O*et+P),nt={center:.5,right:1}[C]||0,it={top:1,middle:.5}[L]||0,at=o?z-nt*J:O-it*J,ot=o?O-it*Q:z-nt*Q,st=Math.round(o?et*(1-ot):tt*ot);e._lenFrac=Q,e._thickFrac=J,e._uFrac=at,e._vFrac=ot;var lt=e._axis=function(t,e,r){var n=t._fullLayout,i=\"v\"===e.orientation,a={type:\"linear\",range:r,tickmode:e.tickmode,nticks:e.nticks,tick0:e.tick0,dtick:e.dtick,tickvals:e.tickvals,ticktext:e.ticktext,ticks:e.ticks,ticklen:e.ticklen,tickwidth:e.tickwidth,tickcolor:e.tickcolor,showticklabels:e.showticklabels,labelalias:e.labelalias,ticklabelposition:e.ticklabelposition,ticklabeloverflow:e.ticklabeloverflow,ticklabelstep:e.ticklabelstep,tickfont:e.tickfont,tickangle:e.tickangle,tickformat:e.tickformat,exponentformat:e.exponentformat,minexponent:e.minexponent,separatethousands:e.separatethousands,showexponent:e.showexponent,showtickprefix:e.showtickprefix,tickprefix:e.tickprefix,showticksuffix:e.showticksuffix,ticksuffix:e.ticksuffix,title:e.title,showline:!0,anchor:\"free\",side:i?\"right\":\"bottom\",position:1},o=i?\"y\":\"x\",s={type:\"linear\",_id:o+e._id},l={letter:o,font:n.font,noAutotickangles:\"y\"===o,noHover:!0,noTickson:!0,noTicklabelmode:!0,noInsideRange:!0,calendar:n.calendar};function u(t,e){return c.coerce(a,s,_,t,e)}return v(a,s,u,l,n),x(a,s,u,l),s}(r,e,q);lt.position=J+(o?z+I/B.w:O+P/B.h);var ct=-1!==[\"top\",\"bottom\"].indexOf(V);if(o&&ct&&(lt.title.side=V,lt.titlex=z+I/B.w,lt.titley=ot+(\"top\"===U.side?Q-P/B.h:P/B.h)),o||ct||(lt.title.side=V,lt.titley=O+P/B.h,lt.titlex=ot+I/B.w),j.color&&\"auto\"===e.tickmode){lt.tickmode=\"linear\",lt.tick0=Z.start;var ut=Z.size,ht=c.constrain(K/50,4,15)+1,ft=(q[1]-q[0])/((e.nticks||ht)*ut);if(ft>1){var pt=Math.pow(10,Math.floor(Math.log(ft)/Math.LN10));ut*=pt*c.roundUp(ft/pt,[2,5,10]),(Math.abs(Z.start)/Z.size+1e-6)%1<2e-6&&(lt.tick0=0)}lt.dtick=ut}lt.domain=o?[ot+P/B.h,ot+Q-P/B.h]:[ot+I/B.w,ot+Q-I/B.w],lt.setScale(),t.attr(\"transform\",u(Math.round(B.l),Math.round(B.t)));var dt,mt=t.select(\".\"+A.cbtitleunshift).attr(\"transform\",u(-Math.round(B.l),-Math.round(B.t))),gt=lt.ticklabelposition,yt=lt.title.font.size,vt=t.select(\".\"+A.cbaxis),xt=0,_t=0;function bt(n,i){var a={propContainer:lt,propName:e._propPrefix+\"title\",traceIndex:e._traceIndex,_meta:e._meta,placeholder:F._dfltTitle.colorbar,containerGroup:t.select(\".\"+A.cbtitle)},o=\"h\"===n.charAt(0)?n.substr(1):\"h\"+n;t.selectAll(\".\"+o+\",.\"+o+\"-math-group\").remove(),m.draw(r,n,h(a,i||{}))}return c.syncOrAsync([a.previousPromises,function(){var t,e;(o&&ct||!o&&!ct)&&(\"top\"===V&&(t=I+B.l+tt*z,e=P+B.t+et*(1-ot-Q)+3+.75*yt),\"bottom\"===V&&(t=I+B.l+tt*z,e=P+B.t+et*(1-ot)-3-.25*yt),\"right\"===V&&(e=P+B.t+et*O+3+.75*yt,t=I+B.l+tt*ot),bt(lt._id+\"title\",{attributes:{x:t,y:e,\"text-anchor\":o?\"start\":\"middle\"}}))},function(){if(!o&&!ct||o&&ct){var a,l=t.select(\".\"+A.cbtitle),h=l.select(\"text\"),f=[-M/2,M/2],d=l.select(\".h\"+lt._id+\"title-math-group\").node(),m=15.6;if(h.node()&&(m=parseInt(h.node().style.fontSize,10)*w),d?(a=p.bBox(d),_t=a.width,(xt=a.height)>m&&(f[1]-=(xt-m)/2)):h.node()&&!h.classed(A.jsPlaceholder)&&(a=p.bBox(h.node()),_t=a.width,xt=a.height),o){if(xt){if(xt+=5,\"top\"===V)lt.domain[1]-=xt/B.h,f[1]*=-1;else{lt.domain[0]+=xt/B.h;var y=g.lineCount(h);f[1]+=(1-y)*m}l.attr(\"transform\",u(f[0],f[1])),lt.setScale()}}else _t&&(\"right\"===V&&(lt.domain[0]+=(_t+yt/2)/B.w),l.attr(\"transform\",u(f[0],f[1])),lt.setScale())}t.selectAll(\".\"+A.cbfills+\",.\"+A.cblines).attr(\"transform\",o?u(0,Math.round(B.h*(1-lt.domain[1]))):u(Math.round(B.w*lt.domain[0]),0)),vt.attr(\"transform\",o?u(0,Math.round(-B.t)):u(Math.round(-B.l),0));var v=t.select(\".\"+A.cbfills).selectAll(\"rect.\"+A.cbfill).attr(\"style\",\"\").data(Y);v.enter().append(\"rect\").classed(A.cbfill,!0).attr(\"style\",\"\"),v.exit().remove();var x=q.map(lt.c2p).map(Math.round).sort((function(t,e){return t-e}));v.each((function(t,a){var s=[0===a?q[0]:(Y[a]+Y[a-1])/2,a===Y.length-1?q[1]:(Y[a]+Y[a+1])/2].map(lt.c2p).map(Math.round);o&&(s[1]=c.constrain(s[1]+(s[1]>s[0])?1:-1,x[0],x[1]));var l=n.select(this).attr(o?\"x\":\"y\",rt).attr(o?\"y\":\"x\",n.min(s)).attr(o?\"width\":\"height\",Math.max($,2)).attr(o?\"height\":\"width\",Math.max(n.max(s)-n.min(s),2));if(e._fillgradient)p.gradient(l,r,e._id,o?\"vertical\":\"horizontalreversed\",e._fillgradient,\"fill\");else{var u=G(t).replace(\"e-\",\"\");l.attr(\"fill\",i(u).toHexString())}}));var _=t.select(\".\"+A.cblines).selectAll(\"path.\"+A.cbline).data(j.color&&j.width?X:[]);_.enter().append(\"path\").classed(A.cbline,!0),_.exit().remove(),_.each((function(t){var e=rt,r=Math.round(lt.c2p(t))+j.width/2%1;n.select(this).attr(\"d\",\"M\"+(o?e+\",\"+r:r+\",\"+e)+(o?\"h\":\"v\")+$).call(p.lineGroupStyle,j.width,H(t),j.dash)})),vt.selectAll(\"g.\"+lt._id+\"tick,path\").remove();var b=rt+$+(M||0)/2-(\"outside\"===e.ticks?1:0),T=s.calcTicks(lt),k=s.getTickSigns(lt)[2];return s.drawTicks(r,lt,{vals:\"inside\"===lt.ticks?s.clipEnds(lt,T):T,layer:vt,path:s.makeTickPath(lt,b,k),transFn:s.makeTransTickFn(lt)}),s.drawLabels(r,lt,{vals:T,layer:vt,transFn:s.makeTransTickLabelFn(lt),labelFns:s.makeLabelFns(lt,b)})},function(){if(o&&!ct||!o&&ct){var t,i,a=lt.position||0,s=lt._offset+lt._length/2;if(\"right\"===V)i=s,t=B.l+tt*a+10+yt*(lt.showticklabels?1:.5);else if(t=s,\"bottom\"===V&&(i=B.t+et*a+10+(-1===gt.indexOf(\"inside\")?lt.tickfont.size:0)+(\"intside\"!==lt.ticks&&e.ticklen||0)),\"top\"===V){var l=U.text.split(\"<br>\").length;i=B.t+et*a+10-$-w*yt*l}bt((o?\"h\":\"v\")+lt._id+\"title\",{avoid:{selection:n.select(r).selectAll(\"g.\"+lt._id+\"tick\"),side:V,offsetTop:o?0:B.t,offsetLeft:o?B.l:0,maxShift:o?F.width:F.height},attributes:{x:t,y:i,\"text-anchor\":\"middle\"},transform:{rotate:o?-90:0,offset:0}})}},a.previousPromises,function(){var n,s=$+M/2;-1===gt.indexOf(\"inside\")&&(n=p.bBox(vt.node()),s+=o?n.width:n.height),dt=mt.select(\"text\");var c=0,h=o&&\"top\"===V,m=!o&&\"right\"===V,g=0;if(dt.node()&&!dt.classed(A.jsPlaceholder)){var v,x=mt.select(\".h\"+lt._id+\"title-math-group\").node();x&&(o&&ct||!o&&!ct)?(c=(n=p.bBox(x)).width,v=n.height):(c=(n=p.bBox(mt.node())).right-B.l-(o?rt:st),v=n.bottom-B.t-(o?st:rt),o||\"top\"!==V||(s+=n.height,g=n.height)),m&&(dt.attr(\"transform\",u(c/2+yt/2,0)),c*=2),s=Math.max(s,o?c:v)}var _=2*(o?I:P)+s+S+M/2,w=0;!o&&U.text&&\"bottom\"===L&&O<=0&&(_+=w=_/2,g+=w),F._hColorbarMoveTitle=w,F._hColorbarMoveCBTitle=g;var N=S+M,j=(o?rt:st)-N/2-(o?I:0),q=(o?st:rt)-(o?K:P+g-w);t.select(\".\"+A.cbbg).attr(\"x\",j).attr(\"y\",q).attr(o?\"width\":\"height\",Math.max(_-w,2)).attr(o?\"height\":\"width\",Math.max(K+N,2)).call(d.fill,E).call(d.stroke,e.bordercolor).style(\"stroke-width\",S);var H=m?Math.max(c-10,0):0;t.selectAll(\".\"+A.cboutline).attr(\"x\",(o?rt:st+I)+H).attr(\"y\",(o?st+P-K:rt)+(h?xt:0)).attr(o?\"width\":\"height\",Math.max($,2)).attr(o?\"height\":\"width\",Math.max(K-(o?2*P+xt:2*I+H),2)).call(d.stroke,e.outlinecolor).style({fill:\"none\",\"stroke-width\":M});var G=o?nt*_:0,Z=o?0:(1-it)*_-g;if(G=R?B.l-G:-G,Z=D?B.t-Z:-Z,t.attr(\"transform\",u(G,Z)),!o&&(S||i(E).getAlpha()&&!i.equals(F.paper_bgcolor,E))){var W=vt.selectAll(\"text\"),Y=W[0].length,X=t.select(\".\"+A.cbbg).node(),J=p.bBox(X),Q=p.getTranslate(t);W.each((function(t,e){var r=Y-1;if(0===e||e===r){var n,i=p.bBox(this),a=p.getTranslate(this);if(e===r){var o=i.right+a.x;(n=J.right+Q.x+st-S-2+z-o)>0&&(n=0)}else if(0===e){var s=i.left+a.x;(n=J.left+Q.x+st+S+2-s)<0&&(n=0)}n&&(Y<3?this.setAttribute(\"transform\",\"translate(\"+n+\",0) \"+this.getAttribute(\"transform\")):this.setAttribute(\"visibility\",\"hidden\"))}}))}var tt={},et=T[C],at=k[C],ot=T[L],ut=k[L],ht=_-$;o?(\"pixels\"===f?(tt.y=O,tt.t=K*ot,tt.b=K*ut):(tt.t=tt.b=0,tt.yt=O+l*ot,tt.yb=O-l*ut),\"pixels\"===b?(tt.x=z,tt.l=_*et,tt.r=_*at):(tt.l=ht*et,tt.r=ht*at,tt.xl=z-y*et,tt.xr=z+y*at)):(\"pixels\"===f?(tt.x=z,tt.l=K*et,tt.r=K*at):(tt.l=tt.r=0,tt.xl=z+l*et,tt.xr=z-l*at),\"pixels\"===b?(tt.y=1-O,tt.t=_*ot,tt.b=_*ut):(tt.t=ht*ot,tt.b=ht*ut,tt.yt=O-y*ot,tt.yb=O+y*ut));var ft=e.y<.5?\"b\":\"t\",pt=e.x<.5?\"l\":\"r\";r._fullLayout._reservedMargin[e._id]={};var _t={r:F.width-j-G,l:j+tt.r,b:F.height-q-Z,t:q+tt.b};R&&D?a.autoMargin(r,e._id,tt):R?r._fullLayout._reservedMargin[e._id][ft]=_t[ft]:D||o?r._fullLayout._reservedMargin[e._id][pt]=_t[pt]:r._fullLayout._reservedMargin[e._id][ft]=_t[ft]}],r)}(r,e,t);y&&y.then&&(t._promises||[]).push(y),t._context.edits.colorbarPosition&&function(t,e,r){var n,i,a,s=\"v\"===e.orientation,c=r._fullLayout._size;l.init({element:t.node(),gd:r,prepFn:function(){n=t.attr(\"transform\"),f(t)},moveFn:function(r,o){t.attr(\"transform\",n+u(r,o)),i=l.align((s?e._uFrac:e._vFrac)+r/c.w,s?e._thickFrac:e._lenFrac,0,1,e.xanchor),a=l.align((s?e._vFrac:1-e._uFrac)-o/c.h,s?e._lenFrac:e._thickFrac,0,1,e.yanchor);var h=l.getCursor(i,a,e.xanchor,e.yanchor);f(t,h)},doneFn:function(){if(f(t),void 0!==i&&void 0!==a){var n={};n[e._propPrefix+\"x\"]=i,n[e._propPrefix+\"y\"]=a,void 0!==e._traceIndex?o.call(\"_guiRestyle\",r,n,e._traceIndex):o.call(\"_guiRelayout\",r,n)}}})}(r,e,t)})),e.exit().each((function(e){a.autoMargin(t,e._id)})).remove(),e.order()}}},91362:function(t,e,r){\"use strict\";var n=r(34809);t.exports=function(t){return n.isPlainObject(t.colorbar)}},96919:function(t,e,r){\"use strict\";t.exports={moduleType:\"component\",name:\"colorbar\",attributes:r(25158),supplyDefaults:r(42097),draw:r(5881).draw,hasColorbar:r(91362)}},87163:function(t,e,r){\"use strict\";var n=r(25158),i=r(90694).counter,a=r(62994),o=r(19017).scales;function s(t){return\"`\"+t+\"`\"}a(o),t.exports=function(t,e){t=t||\"\";var r,a=(e=e||{}).cLetter||\"c\",l=(\"onlyIfNumerical\"in e?e.onlyIfNumerical:Boolean(t),\"noScale\"in e?e.noScale:\"marker.line\"===t),c=\"showScaleDflt\"in e?e.showScaleDflt:\"z\"===a,u=\"string\"==typeof e.colorscaleDflt?o[e.colorscaleDflt]:null,h=e.editTypeOverride||\"\",f=t?t+\".\":\"\";\"colorAttr\"in e?(r=e.colorAttr,e.colorAttr):s(f+(r={z:\"z\",c:\"color\"}[a]));var p=a+\"auto\",d=a+\"min\",m=a+\"max\",g=a+\"mid\",y=(s(f+p),s(f+d),s(f+m),{});y[d]=y[m]=void 0;var v={};v[p]=!1;var x={};return\"color\"===r&&(x.color={valType:\"color\",arrayOk:!0,editType:h||\"style\"},e.anim&&(x.color.anim=!0)),x[p]={valType:\"boolean\",dflt:!0,editType:\"calc\",impliedEdits:y},x[d]={valType:\"number\",dflt:null,editType:h||\"plot\",impliedEdits:v},x[m]={valType:\"number\",dflt:null,editType:h||\"plot\",impliedEdits:v},x[g]={valType:\"number\",dflt:null,editType:\"calc\",impliedEdits:y},x.colorscale={valType:\"colorscale\",editType:\"calc\",dflt:u,impliedEdits:{autocolorscale:!1}},x.autocolorscale={valType:\"boolean\",dflt:!1!==e.autoColorDflt,editType:\"calc\",impliedEdits:{colorscale:void 0}},x.reversescale={valType:\"boolean\",dflt:!1,editType:\"plot\"},l||(x.showscale={valType:\"boolean\",dflt:c,editType:\"calc\"},x.colorbar=n),e.noColorAxis||(x.coloraxis={valType:\"subplotid\",regex:i(\"coloraxis\"),dflt:null,editType:\"calc\"}),x}},28379:function(t,e,r){\"use strict\";var n=r(10721),i=r(34809),a=r(65477).extractOpts;t.exports=function(t,e,r){var o,s=t._fullLayout,l=r.vals,c=r.containerStr,u=c?i.nestedProperty(e,c).get():e,h=a(u),f=!1!==h.auto,p=h.min,d=h.max,m=h.mid,g=function(){return i.aggNums(Math.min,null,l)},y=function(){return i.aggNums(Math.max,null,l)};void 0===p?p=g():f&&(p=u._colorAx&&n(p)?Math.min(p,g()):g()),void 0===d?d=y():f&&(d=u._colorAx&&n(d)?Math.max(d,y()):y()),f&&void 0!==m&&(d-m>m-p?p=m-(d-m):d-m<m-p&&(d=m+(m-p))),p===d&&(p-=.5,d+=.5),h._sync(\"min\",p),h._sync(\"max\",d),h.autocolorscale&&(o=p*d<0?s.colorscale.diverging:p>=0?s.colorscale.sequential:s.colorscale.sequentialminus,h._sync(\"colorscale\",o))}},67623:function(t,e,r){\"use strict\";var n=r(34809),i=r(65477).hasColorscale,a=r(65477).extractOpts;t.exports=function(t,e){function r(t,e){var r=t[\"_\"+e];void 0!==r&&(t[e]=r)}function o(t,i){var o=i.container?n.nestedProperty(t,i.container).get():t;if(o)if(o.coloraxis)o._colorAx=e[o.coloraxis];else{var s=a(o),l=s.auto;(l||void 0===s.min)&&r(o,i.min),(l||void 0===s.max)&&r(o,i.max),s.autocolorscale&&r(o,\"colorscale\")}}for(var s=0;s<t.length;s++){var l=t[s],c=l._module.colorbar;if(c)if(Array.isArray(c))for(var u=0;u<c.length;u++)o(l,c[u]);else o(l,c);i(l,\"marker.line\")&&o(l,{container:\"marker.line\",min:\"cmin\",max:\"cmax\"})}for(var h in e._colorAxes)o(e[h],{min:\"cmin\",max:\"cmax\"})}},39356:function(t,e,r){\"use strict\";var n=r(10721),i=r(34809),a=r(91362),o=r(42097),s=r(19017).isValid,l=r(33626).traceIs;function c(t,e){var r=e.slice(0,e.length-1);return e?i.nestedProperty(t,r).get()||{}:t}t.exports=function t(e,r,u,h,f){var p=f.prefix,d=f.cLetter,m=\"_module\"in r,g=c(e,p),y=c(r,p),v=c(r._template||{},p)||{},x=function(){return delete e.coloraxis,delete r.coloraxis,t(e,r,u,h,f)};if(m){var _=u._colorAxes||{},b=h(p+\"coloraxis\");if(b){var w=l(r,\"contour\")&&i.nestedProperty(r,\"contours.coloring\").get()||\"heatmap\",T=_[b];return void(T?(T[2].push(x),T[0]!==w&&(T[0]=!1,i.warn([\"Ignoring coloraxis:\",b,\"setting\",\"as it is linked to incompatible colorscales.\"].join(\" \")))):_[b]=[w,r,[x]])}}var k=g[d+\"min\"],A=g[d+\"max\"],M=n(k)&&n(A)&&k<A;h(p+d+\"auto\",!M)?h(p+d+\"mid\"):(h(p+d+\"min\"),h(p+d+\"max\"));var S,E,C=g.colorscale,L=v.colorscale;void 0!==C&&(S=!s(C)),void 0!==L&&(S=!s(L)),h(p+\"autocolorscale\",S),h(p+\"colorscale\"),h(p+\"reversescale\"),\"marker.line.\"!==p&&(p&&m&&(E=a(g)),h(p+\"showscale\",E)&&(p&&v&&(y._template=v),o(g,y,u)))}},65477:function(t,e,r){\"use strict\";var n=r(45568),i=r(65657),a=r(10721),o=r(34809),s=r(78766),l=r(19017).isValid,c=[\"showscale\",\"autocolorscale\",\"colorscale\",\"reversescale\",\"colorbar\"],u=[\"min\",\"max\",\"mid\",\"auto\"];function h(t){var e,r,n,i=t._colorAx,a=i||t,o={};for(r=0;r<c.length;r++)o[n=c[r]]=a[n];if(i)for(e=\"c\",r=0;r<u.length;r++)o[n=u[r]]=a[\"c\"+n];else{var s;for(r=0;r<u.length;r++)((s=\"c\"+(n=u[r]))in a||(s=\"z\"+n)in a)&&(o[n]=a[s]);e=s.charAt(0)}return o._sync=function(t,r){var n=-1!==u.indexOf(t)?e+t:t;a[n]=a[\"_\"+n]=r},o}function f(t){for(var e=h(t),r=e.min,n=e.max,i=e.reversescale?p(e.colorscale):e.colorscale,a=i.length,o=new Array(a),s=new Array(a),l=0;l<a;l++){var c=i[l];o[l]=r+c[0]*(n-r),s[l]=c[1]}return{domain:o,range:s}}function p(t){for(var e=t.length,r=new Array(e),n=e-1,i=0;n>=0;n--,i++){var a=t[n];r[i]=[1-a[0],a[1]]}return r}function d(t,e){e=e||{};for(var r=t.domain,o=t.range,l=o.length,c=new Array(l),u=0;u<l;u++){var h=i(o[u]).toRgb();c[u]=[h.r,h.g,h.b,h.a]}var f,p=n.scale.linear().domain(r).range(c).clamp(!0),d=e.noNumericCheck,g=e.returnArray;return(f=d&&g?p:d?function(t){return m(p(t))}:g?function(t){return a(t)?p(t):i(t).isValid()?t:s.defaultLine}:function(t){return a(t)?m(p(t)):i(t).isValid()?t:s.defaultLine}).domain=p.domain,f.range=function(){return o},f}function m(t){var e={r:t[0],g:t[1],b:t[2],a:t[3]};return i(e).toRgbString()}t.exports={hasColorscale:function(t,e,r){var n=e?o.nestedProperty(t,e).get()||{}:t,i=n[r||\"color\"];i&&i._inputArray&&(i=i._inputArray);var s=!1;if(o.isArrayOrTypedArray(i))for(var c=0;c<i.length;c++)if(a(i[c])){s=!0;break}return o.isPlainObject(n)&&(s||!0===n.showscale||a(n.cmin)&&a(n.cmax)||l(n.colorscale)||o.isPlainObject(n.colorbar))},extractOpts:h,extractScale:f,flipScale:p,makeColorScaleFunc:d,makeColorScaleFuncFromTrace:function(t,e){return d(f(t),e)}}},88856:function(t,e,r){\"use strict\";var n=r(19017),i=r(65477);t.exports={moduleType:\"component\",name:\"colorscale\",attributes:r(87163),layoutAttributes:r(56978),supplyLayoutDefaults:r(64613),handleDefaults:r(39356),crossTraceDefaults:r(67623),calc:r(28379),scales:n.scales,defaultScale:n.defaultScale,getScale:n.get,isValidScale:n.isValid,hasColorscale:i.hasColorscale,extractOpts:i.extractOpts,extractScale:i.extractScale,flipScale:i.flipScale,makeColorScaleFunc:i.makeColorScaleFunc,makeColorScaleFuncFromTrace:i.makeColorScaleFuncFromTrace}},56978:function(t,e,r){\"use strict\";var n=r(93049).extendFlat,i=r(87163),a=r(19017).scales;t.exports={editType:\"calc\",colorscale:{editType:\"calc\",sequential:{valType:\"colorscale\",dflt:a.Reds,editType:\"calc\"},sequentialminus:{valType:\"colorscale\",dflt:a.Blues,editType:\"calc\"},diverging:{valType:\"colorscale\",dflt:a.RdBu,editType:\"calc\"}},coloraxis:n({_isSubplotObj:!0,editType:\"calc\"},i(\"\",{colorAttr:\"corresponding trace color array(s)\",noColorAxis:!0,showScaleDflt:!0}))}},64613:function(t,e,r){\"use strict\";var n=r(34809),i=r(78032),a=r(56978),o=r(39356);t.exports=function(t,e){function r(r,i){return n.coerce(t,e,a,r,i)}r(\"colorscale.sequential\"),r(\"colorscale.sequentialminus\"),r(\"colorscale.diverging\");var s,l,c=e._colorAxes;function u(t,e){return n.coerce(s,l,a.coloraxis,t,e)}for(var h in c){var f=c[h];if(f[0])s=t[h]||{},(l=i.newContainer(e,h,\"coloraxis\"))._name=h,o(s,l,e,u,{prefix:\"\",cLetter:\"c\"});else{for(var p=0;p<f[2].length;p++)f[2][p]();delete e._colorAxes[h]}}}},19017:function(t,e,r){\"use strict\";var n=r(65657),i={Greys:[[0,\"rgb(0,0,0)\"],[1,\"rgb(255,255,255)\"]],YlGnBu:[[0,\"rgb(8,29,88)\"],[.125,\"rgb(37,52,148)\"],[.25,\"rgb(34,94,168)\"],[.375,\"rgb(29,145,192)\"],[.5,\"rgb(65,182,196)\"],[.625,\"rgb(127,205,187)\"],[.75,\"rgb(199,233,180)\"],[.875,\"rgb(237,248,217)\"],[1,\"rgb(255,255,217)\"]],Greens:[[0,\"rgb(0,68,27)\"],[.125,\"rgb(0,109,44)\"],[.25,\"rgb(35,139,69)\"],[.375,\"rgb(65,171,93)\"],[.5,\"rgb(116,196,118)\"],[.625,\"rgb(161,217,155)\"],[.75,\"rgb(199,233,192)\"],[.875,\"rgb(229,245,224)\"],[1,\"rgb(247,252,245)\"]],YlOrRd:[[0,\"rgb(128,0,38)\"],[.125,\"rgb(189,0,38)\"],[.25,\"rgb(227,26,28)\"],[.375,\"rgb(252,78,42)\"],[.5,\"rgb(253,141,60)\"],[.625,\"rgb(254,178,76)\"],[.75,\"rgb(254,217,118)\"],[.875,\"rgb(255,237,160)\"],[1,\"rgb(255,255,204)\"]],Bluered:[[0,\"rgb(0,0,255)\"],[1,\"rgb(255,0,0)\"]],RdBu:[[0,\"rgb(5,10,172)\"],[.35,\"rgb(106,137,247)\"],[.5,\"rgb(190,190,190)\"],[.6,\"rgb(220,170,132)\"],[.7,\"rgb(230,145,90)\"],[1,\"rgb(178,10,28)\"]],Reds:[[0,\"rgb(220,220,220)\"],[.2,\"rgb(245,195,157)\"],[.4,\"rgb(245,160,105)\"],[1,\"rgb(178,10,28)\"]],Blues:[[0,\"rgb(5,10,172)\"],[.35,\"rgb(40,60,190)\"],[.5,\"rgb(70,100,245)\"],[.6,\"rgb(90,120,245)\"],[.7,\"rgb(106,137,247)\"],[1,\"rgb(220,220,220)\"]],Picnic:[[0,\"rgb(0,0,255)\"],[.1,\"rgb(51,153,255)\"],[.2,\"rgb(102,204,255)\"],[.3,\"rgb(153,204,255)\"],[.4,\"rgb(204,204,255)\"],[.5,\"rgb(255,255,255)\"],[.6,\"rgb(255,204,255)\"],[.7,\"rgb(255,153,255)\"],[.8,\"rgb(255,102,204)\"],[.9,\"rgb(255,102,102)\"],[1,\"rgb(255,0,0)\"]],Rainbow:[[0,\"rgb(150,0,90)\"],[.125,\"rgb(0,0,200)\"],[.25,\"rgb(0,25,255)\"],[.375,\"rgb(0,152,255)\"],[.5,\"rgb(44,255,150)\"],[.625,\"rgb(151,255,0)\"],[.75,\"rgb(255,234,0)\"],[.875,\"rgb(255,111,0)\"],[1,\"rgb(255,0,0)\"]],Portland:[[0,\"rgb(12,51,131)\"],[.25,\"rgb(10,136,186)\"],[.5,\"rgb(242,211,56)\"],[.75,\"rgb(242,143,56)\"],[1,\"rgb(217,30,30)\"]],Jet:[[0,\"rgb(0,0,131)\"],[.125,\"rgb(0,60,170)\"],[.375,\"rgb(5,255,255)\"],[.625,\"rgb(255,255,0)\"],[.875,\"rgb(250,0,0)\"],[1,\"rgb(128,0,0)\"]],Hot:[[0,\"rgb(0,0,0)\"],[.3,\"rgb(230,0,0)\"],[.6,\"rgb(255,210,0)\"],[1,\"rgb(255,255,255)\"]],Blackbody:[[0,\"rgb(0,0,0)\"],[.2,\"rgb(230,0,0)\"],[.4,\"rgb(230,210,0)\"],[.7,\"rgb(255,255,255)\"],[1,\"rgb(160,200,255)\"]],Earth:[[0,\"rgb(0,0,130)\"],[.1,\"rgb(0,180,180)\"],[.2,\"rgb(40,210,40)\"],[.4,\"rgb(230,230,50)\"],[.6,\"rgb(120,70,20)\"],[1,\"rgb(255,255,255)\"]],Electric:[[0,\"rgb(0,0,0)\"],[.15,\"rgb(30,0,100)\"],[.4,\"rgb(120,0,100)\"],[.6,\"rgb(160,90,0)\"],[.8,\"rgb(230,200,0)\"],[1,\"rgb(255,250,220)\"]],Viridis:[[0,\"#440154\"],[.06274509803921569,\"#48186a\"],[.12549019607843137,\"#472d7b\"],[.18823529411764706,\"#424086\"],[.25098039215686274,\"#3b528b\"],[.3137254901960784,\"#33638d\"],[.3764705882352941,\"#2c728e\"],[.4392156862745098,\"#26828e\"],[.5019607843137255,\"#21918c\"],[.5647058823529412,\"#1fa088\"],[.6274509803921569,\"#28ae80\"],[.6901960784313725,\"#3fbc73\"],[.7529411764705882,\"#5ec962\"],[.8156862745098039,\"#84d44b\"],[.8784313725490196,\"#addc30\"],[.9411764705882353,\"#d8e219\"],[1,\"#fde725\"]],Cividis:[[0,\"rgb(0,32,76)\"],[.058824,\"rgb(0,42,102)\"],[.117647,\"rgb(0,52,110)\"],[.176471,\"rgb(39,63,108)\"],[.235294,\"rgb(60,74,107)\"],[.294118,\"rgb(76,85,107)\"],[.352941,\"rgb(91,95,109)\"],[.411765,\"rgb(104,106,112)\"],[.470588,\"rgb(117,117,117)\"],[.529412,\"rgb(131,129,120)\"],[.588235,\"rgb(146,140,120)\"],[.647059,\"rgb(161,152,118)\"],[.705882,\"rgb(176,165,114)\"],[.764706,\"rgb(192,177,109)\"],[.823529,\"rgb(209,191,102)\"],[.882353,\"rgb(225,204,92)\"],[.941176,\"rgb(243,219,79)\"],[1,\"rgb(255,233,69)\"]]},a=i.RdBu;function o(t){var e=0;if(!Array.isArray(t)||t.length<2)return!1;if(!t[0]||!t[t.length-1])return!1;if(0!=+t[0][0]||1!=+t[t.length-1][0])return!1;for(var r=0;r<t.length;r++){var i=t[r];if(2!==i.length||+i[0]<e||!n(i[1]).isValid())return!1;e=+i[0]}return!0}t.exports={scales:i,defaultScale:a,get:function(t,e){if(e||(e=a),!t)return e;function r(){try{t=i[t]||JSON.parse(t)}catch(r){t=e}}return\"string\"==typeof t&&(r(),\"string\"==typeof t&&r()),o(t)?t:e},isValid:function(t){return void 0!==i[t]||o(t)}}},53770:function(t){\"use strict\";t.exports=function(t,e,r,n,i){var a=(t-r)/(n-r),o=a+e/(n-r),s=(a+o)/2;return\"left\"===i||\"bottom\"===i?a:\"center\"===i||\"middle\"===i?s:\"right\"===i||\"top\"===i?o:a<2/3-s?a:o>4/3-s?o:s}},4001:function(t,e,r){\"use strict\";var n=r(34809),i=[[\"sw-resize\",\"s-resize\",\"se-resize\"],[\"w-resize\",\"move\",\"e-resize\"],[\"nw-resize\",\"n-resize\",\"ne-resize\"]];t.exports=function(t,e,r,a){return t=\"left\"===r?0:\"center\"===r?1:\"right\"===r?2:n.constrain(Math.floor(3*t),0,2),e=\"bottom\"===a?0:\"middle\"===a?1:\"top\"===a?2:n.constrain(Math.floor(3*e),0,2),i[e][t]}},70414:function(t,e){\"use strict\";e.selectMode=function(t){return\"lasso\"===t||\"select\"===t},e.drawMode=function(t){return\"drawclosedpath\"===t||\"drawopenpath\"===t||\"drawline\"===t||\"drawrect\"===t||\"drawcircle\"===t},e.openMode=function(t){return\"drawline\"===t||\"drawopenpath\"===t},e.rectMode=function(t){return\"select\"===t||\"drawline\"===t||\"drawrect\"===t||\"drawcircle\"===t},e.freeMode=function(t){return\"lasso\"===t||\"drawclosedpath\"===t||\"drawopenpath\"===t},e.selectingOrDrawing=function(t){return e.freeMode(t)||e.rectMode(t)}},14751:function(t,e,r){\"use strict\";var n=r(44039),i=r(39784),a=r(74043),o=r(34809).removeElement,s=r(54826),l=t.exports={};l.align=r(53770),l.getCursor=r(4001);var c=r(60148);function u(){var t=document.createElement(\"div\");t.className=\"dragcover\";var e=t.style;return e.position=\"fixed\",e.left=0,e.right=0,e.top=0,e.bottom=0,e.zIndex=999999999,e.background=\"none\",document.body.appendChild(t),t}function h(t){return n(t.changedTouches?t.changedTouches[0]:t,document.body)}l.unhover=c.wrapped,l.unhoverRaw=c.raw,l.init=function(t){var e,r,n,c,f,p,d,m,g=t.gd,y=1,v=g._context.doubleClickDelay,x=t.element;g._mouseDownTime||(g._mouseDownTime=0),x.style.pointerEvents=\"all\",x.onmousedown=b,a?(x._ontouchstart&&x.removeEventListener(\"touchstart\",x._ontouchstart),x._ontouchstart=b,x.addEventListener(\"touchstart\",b,{passive:!1})):x.ontouchstart=b;var _=t.clampFn||function(t,e,r){return Math.abs(t)<r&&(t=0),Math.abs(e)<r&&(e=0),[t,e]};function b(a){g._dragged=!1,g._dragging=!0;var o=h(a);e=o[0],r=o[1],d=a.target,p=a,m=2===a.buttons||a.ctrlKey,void 0===a.clientX&&void 0===a.clientY&&(a.clientX=e,a.clientY=r),(n=(new Date).getTime())-g._mouseDownTime<v?y+=1:(y=1,g._mouseDownTime=n),t.prepFn&&t.prepFn(a,e,r),i&&!m?(f=u()).style.cursor=window.getComputedStyle(x).cursor:i||(f=document,c=window.getComputedStyle(document.documentElement).cursor,document.documentElement.style.cursor=window.getComputedStyle(x).cursor),document.addEventListener(\"mouseup\",T),document.addEventListener(\"touchend\",T),!1!==t.dragmode&&(a.preventDefault(),document.addEventListener(\"mousemove\",w),document.addEventListener(\"touchmove\",w,{passive:!1}))}function w(n){n.preventDefault();var i=h(n),a=t.minDrag||s.MINDRAG,o=_(i[0]-e,i[1]-r,a),c=o[0],u=o[1];(c||u)&&(g._dragged=!0,l.unhover(g,n)),g._dragged&&t.moveFn&&!m&&(g._dragdata={element:x,dx:c,dy:u},t.moveFn(c,u))}function T(e){if(delete g._dragdata,!1!==t.dragmode&&(e.preventDefault(),document.removeEventListener(\"mousemove\",w),document.removeEventListener(\"touchmove\",w)),document.removeEventListener(\"mouseup\",T),document.removeEventListener(\"touchend\",T),i?o(f):c&&(f.documentElement.style.cursor=c,c=null),g._dragging){if(g._dragging=!1,(new Date).getTime()-g._mouseDownTime>v&&(y=Math.max(y-1,1)),g._dragged)t.doneFn&&t.doneFn();else if(t.clickFn&&t.clickFn(y,p),!m){var r;try{r=new MouseEvent(\"click\",e)}catch(t){var n=h(e);(r=document.createEvent(\"MouseEvents\")).initMouseEvent(\"click\",e.bubbles,e.cancelable,e.view,e.detail,e.screenX,e.screenY,n[0],n[1],e.ctrlKey,e.altKey,e.shiftKey,e.metaKey,e.button,e.relatedTarget)}d.dispatchEvent(r)}g._dragging=!1,g._dragged=!1}else g._dragged=!1}},l.coverSlip=u},60148:function(t,e,r){\"use strict\";var n=r(68596),i=r(64025),a=r(95425).getGraphDiv,o=r(85988),s=t.exports={};s.wrapped=function(t,e,r){(t=a(t))._fullLayout&&i.clear(t._fullLayout._uid+o.HOVERID),s.raw(t,e,r)},s.raw=function(t,e){var r=t._fullLayout,i=t._hoverdata;e||(e={}),e.target&&!t._dragged&&!1===n.triggerHandler(t,\"plotly_beforehover\",e)||(r._hoverlayer.selectAll(\"g\").remove(),r._hoverlayer.selectAll(\"line\").remove(),r._hoverlayer.selectAll(\"circle\").remove(),t._hoverdata=void 0,e.target&&i&&t.emit(\"plotly_unhover\",{event:e,points:i}))}},94850:function(t,e){\"use strict\";e.T={valType:\"string\",values:[\"solid\",\"dot\",\"dash\",\"longdash\",\"dashdot\",\"longdashdot\"],dflt:\"solid\",editType:\"style\"},e.k={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\"}},62203:function(t,e,r){\"use strict\";var n=r(45568),i=r(34809),a=i.numberFormat,o=r(10721),s=r(65657),l=r(33626),c=r(78766),u=r(88856),h=i.strTranslate,f=r(30635),p=r(62972),d=r(4530).LINE_SPACING,m=r(20438).DESELECTDIM,g=r(64726),y=r(92527),v=r(36040).appendArrayPointValue,x=t.exports={};function _(t){return\"none\"===t?void 0:t}x.font=function(t,e){var r=e.variant,n=e.style,i=e.weight,a=e.color,o=e.size,s=e.family,l=e.shadow,u=e.lineposition,h=e.textcase;s&&t.style(\"font-family\",s),o+1&&t.style(\"font-size\",o+\"px\"),a&&t.call(c.fill,a),i&&t.style(\"font-weight\",i),n&&t.style(\"font-style\",n),r&&t.style(\"font-variant\",r),h&&t.style(\"text-transform\",_(function(t){return b[t]}(h))),l&&t.style(\"text-shadow\",\"auto\"===l?f.makeTextShadow(c.contrast(a)):_(l)),u&&t.style(\"text-decoration-line\",_(function(t){return t.replace(\"under\",\"underline\").replace(\"over\",\"overline\").replace(\"through\",\"line-through\").split(\"+\").join(\" \")}(u)))};var b={normal:\"none\",lower:\"lowercase\",upper:\"uppercase\",\"word caps\":\"capitalize\"};function w(t,e,r,n){var i=e.fillpattern,a=e.fillgradient,o=i&&x.getPatternAttr(i.shape,0,\"\");if(o){var s=x.getPatternAttr(i.bgcolor,0,null),l=x.getPatternAttr(i.fgcolor,0,null),u=i.fgopacity,h=x.getPatternAttr(i.size,0,8),f=x.getPatternAttr(i.solidity,0,.3),p=e.uid;x.pattern(t,\"point\",r,p,o,h,f,void 0,i.fillmode,s,l,u)}else if(a&&\"none\"!==a.type){var d,m,g=a.type,y=\"scatterfill-\"+e.uid;n&&(y=\"legendfill-\"+e.uid),n||void 0===a.start&&void 0===a.stop?(\"horizontal\"===g&&(g+=\"reversed\"),t.call(x.gradient,r,y,g,a.colorscale,\"fill\")):(\"horizontal\"===g?(d={x:a.start,y:0},m={x:a.stop,y:0}):\"vertical\"===g&&(d={x:0,y:a.start},m={x:0,y:a.stop}),d.x=e._xA.c2p(void 0===d.x?e._extremes.x.min[0].val:d.x,!0),d.y=e._yA.c2p(void 0===d.y?e._extremes.y.min[0].val:d.y,!0),m.x=e._xA.c2p(void 0===m.x?e._extremes.x.max[0].val:m.x,!0),m.y=e._yA.c2p(void 0===m.y?e._extremes.y.max[0].val:m.y,!0),t.call(E,r,y,\"linear\",a.colorscale,\"fill\",d,m,!0,!1))}else e.fillcolor&&t.call(c.fill,e.fillcolor)}x.setPosition=function(t,e,r){t.attr(\"x\",e).attr(\"y\",r)},x.setSize=function(t,e,r){t.attr(\"width\",e).attr(\"height\",r)},x.setRect=function(t,e,r,n,i){t.call(x.setPosition,e,r).call(x.setSize,n,i)},x.translatePoint=function(t,e,r,n){var i=r.c2p(t.x),a=n.c2p(t.y);return!!(o(i)&&o(a)&&e.node())&&(\"text\"===e.node().nodeName?e.attr(\"x\",i).attr(\"y\",a):e.attr(\"transform\",h(i,a)),!0)},x.translatePoints=function(t,e,r){t.each((function(t){var i=n.select(this);x.translatePoint(t,i,e,r)}))},x.hideOutsideRangePoint=function(t,e,r,n,i,a){e.attr(\"display\",r.isPtWithinRange(t,i)&&n.isPtWithinRange(t,a)?null:\"none\")},x.hideOutsideRangePoints=function(t,e){if(e._hasClipOnAxisFalse){var r=e.xaxis,i=e.yaxis;t.each((function(e){var a=e[0].trace,o=a.xcalendar,s=a.ycalendar,c=l.traceIs(a,\"bar-like\")?\".bartext\":\".point,.textpoint\";t.selectAll(c).each((function(t){x.hideOutsideRangePoint(t,n.select(this),r,i,o,s)}))}))}},x.crispRound=function(t,e,r){return e&&o(e)?t._context.staticPlot?e:e<1?1:Math.round(e):r||0},x.singleLineStyle=function(t,e,r,n,i){e.style(\"fill\",\"none\");var a=(((t||[])[0]||{}).trace||{}).line||{},o=r||a.width||0,s=i||a.dash||\"\";c.stroke(e,n||a.color),x.dashLine(e,s,o)},x.lineGroupStyle=function(t,e,r,i){t.style(\"fill\",\"none\").each((function(t){var a=(((t||[])[0]||{}).trace||{}).line||{},o=e||a.width||0,s=i||a.dash||\"\";n.select(this).call(c.stroke,r||a.color).call(x.dashLine,s,o)}))},x.dashLine=function(t,e,r){r=+r||0,e=x.dashStyle(e,r),t.style({\"stroke-dasharray\":e,\"stroke-width\":r+\"px\"})},x.dashStyle=function(t,e){e=+e||1;var r=Math.max(e,3);return\"solid\"===t?t=\"\":\"dot\"===t?t=r+\"px,\"+r+\"px\":\"dash\"===t?t=3*r+\"px,\"+3*r+\"px\":\"longdash\"===t?t=5*r+\"px,\"+5*r+\"px\":\"dashdot\"===t?t=3*r+\"px,\"+r+\"px,\"+r+\"px,\"+r+\"px\":\"longdashdot\"===t&&(t=5*r+\"px,\"+2*r+\"px,\"+r+\"px,\"+2*r+\"px\"),t},x.singleFillStyle=function(t,e){var r=n.select(t.node());w(t,((r.data()[0]||[])[0]||{}).trace||{},e,!1)},x.fillGroupStyle=function(t,e,r){t.style(\"stroke-width\",0).each((function(t){var i=n.select(this);t[0].trace&&w(i,t[0].trace,e,r)}))};var T=r(38882);x.symbolNames=[],x.symbolFuncs=[],x.symbolBackOffs=[],x.symbolNeedLines={},x.symbolNoDot={},x.symbolNoFill={},x.symbolList=[],Object.keys(T).forEach((function(t){var e=T[t],r=e.n;x.symbolList.push(r,String(r),t,r+100,String(r+100),t+\"-open\"),x.symbolNames[r]=t,x.symbolFuncs[r]=e.f,x.symbolBackOffs[r]=e.backoff||0,e.needLine&&(x.symbolNeedLines[r]=!0),e.noDot?x.symbolNoDot[r]=!0:x.symbolList.push(r+200,String(r+200),t+\"-dot\",r+300,String(r+300),t+\"-open-dot\"),e.noFill&&(x.symbolNoFill[r]=!0)}));var k=x.symbolNames.length;function A(t,e,r,n){var i=t%100;return x.symbolFuncs[i](e,r,n)+(t>=200?\"M0,0.5L0.5,0L0,-0.5L-0.5,0Z\":\"\")}x.symbolNumber=function(t){if(o(t))t=+t;else if(\"string\"==typeof t){var e=0;t.indexOf(\"-open\")>0&&(e=100,t=t.replace(\"-open\",\"\")),t.indexOf(\"-dot\")>0&&(e+=200,t=t.replace(\"-dot\",\"\")),(t=x.symbolNames.indexOf(t))>=0&&(t+=e)}return t%100>=k||t>=400?0:Math.floor(Math.max(t,0))};var M=a(\"~f\"),S={radial:{type:\"radial\"},radialreversed:{type:\"radial\",reversed:!0},horizontal:{type:\"linear\",start:{x:1,y:0},stop:{x:0,y:0}},horizontalreversed:{type:\"linear\",start:{x:1,y:0},stop:{x:0,y:0},reversed:!0},vertical:{type:\"linear\",start:{x:0,y:1},stop:{x:0,y:0}},verticalreversed:{type:\"linear\",start:{x:0,y:1},stop:{x:0,y:0},reversed:!0}};function E(t,e,r,a,o,l,u,h,f,p){var d,m=o.length;\"linear\"===a?d={node:\"linearGradient\",attrs:{x1:u.x,y1:u.y,x2:h.x,y2:h.y,gradientUnits:f?\"userSpaceOnUse\":\"objectBoundingBox\"},reversed:p}:\"radial\"===a&&(d={node:\"radialGradient\",reversed:p});for(var g=new Array(m),y=0;y<m;y++)d.reversed?g[m-1-y]=[M(100*(1-o[y][0])),o[y][1]]:g[y]=[M(100*o[y][0]),o[y][1]];var v=e._fullLayout,x=\"g\"+v._uid+\"-\"+r,_=v._defs.select(\".gradients\").selectAll(\"#\"+x).data([a+g.join(\";\")],i.identity);_.exit().remove(),_.enter().append(d.node).each((function(){var t=n.select(this);d.attrs&&t.attr(d.attrs),t.attr(\"id\",x);var e=t.selectAll(\"stop\").data(g);e.exit().remove(),e.enter().append(\"stop\"),e.each((function(t){var e=s(t[1]);n.select(this).attr({offset:t[0]+\"%\",\"stop-color\":c.tinyRGB(e),\"stop-opacity\":e.getAlpha()})}))})),t.style(l,q(x,e)).style(l+\"-opacity\",null),t.classed(\"gradient_filled\",!0)}x.gradient=function(t,e,r,n,i,a){var o=S[n];return E(t,e,r,o.type,i,a,o.start,o.stop,!1,o.reversed)},x.pattern=function(t,e,r,a,o,l,u,h,f,p,d,m){var g=\"legend\"===e;h&&(\"overlay\"===f?(p=h,d=c.contrast(p)):(p=void 0,d=h));var y,v,x,_,b,w,T,k,A,M=r._fullLayout,S=\"p\"+M._uid+\"-\"+a,E={},C=s(d),L=c.tinyRGB(C),I=m*C.getAlpha();switch(o){case\"/\":y=l*Math.sqrt(2),v=l*Math.sqrt(2),w=\"path\",E={d:x=\"M-\"+y/4+\",\"+v/4+\"l\"+y/2+\",-\"+v/2+\"M0,\"+v+\"L\"+y+\",0M\"+y/4*3+\",\"+v/4*5+\"l\"+y/2+\",-\"+v/2,opacity:I,stroke:L,\"stroke-width\":(_=u*l)+\"px\"};break;case\"\\\\\":y=l*Math.sqrt(2),v=l*Math.sqrt(2),w=\"path\",E={d:x=\"M\"+y/4*3+\",-\"+v/4+\"l\"+y/2+\",\"+v/2+\"M0,0L\"+y+\",\"+v+\"M-\"+y/4+\",\"+v/4*3+\"l\"+y/2+\",\"+v/2,opacity:I,stroke:L,\"stroke-width\":(_=u*l)+\"px\"};break;case\"x\":y=l*Math.sqrt(2),v=l*Math.sqrt(2),x=\"M-\"+y/4+\",\"+v/4+\"l\"+y/2+\",-\"+v/2+\"M0,\"+v+\"L\"+y+\",0M\"+y/4*3+\",\"+v/4*5+\"l\"+y/2+\",-\"+v/2+\"M\"+y/4*3+\",-\"+v/4+\"l\"+y/2+\",\"+v/2+\"M0,0L\"+y+\",\"+v+\"M-\"+y/4+\",\"+v/4*3+\"l\"+y/2+\",\"+v/2,_=l-l*Math.sqrt(1-u),w=\"path\",E={d:x,opacity:I,stroke:L,\"stroke-width\":_+\"px\"};break;case\"|\":w=\"path\",w=\"path\",E={d:x=\"M\"+(y=l)/2+\",0L\"+y/2+\",\"+(v=l),opacity:I,stroke:L,\"stroke-width\":(_=u*l)+\"px\"};break;case\"-\":w=\"path\",w=\"path\",E={d:x=\"M0,\"+(v=l)/2+\"L\"+(y=l)+\",\"+v/2,opacity:I,stroke:L,\"stroke-width\":(_=u*l)+\"px\"};break;case\"+\":w=\"path\",x=\"M\"+(y=l)/2+\",0L\"+y/2+\",\"+(v=l)+\"M0,\"+v/2+\"L\"+y+\",\"+v/2,_=l-l*Math.sqrt(1-u),w=\"path\",E={d:x,opacity:I,stroke:L,\"stroke-width\":_+\"px\"};break;case\".\":y=l,v=l,u<Math.PI/4?b=Math.sqrt(u*l*l/Math.PI):(T=u,k=Math.PI/4,1,b=(A=l/2)+(l/Math.sqrt(2)-A)*(T-k)/(1-k)),w=\"circle\",E={cx:y/2,cy:v/2,r:b,opacity:I,fill:L}}var P=[o||\"noSh\",p||\"noBg\",d||\"noFg\",l,u].join(\";\"),z=M._defs.select(\".patterns\").selectAll(\"#\"+S).data([P],i.identity);z.exit().remove(),z.enter().append(\"pattern\").each((function(){var t=n.select(this);if(t.attr({id:S,width:y+\"px\",height:v+\"px\",patternUnits:\"userSpaceOnUse\",patternTransform:g?\"scale(0.8)\":\"\"}),p){var e=s(p),r=c.tinyRGB(e),i=e.getAlpha(),a=t.selectAll(\"rect\").data([0]);a.exit().remove(),a.enter().append(\"rect\").attr({width:y+\"px\",height:v+\"px\",fill:r,\"fill-opacity\":i})}var o=t.selectAll(w).data([0]);o.exit().remove(),o.enter().append(w).attr(E)})),t.style(\"fill\",q(S,r)).style(\"fill-opacity\",null),t.classed(\"pattern_filled\",!0)},x.initGradients=function(t){var e=t._fullLayout;i.ensureSingle(e._defs,\"g\",\"gradients\").selectAll(\"linearGradient,radialGradient\").remove(),n.select(t).selectAll(\".gradient_filled\").classed(\"gradient_filled\",!1)},x.initPatterns=function(t){var e=t._fullLayout;i.ensureSingle(e._defs,\"g\",\"patterns\").selectAll(\"pattern\").remove(),n.select(t).selectAll(\".pattern_filled\").classed(\"pattern_filled\",!1)},x.getPatternAttr=function(t,e,r){return t&&i.isArrayOrTypedArray(t)?e<t.length?t[e]:r:t},x.pointStyle=function(t,e,r,i){if(t.size()){var a=x.makePointStyleFns(e);t.each((function(t){x.singlePointStyle(t,n.select(this),e,a,r,i)}))}},x.singlePointStyle=function(t,e,r,n,a,o){var s=r.marker,l=s.line;if(o&&o.i>=0&&void 0===t.i&&(t.i=o.i),e.style(\"opacity\",n.selectedOpacityFn?n.selectedOpacityFn(t):void 0===t.mo?s.opacity:t.mo),n.ms2mrc){var u;u=\"various\"===t.ms||\"various\"===s.size?3:n.ms2mrc(t.ms),t.mrc=u,n.selectedSizeFn&&(u=t.mrc=n.selectedSizeFn(t));var h=x.symbolNumber(t.mx||s.symbol)||0;t.om=h%200>=100;var f=nt(t,r),p=Z(t,r);e.attr(\"d\",A(h,u,f,p))}var d,m,g,y=!1;if(t.so)g=l.outlierwidth,m=l.outliercolor,d=s.outliercolor;else{var v=(l||{}).width;g=(t.mlw+1||v+1||(t.trace?(t.trace.marker.line||{}).width:0)+1)-1||0,m=\"mlc\"in t?t.mlcc=n.lineScale(t.mlc):i.isArrayOrTypedArray(l.color)?c.defaultLine:l.color,i.isArrayOrTypedArray(s.color)&&(d=c.defaultLine,y=!0),d=\"mc\"in t?t.mcc=n.markerScale(t.mc):s.color||s.colors||\"rgba(0,0,0,0)\",n.selectedColorFn&&(d=n.selectedColorFn(t))}if(t.om)e.call(c.stroke,d).style({\"stroke-width\":(g||1)+\"px\",fill:\"none\"});else{e.style(\"stroke-width\",(t.isBlank?0:g)+\"px\");var _=s.gradient,b=t.mgt;b?y=!0:b=_&&_.type,i.isArrayOrTypedArray(b)&&(b=b[0],S[b]||(b=0));var w=s.pattern,T=w&&x.getPatternAttr(w.shape,t.i,\"\");if(b&&\"none\"!==b){var k=t.mgc;k?y=!0:k=_.color;var M=r.uid;y&&(M+=\"-\"+t.i),x.gradient(e,a,M,b,[[0,k],[1,d]],\"fill\")}else if(T){var E=!1,C=w.fgcolor;!C&&o&&o.color&&(C=o.color,E=!0);var L=x.getPatternAttr(C,t.i,o&&o.color||null),I=x.getPatternAttr(w.bgcolor,t.i,null),P=w.fgopacity,z=x.getPatternAttr(w.size,t.i,8),O=x.getPatternAttr(w.solidity,t.i,.3);E=E||t.mcc||i.isArrayOrTypedArray(w.shape)||i.isArrayOrTypedArray(w.bgcolor)||i.isArrayOrTypedArray(w.fgcolor)||i.isArrayOrTypedArray(w.size)||i.isArrayOrTypedArray(w.solidity);var D=r.uid;E&&(D+=\"-\"+t.i),x.pattern(e,\"point\",a,D,T,z,O,t.mcc,w.fillmode,I,L,P)}else i.isArrayOrTypedArray(d)?c.fill(e,d[t.i]):c.fill(e,d);g&&c.stroke(e,m)}},x.makePointStyleFns=function(t){var e={},r=t.marker;return e.markerScale=x.tryColorscale(r,\"\"),e.lineScale=x.tryColorscale(r,\"line\"),l.traceIs(t,\"symbols\")&&(e.ms2mrc=g.isBubble(t)?y(t):function(){return(r.size||6)/2}),t.selectedpoints&&i.extendFlat(e,x.makeSelectedPointStyleFns(t)),e},x.makeSelectedPointStyleFns=function(t){var e={},r=t.selected||{},n=t.unselected||{},a=t.marker||{},o=r.marker||{},s=n.marker||{},c=a.opacity,u=o.opacity,h=s.opacity,f=void 0!==u,p=void 0!==h;(i.isArrayOrTypedArray(c)||f||p)&&(e.selectedOpacityFn=function(t){var e=void 0===t.mo?a.opacity:t.mo;return t.selected?f?u:e:p?h:m*e});var d=a.color,g=o.color,y=s.color;(g||y)&&(e.selectedColorFn=function(t){var e=t.mcc||d;return t.selected?g||e:y||e});var v=a.size,x=o.size,_=s.size,b=void 0!==x,w=void 0!==_;return l.traceIs(t,\"symbols\")&&(b||w)&&(e.selectedSizeFn=function(t){var e=t.mrc||v/2;return t.selected?b?x/2:e:w?_/2:e}),e},x.makeSelectedTextStyleFns=function(t){var e={},r=t.selected||{},n=t.unselected||{},i=t.textfont||{},a=r.textfont||{},o=n.textfont||{},s=i.color,l=a.color,u=o.color;return e.selectedTextColorFn=function(t){var e=t.tc||s;return t.selected?l||e:u||(l?e:c.addOpacity(e,m))},e},x.selectedPointStyle=function(t,e){if(t.size()&&e.selectedpoints){var r=x.makeSelectedPointStyleFns(e),i=e.marker||{},a=[];r.selectedOpacityFn&&a.push((function(t,e){t.style(\"opacity\",r.selectedOpacityFn(e))})),r.selectedColorFn&&a.push((function(t,e){c.fill(t,r.selectedColorFn(e))})),r.selectedSizeFn&&a.push((function(t,n){var a=n.mx||i.symbol||0,o=r.selectedSizeFn(n);t.attr(\"d\",A(x.symbolNumber(a),o,nt(n,e),Z(n,e))),n.mrc2=o})),a.length&&t.each((function(t){for(var e=n.select(this),r=0;r<a.length;r++)a[r](e,t)}))}},x.tryColorscale=function(t,e){var r=e?i.nestedProperty(t,e).get():t;if(r){var n=r.color;if((r.colorscale||r._colorAx)&&i.isArrayOrTypedArray(n))return u.makeColorScaleFuncFromTrace(r)}return i.identity};var C,L,I={start:1,end:-1,middle:0,bottom:1,top:-1};function P(t,e,r,i,a){var o=n.select(t.node().parentNode),s=-1!==e.indexOf(\"top\")?\"top\":-1!==e.indexOf(\"bottom\")?\"bottom\":\"middle\",l=-1!==e.indexOf(\"left\")?\"end\":-1!==e.indexOf(\"right\")?\"start\":\"middle\",c=i?i/.8+1:0,u=(f.lineCount(t)-1)*d+1,p=I[l]*c,m=.75*r+I[s]*c+(I[s]-1)*u*r/2;t.attr(\"text-anchor\",l),a||o.attr(\"transform\",h(p,m))}function z(t,e){var r=t.ts||e.textfont.size;return o(r)&&r>0?r:0}function O(t,e,r){return r&&(t=j(t)),e?R(t[1]):D(t[0])}function D(t){var e=n.round(t,2);return C=e,e}function R(t){var e=n.round(t,2);return L=e,e}function F(t,e,r,n){var i=t[0]-e[0],a=t[1]-e[1],o=r[0]-e[0],s=r[1]-e[1],l=Math.pow(i*i+a*a,.25),c=Math.pow(o*o+s*s,.25),u=(c*c*i-l*l*o)*n,h=(c*c*a-l*l*s)*n,f=3*c*(l+c),p=3*l*(l+c);return[[D(e[0]+(f&&u/f)),R(e[1]+(f&&h/f))],[D(e[0]-(p&&u/p)),R(e[1]-(p&&h/p))]]}x.textPointStyle=function(t,e,r){if(t.size()){var a;if(e.selectedpoints){var o=x.makeSelectedTextStyleFns(e);a=o.selectedTextColorFn}var s=e.texttemplate,l=r._fullLayout;t.each((function(t){var o=n.select(this),c=s?i.extractOption(t,e,\"txt\",\"texttemplate\"):i.extractOption(t,e,\"tx\",\"text\");if(c||0===c){if(s){var u=e._module.formatLabels,h=u?u(t,e,l):{},p={};v(p,e,t.i);var d=e._meta||{};c=i.texttemplateString(c,h,l._d3locale,p,t,d)}var m=t.tp||e.textposition,g=z(t,e),y=a?a(t):t.tc||e.textfont.color;o.call(x.font,{family:t.tf||e.textfont.family,weight:t.tw||e.textfont.weight,style:t.ty||e.textfont.style,variant:t.tv||e.textfont.variant,textcase:t.tC||e.textfont.textcase,lineposition:t.tE||e.textfont.lineposition,shadow:t.tS||e.textfont.shadow,size:g,color:y}).text(c).call(f.convertToTspans,r).call(P,m,g,t.mrc)}else o.remove()}))}},x.selectedTextStyle=function(t,e){if(t.size()&&e.selectedpoints){var r=x.makeSelectedTextStyleFns(e);t.each((function(t){var i=n.select(this),a=r.selectedTextColorFn(t),o=t.tp||e.textposition,s=z(t,e);c.fill(i,a);var u=l.traceIs(e,\"bar-like\");P(i,o,s,t.mrc2||t.mrc,u)}))}},x.smoothopen=function(t,e){if(t.length<3)return\"M\"+t.join(\"L\");var r,n=\"M\"+t[0],i=[];for(r=1;r<t.length-1;r++)i.push(F(t[r-1],t[r],t[r+1],e));for(n+=\"Q\"+i[0][0]+\" \"+t[1],r=2;r<t.length-1;r++)n+=\"C\"+i[r-2][1]+\" \"+i[r-1][0]+\" \"+t[r];return n+\"Q\"+i[t.length-3][1]+\" \"+t[t.length-1]},x.smoothclosed=function(t,e){if(t.length<3)return\"M\"+t.join(\"L\")+\"Z\";var r,n=\"M\"+t[0],i=t.length-1,a=[F(t[i],t[0],t[1],e)];for(r=1;r<i;r++)a.push(F(t[r-1],t[r],t[r+1],e));for(a.push(F(t[i-1],t[i],t[0],e)),r=1;r<=i;r++)n+=\"C\"+a[r-1][1]+\" \"+a[r][0]+\" \"+t[r];return n+\"C\"+a[i][1]+\" \"+a[0][0]+\" \"+t[0]+\"Z\"};var B={hv:function(t,e,r){return\"H\"+D(e[0])+\"V\"+O(e,1,r)},vh:function(t,e,r){return\"V\"+R(e[1])+\"H\"+O(e,0,r)},hvh:function(t,e,r){return\"H\"+D((t[0]+e[0])/2)+\"V\"+R(e[1])+\"H\"+O(e,0,r)},vhv:function(t,e,r){return\"V\"+R((t[1]+e[1])/2)+\"H\"+D(e[0])+\"V\"+O(e,1,r)}},N=function(t,e,r){return\"L\"+O(e,0,r)+\",\"+O(e,1,r)};function j(t,e){var r=t.backoff,n=t.trace,a=t.d,o=t.i;if(r&&n&&n.marker&&n.marker.angle%360==0&&n.line&&\"spline\"!==n.line.shape){var s=i.isArrayOrTypedArray(r),l=t,c=e?e[0]:C||0,u=e?e[1]:L||0,h=l[0],f=l[1],p=h-c,d=f-u,m=Math.atan2(d,p),g=s?r[o]:r;if(\"auto\"===g){var y=l.i;\"scatter\"===n.type&&y--;var v=l.marker,_=v.symbol;i.isArrayOrTypedArray(_)&&(_=_[y]);var b=v.size;i.isArrayOrTypedArray(b)&&(b=b[y]),g=v?x.symbolBackOffs[x.symbolNumber(_)]*b:0,g+=x.getMarkerStandoff(a[y],n)||0}var w=h-g*Math.cos(m),T=f-g*Math.sin(m);(w<=h&&w>=c||w>=h&&w<=c)&&(T<=f&&T>=u||T>=f&&T<=u)&&(t=[w,T])}return t}x.steps=function(t){var e=B[t]||N;return function(t){for(var r=\"M\"+D(t[0][0])+\",\"+R(t[0][1]),n=t.length,i=1;i<n;i++)r+=e(t[i-1],t[i],i===n-1);return r}},x.applyBackoff=j,x.makeTester=function(){var t=i.ensureSingleById(n.select(\"body\"),\"svg\",\"js-plotly-tester\",(function(t){t.attr(p.svgAttrs).style({position:\"absolute\",left:\"-10000px\",top:\"-10000px\",width:\"9000px\",height:\"9000px\",\"z-index\":\"1\"})})),e=i.ensureSingle(t,\"path\",\"js-reference-point\",(function(t){t.attr(\"d\",\"M0,0H1V1H0Z\").style({\"stroke-width\":0,fill:\"black\"})}));x.tester=t,x.testref=e},x.savedBBoxes={};var U=0;function V(t){var e=t.getAttribute(\"data-unformatted\");if(null!==e)return e+t.getAttribute(\"data-math\")+t.getAttribute(\"text-anchor\")+t.getAttribute(\"style\")}function q(t,e){if(!t)return null;var r=e._context,n=r._exportedPlot?\"\":r._baseUrl||\"\";return n?\"url('\"+n+\"#\"+t+\"')\":\"url(#\"+t+\")\"}x.bBox=function(t,e,r){var a,o,s;if(r||(r=V(t)),r){if(a=x.savedBBoxes[r])return i.extendFlat({},a)}else if(1===t.childNodes.length){var l=t.childNodes[0];if(r=V(l)){var c=+l.getAttribute(\"x\")||0,u=+l.getAttribute(\"y\")||0,h=l.getAttribute(\"transform\");if(!h){var p=x.bBox(l,!1,r);return c&&(p.left+=c,p.right+=c),u&&(p.top+=u,p.bottom+=u),p}if(r+=\"~\"+c+\"~\"+u+\"~\"+h,a=x.savedBBoxes[r])return i.extendFlat({},a)}}e?o=t:(s=x.tester.node(),o=t.cloneNode(!0),s.appendChild(o)),n.select(o).attr(\"transform\",null).call(f.positionText,0,0);var d=o.getBoundingClientRect(),m=x.testref.node().getBoundingClientRect();e||s.removeChild(o);var g={height:d.height,width:d.width,left:d.left-m.left,top:d.top-m.top,right:d.right-m.left,bottom:d.bottom-m.top};return U>=1e4&&(x.savedBBoxes={},U=0),r&&(x.savedBBoxes[r]=g),U++,i.extendFlat({},g)},x.setClipUrl=function(t,e,r){t.attr(\"clip-path\",q(e,r))},x.getTranslate=function(t){var e=(t[t.attr?\"attr\":\"getAttribute\"](\"transform\")||\"\").replace(/.*\\btranslate\\((-?\\d*\\.?\\d*)[^-\\d]*(-?\\d*\\.?\\d*)[^\\d].*/,(function(t,e,r){return[e,r].join(\" \")})).split(\" \");return{x:+e[0]||0,y:+e[1]||0}},x.setTranslate=function(t,e,r){var n=t.attr?\"attr\":\"getAttribute\",i=t.attr?\"attr\":\"setAttribute\",a=t[n](\"transform\")||\"\";return e=e||0,r=r||0,a=a.replace(/(\\btranslate\\(.*?\\);?)/,\"\").trim(),a=(a+=h(e,r)).trim(),t[i](\"transform\",a),a},x.getScale=function(t){var e=(t[t.attr?\"attr\":\"getAttribute\"](\"transform\")||\"\").replace(/.*\\bscale\\((\\d*\\.?\\d*)[^\\d]*(\\d*\\.?\\d*)[^\\d].*/,(function(t,e,r){return[e,r].join(\" \")})).split(\" \");return{x:+e[0]||1,y:+e[1]||1}},x.setScale=function(t,e,r){var n=t.attr?\"attr\":\"getAttribute\",i=t.attr?\"attr\":\"setAttribute\",a=t[n](\"transform\")||\"\";return e=e||1,r=r||1,a=a.replace(/(\\bscale\\(.*?\\);?)/,\"\").trim(),a=(a+=\"scale(\"+e+\",\"+r+\")\").trim(),t[i](\"transform\",a),a};var H=/\\s*sc.*/;x.setPointGroupScale=function(t,e,r){if(e=e||1,r=r||1,t){var n=1===e&&1===r?\"\":\"scale(\"+e+\",\"+r+\")\";t.each((function(){var t=(this.getAttribute(\"transform\")||\"\").replace(H,\"\");t=(t+=n).trim(),this.setAttribute(\"transform\",t)}))}};var G=/translate\\([^)]*\\)\\s*$/;function Z(t,e){var r;return t&&(r=t.mf),void 0===r&&(r=e.marker&&e.marker.standoff||0),e._geo||e._xA?r:-r}x.setTextPointsScale=function(t,e,r){t&&t.each((function(){var t,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(G);t=1===e&&1===r?[]:[h(o,s),\"scale(\"+e+\",\"+r+\")\",h(-o,-s)],l&&t.push(l),i.attr(\"transform\",t.join(\"\"))}}))},x.getMarkerStandoff=Z;var W,Y,X,$,J,K,Q=Math.atan2,tt=Math.cos,et=Math.sin;function rt(t,e){var r=e[0],n=e[1];return[r*tt(t)-n*et(t),r*et(t)+n*tt(t)]}function nt(t,e){var r,n,a=t.ma;void 0===a&&((a=e.marker.angle)&&!i.isArrayOrTypedArray(a)||(a=0));var s=e.marker.angleref;if(\"previous\"===s||\"north\"===s){if(e._geo){var l=e._geo.project(t.lonlat);r=l[0],n=l[1]}else{var c=e._xA,u=e._yA;if(!c||!u)return 90;r=c.c2p(t.x),n=u.c2p(t.y)}if(e._geo){var h,f=t.lonlat[0],p=t.lonlat[1],d=e._geo.project([f,p+1e-5]),m=e._geo.project([f+1e-5,p]),g=Q(m[1]-n,m[0]-r),y=Q(d[1]-n,d[0]-r);if(\"north\"===s)h=a/180*Math.PI;else if(\"previous\"===s){var v=f/180*Math.PI,x=p/180*Math.PI,_=W/180*Math.PI,b=Y/180*Math.PI,w=_-v,T=tt(b)*et(w),k=et(b)*tt(x)-tt(b)*et(x)*tt(w);h=-Q(T,k)-Math.PI,W=f,Y=p}var A=rt(g,[tt(h),0]),M=rt(y,[et(h),0]);a=Q(A[1]+M[1],A[0]+M[0])/Math.PI*180,\"previous\"!==s||K===e.uid&&t.i===J+1||(a=null)}if(\"previous\"===s&&!e._geo)if(K===e.uid&&t.i===J+1&&o(r)&&o(n)){var S=r-X,E=n-$,C=e.line&&e.line.shape||\"\",L=C.slice(C.length-1);\"h\"===L&&(E=0),\"v\"===L&&(S=0),a+=Q(E,S)/Math.PI*180+90}else a=null}return X=r,$=n,J=t.i,K=e.uid,a}x.getMarkerAngle=nt},38882:function(t,e,r){\"use strict\";var n,i,a,o,s=r(26953),l=r(45568).round,c=\"M0,0Z\",u=Math.sqrt(2),h=Math.sqrt(3),f=Math.PI,p=Math.cos,d=Math.sin;function m(t){return null===t}function g(t,e,r){if(!(t&&t%360!=0||e))return r;if(a===t&&o===e&&n===r)return i;function l(t,r){var n=p(t),i=d(t),a=r[0],o=r[1]+(e||0);return[a*n-o*i,a*i+o*n]}a=t,o=e,n=r;for(var c=t/180*f,u=0,h=0,m=s(r),g=\"\",y=0;y<m.length;y++){var v=m[y],x=v[0],_=u,b=h;if(\"M\"===x||\"L\"===x)u=+v[1],h=+v[2];else if(\"m\"===x||\"l\"===x)u+=+v[1],h+=+v[2];else if(\"H\"===x)u=+v[1];else if(\"h\"===x)u+=+v[1];else if(\"V\"===x)h=+v[1];else if(\"v\"===x)h+=+v[1];else if(\"A\"===x){u=+v[1],h=+v[2];var w=l(c,[+v[6],+v[7]]);v[6]=w[0],v[7]=w[1],v[3]=+v[3]+t}\"H\"!==x&&\"V\"!==x||(x=\"L\"),\"h\"!==x&&\"v\"!==x||(x=\"l\"),\"m\"!==x&&\"l\"!==x||(u-=_,h-=b);var T=l(c,[u,h]);\"H\"!==x&&\"V\"!==x||(x=\"L\"),\"M\"!==x&&\"L\"!==x&&\"m\"!==x&&\"l\"!==x||(v[1]=T[0],v[2]=T[1]),v[0]=x,g+=v[0]+v.slice(1).join(\",\")}return i=g,g}t.exports={circle:{n:0,f:function(t,e,r){if(m(e))return c;var n=l(t,2),i=\"M\"+n+\",0A\"+n+\",\"+n+\" 0 1,1 0,-\"+n+\"A\"+n+\",\"+n+\" 0 0,1 \"+n+\",0Z\";return r?g(e,r,i):i}},square:{n:1,f:function(t,e,r){if(m(e))return c;var n=l(t,2);return g(e,r,\"M\"+n+\",\"+n+\"H-\"+n+\"V-\"+n+\"H\"+n+\"Z\")}},diamond:{n:2,f:function(t,e,r){if(m(e))return c;var n=l(1.3*t,2);return g(e,r,\"M\"+n+\",0L0,\"+n+\"L-\"+n+\",0L0,-\"+n+\"Z\")}},cross:{n:3,f:function(t,e,r){if(m(e))return c;var n=l(.4*t,2),i=l(1.2*t,2);return g(e,r,\"M\"+i+\",\"+n+\"H\"+n+\"V\"+i+\"H-\"+n+\"V\"+n+\"H-\"+i+\"V-\"+n+\"H-\"+n+\"V-\"+i+\"H\"+n+\"V-\"+n+\"H\"+i+\"Z\")}},x:{n:4,f:function(t,e,r){if(m(e))return c;var n=l(.8*t/u,2),i=\"l\"+n+\",\"+n,a=\"l\"+n+\",-\"+n,o=\"l-\"+n+\",-\"+n,s=\"l-\"+n+\",\"+n;return g(e,r,\"M0,\"+n+i+a+o+a+o+s+o+s+i+s+i+\"Z\")}},\"triangle-up\":{n:5,f:function(t,e,r){if(m(e))return c;var n=l(2*t/h,2);return g(e,r,\"M-\"+n+\",\"+l(t/2,2)+\"H\"+n+\"L0,-\"+l(t,2)+\"Z\")}},\"triangle-down\":{n:6,f:function(t,e,r){if(m(e))return c;var n=l(2*t/h,2);return g(e,r,\"M-\"+n+\",-\"+l(t/2,2)+\"H\"+n+\"L0,\"+l(t,2)+\"Z\")}},\"triangle-left\":{n:7,f:function(t,e,r){if(m(e))return c;var n=l(2*t/h,2);return g(e,r,\"M\"+l(t/2,2)+\",-\"+n+\"V\"+n+\"L-\"+l(t,2)+\",0Z\")}},\"triangle-right\":{n:8,f:function(t,e,r){if(m(e))return c;var n=l(2*t/h,2);return g(e,r,\"M-\"+l(t/2,2)+\",-\"+n+\"V\"+n+\"L\"+l(t,2)+\",0Z\")}},\"triangle-ne\":{n:9,f:function(t,e,r){if(m(e))return c;var n=l(.6*t,2),i=l(1.2*t,2);return g(e,r,\"M-\"+i+\",-\"+n+\"H\"+n+\"V\"+i+\"Z\")}},\"triangle-se\":{n:10,f:function(t,e,r){if(m(e))return c;var n=l(.6*t,2),i=l(1.2*t,2);return g(e,r,\"M\"+n+\",-\"+i+\"V\"+n+\"H-\"+i+\"Z\")}},\"triangle-sw\":{n:11,f:function(t,e,r){if(m(e))return c;var n=l(.6*t,2),i=l(1.2*t,2);return g(e,r,\"M\"+i+\",\"+n+\"H-\"+n+\"V-\"+i+\"Z\")}},\"triangle-nw\":{n:12,f:function(t,e,r){if(m(e))return c;var n=l(.6*t,2),i=l(1.2*t,2);return g(e,r,\"M-\"+n+\",\"+i+\"V-\"+n+\"H\"+i+\"Z\")}},pentagon:{n:13,f:function(t,e,r){if(m(e))return c;var n=l(.951*t,2),i=l(.588*t,2),a=l(-t,2),o=l(-.309*t,2);return g(e,r,\"M\"+n+\",\"+o+\"L\"+i+\",\"+l(.809*t,2)+\"H-\"+i+\"L-\"+n+\",\"+o+\"L0,\"+a+\"Z\")}},hexagon:{n:14,f:function(t,e,r){if(m(e))return c;var n=l(t,2),i=l(t/2,2),a=l(t*h/2,2);return g(e,r,\"M\"+a+\",-\"+i+\"V\"+i+\"L0,\"+n+\"L-\"+a+\",\"+i+\"V-\"+i+\"L0,-\"+n+\"Z\")}},hexagon2:{n:15,f:function(t,e,r){if(m(e))return c;var n=l(t,2),i=l(t/2,2),a=l(t*h/2,2);return g(e,r,\"M-\"+i+\",\"+a+\"H\"+i+\"L\"+n+\",0L\"+i+\",-\"+a+\"H-\"+i+\"L-\"+n+\",0Z\")}},octagon:{n:16,f:function(t,e,r){if(m(e))return c;var n=l(.924*t,2),i=l(.383*t,2);return g(e,r,\"M-\"+i+\",-\"+n+\"H\"+i+\"L\"+n+\",-\"+i+\"V\"+i+\"L\"+i+\",\"+n+\"H-\"+i+\"L-\"+n+\",\"+i+\"V-\"+i+\"Z\")}},star:{n:17,f:function(t,e,r){if(m(e))return c;var n=1.4*t,i=l(.225*n,2),a=l(.951*n,2),o=l(.363*n,2),s=l(.588*n,2),u=l(-n,2),h=l(-.309*n,2),f=l(.118*n,2),p=l(.809*n,2);return g(e,r,\"M\"+i+\",\"+h+\"H\"+a+\"L\"+o+\",\"+f+\"L\"+s+\",\"+p+\"L0,\"+l(.382*n,2)+\"L-\"+s+\",\"+p+\"L-\"+o+\",\"+f+\"L-\"+a+\",\"+h+\"H-\"+i+\"L0,\"+u+\"Z\")}},hexagram:{n:18,f:function(t,e,r){if(m(e))return c;var n=l(.66*t,2),i=l(.38*t,2),a=l(.76*t,2);return g(e,r,\"M-\"+a+\",0l-\"+i+\",-\"+n+\"h\"+a+\"l\"+i+\",-\"+n+\"l\"+i+\",\"+n+\"h\"+a+\"l-\"+i+\",\"+n+\"l\"+i+\",\"+n+\"h-\"+a+\"l-\"+i+\",\"+n+\"l-\"+i+\",-\"+n+\"h-\"+a+\"Z\")}},\"star-triangle-up\":{n:19,f:function(t,e,r){if(m(e))return c;var n=l(t*h*.8,2),i=l(.8*t,2),a=l(1.6*t,2),o=l(4*t,2),s=\"A \"+o+\",\"+o+\" 0 0 1 \";return g(e,r,\"M-\"+n+\",\"+i+s+n+\",\"+i+s+\"0,-\"+a+s+\"-\"+n+\",\"+i+\"Z\")}},\"star-triangle-down\":{n:20,f:function(t,e,r){if(m(e))return c;var n=l(t*h*.8,2),i=l(.8*t,2),a=l(1.6*t,2),o=l(4*t,2),s=\"A \"+o+\",\"+o+\" 0 0 1 \";return g(e,r,\"M\"+n+\",-\"+i+s+\"-\"+n+\",-\"+i+s+\"0,\"+a+s+n+\",-\"+i+\"Z\")}},\"star-square\":{n:21,f:function(t,e,r){if(m(e))return c;var n=l(1.1*t,2),i=l(2*t,2),a=\"A \"+i+\",\"+i+\" 0 0 1 \";return g(e,r,\"M-\"+n+\",-\"+n+a+\"-\"+n+\",\"+n+a+n+\",\"+n+a+n+\",-\"+n+a+\"-\"+n+\",-\"+n+\"Z\")}},\"star-diamond\":{n:22,f:function(t,e,r){if(m(e))return c;var n=l(1.4*t,2),i=l(1.9*t,2),a=\"A \"+i+\",\"+i+\" 0 0 1 \";return g(e,r,\"M-\"+n+\",0\"+a+\"0,\"+n+a+n+\",0\"+a+\"0,-\"+n+a+\"-\"+n+\",0Z\")}},\"diamond-tall\":{n:23,f:function(t,e,r){if(m(e))return c;var n=l(.7*t,2),i=l(1.4*t,2);return g(e,r,\"M0,\"+i+\"L\"+n+\",0L0,-\"+i+\"L-\"+n+\",0Z\")}},\"diamond-wide\":{n:24,f:function(t,e,r){if(m(e))return c;var n=l(1.4*t,2),i=l(.7*t,2);return g(e,r,\"M0,\"+i+\"L\"+n+\",0L0,-\"+i+\"L-\"+n+\",0Z\")}},hourglass:{n:25,f:function(t,e,r){if(m(e))return c;var n=l(t,2);return g(e,r,\"M\"+n+\",\"+n+\"H-\"+n+\"L\"+n+\",-\"+n+\"H-\"+n+\"Z\")},noDot:!0},bowtie:{n:26,f:function(t,e,r){if(m(e))return c;var n=l(t,2);return g(e,r,\"M\"+n+\",\"+n+\"V-\"+n+\"L-\"+n+\",\"+n+\"V-\"+n+\"Z\")},noDot:!0},\"circle-cross\":{n:27,f:function(t,e,r){if(m(e))return c;var n=l(t,2);return g(e,r,\"M0,\"+n+\"V-\"+n+\"M\"+n+\",0H-\"+n+\"M\"+n+\",0A\"+n+\",\"+n+\" 0 1,1 0,-\"+n+\"A\"+n+\",\"+n+\" 0 0,1 \"+n+\",0Z\")},needLine:!0,noDot:!0},\"circle-x\":{n:28,f:function(t,e,r){if(m(e))return c;var n=l(t,2),i=l(t/u,2);return g(e,r,\"M\"+i+\",\"+i+\"L-\"+i+\",-\"+i+\"M\"+i+\",-\"+i+\"L-\"+i+\",\"+i+\"M\"+n+\",0A\"+n+\",\"+n+\" 0 1,1 0,-\"+n+\"A\"+n+\",\"+n+\" 0 0,1 \"+n+\",0Z\")},needLine:!0,noDot:!0},\"square-cross\":{n:29,f:function(t,e,r){if(m(e))return c;var n=l(t,2);return g(e,r,\"M0,\"+n+\"V-\"+n+\"M\"+n+\",0H-\"+n+\"M\"+n+\",\"+n+\"H-\"+n+\"V-\"+n+\"H\"+n+\"Z\")},needLine:!0,noDot:!0},\"square-x\":{n:30,f:function(t,e,r){if(m(e))return c;var n=l(t,2);return g(e,r,\"M\"+n+\",\"+n+\"L-\"+n+\",-\"+n+\"M\"+n+\",-\"+n+\"L-\"+n+\",\"+n+\"M\"+n+\",\"+n+\"H-\"+n+\"V-\"+n+\"H\"+n+\"Z\")},needLine:!0,noDot:!0},\"diamond-cross\":{n:31,f:function(t,e,r){if(m(e))return c;var n=l(1.3*t,2);return g(e,r,\"M\"+n+\",0L0,\"+n+\"L-\"+n+\",0L0,-\"+n+\"ZM0,-\"+n+\"V\"+n+\"M-\"+n+\",0H\"+n)},needLine:!0,noDot:!0},\"diamond-x\":{n:32,f:function(t,e,r){if(m(e))return c;var n=l(1.3*t,2),i=l(.65*t,2);return g(e,r,\"M\"+n+\",0L0,\"+n+\"L-\"+n+\",0L0,-\"+n+\"ZM-\"+i+\",-\"+i+\"L\"+i+\",\"+i+\"M-\"+i+\",\"+i+\"L\"+i+\",-\"+i)},needLine:!0,noDot:!0},\"cross-thin\":{n:33,f:function(t,e,r){if(m(e))return c;var n=l(1.4*t,2);return g(e,r,\"M0,\"+n+\"V-\"+n+\"M\"+n+\",0H-\"+n)},needLine:!0,noDot:!0,noFill:!0},\"x-thin\":{n:34,f:function(t,e,r){if(m(e))return c;var n=l(t,2);return g(e,r,\"M\"+n+\",\"+n+\"L-\"+n+\",-\"+n+\"M\"+n+\",-\"+n+\"L-\"+n+\",\"+n)},needLine:!0,noDot:!0,noFill:!0},asterisk:{n:35,f:function(t,e,r){if(m(e))return c;var n=l(1.2*t,2),i=l(.85*t,2);return g(e,r,\"M0,\"+n+\"V-\"+n+\"M\"+n+\",0H-\"+n+\"M\"+i+\",\"+i+\"L-\"+i+\",-\"+i+\"M\"+i+\",-\"+i+\"L-\"+i+\",\"+i)},needLine:!0,noDot:!0,noFill:!0},hash:{n:36,f:function(t,e,r){if(m(e))return c;var n=l(t/2,2),i=l(t,2);return g(e,r,\"M\"+n+\",\"+i+\"V-\"+i+\"M\"+(n-i)+\",-\"+i+\"V\"+i+\"M\"+i+\",\"+n+\"H-\"+i+\"M-\"+i+\",\"+(n-i)+\"H\"+i)},needLine:!0,noFill:!0},\"y-up\":{n:37,f:function(t,e,r){if(m(e))return c;var n=l(1.2*t,2),i=l(1.6*t,2),a=l(.8*t,2);return g(e,r,\"M-\"+n+\",\"+a+\"L0,0M\"+n+\",\"+a+\"L0,0M0,-\"+i+\"L0,0\")},needLine:!0,noDot:!0,noFill:!0},\"y-down\":{n:38,f:function(t,e,r){if(m(e))return c;var n=l(1.2*t,2),i=l(1.6*t,2),a=l(.8*t,2);return g(e,r,\"M-\"+n+\",-\"+a+\"L0,0M\"+n+\",-\"+a+\"L0,0M0,\"+i+\"L0,0\")},needLine:!0,noDot:!0,noFill:!0},\"y-left\":{n:39,f:function(t,e,r){if(m(e))return c;var n=l(1.2*t,2),i=l(1.6*t,2),a=l(.8*t,2);return g(e,r,\"M\"+a+\",\"+n+\"L0,0M\"+a+\",-\"+n+\"L0,0M-\"+i+\",0L0,0\")},needLine:!0,noDot:!0,noFill:!0},\"y-right\":{n:40,f:function(t,e,r){if(m(e))return c;var n=l(1.2*t,2),i=l(1.6*t,2),a=l(.8*t,2);return g(e,r,\"M-\"+a+\",\"+n+\"L0,0M-\"+a+\",-\"+n+\"L0,0M\"+i+\",0L0,0\")},needLine:!0,noDot:!0,noFill:!0},\"line-ew\":{n:41,f:function(t,e,r){if(m(e))return c;var n=l(1.4*t,2);return g(e,r,\"M\"+n+\",0H-\"+n)},needLine:!0,noDot:!0,noFill:!0},\"line-ns\":{n:42,f:function(t,e,r){if(m(e))return c;var n=l(1.4*t,2);return g(e,r,\"M0,\"+n+\"V-\"+n)},needLine:!0,noDot:!0,noFill:!0},\"line-ne\":{n:43,f:function(t,e,r){if(m(e))return c;var n=l(t,2);return g(e,r,\"M\"+n+\",-\"+n+\"L-\"+n+\",\"+n)},needLine:!0,noDot:!0,noFill:!0},\"line-nw\":{n:44,f:function(t,e,r){if(m(e))return c;var n=l(t,2);return g(e,r,\"M\"+n+\",\"+n+\"L-\"+n+\",-\"+n)},needLine:!0,noDot:!0,noFill:!0},\"arrow-up\":{n:45,f:function(t,e,r){if(m(e))return c;var n=l(t,2);return g(e,r,\"M0,0L-\"+n+\",\"+l(2*t,2)+\"H\"+n+\"Z\")},backoff:1,noDot:!0},\"arrow-down\":{n:46,f:function(t,e,r){if(m(e))return c;var n=l(t,2);return g(e,r,\"M0,0L-\"+n+\",-\"+l(2*t,2)+\"H\"+n+\"Z\")},noDot:!0},\"arrow-left\":{n:47,f:function(t,e,r){if(m(e))return c;var n=l(2*t,2),i=l(t,2);return g(e,r,\"M0,0L\"+n+\",-\"+i+\"V\"+i+\"Z\")},noDot:!0},\"arrow-right\":{n:48,f:function(t,e,r){if(m(e))return c;var n=l(2*t,2),i=l(t,2);return g(e,r,\"M0,0L-\"+n+\",-\"+i+\"V\"+i+\"Z\")},noDot:!0},\"arrow-bar-up\":{n:49,f:function(t,e,r){if(m(e))return c;var n=l(t,2);return g(e,r,\"M-\"+n+\",0H\"+n+\"M0,0L-\"+n+\",\"+l(2*t,2)+\"H\"+n+\"Z\")},backoff:1,needLine:!0,noDot:!0},\"arrow-bar-down\":{n:50,f:function(t,e,r){if(m(e))return c;var n=l(t,2);return g(e,r,\"M-\"+n+\",0H\"+n+\"M0,0L-\"+n+\",-\"+l(2*t,2)+\"H\"+n+\"Z\")},needLine:!0,noDot:!0},\"arrow-bar-left\":{n:51,f:function(t,e,r){if(m(e))return c;var n=l(2*t,2),i=l(t,2);return g(e,r,\"M0,-\"+i+\"V\"+i+\"M0,0L\"+n+\",-\"+i+\"V\"+i+\"Z\")},needLine:!0,noDot:!0},\"arrow-bar-right\":{n:52,f:function(t,e,r){if(m(e))return c;var n=l(2*t,2),i=l(t,2);return g(e,r,\"M0,-\"+i+\"V\"+i+\"M0,0L-\"+n+\",-\"+i+\"V\"+i+\"Z\")},needLine:!0,noDot:!0},arrow:{n:53,f:function(t,e,r){if(m(e))return c;var n=f/2.5,i=2*t*p(n),a=2*t*d(n);return g(e,r,\"M0,0L\"+-i+\",\"+a+\"L\"+i+\",\"+a+\"Z\")},backoff:.9,noDot:!0},\"arrow-wide\":{n:54,f:function(t,e,r){if(m(e))return c;var n=f/4,i=2*t*p(n),a=2*t*d(n);return g(e,r,\"M0,0L\"+-i+\",\"+a+\"A \"+2*t+\",\"+2*t+\" 0 0 1 \"+i+\",\"+a+\"Z\")},backoff:.4,noDot:!0}}},75568:function(t){\"use strict\";t.exports={visible:{valType:\"boolean\",editType:\"calc\"},type:{valType:\"enumerated\",values:[\"percent\",\"constant\",\"sqrt\",\"data\"],editType:\"calc\"},symmetric:{valType:\"boolean\",editType:\"calc\"},array:{valType:\"data_array\",editType:\"calc\"},arrayminus:{valType:\"data_array\",editType:\"calc\"},value:{valType:\"number\",min:0,dflt:10,editType:\"calc\"},valueminus:{valType:\"number\",min:0,dflt:10,editType:\"calc\"},traceref:{valType:\"integer\",min:0,dflt:0,editType:\"style\"},tracerefminus:{valType:\"integer\",min:0,dflt:0,editType:\"style\"},copy_ystyle:{valType:\"boolean\",editType:\"plot\"},copy_zstyle:{valType:\"boolean\",editType:\"style\"},color:{valType:\"color\",editType:\"style\"},thickness:{valType:\"number\",min:0,dflt:2,editType:\"style\"},width:{valType:\"number\",min:0,editType:\"plot\"},editType:\"calc\",_deprecated:{opacity:{valType:\"number\",editType:\"style\"}}}},352:function(t,e,r){\"use strict\";var n=r(10721),i=r(33626),a=r(29714),o=r(34809),s=r(25589);function l(t,e,r,i){var l=e[\"error_\"+i]||{},c=[];if(l.visible&&-1!==[\"linear\",\"log\"].indexOf(r.type)){for(var u=s(l),h=0;h<t.length;h++){var f=t[h],p=f.i;if(void 0===p)p=h;else if(null===p)continue;var d=f[i];if(n(r.c2l(d))){var m=u(d,p);if(n(m[0])&&n(m[1])){var g=f[i+\"s\"]=d-m[0],y=f[i+\"h\"]=d+m[1];c.push(g,y)}}}var v=r._id,x=e._extremes[v],_=a.findExtremes(r,c,o.extendFlat({tozero:x.opts.tozero},{padded:!0}));x.min=x.min.concat(_.min),x.max=x.max.concat(_.max)}}t.exports=function(t){for(var e=t.calcdata,r=0;r<e.length;r++){var n=e[r],o=n[0].trace;if(!0===o.visible&&i.traceIs(o,\"errorBarsOK\")){var s=a.getFromId(t,o.xaxis),c=a.getFromId(t,o.yaxis);l(n,o,s,\"x\"),l(n,o,c,\"y\")}}}},25589:function(t){\"use strict\";function e(t,e){return\"percent\"===t?function(t){return Math.abs(t*e/100)}:\"constant\"===t?function(){return Math.abs(e)}:\"sqrt\"===t?function(t){return Math.sqrt(Math.abs(t))}:void 0}t.exports=function(t){var r=t.type,n=t.symmetric;if(\"data\"===r){var i=t.array||[];if(n)return function(t,e){var r=+i[e];return[r,r]};var a=t.arrayminus||[];return function(t,e){var r=+i[e],n=+a[e];return isNaN(r)&&isNaN(n)?[NaN,NaN]:[n||0,r||0]}}var o=e(r,t.value),s=e(r,t.valueminus);return n||void 0===t.valueminus?function(t){var e=o(t);return[e,e]}:function(t){return[s(t),o(t)]}}},5543:function(t,e,r){\"use strict\";var n=r(10721),i=r(33626),a=r(34809),o=r(78032),s=r(75568);t.exports=function(t,e,r,l){var c=\"error_\"+l.axis,u=o.newContainer(e,c),h=t[c]||{};function f(t,e){return a.coerce(h,u,s,t,e)}if(!1!==f(\"visible\",void 0!==h.array||void 0!==h.value||\"sqrt\"===h.type)){var p=f(\"type\",\"array\"in h?\"data\":\"percent\"),d=!0;\"sqrt\"!==p&&(d=f(\"symmetric\",!((\"data\"===p?\"arrayminus\":\"valueminus\")in h))),\"data\"===p?(f(\"array\"),f(\"traceref\"),d||(f(\"arrayminus\"),f(\"tracerefminus\"))):\"percent\"!==p&&\"constant\"!==p||(f(\"value\"),d||f(\"valueminus\"));var m=\"copy_\"+l.inherit+\"style\";l.inherit&&(e[\"error_\"+l.inherit]||{}).visible&&f(m,!(h.color||n(h.thickness)||n(h.width))),l.inherit&&u[m]||(f(\"color\",r),f(\"thickness\"),f(\"width\",i.traceIs(e,\"gl3d\")?0:4))}}},77901:function(t,e,r){\"use strict\";var n=r(34809),i=r(13582).overrideAll,a=r(75568),o={error_x:n.extendFlat({},a),error_y:n.extendFlat({},a)};delete o.error_x.copy_zstyle,delete o.error_y.copy_zstyle,delete o.error_y.copy_ystyle;var s={error_x:n.extendFlat({},a),error_y:n.extendFlat({},a),error_z:n.extendFlat({},a)};delete s.error_x.copy_ystyle,delete s.error_y.copy_ystyle,delete s.error_z.copy_ystyle,delete s.error_z.copy_zstyle,t.exports={moduleType:\"component\",name:\"errorbars\",schema:{traces:{scatter:o,bar:o,histogram:o,scatter3d:i(s,\"calc\",\"nested\"),scattergl:i(o,\"calc\",\"nested\")}},supplyDefaults:r(5543),calc:r(352),makeComputeError:r(25589),plot:r(42130),style:r(22800),hoverInfo:function(t,e,r){(e.error_y||{}).visible&&(r.yerr=t.yh-t.y,e.error_y.symmetric||(r.yerrneg=t.y-t.ys)),(e.error_x||{}).visible&&(r.xerr=t.xh-t.x,e.error_x.symmetric||(r.xerrneg=t.x-t.xs))}}},42130:function(t,e,r){\"use strict\";var n=r(45568),i=r(10721),a=r(62203),o=r(64726);t.exports=function(t,e,r,s){var l=r.xaxis,c=r.yaxis,u=s&&s.duration>0,h=t._context.staticPlot;e.each((function(e){var f,p=e[0].trace,d=p.error_x||{},m=p.error_y||{};p.ids&&(f=function(t){return t.id});var g=o.hasMarkers(p)&&p.marker.maxdisplayed>0;m.visible||d.visible||(e=[]);var y=n.select(this).selectAll(\"g.errorbar\").data(e,f);if(y.exit().remove(),e.length){d.visible||y.selectAll(\"path.xerror\").remove(),m.visible||y.selectAll(\"path.yerror\").remove(),y.style(\"opacity\",1);var v=y.enter().append(\"g\").classed(\"errorbar\",!0);u&&v.style(\"opacity\",0).transition().duration(s.duration).style(\"opacity\",1),a.setClipUrl(y,r.layerClipId,t),y.each((function(t){var e=n.select(this),r=function(t,e,r){var n={x:e.c2p(t.x),y:r.c2p(t.y)};return void 0!==t.yh&&(n.yh=r.c2p(t.yh),n.ys=r.c2p(t.ys),i(n.ys)||(n.noYS=!0,n.ys=r.c2p(t.ys,!0))),void 0!==t.xh&&(n.xh=e.c2p(t.xh),n.xs=e.c2p(t.xs),i(n.xs)||(n.noXS=!0,n.xs=e.c2p(t.xs,!0))),n}(t,l,c);if(!g||t.vis){var a,o=e.select(\"path.yerror\");if(m.visible&&i(r.x)&&i(r.yh)&&i(r.ys)){var f=m.width;a=\"M\"+(r.x-f)+\",\"+r.yh+\"h\"+2*f+\"m-\"+f+\",0V\"+r.ys,r.noYS||(a+=\"m-\"+f+\",0h\"+2*f),o.size()?u&&(o=o.transition().duration(s.duration).ease(s.easing)):o=e.append(\"path\").style(\"vector-effect\",h?\"none\":\"non-scaling-stroke\").classed(\"yerror\",!0),o.attr(\"d\",a)}else o.remove();var p=e.select(\"path.xerror\");if(d.visible&&i(r.y)&&i(r.xh)&&i(r.xs)){var y=(d.copy_ystyle?m:d).width;a=\"M\"+r.xh+\",\"+(r.y-y)+\"v\"+2*y+\"m0,-\"+y+\"H\"+r.xs,r.noXS||(a+=\"m0,-\"+y+\"v\"+2*y),p.size()?u&&(p=p.transition().duration(s.duration).ease(s.easing)):p=e.append(\"path\").style(\"vector-effect\",h?\"none\":\"non-scaling-stroke\").classed(\"xerror\",!0),p.attr(\"d\",a)}else p.remove()}}))}}))}},22800:function(t,e,r){\"use strict\";var n=r(45568),i=r(78766);t.exports=function(t){t.each((function(t){var e=t[0].trace,r=e.error_y||{},a=e.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)}))}},70192:function(t,e,r){\"use strict\";var n=r(80337),i=r(6811).hoverlabel,a=r(93049).extendFlat;t.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\"}}},83552:function(t,e,r){\"use strict\";var n=r(34809),i=r(33626);function a(t,e,r,i){i=i||n.identity,Array.isArray(t)&&(e[0][r]=i(t))}t.exports=function(t){var e=t.calcdata,r=t._fullLayout;function o(t){return function(e){return n.coerceHoverinfo({hoverinfo:e},{_module:t._module},r)}}for(var s=0;s<e.length;s++){var l=e[s],c=l[0].trace;if(!i.traceIs(c,\"pie-like\")){var u=i.traceIs(c,\"2dMap\")?a:n.fillArray;u(c.hoverinfo,l,\"hi\",o(c)),c.hovertemplate&&u(c.hovertemplate,l,\"ht\"),c.hoverlabel&&(u(c.hoverlabel.bgcolor,l,\"hbg\"),u(c.hoverlabel.bordercolor,l,\"hbc\"),u(c.hoverlabel.font.size,l,\"hts\"),u(c.hoverlabel.font.color,l,\"htc\"),u(c.hoverlabel.font.family,l,\"htf\"),u(c.hoverlabel.font.weight,l,\"htw\"),u(c.hoverlabel.font.style,l,\"hty\"),u(c.hoverlabel.font.variant,l,\"htv\"),u(c.hoverlabel.namelength,l,\"hnl\"),u(c.hoverlabel.align,l,\"hta\"))}}}},94225:function(t,e,r){\"use strict\";var n=r(33626),i=r(38103).hover;t.exports=function(t,e,r){var a=n.getComponentMethod(\"annotations\",\"onClick\")(t,t._hoverdata);function o(){t.emit(\"plotly_click\",{points:t._hoverdata,event:e})}void 0!==r&&i(t,e,r,!0),t._hoverdata&&e&&e.target&&(a&&a.then?a.then(o):o(),e.stopImmediatePropagation&&e.stopImmediatePropagation())}},85988:function(t){\"use strict\";t.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:\"Arial, sans-serif\",HOVERMINTIME:50,HOVERID:\"-hover\"}},3239:function(t,e,r){\"use strict\";var n=r(34809),i=r(70192),a=r(26430);t.exports=function(t,e,r,o){var s=n.extendFlat({},o.hoverlabel);e.hovertemplate&&(s.namelength=-1),a(t,e,(function(r,a){return n.coerce(t,e,i,r,a)}),s)}},36040:function(t,e,r){\"use strict\";var n=r(34809);e.getSubplot=function(t){return t.subplot||t.xaxis+t.yaxis||t.geo},e.isTraceInSubplots=function(t,r){if(\"splom\"===t.type){for(var n=t.xaxes||[],i=t.yaxes||[],a=0;a<n.length;a++)for(var o=0;o<i.length;o++)if(-1!==r.indexOf(n[a]+i[o]))return!0;return!1}return-1!==r.indexOf(e.getSubplot(t))},e.flat=function(t,e){for(var r=new Array(t.length),n=0;n<t.length;n++)r[n]=e;return r},e.p2c=function(t,e){for(var r=new Array(t.length),n=0;n<t.length;n++)r[n]=t[n].p2c(e);return r},e.getDistanceFunction=function(t,r,n,i){return\"closest\"===t?i||e.quadrature(r,n):\"x\"===t.charAt(0)?r:n},e.getClosest=function(t,e,r){if(!1!==r.index)r.index>=0&&r.index<t.length?r.distance=0:r.index=!1;else for(var n=0;n<t.length;n++){var i=e(t[n]);i<=r.distance&&(r.index=n,r.distance=i)}return r},e.inbox=function(t,e,r){return t*e<0||0===t?r:1/0},e.quadrature=function(t,e){return function(r){var n=t(r),i=e(r);return Math.sqrt(n*n+i*i)}},e.makeEventData=function(t,r,n){var i=\"index\"in t?t.index:t.pointNumber,a={data:r._input,fullData:r,curveNumber:r.index,pointNumber:i};if(r._indexToPoints){var o=r._indexToPoints[i];1===o.length?a.pointIndex=o[0]:a.pointIndices=o}else a.pointIndex=i;return r._module.eventData?a=r._module.eventData(a,t,r,n,i):(\"xVal\"in t?a.x=t.xVal:\"x\"in t&&(a.x=t.x),\"yVal\"in t?a.y=t.yVal:\"y\"in t&&(a.y=t.y),t.xa&&(a.xaxis=t.xa),t.ya&&(a.yaxis=t.ya),void 0!==t.zLabelVal&&(a.z=t.zLabelVal)),e.appendArrayPointValue(a,r,i),a},e.appendArrayPointValue=function(t,e,r){var i=e._arrayAttrs;if(i)for(var s=0;s<i.length;s++){var l=i[s],c=a(l);if(void 0===t[c]){var u=o(n.nestedProperty(e,l).get(),r);void 0!==u&&(t[c]=u)}}},e.appendArrayMultiPointValues=function(t,e,r){var i=e._arrayAttrs;if(i)for(var s=0;s<i.length;s++){var l=i[s],c=a(l);if(void 0===t[c]){for(var u=n.nestedProperty(e,l).get(),h=new Array(r.length),f=0;f<r.length;f++)h[f]=o(u,r[f]);t[c]=h}}};var i={ids:\"id\",locations:\"location\",labels:\"label\",values:\"value\",\"marker.colors\":\"color\",parents:\"parent\"};function a(t){return i[t]||t}function o(t,e){return Array.isArray(e)?Array.isArray(t)&&Array.isArray(t[e[0]])?t[e[0]][e[1]]:void 0:t[e]}var s={x:!0,y:!0},l={\"x unified\":!0,\"y unified\":!0};e.isUnifiedHover=function(t){return\"string\"==typeof t&&!!l[t]},e.isXYhover=function(t){return\"string\"==typeof t&&!!s[t]}},38103:function(t,e,r){\"use strict\";var n=r(45568),i=r(10721),a=r(65657),o=r(34809),s=o.pushUnique,l=o.strTranslate,c=o.strRotate,u=r(68596),h=r(30635),f=r(93134),p=r(62203),d=r(78766),m=r(14751),g=r(29714),y=r(54826).zindexSeparator,v=r(33626),x=r(36040),_=r(85988),b=r(73970),w=r(6134),T=_.YANGLE,k=Math.PI*T/180,A=1/Math.sin(k),M=Math.cos(k),S=Math.sin(k),E=_.HOVERARROWSIZE,C=_.HOVERTEXTPAD,L={box:!0,ohlc:!0,violin:!0,candlestick:!0},I={scatter:!0,scattergl:!0,splom:!0};function P(t,e){return t.distance-e.distance}function z(t){return[t.trace.index,t.index,t.x0,t.y0,t.name,t.attr,t.xa?t.xa._id:\"\",t.ya?t.ya._id:\"\"].join(\",\")}e.hover=function(t,e,r,a){t=o.getGraphDiv(t);var l=e.target;o.throttle(t._fullLayout._uid+_.HOVERID,_.HOVERMINTIME,(function(){!function(t,e,r,a,l){r||(r=\"xy\"),\"string\"==typeof r&&(r=r.split(y)[0]);var c,h,p,_=Array.isArray(r)?r:[r],b=t._fullLayout,w=b.hoversubplots,T=b._plots||[],k=T[r],M=b._has(\"cartesian\"),S=e.hovermode||b.hovermode,C=\"x\"===(S||\"\").charAt(0),O=\"y\"===(S||\"\").charAt(0);if(M&&(C||O)&&\"axis\"===w)for(var R=_.length,V=0;V<R;V++)if(T[c=_[V]]){h=g.getFromId(t,c,\"x\"),p=g.getFromId(t,c,\"y\");var Z=(C?h:p)._subplotsWith;if(Z&&Z.length)for(var W=0;W<Z.length;W++)s(_,Z[W])}if(k&&\"single\"!==w){var Y=k.overlays.map((function(t){return t.id}));_=_.concat(Y)}for(var X=_.length,$=new Array(X),J=new Array(X),K=!1,Q=0;Q<X;Q++)if(T[c=_[Q]])K=!0,$[Q]=T[c].xaxis,J[Q]=T[c].yaxis;else{if(!b[c]||!b[c]._subplot)return void o.warn(\"Unrecognized subplot: \"+c);var tt=b[c]._subplot;$[Q]=tt.xaxis,J[Q]=tt.yaxis}if(S&&!K&&(S=\"closest\"),-1===[\"x\",\"y\",\"closest\",\"x unified\",\"y unified\"].indexOf(S)||!t.calcdata||t.querySelector(\".zoombox\")||t._dragging)return m.unhoverRaw(t,e);var et=b.hoverdistance;-1===et&&(et=1/0);var rt=b.spikedistance;-1===rt&&(rt=1/0);var nt,it,at,ot,st,lt,ct,ut,ht,ft,pt,dt,mt,gt=[],yt=[],vt={hLinePoint:null,vLinePoint:null},xt=!1;if(Array.isArray(e))for(S=\"array\",at=0;at<e.length;at++)(st=t.calcdata[e[at].curveNumber||0])&&(lt=st[0].trace,\"skip\"!==st[0].trace.hoverinfo&&(yt.push(st),\"h\"===lt.orientation&&(xt=!0)));else{var _t,bt,wt=t.calcdata.slice();for(wt.sort((function(t,e){return(t[0].trace.zorder||0)-(e[0].trace.zorder||0)})),ot=0;ot<wt.length;ot++)st=wt[ot],\"skip\"!==(lt=st[0].trace).hoverinfo&&x.isTraceInSubplots(lt,_)&&(yt.push(st),\"h\"===lt.orientation&&(xt=!0));if(l){if(!1===u.triggerHandler(t,\"plotly_beforehover\",e))return;var Tt=l.getBoundingClientRect();_t=e.clientX-Tt.left,bt=e.clientY-Tt.top,b._calcInverseTransform(t);var kt=o.apply3DTransform(b._invTransform)(_t,bt);if(_t=kt[0],bt=kt[1],_t<0||_t>$[0]._length||bt<0||bt>J[0]._length)return m.unhoverRaw(t,e)}else _t=\"xpx\"in e?e.xpx:$[0]._length/2,bt=\"ypx\"in e?e.ypx:J[0]._length/2;if(e.pointerX=_t+$[0]._offset,e.pointerY=bt+J[0]._offset,nt=\"xval\"in e?x.flat(_,e.xval):x.p2c($,_t),it=\"yval\"in e?x.flat(_,e.yval):x.p2c(J,bt),!i(nt[0])||!i(it[0]))return o.warn(\"Fx.hover failed\",e,t),m.unhoverRaw(t,e)}var At=1/0;function Mt(r,n){for(ot=0;ot<yt.length;ot++)if((st=yt[ot])&&st[0]&&st[0].trace&&!0===(lt=st[0].trace).visible&&0!==lt._length&&-1===[\"carpet\",\"contourcarpet\"].indexOf(lt._module.name)){if(ht=S,x.isUnifiedHover(ht)&&(ht=ht.charAt(0)),\"splom\"===lt.type?ct=_[ut=0]:(ct=x.getSubplot(lt),ut=_.indexOf(ct)),dt={cd:st,trace:lt,xa:$[ut],ya:J[ut],maxHoverDistance:et,maxSpikeDistance:rt,index:!1,distance:Math.min(At,et),spikeDistance:1/0,xSpike:void 0,ySpike:void 0,color:d.defaultLine,name:lt.name,x0:void 0,x1:void 0,y0:void 0,y1:void 0,xLabelVal:void 0,yLabelVal:void 0,zLabelVal:void 0,text:void 0},b[ct]&&(dt.subplot=b[ct]._subplot),b._splomScenes&&b._splomScenes[lt.uid]&&(dt.scene=b._splomScenes[lt.uid]),\"array\"===ht){var a=e[ot];\"pointNumber\"in a?(dt.index=a.pointNumber,ht=\"closest\"):(ht=\"\",\"xval\"in a&&(ft=a.xval,ht=\"x\"),\"yval\"in a&&(pt=a.yval,ht=ht?\"closest\":\"y\"))}else void 0!==r&&void 0!==n?(ft=r,pt=n):(ft=nt[ut],pt=it[ut]);if(mt=gt.length,0!==et)if(lt._module&&lt._module.hoverPoints){var s=lt._module.hoverPoints(dt,ft,pt,ht,{finiteRange:!0,hoverLayer:b._hoverlayer,hoversubplots:w,gd:t});if(s)for(var l,c=0;c<s.length;c++)l=s[c],i(l.x0)&&i(l.y0)&&gt.push(N(l,S))}else o.log(\"Unrecognized trace type in hover:\",lt);if(\"closest\"===S&&gt.length>mt&&(gt.splice(0,mt),At=gt[0].distance),M&&0!==rt&&0===gt.length){dt.distance=rt,dt.index=!1;var u=lt._module.hoverPoints(dt,ft,pt,\"closest\",{hoverLayer:b._hoverlayer});if(u&&(u=u.filter((function(t){return t.spikeDistance<=rt}))),u&&u.length){var h,f=u.filter((function(t){return t.xa.showspikes&&\"hovered data\"!==t.xa.spikesnap}));if(f.length){var p=f[0];i(p.x0)&&i(p.y0)&&(h=Et(p),(!vt.vLinePoint||vt.vLinePoint.spikeDistance>h.spikeDistance)&&(vt.vLinePoint=h))}var m=u.filter((function(t){return t.ya.showspikes&&\"hovered data\"!==t.ya.spikesnap}));if(m.length){var g=m[0];i(g.x0)&&i(g.y0)&&(h=Et(g),(!vt.hLinePoint||vt.hLinePoint.spikeDistance>h.spikeDistance)&&(vt.hLinePoint=h))}}}}}function St(t,e,r){for(var n,i=null,a=1/0,o=0;o<t.length;o++)h&&h._id!==t[o].xa._id||p&&p._id!==t[o].ya._id||(n=t[o].spikeDistance,r&&0===o&&(n=-1/0),n<=a&&n<=e&&(i=t[o],a=n));return i}function Et(t){return t?{xa:t.xa,ya:t.ya,x:void 0!==t.xSpike?t.xSpike:(t.x0+t.x1)/2,y:void 0!==t.ySpike?t.ySpike:(t.y0+t.y1)/2,distance:t.distance,spikeDistance:t.spikeDistance,curveNumber:t.trace.index,color:t.color,pointNumber:t.index}:null}Mt();var Ct={fullLayout:b,container:b._hoverlayer,event:e},Lt=t._spikepoints,It={vLinePoint:vt.vLinePoint,hLinePoint:vt.hLinePoint};t._spikepoints=It;var Pt=function(){var t=gt.filter((function(t){return h&&h._id===t.xa._id&&p&&p._id===t.ya._id})),e=gt.filter((function(t){return!(h&&h._id===t.xa._id&&p&&p._id===t.ya._id)}));t.sort(P),e.sort(P),gt=function(t,e){for(var r=e.charAt(0),n=[],i=[],a=[],o=0;o<t.length;o++){var s=t[o];v.traceIs(s.trace,\"bar-like\")||v.traceIs(s.trace,\"box-violin\")?a.push(s):s.trace[r+\"period\"]?i.push(s):n.push(s)}return n.concat(i).concat(a)}(gt=t.concat(e),S)};Pt();var zt=S.charAt(0),Ot=(\"x\"===zt||\"y\"===zt)&&gt[0]&&I[gt[0].trace.type];if(M&&0!==rt&&0!==gt.length){var Dt=St(gt.filter((function(t){return t.ya.showspikes})),rt,Ot);vt.hLinePoint=Et(Dt);var Rt=St(gt.filter((function(t){return t.xa.showspikes})),rt,Ot);vt.vLinePoint=Et(Rt)}if(0===gt.length){var Ft=m.unhoverRaw(t,e);return!M||null===vt.hLinePoint&&null===vt.vLinePoint||U(Lt)&&j(t,vt,Ct),Ft}if(M&&U(Lt)&&j(t,vt,Ct),x.isXYhover(ht)&&0!==gt[0].length&&\"splom\"!==gt[0].trace.type){var Bt=gt[0],Nt=(gt=L[Bt.trace.type]?gt.filter((function(t){return t.trace.index===Bt.trace.index})):[Bt]).length;Mt(q(\"x\",Bt,b),q(\"y\",Bt,b));var jt,Ut=[],Vt={},qt=0,Ht=function(t){var e=L[t.trace.type]?z(t):t.trace.index;if(Vt[e]){var r=Vt[e]-1,n=Ut[r];r>0&&Math.abs(t.distance)<Math.abs(n.distance)&&(Ut[r]=t)}else qt++,Vt[e]=qt,Ut.push(t)};for(jt=0;jt<Nt;jt++)Ht(gt[jt]);for(jt=gt.length-1;jt>Nt-1;jt--)Ht(gt[jt]);gt=Ut,Pt()}var Gt=t._hoverdata,Zt=[],Wt=H(t),Yt=G(t);for(at=0;at<gt.length;at++){var Xt=gt[at],$t=x.makeEventData(Xt,Xt.trace,Xt.cd);if(!1!==Xt.hovertemplate){var Jt=!1;Xt.cd[Xt.index]&&Xt.cd[Xt.index].ht&&(Jt=Xt.cd[Xt.index].ht),Xt.hovertemplate=Jt||Xt.trace.hovertemplate||!1}if(Xt.xa&&Xt.ya){var Kt=Xt.x0+Xt.xa._offset,Qt=Xt.x1+Xt.xa._offset,te=Xt.y0+Xt.ya._offset,ee=Xt.y1+Xt.ya._offset,re=Math.min(Kt,Qt),ne=Math.max(Kt,Qt),ie=Math.min(te,ee),ae=Math.max(te,ee);$t.bbox={x0:re+Yt,x1:ne+Yt,y0:ie+Wt,y1:ae+Wt}}Xt.eventData=[$t],Zt.push($t)}t._hoverdata=Zt;var oe=\"y\"===S&&(yt.length>1||gt.length>1)||\"closest\"===S&&xt&&gt.length>1,se=d.combine(b.plot_bgcolor||d.background,b.paper_bgcolor),le=D(gt,{gd:t,hovermode:S,rotateLabels:oe,bgColor:se,container:b._hoverlayer,outerContainer:b._paper.node(),commonLabelOpts:b.hoverlabel,hoverdistance:b.hoverdistance}),ce=le.hoverLabels;if(x.isUnifiedHover(S)||(function(t,e,r,n){var i,a,o,s,l,c,u,h=e?\"xa\":\"ya\",f=e?\"ya\":\"xa\",p=0,d=1,m=t.size(),g=new Array(m),y=0,v=n.minX,x=n.maxX,_=n.minY,b=n.maxY,w=function(t){return t*r._invScaleX},T=function(t){return t*r._invScaleY};function k(t){var e=t[0],r=t[t.length-1];if(a=e.pmin-e.pos-e.dp+e.size,o=r.pos+r.dp+r.size-e.pmax,a>.01){for(l=t.length-1;l>=0;l--)t[l].dp+=a;i=!1}if(!(o<.01)){if(a<-.01){for(l=t.length-1;l>=0;l--)t[l].dp-=o;i=!1}if(i){var n=0;for(s=0;s<t.length;s++)(c=t[s]).pos+c.dp+c.size>e.pmax&&n++;for(s=t.length-1;s>=0&&!(n<=0);s--)(c=t[s]).pos>e.pmax-1&&(c.del=!0,n--);for(s=0;s<t.length&&!(n<=0);s++)if((c=t[s]).pos<e.pmin+1)for(c.del=!0,n--,o=2*c.size,l=t.length-1;l>=0;l--)t[l].dp-=o;for(s=t.length-1;s>=0&&!(n<=0);s--)(c=t[s]).pos+c.dp+c.size>e.pmax&&(c.del=!0,n--)}}}for(t.each((function(t){var n=t[h],i=t[f],a=\"x\"===n._id.charAt(0),o=n.range;0===y&&o&&o[0]>o[1]!==a&&(d=-1);var s=0,l=a?r.width:r.height;if(\"x\"===r.hovermode||\"y\"===r.hovermode){var c,u,p=F(t,e),m=t.anchor,k=\"end\"===m?-1:1;if(\"middle\"===m)u=(c=t.crossPos+(a?T(p.y-t.by/2):w(t.bx/2+t.tx2width/2)))+(a?T(t.by):w(t.bx));else if(a)u=(c=t.crossPos+T(E+p.y)-T(t.by/2-E))+T(t.by);else{var M=w(k*E+p.x),S=M+w(k*t.bx);c=t.crossPos+Math.min(M,S),u=t.crossPos+Math.max(M,S)}a?void 0!==_&&void 0!==b&&Math.min(u,b)-Math.max(c,_)>1&&(\"left\"===i.side?(s=i._mainLinePosition,l=r.width):l=i._mainLinePosition):void 0!==v&&void 0!==x&&Math.min(u,x)-Math.max(c,v)>1&&(\"top\"===i.side?(s=i._mainLinePosition,l=r.height):l=i._mainLinePosition)}g[y++]=[{datum:t,traceIndex:t.trace.index,dp:0,pos:t.pos,posref:t.posref,size:t.by*(a?A:1)/2,pmin:s,pmax:l}]})),g.sort((function(t,e){return t[0].posref-e[0].posref||d*(e[0].traceIndex-t[0].traceIndex)}));!i&&p<=m;){for(p++,i=!0,s=0;s<g.length-1;){var M=g[s],S=g[s+1],C=M[M.length-1],L=S[0];if((a=C.pos+C.dp+C.size-L.pos-L.dp+L.size)>.01){for(l=S.length-1;l>=0;l--)S[l].dp+=a;for(M.push.apply(M,S),g.splice(s+1,1),u=0,l=M.length-1;l>=0;l--)u+=M[l].dp;for(o=u/M.length,l=M.length-1;l>=0;l--)M[l].dp-=o;i=!1}else s++}g.forEach(k)}for(s=g.length-1;s>=0;s--){var I=g[s];for(l=I.length-1;l>=0;l--){var P=I[l],z=P.datum;z.offset=P.dp,z.del=P.del}}}(ce,oe,b,le.commonLabelBoundingBox),B(ce,oe,b._invScaleX,b._invScaleY)),l&&l.tagName){var ue=v.getComponentMethod(\"annotations\",\"hasClickToShow\")(t,Zt);f(n.select(l),ue?\"pointer\":\"\")}l&&!a&&function(t,e,r){if(!r||r.length!==t._hoverdata.length)return!0;for(var n=r.length-1;n>=0;n--){var i=r[n],a=t._hoverdata[n];if(i.curveNumber!==a.curveNumber||String(i.pointNumber)!==String(a.pointNumber)||String(i.pointNumbers)!==String(a.pointNumbers))return!0}return!1}(t,0,Gt)&&(Gt&&t.emit(\"plotly_unhover\",{event:e,points:Gt}),t.emit(\"plotly_hover\",{event:e,points:t._hoverdata,xaxes:$,yaxes:J,xvals:nt,yvals:it}))}(t,e,r,a,l)}))},e.loneHover=function(t,e){var r=!0;Array.isArray(t)||(r=!1,t=[t]);var i=e.gd,a=H(i),o=G(i),s=D(t.map((function(t){var r=t._x0||t.x0||t.x||0,n=t._x1||t.x1||t.x||0,s=t._y0||t.y0||t.y||0,l=t._y1||t.y1||t.y||0,c=t.eventData;if(c){var u=Math.min(r,n),h=Math.max(r,n),f=Math.min(s,l),p=Math.max(s,l),m=t.trace;if(v.traceIs(m,\"gl3d\")){var g=i._fullLayout[m.scene]._scene.container,y=g.offsetLeft,x=g.offsetTop;u+=y,h+=y,f+=x,p+=x}c.bbox={x0:u+o,x1:h+o,y0:f+a,y1:p+a},e.inOut_bbox&&e.inOut_bbox.push(c.bbox)}else c=!1;return{color:t.color||d.defaultLine,x0:t.x0||t.x||0,x1:t.x1||t.x||0,y0:t.y0||t.y||0,y1:t.y1||t.y||0,xLabel:t.xLabel,yLabel:t.yLabel,zLabel:t.zLabel,text:t.text,name:t.name,idealAlign:t.idealAlign,borderColor:t.borderColor,fontFamily:t.fontFamily,fontSize:t.fontSize,fontColor:t.fontColor,fontWeight:t.fontWeight,fontStyle:t.fontStyle,fontVariant:t.fontVariant,nameLength:t.nameLength,textAlign:t.textAlign,trace:t.trace||{index:0,hoverinfo:\"\"},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:t.hovertemplate||!1,hovertemplateLabels:t.hovertemplateLabels||!1,eventData:c}})),{gd:i,hovermode:\"closest\",rotateLabels:!1,bgColor:e.bgColor||d.background,container:n.select(e.container),outerContainer:e.outerContainer||e.container}).hoverLabels,l=0,c=0;return s.sort((function(t,e){return t.y0-e.y0})).each((function(t,r){var n=t.y0-t.by/2;t.offset=n-5<l?l-n+5:0,l=n+t.by+t.offset,r===e.anchorIndex&&(c=t.offset)})).each((function(t){t.offset-=c})),B(s,!1,i._fullLayout._invScaleX,i._fullLayout._invScaleY),r?s:s.node()};var O=/<extra>([\\s\\S]*)<\\/extra>/;function D(t,e){var r=e.gd,i=r._fullLayout,a=e.hovermode,s=e.rotateLabels,u=e.bgColor,f=e.container,m=e.outerContainer,g=e.commonLabelOpts||{};if(0===t.length)return[[]];var y=e.fontFamily||_.HOVERFONT,k=e.fontSize||_.HOVERFONTSIZE,A=e.fontWeight||i.font.weight,M=e.fontStyle||i.font.style,S=e.fontVariant||i.font.variant,L=e.fontTextcase||i.font.textcase,I=e.fontLineposition||i.font.lineposition,P=e.fontShadow||i.font.shadow,O=t[0],D=O.xa,F=O.ya,B=a.charAt(0),N=B+\"Label\",j=O[N];if(void 0===j&&\"multicategory\"===D.type)for(var U=0;U<t.length&&void 0===(j=t[U][N]);U++);var V=Z(r,m),q=V.top,H=V.width,G=V.height,W=void 0!==j&&O.distance<=e.hoverdistance&&(\"x\"===a||\"y\"===a);if(W){var Y,X,$=!0;for(Y=0;Y<t.length;Y++)if($&&void 0===t[Y].zLabel&&($=!1),X=t[Y].hoverinfo||t[Y].trace.hoverinfo){var J=Array.isArray(X)?X:X.split(\"+\");if(-1===J.indexOf(\"all\")&&-1===J.indexOf(a)){W=!1;break}}$&&(W=!1)}var K=f.selectAll(\"g.axistext\").data(W?[0]:[]);K.enter().append(\"g\").classed(\"axistext\",!0),K.exit().remove();var Q={minX:0,maxX:0,minY:0,maxY:0};if(K.each((function(){var t=n.select(this),e=o.ensureSingle(t,\"path\",\"\",(function(t){t.style({\"stroke-width\":\"1px\"})})),s=o.ensureSingle(t,\"text\",\"\",(function(t){t.attr(\"data-notex\",1)})),c=g.bgcolor||d.defaultLine,u=g.bordercolor||d.contrast(c),f=d.contrast(c),m=g.font,v={weight:m.weight||A,style:m.style||M,variant:m.variant||S,textcase:m.textcase||L,lineposition:m.lineposition||I,shadow:m.shadow||P,family:m.family||y,size:m.size||k,color:m.color||f};e.style({fill:c,stroke:u}),s.text(j).call(p.font,v).call(h.positionText,0,0).call(h.convertToTspans,r),t.attr(\"transform\",\"\");var x,_,b=Z(r,s.node());if(\"x\"===a){var w=\"top\"===D.side?\"-\":\"\";s.attr(\"text-anchor\",\"middle\").call(h.positionText,0,\"top\"===D.side?q-b.bottom-E-C:q-b.top+E+C),x=D._offset+(O.x0+O.x1)/2,_=F._offset+(\"top\"===D.side?0:F._length);var T=b.width/2+C,z=x;x<T?z=T:x>i.width-T&&(z=i.width-T),e.attr(\"d\",\"M\"+(x-z)+\",0L\"+(x-z+E)+\",\"+w+E+\"H\"+T+\"v\"+w+(2*C+b.height)+\"H\"+-T+\"V\"+w+E+\"H\"+(x-z-E)+\"Z\"),x=z,Q.minX=x-T,Q.maxX=x+T,\"top\"===D.side?(Q.minY=_-(2*C+b.height),Q.maxY=_-C):(Q.minY=_+C,Q.maxY=_+(2*C+b.height))}else{var R,B,N;\"right\"===F.side?(R=\"start\",B=1,N=\"\",x=D._offset+D._length):(R=\"end\",B=-1,N=\"-\",x=D._offset),_=F._offset+(O.y0+O.y1)/2,s.attr(\"text-anchor\",R),e.attr(\"d\",\"M0,0L\"+N+E+\",\"+E+\"V\"+(C+b.height/2)+\"h\"+N+(2*C+b.width)+\"V-\"+(C+b.height/2)+\"H\"+N+E+\"V-\"+E+\"Z\"),Q.minY=_-(C+b.height/2),Q.maxY=_+(C+b.height/2),\"right\"===F.side?(Q.minX=x+E,Q.maxX=x+E+(2*C+b.width)):(Q.minX=x-E-(2*C+b.width),Q.maxX=x-E);var U,V=b.height/2,H=q-b.top-V,G=\"clip\"+i._uid+\"commonlabel\"+F._id;if(x<b.width+2*C+E){U=\"M-\"+(E+C)+\"-\"+V+\"h-\"+(b.width-C)+\"V\"+V+\"h\"+(b.width-C)+\"Z\";var W=b.width-x+C;h.positionText(s,W,H),\"end\"===R&&s.selectAll(\"tspan\").each((function(){var t=n.select(this),e=p.tester.append(\"text\").text(t.text()).call(p.font,v),i=Z(r,e.node());Math.round(i.width)<Math.round(b.width)&&t.attr(\"x\",W-i.width),e.remove()}))}else h.positionText(s,B*(C+E),H),U=null;var Y=i._topclips.selectAll(\"#\"+G).data(U?[0]:[]);Y.enter().append(\"clipPath\").attr(\"id\",G).append(\"path\"),Y.exit().remove(),Y.select(\"path\").attr(\"d\",U),p.setClipUrl(s,U?G:null,r)}t.attr(\"transform\",l(x,_))})),x.isUnifiedHover(a)){f.selectAll(\"g.hovertext\").remove();var tt=t.filter((function(t){return\"none\"!==t.hoverinfo}));if(0===tt.length)return[];var et=i.hoverlabel,rt=et.font,nt={showlegend:!0,legend:{title:{text:j,font:rt},font:rt,bgcolor:et.bgcolor,bordercolor:et.bordercolor,borderwidth:1,tracegroupgap:7,traceorder:i.legend?i.legend.traceorder:void 0,orientation:\"v\"}},it={font:rt};b(nt,it,r._fullData);var at=it.legend;at.entries=[];for(var ot=0;ot<tt.length;ot++){var st=tt[ot];if(\"none\"!==st.hoverinfo){var lt=R(st,!0,a,i,j),ct=lt[0],ut=lt[1];st.name=ut,st.text=\"\"!==ut?ut+\" : \"+ct:ct;var ht=st.cd[st.index];ht&&(ht.mc&&(st.mc=ht.mc),ht.mcc&&(st.mc=ht.mcc),ht.mlc&&(st.mlc=ht.mlc),ht.mlcc&&(st.mlc=ht.mlcc),ht.mlw&&(st.mlw=ht.mlw),ht.mrc&&(st.mrc=ht.mrc),ht.dir&&(st.dir=ht.dir)),st._distinct=!0,at.entries.push([st])}}at.entries.sort((function(t,e){return t[0].trace.index-e[0].trace.index})),at.layer=f,at._inHover=!0,at._groupTitleFont=et.grouptitlefont,w(r,at);var ft,pt,dt,mt,gt=f.select(\"g.legend\"),yt=Z(r,gt.node()),vt=yt.width+2*C,xt=yt.height+2*C,_t=tt[0],bt=(_t.x0+_t.x1)/2,wt=(_t.y0+_t.y1)/2,Tt=!(v.traceIs(_t.trace,\"bar-like\")||v.traceIs(_t.trace,\"box-violin\"));\"y\"===B?Tt?(pt=wt-C,ft=wt+C):(pt=Math.min.apply(null,tt.map((function(t){return Math.min(t.y0,t.y1)}))),ft=Math.max.apply(null,tt.map((function(t){return Math.max(t.y0,t.y1)})))):pt=ft=o.mean(tt.map((function(t){return(t.y0+t.y1)/2})))-xt/2,\"x\"===B?Tt?(dt=bt+C,mt=bt-C):(dt=Math.max.apply(null,tt.map((function(t){return Math.max(t.x0,t.x1)}))),mt=Math.min.apply(null,tt.map((function(t){return Math.min(t.x0,t.x1)})))):dt=mt=o.mean(tt.map((function(t){return(t.x0+t.x1)/2})))-vt/2;var kt,At,Mt=D._offset,St=F._offset;return mt+=Mt-vt,pt+=St-xt,kt=(dt+=Mt)+vt<H&&dt>=0?dt:mt+vt<H&&mt>=0?mt:Mt+vt<H?Mt:dt-bt<bt-mt+vt?H-vt:0,kt+=C,At=(ft+=St)+xt<G&&ft>=0?ft:pt+xt<G&&pt>=0?pt:St+xt<G?St:ft-wt<wt-pt+xt?G-xt:0,At+=C,gt.attr(\"transform\",l(kt-1,At-1)),gt}var Et=f.selectAll(\"g.hovertext\").data(t,(function(t){return z(t)}));return Et.enter().append(\"g\").classed(\"hovertext\",!0).each((function(){var t=n.select(this);t.append(\"rect\").call(d.fill,d.addOpacity(u,.8)),t.append(\"text\").classed(\"name\",!0),t.append(\"path\").style(\"stroke-width\",\"1px\"),t.append(\"text\").classed(\"nums\",!0).call(p.font,{weight:A,style:M,variant:S,textcase:L,lineposition:I,shadow:P,family:y,size:k})})),Et.exit().remove(),Et.each((function(t){var e=n.select(this).attr(\"transform\",\"\"),o=t.color;Array.isArray(o)&&(o=o[t.eventData[0].pointNumber]);var f=t.bgcolor||o,m=d.combine(d.opacity(f)?f:d.defaultLine,u),g=d.combine(d.opacity(o)?o:d.defaultLine,u),v=t.borderColor||d.contrast(m),x=R(t,W,a,i,j,e),_=x[0],b=x[1],w=e.select(\"text.nums\").call(p.font,{family:t.fontFamily||y,size:t.fontSize||k,color:t.fontColor||v,weight:t.fontWeight||A,style:t.fontStyle||M,variant:t.fontVariant||S,textcase:t.fontTextcase||L,lineposition:t.fontLineposition||I,shadow:t.fontShadow||P}).text(_).attr(\"data-notex\",1).call(h.positionText,0,0).call(h.convertToTspans,r),z=e.select(\"text.name\"),O=0,D=0;if(b&&b!==_){z.call(p.font,{family:t.fontFamily||y,size:t.fontSize||k,color:g,weight:t.fontWeight||A,style:t.fontStyle||M,variant:t.fontVariant||S,textcase:t.fontTextcase||L,lineposition:t.fontLineposition||I,shadow:t.fontShadow||P}).text(b).attr(\"data-notex\",1).call(h.positionText,0,0).call(h.convertToTspans,r);var F=Z(r,z.node());O=F.width+2*C,D=F.height+2*C}else z.remove(),e.select(\"rect\").remove();e.select(\"path\").style({fill:m,stroke:v});var B=t.xa._offset+(t.x0+t.x1)/2,N=t.ya._offset+(t.y0+t.y1)/2,U=Math.abs(t.x1-t.x0),V=Math.abs(t.y1-t.y0),Y=Z(r,w.node()),X=Y.width/i._invScaleX,$=Y.height/i._invScaleY;t.ty0=(q-Y.top)/i._invScaleY,t.bx=X+2*C,t.by=Math.max($+2*C,D),t.anchor=\"start\",t.txwidth=X,t.tx2width=O,t.offset=0;var J,K,Q=(X+E+C+O)*i._invScaleX;if(s)t.pos=B,J=N+V/2+Q<=G,K=N-V/2-Q>=0,\"top\"!==t.idealAlign&&J||!K?J?(N+=V/2,t.anchor=\"start\"):t.anchor=\"middle\":(N-=V/2,t.anchor=\"end\"),t.crossPos=N;else{if(t.pos=N,J=B+U/2+Q<=H,K=B-U/2-Q>=0,\"left\"!==t.idealAlign&&J||!K)if(J)B+=U/2,t.anchor=\"start\";else{t.anchor=\"middle\";var tt=Q/2,et=B+tt-H,rt=B-tt;et>0&&(B-=et),rt<0&&(B+=-rt)}else B-=U/2,t.anchor=\"end\";t.crossPos=B}w.attr(\"text-anchor\",t.anchor),O&&z.attr(\"text-anchor\",t.anchor),e.attr(\"transform\",l(B,N)+(s?c(T):\"\"))})),{hoverLabels:Et,commonLabelBoundingBox:Q}}function R(t,e,r,n,i,a){var s=\"\",l=\"\";void 0!==t.nameOverride&&(t.name=t.nameOverride),t.name&&(t.trace._meta&&(t.name=o.templateString(t.name,t.trace._meta)),s=V(t.name,t.nameLength));var c=r.charAt(0),u=\"x\"===c?\"y\":\"x\";void 0!==t.zLabel?(void 0!==t.xLabel&&(l+=\"x: \"+t.xLabel+\"<br>\"),void 0!==t.yLabel&&(l+=\"y: \"+t.yLabel+\"<br>\"),\"choropleth\"!==t.trace.type&&\"choroplethmapbox\"!==t.trace.type&&\"choroplethmap\"!==t.trace.type&&(l+=(l?\"z: \":\"\")+t.zLabel)):e&&t[c+\"Label\"]===i?l=t[u+\"Label\"]||\"\":void 0===t.xLabel?void 0!==t.yLabel&&\"scattercarpet\"!==t.trace.type&&(l=t.yLabel):l=void 0===t.yLabel?t.xLabel:\"(\"+t.xLabel+\", \"+t.yLabel+\")\",!t.text&&0!==t.text||Array.isArray(t.text)||(l+=(l?\"<br>\":\"\")+t.text),void 0!==t.extraText&&(l+=(l?\"<br>\":\"\")+t.extraText),a&&\"\"===l&&!t.hovertemplate&&(\"\"===s&&a.remove(),l=s);var h=t.hovertemplate||!1;if(h){var f=t.hovertemplateLabels||t;t[c+\"Label\"]!==i&&(f[c+\"other\"]=f[c+\"Val\"],f[c+\"otherLabel\"]=f[c+\"Label\"]),l=(l=o.hovertemplateString(h,f,n._d3locale,t.eventData[0]||{},t.trace._meta)).replace(O,(function(e,r){return s=V(r,t.nameLength),\"\"}))}return[l,s]}function F(t,e){var r=0,n=t.offset;return e&&(n*=-S,r=t.offset*M),{x:r,y:n}}function B(t,e,r,i){var a=function(t){return t*r},o=function(t){return t*i};t.each((function(t){var r=n.select(this);if(t.del)return r.remove();var i,s,l,c,u=r.select(\"text.nums\"),f=t.anchor,d=\"end\"===f?-1:1,m=(c=(l=(s={start:1,end:-1,middle:0}[(i=t).anchor])*(E+C))+s*(i.txwidth+C),\"middle\"===i.anchor&&(l-=i.tx2width/2,c+=i.txwidth/2+C),{alignShift:s,textShiftX:l,text2ShiftX:c}),g=F(t,e),y=g.x,v=g.y,x=\"middle\"===f;r.select(\"path\").attr(\"d\",x?\"M-\"+a(t.bx/2+t.tx2width/2)+\",\"+o(v-t.by/2)+\"h\"+a(t.bx)+\"v\"+o(t.by)+\"h-\"+a(t.bx)+\"Z\":\"M0,0L\"+a(d*E+y)+\",\"+o(E+v)+\"v\"+o(t.by/2-E)+\"h\"+a(d*t.bx)+\"v-\"+o(t.by)+\"H\"+a(d*E+y)+\"V\"+o(v-E)+\"Z\");var _=y+m.textShiftX,b=v+t.ty0-t.by/2+C,w=t.textAlign||\"auto\";\"auto\"!==w&&(\"left\"===w&&\"start\"!==f?(u.attr(\"text-anchor\",\"start\"),_=x?-t.bx/2-t.tx2width/2+C:-t.bx-C):\"right\"===w&&\"end\"!==f&&(u.attr(\"text-anchor\",\"end\"),_=x?t.bx/2-t.tx2width/2-C:t.bx+C)),u.call(h.positionText,a(_),o(b)),t.tx2width&&(r.select(\"text.name\").call(h.positionText,a(m.text2ShiftX+m.alignShift*C+y),o(v+t.ty0-t.by/2+C)),r.select(\"rect\").call(p.setRect,a(m.text2ShiftX+(m.alignShift-1)*t.tx2width/2+y),o(v-t.by/2-1),a(t.tx2width),o(t.by+2)))}))}function N(t,e){var r=t.index,n=t.trace||{},a=t.cd[0],s=t.cd[r]||{};function l(t){return t||i(t)&&0===t}var c=Array.isArray(r)?function(t,e){var i=o.castOption(a,r,t);return l(i)?i:o.extractOption({},n,\"\",e)}:function(t,e){return o.extractOption(s,n,t,e)};function u(e,r,n){var i=c(r,n);l(i)&&(t[e]=i)}if(u(\"hoverinfo\",\"hi\",\"hoverinfo\"),u(\"bgcolor\",\"hbg\",\"hoverlabel.bgcolor\"),u(\"borderColor\",\"hbc\",\"hoverlabel.bordercolor\"),u(\"fontFamily\",\"htf\",\"hoverlabel.font.family\"),u(\"fontSize\",\"hts\",\"hoverlabel.font.size\"),u(\"fontColor\",\"htc\",\"hoverlabel.font.color\"),u(\"fontWeight\",\"htw\",\"hoverlabel.font.weight\"),u(\"fontStyle\",\"hty\",\"hoverlabel.font.style\"),u(\"fontVariant\",\"htv\",\"hoverlabel.font.variant\"),u(\"nameLength\",\"hnl\",\"hoverlabel.namelength\"),u(\"textAlign\",\"hta\",\"hoverlabel.align\"),t.posref=\"y\"===e||\"closest\"===e&&\"h\"===n.orientation?t.xa._offset+(t.x0+t.x1)/2:t.ya._offset+(t.y0+t.y1)/2,t.x0=o.constrain(t.x0,0,t.xa._length),t.x1=o.constrain(t.x1,0,t.xa._length),t.y0=o.constrain(t.y0,0,t.ya._length),t.y1=o.constrain(t.y1,0,t.ya._length),void 0!==t.xLabelVal&&(t.xLabel=\"xLabel\"in t?t.xLabel:g.hoverLabelText(t.xa,t.xLabelVal,n.xhoverformat),t.xVal=t.xa.c2d(t.xLabelVal)),void 0!==t.yLabelVal&&(t.yLabel=\"yLabel\"in t?t.yLabel:g.hoverLabelText(t.ya,t.yLabelVal,n.yhoverformat),t.yVal=t.ya.c2d(t.yLabelVal)),void 0!==t.zLabelVal&&void 0===t.zLabel&&(t.zLabel=String(t.zLabelVal)),!(isNaN(t.xerr)||\"log\"===t.xa.type&&t.xerr<=0)){var h=g.tickText(t.xa,t.xa.c2l(t.xerr),\"hover\").text;void 0!==t.xerrneg?t.xLabel+=\" +\"+h+\" / -\"+g.tickText(t.xa,t.xa.c2l(t.xerrneg),\"hover\").text:t.xLabel+=\" ± \"+h,\"x\"===e&&(t.distance+=1)}if(!(isNaN(t.yerr)||\"log\"===t.ya.type&&t.yerr<=0)){var f=g.tickText(t.ya,t.ya.c2l(t.yerr),\"hover\").text;void 0!==t.yerrneg?t.yLabel+=\" +\"+f+\" / -\"+g.tickText(t.ya,t.ya.c2l(t.yerrneg),\"hover\").text:t.yLabel+=\" ± \"+f,\"y\"===e&&(t.distance+=1)}var p=t.hoverinfo||t.trace.hoverinfo;return p&&\"all\"!==p&&(-1===(p=Array.isArray(p)?p:p.split(\"+\")).indexOf(\"x\")&&(t.xLabel=void 0),-1===p.indexOf(\"y\")&&(t.yLabel=void 0),-1===p.indexOf(\"z\")&&(t.zLabel=void 0),-1===p.indexOf(\"text\")&&(t.text=void 0),-1===p.indexOf(\"name\")&&(t.name=void 0)),t}function j(t,e,r){var n,i,o=r.container,s=r.fullLayout,l=s._size,c=r.event,u=!!e.hLinePoint,h=!!e.vLinePoint;if(o.selectAll(\".spikeline\").remove(),h||u){var f=d.combine(s.plot_bgcolor,s.paper_bgcolor);if(u){var m,y,v=e.hLinePoint;n=v&&v.xa,\"cursor\"===(i=v&&v.ya).spikesnap?(m=c.pointerX,y=c.pointerY):(m=n._offset+v.x,y=i._offset+v.y);var x,_,b=a.readability(v.color,f)<1.5?d.contrast(f):v.color,w=i.spikemode,T=i.spikethickness,k=i.spikecolor||b,A=g.getPxPosition(t,i);if(-1!==w.indexOf(\"toaxis\")||-1!==w.indexOf(\"across\")){if(-1!==w.indexOf(\"toaxis\")&&(x=A,_=m),-1!==w.indexOf(\"across\")){var M=i._counterDomainMin,S=i._counterDomainMax;\"free\"===i.anchor&&(M=Math.min(M,i.position),S=Math.max(S,i.position)),x=l.l+M*l.w,_=l.l+S*l.w}o.insert(\"line\",\":first-child\").attr({x1:x,x2:_,y1:y,y2:y,\"stroke-width\":T,stroke:k,\"stroke-dasharray\":p.dashStyle(i.spikedash,T)}).classed(\"spikeline\",!0).classed(\"crisp\",!0),o.insert(\"line\",\":first-child\").attr({x1:x,x2:_,y1:y,y2:y,\"stroke-width\":T+2,stroke:f}).classed(\"spikeline\",!0).classed(\"crisp\",!0)}-1!==w.indexOf(\"marker\")&&o.insert(\"circle\",\":first-child\").attr({cx:A+(\"right\"!==i.side?T:-T),cy:y,r:T,fill:k}).classed(\"spikeline\",!0)}if(h){var E,C,L=e.vLinePoint;n=L&&L.xa,i=L&&L.ya,\"cursor\"===n.spikesnap?(E=c.pointerX,C=c.pointerY):(E=n._offset+L.x,C=i._offset+L.y);var I,P,z=a.readability(L.color,f)<1.5?d.contrast(f):L.color,O=n.spikemode,D=n.spikethickness,R=n.spikecolor||z,F=g.getPxPosition(t,n);if(-1!==O.indexOf(\"toaxis\")||-1!==O.indexOf(\"across\")){if(-1!==O.indexOf(\"toaxis\")&&(I=F,P=C),-1!==O.indexOf(\"across\")){var B=n._counterDomainMin,N=n._counterDomainMax;\"free\"===n.anchor&&(B=Math.min(B,n.position),N=Math.max(N,n.position)),I=l.t+(1-N)*l.h,P=l.t+(1-B)*l.h}o.insert(\"line\",\":first-child\").attr({x1:E,x2:E,y1:I,y2:P,\"stroke-width\":D,stroke:R,\"stroke-dasharray\":p.dashStyle(n.spikedash,D)}).classed(\"spikeline\",!0).classed(\"crisp\",!0),o.insert(\"line\",\":first-child\").attr({x1:E,x2:E,y1:I,y2:P,\"stroke-width\":D+2,stroke:f}).classed(\"spikeline\",!0).classed(\"crisp\",!0)}-1!==O.indexOf(\"marker\")&&o.insert(\"circle\",\":first-child\").attr({cx:E,cy:F-(\"top\"!==n.side?D:-D),r:D,fill:R}).classed(\"spikeline\",!0)}}}function U(t,e){return!e||e.vLinePoint!==t._spikepoints.vLinePoint||e.hLinePoint!==t._spikepoints.hLinePoint}function V(t,e){return h.plainText(t||\"\",{len:e,allowedTags:[\"br\",\"sub\",\"sup\",\"b\",\"i\",\"em\",\"s\",\"u\"]})}function q(t,e,r){var n=e[t+\"a\"],i=e[t+\"Val\"],a=e.cd[0];if(\"category\"===n.type||\"multicategory\"===n.type)i=n._categoriesMap[i];else if(\"date\"===n.type){var o=e.trace[t+\"periodalignment\"];if(o){var s=e.cd[e.index],l=s[t+\"Start\"];void 0===l&&(l=s[t]);var c=s[t+\"End\"];void 0===c&&(c=s[t]);var u=c-l;\"end\"===o?i+=u:\"middle\"===o&&(i+=u/2)}i=n.d2c(i)}return a&&a.t&&a.t.posLetter===n._id&&(\"group\"!==r.boxmode&&\"group\"!==r.violinmode||(i+=a.t.dPos)),i}function H(t){return t.offsetTop+t.clientTop}function G(t){return t.offsetLeft+t.clientLeft}function Z(t,e){var r=t._fullLayout,n=e.getBoundingClientRect(),i=n.left,a=n.top,s=i+n.width,l=a+n.height,c=o.apply3DTransform(r._invTransform)(i,a),u=o.apply3DTransform(r._invTransform)(s,l),h=c[0],f=c[1],p=u[0],d=u[1];return{x:h,y:f,width:p-h,height:d-f,top:Math.min(f,d),left:Math.min(h,p),right:Math.max(h,p),bottom:Math.max(f,d)}}},26430:function(t,e,r){\"use strict\";var n=r(34809),i=r(78766),a=r(36040).isUnifiedHover;t.exports=function(t,e,r,o){o=o||{};var s=e.legend;function l(t){o.font[t]||(o.font[t]=s?e.legend.font[t]:e.font[t])}e&&a(e.hovermode)&&(o.font||(o.font={}),l(\"size\"),l(\"family\"),l(\"color\"),l(\"weight\"),l(\"style\"),l(\"variant\"),s?(o.bgcolor||(o.bgcolor=i.combine(e.legend.bgcolor,e.paper_bgcolor)),o.bordercolor||(o.bordercolor=e.legend.bordercolor)):o.bgcolor||(o.bgcolor=e.paper_bgcolor)),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)}},45265:function(t,e,r){\"use strict\";var n=r(34809),i=r(6811);t.exports=function(t,e){function r(r,a){return void 0!==e[r]?e[r]:n.coerce(t,e,i,r,a)}return r(\"clickmode\"),r(\"hoversubplots\"),r(\"hovermode\")}},32141:function(t,e,r){\"use strict\";var n=r(45568),i=r(34809),a=r(14751),o=r(36040),s=r(6811),l=r(38103);t.exports={moduleType:\"component\",name:\"fx\",constants:r(85988),schema:{layout:s},attributes:r(70192),layoutAttributes:s,supplyLayoutGlobalDefaults:r(5358),supplyDefaults:r(3239),supplyLayoutDefaults:r(8412),calc:r(83552),getDistanceFunction:o.getDistanceFunction,getClosest:o.getClosest,inbox:o.inbox,quadrature:o.quadrature,appendArrayPointValue:o.appendArrayPointValue,castHoverOption:function(t,e,r){return i.castOption(t,e,\"hoverlabel.\"+r)},castHoverinfo:function(t,e,r){return i.castOption(t,r,\"hoverinfo\",(function(r){return i.coerceHoverinfo({hoverinfo:r},{_module:t._module},e)}))},hover:l.hover,unhover:a.unhover,loneHover:l.loneHover,loneUnhover:function(t){var e=i.isD3Selection(t)?t:n.select(t);e.selectAll(\"g.hovertext\").remove(),e.selectAll(\".spikeline\").remove()},click:r(94225)}},6811:function(t,e,r){\"use strict\";var n=r(85988),i=r(80337),a=i({editType:\"none\"});a.family.dflt=n.HOVERFONT,a.size.dflt=n.HOVERFONTSIZE,t.exports={clickmode:{valType:\"flaglist\",flags:[\"event\",\"select\"],dflt:\"event\",editType:\"plot\",extras:[\"none\"]},dragmode:{valType:\"enumerated\",values:[\"zoom\",\"pan\",\"select\",\"lasso\",\"drawclosedpath\",\"drawopenpath\",\"drawline\",\"drawrect\",\"drawcircle\",\"orbit\",\"turntable\",!1],dflt:\"zoom\",editType:\"modebar\"},hovermode:{valType:\"enumerated\",values:[\"x\",\"y\",\"closest\",!1,\"x unified\",\"y unified\"],dflt:\"closest\",editType:\"modebar\"},hoversubplots:{valType:\"enumerated\",values:[\"single\",\"overlaying\",\"axis\"],dflt:\"overlaying\",editType:\"none\"},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\"}}},8412:function(t,e,r){\"use strict\";var n=r(34809),i=r(6811),a=r(45265),o=r(26430);t.exports=function(t,e){function r(r,a){return n.coerce(t,e,i,r,a)}a(t,e)&&(r(\"hoverdistance\"),r(\"spikedistance\")),\"select\"===r(\"dragmode\")&&r(\"selectdirection\");var s=e._has(\"mapbox\"),l=e._has(\"map\"),c=e._has(\"geo\"),u=e._basePlotModules.length;\"zoom\"===e.dragmode&&((s||l||c)&&1===u||(s||l)&&c&&2===u)&&(e.dragmode=\"pan\"),o(t,e,r),n.coerceFont(r,\"hoverlabel.grouptitlefont\",e.hoverlabel.font)}},5358:function(t,e,r){\"use strict\";var n=r(34809),i=r(26430),a=r(6811);t.exports=function(t,e){i(t,e,(function(r,i){return n.coerce(t,e,a,r,i)}))}},83595:function(t,e,r){\"use strict\";var n=r(34809),i=r(90694).counter,a=r(13792).u,o=r(54826).idRegex,s=r(78032),l={rows:{valType:\"integer\",min:1,editType:\"plot\"},roworder:{valType:\"enumerated\",values:[\"top to bottom\",\"bottom to top\"],dflt:\"top to bottom\",editType:\"plot\"},columns:{valType:\"integer\",min:1,editType:\"plot\"},subplots:{valType:\"info_array\",freeLength:!0,dimensions:2,items:{valType:\"enumerated\",values:[i(\"xy\").toString(),\"\"],editType:\"plot\"},editType:\"plot\"},xaxes:{valType:\"info_array\",freeLength:!0,items:{valType:\"enumerated\",values:[o.x.toString(),\"\"],editType:\"plot\"},editType:\"plot\"},yaxes:{valType:\"info_array\",freeLength:!0,items:{valType:\"enumerated\",values:[o.y.toString(),\"\"],editType:\"plot\"},editType:\"plot\"},pattern:{valType:\"enumerated\",values:[\"independent\",\"coupled\"],dflt:\"coupled\",editType:\"plot\"},xgap:{valType:\"number\",min:0,max:1,editType:\"plot\"},ygap:{valType:\"number\",min:0,max:1,editType:\"plot\"},domain:a({name:\"grid\",editType:\"plot\",noGridCell:!0},{}),xside:{valType:\"enumerated\",values:[\"bottom\",\"bottom plot\",\"top plot\",\"top\"],dflt:\"bottom plot\",editType:\"plot\"},yside:{valType:\"enumerated\",values:[\"left\",\"left plot\",\"right plot\",\"right\"],dflt:\"left plot\",editType:\"plot\"},editType:\"plot\"};function c(t,e,r){var n=e[r+\"axes\"],i=Object.keys((t._splomAxes||{})[r]||{});return Array.isArray(n)?n:i.length?i:void 0}function u(t,e,r,n,i,a){var o=e(t+\"gap\",r),s=e(\"domain.\"+t);e(t+\"side\",n);for(var l=new Array(i),c=s[0],u=(s[1]-c)/(i-o),h=u*(1-o),f=0;f<i;f++){var p=c+u*f;l[a?i-1-f:f]=[p,p+h]}return l}function h(t,e,r,n,i){var a,o=new Array(r);function s(t,r){-1!==e.indexOf(r)&&void 0===n[r]?(o[t]=r,n[r]=t):o[t]=\"\"}if(Array.isArray(t))for(a=0;a<r;a++)s(a,t[a]);else for(s(0,i),a=1;a<r;a++)s(a,i+(a+1));return o}t.exports={moduleType:\"component\",name:\"grid\",schema:{layout:{grid:l}},layoutAttributes:l,sizeDefaults:function(t,e){var r=t.grid||{},i=c(e,r,\"x\"),a=c(e,r,\"y\");if(t.grid||i||a){var o,h,f=Array.isArray(r.subplots)&&Array.isArray(r.subplots[0]),p=Array.isArray(i),d=Array.isArray(a),m=p&&i!==r.xaxes&&d&&a!==r.yaxes;f?(o=r.subplots.length,h=r.subplots[0].length):(d&&(o=a.length),p&&(h=i.length));var g=s.newContainer(e,\"grid\"),y=k(\"rows\",o),v=k(\"columns\",h);if(y*v>1){f||p||d||\"independent\"===k(\"pattern\")&&(f=!0),g._hasSubplotGrid=f;var x,_,b=\"top to bottom\"===k(\"roworder\"),w=f?.2:.1,T=f?.3:.1;m&&e._splomGridDflt&&(x=e._splomGridDflt.xside,_=e._splomGridDflt.yside),g._domains={x:u(\"x\",k,w,x,v),y:u(\"y\",k,T,_,y,b)}}else delete e.grid}function k(t,e){return n.coerce(r,g,l,t,e)}},contentDefaults:function(t,e){var r=e.grid;if(r&&r._domains){var n,i,a,o,s,l,u,f=t.grid||{},p=e._subplots,d=r._hasSubplotGrid,m=r.rows,g=r.columns,y=\"independent\"===r.pattern,v=r._axisMap={};if(d){var x=f.subplots||[];l=r.subplots=new Array(m);var _=1;for(n=0;n<m;n++){var b=l[n]=new Array(g),w=x[n]||[];for(i=0;i<g;i++)if(y?(s=1===_?\"xy\":\"x\"+_+\"y\"+_,_++):s=w[i],b[i]=\"\",-1!==p.cartesian.indexOf(s)){if(u=s.indexOf(\"y\"),a=s.slice(0,u),o=s.slice(u),void 0!==v[a]&&v[a]!==i||void 0!==v[o]&&v[o]!==n)continue;b[i]=s,v[a]=i,v[o]=n}}}else{var T=c(e,f,\"x\"),k=c(e,f,\"y\");r.xaxes=h(T,p.xaxis,g,v,\"x\"),r.yaxes=h(k,p.yaxis,m,v,\"y\")}var A=r._anchors={},M=\"top to bottom\"===r.roworder;for(var S in v){var E,C,L,I=S.charAt(0),P=r[I+\"side\"];if(P.length<8)A[S]=\"free\";else if(\"x\"===I){if(\"t\"===P.charAt(0)===M?(E=0,C=1,L=m):(E=m-1,C=-1,L=-1),d){var z=v[S];for(n=E;n!==L;n+=C)if((s=l[n][z])&&(u=s.indexOf(\"y\"),s.slice(0,u)===S)){A[S]=s.slice(u);break}}else for(n=E;n!==L;n+=C)if(o=r.yaxes[n],-1!==p.cartesian.indexOf(S+o)){A[S]=o;break}}else if(\"l\"===P.charAt(0)?(E=0,C=1,L=g):(E=g-1,C=-1,L=-1),d){var O=v[S];for(n=E;n!==L;n+=C)if((s=l[O][n])&&(u=s.indexOf(\"y\"),s.slice(u)===S)){A[S]=s.slice(0,u);break}}else for(n=E;n!==L;n+=C)if(a=r.xaxes[n],-1!==p.cartesian.indexOf(a+S)){A[S]=a;break}}}}}},37260:function(t,e,r){\"use strict\";var n=r(54826),i=r(78032).templatedArray;r(35081),t.exports=i(\"image\",{visible:{valType:\"boolean\",dflt:!0,editType:\"arraydraw\"},source:{valType:\"string\",editType:\"arraydraw\"},layer:{valType:\"enumerated\",values:[\"below\",\"above\"],dflt:\"above\",editType:\"arraydraw\"},sizex:{valType:\"number\",dflt:0,editType:\"arraydraw\"},sizey:{valType:\"number\",dflt:0,editType:\"arraydraw\"},sizing:{valType:\"enumerated\",values:[\"fill\",\"contain\",\"stretch\"],dflt:\"contain\",editType:\"arraydraw\"},opacity:{valType:\"number\",min:0,max:1,dflt:1,editType:\"arraydraw\"},x:{valType:\"any\",dflt:0,editType:\"arraydraw\"},y:{valType:\"any\",dflt:0,editType:\"arraydraw\"},xanchor:{valType:\"enumerated\",values:[\"left\",\"center\",\"right\"],dflt:\"left\",editType:\"arraydraw\"},yanchor:{valType:\"enumerated\",values:[\"top\",\"middle\",\"bottom\"],dflt:\"top\",editType:\"arraydraw\"},xref:{valType:\"enumerated\",values:[\"paper\",n.idRegex.x.toString()],dflt:\"paper\",editType:\"arraydraw\"},yref:{valType:\"enumerated\",values:[\"paper\",n.idRegex.y.toString()],dflt:\"paper\",editType:\"arraydraw\"},editType:\"arraydraw\"})},89443:function(t,e,r){\"use strict\";var n=r(10721),i=r(8083);t.exports=function(t,e,r,a){e=e||{};var o=\"log\"===r&&\"linear\"===e.type,s=\"linear\"===r&&\"log\"===e.type;if(o||s)for(var l,c,u=t._fullLayout.images,h=e._id.charAt(0),f=0;f<u.length;f++)if(c=\"images[\"+f+\"].\",(l=u[f])[h+\"ref\"]===e._id){var p=l[h],d=l[\"size\"+h],m=null,g=null;if(o){m=i(p,e.range);var y=d/Math.pow(10,m)/2;g=2*Math.log(y+Math.sqrt(1+y*y))/Math.LN10}else g=(m=Math.pow(10,p))*(Math.pow(10,d/2)-Math.pow(10,-d/2));n(m)?n(g)||(g=null):(m=null,g=null),a(c+h,m),a(c+\"size\"+h,g)}}},507:function(t,e,r){\"use strict\";var n=r(34809),i=r(29714),a=r(59008),o=r(37260);function s(t,e,r){function a(r,i){return n.coerce(t,e,o,r,i)}var s=a(\"source\");if(!a(\"visible\",!!s))return e;a(\"layer\"),a(\"xanchor\"),a(\"yanchor\"),a(\"sizex\"),a(\"sizey\"),a(\"sizing\"),a(\"opacity\");for(var l={_fullLayout:r},c=[\"x\",\"y\"],u=0;u<2;u++){var h=c[u],f=i.coerceRef(t,e,l,h,\"paper\",void 0);\"paper\"!==f&&i.getFromId(l,f)._imgIndices.push(e._index),i.coercePosition(e,l,a,f,h,0)}return e}t.exports=function(t,e){a(t,e,{name:\"images\",handleItemDefaults:s})}},32211:function(t,e,r){\"use strict\";var n=r(45568),i=r(62203),a=r(29714),o=r(5975),s=r(62972);t.exports=function(t){var e,r,l=t._fullLayout,c=[],u={},h=[];for(r=0;r<l.images.length;r++){var f=l.images[r];if(f.visible)if(\"below\"===f.layer&&\"paper\"!==f.xref&&\"paper\"!==f.yref){e=o.ref2id(f.xref)+o.ref2id(f.yref);var p=l._plots[e];if(!p){h.push(f);continue}p.mainplot&&(e=p.mainplot.id),u[e]||(u[e]=[]),u[e].push(f)}else\"above\"===f.layer?c.push(f):h.push(f)}var d={left:{sizing:\"xMin\",offset:0},center:{sizing:\"xMid\",offset:-.5},right:{sizing:\"xMax\",offset:-1}},m={top:{sizing:\"YMin\",offset:0},middle:{sizing:\"YMid\",offset:-.5},bottom:{sizing:\"YMax\",offset:-1}};function g(e){var r=n.select(this);if(this._imgSrc!==e.source)if(r.attr(\"xmlns\",s.svg),e.source&&\"data:\"===e.source.slice(0,5))r.attr(\"xlink:href\",e.source),this._imgSrc=e.source;else{var i=new Promise(function(t){var n=new Image;function i(){r.remove(),t()}this.img=n,n.setAttribute(\"crossOrigin\",\"anonymous\"),n.onerror=i,n.onload=function(){var e=document.createElement(\"canvas\");e.width=this.width,e.height=this.height,e.getContext(\"2d\",{willReadFrequently:!0}).drawImage(this,0,0);var n=e.toDataURL(\"image/png\");r.attr(\"xlink:href\",n),t()},r.on(\"error\",i),n.src=e.source,this._imgSrc=e.source}.bind(this));t._promises.push(i)}}function y(e){var r,o,s=n.select(this),c=a.getFromId(t,e.xref),u=a.getFromId(t,e.yref),h=\"domain\"===a.getRefType(e.xref),f=\"domain\"===a.getRefType(e.yref),p=l._size;r=void 0!==c?\"string\"==typeof e.xref&&h?c._length*e.sizex:Math.abs(c.l2p(e.sizex)-c.l2p(0)):e.sizex*p.w,o=void 0!==u?\"string\"==typeof e.yref&&f?u._length*e.sizey:Math.abs(u.l2p(e.sizey)-u.l2p(0)):e.sizey*p.h;var g,y,v=r*d[e.xanchor].offset,x=o*m[e.yanchor].offset,_=d[e.xanchor].sizing+m[e.yanchor].sizing;switch(g=void 0!==c?\"string\"==typeof e.xref&&h?c._length*e.x+c._offset:c.r2p(e.x)+c._offset:e.x*p.w+p.l,g+=v,y=void 0!==u?\"string\"==typeof e.yref&&f?u._length*(1-e.y)+u._offset:u.r2p(e.y)+u._offset:p.h-e.y*p.h+p.t,y+=x,e.sizing){case\"fill\":_+=\" slice\";break;case\"stretch\":_=\"none\"}s.attr({x:g,y:y,width:r,height:o,preserveAspectRatio:_,opacity:e.opacity});var b=(c&&\"domain\"!==a.getRefType(e.xref)?c._id:\"\")+(u&&\"domain\"!==a.getRefType(e.yref)?u._id:\"\");i.setClipUrl(s,b?\"clip\"+l._uid+b:null,t)}var v=l._imageLowerLayer.selectAll(\"image\").data(h),x=l._imageUpperLayer.selectAll(\"image\").data(c);v.enter().append(\"image\"),x.enter().append(\"image\"),v.exit().remove(),x.exit().remove(),v.each((function(t){g.bind(this)(t),y.bind(this)(t)})),x.each((function(t){g.bind(this)(t),y.bind(this)(t)}));var _=Object.keys(l._plots);for(r=0;r<_.length;r++){e=_[r];var b=l._plots[e];if(b.imagelayer){var w=b.imagelayer.selectAll(\"image\").data(u[e]||[]);w.enter().append(\"image\"),w.exit().remove(),w.each((function(t){g.bind(this)(t),y.bind(this)(t)}))}}}},15553:function(t,e,r){\"use strict\";t.exports={moduleType:\"component\",name:\"images\",layoutAttributes:r(37260),supplyLayoutDefaults:r(507),includeBasePlot:r(20706)(\"images\"),draw:r(32211),convertCoords:r(89443)}},86405:function(t,e,r){\"use strict\";var n=r(80337),i=r(10229);t.exports={_isSubplotObj:!0,visible:{valType:\"boolean\",dflt:!0,editType:\"legend\"},bgcolor:{valType:\"color\",editType:\"legend\"},bordercolor:{valType:\"color\",dflt:i.defaultLine,editType:\"legend\"},borderwidth:{valType:\"number\",min:0,dflt:0,editType:\"legend\"},font:n({editType:\"legend\"}),grouptitlefont:n({editType:\"legend\"}),orientation:{valType:\"enumerated\",values:[\"v\",\"h\"],dflt:\"v\",editType:\"legend\"},traceorder:{valType:\"flaglist\",flags:[\"reversed\",\"grouped\"],extras:[\"normal\"],editType:\"legend\"},tracegroupgap:{valType:\"number\",min:0,dflt:10,editType:\"legend\"},entrywidth:{valType:\"number\",min:0,editType:\"legend\"},entrywidthmode:{valType:\"enumerated\",values:[\"fraction\",\"pixels\"],dflt:\"pixels\",editType:\"legend\"},indentation:{valType:\"number\",min:-15,dflt:0,editType:\"legend\"},itemsizing:{valType:\"enumerated\",values:[\"trace\",\"constant\"],dflt:\"trace\",editType:\"legend\"},itemwidth:{valType:\"number\",min:30,dflt:30,editType:\"legend\"},itemclick:{valType:\"enumerated\",values:[\"toggle\",\"toggleothers\",!1],dflt:\"toggle\",editType:\"legend\"},itemdoubleclick:{valType:\"enumerated\",values:[\"toggle\",\"toggleothers\",!1],dflt:\"toggleothers\",editType:\"legend\"},groupclick:{valType:\"enumerated\",values:[\"toggleitem\",\"togglegroup\"],dflt:\"togglegroup\",editType:\"legend\"},x:{valType:\"number\",editType:\"legend\"},xref:{valType:\"enumerated\",dflt:\"paper\",values:[\"container\",\"paper\"],editType:\"layoutstyle\"},xanchor:{valType:\"enumerated\",values:[\"auto\",\"left\",\"center\",\"right\"],dflt:\"left\",editType:\"legend\"},y:{valType:\"number\",editType:\"legend\"},yref:{valType:\"enumerated\",dflt:\"paper\",values:[\"container\",\"paper\"],editType:\"layoutstyle\"},yanchor:{valType:\"enumerated\",values:[\"auto\",\"top\",\"middle\",\"bottom\"],editType:\"legend\"},uirevision:{valType:\"any\",editType:\"none\"},valign:{valType:\"enumerated\",values:[\"top\",\"middle\",\"bottom\"],dflt:\"middle\",editType:\"legend\"},title:{text:{valType:\"string\",dflt:\"\",editType:\"legend\"},font:n({editType:\"legend\"}),side:{valType:\"enumerated\",values:[\"top\",\"left\",\"top left\",\"top center\",\"top right\"],editType:\"legend\"},editType:\"legend\"},editType:\"legend\"}},72783:function(t){\"use strict\";t.exports={scrollBarWidth:6,scrollBarMinHeight:20,scrollBarColor:\"#808BA4\",scrollBarMargin:4,scrollBarEnterAttrs:{rx:20,ry:3,width:0,height:0},titlePad:2,itemGap:5}},73970:function(t,e,r){\"use strict\";var n=r(33626),i=r(34809),a=r(78032),o=r(9829),s=r(86405),l=r(6704),c=r(57599);function u(t,e,r,u){var h=e[t]||{},f=a.newContainer(r,t);function p(t,e){return i.coerce(h,f,s,t,e)}var d=i.coerceFont(p,\"font\",r.font);if(p(\"bgcolor\",r.paper_bgcolor),p(\"bordercolor\"),p(\"visible\")){for(var m,g=function(t,e){var r=m._input,n=m;return i.coerce(r,n,o,t,e)},y=r.font||{},v=i.coerceFont(p,\"grouptitlefont\",y,{overrideDflt:{size:Math.round(1.1*y.size)}}),x=0,_=!1,b=\"normal\",w=(r.shapes||[]).filter((function(t){return t.showlegend})),T=u.concat(w).filter((function(e){return t===(e.legend||\"legend\")})),k=0;k<T.length;k++)if((m=T[k]).visible){var A=m._isShape;(m.showlegend||m._dfltShowLegend&&!(m._module&&m._module.attributes&&m._module.attributes.showlegend&&!1===m._module.attributes.showlegend.dflt))&&(x++,m.showlegend&&(_=!0,(!A&&n.traceIs(m,\"pie-like\")||!0===m._input.showlegend)&&x++),i.coerceFont(g,\"legendgrouptitle.font\",v)),(!A&&n.traceIs(m,\"bar\")&&\"stack\"===r.barmode||-1!==[\"tonextx\",\"tonexty\"].indexOf(m.fill))&&(b=c.isGrouped({traceorder:b})?\"grouped+reversed\":\"reversed\"),void 0!==m.legendgroup&&\"\"!==m.legendgroup&&(b=c.isReversed({traceorder:b})?\"reversed+grouped\":\"grouped\")}var M=i.coerce(e,r,l,\"showlegend\",_&&x>(\"legend\"===t?1:0));if(!1===M&&(r[t]=void 0),(!1!==M||h.uirevision)&&(p(\"uirevision\",r.uirevision),!1!==M)){p(\"borderwidth\");var S,E,C,L=\"h\"===p(\"orientation\"),I=\"paper\"===p(\"yref\"),P=\"paper\"===p(\"xref\"),z=\"left\";if(L?(S=0,n.getComponentMethod(\"rangeslider\",\"isVisible\")(e.xaxis)?I?(E=1.1,C=\"bottom\"):(E=1,C=\"top\"):I?(E=-.1,C=\"top\"):(E=0,C=\"bottom\")):(E=1,C=\"auto\",P?S=1.02:(S=1,z=\"right\")),i.coerce(h,f,{x:{valType:\"number\",editType:\"legend\",min:P?-2:0,max:P?3:1,dflt:S}},\"x\"),i.coerce(h,f,{y:{valType:\"number\",editType:\"legend\",min:I?-2:0,max:I?3:1,dflt:E}},\"y\"),p(\"traceorder\",b),c.isGrouped(r[t])&&p(\"tracegroupgap\"),p(\"entrywidth\"),p(\"entrywidthmode\"),p(\"indentation\"),p(\"itemsizing\"),p(\"itemwidth\"),p(\"itemclick\"),p(\"itemdoubleclick\"),p(\"groupclick\"),p(\"xanchor\",z),p(\"yanchor\",C),p(\"valign\"),i.noneOrAll(h,f,[\"x\",\"y\"]),p(\"title.text\")){p(\"title.side\",L?\"left\":\"top\");var O=i.extendFlat({},d,{size:i.bigFont(d.size)});i.coerceFont(p,\"title.font\",O)}}}}t.exports=function(t,e,r){var n,a=r.slice(),o=e.shapes;if(o)for(n=0;n<o.length;n++){var s=o[n];if(s.showlegend){var l={_input:s._input,visible:s.visible,showlegend:s.showlegend,legend:s.legend};a.push(l)}}var c=[\"legend\"];for(n=0;n<a.length;n++)i.pushUnique(c,a[n].legend);for(e._legends=[],n=0;n<c.length;n++){var h=c[n];u(h,t,e,a),e[h]&&e[h].visible&&(e[h]._id=h),e._legends.push(h)}}},6134:function(t,e,r){\"use strict\";var n=r(45568),i=r(34809),a=r(44122),o=r(33626),s=r(68596),l=r(14751),c=r(62203),u=r(78766),h=r(30635),f=r(22165),p=r(72783),d=r(4530),m=d.LINE_SPACING,g=d.FROM_TL,y=d.FROM_BR,v=r(851),x=r(14375),_=r(57599),b=1,w=/^legend[0-9]*$/;function T(t,e){var r,s,f=e||{},d=t._fullLayout,w=P(f),T=f._inHover;if(T?(s=f.layer,r=\"hover\"):(s=d._infolayer,r=w),s){var S;if(r+=d._uid,t._legendMouseDownTime||(t._legendMouseDownTime=0),T){if(!f.entries)return;S=v(f.entries,f)}else{for(var z=(t.calcdata||[]).slice(),O=d.shapes,D=0;D<O.length;D++){var R=O[D];if(R.showlegend){var F={_isShape:!0,_fullInput:R,index:R._index,name:R.name||R.label.text||\"shape \"+R._index,legend:R.legend,legendgroup:R.legendgroup,legendgrouptitle:R.legendgrouptitle,legendrank:R.legendrank,legendwidth:R.legendwidth,showlegend:R.showlegend,visible:R.visible,opacity:R.opacity,mode:\"line\"===R.type?\"lines\":\"markers\",line:R.line,marker:{line:R.line,color:R.fillcolor,size:12,symbol:\"rect\"===R.type?\"square\":\"circle\"===R.type?\"circle\":\"hexagon2\"}};z.push([{trace:F}])}}S=d.showlegend&&v(z,f,d._legends.length>1)}var B=d.hiddenlabels||[];if(!(T||d.showlegend&&S.length))return s.selectAll(\".\"+w).remove(),d._topdefs.select(\"#\"+r).remove(),a.autoMargin(t,w);var N=i.ensureSingle(s,\"g\",w,(function(t){T||t.attr(\"pointer-events\",\"all\")})),j=i.ensureSingleById(d._topdefs,\"clipPath\",r,(function(t){t.append(\"rect\")})),U=i.ensureSingle(N,\"rect\",\"bg\",(function(t){t.attr(\"shape-rendering\",\"crispEdges\")}));U.call(u.stroke,f.bordercolor).call(u.fill,f.bgcolor).style(\"stroke-width\",f.borderwidth+\"px\");var V,q=i.ensureSingle(N,\"g\",\"scrollbox\"),H=f.title;f._titleWidth=0,f._titleHeight=0,H.text?((V=i.ensureSingle(q,\"text\",w+\"titletext\")).attr(\"text-anchor\",\"start\").call(c.font,H.font).text(H.text),C(V,q,t,f,b)):q.selectAll(\".\"+w+\"titletext\").remove();var G=i.ensureSingle(N,\"rect\",\"scrollbar\",(function(t){t.attr(p.scrollBarEnterAttrs).call(u.fill,p.scrollBarColor)})),Z=q.selectAll(\"g.groups\").data(S);Z.enter().append(\"g\").attr(\"class\",\"groups\"),Z.exit().remove();var W=Z.selectAll(\"g.traces\").data(i.identity);W.enter().append(\"g\").attr(\"class\",\"traces\"),W.exit().remove(),W.style(\"opacity\",(function(t){var e=t[0].trace;return o.traceIs(e,\"pie-like\")?-1!==B.indexOf(t[0].label)?.5:1:\"legendonly\"===e.visible?.5:1})).each((function(){n.select(this).call(M,t,f)})).call(x,t,f).each((function(){T||n.select(this).call(E,t,w)})),i.syncOrAsync([a.previousPromises,function(){return function(t,e,r,i){var a=t._fullLayout,o=P(i);i||(i=a[o]);var s=a._size,l=_.isVertical(i),u=_.isGrouped(i),h=\"fraction\"===i.entrywidthmode,f=i.borderwidth,d=2*f,m=p.itemGap,g=i.indentation+i.itemwidth+2*m,y=2*(f+m),v=I(i),x=i.y<0||0===i.y&&\"top\"===v,b=i.y>1||1===i.y&&\"bottom\"===v,w=i.tracegroupgap,T={};i._maxHeight=Math.max(x||b?a.height/2:s.h,30);var A=0;i._width=0,i._height=0;var M=function(t){var e=0,r=0,n=t.title.side;return n&&(-1!==n.indexOf(\"left\")&&(e=t._titleWidth),-1!==n.indexOf(\"top\")&&(r=t._titleHeight)),[e,r]}(i);if(l)r.each((function(t){var e=t[0].height;c.setTranslate(this,f+M[0],f+M[1]+i._height+e/2+m),i._height+=e,i._width=Math.max(i._width,t[0].width)})),A=g+i._width,i._width+=m+g+d,i._height+=y,u&&(e.each((function(t,e){c.setTranslate(this,0,e*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,z=b||x,O=a.width/2;i._maxWidth=Math.max(E?z&&\"left\"===S?s.l+s.w:O:C?z&&\"right\"===S?s.r+s.w:O:s.w,2*g);var D=0,R=0;r.each((function(t){var e=k(t,i,g);D=Math.max(D,e),R+=e})),A=null;var F=0;if(u){var B=0,N=0,j=0;e.each((function(){var t=0,e=0;n.select(this).selectAll(\"g.traces\").each((function(r){var n=k(r,i,g),a=r[0].height;c.setTranslate(this,M[0],M[1]+f+m+a/2+e),e+=a,t=Math.max(t,n),T[r[0].trace.legendgroup]=t}));var r=t+m;N>0&&r+f+N>i._maxWidth?(F=Math.max(F,N),N=0,j+=B+w,B=e):B=Math.max(B,e),c.setTranslate(this,N,j),N+=r})),i._width=Math.max(F,N)+f,i._height=j+B+y}else{var U=r.size(),V=R+d+(U-1)*m<i._maxWidth,q=0,H=0,G=0,Z=0;r.each((function(t){var e=t[0].height,r=k(t,i,g),n=V?r:D;h||(n+=m),n+f+H-m>=i._maxWidth&&(F=Math.max(F,Z),H=0,G+=q,i._height+=q,q=0),c.setTranslate(this,M[0]+f+H,M[1]+f+G+e/2+m),Z=H+r+m,H+=n,q=Math.max(q,e)})),V?(i._width=H+d,i._height=q+y):(i._width=Math.max(F,Z)+d,i._height+=q+y)}}i._width=Math.ceil(Math.max(i._width+M[0],i._titleWidth+2*(f+p.titlePad))),i._height=Math.ceil(Math.max(i._height+M[1],i._titleHeight+2*(f+p.itemGap))),i._effHeight=Math.min(i._height,i._maxHeight);var W=t._context.edits,Y=W.legendText||W.legendPosition;r.each((function(t){var e=n.select(this).select(\".\"+o+\"toggle\"),r=t[0].height,a=t[0].trace.legendgroup,s=k(t,i,g);u&&\"\"!==a&&(s=T[a]);var f=Y?g:A||s;l||h||(f+=m/2),c.setRect(e,0,-r/2,f,r)}))}(t,Z,W,f)},function(){var e,u,v,x,_=d._size,b=f.borderwidth,k=\"paper\"===f.xref,M=\"paper\"===f.yref;if(H.text&&function(t,e,r){if(\"top center\"===e.title.side||\"top right\"===e.title.side){var n=e.title.font.size*m,i=0,a=t.node(),o=c.bBox(a).width;\"top center\"===e.title.side?i=.5*(e._width-2*r-2*p.titlePad-o):\"top right\"===e.title.side&&(i=e._width-2*r-2*p.titlePad-o),h.positionText(t,r+p.titlePad+i,r+n)}}(V,f,b),!T){var S,E;S=k?_.l+_.w*f.x-g[L(f)]*f._width:d.width*f.x-g[L(f)]*f._width,E=M?_.t+_.h*(1-f.y)-g[I(f)]*f._effHeight:d.height*(1-f.y)-g[I(f)]*f._effHeight;var C=function(t,e,r,n){var i=t._fullLayout,o=i[e],s=L(o),l=I(o),c=\"paper\"===o.xref,u=\"paper\"===o.yref;t._fullLayout._reservedMargin[e]={};var h=o.y<.5?\"b\":\"t\",f=o.x<.5?\"l\":\"r\",p={r:i.width-r,l:r+o._width,b:i.height-n,t:n+o._effHeight};if(c&&u)return a.autoMargin(t,e,{x:o.x,y:o.y,l:o._width*g[s],r:o._width*y[s],b:o._effHeight*y[l],t:o._effHeight*g[l]});c?t._fullLayout._reservedMargin[e][h]=p[h]:u||\"v\"===o.orientation?t._fullLayout._reservedMargin[e][f]=p[f]:t._fullLayout._reservedMargin[e][h]=p[h]}(t,w,S,E);if(C)return;if(d.margin.autoexpand){var P=S,z=E;S=k?i.constrain(S,0,d.width-f._width):P,E=M?i.constrain(E,0,d.height-f._effHeight):z,S!==P&&i.log(\"Constrain \"+w+\".x to make legend fit inside graph\"),E!==z&&i.log(\"Constrain \"+w+\".y to make legend fit inside graph\")}c.setTranslate(N,S,E)}if(G.on(\".drag\",null),N.on(\"wheel\",null),T||f._height<=f._maxHeight||t._context.staticPlot){var O=f._effHeight;T&&(O=f._height),U.attr({width:f._width-b,height:O-b,x:b/2,y:b/2}),c.setTranslate(q,0,0),j.select(\"rect\").attr({width:f._width-2*b,height:O-2*b,x:b,y:b}),c.setClipUrl(q,r,t),c.setRect(G,0,0,0,0),delete f._scrollY}else{var D,R,F,B=Math.max(p.scrollBarMinHeight,f._effHeight*f._effHeight/f._height),Z=f._effHeight-B-2*p.scrollBarMargin,W=f._height-f._effHeight,Y=Z/W,X=Math.min(f._scrollY||0,W);U.attr({width:f._width-2*b+p.scrollBarWidth+p.scrollBarMargin,height:f._effHeight-b,x:b/2,y:b/2}),j.select(\"rect\").attr({width:f._width-2*b+p.scrollBarWidth+p.scrollBarMargin,height:f._effHeight-2*b,x:b,y:b+X}),c.setClipUrl(q,r,t),K(X,B,Y),N.on(\"wheel\",(function(){K(X=i.constrain(f._scrollY+n.event.deltaY/Z*W,0,W),B,Y),0!==X&&X!==W&&n.event.preventDefault()}));var $=n.behavior.drag().on(\"dragstart\",(function(){var t=n.event.sourceEvent;D=\"touchstart\"===t.type?t.changedTouches[0].clientY:t.clientY,F=X})).on(\"drag\",(function(){var t=n.event.sourceEvent;2===t.buttons||t.ctrlKey||(R=\"touchmove\"===t.type?t.changedTouches[0].clientY:t.clientY,X=function(t,e,r){var n=(r-e)/Y+t;return i.constrain(n,0,W)}(F,D,R),K(X,B,Y))}));G.call($);var J=n.behavior.drag().on(\"dragstart\",(function(){var t=n.event.sourceEvent;\"touchstart\"===t.type&&(D=t.changedTouches[0].clientY,F=X)})).on(\"drag\",(function(){var t=n.event.sourceEvent;\"touchmove\"===t.type&&(R=t.changedTouches[0].clientY,X=function(t,e,r){var n=(e-r)/Y+t;return i.constrain(n,0,W)}(F,D,R),K(X,B,Y))}));q.call(J)}function K(e,r,n){f._scrollY=t._fullLayout[w]._scrollY=e,c.setTranslate(q,0,-e),c.setRect(G,f._width,p.scrollBarMargin+e*n,p.scrollBarWidth,r),j.select(\"rect\").attr(\"y\",b+e)}t._context.edits.legendPosition&&(N.classed(\"cursor-move\",!0),l.init({element:N.node(),gd:t,prepFn:function(t){if(t.target!==G.node()){var e=c.getTranslate(N);v=e.x,x=e.y}},moveFn:function(t,r){if(void 0!==v&&void 0!==x){var n=v+t,i=x+r;c.setTranslate(N,n,i),e=l.align(n,f._width,_.l,_.l+_.w,f.xanchor),u=l.align(i+f._height,-f._height,_.t+_.h,_.t,f.yanchor)}},doneFn:function(){if(void 0!==e&&void 0!==u){var r={};r[w+\".x\"]=e,r[w+\".y\"]=u,o.call(\"_guiRelayout\",t,r)}},clickFn:function(e,r){var n=s.selectAll(\"g.traces\").filter((function(){var t=this.getBoundingClientRect();return r.clientX>=t.left&&r.clientX<=t.right&&r.clientY>=t.top&&r.clientY<=t.bottom}));n.size()>0&&A(t,N,n,e,r)}}))}],t)}}function k(t,e,r){var n=t[0],i=n.width,a=e.entrywidthmode,o=n.trace.legendwidth||e.entrywidth;return\"fraction\"===a?e._maxWidth*o:r+(o||i)}function A(t,e,r,n,i){var a=r.data()[0][0].trace,l={event:i,node:r.node(),curveNumber:a.index,expandedIndex:a._expandedIndex,data:t.data,layout:t.layout,frames:t._transitionData._frames,config:t._context,fullData:t._fullData,fullLayout:t._fullLayout};a._group&&(l.group=a._group),o.traceIs(a,\"pie-like\")&&(l.label=r.datum()[0].label);var c=s.triggerHandler(t,\"plotly_legendclick\",l);if(1===n){if(!1===c)return;e._clickTimeout=setTimeout((function(){t._fullLayout&&f(r,t,n)}),t._context.doubleClickDelay)}else 2===n&&(e._clickTimeout&&clearTimeout(e._clickTimeout),t._legendMouseDownTime=0,!1!==s.triggerHandler(t,\"plotly_legenddoubleclick\",l)&&!1!==c&&f(r,t,n))}function M(t,e,r){var n,a,s=P(r),l=t.data()[0][0],u=l.trace,f=o.traceIs(u,\"pie-like\"),d=!r._inHover&&e._context.edits.legendText&&!f,m=r._maxNameLength;l.groupTitle?(n=l.groupTitle.text,a=l.groupTitle.font):(a=r.font,r.entries?n=l.text:(n=f?l.label:u.name,u._meta&&(n=i.templateString(n,u._meta))));var g=i.ensureSingle(t,\"text\",s+\"text\");g.attr(\"text-anchor\",\"start\").call(c.font,a).text(d?S(n,m):n);var y=r.indentation+r.itemwidth+2*p.itemGap;h.positionText(g,y,0),d?g.call(h.makeEditable,{gd:e,text:n}).call(C,t,e,r).on(\"edit\",(function(n){this.text(S(n,m)).call(C,t,e,r);var a=l.trace._fullInput||{},s={};if(o.hasTransform(a,\"groupby\")){var c=o.getTransformIndices(a,\"groupby\"),h=c[c.length-1],f=i.keyedContainer(a,\"transforms[\"+h+\"].styles\",\"target\",\"value.name\");f.set(l.trace._group,n),s=f.constructUpdate()}else s.name=n;return a._isShape?o.call(\"_guiRelayout\",e,\"shapes[\"+u.index+\"].name\",s.name):o.call(\"_guiRestyle\",e,s,u.index)})):C(g,t,e,r)}function S(t,e){var r=Math.max(4,e);if(t&&t.trim().length>=r/2)return t;for(var n=r-(t=t||\"\").length;n>0;n--)t+=\" \";return t}function E(t,e,r){var a,o=e._context.doubleClickDelay,s=1,l=i.ensureSingle(t,\"rect\",r+\"toggle\",(function(t){e._context.staticPlot||t.style(\"cursor\",\"pointer\").attr(\"pointer-events\",\"all\"),t.call(u.fill,\"rgba(0,0,0,0)\")}));e._context.staticPlot||(l.on(\"mousedown\",(function(){(a=(new Date).getTime())-e._legendMouseDownTime<o?s+=1:(s=1,e._legendMouseDownTime=a)})),l.on(\"mouseup\",(function(){if(!e._dragged&&!e._editing){var i=e._fullLayout[r];(new Date).getTime()-e._legendMouseDownTime>o&&(s=Math.max(s-1,1)),A(e,i,t,s,n.event)}})))}function C(t,e,r,n,i){n._inHover&&t.attr(\"data-notex\",!0),h.convertToTspans(t,r,(function(){!function(t,e,r,n){var i=t.data()[0][0];if(r._inHover||!i||i.trace.showlegend){var a=t.select(\"g[class*=math-group]\"),o=a.node(),s=P(r);r||(r=e._fullLayout[s]);var l,u,f=r.borderwidth,d=(n===b?r.title.font:i.groupTitle?i.groupTitle.font:r.font).size*m;if(o){var g=c.bBox(o);l=g.height,u=g.width,n===b?c.setTranslate(a,f,f+.75*l):c.setTranslate(a,0,.25*l)}else{var y=\".\"+s+(n===b?\"title\":\"\")+\"text\",v=t.select(y),x=h.lineCount(v),_=v.node();if(l=d*x,u=_?c.bBox(_).width:0,n===b)\"left\"===r.title.side&&(u+=2*p.itemGap),h.positionText(v,f+p.titlePad,f+d);else{var w=2*p.itemGap+r.indentation+r.itemwidth;i.groupTitle&&(w=p.itemGap,u-=r.indentation+r.itemwidth),h.positionText(v,w,-d*((x-1)/2-.3))}}n===b?(r._titleWidth=u,r._titleHeight=l):(i.lineHeight=d,i.height=Math.max(l,16)+3,i.width=u)}else t.remove()}(e,r,n,i)}))}function L(t){return i.isRightAnchor(t)?\"right\":i.isCenterAnchor(t)?\"center\":\"left\"}function I(t){return i.isBottomAnchor(t)?\"bottom\":i.isMiddleAnchor(t)?\"middle\":\"top\"}function P(t){return t._id||\"legend\"}t.exports=function(t,e){if(e)T(t,e);else{var r=t._fullLayout,i=r._legends;r._infolayer.selectAll('[class^=\"legend\"]').each((function(){var t=n.select(this),e=t.attr(\"class\").split(\" \")[0];e.match(w)&&-1===i.indexOf(e)&&t.remove()}));for(var a=0;a<i.length;a++){var o=i[a];T(t,t._fullLayout[o])}}}},851:function(t,e,r){\"use strict\";var n=r(33626),i=r(57599);t.exports=function(t,e,r){var a,o,s=e._inHover,l=i.isGrouped(e),c=i.isReversed(e),u={},h=[],f=!1,p={},d=0,m=0;function g(t,n,a){if(!1!==e.visible&&(!r||t===e._id))if(\"\"!==n&&i.isGrouped(e))-1===h.indexOf(n)?(h.push(n),f=!0,u[n]=[a]):u[n].push(a);else{var o=\"~~i\"+d;h.push(o),u[o]=[a],d++}}for(a=0;a<t.length;a++){var y=t[a],v=y[0],x=v.trace,_=x.legend,b=x.legendgroup;if(s||x.visible&&x.showlegend)if(n.traceIs(x,\"pie-like\"))for(p[b]||(p[b]={}),o=0;o<y.length;o++){var w=y[o].label;p[b][w]||(g(_,b,{label:w,color:y[o].color,i:y[o].i,trace:x,pts:y[o].pts}),p[b][w]=!0,m=Math.max(m,(w||\"\").length))}else g(_,b,v),m=Math.max(m,(x.name||\"\").length)}if(!h.length)return[];var T=!f||!l,k=[];for(a=0;a<h.length;a++){var A=u[h[a]];T?k.push(A[0]):k.push(A)}for(T&&(k=[k]),a=0;a<k.length;a++){var M=1/0;for(o=0;o<k[a].length;o++){var S=k[a][o].trace.legendrank;M>S&&(M=S)}k[a][0]._groupMinRank=M,k[a][0]._preGroupSort=a}var E=function(t,e){return t.trace.legendrank-e.trace.legendrank||t._preSort-e._preSort};for(k.forEach((function(t,e){t[0]._preGroupSort=e})),k.sort((function(t,e){return t[0]._groupMinRank-e[0]._groupMinRank||t[0]._preGroupSort-e[0]._preGroupSort})),a=0;a<k.length;a++){k[a].forEach((function(t,e){t._preSort=e})),k[a].sort(E);var C=k[a][0].trace,L=null;for(o=0;o<k[a].length;o++){var I=k[a][o].trace.legendgrouptitle;if(I&&I.text){L=I,s&&(I.font=e._groupTitleFont);break}}if(c&&k[a].reverse(),L){var P=!1;for(o=0;o<k[a].length;o++)if(n.traceIs(k[a][o].trace,\"pie-like\")){P=!0;break}k[a].unshift({i:-1,groupTitle:L,noClick:P,trace:{showlegend:C.showlegend,legendgroup:C.legendgroup,visible:\"toggleitem\"===e.groupclick||C.visible}})}for(o=0;o<k[a].length;o++)k[a][o]=[k[a][o]]}return e._lgroupsLength=k.length,e._maxNameLength=m,k}},22165:function(t,e,r){\"use strict\";var n=r(33626),i=r(34809),a=i.pushUnique,o=!0;t.exports=function(t,e,r){var s=e._fullLayout;if(!e._dragged&&!e._editing){var l,c=s.legend.itemclick,u=s.legend.itemdoubleclick,h=s.legend.groupclick;if(1===r&&\"toggle\"===c&&\"toggleothers\"===u&&o&&e.data&&e._context.showTips?(i.notifier(i._(e,\"Double-click on legend to isolate one trace\"),\"long\"),o=!1):o=!1,1===r?l=c:2===r&&(l=u),l){var f=\"togglegroup\"===h,p=s.hiddenlabels?s.hiddenlabels.slice():[],d=t.data()[0][0];if(!d.groupTitle||!d.noClick){var m=e._fullData,g=(s.shapes||[]).filter((function(t){return t.showlegend})),y=m.concat(g),v=d.trace;v._isShape&&(v=v._fullInput);var x,_,b,w,T,k=v.legendgroup,A={},M=[],S=[],E=[],C=(s.shapes||[]).map((function(t){return t._input})),L=!1,I=v.legend,P=v._fullInput;if(P&&P._isShape||!n.traceIs(v,\"pie-like\")){var z,O=k&&k.length,D=[];if(O)for(x=0;x<y.length;x++)(z=y[x]).visible&&z.legendgroup===k&&D.push(x);if(\"toggle\"===l){var R;switch(v.visible){case!0:R=\"legendonly\";break;case!1:R=!1;break;case\"legendonly\":R=!0}if(O)if(f)for(x=0;x<y.length;x++){var F=y[x];!1!==F.visible&&F.legendgroup===k&&tt(F,R)}else tt(v,R);else tt(v,R)}else if(\"toggleothers\"===l){var B,N,j,U,V=!0;for(x=0;x<y.length;x++)if(B=(U=y[x])===v,N=!0!==U.showlegend,!(B||N||O&&U.legendgroup===k||U.legend!==I||!0!==U.visible||n.traceIs(U,\"notLegendIsolatable\"))){V=!1;break}for(x=0;x<y.length;x++)if(!1!==(U=y[x]).visible&&U.legend===I&&!n.traceIs(U,\"notLegendIsolatable\"))switch(v.visible){case\"legendonly\":tt(U,!0);break;case!0:j=!!V||\"legendonly\",B=U===v,N=!0!==U.showlegend&&!U.legendgroup,tt(U,!!(B||O&&U.legendgroup===k||N)||j)}}for(x=0;x<S.length;x++)if(b=S[x]){var q=b.constructUpdate(),H=Object.keys(q);for(_=0;_<H.length;_++)w=H[_],(A[w]=A[w]||[])[E[x]]=q[w]}for(T=Object.keys(A),x=0;x<T.length;x++)for(w=T[x],_=0;_<M.length;_++)A[w].hasOwnProperty(_)||(A[w][_]=void 0);L?n.call(\"_guiUpdate\",e,A,{shapes:C},M):n.call(\"_guiRestyle\",e,A,M)}else{var G=d.label,Z=p.indexOf(G);if(\"toggle\"===l)-1===Z?p.push(G):p.splice(Z,1);else if(\"toggleothers\"===l){var W=-1!==Z,Y=[];for(x=0;x<e.calcdata.length;x++){var X=e.calcdata[x];for(_=0;_<X.length;_++){var $=X[_].label;I===X[0].trace.legend&&G!==$&&(-1===p.indexOf($)&&(W=!0),a(p,$),Y.push($))}}if(!W)for(var J=0;J<Y.length;J++){var K=p.indexOf(Y[J]);-1!==K&&p.splice(K,1)}}n.call(\"_guiRelayout\",e,\"hiddenlabels\",p)}}}}function Q(t,e){var r=M.indexOf(t),n=A.visible;return n||(n=A.visible=[]),-1===M.indexOf(t)&&(M.push(t),r=M.length-1),n[r]=e,r}function tt(t,e){if(!d.groupTitle||f){var r,a=t._fullInput||t,o=a._isShape,s=a.index;if(void 0===s&&(s=a._index),n.hasTransform(a,\"groupby\")){var l=S[s];if(!l){var c=n.getTransformIndices(a,\"groupby\"),u=c[c.length-1];l=i.keyedContainer(a,\"transforms[\"+u+\"].styles\",\"target\",\"value.visible\"),S[s]=l}var h=l.get(t._group);void 0===h&&(h=!0),!1!==h&&l.set(t._group,e),E[s]=Q(s,!1!==a.visible)}else{var p=!1!==a.visible&&e;o?(r=p,C[s].visible=r,L=!0):Q(s,p)}}}}},57599:function(t,e){\"use strict\";e.isGrouped=function(t){return-1!==(t.traceorder||\"\").indexOf(\"grouped\")},e.isVertical=function(t){return\"h\"!==t.orientation},e.isReversed=function(t){return-1!==(t.traceorder||\"\").indexOf(\"reversed\")}},82494:function(t,e,r){\"use strict\";t.exports={moduleType:\"component\",name:\"legend\",layoutAttributes:r(86405),supplyLayoutDefaults:r(73970),draw:r(6134),style:r(14375)}},14375:function(t,e,r){\"use strict\";var n=r(45568),i=r(33626),a=r(34809),o=a.strTranslate,s=r(62203),l=r(78766),c=r(65477).extractOpts,u=r(64726),h=r(32891),f=r(37252).castOption,p=r(72783);function d(t,e){return(e?\"radial\":\"horizontal\")+(t?\"\":\"reversed\")}function m(t){var e=t[0].trace,r=e.contours,n=u.hasLines(e),i=u.hasMarkers(e),a=e.visible&&e.fill&&\"none\"!==e.fill,o=!1,s=!1;if(r){var l=r.coloring;\"lines\"===l?o=!0:n=\"none\"===l||\"heatmap\"===l||r.showlines,\"constraint\"===r.type?a=\"=\"!==r._operation:\"fill\"!==l&&\"heatmap\"!==l||(s=!0)}return{showMarker:i,showLine:n,showFill:a,showGradientLine:o,showGradientFill:s,anyLine:n||o,anyFill:a||s}}function g(t,e,r){return t&&a.isArrayOrTypedArray(t)?e:t>r?r:t}t.exports=function(t,e,r){var y=e._fullLayout;r||(r=y.legend);var v=\"constant\"===r.itemsizing,x=r.itemwidth,_=(x+2*p.itemGap)/2,b=o(_,0),w=function(t,e,r,n){var i;if(t+1)i=t;else{if(!(e&&e.width>0))return 0;i=e.width}return v?n:Math.min(i,r)};function T(t,a,o){var u=t[0].trace,h=u.marker||{},f=h.line||{},p=h.cornerradius?\"M6,3a3,3,0,0,1-3,3H-3a3,3,0,0,1-3-3V-3a3,3,0,0,1,3-3H3a3,3,0,0,1,3,3Z\":\"M6,6H-6V-6H6Z\",d=o?u.visible&&u.type===o:i.traceIs(u,\"bar\"),m=n.select(a).select(\"g.legendpoints\").selectAll(\"path.legend\"+o).data(d?[t]:[]);m.enter().append(\"path\").classed(\"legend\"+o,!0).attr(\"d\",p).attr(\"transform\",b),m.exit().remove(),m.each((function(t){var i=n.select(this),a=t[0],o=w(a.mlw,h.line,5,2);i.style(\"stroke-width\",o+\"px\");var p=a.mcc;if(!r._inHover&&\"mc\"in a){var d=c(h),m=d.mid;void 0===m&&(m=(d.max+d.min)/2),p=s.tryColorscale(h,\"\")(m)}var y=p||a.mc||h.color,v=h.pattern,x=v&&s.getPatternAttr(v.shape,0,\"\");if(x){var _=s.getPatternAttr(v.bgcolor,0,null),b=s.getPatternAttr(v.fgcolor,0,null),T=v.fgopacity,k=g(v.size,8,10),A=g(v.solidity,.5,1),M=\"legend-\"+u.uid;i.call(s.pattern,\"legend\",e,M,x,k,A,p,v.fillmode,_,b,T)}else i.call(l.fill,y);o&&l.stroke(i,a.mlc||f.color)}))}function k(t,r,o){var s=t[0],l=s.trace,c=o?l.visible&&l.type===o:i.traceIs(l,o),u=n.select(r).select(\"g.legendpoints\").selectAll(\"path.legend\"+o).data(c?[t]:[]);if(u.enter().append(\"path\").classed(\"legend\"+o,!0).attr(\"d\",\"M6,6H-6V-6H6Z\").attr(\"transform\",b),u.exit().remove(),u.size()){var p=l.marker||{},d=w(f(p.line.width,s.pts),p.line,5,2),m=\"pieLike\",g=a.minExtend(l,{marker:{line:{width:d}}},m),y=a.minExtend(s,{trace:g},m);h(u,y,g,e)}}t.each((function(t){var e=n.select(this),i=a.ensureSingle(e,\"g\",\"layers\");i.style(\"opacity\",t[0].trace.opacity);var s=r.indentation,l=r.valign,c=t[0].lineHeight,u=t[0].height;if(\"middle\"===l&&0===s||!c||!u)i.attr(\"transform\",null);else{var h={top:1,bottom:-1}[l]*(.5*(c-u+3))||0,f=r.indentation;i.attr(\"transform\",o(f,h))}i.selectAll(\"g.legendfill\").data([t]).enter().append(\"g\").classed(\"legendfill\",!0),i.selectAll(\"g.legendlines\").data([t]).enter().append(\"g\").classed(\"legendlines\",!0);var p=i.selectAll(\"g.legendsymbols\").data([t]);p.enter().append(\"g\").classed(\"legendsymbols\",!0),p.selectAll(\"g.legendpoints\").data([t]).enter().append(\"g\").classed(\"legendpoints\",!0)})).each((function(t){var r,i=t[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\":case\"choroplethmap\":o=[[\"M-6,-6V6H6V-6Z\"]],r=!0;break;case\"densitymapbox\":case\"densitymap\":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 u=n.select(this).select(\"g.legendpoints\").selectAll(\"path.legend3dandfriends\").data(o);u.enter().append(\"path\").classed(\"legend3dandfriends\",!0).attr(\"transform\",b).style(\"stroke-miterlimit\",1),u.exit().remove(),u.each((function(t,o){var u,h=n.select(this),f=c(i),p=f.colorscale,m=f.reversescale;if(p){if(!r){var g=p.length;u=0===o?p[m?g-1:0][1]:1===o?p[m?0:g-1][1]:p[Math.floor((g-1)/2)][1]}}else{var y=i.vertexcolor||i.facecolor||i.color;u=a.isArrayOrTypedArray(y)?y[o]||y[0]:y}h.attr(\"d\",t[0]),u?h.call(l.fill,u):h.call((function(t){if(t.size()){var n=\"legendfill-\"+i.uid;s.gradient(t,e,n,d(m,\"radial\"===r),p,\"fill\")}}))}))})).each((function(t){var e=t[0].trace,r=\"waterfall\"===e.type;if(t[0]._distinct&&r){var i=t[0].trace[t[0].dir].marker;return t[0].mc=i.color,t[0].mlw=i.line.width,t[0].mlc=i.line.color,T(t,this,\"waterfall\")}var a=[];e.visible&&r&&(a=t[0].hasTotals?[[\"increasing\",\"M-6,-6V6H0Z\"],[\"totals\",\"M6,6H0L-6,-6H-0Z\"],[\"decreasing\",\"M6,6V-6H0Z\"]]:[[\"increasing\",\"M-6,-6V6H6Z\"],[\"decreasing\",\"M6,6V-6H-6Z\"]]);var o=n.select(this).select(\"g.legendpoints\").selectAll(\"path.legendwaterfall\").data(a);o.enter().append(\"path\").classed(\"legendwaterfall\",!0).attr(\"transform\",b).style(\"stroke-miterlimit\",1),o.exit().remove(),o.each((function(t){var r=n.select(this),i=e[t[0]].marker,a=w(void 0,i.line,5,2);r.attr(\"d\",t[1]).style(\"stroke-width\",a+\"px\").call(l.fill,i.color),a&&r.call(l.stroke,i.line.color)}))})).each((function(t){T(t,this,\"funnel\")})).each((function(t){T(t,this)})).each((function(t){var r=t[0].trace,o=n.select(this).select(\"g.legendpoints\").selectAll(\"path.legendbox\").data(r.visible&&i.traceIs(r,\"box-violin\")?[t]:[]);o.enter().append(\"path\").classed(\"legendbox\",!0).attr(\"d\",\"M6,6H-6V-6H6Z\").attr(\"transform\",b),o.exit().remove(),o.each((function(){var t=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);t.style(\"stroke-width\",i+\"px\").call(l.fill,r.fillcolor),i&&l.stroke(t,r.line.color)}else{var c=a.minExtend(r,{marker:{size:v?12:a.constrain(r.marker.size,2,16),sizeref:1,sizemin:1,sizemode:\"diameter\"}});o.call(s.pointStyle,c,e)}}))})).each((function(t){k(t,this,\"funnelarea\")})).each((function(t){k(t,this,\"pie\")})).each((function(t){var r,i,o=m(t),l=o.showFill,h=o.showLine,f=o.showGradientLine,p=o.showGradientFill,g=o.anyFill,y=o.anyLine,v=t[0],_=v.trace,b=c(_),T=b.colorscale,k=b.reversescale,A=u.hasMarkers(_)||!g?\"M5,0\":y?\"M5,-2\":\"M5,-3\",M=n.select(this),S=M.select(\".legendfill\").selectAll(\"path\").data(l||p?[t]:[]);if(S.enter().append(\"path\").classed(\"js-fill\",!0),S.exit().remove(),S.attr(\"d\",A+\"h\"+x+\"v6h-\"+x+\"z\").call((function(t){if(t.size())if(l)s.fillGroupStyle(t,e,!0);else{var r=\"legendfill-\"+_.uid;s.gradient(t,e,r,d(k),T,\"fill\")}})),h||f){var E=w(void 0,_.line,10,5);i=a.minExtend(_,{line:{width:E}}),r=[a.minExtend(v,{trace:i})]}var C=M.select(\".legendlines\").selectAll(\"path\").data(h||f?[r]:[]);C.enter().append(\"path\").classed(\"js-line\",!0),C.exit().remove(),C.attr(\"d\",A+(f?\"l\"+x+\",0.0001\":\"h\"+x)).call(h?s.lineGroupStyle:function(t){if(t.size()){var r=\"legendline-\"+_.uid;s.lineGroupStyle(t),s.gradient(t,e,r,d(k),T,\"stroke\")}})})).each((function(t){var r,i,o=m(t),l=o.anyFill,c=o.anyLine,h=o.showLine,f=o.showMarker,p=t[0],d=p.trace,g=!f&&!c&&!l&&u.hasText(d);function y(t,e,r,n){var i=a.nestedProperty(d,t).get(),o=a.isArrayOrTypedArray(i)&&e?e(i):i;if(v&&o&&void 0!==n&&(o=n),r){if(o<r[0])return r[0];if(o>r[1])return r[1]}return o}function x(t){return p._distinct&&p.index&&t[p.index]?t[p.index]:t[0]}if(f||g||h){var _={},w={};if(f){_.mc=y(\"marker.color\",x),_.mx=y(\"marker.symbol\",x),_.mo=y(\"marker.opacity\",a.mean,[.2,1]),_.mlc=y(\"marker.line.color\",x),_.mlw=y(\"marker.line.width\",a.mean,[0,5],2),w.marker={sizeref:1,sizemin:1,sizemode:\"diameter\"};var T=y(\"marker.size\",a.mean,[2,16],12);_.ms=T,w.marker.size=T}h&&(w.line={width:y(\"line.width\",x,[0,10],5)}),g&&(_.tx=\"Aa\",_.tp=y(\"textposition\",x),_.ts=10,_.tc=y(\"textfont.color\",x),_.tf=y(\"textfont.family\",x),_.tw=y(\"textfont.weight\",x),_.ty=y(\"textfont.style\",x),_.tv=y(\"textfont.variant\",x),_.tC=y(\"textfont.textcase\",x),_.tE=y(\"textfont.lineposition\",x),_.tS=y(\"textfont.shadow\",x)),r=[a.minExtend(p,_)],(i=a.minExtend(d,w)).selectedpoints=null,i.texttemplate=null}var k=n.select(this).select(\"g.legendpoints\"),A=k.selectAll(\"path.scatterpts\").data(f?r:[]);A.enter().insert(\"path\",\":first-child\").classed(\"scatterpts\",!0).attr(\"transform\",b),A.exit().remove(),A.call(s.pointStyle,i,e),f&&(r[0].mrc=3);var M=k.selectAll(\"g.pointtext\").data(g?r:[]);M.enter().append(\"g\").classed(\"pointtext\",!0).append(\"text\").attr(\"transform\",b),M.exit().remove(),M.selectAll(\"text\").call(s.textPointStyle,i,e)})).each((function(t){var e=t[0].trace,r=n.select(this).select(\"g.legendpoints\").selectAll(\"path.legendcandle\").data(e.visible&&\"candlestick\"===e.type?[t,t]:[]);r.enter().append(\"path\").classed(\"legendcandle\",!0).attr(\"d\",(function(t,e){return e?\"M-15,0H-8M-8,6V-6H8Z\":\"M15,0H8M8,-6V6H-8Z\"})).attr(\"transform\",b).style(\"stroke-miterlimit\",1),r.exit().remove(),r.each((function(t,r){var i=n.select(this),a=e[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(t){var e=t[0].trace,r=n.select(this).select(\"g.legendpoints\").selectAll(\"path.legendohlc\").data(e.visible&&\"ohlc\"===e.type?[t,t]:[]);r.enter().append(\"path\").classed(\"legendohlc\",!0).attr(\"d\",(function(t,e){return e?\"M-15,0H0M-8,-6V0\":\"M15,0H0M8,6V0\"})).attr(\"transform\",b).style(\"stroke-miterlimit\",1),r.exit().remove(),r.each((function(t,r){var i=n.select(this),a=e[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)}))}))}},50308:function(t,e,r){\"use strict\";r(87632),t.exports={editType:\"modebar\",orientation:{valType:\"enumerated\",values:[\"v\",\"h\"],dflt:\"h\",editType:\"modebar\"},bgcolor:{valType:\"color\",editType:\"modebar\"},color:{valType:\"color\",editType:\"modebar\"},activecolor:{valType:\"color\",editType:\"modebar\"},uirevision:{valType:\"any\",editType:\"none\"},add:{valType:\"string\",arrayOk:!0,dflt:\"\",editType:\"modebar\"},remove:{valType:\"string\",arrayOk:!0,dflt:\"\",editType:\"modebar\"}}},5832:function(t,e,r){\"use strict\";var n=r(33626),i=r(44122),a=r(5975),o=r(35188),s=r(28231).eraseActiveShape,l=r(34809),c=l._,u=t.exports={};function h(t,e){var r,i,o=e.currentTarget,s=o.getAttribute(\"data-attr\"),l=o.getAttribute(\"data-val\")||!0,c=t._fullLayout,u={},h=a.list(t,null,!0),f=c._cartesianSpikesEnabled;if(\"zoom\"===s){var p,d=\"in\"===l?.5:2,m=(1+d)/2,g=(1-d)/2;for(i=0;i<h.length;i++)if(!(r=h[i]).fixedrange)if(p=r._name,\"auto\"===l)u[p+\".autorange\"]=!0;else if(\"reset\"===l)void 0===r._rangeInitial0&&void 0===r._rangeInitial1?u[p+\".autorange\"]=!0:void 0===r._rangeInitial0?(u[p+\".autorange\"]=r._autorangeInitial,u[p+\".range\"]=[null,r._rangeInitial1]):void 0===r._rangeInitial1?(u[p+\".range\"]=[r._rangeInitial0,null],u[p+\".autorange\"]=r._autorangeInitial):u[p+\".range\"]=[r._rangeInitial0,r._rangeInitial1],void 0!==r._showSpikeInitial&&(u[p+\".showspikes\"]=r._showSpikeInitial,\"on\"!==f||r._showSpikeInitial||(f=\"off\"));else{var y=[r.r2l(r.range[0]),r.r2l(r.range[1])],v=[m*y[0]+g*y[1],m*y[1]+g*y[0]];u[p+\".range[0]\"]=r.l2r(v[0]),u[p+\".range[1]\"]=r.l2r(v[1])}}else\"hovermode\"!==s||\"x\"!==l&&\"y\"!==l||(l=c._isHoriz?\"y\":\"x\",o.setAttribute(\"data-val\",l)),u[s]=l;c._cartesianSpikesEnabled=f,n.call(\"_guiRelayout\",t,u)}function f(t,e){for(var r=e.currentTarget,i=r.getAttribute(\"data-attr\"),a=r.getAttribute(\"data-val\")||!0,o=t._fullLayout._subplots.gl3d||[],s={},l=i.split(\".\"),c=0;c<o.length;c++)s[o[c]+\".\"+l[1]]=a;var u=\"pan\"===a?a:\"zoom\";s.dragmode=u,n.call(\"_guiRelayout\",t,s)}function p(t,e){for(var r=e.currentTarget.getAttribute(\"data-attr\"),i=\"resetLastSave\"===r,a=\"resetDefault\"===r,o=t._fullLayout,s=o._subplots.gl3d||[],l={},c=0;c<s.length;c++){var u,h=s[c],f=h+\".camera\",p=h+\".aspectratio\",d=h+\".aspectmode\",m=o[h]._scene;i?(l[f+\".up\"]=m.viewInitial.up,l[f+\".eye\"]=m.viewInitial.eye,l[f+\".center\"]=m.viewInitial.center,u=!0):a&&(l[f+\".up\"]=null,l[f+\".eye\"]=null,l[f+\".center\"]=null,u=!0),u&&(l[p+\".x\"]=m.viewInitial.aspectratio.x,l[p+\".y\"]=m.viewInitial.aspectratio.y,l[p+\".z\"]=m.viewInitial.aspectratio.z,l[d]=m.viewInitial.aspectmode)}n.call(\"_guiRelayout\",t,l)}function d(t,e){var r=e.currentTarget,n=r._previousVal,i=t._fullLayout,a=i._subplots.gl3d||[],o=[\"xaxis\",\"yaxis\",\"zaxis\"],s={},l={};if(n)l=n,r._previousVal=null;else{for(var c=0;c<a.length;c++){var u=a[c],h=i[u],f=u+\".hovermode\";s[f]=h.hovermode,l[f]=!1;for(var p=0;p<3;p++){var d=o[p],m=u+\".\"+d+\".showspikes\";l[m]=!1,s[m]=h[d].showspikes}}r._previousVal=s}return l}function m(t,e){for(var r=e.currentTarget,i=r.getAttribute(\"data-attr\"),a=r.getAttribute(\"data-val\")||!0,o=t._fullLayout,s=o._subplots.geo||[],l=0;l<s.length;l++){var c=s[l],u=o[c];if(\"zoom\"===i){var h=u.projection.scale,f=\"in\"===a?2*h:.5*h;n.call(\"_guiRelayout\",t,c+\".projection.scale\",f)}}\"reset\"===i&&b(t,\"geo\")}function g(t){var e=t._fullLayout;return!e.hovermode&&(e._has(\"cartesian\")?e._isHoriz?\"y\":\"x\":\"closest\")}function y(t){var e=g(t);n.call(\"_guiRelayout\",t,\"hovermode\",e)}function v(t,e){_(t,e,\"mapbox\")}function x(t,e){_(t,e,\"map\")}function _(t,e,r){for(var i=e.currentTarget.getAttribute(\"data-val\"),a=t._fullLayout,o=a._subplots[r]||[],s={},l=0;l<o.length;l++){var c=o[l],u=a[c].zoom,h=\"in\"===i?1.05*u:u/1.05;s[c+\".zoom\"]=h}n.call(\"_guiRelayout\",t,s)}function b(t,e){for(var r=t._fullLayout,i=r._subplots[e]||[],a={},o=0;o<i.length;o++)for(var s=i[o],l=r[s]._subplot.viewInitial,c=Object.keys(l),u=0;u<c.length;u++){var h=c[u];a[s+\".\"+h]=l[h]}n.call(\"_guiRelayout\",t,a)}u.toImage={name:\"toImage\",title:function(t){var e=(t._context.toImageButtonOptions||{}).format||\"png\";return c(t,\"png\"===e?\"Download plot as a png\":\"Download plot\")},icon:o.camera,click:function(t){var e=t._context.toImageButtonOptions,r={format:e.format||\"png\"};l.notifier(c(t,\"Taking snapshot - this may take a few seconds\"),\"long\"),\"svg\"!==r.format&&l.isIE()&&(l.notifier(c(t,\"IE only supports svg. Changing format to svg.\"),\"long\"),r.format=\"svg\"),[\"filename\",\"width\",\"height\",\"scale\"].forEach((function(t){t in e&&(r[t]=e[t])})),n.call(\"downloadImage\",t,r).then((function(e){l.notifier(c(t,\"Snapshot succeeded\")+\" - \"+e,\"long\")})).catch((function(){l.notifier(c(t,\"Sorry, there was a problem downloading your snapshot!\"),\"long\")}))}},u.sendDataToCloud={name:\"sendDataToCloud\",title:function(t){return c(t,\"Edit in Chart Studio\")},icon:o.disk,click:function(t){i.sendDataToCloud(t)}},u.editInChartStudio={name:\"editInChartStudio\",title:function(t){return c(t,\"Edit in Chart Studio\")},icon:o.pencil,click:function(t){i.sendDataToCloud(t)}},u.zoom2d={name:\"zoom2d\",_cat:\"zoom\",title:function(t){return c(t,\"Zoom\")},attr:\"dragmode\",val:\"zoom\",icon:o.zoombox,click:h},u.pan2d={name:\"pan2d\",_cat:\"pan\",title:function(t){return c(t,\"Pan\")},attr:\"dragmode\",val:\"pan\",icon:o.pan,click:h},u.select2d={name:\"select2d\",_cat:\"select\",title:function(t){return c(t,\"Box Select\")},attr:\"dragmode\",val:\"select\",icon:o.selectbox,click:h},u.lasso2d={name:\"lasso2d\",_cat:\"lasso\",title:function(t){return c(t,\"Lasso Select\")},attr:\"dragmode\",val:\"lasso\",icon:o.lasso,click:h},u.drawclosedpath={name:\"drawclosedpath\",title:function(t){return c(t,\"Draw closed freeform\")},attr:\"dragmode\",val:\"drawclosedpath\",icon:o.drawclosedpath,click:h},u.drawopenpath={name:\"drawopenpath\",title:function(t){return c(t,\"Draw open freeform\")},attr:\"dragmode\",val:\"drawopenpath\",icon:o.drawopenpath,click:h},u.drawline={name:\"drawline\",title:function(t){return c(t,\"Draw line\")},attr:\"dragmode\",val:\"drawline\",icon:o.drawline,click:h},u.drawrect={name:\"drawrect\",title:function(t){return c(t,\"Draw rectangle\")},attr:\"dragmode\",val:\"drawrect\",icon:o.drawrect,click:h},u.drawcircle={name:\"drawcircle\",title:function(t){return c(t,\"Draw circle\")},attr:\"dragmode\",val:\"drawcircle\",icon:o.drawcircle,click:h},u.eraseshape={name:\"eraseshape\",title:function(t){return c(t,\"Erase active shape\")},icon:o.eraseshape,click:s},u.zoomIn2d={name:\"zoomIn2d\",_cat:\"zoomin\",title:function(t){return c(t,\"Zoom in\")},attr:\"zoom\",val:\"in\",icon:o.zoom_plus,click:h},u.zoomOut2d={name:\"zoomOut2d\",_cat:\"zoomout\",title:function(t){return c(t,\"Zoom out\")},attr:\"zoom\",val:\"out\",icon:o.zoom_minus,click:h},u.autoScale2d={name:\"autoScale2d\",_cat:\"autoscale\",title:function(t){return c(t,\"Autoscale\")},attr:\"zoom\",val:\"auto\",icon:o.autoscale,click:h},u.resetScale2d={name:\"resetScale2d\",_cat:\"resetscale\",title:function(t){return c(t,\"Reset axes\")},attr:\"zoom\",val:\"reset\",icon:o.home,click:h},u.hoverClosestCartesian={name:\"hoverClosestCartesian\",_cat:\"hoverclosest\",title:function(t){return c(t,\"Show closest data on hover\")},attr:\"hovermode\",val:\"closest\",icon:o.tooltip_basic,gravity:\"ne\",click:h},u.hoverCompareCartesian={name:\"hoverCompareCartesian\",_cat:\"hoverCompare\",title:function(t){return c(t,\"Compare data on hover\")},attr:\"hovermode\",val:function(t){return t._fullLayout._isHoriz?\"y\":\"x\"},icon:o.tooltip_compare,gravity:\"ne\",click:h},u.zoom3d={name:\"zoom3d\",_cat:\"zoom\",title:function(t){return c(t,\"Zoom\")},attr:\"scene.dragmode\",val:\"zoom\",icon:o.zoombox,click:f},u.pan3d={name:\"pan3d\",_cat:\"pan\",title:function(t){return c(t,\"Pan\")},attr:\"scene.dragmode\",val:\"pan\",icon:o.pan,click:f},u.orbitRotation={name:\"orbitRotation\",title:function(t){return c(t,\"Orbital rotation\")},attr:\"scene.dragmode\",val:\"orbit\",icon:o[\"3d_rotate\"],click:f},u.tableRotation={name:\"tableRotation\",title:function(t){return c(t,\"Turntable rotation\")},attr:\"scene.dragmode\",val:\"turntable\",icon:o[\"z-axis\"],click:f},u.resetCameraDefault3d={name:\"resetCameraDefault3d\",_cat:\"resetCameraDefault\",title:function(t){return c(t,\"Reset camera to default\")},attr:\"resetDefault\",icon:o.home,click:p},u.resetCameraLastSave3d={name:\"resetCameraLastSave3d\",_cat:\"resetCameraLastSave\",title:function(t){return c(t,\"Reset camera to last save\")},attr:\"resetLastSave\",icon:o.movie,click:p},u.hoverClosest3d={name:\"hoverClosest3d\",_cat:\"hoverclosest\",title:function(t){return c(t,\"Toggle show closest data on hover\")},attr:\"hovermode\",val:null,toggle:!0,icon:o.tooltip_basic,gravity:\"ne\",click:function(t,e){var r=d(t,e);n.call(\"_guiRelayout\",t,r)}},u.zoomInGeo={name:\"zoomInGeo\",_cat:\"zoomin\",title:function(t){return c(t,\"Zoom in\")},attr:\"zoom\",val:\"in\",icon:o.zoom_plus,click:m},u.zoomOutGeo={name:\"zoomOutGeo\",_cat:\"zoomout\",title:function(t){return c(t,\"Zoom out\")},attr:\"zoom\",val:\"out\",icon:o.zoom_minus,click:m},u.resetGeo={name:\"resetGeo\",_cat:\"reset\",title:function(t){return c(t,\"Reset\")},attr:\"reset\",val:null,icon:o.autoscale,click:m},u.hoverClosestGeo={name:\"hoverClosestGeo\",_cat:\"hoverclosest\",title:function(t){return c(t,\"Toggle show closest data on hover\")},attr:\"hovermode\",val:null,toggle:!0,icon:o.tooltip_basic,gravity:\"ne\",click:y},u.hoverClosestGl2d={name:\"hoverClosestGl2d\",_cat:\"hoverclosest\",title:function(t){return c(t,\"Toggle show closest data on hover\")},attr:\"hovermode\",val:null,toggle:!0,icon:o.tooltip_basic,gravity:\"ne\",click:y},u.hoverClosestPie={name:\"hoverClosestPie\",_cat:\"hoverclosest\",title:function(t){return c(t,\"Toggle show closest data on hover\")},attr:\"hovermode\",val:\"closest\",icon:o.tooltip_basic,gravity:\"ne\",click:y},u.resetViewSankey={name:\"resetSankeyGroup\",title:function(t){return c(t,\"Reset view\")},icon:o.home,click:function(t){for(var e={\"node.groups\":[],\"node.x\":[],\"node.y\":[]},r=0;r<t._fullData.length;r++){var i=t._fullData[r]._viewInitial;e[\"node.groups\"].push(i.node.groups.slice()),e[\"node.x\"].push(i.node.x.slice()),e[\"node.y\"].push(i.node.y.slice())}n.call(\"restyle\",t,e)}},u.toggleHover={name:\"toggleHover\",title:function(t){return c(t,\"Toggle show closest data on hover\")},attr:\"hovermode\",val:null,toggle:!0,icon:o.tooltip_basic,gravity:\"ne\",click:function(t,e){var r=d(t,e);r.hovermode=g(t),n.call(\"_guiRelayout\",t,r)}},u.resetViews={name:\"resetViews\",title:function(t){return c(t,\"Reset views\")},icon:o.home,click:function(t,e){var r=e.currentTarget;r.setAttribute(\"data-attr\",\"zoom\"),r.setAttribute(\"data-val\",\"reset\"),h(t,e),r.setAttribute(\"data-attr\",\"resetLastSave\"),p(t,e),b(t,\"geo\"),b(t,\"mapbox\"),b(t,\"map\")}},u.toggleSpikelines={name:\"toggleSpikelines\",title:function(t){return c(t,\"Toggle Spike Lines\")},icon:o.spikeline,attr:\"_cartesianSpikesEnabled\",val:\"on\",click:function(t){var e=t._fullLayout,r=e._cartesianSpikesEnabled;e._cartesianSpikesEnabled=\"on\"===r?\"off\":\"on\",n.call(\"_guiRelayout\",t,function(t){for(var e=\"on\"===t._fullLayout._cartesianSpikesEnabled,r=a.list(t,null,!0),n={},i=0;i<r.length;i++){var o=r[i];n[o._name+\".showspikes\"]=!!e||o._showSpikeInitial}return n}(t))}},u.resetViewMapbox={name:\"resetViewMapbox\",_cat:\"resetView\",title:function(t){return c(t,\"Reset view\")},attr:\"reset\",icon:o.home,click:function(t){b(t,\"mapbox\")}},u.resetViewMap={name:\"resetViewMap\",_cat:\"resetView\",title:function(t){return c(t,\"Reset view\")},attr:\"reset\",icon:o.home,click:function(t){b(t,\"map\")}},u.zoomInMapbox={name:\"zoomInMapbox\",_cat:\"zoomin\",title:function(t){return c(t,\"Zoom in\")},attr:\"zoom\",val:\"in\",icon:o.zoom_plus,click:v},u.zoomInMap={name:\"zoomInMap\",_cat:\"zoomin\",title:function(t){return c(t,\"Zoom in\")},attr:\"zoom\",val:\"in\",icon:o.zoom_plus,click:x},u.zoomOutMapbox={name:\"zoomOutMapbox\",_cat:\"zoomout\",title:function(t){return c(t,\"Zoom out\")},attr:\"zoom\",val:\"out\",icon:o.zoom_minus,click:v},u.zoomOutMap={name:\"zoomOutMap\",_cat:\"zoomout\",title:function(t){return c(t,\"Zoom out\")},attr:\"zoom\",val:\"out\",icon:o.zoom_minus,click:x}},87632:function(t,e,r){\"use strict\";var n=r(5832),i=Object.keys(n),a=[\"drawline\",\"drawopenpath\",\"drawclosedpath\",\"drawcircle\",\"drawrect\",\"eraseshape\"],o=[\"v1hovermode\",\"hoverclosest\",\"hovercompare\",\"togglehover\",\"togglespikelines\"].concat(a),s=[];i.forEach((function(t){!function(t){if(-1===o.indexOf(t._cat||t.name)){var e=t.name,r=(t._cat||t.name).toLowerCase();-1===s.indexOf(e)&&s.push(e),-1===s.indexOf(r)&&s.push(r)}}(n[t])})),s.sort(),t.exports={DRAW_MODES:a,backButtons:o,foreButtons:s}},17683:function(t,e,r){\"use strict\";var n=r(34809),i=r(78766),a=r(78032),o=r(50308);t.exports=function(t,e){var r=t.modebar||{},s=a.newContainer(e,\"modebar\");function l(t,e){return n.coerce(r,s,o,t,e)}l(\"orientation\"),l(\"bgcolor\",i.addOpacity(e.paper_bgcolor,.5));var c=i.contrast(i.rgb(e.modebar.bgcolor));l(\"color\",i.addOpacity(c,.3)),l(\"activecolor\",i.addOpacity(c,.7)),l(\"uirevision\",e.uirevision),l(\"add\"),l(\"remove\")}},95433:function(t,e,r){\"use strict\";t.exports={moduleType:\"component\",name:\"modebar\",layoutAttributes:r(50308),supplyLayoutDefaults:r(17683),manage:r(75442)}},75442:function(t,e,r){\"use strict\";var n=r(5975),i=r(64726),a=r(33626),o=r(36040).isUnifiedHover,s=r(85393),l=r(5832),c=r(87632).DRAW_MODES,u=r(34809).extendDeep;t.exports=function(t){var e=t._fullLayout,r=t._context,h=e._modeBar;if(r.displayModeBar||r.watermark){if(!Array.isArray(r.modeBarButtonsToRemove))throw new Error([\"*modeBarButtonsToRemove* configuration options\",\"must be an array.\"].join(\" \"));if(!Array.isArray(r.modeBarButtonsToAdd))throw new Error([\"*modeBarButtonsToAdd* configuration options\",\"must be an array.\"].join(\" \"));var f,p=r.modeBarButtons;f=Array.isArray(p)&&p.length?function(t){for(var e=u([],t),r=0;r<e.length;r++)for(var n=e[r],i=0;i<n.length;i++){var a=n[i];if(\"string\"==typeof a){if(void 0===l[a])throw new Error([\"*modeBarButtons* configuration options\",\"invalid button name\"].join(\" \"));e[r][i]=l[a]}}return e}(p):!r.displayModeBar&&r.watermark?[]:function(t){var e=t._fullLayout,r=t._fullData,s=t._context;function u(t,e){if(\"string\"==typeof e){if(e.toLowerCase()===t.toLowerCase())return!0}else{var r=e.name,n=e._cat||e.name;if(r===t||n===t.toLowerCase())return!0}return!1}var h=e.modebar.add;\"string\"==typeof h&&(h=[h]);var f=e.modebar.remove;\"string\"==typeof f&&(f=[f]);var p=s.modeBarButtonsToAdd.concat(h.filter((function(t){for(var e=0;e<s.modeBarButtonsToRemove.length;e++)if(u(t,s.modeBarButtonsToRemove[e]))return!1;return!0}))),d=s.modeBarButtonsToRemove.concat(f.filter((function(t){for(var e=0;e<s.modeBarButtonsToAdd.length;e++)if(u(t,s.modeBarButtonsToAdd[e]))return!1;return!0}))),m=e._has(\"cartesian\"),g=e._has(\"gl3d\"),y=e._has(\"geo\"),v=e._has(\"pie\"),x=e._has(\"funnelarea\"),_=e._has(\"gl2d\"),b=e._has(\"ternary\"),w=e._has(\"mapbox\"),T=e._has(\"map\"),k=e._has(\"polar\"),A=e._has(\"smith\"),M=e._has(\"sankey\"),S=function(t){for(var e=n.list({_fullLayout:t},null,!0),r=0;r<e.length;r++)if(!e[r].fixedrange)return!1;return!0}(e),E=o(e.hovermode),C=[];function L(t){if(t.length){for(var e=[],r=0;r<t.length;r++){for(var n=t[r],i=l[n],a=i.name.toLowerCase(),o=(i._cat||i.name).toLowerCase(),s=!1,c=0;c<d.length;c++){var u=d[c].toLowerCase();if(u===a||u===o){s=!0;break}}s||e.push(l[n])}C.push(e)}}var I=[\"toImage\"];s.showEditInChartStudio?I.push(\"editInChartStudio\"):s.showSendToCloud&&I.push(\"sendDataToCloud\"),L(I);var P=[],z=[],O=[],D=[];(m||_||v||x||b)+y+g+w+T+k+A>1?(z=[\"toggleHover\"],O=[\"resetViews\"]):y?(P=[\"zoomInGeo\",\"zoomOutGeo\"],z=[\"hoverClosestGeo\"],O=[\"resetGeo\"]):g?(z=[\"hoverClosest3d\"],O=[\"resetCameraDefault3d\",\"resetCameraLastSave3d\"]):w?(P=[\"zoomInMapbox\",\"zoomOutMapbox\"],z=[\"toggleHover\"],O=[\"resetViewMapbox\"]):T?(P=[\"zoomInMap\",\"zoomOutMap\"],z=[\"toggleHover\"],O=[\"resetViewMap\"]):_?z=[\"hoverClosestGl2d\"]:v?z=[\"hoverClosestPie\"]:M?(z=[\"hoverClosestCartesian\",\"hoverCompareCartesian\"],O=[\"resetViewSankey\"]):z=[\"toggleHover\"],m&&z.push(\"toggleSpikelines\",\"hoverClosestCartesian\",\"hoverCompareCartesian\"),(function(t){for(var e=0;e<t.length;e++)if(!a.traceIs(t[e],\"noHover\"))return!1;return!0}(r)||E)&&(z=[]),!m&&!_||S||(P=[\"zoomIn2d\",\"zoomOut2d\",\"autoScale2d\"],\"resetViews\"!==O[0]&&(O=[\"resetScale2d\"])),g?D=[\"zoom3d\",\"pan3d\",\"orbitRotation\",\"tableRotation\"]:(m||_)&&!S||b?D=[\"zoom2d\",\"pan2d\"]:w||T||y?D=[\"pan2d\"]:k&&(D=[\"zoom2d\"]),function(t){for(var e=!1,r=0;r<t.length&&!e;r++){var n=t[r];n._module&&n._module.selectPoints&&(a.traceIs(n,\"scatter-like\")?(i.hasMarkers(n)||i.hasText(n))&&(e=!0):a.traceIs(n,\"box-violin\")&&\"all\"!==n.boxpoints&&\"all\"!==n.points||(e=!0))}return e}(r)&&D.push(\"select2d\",\"lasso2d\");var R=[],F=function(t){-1===R.indexOf(t)&&-1!==z.indexOf(t)&&R.push(t)};if(Array.isArray(p)){for(var B=[],N=0;N<p.length;N++){var j=p[N];\"string\"==typeof j?(j=j.toLowerCase(),-1!==c.indexOf(j)?(e._has(\"mapbox\")||e._has(\"map\")||e._has(\"cartesian\"))&&D.push(j):\"togglespikelines\"===j?F(\"toggleSpikelines\"):\"togglehover\"===j?F(\"toggleHover\"):\"hovercompare\"===j?F(\"hoverCompareCartesian\"):\"hoverclosest\"===j?(F(\"hoverClosestCartesian\"),F(\"hoverClosestGeo\"),F(\"hoverClosest3d\"),F(\"hoverClosestGl2d\"),F(\"hoverClosestPie\")):\"v1hovermode\"===j&&(F(\"hoverClosestCartesian\"),F(\"hoverCompareCartesian\"),F(\"hoverClosestGeo\"),F(\"hoverClosest3d\"),F(\"hoverClosestGl2d\"),F(\"hoverClosestPie\"))):B.push(j)}p=B}return L(D),L(P.concat(O)),L(R),function(t,e){if(e.length)if(Array.isArray(e[0]))for(var r=0;r<e.length;r++)t.push(e[r]);else t.push(e);return t}(C,p)}(t),h?h.update(t,f):e._modeBar=s(t,f)}else h&&(h.destroy(),delete e._modeBar)}},85393:function(t,e,r){\"use strict\";var n=r(45568),i=r(10721),a=r(34809),o=r(35188),s=r(29697).version,l=new DOMParser;function c(t){this.container=t.container,this.element=document.createElement(\"div\"),this.update(t.graphInfo,t.buttons),this.container.appendChild(this.element)}var u=c.prototype;u.update=function(t,e){this.graphInfo=t;var r=this.graphInfo._context,n=this.graphInfo._fullLayout,i=\"modebar-\"+n._uid;this.element.setAttribute(\"id\",i),this._uid=i,this.element.className=\"modebar\",\"hover\"===r.displayModeBar&&(this.element.className+=\" modebar--hover ease-bg\"),\"v\"===n.modebar.orientation&&(this.element.className+=\" vertical\",e=e.reverse());var o=n.modebar,s=\"hover\"===r.displayModeBar?\".js-plotly-plot .plotly:hover \":\"\";a.deleteRelatedStyleRule(i),a.addRelatedStyleRule(i,s+\"#\"+i+\" .modebar-group\",\"background-color: \"+o.bgcolor),a.addRelatedStyleRule(i,\"#\"+i+\" .modebar-btn .icon path\",\"fill: \"+o.color),a.addRelatedStyleRule(i,\"#\"+i+\" .modebar-btn:hover .icon path\",\"fill: \"+o.activecolor),a.addRelatedStyleRule(i,\"#\"+i+\" .modebar-btn.active .icon path\",\"fill: \"+o.activecolor);var l=!this.hasButtons(e),c=this.hasLogo!==r.displaylogo,u=this.locale!==r.locale;if(this.locale=r.locale,(l||c||u)&&(this.removeAllButtons(),this.updateButtons(e),r.watermark||r.displaylogo)){var h=this.getLogo();r.watermark&&(h.className=h.className+\" watermark\"),\"v\"===n.modebar.orientation?this.element.insertBefore(h,this.element.childNodes[0]):this.element.appendChild(h),this.hasLogo=!0}this.updateActiveButton()},u.updateButtons=function(t){var e=this;this.buttons=t,this.buttonElements=[],this.buttonsNames=[],this.buttons.forEach((function(t){var r=e.createGroup();t.forEach((function(t){var n=t.name;if(!n)throw new Error(\"must provide button 'name' in button config\");if(-1!==e.buttonsNames.indexOf(n))throw new Error(\"button name '\"+n+\"' is taken\");e.buttonsNames.push(n);var i=e.createButton(t);e.buttonElements.push(i),r.appendChild(i)})),e.element.appendChild(r)}))},u.createGroup=function(){var t=document.createElement(\"div\");return t.className=\"modebar-group\",t},u.createButton=function(t){var e=this,r=document.createElement(\"a\");r.setAttribute(\"rel\",\"tooltip\"),r.className=\"modebar-btn\";var i=t.title;void 0===i?i=t.name:\"function\"==typeof i&&(i=i(this.graphInfo)),(i||0===i)&&r.setAttribute(\"data-title\",i),void 0!==t.attr&&r.setAttribute(\"data-attr\",t.attr);var a=t.val;if(void 0!==a&&(\"function\"==typeof a&&(a=a(this.graphInfo)),r.setAttribute(\"data-val\",a)),\"function\"!=typeof t.click)throw new Error(\"must provide button 'click' function in button config\");r.addEventListener(\"click\",(function(r){t.click(e.graphInfo,r),e.updateActiveButton(r.currentTarget)})),r.setAttribute(\"data-toggle\",t.toggle||!1),t.toggle&&n.select(r).classed(\"active\",!0);var s=t.icon;return\"function\"==typeof s?r.appendChild(s()):r.appendChild(this.createIcon(s||o.question)),r.setAttribute(\"data-gravity\",t.gravity||\"n\"),r},u.createIcon=function(t){var e,r=i(t.height)?Number(t.height):t.ascent-t.descent,n=\"http://www.w3.org/2000/svg\";if(t.path){(e=document.createElementNS(n,\"svg\")).setAttribute(\"viewBox\",[0,0,t.width,r].join(\" \")),e.setAttribute(\"class\",\"icon\");var a=document.createElementNS(n,\"path\");a.setAttribute(\"d\",t.path),t.transform?a.setAttribute(\"transform\",t.transform):void 0!==t.ascent&&a.setAttribute(\"transform\",\"matrix(1 0 0 -1 0 \"+t.ascent+\")\"),e.appendChild(a)}return t.svg&&(e=l.parseFromString(t.svg,\"application/xml\").childNodes[0]),e.setAttribute(\"height\",\"1em\"),e.setAttribute(\"width\",\"1em\"),e},u.updateActiveButton=function(t){var e=this.graphInfo._fullLayout,r=void 0!==t?t.getAttribute(\"data-attr\"):null;this.buttonElements.forEach((function(t){var i=t.getAttribute(\"data-val\")||!0,o=t.getAttribute(\"data-attr\"),s=\"true\"===t.getAttribute(\"data-toggle\"),l=n.select(t);if(s)o===r&&l.classed(\"active\",!l.classed(\"active\"));else{var c=null===o?o:a.nestedProperty(e,o).get();l.classed(\"active\",c===i)}}))},u.hasButtons=function(t){var e=this.buttons;if(!e)return!1;if(t.length!==e.length)return!1;for(var r=0;r<t.length;++r){if(t[r].length!==e[r].length)return!1;for(var n=0;n<t[r].length;n++)if(t[r][n].name!==e[r][n].name)return!1}return!0},u.getLogo=function(){var t=this.createGroup(),e=document.createElement(\"a\");return e.href=\"https://plotly.com/\",e.target=\"_blank\",e.setAttribute(\"data-title\",a._(this.graphInfo,\"Produced with Plotly.js\")+\" (v\"+s+\")\"),e.className=\"modebar-btn plotlyjsicon modebar-btn--logo\",e.appendChild(this.createIcon(o.newplotlylogo)),t.appendChild(e),t},u.removeAllButtons=function(){for(;this.element.firstChild;)this.element.removeChild(this.element.firstChild);this.hasLogo=!1},u.destroy=function(){a.removeElement(this.container.querySelector(\".modebar\")),a.deleteRelatedStyleRule(this._uid)},t.exports=function(t,e){var r=t._fullLayout,i=new c({graphInfo:t,container:r._modebardiv.node(),buttons:e});return r._privateplot&&n.select(i.element).append(\"span\").classed(\"badge-private float--left\",!0).text(\"PRIVATE\"),i}},91032:function(t,e,r){\"use strict\";var n=r(80337),i=r(10229),a=(0,r(78032).templatedArray)(\"button\",{visible:{valType:\"boolean\",dflt:!0,editType:\"plot\"},step:{valType:\"enumerated\",values:[\"month\",\"year\",\"day\",\"hour\",\"minute\",\"second\",\"all\"],dflt:\"month\",editType:\"plot\"},stepmode:{valType:\"enumerated\",values:[\"backward\",\"todate\"],dflt:\"backward\",editType:\"plot\"},count:{valType:\"number\",min:0,dflt:1,editType:\"plot\"},label:{valType:\"string\",editType:\"plot\"},editType:\"plot\"});t.exports={visible:{valType:\"boolean\",editType:\"plot\"},buttons:a,x:{valType:\"number\",min:-2,max:3,editType:\"plot\"},xanchor:{valType:\"enumerated\",values:[\"auto\",\"left\",\"center\",\"right\"],dflt:\"left\",editType:\"plot\"},y:{valType:\"number\",min:-2,max:3,editType:\"plot\"},yanchor:{valType:\"enumerated\",values:[\"auto\",\"top\",\"middle\",\"bottom\"],dflt:\"bottom\",editType:\"plot\"},font:n({editType:\"plot\"}),bgcolor:{valType:\"color\",dflt:i.lightLine,editType:\"plot\"},activecolor:{valType:\"color\",editType:\"plot\"},bordercolor:{valType:\"color\",dflt:i.defaultLine,editType:\"plot\"},borderwidth:{valType:\"number\",min:0,dflt:0,editType:\"plot\"},editType:\"plot\"}},68508:function(t){\"use strict\";t.exports={yPad:.02,minButtonWidth:30,rx:3,ry:3,lightAmount:25,darkAmount:10}},86255:function(t,e,r){\"use strict\";var n=r(34809),i=r(78766),a=r(78032),o=r(59008),s=r(91032),l=r(68508);function c(t,e,r,i){var a=i.calendar;function o(r,i){return n.coerce(t,e,s.buttons,r,i)}if(o(\"visible\")){var l=o(\"step\");\"all\"!==l&&(!a||\"gregorian\"===a||\"month\"!==l&&\"year\"!==l?o(\"stepmode\"):e.stepmode=\"backward\",o(\"count\")),o(\"label\")}}t.exports=function(t,e,r,u,h){var f=t.rangeselector||{},p=a.newContainer(e,\"rangeselector\");function d(t,e){return n.coerce(f,p,s,t,e)}if(d(\"visible\",o(f,p,{name:\"buttons\",handleItemDefaults:c,calendar:h}).length>0)){var m=function(t,e,r){for(var n=r.filter((function(r){return e[r].anchor===t._id})),i=0,a=0;a<n.length;a++){var o=e[n[a]].domain;o&&(i=Math.max(o[1],i))}return[t.domain[0],i+l.yPad]}(e,r,u);d(\"x\",m[0]),d(\"y\",m[1]),n.noneOrAll(t,e,[\"x\",\"y\"]),d(\"xanchor\"),d(\"yanchor\"),n.coerceFont(d,\"font\",r.font);var g=d(\"bgcolor\");d(\"activecolor\",i.contrast(g,l.lightAmount,l.darkAmount)),d(\"bordercolor\"),d(\"borderwidth\")}}},45431:function(t,e,r){\"use strict\";var n=r(45568),i=r(33626),a=r(44122),o=r(78766),s=r(62203),l=r(34809),c=l.strTranslate,u=r(30635),h=r(5975),f=r(4530),p=f.LINE_SPACING,d=f.FROM_TL,m=f.FROM_BR,g=r(68508),y=r(16383);function v(t){return t._id}function x(t,e,r){var n=l.ensureSingle(t,\"rect\",\"selector-rect\",(function(t){t.attr(\"shape-rendering\",\"crispEdges\")}));n.attr({rx:g.rx,ry:g.ry}),n.call(o.stroke,e.bordercolor).call(o.fill,function(t,e){return e._isActive||e._isHovered?t.activecolor:t.bgcolor}(e,r)).style(\"stroke-width\",e.borderwidth+\"px\")}function _(t,e,r,n){var i,a;l.ensureSingle(t,\"text\",\"selector-text\",(function(t){t.attr(\"text-anchor\",\"middle\")})).call(s.font,e.font).text((i=r,a=n._fullLayout._meta,i.label?a?l.templateString(i.label,a):i.label:\"all\"===i.step?\"all\":i.count+i.step.charAt(0))).call((function(t){u.convertToTspans(t,n)}))}t.exports=function(t){var e=t._fullLayout._infolayer.selectAll(\".rangeselector\").data(function(t){for(var e=h.list(t,\"x\",!0),r=[],n=0;n<e.length;n++){var i=e[n];i.rangeselector&&i.rangeselector.visible&&r.push(i)}return r}(t),v);e.enter().append(\"g\").classed(\"rangeselector\",!0),e.exit().remove(),e.style({cursor:\"pointer\",\"pointer-events\":\"all\"}),e.each((function(e){var r=n.select(this),o=e,h=o.rangeselector,f=r.selectAll(\"g.button\").data(l.filterVisible(h.buttons));f.enter().append(\"g\").classed(\"button\",!0),f.exit().remove(),f.each((function(e){var r=n.select(this),a=y(o,e);e._isActive=function(t,e,r){if(\"all\"===e.step)return!0===t.autorange;var n=Object.keys(r);return t.range[0]===r[n[0]]&&t.range[1]===r[n[1]]}(o,e,a),r.call(x,h,e),r.call(_,h,e,t),r.on(\"click\",(function(){t._dragged||i.call(\"_guiRelayout\",t,a)})),r.on(\"mouseover\",(function(){e._isHovered=!0,r.call(x,h,e)})),r.on(\"mouseout\",(function(){e._isHovered=!1,r.call(x,h,e)}))})),function(t,e,r,i,o){var h=0,f=0,y=r.borderwidth;e.each((function(){var t=n.select(this).select(\".selector-text\"),e=r.font.size*p,i=Math.max(e*u.lineCount(t),16)+3;f=Math.max(f,i)})),e.each((function(){var t=n.select(this),e=t.select(\".selector-rect\"),i=t.select(\".selector-text\"),a=i.node()&&s.bBox(i.node()).width,o=r.font.size*p,l=u.lineCount(i),d=Math.max(a+10,g.minButtonWidth);t.attr(\"transform\",c(y+h,y)),e.attr({x:0,y:0,width:d,height:f}),u.positionText(i,d/2,f/2-(l-1)*o/2+3),h+=d+5}));var v=t._fullLayout._size,x=v.l+v.w*r.x,_=v.t+v.h*(1-r.y),b=\"left\";l.isRightAnchor(r)&&(x-=h,b=\"right\"),l.isCenterAnchor(r)&&(x-=h/2,b=\"center\");var w=\"top\";l.isBottomAnchor(r)&&(_-=f,w=\"bottom\"),l.isMiddleAnchor(r)&&(_-=f/2,w=\"middle\"),h=Math.ceil(h),f=Math.ceil(f),x=Math.round(x),_=Math.round(_),a.autoMargin(t,i+\"-range-selector\",{x:r.x,y:r.y,l:h*d[b],r:h*m[b],b:f*m[w],t:f*d[w]}),o.attr(\"transform\",c(x,_))}(t,f,h,o._name,r)}))}},16383:function(t,e,r){\"use strict\";var n=r(50936),i=r(34809).titleCase;t.exports=function(t,e){var r=t._name,a={};if(\"all\"===e.step)a[r+\".autorange\"]=!0;else{var o=function(t,e){var r,a=t.range,o=new Date(t.r2l(a[1])),s=e.step,l=n[\"utc\"+i(s)],c=e.count;switch(e.stepmode){case\"backward\":r=t.l2r(+l.offset(o,-c));break;case\"todate\":var u=l.offset(o,-c);r=t.l2r(+l.ceil(u))}return[r,a[1]]}(t,e);a[r+\".range[0]\"]=o[0],a[r+\".range[1]\"]=o[1]}return a}},44453:function(t,e,r){\"use strict\";t.exports={moduleType:\"component\",name:\"rangeselector\",schema:{subplots:{xaxis:{rangeselector:r(91032)}}},layoutAttributes:r(91032),handleDefaults:r(86255),draw:r(45431)}},63608:function(t,e,r){\"use strict\";var n=r(10229);t.exports={bgcolor:{valType:\"color\",dflt:n.background,editType:\"plot\"},bordercolor:{valType:\"color\",dflt:n.defaultLine,editType:\"plot\"},borderwidth:{valType:\"integer\",dflt:0,min:0,editType:\"plot\"},autorange:{valType:\"boolean\",dflt:!0,editType:\"calc\",impliedEdits:{\"range[0]\":void 0,\"range[1]\":void 0}},range:{valType:\"info_array\",items:[{valType:\"any\",editType:\"calc\",impliedEdits:{\"^autorange\":!1}},{valType:\"any\",editType:\"calc\",impliedEdits:{\"^autorange\":!1}}],editType:\"calc\",impliedEdits:{autorange:!1}},thickness:{valType:\"number\",dflt:.15,min:0,max:1,editType:\"plot\"},visible:{valType:\"boolean\",dflt:!0,editType:\"calc\"},editType:\"calc\"}},46223:function(t,e,r){\"use strict\";var n=r(5975).list,i=r(32919).getAutoRange,a=r(20604);t.exports=function(t){for(var e=n(t,\"x\",!0),r=0;r<e.length;r++){var o=e[r],s=o[a.name];s&&s.visible&&s.autorange&&(s._input.autorange=!0,s._input.range=s.range=i(t,o))}}},20604:function(t){\"use strict\";t.exports={name:\"rangeslider\",containerClassName:\"rangeslider-container\",bgClassName:\"rangeslider-bg\",rangePlotClassName:\"rangeslider-rangeplot\",maskMinClassName:\"rangeslider-mask-min\",maskMaxClassName:\"rangeslider-mask-max\",slideBoxClassName:\"rangeslider-slidebox\",grabberMinClassName:\"rangeslider-grabber-min\",grabAreaMinClassName:\"rangeslider-grabarea-min\",handleMinClassName:\"rangeslider-handle-min\",grabberMaxClassName:\"rangeslider-grabber-max\",grabAreaMaxClassName:\"rangeslider-grabarea-max\",handleMaxClassName:\"rangeslider-handle-max\",maskMinOppAxisClassName:\"rangeslider-mask-min-opp-axis\",maskMaxOppAxisClassName:\"rangeslider-mask-max-opp-axis\",maskColor:\"rgba(0,0,0,0.4)\",maskOppAxisColor:\"rgba(0,0,0,0.2)\",slideBoxFill:\"transparent\",slideBoxCursor:\"ew-resize\",grabAreaFill:\"transparent\",grabAreaCursor:\"col-resize\",grabAreaWidth:10,handleWidth:4,handleRadius:1,handleStrokeWidth:1,extraPad:15}},41295:function(t,e,r){\"use strict\";var n=r(34809),i=r(78032),a=r(5975),o=r(63608),s=r(66249);t.exports=function(t,e,r){var l=t[r],c=e[r];if(l.rangeslider||e._requestRangeslider[c._id]){n.isPlainObject(l.rangeslider)||(l.rangeslider={});var u,h,f=l.rangeslider,p=i.newContainer(c,\"rangeslider\");if(b(\"visible\")){b(\"bgcolor\",e.plot_bgcolor),b(\"bordercolor\"),b(\"borderwidth\"),b(\"thickness\"),b(\"autorange\",!c.isValidRange(f.range)),b(\"range\");var d=e._subplots;if(d)for(var m=d.cartesian.filter((function(t){return t.substr(0,t.indexOf(\"y\"))===a.name2id(r)})).map((function(t){return t.substr(t.indexOf(\"y\"),t.length)})),g=n.simpleMap(m,a.id2name),y=0;y<g.length;y++){var v=g[y];u=f[v]||{},h=i.newContainer(p,v,\"yaxis\");var x,_=e[v];u.range&&_.isValidRange(u.range)&&(x=\"fixed\"),\"match\"!==w(\"rangemode\",x)&&w(\"range\",_.range.slice())}p._input=f}}function b(t,e){return n.coerce(f,p,o,t,e)}function w(t,e){return n.coerce(u,h,s,t,e)}}},88887:function(t,e,r){\"use strict\";var n=r(45568),i=r(33626),a=r(44122),o=r(34809),s=o.strTranslate,l=r(62203),c=r(78766),u=r(17240),h=r(37703),f=r(5975),p=r(14751),d=r(27983),m=r(20604);function g(t){return\"number\"==typeof t.clientX?t.clientX:t.touches&&t.touches.length>0?t.touches[0].clientX:0}function y(t,e,r,n){var i=o.ensureSingle(t,\"rect\",m.bgClassName,(function(t){t.attr({x:0,y:0,\"shape-rendering\":\"crispEdges\"})})),a=n.borderwidth%2==0?n.borderwidth:n.borderwidth-1,u=-n._offsetShift,h=l.crispRound(e,n.borderwidth);i.attr({width:n._width+a,height:n._height+a,transform:s(u,u),\"stroke-width\":h}).call(c.stroke,n.bordercolor).call(c.fill,n.bgcolor)}function v(t,e,r,n){var i=e._fullLayout;o.ensureSingleById(i._topdefs,\"clipPath\",n._clipId,(function(t){t.append(\"rect\").attr({x:0,y:0})})).select(\"rect\").attr({width:n._width,height:n._height})}function x(t,e,r,i){var s,c=e.calcdata,u=t.selectAll(\"g.\"+m.rangePlotClassName).data(r._subplotsWith,o.identity);u.enter().append(\"g\").attr(\"class\",(function(t){return m.rangePlotClassName+\" \"+t})).call(l.setClipUrl,i._clipId,e),u.order(),u.exit().remove(),u.each((function(t,o){var l=n.select(this),u=0===o,p=f.getFromId(e,t,\"y\"),d=p._name,m=i[d],g={data:[],layout:{xaxis:{type:r.type,domain:[0,1],range:i.range.slice(),calendar:r.calendar},width:i._width,height:i._height,margin:{t:0,b:0,l:0,r:0}},_context:e._context};r.rangebreaks&&(g.layout.xaxis.rangebreaks=r.rangebreaks),g.layout[d]={type:p.type,domain:[0,1],range:\"match\"!==m.rangemode?m.range.slice():p.range.slice(),calendar:p.calendar},p.rangebreaks&&(g.layout[d].rangebreaks=p.rangebreaks),a.supplyDefaults(g);var y=g._fullLayout.xaxis,v=g._fullLayout[d];y.clearCalc(),y.setScale(),v.clearCalc(),v.setScale();var x={id:t,plotgroup:l,xaxis:y,yaxis:v,isRangePlot:!0};u?s=x:(x.mainplot=\"xy\",x.mainplotinfo=s),h.rangePlot(e,x,function(t,e){for(var r=[],n=0;n<t.length;n++){var i=t[n],a=i[0].trace;a.xaxis+a.yaxis===e&&r.push(i)}return r}(c,t))}))}function _(t,e,r,n,i){o.ensureSingle(t,\"rect\",m.maskMinClassName,(function(t){t.attr({x:0,y:0,\"shape-rendering\":\"crispEdges\"})})).attr(\"height\",n._height).call(c.fill,m.maskColor),o.ensureSingle(t,\"rect\",m.maskMaxClassName,(function(t){t.attr({y:0,\"shape-rendering\":\"crispEdges\"})})).attr(\"height\",n._height).call(c.fill,m.maskColor),\"match\"!==i.rangemode&&(o.ensureSingle(t,\"rect\",m.maskMinOppAxisClassName,(function(t){t.attr({y:0,\"shape-rendering\":\"crispEdges\"})})).attr(\"width\",n._width).call(c.fill,m.maskOppAxisColor),o.ensureSingle(t,\"rect\",m.maskMaxOppAxisClassName,(function(t){t.attr({y:0,\"shape-rendering\":\"crispEdges\"})})).attr(\"width\",n._width).style(\"border-top\",m.maskOppBorder).call(c.fill,m.maskOppAxisColor))}function b(t,e,r,n){e._context.staticPlot||o.ensureSingle(t,\"rect\",m.slideBoxClassName,(function(t){t.attr({y:0,cursor:m.slideBoxCursor,\"shape-rendering\":\"crispEdges\"})})).attr({height:n._height,fill:m.slideBoxFill})}function w(t,e,r,n){var i=o.ensureSingle(t,\"g\",m.grabberMinClassName),a=o.ensureSingle(t,\"g\",m.grabberMaxClassName),s={x:0,width:m.handleWidth,rx:m.handleRadius,fill:c.background,stroke:c.defaultLine,\"stroke-width\":m.handleStrokeWidth,\"shape-rendering\":\"crispEdges\"},l={y:Math.round(n._height/4),height:Math.round(n._height/2)};o.ensureSingle(i,\"rect\",m.handleMinClassName,(function(t){t.attr(s)})).attr(l),o.ensureSingle(a,\"rect\",m.handleMaxClassName,(function(t){t.attr(s)})).attr(l);var u={width:m.grabAreaWidth,x:0,y:0,fill:m.grabAreaFill,cursor:e._context.staticPlot?void 0:m.grabAreaCursor};o.ensureSingle(i,\"rect\",m.grabAreaMinClassName,(function(t){t.attr(u)})).attr(\"height\",n._height),o.ensureSingle(a,\"rect\",m.grabAreaMaxClassName,(function(t){t.attr(u)})).attr(\"height\",n._height)}t.exports=function(t){for(var e=t._fullLayout,r=e._rangeSliderData,a=0;a<r.length;a++){var l=r[a][m.name];l._clipId=l._id+\"-\"+e._uid}var c=e._infolayer.selectAll(\"g.\"+m.containerClassName).data(r,(function(t){return t._name}));c.exit().each((function(t){var r=t[m.name];e._topdefs.select(\"#\"+r._clipId).remove()})).remove(),0!==r.length&&(c.enter().append(\"g\").classed(m.containerClassName,!0).attr(\"pointer-events\",\"all\"),c.each((function(r){var a=n.select(this),l=r[m.name],c=e[f.id2name(r.anchor)],h=l[f.id2name(r.anchor)];if(l.range){var T,k=o.simpleMap(l.range,r.r2l),A=o.simpleMap(r.range,r.r2l);T=A[0]<A[1]?[Math.min(k[0],A[0]),Math.max(k[1],A[1])]:[Math.max(k[0],A[0]),Math.min(k[1],A[1])],l.range=l._input.range=o.simpleMap(T,r.l2r)}r.cleanRange(\"rangeslider.range\");var M=e._size,S=r.domain;l._width=M.w*(S[1]-S[0]);var E=Math.round(M.l+M.w*S[0]),C=Math.round(M.t+M.h*(1-r._counterDomainMin)+(\"bottom\"===r.side?r._depth:0)+l._offsetShift+m.extraPad);a.attr(\"transform\",s(E,C)),l._rl=o.simpleMap(l.range,r.r2l);var L=l._rl[0],I=l._rl[1],P=I-L;if(l.p2d=function(t){return t/l._width*P+L},l.d2p=function(t){return(t-L)/P*l._width},r.rangebreaks){var z=r.locateBreaks(L,I);if(z.length){var O,D,R=0;for(O=0;O<z.length;O++)R+=(D=z[O]).max-D.min;var F=l._width/(I-L-R),B=[-F*L];for(O=0;O<z.length;O++)D=z[O],B.push(B[B.length-1]-F*(D.max-D.min));for(l.d2p=function(t){for(var e=B[0],r=0;r<z.length;r++){var n=z[r];if(t>=n.max)e=B[r+1];else if(t<n.min)break}return e+F*t},O=0;O<z.length;O++)(D=z[O]).pmin=l.d2p(D.min),D.pmax=l.d2p(D.max);l.p2d=function(t){for(var e=B[0],r=0;r<z.length;r++){var n=z[r];if(t>=n.pmax)e=B[r+1];else if(t<n.pmin)break}return(t-e)/F}}}if(\"match\"!==h.rangemode){var N=c.r2l(h.range[0]),j=c.r2l(h.range[1])-N;l.d2pOppAxis=function(t){return(t-N)/j*l._height}}a.call(y,t,r,l).call(v,t,r,l).call(x,t,r,l).call(_,t,r,l,h).call(b,t,r,l).call(w,t,r,l),function(t,e,r,a){if(!e._context.staticPlot){var s=t.select(\"rect.\"+m.slideBoxClassName).node(),l=t.select(\"rect.\"+m.grabAreaMinClassName).node(),c=t.select(\"rect.\"+m.grabAreaMaxClassName).node();t.on(\"mousedown\",u),t.on(\"touchstart\",u)}function u(){var u=n.event,h=u.target,f=g(u),m=f-t.node().getBoundingClientRect().left,y=a.d2p(r._rl[0]),v=a.d2p(r._rl[1]),x=p.coverSlip();function _(t){var u,p,_,b=+g(t)-f;switch(h){case s:if(_=\"ew-resize\",y+b>r._length||v+b<0)return;u=y+b,p=v+b;break;case l:if(_=\"col-resize\",y+b>r._length)return;u=y+b,p=v;break;case c:if(_=\"col-resize\",v+b<0)return;u=y,p=v+b;break;default:_=\"ew-resize\",u=m,p=m+b}if(p<u){var w=p;p=u,u=w}a._pixelMin=u,a._pixelMax=p,d(n.select(x),_),function(t,e,r,n){function a(t){return r.l2r(o.constrain(t,n._rl[0],n._rl[1]))}var s=a(n.p2d(n._pixelMin)),l=a(n.p2d(n._pixelMax));window.requestAnimationFrame((function(){i.call(\"_guiRelayout\",e,r._name+\".range\",[s,l])}))}(0,e,r,a)}function b(){x.removeEventListener(\"mousemove\",_),x.removeEventListener(\"mouseup\",b),this.removeEventListener(\"touchmove\",_),this.removeEventListener(\"touchend\",b),o.removeElement(x)}this.addEventListener(\"touchmove\",_),this.addEventListener(\"touchend\",b),x.addEventListener(\"mousemove\",_),x.addEventListener(\"mouseup\",b)}}(a,t,r,l),function(t,e,r,n,i,a){var l=m.handleWidth/2;function c(t){return o.constrain(t,0,n._width)}function u(t){return o.constrain(t,0,n._height)}function h(t){return o.constrain(t,-l,n._width+l)}var f=c(n.d2p(r._rl[0])),p=c(n.d2p(r._rl[1]));if(t.select(\"rect.\"+m.slideBoxClassName).attr(\"x\",f).attr(\"width\",p-f),t.select(\"rect.\"+m.maskMinClassName).attr(\"width\",f),t.select(\"rect.\"+m.maskMaxClassName).attr(\"x\",p).attr(\"width\",n._width-p),\"match\"!==a.rangemode){var d=n._height-u(n.d2pOppAxis(i._rl[1])),g=n._height-u(n.d2pOppAxis(i._rl[0]));t.select(\"rect.\"+m.maskMinOppAxisClassName).attr(\"x\",f).attr(\"height\",d).attr(\"width\",p-f),t.select(\"rect.\"+m.maskMaxOppAxisClassName).attr(\"x\",f).attr(\"y\",g).attr(\"height\",n._height-g).attr(\"width\",p-f),t.select(\"rect.\"+m.slideBoxClassName).attr(\"y\",d).attr(\"height\",g-d)}var y=.5,v=Math.round(h(f-l))-y,x=Math.round(h(p-l))+y;t.select(\"g.\"+m.grabberMinClassName).attr(\"transform\",s(v,y)),t.select(\"g.\"+m.grabberMaxClassName).attr(\"transform\",s(x,y))}(a,0,r,l,c,h),\"bottom\"===r.side&&u.draw(t,r._id+\"title\",{propContainer:r,propName:r._name+\".title\",placeholder:e._dfltTitle.x,attributes:{x:r._offset+r._length/2,y:C+l._height+l._offsetShift+10+1.5*r.title.font.size,\"text-anchor\":\"middle\"}})})))}},80400:function(t,e,r){\"use strict\";var n=r(5975),i=r(30635),a=r(20604),o=r(4530).LINE_SPACING,s=a.name;function l(t){var e=t&&t[s];return e&&e.visible}e.isVisible=l,e.makeData=function(t){var e=n.list({_fullLayout:t},\"x\",!0),r=t.margin,i=[];if(!t._has(\"gl2d\"))for(var a=0;a<e.length;a++){var o=e[a];if(l(o)){i.push(o);var c=o[s];c._id=s+o._id,c._height=(t.height-r.b-r.t)*c.thickness,c._offsetShift=Math.floor(c.borderwidth/2)}}t._rangeSliderData=i},e.autoMarginOpts=function(t,e){var r=t._fullLayout,n=e[s],l=e._id.charAt(0),c=0,u=0;return\"bottom\"===e.side&&(c=e._depth,e.title.text!==r._dfltTitle[l]&&(u=1.5*e.title.font.size+10+n._offsetShift,u+=(e.title.text.match(i.BR_TAG_ALL)||[]).length*e.title.font.size*o)),{x:0,y:e._counterDomainMin,l:0,r:0,t:0,b:n._height+c+Math.max(r.margin.b,u),pad:a.extraPad+2*n._offsetShift}}},55429:function(t,e,r){\"use strict\";var n=r(34809),i=r(63608),a=r(66249),o=r(80400);t.exports={moduleType:\"component\",name:\"rangeslider\",schema:{subplots:{xaxis:{rangeslider:n.extendFlat({},i,{yaxis:a})}}},layoutAttributes:r(63608),handleDefaults:r(41295),calcAutorange:r(46223),draw:r(88887),isVisible:o.isVisible,makeData:o.makeData,autoMarginOpts:o.autoMarginOpts}},66249:function(t){\"use strict\";t.exports={_isSubplotObj:!0,rangemode:{valType:\"enumerated\",values:[\"auto\",\"fixed\",\"match\"],dflt:\"match\",editType:\"calc\"},range:{valType:\"info_array\",items:[{valType:\"any\",editType:\"plot\"},{valType:\"any\",editType:\"plot\"}],editType:\"plot\"},editType:\"calc\"}},4327:function(t,e,r){\"use strict\";var n=r(50222),i=r(36640).line,a=r(94850).T,o=r(93049).extendFlat,s=r(13582).overrideAll,l=r(78032).templatedArray;r(35081),t.exports=s(l(\"selection\",{type:{valType:\"enumerated\",values:[\"rect\",\"path\"]},xref:o({},n.xref,{}),yref:o({},n.yref,{}),x0:{valType:\"any\"},x1:{valType:\"any\"},y0:{valType:\"any\"},y1:{valType:\"any\"},path:{valType:\"string\",editType:\"arraydraw\"},opacity:{valType:\"number\",min:0,max:1,dflt:.7,editType:\"arraydraw\"},line:{color:i.color,width:o({},i.width,{min:1,dflt:1}),dash:o({},a,{dflt:\"dot\"})}}),\"arraydraw\",\"from-root\")},78865:function(t){\"use strict\";t.exports={BENDPX:1.5,MINSELECT:12,SELECTDELAY:100,SELECTID:\"-select\"}},2272:function(t,e,r){\"use strict\";var n=r(34809),i=r(29714),a=r(59008),o=r(4327),s=r(49728);function l(t,e,r){function a(r,i){return n.coerce(t,e,o,r,i)}var l=a(\"path\"),c=\"path\"!==a(\"type\",l?\"path\":\"rect\");c&&delete e.path,a(\"opacity\"),a(\"line.color\"),a(\"line.width\"),a(\"line.dash\");for(var u=[\"x\",\"y\"],h=0;h<2;h++){var f,p,d,m=u[h],g={_fullLayout:r},y=i.coerceRef(t,e,g,m);if((f=i.getFromId(g,y))._selectionIndices.push(e._index),d=s.rangeToShapePosition(f),p=s.shapePositionToRange(f),c){var v=m+\"0\",x=m+\"1\",_=t[v],b=t[x];t[v]=p(t[v],!0),t[x]=p(t[x],!0),i.coercePosition(e,g,a,y,v),i.coercePosition(e,g,a,y,x);var w=e[v],T=e[x];void 0!==w&&void 0!==T&&(e[v]=d(w),e[x]=d(T),t[v]=_,t[x]=b)}}c&&n.noneOrAll(t,e,[\"x0\",\"x1\",\"y0\",\"y1\"])}t.exports=function(t,e){a(t,e,{name:\"selections\",handleItemDefaults:l});for(var r=e.selections,n=0;n<r.length;n++){var i=r[n];i&&void 0===i.path&&(void 0!==i.x0&&void 0!==i.x1&&void 0!==i.y0&&void 0!==i.y1||(e.selections[n]=null))}}},7028:function(t,e,r){\"use strict\";var n=r(81055).readPaths,i=r(561),a=r(78534).clearOutlineControllers,o=r(78766),s=r(62203),l=r(78032).arrayEditor,c=r(49728),u=c.getPathString;function h(t){var e=t._fullLayout;for(var r in a(t),e._selectionLayer.selectAll(\"path\").remove(),e._plots){var n=e._plots[r].selectionLayer;n&&n.selectAll(\"path\").remove()}for(var i=0;i<e.selections.length;i++)p(t,i)}function f(t){return t._context.editSelection}function p(t,e){t._fullLayout._paperdiv.selectAll('.selectionlayer [data-index=\"'+e+'\"]').remove();var r=c.makeSelectionsOptionsAndPlotinfo(t,e),a=r.options,p=r.plotinfo;a._input&&function(r){var c=u(t,a),g={\"data-index\":e,\"fill-rule\":\"evenodd\",d:c},y=a.opacity,v=\"rgba(0,0,0,0)\",x=a.line.color||o.contrast(t._fullLayout.plot_bgcolor),_=a.line.width,b=a.line.dash;_||(_=5,b=\"solid\");var w=f(t)&&t._fullLayout._activeSelectionIndex===e;w&&(v=t._fullLayout.activeselection.fillcolor,y=t._fullLayout.activeselection.opacity);for(var T=[],k=1;k>=0;k--){var A=r.append(\"path\").attr(g).style(\"opacity\",k?.1:y).call(o.stroke,x).call(o.fill,v).call(s.dashLine,k?\"solid\":b,k?4+_:_);if(d(A,t,a),w){var M=l(t.layout,\"selections\",a);A.style({cursor:\"move\"});var S={element:A.node(),plotinfo:p,gd:t,editHelpers:M,isActiveSelection:!0},E=n(c,t);i(E,A,S)}else A.style(\"pointer-events\",k?\"all\":\"none\");T[k]=A}var C=T[0];T[1].node().addEventListener(\"click\",(function(){return function(t,e){if(f(t)){var r=+e.node().getAttribute(\"data-index\");if(r>=0){if(r===t._fullLayout._activeSelectionIndex)return void m(t);t._fullLayout._activeSelectionIndex=r,t._fullLayout._deactivateSelection=m,h(t)}}}(t,C)}))}(t._fullLayout._selectionLayer)}function d(t,e,r){var n=r.xref+r.yref;s.setClipUrl(t,\"clip\"+e._fullLayout._uid+n,e)}function m(t){f(t)&&t._fullLayout._activeSelectionIndex>=0&&(a(t),delete t._fullLayout._activeSelectionIndex,h(t))}t.exports={draw:h,drawOne:p,activateLastSelection:function(t){if(f(t)){var e=t._fullLayout.selections.length-1;t._fullLayout._activeSelectionIndex=e,t._fullLayout._deactivateSelection=m,h(t)}}}},52307:function(t,e,r){\"use strict\";var n=r(94850).T,i=r(93049).extendFlat;t.exports={newselection:{mode:{valType:\"enumerated\",values:[\"immediate\",\"gradual\"],dflt:\"immediate\",editType:\"none\"},line:{color:{valType:\"color\",editType:\"none\"},width:{valType:\"number\",min:1,dflt:1,editType:\"none\"},dash:i({},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\"}}},43028:function(t){\"use strict\";t.exports=function(t,e,r){r(\"newselection.mode\"),r(\"newselection.line.width\")&&(r(\"newselection.line.color\"),r(\"newselection.line.dash\")),r(\"activeselection.fillcolor\"),r(\"activeselection.opacity\")}},51817:function(t,e,r){\"use strict\";var n=r(70414).selectMode,i=r(78534).clearOutline,a=r(81055),o=a.readPaths,s=a.writePaths,l=a.fixDatesForPaths;t.exports=function(t,e){if(t.length){var r=t[0][0];if(r){var a=r.getAttribute(\"d\"),c=e.gd,u=c._fullLayout.newselection,h=e.plotinfo,f=h.xaxis,p=h.yaxis,d=e.isActiveSelection,m=e.dragmode,g=(c.layout||{}).selections||[];if(!n(m)&&void 0!==d){var y=c._fullLayout._activeSelectionIndex;if(y<g.length)switch(c._fullLayout.selections[y].type){case\"rect\":m=\"select\";break;case\"path\":m=\"lasso\"}}var v,x=o(a,c,h,d),_={xref:f._id,yref:p._id,opacity:u.opacity,line:{color:u.line.color,width:u.line.width,dash:u.line.dash}};1===x.length&&(v=x[0]),v&&5===v.length&&\"select\"===m?(_.type=\"rect\",_.x0=v[0][1],_.y0=v[0][2],_.x1=v[2][1],_.y1=v[2][2]):(_.type=\"path\",f&&p&&l(x,f,p),_.path=s(x),v=null),i(c);for(var b=e.editHelpers,w=(b||{}).modifyItem,T=[],k=0;k<g.length;k++){var A=c._fullLayout.selections[k];if(A){if(T[k]=A._input,void 0!==d&&k===c._fullLayout._activeSelectionIndex){var M=_;switch(A.type){case\"rect\":w(\"x0\",M.x0),w(\"x1\",M.x1),w(\"y0\",M.y0),w(\"y1\",M.y1);break;case\"path\":w(\"path\",M.path)}}}else T[k]=A}return void 0===d?(T.push(_),T):b?b.getUpdateObj():{}}}}},49801:function(t,e,r){\"use strict\";var n=r(34809).strTranslate;function i(t,e){switch(t.type){case\"log\":return t.p2d(e);case\"date\":return t.p2r(e,0,t.calendar);default:return t.p2r(e)}}t.exports={p2r:i,r2p:function(t,e){switch(t.type){case\"log\":return t.d2p(e);case\"date\":return t.r2p(e,0,t.calendar);default:return t.r2p(e)}},axValue:function(t){var e=\"y\"===t._id.charAt(0)?1:0;return function(r){return i(t,r[e])}},getTransform:function(t){return n(t.xaxis._offset,t.yaxis._offset)}}},44844:function(t,e,r){\"use strict\";var n=r(7028),i=r(88666);t.exports={moduleType:\"component\",name:\"selections\",layoutAttributes:r(4327),supplyLayoutDefaults:r(2272),supplyDrawNewSelectionDefaults:r(43028),includeBasePlot:r(20706)(\"selections\"),draw:n.draw,drawOne:n.drawOne,reselect:i.reselect,prepSelect:i.prepSelect,clearOutline:i.clearOutline,clearSelectionsCache:i.clearSelectionsCache,selectOnClick:i.selectOnClick}},88666:function(t,e,r){\"use strict\";var n=r(11516),i=r(52773),a=r(33626),o=r(62203).dashStyle,s=r(78766),l=r(32141),c=r(36040).makeEventData,u=r(70414),h=u.freeMode,f=u.rectMode,p=u.drawMode,d=u.openMode,m=u.selectMode,g=r(49728),y=r(2956),v=r(561),x=r(78534).clearOutline,_=r(81055),b=_.handleEllipse,w=_.readPaths,T=r(87562).newShapes,k=r(51817),A=r(7028).activateLastSelection,M=r(34809),S=M.sorterAsc,E=r(80899),C=r(64025),L=r(5975).getFromId,I=r(34823),P=r(71817).redrawReglTraces,z=r(78865),O=z.MINSELECT,D=E.filter,R=E.tester,F=r(49801),B=F.p2r,N=F.axValue,j=F.getTransform;function U(t){return void 0!==t.subplot}function V(t,e,r,n,i,a,o){var s,l,c,u,h,f,p,m,g,y=e._hoverdata,x=e._fullLayout.clickmode.indexOf(\"event\")>-1,_=[];if(function(t){return t&&Array.isArray(t)&&!0!==t[0].hoverOnBox}(y)){Z(t,e,a);var b=function(t,e){var r,n,i=t[0],a=-1,o=[];for(n=0;n<e.length;n++)if(r=e[n],i.fullData._expandedIndex===r.cd[0].trace._expandedIndex){if(!0===i.hoverOnBox)break;void 0!==i.pointNumber?a=i.pointNumber:void 0!==i.binNumber&&(a=i.binNumber,o=i.pointNumbers);break}return{pointNumber:a,pointNumbers:o,searchInfo:r}}(y,s=X(e,r,n,i));if(b.pointNumbers.length>0?function(t,e){var r,n,i,a=[];for(i=0;i<t.length;i++)(r=t[i]).cd[0].trace.selectedpoints&&r.cd[0].trace.selectedpoints.length>0&&a.push(r);if(1===a.length&&a[0]===e.searchInfo&&(n=e.searchInfo.cd[0].trace).selectedpoints.length===e.pointNumbers.length){for(i=0;i<e.pointNumbers.length;i++)if(n.selectedpoints.indexOf(e.pointNumbers[i])<0)return!1;return!0}return!1}(s,b):function(t){var e,r,n=0;for(r=0;r<t.length;r++)if((e=t[r].cd[0].trace).selectedpoints){if(e.selectedpoints.length>1)return!1;if((n+=e.selectedpoints.length)>1)return!1}return 1===n}(s)&&(f=J(b))){for(o&&o.remove(),g=0;g<s.length;g++)(l=s[g])._module.selectPoints(l,!1);K(e,s),W(a),x&&ft(e)}else{for(p=t.shiftKey&&(void 0!==f?f:J(b)),c=function(t,e,r){return{pointNumber:t,searchInfo:e,subtract:!!r}}(b.pointNumber,b.searchInfo,p),u=G(a.selectionDefs.concat([c])),g=0;g<s.length;g++)if(h=tt(s[g]._module.selectPoints(s[g],u),s[g]),_.length)for(var w=0;w<h.length;w++)_.push(h[w]);else _=h;if(K(e,s,m={points:_}),c&&a&&a.selectionDefs.push(c),o){var T=a.mergedPolygons,k=d(a.dragmode);v(et(T,k),o,a)}x&&ht(e,m)}}}function q(t){return\"pointNumber\"in t&&\"searchInfo\"in t}function H(t){return{xmin:0,xmax:0,ymin:0,ymax:0,pts:[],contains:function(e,r,n,i){var a=t.searchInfo.cd[0].trace._expandedIndex;return i.cd[0].trace._expandedIndex===a&&n===t.pointNumber},isRect:!1,degenerate:!1,subtract:!!t.subtract}}function G(t){if(t.length){for(var e=[],r=q(t[0])?0:t[0][0][0],n=r,i=q(t[0])?0:t[0][0][1],a=i,o=0;o<t.length;o++)if(q(t[o]))e.push(H(t[o]));else{var s=R(t[o]);s.subtract=!!t[o].subtract,e.push(s),r=Math.min(r,s.xmin),n=Math.max(n,s.xmax),i=Math.min(i,s.ymin),a=Math.max(a,s.ymax)}return{xmin:r,xmax:n,ymin:i,ymax:a,pts:[],contains:function(t,r,n,i){for(var a=!1,o=0;o<e.length;o++)e[o].contains(t,r,n,i)&&(a=!e[o].subtract);return a},isRect:!1,degenerate:!1}}}function Z(t,e,r){var n=e._fullLayout,i=r.plotinfo,a=r.dragmode,o=n._lastSelectedSubplot&&n._lastSelectedSubplot===i.id,s=(t.shiftKey||t.altKey)&&!(p(a)&&d(a));o&&s&&i.selection&&i.selection.selectionDefs&&!r.selectionDefs?(r.selectionDefs=i.selection.selectionDefs,r.mergedPolygons=i.selection.mergedPolygons):s&&i.selection||W(r),o||(x(e),n._lastSelectedSubplot=i.id)}function W(t,e){var r=t.dragmode,n=t.plotinfo,i=t.gd;(function(t){return t._fullLayout._activeShapeIndex>=0})(i)&&i._fullLayout._deactivateShape(i),function(t){return t._fullLayout._activeSelectionIndex>=0}(i)&&i._fullLayout._deactivateSelection(i);var o=i._fullLayout._zoomlayer,s=p(r),l=m(r);if(s||l){var c,u,h=o.selectAll(\".select-outline-\"+n.id);h&&i._fullLayout._outlining&&(s&&(c=T(h,t)),c&&a.call(\"_guiRelayout\",i,{shapes:c}),l&&!U(t)&&(u=k(h,t)),u&&(i._fullLayout._noEmitSelectedAtStart=!0,a.call(\"_guiRelayout\",i,{selections:u}).then((function(){e&&A(i)}))),i._fullLayout._outlining=!1)}n.selection={},n.selection.selectionDefs=t.selectionDefs=[],n.selection.mergedPolygons=t.mergedPolygons=[]}function Y(t){return t._id}function X(t,e,r,n){if(!t.calcdata)return[];var i,a,o,s=[],l=e.map(Y),c=r.map(Y);for(o=0;o<t.calcdata.length;o++)if(!0===(a=(i=t.calcdata[o])[0].trace).visible&&a._module&&a._module.selectPoints)if(!U({subplot:n})||a.subplot!==n&&a.geo!==n)if(\"splom\"===a.type){if(a._xaxes[l[0]]&&a._yaxes[c[0]]){var u=$(a._module,i,e[0],r[0]);u.scene=t._fullLayout._splomScenes[a.uid],s.push(u)}}else if(\"sankey\"===a.type){var h=$(a._module,i,e[0],r[0]);s.push(h)}else{if(!(-1!==l.indexOf(a.xaxis)||a._xA&&a._xA.overlaying))continue;if(!(-1!==c.indexOf(a.yaxis)||a._yA&&a._yA.overlaying))continue;s.push($(a._module,i,L(t,a.xaxis),L(t,a.yaxis)))}else s.push($(a._module,i,e[0],r[0]));return s}function $(t,e,r,n){return{_module:t,cd:e,xaxis:r,yaxis:n}}function J(t){var e=t.searchInfo.cd[0].trace,r=t.pointNumber,n=t.pointNumbers,i=n.length>0?n[0]:r;return!!e.selectedpoints&&e.selectedpoints.indexOf(i)>-1}function K(t,e,r){var n,i;for(n=0;n<e.length;n++){var o=e[n].cd[0].trace._fullInput,s=t._fullLayout._tracePreGUI[o.uid]||{};void 0===s.selectedpoints&&(s.selectedpoints=o._input.selectedpoints||null)}if(r){var l=r.points||[];for(n=0;n<e.length;n++)(i=e[n].cd[0].trace)._input.selectedpoints=i._fullInput.selectedpoints=[],i._fullInput!==i&&(i.selectedpoints=[]);for(var c=0;c<l.length;c++){var u=l[c],h=u.data,f=u.fullData,p=u.pointIndex,d=u.pointIndices;d?([].push.apply(h.selectedpoints,d),i._fullInput!==i&&[].push.apply(f.selectedpoints,d)):(h.selectedpoints.push(p),i._fullInput!==i&&f.selectedpoints.push(p))}}else for(n=0;n<e.length;n++)delete(i=e[n].cd[0].trace).selectedpoints,delete i._input.selectedpoints,i._fullInput!==i&&delete i._fullInput.selectedpoints;!function(t,e){for(var r=!1,n=0;n<e.length;n++){var i=e[n],o=i.cd;a.traceIs(o[0].trace,\"regl\")&&(r=!0);var s=i._module,l=s.styleOnSelect||s.style;l&&(l(t,o,o[0].node3),o[0].nodeRangePlot3&&l(t,o,o[0].nodeRangePlot3))}r&&(I(t),P(t))}(t,e)}function Q(t,e,r){for(var i=(r?n.difference:n.union)({regions:t},{regions:[e]}).regions.reverse(),a=0;a<i.length;a++){var o=i[a];o.subtract=st(o,i.slice(0,a))}return i}function tt(t,e){if(Array.isArray(t))for(var r=e.cd,n=e.cd[0].trace,i=0;i<t.length;i++)t[i]=c(t[i],n,r);return t}function et(t,e){for(var r=[],n=0;n<t.length;n++){r[n]=[];for(var i=0;i<t[n].length;i++){r[n][i]=[],r[n][i][0]=i?\"L\":\"M\";for(var a=0;a<t[n][i].length;a++)r[n][i].push(t[n][i][a])}e||r[n].push([\"Z\",r[n][0][1],r[n][0][2]])}return r}function rt(t,e){for(var r,n,i=[],a=[],o=0;o<e.length;o++){var s=e[o];n=s._module.selectPoints(s,t),a.push(n),r=tt(n,s),i=i.concat(r)}return i}function nt(t,e,r,n,i){var a,o,s,l=!!n;i&&(a=i.plotinfo,o=i.xaxes[0]._id,s=i.yaxes[0]._id);var c=[],u=[],h=ot(t),f=t._fullLayout;if(a){var d=f._zoomlayer,g=f.dragmode,y=p(g),v=m(g);if(y||v){var x=L(t,o,\"x\"),_=L(t,s,\"y\");if(x&&_){var b=d.selectAll(\".select-outline-\"+a.id);if(b&&t._fullLayout._outlining&&b.length){for(var T=b[0][0].getAttribute(\"d\"),k=w(T,t,a),A=[],M=0;M<k.length;M++){for(var S=k[M],E=[],C=0;C<S.length;C++)E.push([lt(x,S[C][1]),lt(_,S[C][2])]);E.xref=o,E.yref=s,E.subtract=st(E,A),A.push(E)}h=h.concat(A)}}}}var I=o&&s?[o+s]:f._subplots.cartesian;!function(t){var e=t.calcdata;if(e)for(var r=0;r<e.length;r++){var n=e[r][0].trace,i=t._fullLayout._splomScenes;if(i){var a=i[n.uid];a&&(a.selectBatch=[])}}}(t);for(var P={},z=0;z<I.length;z++){var O=I[z],D=O.indexOf(\"y\"),R=O.slice(0,D),F=O.slice(D),B=o&&s?r:void 0;if(B=at(h,R,F,B)){var N=n;if(!l){var j=L(t,R,\"x\"),U=L(t,F,\"y\");N=X(t,[j],[U],O);for(var V=0;V<N.length;V++){var q=N[V],H=q.cd[0],G=H.trace;if(\"scattergl\"===q._module.name&&!H.t.xpx){var Z=G.x,W=G.y,Y=G._length;H.t.xpx=[],H.t.ypx=[];for(var $=0;$<Y;$++)H.t.xpx[$]=j.c2p(Z[$]),H.t.ypx[$]=U.c2p(W[$])}\"splom\"===q._module.name&&(P[G.uid]||(P[G.uid]=!0))}}var J=rt(B,N);c=c.concat(J),u=u.concat(N)}}var Q={points:c};K(t,u,Q);var tt=f.clickmode.indexOf(\"event\")>-1&&e;if(!a&&e){var et=ot(t,!0);if(et.length){var nt=et[0].xref,pt=et[0].yref;if(nt&&pt){var dt=ct(et);ut([L(t,nt,\"x\"),L(t,pt,\"y\")])(Q,dt)}}t._fullLayout._noEmitSelectedAtStart?t._fullLayout._noEmitSelectedAtStart=!1:tt&&ht(t,Q),f._reselect=!1}if(!a&&f._deselect){var mt=f._deselect;(function(t,e,r){for(var n=0;n<r.length;n++){var i=r[n];if(i.xaxis&&i.xaxis._id===t&&i.yaxis&&i.yaxis._id===e)return!0}return!1})(o=mt.xref,s=mt.yref,u)||it(t,o,s,n),tt&&(Q.points.length?ht(t,Q):ft(t)),f._deselect=!1}return{eventData:Q,selectionTesters:r}}function it(t,e,r,n){n=X(t,[L(t,e,\"x\")],[L(t,r,\"y\")],e+r);for(var i=0;i<n.length;i++){var a=n[i];a._module.selectPoints(a,!1)}K(t,n)}function at(t,e,r,n){for(var i,a=0;a<t.length;a++){var o=t[a];e===o.xref&&r===o.yref&&(i?n=G(i=Q(i,o,!!o.subtract)):(i=[o],n=R(o)))}return n}function ot(t,e){for(var r=[],n=t._fullLayout,i=n.selections,a=i.length,o=0;o<a;o++)if(!e||o===n._activeSelectionIndex){var s=i[o];if(s){var l,c,u,h,f,p=s.xref,d=s.yref,m=L(t,p,\"x\"),v=L(t,d,\"y\");if(\"rect\"===s.type){f=[];var x=lt(m,s.x0),_=lt(m,s.x1),b=lt(v,s.y0),w=lt(v,s.y1);f=[[x,b],[x,w],[_,w],[_,b]],l=Math.min(x,_),c=Math.max(x,_),u=Math.min(b,w),h=Math.max(b,w),f.xmin=l,f.xmax=c,f.ymin=u,f.ymax=h,f.xref=p,f.yref=d,f.subtract=!1,f.isRect=!0,r.push(f)}else if(\"path\"===s.type)for(var T=s.path.split(\"Z\"),k=[],A=0;A<T.length;A++){var M=T[A];if(M){M+=\"Z\";var S=g.extractPathCoords(M,y.paramIsX,\"raw\"),E=g.extractPathCoords(M,y.paramIsY,\"raw\");l=1/0,c=-1/0,u=1/0,h=-1/0,f=[];for(var C=0;C<S.length;C++){var I=lt(m,S[C]),P=lt(v,E[C]);f.push([I,P]),l=Math.min(I,l),c=Math.max(I,c),u=Math.min(P,u),h=Math.max(P,h)}f.xmin=l,f.xmax=c,f.ymin=u,f.ymax=h,f.xref=p,f.yref=d,f.subtract=st(f,k),k.push(f),r.push(f)}}}}return r}function st(t,e){for(var r=!1,n=0;n<e.length;n++)for(var a=e[n],o=0;o<t.length;o++)if(i(t[o],a)){r=!r;break}return r}function lt(t,e){return\"date\"===t.type&&(e=e.replace(\"_\",\" \")),\"log\"===t.type?t.c2p(e):t.r2p(e,null,t.calendar)}function ct(t){for(var e=t.length,r=[],n=0;n<e;n++){var i=t[n];r=(r=r.concat(i)).concat([i[0]])}return(a=r).isRect=5===a.length&&a[0][0]===a[4][0]&&a[0][1]===a[4][1]&&a[0][0]===a[1][0]&&a[2][0]===a[3][0]&&a[0][1]===a[3][1]&&a[1][1]===a[2][1]||a[0][1]===a[1][1]&&a[2][1]===a[3][1]&&a[0][0]===a[3][0]&&a[1][0]===a[2][0],a.isRect&&(a.xmin=Math.min(a[0][0],a[2][0]),a.xmax=Math.max(a[0][0],a[2][0]),a.ymin=Math.min(a[0][1],a[2][1]),a.ymax=Math.max(a[0][1],a[2][1])),a;var a}function ut(t){return function(e,r){for(var n,i,a=0;a<t.length;a++){var o=t[a],s=o._id,l=s.charAt(0);if(r.isRect){n||(n={});var c=r[l+\"min\"],u=r[l+\"max\"];void 0!==c&&void 0!==u&&(n[s]=[B(o,c),B(o,u)].sort(S))}else i||(i={}),i[s]=r.map(N(o))}n&&(e.range=n),i&&(e.lassoPoints=i)}}function ht(t,e){e&&(e.selections=(t.layout||{}).selections||[]),t.emit(\"plotly_selected\",e)}function ft(t){t.emit(\"plotly_deselect\",null)}t.exports={reselect:nt,prepSelect:function(t,e,r,n,i){var c=!U(n),u=h(i),g=f(i),y=d(i),x=p(i),_=m(i),w=\"drawcircle\"===i,T=\"drawline\"===i||w,k=n.gd,A=k._fullLayout,S=_&&\"immediate\"===A.newselection.mode&&c,E=A._zoomlayer,L=n.element.getBoundingClientRect(),I=n.plotinfo,P=j(I),F=e-L.left,B=r-L.top;A._calcInverseTransform(k);var N=M.apply3DTransform(A._invTransform)(F,B);F=N[0],B=N[1];var q,H,Y,$,J,tt,at,ot=A._invScaleX,st=A._invScaleY,lt=F,pt=B,dt=\"M\"+F+\",\"+B,mt=n.xaxes[0],gt=n.yaxes[0],yt=mt._length,vt=gt._length,xt=t.altKey&&!(p(i)&&y);Z(t,k,n),u&&(q=D([[F,B]],z.BENDPX));var _t=E.selectAll(\"path.select-outline-\"+I.id).data([1]),bt=x?A.newshape:A.newselection;x&&(n.hasText=bt.label.text||bt.label.texttemplate);var wt=x&&!y?bt.fillcolor:\"rgba(0,0,0,0)\",Tt=bt.line.color||(c?s.contrast(k._fullLayout.plot_bgcolor):\"#7f7f7f\");_t.enter().append(\"path\").attr(\"class\",\"select-outline select-outline-\"+I.id).style({opacity:x?bt.opacity/2:1,\"stroke-dasharray\":o(bt.line.dash,bt.line.width),\"stroke-width\":bt.line.width+\"px\",\"shape-rendering\":\"crispEdges\"}).call(s.stroke,Tt).call(s.fill,wt).attr(\"fill-rule\",\"evenodd\").classed(\"cursor-move\",!!x).attr(\"transform\",P).attr(\"d\",dt+\"Z\");var kt=E.append(\"path\").attr(\"class\",\"zoombox-corners\").style({fill:s.background,stroke:s.defaultLine,\"stroke-width\":1}).attr(\"transform\",P).attr(\"d\",\"M0,0Z\");if(x&&n.hasText){var At=E.select(\".label-temp\");At.empty()&&(At=E.append(\"g\").classed(\"label-temp\",!0).classed(\"select-outline\",!0).style({opacity:.8}))}var Mt=A._uid+z.SELECTID,St=[],Et=X(k,n.xaxes,n.yaxes,n.subplot);S&&!t.shiftKey&&(n._clearSubplotSelections=function(){if(c){var t=mt._id,e=gt._id;it(k,t,e,Et);for(var r=(k.layout||{}).selections||[],n=[],i=!1,o=0;o<r.length;o++){var s=A.selections[o];s.xref!==t||s.yref!==e?n.push(r[o]):i=!0}i&&(k._fullLayout._noEmitSelectedAtStart=!0,a.call(\"_guiRelayout\",k,{selections:n}))}});var Ct=function(t){return t.plotinfo.fillRangeItems||ut(t.xaxes.concat(t.yaxes))}(n);n.moveFn=function(t,e){n._clearSubplotSelections&&(n._clearSubplotSelections(),n._clearSubplotSelections=void 0),lt=Math.max(0,Math.min(yt,ot*t+F)),pt=Math.max(0,Math.min(vt,st*e+B));var r=Math.abs(lt-F),i=Math.abs(pt-B);if(g){var a,o,s;if(_){var l=A.selectdirection;switch(a=\"any\"===l?i<Math.min(.6*r,O)?\"h\":r<Math.min(.6*i,O)?\"v\":\"d\":l){case\"h\":o=w?vt/2:0,s=vt;break;case\"v\":o=w?yt/2:0,s=yt}}if(x)switch(A.newshape.drawdirection){case\"vertical\":a=\"h\",o=w?vt/2:0,s=vt;break;case\"horizontal\":a=\"v\",o=w?yt/2:0,s=yt;break;case\"ortho\":r<i?(a=\"h\",o=B,s=pt):(a=\"v\",o=F,s=lt);break;default:a=\"d\"}\"h\"===a?(($=T?b(w,[lt,o],[lt,s]):[[F,o],[F,s],[lt,s],[lt,o]]).xmin=T?lt:Math.min(F,lt),$.xmax=T?lt:Math.max(F,lt),$.ymin=Math.min(o,s),$.ymax=Math.max(o,s),kt.attr(\"d\",\"M\"+$.xmin+\",\"+(B-O)+\"h-4v\"+2*O+\"h4ZM\"+($.xmax-1)+\",\"+(B-O)+\"h4v\"+2*O+\"h-4Z\")):\"v\"===a?(($=T?b(w,[o,pt],[s,pt]):[[o,B],[o,pt],[s,pt],[s,B]]).xmin=Math.min(o,s),$.xmax=Math.max(o,s),$.ymin=T?pt:Math.min(B,pt),$.ymax=T?pt:Math.max(B,pt),kt.attr(\"d\",\"M\"+(F-O)+\",\"+$.ymin+\"v-4h\"+2*O+\"v4ZM\"+(F-O)+\",\"+($.ymax-1)+\"v4h\"+2*O+\"v-4Z\")):\"d\"===a&&(($=T?b(w,[F,B],[lt,pt]):[[F,B],[F,pt],[lt,pt],[lt,B]]).xmin=Math.min(F,lt),$.xmax=Math.max(F,lt),$.ymin=Math.min(B,pt),$.ymax=Math.max(B,pt),kt.attr(\"d\",\"M0,0Z\"))}else u&&(q.addPt([lt,pt]),$=q.filtered);if(n.selectionDefs&&n.selectionDefs.length?(Y=Q(n.mergedPolygons,$,xt),$.subtract=xt,H=G(n.selectionDefs.concat([$]))):(Y=[$],H=R($)),v(et(Y,y),_t,n),_){var c,h=nt(k,!1),f=h.eventData?h.eventData.points.slice():[];h=nt(k,!1,H,Et,n),H=h.selectionTesters,at=h.eventData,c=q?q.filtered:ct(Y),C.throttle(Mt,z.SELECTDELAY,(function(){for(var t=(St=rt(H,Et)).slice(),e=0;e<f.length;e++){for(var r=f[e],n=!1,i=0;i<t.length;i++)if(t[i].curveNumber===r.curveNumber&&t[i].pointNumber===r.pointNumber){n=!0;break}n||t.push(r)}t.length&&(at||(at={}),at.points=t),Ct(at,c),function(t,e){t.emit(\"plotly_selecting\",e)}(k,at)}))}},n.clickFn=function(t,e){if(kt.remove(),k._fullLayout._activeShapeIndex>=0)k._fullLayout._deactivateShape(k);else if(!x){var r=A.clickmode;C.done(Mt).then((function(){if(C.clear(Mt),2===t){for(_t.remove(),J=0;J<Et.length;J++)(tt=Et[J])._module.selectPoints(tt,!1);if(K(k,Et),W(n),ft(k),Et.length){var i=Et[0].xaxis,o=Et[0].yaxis;if(i&&o){for(var s=[],c=k._fullLayout.selections,u=0;u<c.length;u++){var h=c[u];h&&(h.xref===i._id&&h.yref===o._id||s.push(h))}s.length<c.length&&(k._fullLayout._noEmitSelectedAtStart=!0,a.call(\"_guiRelayout\",k,{selections:s}))}}}else r.indexOf(\"select\")>-1&&V(e,k,n.xaxes,n.yaxes,n.subplot,n,_t),\"event\"===r&&ht(k,void 0);l.click(k,e,I.id)})).catch(M.error)}},n.doneFn=function(){kt.remove(),C.done(Mt).then((function(){C.clear(Mt),!S&&$&&n.selectionDefs&&($.subtract=xt,n.selectionDefs.push($),n.mergedPolygons.length=0,[].push.apply(n.mergedPolygons,Y)),(S||x)&&W(n,S),n.doneFnCompleted&&n.doneFnCompleted(St),_&&ht(k,at)})).catch(M.error)}},clearOutline:x,clearSelectionsCache:W,selectOnClick:V}},43144:function(t,e,r){\"use strict\";var n=r(50222),i=r(80337),a=r(36640).line,o=r(94850).T,s=r(93049).extendFlat,l=r(78032).templatedArray,c=(r(35081),r(9829)),u=r(3208).LF,h=r(41235);t.exports=l(\"shape\",{visible:s({},c.visible,{editType:\"calc+arraydraw\"}),showlegend:{valType:\"boolean\",dflt:!1,editType:\"calc+arraydraw\"},legend:s({},c.legend,{editType:\"calc+arraydraw\"}),legendgroup:s({},c.legendgroup,{editType:\"calc+arraydraw\"}),legendgrouptitle:{text:s({},c.legendgrouptitle.text,{editType:\"calc+arraydraw\"}),font:i({editType:\"calc+arraydraw\"}),editType:\"calc+arraydraw\"},legendrank:s({},c.legendrank,{editType:\"calc+arraydraw\"}),legendwidth:s({},c.legendwidth,{editType:\"calc+arraydraw\"}),type:{valType:\"enumerated\",values:[\"circle\",\"rect\",\"path\",\"line\"],editType:\"calc+arraydraw\"},layer:{valType:\"enumerated\",values:[\"below\",\"above\",\"between\"],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\"},x0shift:{valType:\"number\",dflt:0,min:-1,max:1,editType:\"calc\"},x1shift:{valType:\"number\",dflt:0,min:-1,max:1,editType:\"calc\"},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\"},y0shift:{valType:\"number\",dflt:0,min:-1,max:1,editType:\"calc\"},y1shift:{valType:\"number\",dflt:0,min:-1,max:1,editType:\"calc\"},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(h)}),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\"})},44959:function(t,e,r){\"use strict\";var n=r(34809),i=r(29714),a=r(2956),o=r(49728);function s(t){return c(t.line.width,t.xsizemode,t.x0,t.x1,t.path,!1)}function l(t){return c(t.line.width,t.ysizemode,t.y0,t.y1,t.path,!0)}function c(t,e,r,i,s,l){var c=t/2,u=l;if(\"pixel\"===e){var h=s?o.extractPathCoords(s,l?a.paramIsY:a.paramIsX):[r,i],f=n.aggNums(Math.max,null,h),p=n.aggNums(Math.min,null,h),d=p<0?Math.abs(p)+c:c,m=f>0?f+c:c;return{ppad:c,ppadplus:u?d:m,ppadminus:u?m:d}}return{ppad:c}}function u(t,e,r){var n,i,s=\"x\"===t._id.charAt(0)?\"x\":\"y\",l=\"category\"===t.type||\"multicategory\"===t.type,c=0,u=0,h=l?t.r2c:t.d2c;if(\"scaled\"===e[s+\"sizemode\"]?(n=e[s+\"0\"],i=e[s+\"1\"],l&&(c=e[s+\"0shift\"],u=e[s+\"1shift\"])):(n=e[s+\"anchor\"],i=e[s+\"anchor\"]),void 0!==n)return[h(n)+c,h(i)+u];if(e.path){var f,p,d,m,g=1/0,y=-1/0,v=e.path.match(a.segmentRE);for(\"date\"===t.type&&(h=o.decodeDate(h)),f=0;f<v.length;f++)void 0!==(p=r[v[f].charAt(0)].drawn)&&(!(d=v[f].substr(1).match(a.paramRE))||d.length<p||((m=h(d[p]))<g&&(g=m),m>y&&(y=m)));return y>=g?[g,y]:void 0}}t.exports=function(t){var e=t._fullLayout,r=n.filterVisible(e.shapes);if(r.length&&t._fullData.length)for(var o=0;o<r.length;o++){var c,h,f=r[o];f._extremes={};var p=i.getRefType(f.xref),d=i.getRefType(f.yref);\"paper\"!==f.xref&&\"domain\"!==p&&(h=u(c=i.getFromId(t,f.xref),f,a.paramIsX))&&(f._extremes[c._id]=i.findExtremes(c,h,s(f))),\"paper\"!==f.yref&&\"domain\"!==d&&(h=u(c=i.getFromId(t,f.yref),f,a.paramIsY))&&(f._extremes[c._id]=i.findExtremes(c,h,l(f)))}}},2956:function(t){\"use strict\";t.exports={segmentRE:/[MLHVQCTSZ][^MLHVQCTSZ]*/g,paramRE:/[^\\s,]+/g,paramIsX:{M:{0:!0,drawn:0},L:{0:!0,drawn:0},H:{0:!0,drawn:0},V:{},Q:{0:!0,2:!0,drawn:2},C:{0:!0,2:!0,4:!0,drawn:4},T:{0:!0,drawn:0},S:{0:!0,2:!0,drawn:2},Z:{}},paramIsY:{M:{1:!0,drawn:1},L:{1:!0,drawn:1},H:{},V:{0:!0,drawn:0},Q:{1:!0,3:!0,drawn:3},C:{1:!0,3:!0,5:!0,drawn:5},T:{1:!0,drawn:1},S:{1:!0,3:!0,drawn:5},Z:{}},numParams:{M:2,L:2,H:1,V:1,Q:4,C:6,T:2,S:4,Z:0}}},74367:function(t,e,r){\"use strict\";var n=r(34809),i=r(29714),a=r(59008),o=r(43144),s=r(49728);function l(t,e,r){function a(r,i){return n.coerce(t,e,o,r,i)}if(e._isShape=!0,a(\"visible\")){a(\"showlegend\")&&(a(\"legend\"),a(\"legendwidth\"),a(\"legendgroup\"),a(\"legendgrouptitle.text\"),n.coerceFont(a,\"legendgrouptitle.font\"),a(\"legendrank\"));var l=a(\"path\"),c=a(\"type\",l?\"path\":\"rect\"),u=\"path\"!==c;u&&delete e.path,a(\"editable\"),a(\"layer\"),a(\"opacity\"),a(\"fillcolor\"),a(\"fillrule\"),a(\"line.width\")&&(a(\"line.color\"),a(\"line.dash\"));for(var h=a(\"xsizemode\"),f=a(\"ysizemode\"),p=[\"x\",\"y\"],d=0;d<2;d++){var m,g,y,v=p[d],x=v+\"anchor\",_=\"x\"===v?h:f,b={_fullLayout:r},w=i.coerceRef(t,e,b,v,void 0,\"paper\");if(\"range\"===i.getRefType(w)?((m=i.getFromId(b,w))._shapeIndices.push(e._index),y=s.rangeToShapePosition(m),g=s.shapePositionToRange(m),\"category\"!==m.type&&\"multicategory\"!==m.type||(a(v+\"0shift\"),a(v+\"1shift\"))):g=y=n.identity,u){var T=v+\"0\",k=v+\"1\",A=t[T],M=t[k];t[T]=g(t[T],!0),t[k]=g(t[k],!0),\"pixel\"===_?(a(T,0),a(k,10)):(i.coercePosition(e,b,a,w,T,.25),i.coercePosition(e,b,a,w,k,.75)),e[T]=y(e[T]),e[k]=y(e[k]),t[T]=A,t[k]=M}if(\"pixel\"===_){var S=t[x];t[x]=g(t[x],!0),i.coercePosition(e,b,a,w,x,.25),e[x]=y(e[x]),t[x]=S}}u&&n.noneOrAll(t,e,[\"x0\",\"x1\",\"y0\",\"y1\"]);var E,C,L=\"line\"===c;if(u&&(E=a(\"label.texttemplate\")),E||(C=a(\"label.text\")),C||E){a(\"label.textangle\");var I=a(\"label.textposition\",L?\"middle\":\"middle center\");a(\"label.xanchor\"),a(\"label.yanchor\",function(t,e){return t?\"bottom\":-1!==e.indexOf(\"top\")?\"top\":-1!==e.indexOf(\"bottom\")?\"bottom\":\"middle\"}(L,I)),a(\"label.padding\"),n.coerceFont(a,\"label.font\",r.font)}}}t.exports=function(t,e){a(t,e,{name:\"shapes\",handleItemDefaults:l})}},44433:function(t,e,r){\"use strict\";var n=r(34809),i=r(29714),a=r(30635),o=r(62203),s=r(81055).readPaths,l=r(49728),c=l.getPathString,u=r(41235),h=r(4530).FROM_TL;t.exports=function(t,e,r,f){if(f.selectAll(\".shape-label\").remove(),r.label.text||r.label.texttemplate){var p;if(r.label.texttemplate){var d={};if(\"path\"!==r.type){var m=i.getFromId(t,r.xref),g=i.getFromId(t,r.yref);for(var y in u){var v=u[y](r,m,g);void 0!==v&&(d[y]=v)}}p=n.texttemplateStringForShapes(r.label.texttemplate,{},t._fullLayout._d3locale,d)}else p=r.label.text;var x,_,b,w,T={\"data-index\":e},k=r.label.font,A=f.append(\"g\").attr(T).classed(\"shape-label\",!0).append(\"text\").attr({\"data-notex\":1}).classed(\"shape-label-text\",!0).text(p);if(r.path){var M=c(t,r),S=s(M,t);x=1/0,b=1/0,_=-1/0,w=-1/0;for(var E=0;E<S.length;E++)for(var C=0;C<S[E].length;C++)for(var L=S[E][C],I=1;I<L.length;I+=2){var P=L[I],z=L[I+1];x=Math.min(x,P),_=Math.max(_,P),b=Math.min(b,z),w=Math.max(w,z)}}else{var O=i.getFromId(t,r.xref),D=r.x0shift,R=r.x1shift,F=i.getRefType(r.xref),B=i.getFromId(t,r.yref),N=r.y0shift,j=r.y1shift,U=i.getRefType(r.yref),V=function(e,r){return l.getDataToPixel(t,O,r,!1,F)(e)},q=function(e,r){return l.getDataToPixel(t,B,r,!0,U)(e)};x=V(r.x0,D),_=V(r.x1,R),b=q(r.y0,N),w=q(r.y1,j)}var H=r.label.textangle;\"auto\"===H&&(H=\"line\"===r.type?function(t,e,r,n){var i,a;return a=Math.abs(r-t),i=r>=t?e-n:n-e,-180/Math.PI*Math.atan2(i,a)}(x,b,_,w):0),A.call((function(e){return e.call(o.font,k).attr({}),a.convertToTspans(e,t),e}));var G=function(t,e,r,n,i,a,o){var s,l,c,u,f=i.label.textposition,p=i.label.textangle,d=i.label.padding,m=i.type,g=Math.PI/180*a,y=Math.sin(g),v=Math.cos(g),x=i.label.xanchor,_=i.label.yanchor;if(\"line\"===m){\"start\"===f?(s=t,l=e):\"end\"===f?(s=r,l=n):(s=(t+r)/2,l=(e+n)/2),\"auto\"===x&&(x=\"start\"===f?\"auto\"===p?r>t?\"left\":r<t?\"right\":\"center\":r>t?\"right\":r<t?\"left\":\"center\":\"end\"===f?\"auto\"===p?r>t?\"right\":r<t?\"left\":\"center\":r>t?\"left\":r<t?\"right\":\"center\":\"center\");var b={bottom:-1,middle:0,top:1};if(\"auto\"===p){var w=b[_];c=-d*y*w,u=d*v*w}else c=d*{left:1,center:0,right:-1}[x],u=d*b[_];s+=c,l+=u}else c=d+3,-1!==f.indexOf(\"right\")?(s=Math.max(t,r)-c,\"auto\"===x&&(x=\"right\")):-1!==f.indexOf(\"left\")?(s=Math.min(t,r)+c,\"auto\"===x&&(x=\"left\")):(s=(t+r)/2,\"auto\"===x&&(x=\"center\")),l=-1!==f.indexOf(\"top\")?Math.min(e,n):-1!==f.indexOf(\"bottom\")?Math.max(e,n):(e+n)/2,u=d,\"bottom\"===_?l-=u:\"top\"===_&&(l+=u);var T=h[_],k=i.label.font.size,A=o.height;return{textx:s+(A*T-k)*y,texty:l+-(A*T-k)*v,xanchor:x}}(x,b,_,w,r,H,o.bBox(A.node())),Z=G.textx,W=G.texty,Y=G.xanchor;A.attr({\"text-anchor\":{left:\"start\",center:\"middle\",right:\"end\"}[Y],y:W,x:Z,transform:\"rotate(\"+H+\",\"+Z+\",\"+W+\")\"}).call(a.positionText,Z,W)}}},561:function(t,e,r){\"use strict\";var n=r(34809).strTranslate,i=r(14751),a=r(70414),o=a.drawMode,s=a.selectMode,l=r(33626),c=r(78766),u=r(93391),h=u.i000,f=u.i090,p=u.i180,d=u.i270,m=r(78534).clearOutlineControllers,g=r(81055),y=g.pointsOnRectangle,v=g.pointsOnEllipse,x=g.writePaths,_=r(87562).newShapes,b=r(87562).createShapeObj,w=r(51817),T=r(44433);function k(t,e){var r,n,i,a=t[e][1],o=t[e][2],s=t.length;return n=t[r=(e+1)%s][1],i=t[r][2],n===a&&i===o&&(n=t[r=(e+2)%s][1],i=t[r][2]),[r,n,i]}t.exports=function t(e,r,a,u){u||(u=0);var g=a.gd;function A(){t(e,r,a,u++),(v(e[0])||a.hasText)&&M({redrawing:!0})}function M(t){var e={};void 0!==a.isActiveShape&&(a.isActiveShape=!1,e=_(r,a)),void 0!==a.isActiveSelection&&(a.isActiveSelection=!1,e=w(r,a),g._fullLayout._reselect=!0),Object.keys(e).length&&l.call((t||{}).redrawing?\"relayout\":\"_guiRelayout\",g,e)}var S,E,C,L,I,P=g._fullLayout._zoomlayer,z=a.dragmode,O=o(z),D=s(z);if((O||D)&&(g._fullLayout._outlining=!0),m(g),r.attr(\"d\",x(e)),u||!a.isActiveShape&&!a.isActiveSelection||(I=function(t,e){for(var r=0;r<e.length;r++){var n=e[r];t[r]=[];for(var i=0;i<n.length;i++){t[r][i]=[];for(var a=0;a<n[i].length;a++)t[r][i][a]=n[i][a]}}return t}([],e),function(t){S=[];for(var r=0;r<e.length;r++){var o=e[r],s=y(o),l=!s&&v(o);S[r]=[];for(var u=o.length,m=0;m<u;m++)if(\"Z\"!==o[m][0]&&(!l||m===h||m===f||m===p||m===d)){var x,_=s&&a.isActiveSelection;_&&(x=k(o,m));var b=o[m][1],w=o[m][2],T=t.append(_?\"rect\":\"circle\").attr(\"data-i\",r).attr(\"data-j\",m).style({fill:c.background,stroke:c.defaultLine,\"stroke-width\":1,\"shape-rendering\":\"crispEdges\"});if(_){var A=x[1]-b,M=x[2]-w,E=M?5:Math.max(Math.min(25,Math.abs(A)-5),5),C=A?5:Math.max(Math.min(25,Math.abs(M)-5),5);T.classed(M?\"cursor-ew-resize\":\"cursor-ns-resize\",!0).attr(\"width\",E).attr(\"height\",C).attr(\"x\",b-E/2).attr(\"y\",w-C/2).attr(\"transform\",n(A/2,M/2))}else T.classed(\"cursor-grab\",!0).attr(\"r\",5).attr(\"cx\",b).attr(\"cy\",w);S[r][m]={element:T.node(),gd:g,prepFn:B,doneFn:j,clickFn:U},i.init(S[r][m])}}}(P.append(\"g\").attr(\"class\",\"outline-controllers\")),function(){if(E=[],e.length){E[0]={element:r[0][0],gd:g,prepFn:q,doneFn:H,clickFn:G},i.init(E[0])}}()),O&&a.hasText){var R=P.select(\".label-temp\"),F=b(r,a,a.dragmode);T(g,\"label-temp\",F,R)}function B(t){C=+t.srcElement.getAttribute(\"data-i\"),L=+t.srcElement.getAttribute(\"data-j\"),S[C][L].moveFn=N}function N(t,r){if(e.length){var n=I[C][L][1],i=I[C][L][2],o=e[C],s=o.length;if(y(o)){var l=t,c=r;a.isActiveSelection&&(k(o,L)[1]===o[L][1]?c=0:l=0);for(var u=0;u<s;u++)if(u!==L){var h=o[u];h[1]===o[L][1]&&(h[1]=n+l),h[2]===o[L][2]&&(h[2]=i+c)}if(o[L][1]=n+l,o[L][2]=i+c,!y(o))for(var f=0;f<s;f++)for(var p=0;p<o[f].length;p++)o[f][p]=I[C][f][p]}else o[L][1]=n+t,o[L][2]=i+r;A()}}function j(){M()}function U(t,r){if(2===t){C=+r.srcElement.getAttribute(\"data-i\"),L=+r.srcElement.getAttribute(\"data-j\");var n=e[C];y(n)||v(n)||function(){if(e.length&&e[C]&&e[C].length){for(var t=[],r=0;r<e[C].length;r++)r!==L&&t.push(e[C][r]);t.length>1&&(2!==t.length||\"Z\"!==t[1][0])&&(0===L&&(t[0][0]=\"M\"),e[C]=t,A(),M())}}()}}function V(t,r){!function(t,r){if(e.length)for(var n=0;n<e.length;n++)for(var i=0;i<e[n].length;i++)for(var a=0;a+2<e[n][i].length;a+=2)e[n][i][a+1]=I[n][i][a+1]+t,e[n][i][a+2]=I[n][i][a+2]+r}(t,r),A()}function q(t){(C=+t.srcElement.getAttribute(\"data-i\"))||(C=0),E[C].moveFn=V}function H(){M()}function G(t){2===t&&function(t){if(s(t._fullLayout.dragmode)){m(t);var e=t._fullLayout._activeSelectionIndex,r=(t.layout||{}).selections||[];if(e<r.length){for(var n=[],i=0;i<r.length;i++)i!==e&&n.push(r[i]);delete t._fullLayout._activeSelectionIndex;var a=t._fullLayout.selections[e];t._fullLayout._deselect={xref:a.xref,yref:a.yref},l.call(\"_guiRelayout\",t,{selections:n})}}}(g)}}},28231:function(t,e,r){\"use strict\";var n=r(45568),i=r(33626),a=r(34809),o=r(29714),s=r(81055).readPaths,l=r(561),c=r(44433),u=r(78534).clearOutlineControllers,h=r(78766),f=r(62203),p=r(78032).arrayEditor,d=r(14751),m=r(27983),g=r(2956),y=r(49728),v=y.getPathString;function x(t){var e=t._fullLayout;for(var r in e._shapeUpperLayer.selectAll(\"path\").remove(),e._shapeLowerLayer.selectAll(\"path\").remove(),e._shapeUpperLayer.selectAll(\"text\").remove(),e._shapeLowerLayer.selectAll(\"text\").remove(),e._plots){var n=e._plots[r].shapelayer;n&&(n.selectAll(\"path\").remove(),n.selectAll(\"text\").remove())}for(var i=0;i<e.shapes.length;i++)!0===e.shapes[i].visible&&w(t,i)}function _(t){return!!t._fullLayout._outlining}function b(t){return!t._context.edits.shapePosition}function w(t,e){t._fullLayout._paperdiv.selectAll('.shapelayer [data-index=\"'+e+'\"]').remove();var r=y.makeShapesOptionsAndPlotinfo(t,e),u=r.options,w=r.plotinfo;function M(r){var M=v(t,u),S={\"data-index\":e,\"fill-rule\":u.fillrule,d:M},E=u.opacity,C=u.fillcolor,L=u.line.width?u.line.color:\"rgba(0,0,0,0)\",I=u.line.width,P=u.line.dash;I||!0!==u.editable||(I=5,P=\"solid\");var z=\"Z\"!==M[M.length-1],O=b(t)&&u.editable&&t._fullLayout._activeShapeIndex===e;O&&(C=z?\"rgba(0,0,0,0)\":t._fullLayout.activeshape.fillcolor,E=t._fullLayout.activeshape.opacity);var D,R=r.append(\"g\").classed(\"shape-group\",!0).attr({\"data-index\":e}),F=R.append(\"path\").attr(S).style(\"opacity\",E).call(h.stroke,L).call(h.fill,C).call(f.dashLine,P,I);if(T(R,t,u),c(t,e,u,R),(O||t._context.edits.shapePosition)&&(D=p(t.layout,\"shapes\",u)),O){F.style({cursor:\"move\"});var B={element:F.node(),plotinfo:w,gd:t,editHelpers:D,hasText:u.label.text||u.label.texttemplate,isActiveShape:!0},N=s(M,t);l(N,F,B)}else t._context.edits.shapePosition?function(t,e,r,s,l,u){var h,p,x,b,w,A,M,S,E,C,L,I,P,z,O,D,R=10,F=10,B=\"pixel\"===r.xsizemode,N=\"pixel\"===r.ysizemode,j=\"line\"===r.type,U=\"path\"===r.type,V=u.modifyItem,q=n.select(e.node().parentNode),H=o.getFromId(t,r.xref),G=o.getRefType(r.xref),Z=o.getFromId(t,r.yref),W=o.getRefType(r.yref),Y=r.x0shift,X=r.x1shift,$=r.y0shift,J=r.y1shift,K=function(e,r){return y.getDataToPixel(t,H,r,!1,G)(e)},Q=function(e,r){return y.getDataToPixel(t,Z,r,!0,W)(e)},tt=y.getPixelToData(t,H,!1,G),et=y.getPixelToData(t,Z,!0,W),rt=j?function(){var t=10,n=Math.max(r.line.width,t),i=l.append(\"g\").attr(\"data-index\",s).attr(\"drag-helper\",!0);i.append(\"path\").attr(\"d\",e.attr(\"d\")).style({cursor:\"move\",\"stroke-width\":n,\"stroke-opacity\":\"0\"});var a={\"fill-opacity\":\"0\"},o=Math.max(n/2,t);return i.append(\"circle\").attr({\"data-line-point\":\"start-point\",cx:B?K(r.xanchor)+r.x0:K(r.x0,Y),cy:N?Q(r.yanchor)-r.y0:Q(r.y0,$),r:o}).style(a).classed(\"cursor-grab\",!0),i.append(\"circle\").attr({\"data-line-point\":\"end-point\",cx:B?K(r.xanchor)+r.x1:K(r.x1,X),cy:N?Q(r.yanchor)-r.y1:Q(r.y1,J),r:o}).style(a).classed(\"cursor-grab\",!0),i}():e,nt={element:rt.node(),gd:t,prepFn:function(n){_(t)||(B&&(w=K(r.xanchor)),N&&(A=Q(r.yanchor)),\"path\"===r.type?O=r.path:(h=B?r.x0:K(r.x0),p=N?r.y0:Q(r.y0),x=B?r.x1:K(r.x1),b=N?r.y1:Q(r.y1)),h<x?(E=h,P=\"x0\",C=x,z=\"x1\"):(E=x,P=\"x1\",C=h,z=\"x0\"),!N&&p<b||N&&p>b?(M=p,L=\"y0\",S=b,I=\"y1\"):(M=b,L=\"y1\",S=p,I=\"y0\"),it(n),st(l,r),function(t,e,r){var n=e.xref,i=e.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(t,l?\"clip\"+r._fullLayout._uid+l:null,r)}(e,r,t),nt.moveFn=\"move\"===D?at:ot,nt.altKey=n.altKey)},doneFn:function(){_(t)||(m(e),lt(l),T(e,t,r),i.call(\"_guiRelayout\",t,u.getUpdateObj()))},clickFn:function(){_(t)||lt(l)}};function it(r){if(_(t))D=null;else if(j)D=\"path\"===r.target.tagName?\"move\":\"start-point\"===r.target.attributes[\"data-line-point\"].value?\"resize-over-start-point\":\"resize-over-end-point\";else{var n=nt.element.getBoundingClientRect(),i=n.right-n.left,a=n.bottom-n.top,o=r.clientX-n.left,s=r.clientY-n.top,l=!U&&i>R&&a>F&&!r.shiftKey?d.getCursor(o/i,1-s/a):\"move\";m(e,l),D=l.split(\"-\")[0]}}function at(n,i){if(\"path\"===r.type){var a=function(t){return t},o=a,u=a;B?V(\"xanchor\",r.xanchor=tt(w+n)):(o=function(t){return tt(K(t)+n)},H&&\"date\"===H.type&&(o=y.encodeDate(o))),N?V(\"yanchor\",r.yanchor=et(A+i)):(u=function(t){return et(Q(t)+i)},Z&&\"date\"===Z.type&&(u=y.encodeDate(u))),V(\"path\",r.path=k(O,o,u))}else B?V(\"xanchor\",r.xanchor=tt(w+n)):(V(\"x0\",r.x0=tt(h+n)),V(\"x1\",r.x1=tt(x+n))),N?V(\"yanchor\",r.yanchor=et(A+i)):(V(\"y0\",r.y0=et(p+i)),V(\"y1\",r.y1=et(b+i)));e.attr(\"d\",v(t,r)),st(l,r),c(t,s,r,q)}function ot(n,i){if(U){var a=function(t){return t},o=a,u=a;B?V(\"xanchor\",r.xanchor=tt(w+n)):(o=function(t){return tt(K(t)+n)},H&&\"date\"===H.type&&(o=y.encodeDate(o))),N?V(\"yanchor\",r.yanchor=et(A+i)):(u=function(t){return et(Q(t)+i)},Z&&\"date\"===Z.type&&(u=y.encodeDate(u))),V(\"path\",r.path=k(O,o,u))}else if(j){if(\"resize-over-start-point\"===D){var f=h+n,d=N?p-i:p+i;V(\"x0\",r.x0=B?f:tt(f)),V(\"y0\",r.y0=N?d:et(d))}else if(\"resize-over-end-point\"===D){var m=x+n,g=N?b-i:b+i;V(\"x1\",r.x1=B?m:tt(m)),V(\"y1\",r.y1=N?g:et(g))}}else{var _=function(t){return-1!==D.indexOf(t)},T=_(\"n\"),G=_(\"s\"),W=_(\"w\"),Y=_(\"e\"),X=T?M+i:M,$=G?S+i:S,J=W?E+n:E,rt=Y?C+n:C;N&&(T&&(X=M-i),G&&($=S-i)),(!N&&$-X>F||N&&X-$>F)&&(V(L,r[L]=N?X:et(X)),V(I,r[I]=N?$:et($))),rt-J>R&&(V(P,r[P]=B?J:tt(J)),V(z,r[z]=B?rt:tt(rt)))}e.attr(\"d\",v(t,r)),st(l,r),c(t,s,r,q)}function st(t,e){(B||N)&&function(){var r=\"path\"!==e.type,n=t.selectAll(\".visual-cue\").data([0]);n.enter().append(\"path\").attr({fill:\"#fff\",\"fill-rule\":\"evenodd\",stroke:\"#000\",\"stroke-width\":1}).classed(\"visual-cue\",!0);var i=K(B?e.xanchor:a.midRange(r?[e.x0,e.x1]:y.extractPathCoords(e.path,g.paramIsX))),o=Q(N?e.yanchor:a.midRange(r?[e.y0,e.y1]:y.extractPathCoords(e.path,g.paramIsY)));if(i=y.roundPositionForSharpStrokeRendering(i,1),o=y.roundPositionForSharpStrokeRendering(o,1),B&&N){var s=\"M\"+(i-1-1)+\",\"+(o-1-1)+\"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z\";n.attr(\"d\",s)}else if(B){var l=\"M\"+(i-1-1)+\",\"+(o-9-1)+\"v18 h2 v-18 Z\";n.attr(\"d\",l)}else{var c=\"M\"+(i-9-1)+\",\"+(o-1-1)+\"h18 v2 h-18 Z\";n.attr(\"d\",c)}}()}function lt(t){t.selectAll(\".visual-cue\").remove()}d.init(nt),rt.node().onmousemove=it}(t,F,u,e,r,D):!0===u.editable&&F.style(\"pointer-events\",z||h.opacity(C)*E<=.5?\"stroke\":\"all\");F.node().addEventListener(\"click\",(function(){return function(t,e){if(b(t)){var r=+e.node().getAttribute(\"data-index\");if(r>=0){if(r===t._fullLayout._activeShapeIndex)return void A(t);t._fullLayout._activeShapeIndex=r,t._fullLayout._deactivateShape=A,x(t)}}}(t,F)}))}u._input&&!0===u.visible&&(\"above\"===u.layer?M(t._fullLayout._shapeUpperLayer):\"paper\"===u.xref||\"paper\"===u.yref?M(t._fullLayout._shapeLowerLayer):\"between\"===u.layer?M(w.shapelayerBetween):w._hadPlotinfo?M((w.mainplotinfo||w).shapelayer):M(t._fullLayout._shapeLowerLayer))}function T(t,e,r){var n=(r.xref+r.yref).replace(/paper/g,\"\").replace(/[xyz][1-9]* *domain/g,\"\");f.setClipUrl(t,n?\"clip\"+e._fullLayout._uid+n:null,e)}function k(t,e,r){return t.replace(g.segmentRE,(function(t){var n=0,i=t.charAt(0),a=g.paramIsX[i],o=g.paramIsY[i],s=g.numParams[i];return i+t.substr(1).replace(g.paramRE,(function(t){return n>=s||(a[n]?t=e(t):o[n]&&(t=r(t)),n++),t}))}))}function A(t){b(t)&&t._fullLayout._activeShapeIndex>=0&&(u(t),delete t._fullLayout._activeShapeIndex,x(t))}t.exports={draw:x,drawOne:w,eraseActiveShape:function(t){if(b(t)){u(t);var e=t._fullLayout._activeShapeIndex,r=(t.layout||{}).shapes||[];if(e<r.length){for(var n=[],a=0;a<r.length;a++)a!==e&&n.push(r[a]);return delete t._fullLayout._activeShapeIndex,i.call(\"_guiRelayout\",t,{shapes:n})}}},drawLabel:c}},64101:function(t,e,r){\"use strict\";var n=r(13582).overrideAll,i=r(9829),a=r(80337),o=r(94850).T,s=r(93049).extendFlat,l=r(3208).LF,c=r(41235);t.exports=n({newshape:{visible:s({},i.visible,{}),showlegend:{valType:\"boolean\",dflt:!1},legend:s({},i.legend,{}),legendgroup:s({},i.legendgroup,{}),legendgrouptitle:{text:s({},i.legendgrouptitle.text,{}),font:a({})},legendrank:s({},i.legendrank,{}),legendwidth:s({},i.legendwidth,{}),line:{color:{valType:\"color\"},width:{valType:\"number\",min:0,dflt:4},dash:s({},o,{dflt:\"solid\"})},fillcolor:{valType:\"color\",dflt:\"rgba(0,0,0,0)\"},fillrule:{valType:\"enumerated\",values:[\"evenodd\",\"nonzero\"],dflt:\"evenodd\"},opacity:{valType:\"number\",min:0,max:1,dflt:1},layer:{valType:\"enumerated\",values:[\"below\",\"above\",\"between\"],dflt:\"above\"},drawdirection:{valType:\"enumerated\",values:[\"ortho\",\"horizontal\",\"vertical\",\"diagonal\"],dflt:\"diagonal\"},name:s({},i.name,{}),label:{text:{valType:\"string\",dflt:\"\"},texttemplate:l({newshape:!0},{keys:Object.keys(c)}),font:a({}),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\"]},textangle:{valType:\"angle\",dflt:\"auto\"},xanchor:{valType:\"enumerated\",values:[\"auto\",\"left\",\"center\",\"right\"],dflt:\"auto\"},yanchor:{valType:\"enumerated\",values:[\"top\",\"middle\",\"bottom\"]},padding:{valType:\"number\",dflt:3,min:0}}},activeshape:{fillcolor:{valType:\"color\",dflt:\"rgb(255,0,255)\"},opacity:{valType:\"number\",min:0,max:1,dflt:.5}}},\"none\",\"from-root\")},93391:function(t){\"use strict\";t.exports={CIRCLE_SIDES:32,i000:0,i090:8,i180:16,i270:24,cos45:Math.cos(Math.PI/4),sin45:Math.sin(Math.PI/4),SQRT2:Math.sqrt(2)}},85522:function(t,e,r){\"use strict\";var n=r(78766),i=r(34809);t.exports=function(t,e,r){if(r(\"newshape.visible\"),r(\"newshape.name\"),r(\"newshape.showlegend\"),r(\"newshape.legend\"),r(\"newshape.legendwidth\"),r(\"newshape.legendgroup\"),r(\"newshape.legendgrouptitle.text\"),i.coerceFont(r,\"newshape.legendgrouptitle.font\"),r(\"newshape.legendrank\"),r(\"newshape.drawdirection\"),r(\"newshape.layer\"),r(\"newshape.fillcolor\"),r(\"newshape.fillrule\"),r(\"newshape.opacity\"),r(\"newshape.line.width\")){var a=(t||{}).plot_bgcolor||\"#FFF\";r(\"newshape.line.color\",n.contrast(a)),r(\"newshape.line.dash\")}var o=\"drawline\"===t.dragmode,s=r(\"newshape.label.text\"),l=r(\"newshape.label.texttemplate\");if(s||l){r(\"newshape.label.textangle\");var c=r(\"newshape.label.textposition\",o?\"middle\":\"middle center\");r(\"newshape.label.xanchor\"),r(\"newshape.label.yanchor\",function(t,e){return t?\"bottom\":-1!==e.indexOf(\"top\")?\"top\":-1!==e.indexOf(\"bottom\")?\"bottom\":\"middle\"}(o,c)),r(\"newshape.label.padding\"),i.coerceFont(r,\"newshape.label.font\",e.font)}r(\"activeshape.fillcolor\"),r(\"activeshape.opacity\")}},81055:function(t,e,r){\"use strict\";var n=r(26953),i=r(93391),a=i.CIRCLE_SIDES,o=i.SQRT2,s=r(49801),l=s.p2r,c=s.r2p,u=[0,3,4,5,6,1,2],h=[0,3,4,1,2];function f(t,e){return Math.abs(t-e)<=1e-6}function p(t,e){var r=e[1]-t[1],n=e[2]-t[2];return Math.sqrt(r*r+n*n)}e.writePaths=function(t){var e=t.length;if(!e)return\"M0,0Z\";for(var r=\"\",n=0;n<e;n++)for(var i=t[n].length,a=0;a<i;a++){var o=t[n][a][0];if(\"Z\"===o)r+=\"Z\";else for(var s=t[n][a].length,l=0;l<s;l++){var c=l;\"Q\"===o||\"S\"===o?c=h[l]:\"C\"===o&&(c=u[l]),r+=t[n][a][c],l>0&&l<s-1&&(r+=\",\")}}return r},e.readPaths=function(t,e,r,i){var o,s,u,h=n(t),f=[],p=-1,d=0,m=0,g=function(){s=d,u=m};g();for(var y=0;y<h.length;y++){var v,x,_,b,w=[],T=h[y][0],k=T;switch(T){case\"M\":f[++p]=[],d=+h[y][1],m=+h[y][2],w.push([k,d,m]),g();break;case\"Q\":case\"S\":v=+h[y][1],_=+h[y][2],d=+h[y][3],m=+h[y][4],w.push([k,d,m,v,_]);break;case\"C\":v=+h[y][1],_=+h[y][2],x=+h[y][3],b=+h[y][4],d=+h[y][5],m=+h[y][6],w.push([k,d,m,v,_,x,b]);break;case\"T\":case\"L\":d=+h[y][1],m=+h[y][2],w.push([k,d,m]);break;case\"H\":k=\"L\",d=+h[y][1],w.push([k,d,m]);break;case\"V\":k=\"L\",m=+h[y][1],w.push([k,d,m]);break;case\"A\":k=\"L\";var A=+h[y][1],M=+h[y][2];+h[y][4]||(A=-A,M=-M);var S=d-A,E=m;for(o=1;o<=a/2;o++){var C=2*Math.PI*o/a;w.push([k,S+A*Math.cos(C),E+M*Math.sin(C)])}break;case\"Z\":d===s&&m===u||(d=s,m=u,w.push([k,d,m]))}for(var L=(r||{}).domain,I=e._fullLayout._size,P=r&&\"pixel\"===r.xsizemode,z=r&&\"pixel\"===r.ysizemode,O=!1===i,D=0;D<w.length;D++){for(o=0;o+2<7;o+=2){var R=w[D][o+1],F=w[D][o+2];void 0!==R&&void 0!==F&&(d=R,m=F,r&&(r.xaxis&&r.xaxis.p2r?(O&&(R-=r.xaxis._offset),R=P?c(r.xaxis,r.xanchor)+R:l(r.xaxis,R)):(O&&(R-=I.l),L?R=L.x[0]+R/I.w:R/=I.w),r.yaxis&&r.yaxis.p2r?(O&&(F-=r.yaxis._offset),F=z?c(r.yaxis,r.yanchor)-F:l(r.yaxis,F)):(O&&(F-=I.t),F=L?L.y[1]-F/I.h:1-F/I.h)),w[D][o+1]=R,w[D][o+2]=F)}f[p].push(w[D].slice())}}return f},e.pointsOnRectangle=function(t){if(5!==t.length)return!1;for(var e=1;e<3;e++){if(!f(t[0][e]-t[1][e],t[3][e]-t[2][e]))return!1;if(!f(t[0][e]-t[3][e],t[1][e]-t[2][e]))return!1}return!(!f(t[0][1],t[1][1])&&!f(t[0][1],t[3][1])||!(p(t[0],t[1])*p(t[0],t[3])))},e.pointsOnEllipse=function(t){var e=t.length;if(e!==a+1)return!1;e=a;for(var r=0;r<e;r++){var n=(2*e-r)%e,i=(e/2+n)%e,o=(e/2+r)%e;if(!f(p(t[r],t[o]),p(t[n],t[i])))return!1}return!0},e.handleEllipse=function(t,r,n){if(!t)return[r,n];var i=e.ellipseOver({x0:r[0],y0:r[1],x1:n[0],y1:n[1]}),s=(i.x1+i.x0)/2,l=(i.y1+i.y0)/2,c=(i.x1-i.x0)/2,u=(i.y1-i.y0)/2;c||(c=u/=o),u||(u=c/=o);for(var h=[],f=0;f<a;f++){var p=2*f*Math.PI/a;h.push([s+c*Math.cos(p),l+u*Math.sin(p)])}return h},e.ellipseOver=function(t){var e=t.x0,r=t.y0,n=t.x1,i=t.y1,a=n-e,s=i-r,l=((e-=a)+n)/2,c=((r-=s)+i)/2;return{x0:l-(a*=o),y0:c-(s*=o),x1:l+a,y1:c+s}},e.fixDatesForPaths=function(t,e,r){var n=\"date\"===e.type,i=\"date\"===r.type;if(!n&&!i)return t;for(var a=0;a<t.length;a++)for(var o=0;o<t[a].length;o++)for(var s=0;s+2<t[a][o].length;s+=2)n&&(t[a][o][s+1]=t[a][o][s+1].replace(\" \",\"_\")),i&&(t[a][o][s+2]=t[a][o][s+2].replace(\" \",\"_\"));return t}},87562:function(t,e,r){\"use strict\";var n=r(70414),i=n.drawMode,a=n.openMode,o=r(93391),s=o.i000,l=o.i090,c=o.i180,u=o.i270,h=o.cos45,f=o.sin45,p=r(49801),d=p.p2r,m=p.r2p,g=r(78534).clearOutline,y=r(81055),v=y.readPaths,x=y.writePaths,_=y.ellipseOver,b=y.fixDatesForPaths;function w(t,e,r){var n,i=t[0][0],o=e.gd,p=i.getAttribute(\"d\"),g=o._fullLayout.newshape,y=e.plotinfo,w=e.isActiveShape,T=y.xaxis,k=y.yaxis,A=!!y.domain||!y.xaxis,M=!!y.domain||!y.yaxis,S=a(r),E=v(p,o,y,w),C={editable:!0,visible:g.visible,name:g.name,showlegend:g.showlegend,legend:g.legend,legendwidth:g.legendwidth,legendgroup:g.legendgroup,legendgrouptitle:{text:g.legendgrouptitle.text,font:g.legendgrouptitle.font},legendrank:g.legendrank,label:g.label,xref:A?\"paper\":T._id,yref:M?\"paper\":k._id,layer:g.layer,opacity:g.opacity,line:{color:g.line.color,width:g.line.width,dash:g.line.dash}};if(S||(C.fillcolor=g.fillcolor,C.fillrule=g.fillrule),1===E.length&&(n=E[0]),n&&5===n.length&&\"drawrect\"===r)C.type=\"rect\",C.x0=n[0][1],C.y0=n[0][2],C.x1=n[2][1],C.y1=n[2][2];else if(n&&\"drawline\"===r)C.type=\"line\",C.x0=n[0][1],C.y0=n[0][2],C.x1=n[1][1],C.y1=n[1][2];else if(n&&\"drawcircle\"===r){C.type=\"circle\";var L=n[s][1],I=n[l][1],P=n[c][1],z=n[u][1],O=n[s][2],D=n[l][2],R=n[c][2],F=n[u][2],B=y.xaxis&&(\"date\"===y.xaxis.type||\"log\"===y.xaxis.type),N=y.yaxis&&(\"date\"===y.yaxis.type||\"log\"===y.yaxis.type);B&&(L=m(y.xaxis,L),I=m(y.xaxis,I),P=m(y.xaxis,P),z=m(y.xaxis,z)),N&&(O=m(y.yaxis,O),D=m(y.yaxis,D),R=m(y.yaxis,R),F=m(y.yaxis,F));var j=(I+z)/2,U=(O+R)/2,V=_({x0:j,y0:U,x1:j+(z-I+P-L)/2*h,y1:U+(F-D+R-O)/2*f});B&&(V.x0=d(y.xaxis,V.x0),V.x1=d(y.xaxis,V.x1)),N&&(V.y0=d(y.yaxis,V.y0),V.y1=d(y.yaxis,V.y1)),C.x0=V.x0,C.y0=V.y0,C.x1=V.x1,C.y1=V.y1}else C.type=\"path\",T&&k&&b(E,T,k),C.path=x(E),n=null;return C}t.exports={newShapes:function(t,e){if(t.length&&t[0][0]){var r=e.gd,n=e.isActiveShape,a=e.dragmode,o=(r.layout||{}).shapes||[];if(!i(a)&&void 0!==n){var s=r._fullLayout._activeShapeIndex;if(s<o.length)switch(r._fullLayout.shapes[s].type){case\"rect\":a=\"drawrect\";break;case\"circle\":a=\"drawcircle\";break;case\"line\":a=\"drawline\";break;case\"path\":var l=o[s].path||\"\";a=\"Z\"===l[l.length-1]?\"drawclosedpath\":\"drawopenpath\"}}var c=w(t,e,a);g(r);for(var u=e.editHelpers,h=(u||{}).modifyItem,f=[],p=0;p<o.length;p++){var d=r._fullLayout.shapes[p];if(f[p]=d._input,void 0!==n&&p===r._fullLayout._activeShapeIndex){var m=c;switch(d.type){case\"line\":case\"rect\":case\"circle\":h(\"x0\",m.x0-(d.x0shift||0)),h(\"x1\",m.x1-(d.x1shift||0)),h(\"y0\",m.y0-(d.y0shift||0)),h(\"y1\",m.y1-(d.y1shift||0));break;case\"path\":h(\"path\",m.path)}}}return void 0===n?(f.push(c),f):u?u.getUpdateObj():{}}},createShapeObj:w}},78534:function(t){\"use strict\";t.exports={clearOutlineControllers:function(t){var e=t._fullLayout._zoomlayer;e&&e.selectAll(\".outline-controllers\").remove()},clearOutline:function(t){var e=t._fullLayout._zoomlayer;e&&e.selectAll(\".select-outline\").remove(),t._fullLayout._outlining=!1}}},49728:function(t,e,r){\"use strict\";var n=r(2956),i=r(34809),a=r(29714);function o(t,e){var r=0;return(e=e||0)&&t&&(\"category\"===t.type||\"multicategory\"===t.type)&&(r=(t.r2p(1)-t.r2p(0))*e),r}e.rangeToShapePosition=function(t){return\"log\"===t.type?t.r2d:function(t){return t}},e.shapePositionToRange=function(t){return\"log\"===t.type?t.d2r:function(t){return t}},e.decodeDate=function(t){return function(e){return e.replace&&(e=e.replace(\"_\",\" \")),t(e)}},e.encodeDate=function(t){return function(e){return t(e).replace(\" \",\"_\")}},e.extractPathCoords=function(t,e,r){var a=[];return t.match(n.segmentRE).forEach((function(t){var o=e[t.charAt(0)].drawn;if(void 0!==o){var s=t.substr(1).match(n.paramRE);if(s&&!(s.length<o)){var l=s[o],c=r?l:i.cleanNumber(l);a.push(c)}}})),a},e.getDataToPixel=function(t,r,n,i,a){var s,l=t._fullLayout._size;if(r)if(\"domain\"===a)s=function(t){return r._length*(i?1-t:t)+r._offset};else{var c=e.shapePositionToRange(r);s=function(t){var e=o(r,n);return r._offset+r.r2p(c(t,!0))+e},\"date\"===r.type&&(s=e.decodeDate(s))}else s=i?function(t){return l.t+l.h*(1-t)}:function(t){return l.l+l.w*t};return s},e.getPixelToData=function(t,r,n,i){var a,o=t._fullLayout._size;if(r)if(\"domain\"===i)a=function(t){var e=(t-r._offset)/r._length;return n?1-e:e};else{var s=e.rangeToShapePosition(r);a=function(t){return s(r.p2r(t-r._offset))}}else a=n?function(t){return 1-(t-o.t)/o.h}:function(t){return(t-o.l)/o.w};return a},e.roundPositionForSharpStrokeRendering=function(t,e){var r=1===Math.round(e%2),n=Math.round(t);return r?n+.5:n},e.makeShapesOptionsAndPlotinfo=function(t,e){var r=t._fullLayout.shapes[e]||{},n=t._fullLayout._plots[r.xref+r.yref];return n?n._hadPlotinfo=!0:(n={},r.xref&&\"paper\"!==r.xref&&(n.xaxis=t._fullLayout[r.xref+\"axis\"]),r.yref&&\"paper\"!==r.yref&&(n.yaxis=t._fullLayout[r.yref+\"axis\"])),n.xsizemode=r.xsizemode,n.ysizemode=r.ysizemode,n.xanchor=r.xanchor,n.yanchor=r.yanchor,{options:r,plotinfo:n}},e.makeSelectionsOptionsAndPlotinfo=function(t,e){var r=t._fullLayout.selections[e]||{},n=t._fullLayout._plots[r.xref+r.yref];return n?n._hadPlotinfo=!0:(n={},r.xref&&(n.xaxis=t._fullLayout[r.xref+\"axis\"]),r.yref&&(n.yaxis=t._fullLayout[r.yref+\"axis\"])),{options:r,plotinfo:n}},e.getPathString=function(t,r){var s,l,c,u,h,f,p,d,m=r.type,g=a.getRefType(r.xref),y=a.getRefType(r.yref),v=a.getFromId(t,r.xref),x=a.getFromId(t,r.yref),_=t._fullLayout._size,b=o(v,r.x0shift),w=o(v,r.x1shift),T=o(x,r.y0shift),k=o(x,r.y1shift);if(v?\"domain\"===g?l=function(t){return v._offset+v._length*t}:(s=e.shapePositionToRange(v),l=function(t){return v._offset+v.r2p(s(t,!0))}):l=function(t){return _.l+_.w*t},x?\"domain\"===y?u=function(t){return x._offset+x._length*(1-t)}:(c=e.shapePositionToRange(x),u=function(t){return x._offset+x.r2p(c(t,!0))}):u=function(t){return _.t+_.h*(1-t)},\"path\"===m)return v&&\"date\"===v.type&&(l=e.decodeDate(l)),x&&\"date\"===x.type&&(u=e.decodeDate(u)),function(t,e,r){var a=t.path,o=t.xsizemode,s=t.ysizemode,l=t.xanchor,c=t.yanchor;return a.replace(n.segmentRE,(function(t){var a=0,u=t.charAt(0),h=n.paramIsX[u],f=n.paramIsY[u],p=n.numParams[u],d=t.substr(1).replace(n.paramRE,(function(t){return h[a]?t=\"pixel\"===o?e(l)+Number(t):e(t):f[a]&&(t=\"pixel\"===s?r(c)-Number(t):r(t)),++a>p&&(t=\"X\"),t}));return a>p&&(d=d.replace(/[\\s,]*X.*/,\"\"),i.log(\"Ignoring extra params in segment \"+t)),u+d}))}(r,l,u);if(\"pixel\"===r.xsizemode){var A=l(r.xanchor);h=A+r.x0+b,f=A+r.x1+w}else h=l(r.x0)+b,f=l(r.x1)+w;if(\"pixel\"===r.ysizemode){var M=u(r.yanchor);p=M-r.y0+T,d=M-r.y1+k}else p=u(r.y0)+T,d=u(r.y1)+k;if(\"line\"===m)return\"M\"+h+\",\"+p+\"L\"+f+\",\"+d;if(\"rect\"===m)return\"M\"+h+\",\"+p+\"H\"+f+\"V\"+d+\"H\"+h+\"Z\";var S=(h+f)/2,E=(p+d)/2,C=Math.abs(S-h),L=Math.abs(E-p),I=\"A\"+C+\",\"+L,P=S+C+\",\"+E;return\"M\"+P+I+\" 0 1,1 \"+S+\",\"+(E-L)+I+\" 0 0,1 \"+P+\"Z\"}},43701:function(t,e,r){\"use strict\";var n=r(28231);t.exports={moduleType:\"component\",name:\"shapes\",layoutAttributes:r(43144),supplyLayoutDefaults:r(74367),supplyDrawNewShapeDefaults:r(85522),includeBasePlot:r(20706)(\"shapes\"),calcAutorange:r(44959),draw:n.draw,drawOne:n.drawOne}},41235:function(t){\"use strict\";function e(t,e){return e?e.d2l(t):t}function r(t,e){return e?e.l2d(t):t}function n(t){return t.x0shift||0}function i(t){return t.x1shift||0}function a(t){return t.y0shift||0}function o(t){return t.y1shift||0}function s(t,r){return e(t.x1,r)+i(t)-e(t.x0,r)-n(t)}function l(t,r,n){return e(t.y1,n)+o(t)-e(t.y0,n)-a(t)}t.exports={x0:function(t){return t.x0},x1:function(t){return t.x1},y0:function(t){return t.y0},y1:function(t){return t.y1},slope:function(t,e,r){return\"line\"!==t.type?void 0:l(t,0,r)/s(t,e)},dx:s,dy:l,width:function(t,e){return Math.abs(s(t,e))},height:function(t,e,r){return Math.abs(l(t,0,r))},length:function(t,e,r){return\"line\"!==t.type?void 0:Math.sqrt(Math.pow(s(t,e),2)+Math.pow(l(t,0,r),2))},xcenter:function(t,a){return r((e(t.x1,a)+i(t)+e(t.x0,a)+n(t))/2,a)},ycenter:function(t,n,i){return r((e(t.y1,i)+o(t)+e(t.y0,i)+a(t))/2,i)}}},8606:function(t,e,r){\"use strict\";var n=r(80337),i=r(57891),a=r(93049).extendDeepAll,o=r(13582).overrideAll,s=r(49722),l=r(78032).templatedArray,c=r(64194),u=l(\"step\",{visible:{valType:\"boolean\",dflt:!0},method:{valType:\"enumerated\",values:[\"restyle\",\"relayout\",\"animate\",\"update\",\"skip\"],dflt:\"restyle\"},args:{valType:\"info_array\",freeLength:!0,items:[{valType:\"any\"},{valType:\"any\"},{valType:\"any\"}]},label:{valType:\"string\"},value:{valType:\"string\"},execute:{valType:\"boolean\",dflt:!0}});t.exports=o(l(\"slider\",{visible:{valType:\"boolean\",dflt:!0},active:{valType:\"number\",min:0,dflt:0},steps:u,lenmode:{valType:\"enumerated\",values:[\"fraction\",\"pixels\"],dflt:\"fraction\"},len:{valType:\"number\",min:0,dflt:1},x:{valType:\"number\",min:-2,max:3,dflt:0},pad:a(i({editType:\"arraydraw\"}),{},{t:{dflt:20}}),xanchor:{valType:\"enumerated\",values:[\"auto\",\"left\",\"center\",\"right\"],dflt:\"left\"},y:{valType:\"number\",min:-2,max:3,dflt:0},yanchor:{valType:\"enumerated\",values:[\"auto\",\"top\",\"middle\",\"bottom\"],dflt:\"top\"},transition:{duration:{valType:\"number\",min:0,dflt:150},easing:{valType:\"enumerated\",values:s.transition.easing.values,dflt:\"cubic-in-out\"}},currentvalue:{visible:{valType:\"boolean\",dflt:!0},xanchor:{valType:\"enumerated\",values:[\"left\",\"center\",\"right\"],dflt:\"left\"},offset:{valType:\"number\",dflt:10},prefix:{valType:\"string\"},suffix:{valType:\"string\"},font:n({})},font:n({}),activebgcolor:{valType:\"color\",dflt:c.gripBgActiveColor},bgcolor:{valType:\"color\",dflt:c.railBgColor},bordercolor:{valType:\"color\",dflt:c.railBorderColor},borderwidth:{valType:\"number\",min:0,dflt:c.railBorderWidth},ticklen:{valType:\"number\",min:0,dflt:c.tickLength},tickcolor:{valType:\"color\",dflt:c.tickColor},tickwidth:{valType:\"number\",min:0,dflt:1},minorticklen:{valType:\"number\",min:0,dflt:c.minorTickLength}}),\"arraydraw\",\"from-root\")},64194:function(t){\"use strict\";t.exports={name:\"sliders\",containerClassName:\"slider-container\",groupClassName:\"slider-group\",inputAreaClass:\"slider-input-area\",railRectClass:\"slider-rail-rect\",railTouchRectClass:\"slider-rail-touch-rect\",gripRectClass:\"slider-grip-rect\",tickRectClass:\"slider-tick-rect\",inputProxyClass:\"slider-input-proxy\",labelsClass:\"slider-labels\",labelGroupClass:\"slider-label-group\",labelClass:\"slider-label\",currentValueClass:\"slider-current-value\",railHeight:5,menuIndexAttrName:\"slider-active-index\",autoMarginIdRoot:\"slider-\",minWidth:30,minHeight:30,textPadX:40,arrowOffsetX:4,railRadius:2,railWidth:5,railBorder:4,railBorderWidth:1,railBorderColor:\"#bec8d9\",railBgColor:\"#f8fafc\",railInset:8,stepInset:10,gripRadius:10,gripWidth:20,gripHeight:20,gripBorder:20,gripBorderWidth:1,gripBorderColor:\"#bec8d9\",gripBgColor:\"#f6f8fa\",gripBgActiveColor:\"#dbdde0\",labelPadding:8,labelOffset:0,tickWidth:1,tickColor:\"#333\",tickOffset:25,tickLength:7,minorTickOffset:25,minorTickColor:\"#333\",minorTickLength:4,currentValuePadding:8,currentValueInset:0}},74537:function(t,e,r){\"use strict\";var n=r(34809),i=r(59008),a=r(8606),o=r(64194).name,s=a.steps;function l(t,e,r){function o(r,i){return n.coerce(t,e,a,r,i)}for(var s=i(t,e,{name:\"steps\",handleItemDefaults:c}),l=0,u=0;u<s.length;u++)s[u].visible&&l++;if(l<2?e.visible=!1:o(\"visible\")){e._stepCount=l;var h=e._visibleSteps=n.filterVisible(s);(s[o(\"active\")]||{}).visible||(e.active=h[0]._index),o(\"x\"),o(\"y\"),n.noneOrAll(t,e,[\"x\",\"y\"]),o(\"xanchor\"),o(\"yanchor\"),o(\"len\"),o(\"lenmode\"),o(\"pad.t\"),o(\"pad.r\"),o(\"pad.b\"),o(\"pad.l\"),n.coerceFont(o,\"font\",r.font),o(\"currentvalue.visible\")&&(o(\"currentvalue.xanchor\"),o(\"currentvalue.prefix\"),o(\"currentvalue.suffix\"),o(\"currentvalue.offset\"),n.coerceFont(o,\"currentvalue.font\",e.font)),o(\"transition.duration\"),o(\"transition.easing\"),o(\"bgcolor\"),o(\"activebgcolor\"),o(\"bordercolor\"),o(\"borderwidth\"),o(\"ticklen\"),o(\"tickwidth\"),o(\"tickcolor\"),o(\"minorticklen\")}}function c(t,e){function r(r,i){return n.coerce(t,e,s,r,i)}if(\"skip\"===t.method||Array.isArray(t.args)?r(\"visible\"):e.visible=!1){r(\"method\"),r(\"args\");var i=r(\"label\",\"step-\"+e._index);r(\"value\",i),r(\"execute\")}}t.exports=function(t,e){i(t,e,{name:o,handleItemDefaults:l})}},44097:function(t,e,r){\"use strict\";var n=r(45568),i=r(44122),a=r(78766),o=r(62203),s=r(34809),l=s.strTranslate,c=r(30635),u=r(78032).arrayEditor,h=r(64194),f=r(4530),p=f.LINE_SPACING,d=f.FROM_TL,m=f.FROM_BR;function g(t){return h.autoMarginIdRoot+t._index}function y(t){return t._index}function v(t,e){var r=o.tester.selectAll(\"g.\"+h.labelGroupClass).data(e._visibleSteps);r.enter().append(\"g\").classed(h.labelGroupClass,!0);var a=0,l=0;r.each((function(t){var r=b(n.select(this),{step:t},e).node();if(r){var i=o.bBox(r);l=Math.max(l,i.height),a=Math.max(a,i.width)}})),r.remove();var u=e._dims={};u.inputAreaWidth=Math.max(h.railWidth,h.gripHeight);var f=t._fullLayout._size;u.lx=f.l+f.w*e.x,u.ly=f.t+f.h*(1-e.y),\"fraction\"===e.lenmode?u.outerLength=Math.round(f.w*e.len):u.outerLength=e.len,u.inputAreaStart=0,u.inputAreaLength=Math.round(u.outerLength-e.pad.l-e.pad.r);var p=(u.inputAreaLength-2*h.stepInset)/(e._stepCount-1),y=a+h.labelPadding;if(u.labelStride=Math.max(1,Math.ceil(y/p)),u.labelHeight=l,u.currentValueMaxWidth=0,u.currentValueHeight=0,u.currentValueTotalHeight=0,u.currentValueMaxLines=1,e.currentvalue.visible){var v=o.tester.append(\"g\");r.each((function(t){var r=x(v,e,t.label),n=r.node()&&o.bBox(r.node())||{width:0,height:0},i=c.lineCount(r);u.currentValueMaxWidth=Math.max(u.currentValueMaxWidth,Math.ceil(n.width)),u.currentValueHeight=Math.max(u.currentValueHeight,Math.ceil(n.height)),u.currentValueMaxLines=Math.max(u.currentValueMaxLines,i)})),u.currentValueTotalHeight=u.currentValueHeight+e.currentvalue.offset,v.remove()}u.height=u.currentValueTotalHeight+h.tickOffset+e.ticklen+h.labelOffset+u.labelHeight+e.pad.t+e.pad.b;var _=\"left\";s.isRightAnchor(e)&&(u.lx-=u.outerLength,_=\"right\"),s.isCenterAnchor(e)&&(u.lx-=u.outerLength/2,_=\"center\");var w=\"top\";s.isBottomAnchor(e)&&(u.ly-=u.height,w=\"bottom\"),s.isMiddleAnchor(e)&&(u.ly-=u.height/2,w=\"middle\"),u.outerLength=Math.ceil(u.outerLength),u.height=Math.ceil(u.height),u.lx=Math.round(u.lx),u.ly=Math.round(u.ly);var T={y:e.y,b:u.height*m[w],t:u.height*d[w]};\"fraction\"===e.lenmode?(T.l=0,T.xl=e.x-e.len*d[_],T.r=0,T.xr=e.x+e.len*m[_]):(T.x=e.x,T.l=u.outerLength*d[_],T.r=u.outerLength*m[_]),i.autoMargin(t,g(e),T)}function x(t,e,r){if(e.currentvalue.visible){var n,i,a=e._dims;switch(e.currentvalue.xanchor){case\"right\":n=a.inputAreaLength-h.currentValueInset-a.currentValueMaxWidth,i=\"left\";break;case\"center\":n=.5*a.inputAreaLength,i=\"middle\";break;default:n=h.currentValueInset,i=\"left\"}var l=s.ensureSingle(t,\"text\",h.labelClass,(function(t){t.attr({\"text-anchor\":i,\"data-notex\":1})})),u=e.currentvalue.prefix?e.currentvalue.prefix:\"\";if(\"string\"==typeof r)u+=r;else{var f=e.steps[e.active].label,d=e._gd._fullLayout._meta;d&&(f=s.templateString(f,d)),u+=f}e.currentvalue.suffix&&(u+=e.currentvalue.suffix),l.call(o.font,e.currentvalue.font).text(u).call(c.convertToTspans,e._gd);var m=c.lineCount(l),g=(a.currentValueMaxLines+1-m)*e.currentvalue.font.size*p;return c.positionText(l,n,g),l}}function _(t,e,r){s.ensureSingle(t,\"rect\",h.gripRectClass,(function(n){n.call(A,e,t,r).style(\"pointer-events\",\"all\")})).attr({width:h.gripWidth,height:h.gripHeight,rx:h.gripRadius,ry:h.gripRadius}).call(a.stroke,r.bordercolor).call(a.fill,r.bgcolor).style(\"stroke-width\",r.borderwidth+\"px\")}function b(t,e,r){var n=s.ensureSingle(t,\"text\",h.labelClass,(function(t){t.attr({\"text-anchor\":\"middle\",\"data-notex\":1})})),i=e.step.label,a=r._gd._fullLayout._meta;return a&&(i=s.templateString(i,a)),n.call(o.font,r.font).text(i).call(c.convertToTspans,r._gd),n}function w(t,e){var r=s.ensureSingle(t,\"g\",h.labelsClass),i=e._dims,a=r.selectAll(\"g.\"+h.labelGroupClass).data(i.labelSteps);a.enter().append(\"g\").classed(h.labelGroupClass,!0),a.exit().remove(),a.each((function(t){var r=n.select(this);r.call(b,t,e),o.setTranslate(r,E(e,t.fraction),h.tickOffset+e.ticklen+e.font.size*p+h.labelOffset+i.currentValueTotalHeight)}))}function T(t,e,r,n,i){var a=Math.round(n*(r._stepCount-1)),o=r._visibleSteps[a]._index;o!==r.active&&k(t,e,r,o,!0,i)}function k(t,e,r,n,a,o){var s=r.active;r.active=n,u(t.layout,h.name,r).applyUpdate(\"active\",n);var l=r.steps[r.active];e.call(S,r,o),e.call(x,r),t.emit(\"plotly_sliderchange\",{slider:r,step:r.steps[r.active],interaction:a,previousActive:s}),l&&l.method&&a&&(e._nextMethod?(e._nextMethod.step=l,e._nextMethod.doCallback=a,e._nextMethod.doTransition=o):(e._nextMethod={step:l,doCallback:a,doTransition:o},e._nextMethodRaf=window.requestAnimationFrame((function(){var r=e._nextMethod.step;r.method&&(r.execute&&i.executeAPICommand(t,r.method,r.args),e._nextMethod=null,e._nextMethodRaf=null)}))))}function A(t,e,r){if(!e._context.staticPlot){var i=r.node(),o=n.select(e);t.on(\"mousedown\",l),t.on(\"touchstart\",l)}function s(){return r.data()[0]}function l(){var t=s();e.emit(\"plotly_sliderstart\",{slider:t});var l=r.select(\".\"+h.gripRectClass);n.event.stopPropagation(),n.event.preventDefault(),l.call(a.fill,t.activebgcolor);var c=C(t,n.mouse(i)[0]);function u(){var t=s(),a=C(t,n.mouse(i)[0]);T(e,r,t,a,!1)}function f(){var t=s();t._dragging=!1,l.call(a.fill,t.bgcolor),o.on(\"mouseup\",null),o.on(\"mousemove\",null),o.on(\"touchend\",null),o.on(\"touchmove\",null),e.emit(\"plotly_sliderend\",{slider:t,step:t.steps[t.active]})}T(e,r,t,c,!0),t._dragging=!0,o.on(\"mousemove\",u),o.on(\"touchmove\",u),o.on(\"mouseup\",f),o.on(\"touchend\",f)}}function M(t,e){var r=t.selectAll(\"rect.\"+h.tickRectClass).data(e._visibleSteps),i=e._dims;r.enter().append(\"rect\").classed(h.tickRectClass,!0),r.exit().remove(),r.attr({width:e.tickwidth+\"px\",\"shape-rendering\":\"crispEdges\"}),r.each((function(t,r){var s=r%i.labelStride==0,l=n.select(this);l.attr({height:s?e.ticklen:e.minorticklen}).call(a.fill,e.tickcolor),o.setTranslate(l,E(e,r/(e._stepCount-1))-.5*e.tickwidth,(s?h.tickOffset:h.minorTickOffset)+i.currentValueTotalHeight)}))}function S(t,e,r){for(var n=t.select(\"rect.\"+h.gripRectClass),i=0,a=0;a<e._stepCount;a++)if(e._visibleSteps[a]._index===e.active){i=a;break}var o=E(e,i/(e._stepCount-1));if(!e._invokingCommand){var s=n;r&&e.transition.duration>0&&(s=s.transition().duration(e.transition.duration).ease(e.transition.easing)),s.attr(\"transform\",l(o-.5*h.gripWidth,e._dims.currentValueTotalHeight))}}function E(t,e){var r=t._dims;return r.inputAreaStart+h.stepInset+(r.inputAreaLength-2*h.stepInset)*Math.min(1,Math.max(0,e))}function C(t,e){var r=t._dims;return Math.min(1,Math.max(0,(e-h.stepInset-r.inputAreaStart)/(r.inputAreaLength-2*h.stepInset-2*r.inputAreaStart)))}function L(t,e,r){var n=r._dims,i=s.ensureSingle(t,\"rect\",h.railTouchRectClass,(function(n){n.call(A,e,t,r).style(\"pointer-events\",\"all\")}));i.attr({width:n.inputAreaLength,height:Math.max(n.inputAreaWidth,h.tickOffset+r.ticklen+n.labelHeight)}).call(a.fill,r.bgcolor).attr(\"opacity\",0),o.setTranslate(i,0,n.currentValueTotalHeight)}function I(t,e){var r=e._dims,n=r.inputAreaLength-2*h.railInset,i=s.ensureSingle(t,\"rect\",h.railRectClass);i.attr({width:n,height:h.railWidth,rx:h.railRadius,ry:h.railRadius,\"shape-rendering\":\"crispEdges\"}).call(a.stroke,e.bordercolor).call(a.fill,e.bgcolor).style(\"stroke-width\",e.borderwidth+\"px\"),o.setTranslate(i,h.railInset,.5*(r.inputAreaWidth-h.railWidth)+r.currentValueTotalHeight)}t.exports=function(t){var e=t._context.staticPlot,r=t._fullLayout,a=function(t,e){for(var r=t[h.name],n=[],i=0;i<r.length;i++){var a=r[i];a.visible&&(a._gd=e,n.push(a))}return n}(r,t),s=r._infolayer.selectAll(\"g.\"+h.containerClassName).data(a.length>0?[0]:[]);function l(e){e._commandObserver&&(e._commandObserver.remove(),delete e._commandObserver),i.autoMargin(t,g(e))}if(s.enter().append(\"g\").classed(h.containerClassName,!0).style(\"cursor\",e?null:\"ew-resize\"),s.exit().each((function(){n.select(this).selectAll(\"g.\"+h.groupClassName).each(l)})).remove(),0!==a.length){var c=s.selectAll(\"g.\"+h.groupClassName).data(a,y);c.enter().append(\"g\").classed(h.groupClassName,!0),c.exit().each(l).remove();for(var u=0;u<a.length;u++){var f=a[u];v(t,f)}c.each((function(e){var r=n.select(this);!function(t){var e=t._dims;e.labelSteps=[];for(var r=t._stepCount,n=0;n<r;n+=e.labelStride)e.labelSteps.push({fraction:n/(r-1),step:t._visibleSteps[n]})}(e),i.manageCommandObserver(t,e,e._visibleSteps,(function(e){var n=r.data()[0];n.active!==e.index&&(n._dragging||k(t,r,n,e.index,!1,!0))})),function(t,e,r){(r.steps[r.active]||{}).visible||(r.active=r._visibleSteps[0]._index),e.call(x,r).call(I,r).call(w,r).call(M,r).call(L,t,r).call(_,t,r);var n=r._dims;o.setTranslate(e,n.lx+r.pad.l,n.ly+r.pad.t),e.call(S,r,!1),e.call(x,r)}(t,n.select(this),e)}))}}},15359:function(t,e,r){\"use strict\";var n=r(64194);t.exports={moduleType:\"component\",name:n.name,layoutAttributes:r(8606),supplyLayoutDefaults:r(74537),draw:r(44097)}},17240:function(t,e,r){\"use strict\";var n=r(45568),i=r(10721),a=r(44122),o=r(33626),s=r(34809),l=s.strTranslate,c=r(62203),u=r(78766),h=r(30635),f=r(20438),p=r(4530).OPPOSITE_SIDE,d=/ [XY][0-9]* /;t.exports={draw:function(t,e,r){var m,g=t._fullLayout,y=r.propContainer,v=r.propName,x=r.placeholder,_=r.traceIndex,b=r.avoid||{},w=r.attributes,T=r.transform,k=r.containerGroup,A=1,M=y.title,S=(M&&M.text?M.text:\"\").trim(),E=!1,C=M&&M.font?M.font:{},L=C.family,I=C.size,P=C.color,z=C.weight,O=C.style,D=C.variant,R=C.textcase,F=C.lineposition,B=C.shadow,N=!!r.subtitlePropName,j=r.subtitlePlaceholder,U=(y.title||{}).subtitle||{text:\"\",font:{}},V=U.text.trim(),q=!1,H=1,G=U.font,Z=G.family,W=G.size,Y=G.color,X=G.weight,$=G.style,J=G.variant,K=G.textcase,Q=G.lineposition,tt=G.shadow;\"title.text\"===v?m=\"titleText\":-1!==v.indexOf(\"axis\")?m=\"axisTitleText\":v.indexOf(!0)&&(m=\"colorbarTitleText\");var et=t._context.edits[m];function rt(t,e){return void 0!==t&&void 0!==e&&t.replace(d,\" % \")===e.replace(d,\" % \")}\"\"===S?A=0:rt(S,x)&&(et||(S=\"\"),A=.2,E=!0),N&&(\"\"===V?H=0:rt(V,j)&&(et||(V=\"\"),H=.2,q=!0)),r._meta?S=s.templateString(S,r._meta):g._meta&&(S=s.templateString(S,g._meta));var nt,it=S||V||et;k||(k=s.ensureSingle(g._infolayer,\"g\",\"g-\"+e),nt=g._hColorbarMoveTitle);var at=k.selectAll(\"text.\"+e).data(it?[0]:[]);at.enter().append(\"text\"),at.text(S).attr(\"class\",e),at.exit().remove();var ot=null,st=e+\"-subtitle\",lt=V||et;if(N&&lt&&((ot=k.selectAll(\"text.\"+st).data(lt?[0]:[])).enter().append(\"text\"),ot.text(V).attr(\"class\",st),ot.exit().remove()),!it)return k;function ct(t,e){s.syncOrAsync([ut,ht],{title:t,subtitle:e})}function ut(r){var i,o=r.title,f=r.subtitle;if(!T&&nt&&(T={}),T?(i=\"\",T.rotate&&(i+=\"rotate(\"+[T.rotate,w.x,w.y]+\")\"),(T.offset||nt)&&(i+=l(0,(T.offset||0)-(nt||0)))):i=null,o.attr(\"transform\",i),o.style(\"opacity\",A*u.opacity(P)).call(c.font,{color:u.rgb(P),size:n.round(I,2),family:L,weight:z,style:O,variant:D,textcase:R,shadow:B,lineposition:F}).attr(w).call(h.convertToTspans,t,(function(t){if(t){var e=n.select(t.node().parentNode).select(\".\"+st);if(!e.empty()){var r=t.node().getBBox();if(r.height){var i=r.y+r.height+1.6*W;e.attr(\"y\",i)}}}})),f){var p=k.select(\".\"+e+\"-math-group\"),d=o.node().getBBox(),m=p.node()?p.node().getBBox():void 0,g=m?m.y+m.height+1.6*W:d.y+d.height+1.6*W,y=s.extendFlat({},w,{y:g});f.attr(\"transform\",i),f.style(\"opacity\",H*u.opacity(Y)).call(c.font,{color:u.rgb(Y),size:n.round(W,2),family:Z,weight:X,style:$,variant:J,textcase:K,shadow:tt,lineposition:Q}).attr(y).call(h.convertToTspans,t)}return a.previousPromises(t)}function ht(e){var r=e.title,a=n.select(r.node().parentNode);if(b&&b.selection&&b.side&&S){a.attr(\"transform\",null);var o=p[b.side],u=\"left\"===b.side||\"top\"===b.side?-1:1,h=i(b.pad)?b.pad:2,f=c.bBox(a.node()),d={t:0,b:0,l:0,r:0},m=t._fullLayout._reservedMargin;for(var v in m)for(var x in m[v]){var _=m[v][x];d[x]=Math.max(d[x],_)}var w={left:d.l,top:d.t,right:g.width-d.r,bottom:g.height-d.b},T=b.maxShift||u*(w[b.side]-f[b.side]),k=0;if(T<0)k=T;else{var A=b.offsetLeft||0,M=b.offsetTop||0;f.left-=A,f.right-=A,f.top-=M,f.bottom-=M,b.selection.each((function(){var t=c.bBox(this);s.bBoxIntersect(f,t,h)&&(k=Math.max(k,u*(t[b.side]-f[o])+h))})),k=Math.min(T,k),y._titleScoot=Math.abs(k)}if(k>0||T<0){var E={left:[-k,0],right:[k,0],top:[0,-k],bottom:[0,k]}[b.side];a.attr(\"transform\",l(E[0],E[1]))}}}function ft(t,e){t.text(e).on(\"mouseover.opacity\",(function(){n.select(this).transition().duration(f.SHOW_PLACEHOLDER).style(\"opacity\",1)})).on(\"mouseout.opacity\",(function(){n.select(this).transition().duration(f.HIDE_PLACEHOLDER).style(\"opacity\",0)}))}if(at.call(ct,ot),et&&(S?at.on(\".opacity\",null):(ft(at,x),E=!0),at.call(h.makeEditable,{gd:t}).on(\"edit\",(function(e){void 0!==_?o.call(\"_guiRestyle\",t,v,e,_):o.call(\"_guiRelayout\",t,v,e)})).on(\"cancel\",(function(){this.text(this.attr(\"data-unformatted\")).call(ct)})).on(\"input\",(function(t){this.text(t||\" \").call(h.positionText,w.x,w.y)})),N)){if(N&&!S){var pt=at.node().getBBox(),dt=pt.y+pt.height+1.6*W;ot.attr(\"y\",dt)}V?ot.on(\".opacity\",null):(ft(ot,j),q=!0),ot.call(h.makeEditable,{gd:t}).on(\"edit\",(function(e){o.call(\"_guiRelayout\",t,\"title.subtitle.text\",e)})).on(\"cancel\",(function(){this.text(this.attr(\"data-unformatted\")).call(ct)})).on(\"input\",(function(t){this.text(t||\" \").call(h.positionText,ot.attr(\"x\"),ot.attr(\"y\"))}))}return at.classed(\"js-placeholder\",E),ot&&ot.classed(\"js-placeholder\",q),k},SUBTITLE_PADDING_EM:1.6,SUBTITLE_PADDING_MATHJAX_EM:1.6}},85389:function(t,e,r){\"use strict\";var n=r(80337),i=r(10229),a=r(93049).extendFlat,o=r(13582).overrideAll,s=r(57891),l=r(78032).templatedArray,c=l(\"button\",{visible:{valType:\"boolean\"},method:{valType:\"enumerated\",values:[\"restyle\",\"relayout\",\"animate\",\"update\",\"skip\"],dflt:\"restyle\"},args:{valType:\"info_array\",freeLength:!0,items:[{valType:\"any\"},{valType:\"any\"},{valType:\"any\"}]},args2:{valType:\"info_array\",freeLength:!0,items:[{valType:\"any\"},{valType:\"any\"},{valType:\"any\"}]},label:{valType:\"string\",dflt:\"\"},execute:{valType:\"boolean\",dflt:!0}});t.exports=o(l(\"updatemenu\",{_arrayAttrRegexps:[/^updatemenus\\[(0|[1-9][0-9]+)\\]\\.buttons/],visible:{valType:\"boolean\"},type:{valType:\"enumerated\",values:[\"dropdown\",\"buttons\"],dflt:\"dropdown\"},direction:{valType:\"enumerated\",values:[\"left\",\"right\",\"up\",\"down\"],dflt:\"down\"},active:{valType:\"integer\",min:-1,dflt:0},showactive:{valType:\"boolean\",dflt:!0},buttons:c,x:{valType:\"number\",min:-2,max:3,dflt:-.05},xanchor:{valType:\"enumerated\",values:[\"auto\",\"left\",\"center\",\"right\"],dflt:\"right\"},y:{valType:\"number\",min:-2,max:3,dflt:1},yanchor:{valType:\"enumerated\",values:[\"auto\",\"top\",\"middle\",\"bottom\"],dflt:\"top\"},pad:a(s({editType:\"arraydraw\"}),{}),font:n({}),bgcolor:{valType:\"color\"},bordercolor:{valType:\"color\",dflt:i.borderLine},borderwidth:{valType:\"number\",min:0,dflt:1,editType:\"arraydraw\"}}),\"arraydraw\",\"from-root\")},71559:function(t){\"use strict\";t.exports={name:\"updatemenus\",containerClassName:\"updatemenu-container\",headerGroupClassName:\"updatemenu-header-group\",headerClassName:\"updatemenu-header\",headerArrowClassName:\"updatemenu-header-arrow\",dropdownButtonGroupClassName:\"updatemenu-dropdown-button-group\",dropdownButtonClassName:\"updatemenu-dropdown-button\",buttonClassName:\"updatemenu-button\",itemRectClassName:\"updatemenu-item-rect\",itemTextClassName:\"updatemenu-item-text\",menuIndexAttrName:\"updatemenu-active-index\",autoMarginIdRoot:\"updatemenu-\",blankHeaderOpts:{label:\" \"},minWidth:30,minHeight:30,textPadX:24,arrowPadX:16,rx:2,ry:2,textOffsetX:12,textOffsetY:3,arrowOffsetX:4,gapButtonHeader:5,gapButton:2,activeColor:\"#F4FAFF\",hoverColor:\"#F4FAFF\",arrowSymbol:{left:\"◄\",right:\"►\",up:\"▲\",down:\"▼\"}}},42746:function(t,e,r){\"use strict\";var n=r(34809),i=r(59008),a=r(85389),o=r(71559).name,s=a.buttons;function l(t,e,r){function o(r,i){return n.coerce(t,e,a,r,i)}o(\"visible\",i(t,e,{name:\"buttons\",handleItemDefaults:c}).length>0)&&(o(\"active\"),o(\"direction\"),o(\"type\"),o(\"showactive\"),o(\"x\"),o(\"y\"),n.noneOrAll(t,e,[\"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 c(t,e){function r(r,i){return n.coerce(t,e,s,r,i)}r(\"visible\",\"skip\"===t.method||Array.isArray(t.args))&&(r(\"method\"),r(\"args\"),r(\"args2\"),r(\"label\"),r(\"execute\"))}t.exports=function(t,e){i(t,e,{name:o,handleItemDefaults:l})}},40974:function(t,e,r){\"use strict\";var n=r(45568),i=r(44122),a=r(78766),o=r(62203),s=r(34809),l=r(30635),c=r(78032).arrayEditor,u=r(4530).LINE_SPACING,h=r(71559),f=r(21736);function p(t){return t._index}function d(t,e){return+t.attr(h.menuIndexAttrName)===e._index}function m(t,e,r,n,i,a,o,s){e.active=o,c(t.layout,h.name,e).applyUpdate(\"active\",o),\"buttons\"===e.type?y(t,n,null,null,e):\"dropdown\"===e.type&&(i.attr(h.menuIndexAttrName,\"-1\"),g(t,n,i,a,e),s||y(t,n,i,a,e))}function g(t,e,r,n,i){var a=s.ensureSingle(e,\"g\",h.headerClassName,(function(t){t.style(\"pointer-events\",\"all\")})),l=i._dims,c=i.active,u=i.buttons[c]||h.blankHeaderOpts,f={y:i.pad.t,yPad:0,x:i.pad.l,xPad:0,index:0},p={width:l.headerWidth,height:l.headerHeight};a.call(v,i,u,t).call(M,i,f,p),s.ensureSingle(e,\"text\",h.headerArrowClassName,(function(t){t.attr(\"text-anchor\",\"end\").call(o.font,i.font).text(h.arrowSymbol[i.direction])})).attr({x:l.headerWidth-h.arrowOffsetX+i.pad.l,y:l.headerHeight/2+h.textOffsetY+i.pad.t}),a.on(\"click\",(function(){r.call(S,String(d(r,i)?-1:i._index)),y(t,e,r,n,i)})),a.on(\"mouseover\",(function(){a.call(w)})),a.on(\"mouseout\",(function(){a.call(T,i)})),o.setTranslate(e,l.lx,l.ly)}function y(t,e,r,a,o){r||(r=e).attr(\"pointer-events\",\"all\");var l=function(t){return-1==+t.attr(h.menuIndexAttrName)}(r)&&\"buttons\"!==o.type?[]:o.buttons,c=\"dropdown\"===o.type?h.dropdownButtonClassName:h.buttonClassName,u=r.selectAll(\"g.\"+c).data(s.filterVisible(l)),f=u.enter().append(\"g\").classed(c,!0),p=u.exit();\"dropdown\"===o.type?(f.attr(\"opacity\",\"0\").transition().attr(\"opacity\",\"1\"),p.transition().attr(\"opacity\",\"0\").remove()):p.remove();var d=0,g=0,y=o._dims,x=-1!==[\"up\",\"down\"].indexOf(o.direction);\"dropdown\"===o.type&&(x?g=y.headerHeight+h.gapButtonHeader:d=y.headerWidth+h.gapButtonHeader),\"dropdown\"===o.type&&\"up\"===o.direction&&(g=-h.gapButtonHeader+h.gapButton-y.openHeight),\"dropdown\"===o.type&&\"left\"===o.direction&&(d=-h.gapButtonHeader+h.gapButton-y.openWidth);var _={x:y.lx+d+o.pad.l,y:y.ly+g+o.pad.t,yPad:h.gapButton,xPad:h.gapButton,index:0},k={l:_.x+o.borderwidth,t:_.y+o.borderwidth};u.each((function(s,l){var c=n.select(this);c.call(v,o,s,t).call(M,o,_),c.on(\"click\",(function(){n.event.defaultPrevented||(s.execute&&(s.args2&&o.active===l?(m(t,o,0,e,r,a,-1),i.executeAPICommand(t,s.method,s.args2)):(m(t,o,0,e,r,a,l),i.executeAPICommand(t,s.method,s.args))),t.emit(\"plotly_buttonclicked\",{menu:o,button:s,active:o.active}))})),c.on(\"mouseover\",(function(){c.call(w)})),c.on(\"mouseout\",(function(){c.call(T,o),u.call(b,o)}))})),u.call(b,o),x?(k.w=Math.max(y.openWidth,y.headerWidth),k.h=_.y-k.t):(k.w=_.x-k.l,k.h=Math.max(y.openHeight,y.headerHeight)),k.direction=o.direction,a&&(u.size()?function(t,e,r,n,i,a){var o,s,l,c=i.direction,u=\"up\"===c||\"down\"===c,f=i._dims,p=i.active;if(u)for(s=0,l=0;l<p;l++)s+=f.heights[l]+h.gapButton;else for(o=0,l=0;l<p;l++)o+=f.widths[l]+h.gapButton;n.enable(a,o,s),n.hbar&&n.hbar.attr(\"opacity\",\"0\").transition().attr(\"opacity\",\"1\"),n.vbar&&n.vbar.attr(\"opacity\",\"0\").transition().attr(\"opacity\",\"1\")}(0,0,0,a,o,k):function(t){var e=!!t.hbar,r=!!t.vbar;e&&t.hbar.transition().attr(\"opacity\",\"0\").each(\"end\",(function(){e=!1,r||t.disable()})),r&&t.vbar.transition().attr(\"opacity\",\"0\").each(\"end\",(function(){r=!1,e||t.disable()}))}(a))}function v(t,e,r,n){t.call(x,e).call(_,e,r,n)}function x(t,e){s.ensureSingle(t,\"rect\",h.itemRectClassName,(function(t){t.attr({rx:h.rx,ry:h.ry,\"shape-rendering\":\"crispEdges\"})})).call(a.stroke,e.bordercolor).call(a.fill,e.bgcolor).style(\"stroke-width\",e.borderwidth+\"px\")}function _(t,e,r,n){var i=s.ensureSingle(t,\"text\",h.itemTextClassName,(function(t){t.attr({\"text-anchor\":\"start\",\"data-notex\":1})})),a=r.label,c=n._fullLayout._meta;c&&(a=s.templateString(a,c)),i.call(o.font,e.font).text(a).call(l.convertToTspans,n)}function b(t,e){var r=e.active;t.each((function(t,i){var o=n.select(this);i===r&&e.showactive&&o.select(\"rect.\"+h.itemRectClassName).call(a.fill,h.activeColor)}))}function w(t){t.select(\"rect.\"+h.itemRectClassName).call(a.fill,h.hoverColor)}function T(t,e){t.select(\"rect.\"+h.itemRectClassName).call(a.fill,e.bgcolor)}function k(t,e){var r=e._dims={width1:0,height1:0,heights:[],widths:[],totalWidth:0,totalHeight:0,openWidth:0,openHeight:0,lx:0,ly:0},a=o.tester.selectAll(\"g.\"+h.dropdownButtonClassName).data(s.filterVisible(e.buttons));a.enter().append(\"g\").classed(h.dropdownButtonClassName,!0);var c=-1!==[\"up\",\"down\"].indexOf(e.direction);a.each((function(i,a){var s=n.select(this);s.call(v,e,i,t);var f=s.select(\".\"+h.itemTextClassName),p=f.node()&&o.bBox(f.node()).width,d=Math.max(p+h.textPadX,h.minWidth),m=e.font.size*u,g=l.lineCount(f),y=Math.max(m*g,h.minHeight)+h.textOffsetY;y=Math.ceil(y),d=Math.ceil(d),r.widths[a]=d,r.heights[a]=y,r.height1=Math.max(r.height1,y),r.width1=Math.max(r.width1,d),c?(r.totalWidth=Math.max(r.totalWidth,d),r.openWidth=r.totalWidth,r.totalHeight+=y+h.gapButton,r.openHeight+=y+h.gapButton):(r.totalWidth+=d+h.gapButton,r.openWidth+=d+h.gapButton,r.totalHeight=Math.max(r.totalHeight,y),r.openHeight=r.totalHeight)})),c?r.totalHeight-=h.gapButton:r.totalWidth-=h.gapButton,r.headerWidth=r.width1+h.arrowPadX,r.headerHeight=r.height1,\"dropdown\"===e.type&&(c?(r.width1+=h.arrowPadX,r.totalHeight=r.height1):r.totalWidth=r.width1,r.totalWidth+=h.arrowPadX),a.remove();var f=r.totalWidth+e.pad.l+e.pad.r,p=r.totalHeight+e.pad.t+e.pad.b,d=t._fullLayout._size;r.lx=d.l+d.w*e.x,r.ly=d.t+d.h*(1-e.y);var m=\"left\";s.isRightAnchor(e)&&(r.lx-=f,m=\"right\"),s.isCenterAnchor(e)&&(r.lx-=f/2,m=\"center\");var g=\"top\";s.isBottomAnchor(e)&&(r.ly-=p,g=\"bottom\"),s.isMiddleAnchor(e)&&(r.ly-=p/2,g=\"middle\"),r.totalWidth=Math.ceil(r.totalWidth),r.totalHeight=Math.ceil(r.totalHeight),r.lx=Math.round(r.lx),r.ly=Math.round(r.ly),i.autoMargin(t,A(e),{x:e.x,y:e.y,l:f*({right:1,center:.5}[m]||0),r:f*({left:1,center:.5}[m]||0),b:p*({top:1,middle:.5}[g]||0),t:p*({bottom:1,middle:.5}[g]||0)})}function A(t){return h.autoMarginIdRoot+t._index}function M(t,e,r,n){n=n||{};var i=t.select(\".\"+h.itemRectClassName),a=t.select(\".\"+h.itemTextClassName),s=e.borderwidth,c=r.index,f=e._dims;o.setTranslate(t,s+r.x,s+r.y);var p=-1!==[\"up\",\"down\"].indexOf(e.direction),d=n.height||(p?f.heights[c]:f.height1);i.attr({x:0,y:0,width:n.width||(p?f.width1:f.widths[c]),height:d});var m=e.font.size*u,g=(l.lineCount(a)-1)*m/2;l.positionText(a,h.textOffsetX,d/2-g+h.textOffsetY),p?r.y+=f.heights[c]+r.yPad:r.x+=f.widths[c]+r.xPad,r.index++}function S(t,e){t.attr(h.menuIndexAttrName,e||\"-1\").selectAll(\"g.\"+h.dropdownButtonClassName).remove()}t.exports=function(t){var e=t._fullLayout,r=s.filterVisible(e[h.name]);function a(e){i.autoMargin(t,A(e))}var o=e._menulayer.selectAll(\"g.\"+h.containerClassName).data(r.length>0?[0]:[]);if(o.enter().append(\"g\").classed(h.containerClassName,!0).style(\"cursor\",\"pointer\"),o.exit().each((function(){n.select(this).selectAll(\"g.\"+h.headerGroupClassName).each(a)})).remove(),0!==r.length){var l=o.selectAll(\"g.\"+h.headerGroupClassName).data(r,p);l.enter().append(\"g\").classed(h.headerGroupClassName,!0);for(var c=s.ensureSingle(o,\"g\",h.dropdownButtonGroupClassName,(function(t){t.style(\"pointer-events\",\"all\")})),u=0;u<r.length;u++){var v=r[u];k(t,v)}var x=\"updatemenus\"+e._uid,_=new f(t,c,x);l.enter().size()&&(c.node().parentNode.appendChild(c.node()),c.call(S)),l.exit().each((function(t){c.call(S),a(t)})).remove(),l.each((function(e){var r=n.select(this),a=\"dropdown\"===e.type?c:null;i.manageCommandObserver(t,e,e.buttons,(function(n){m(t,e,e.buttons[n.index],r,a,_,n.index,!0)})),\"dropdown\"===e.type?(g(t,r,c,_,e),d(c,e)&&y(t,r,c,_,e)):y(t,r,null,null,e)}))}}},46230:function(t,e,r){\"use strict\";var n=r(71559);t.exports={moduleType:\"component\",name:n.name,layoutAttributes:r(85389),supplyLayoutDefaults:r(42746),draw:r(40974)}},21736:function(t,e,r){\"use strict\";t.exports=s;var n=r(45568),i=r(78766),a=r(62203),o=r(34809);function s(t,e,r){this.gd=t,this.container=e,this.id=r,this.position=null,this.translateX=null,this.translateY=null,this.hbar=null,this.vbar=null,this.bg=this.container.selectAll(\"rect.scrollbox-bg\").data([0]),this.bg.exit().on(\".drag\",null).on(\"wheel\",null).remove(),this.bg.enter().append(\"rect\").classed(\"scrollbox-bg\",!0).style(\"pointer-events\",\"all\").attr({opacity:0,x:0,y:0,width:0,height:0})}s.barWidth=2,s.barLength=20,s.barRadius=2,s.barPad=1,s.barColor=\"#808BA4\",s.prototype.enable=function(t,e,r){var o=this.gd._fullLayout,l=o.width,c=o.height;this.position=t;var u,h,f,p,d=this.position.l,m=this.position.w,g=this.position.t,y=this.position.h,v=this.position.direction,x=\"down\"===v,_=\"left\"===v,b=\"up\"===v,w=m,T=y;x||_||\"right\"===v||b||(this.position.direction=\"down\",x=!0),x||b?(h=(u=d)+w,x?(f=g,T=(p=Math.min(f+T,c))-f):T=(p=g+T)-(f=Math.max(p-T,0))):(p=(f=g)+T,_?w=(h=d+w)-(u=Math.max(h-w,0)):(u=d,w=(h=Math.min(u+w,l))-u)),this._box={l:u,t:f,w:w,h:T};var k=m>w,A=s.barLength+2*s.barPad,M=s.barWidth+2*s.barPad,S=d,E=g+y;E+M>c&&(E=c-M);var C=this.container.selectAll(\"rect.scrollbar-horizontal\").data(k?[0]:[]);C.exit().on(\".drag\",null).remove(),C.enter().append(\"rect\").classed(\"scrollbar-horizontal\",!0).call(i.fill,s.barColor),k?(this.hbar=C.attr({rx:s.barRadius,ry:s.barRadius,x:S,y:E,width:A,height:M}),this._hbarXMin=S+A/2,this._hbarTranslateMax=w-A):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var L=y>T,I=s.barWidth+2*s.barPad,P=s.barLength+2*s.barPad,z=d+m,O=g;z+I>l&&(z=l-I);var D=this.container.selectAll(\"rect.scrollbar-vertical\").data(L?[0]:[]);D.exit().on(\".drag\",null).remove(),D.enter().append(\"rect\").classed(\"scrollbar-vertical\",!0).call(i.fill,s.barColor),L?(this.vbar=D.attr({rx:s.barRadius,ry:s.barRadius,x:z,y:O,width:I,height:P}),this._vbarYMin=O+P/2,this._vbarTranslateMax=T-P):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var R=this.id,F=u-.5,B=L?h+I+.5:h+.5,N=f-.5,j=k?p+M+.5:p+.5,U=o._topdefs.selectAll(\"#\"+R).data(k||L?[0]:[]);if(U.exit().remove(),U.enter().append(\"clipPath\").attr(\"id\",R).append(\"rect\"),k||L?(this._clipRect=U.select(\"rect\").attr({x:Math.floor(F),y:Math.floor(N),width:Math.ceil(B)-Math.floor(F),height:Math.ceil(j)-Math.floor(N)}),this.container.call(a.setClipUrl,R,this.gd),this.bg.attr({x:d,y:g,width:m,height:y})):(this.bg.attr({width:0,height:0}),this.container.on(\"wheel\",null).on(\".drag\",null).call(a.setClipUrl,null),delete this._clipRect),k||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 q=n.behavior.drag().on(\"dragstart\",(function(){n.event.sourceEvent.preventDefault(),n.event.sourceEvent.stopPropagation()})).on(\"drag\",this._onBarDrag.bind(this));k&&this.hbar.on(\".drag\",null).call(q),L&&this.vbar.on(\".drag\",null).call(q)}this.setTranslate(e,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 t=this.translateX,e=this.translateY;this.hbar&&(t-=n.event.dx),this.vbar&&(e-=n.event.dy),this.setTranslate(t,e)},s.prototype._onBoxWheel=function(){var t=this.translateX,e=this.translateY;this.hbar&&(t+=n.event.deltaY),this.vbar&&(e+=n.event.deltaY),this.setTranslate(t,e)},s.prototype._onBarDrag=function(){var t=this.translateX,e=this.translateY;if(this.hbar){var r=t+this._hbarXMin,i=r+this._hbarTranslateMax;t=(o.constrain(n.event.x,r,i)-r)/(i-r)*(this.position.w-this._box.w)}if(this.vbar){var a=e+this._vbarYMin,s=a+this._vbarTranslateMax;e=(o.constrain(n.event.y,a,s)-a)/(s-a)*(this.position.h-this._box.h)}this.setTranslate(t,e)},s.prototype.setTranslate=function(t,e){var r=this.position.w-this._box.w,n=this.position.h-this._box.h;if(t=o.constrain(t||0,0,r),e=o.constrain(e||0,0,n),this.translateX=t,this.translateY=e,this.container.call(a.setTranslate,this._box.l-this.position.l-t,this._box.t-this.position.t-e),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+t-.5),y:Math.floor(this.position.t+e-.5)}),this.hbar){var i=t/r;this.hbar.call(a.setTranslate,t+i*this._hbarTranslateMax,e)}if(this.vbar){var s=e/n;this.vbar.call(a.setTranslate,t,e+s*this._vbarTranslateMax)}}},4530:function(t){\"use strict\";t.exports={FROM_BL:{left:0,center:.5,right:1,bottom:0,middle:.5,top:1},FROM_TL:{left:0,center:.5,right:1,bottom:1,middle:.5,top:0},FROM_BR:{left:1,center:.5,right:0,bottom:0,middle:.5,top:1},LINE_SPACING:1.3,CAP_SHIFT:.7,MID_SHIFT:.35,OPPOSITE_SIDE:{left:\"right\",right:\"left\",top:\"bottom\",bottom:\"top\"}}},35081:function(t){\"use strict\";t.exports={axisRefDescription:function(t,e,r){return[\"If set to a\",t,\"axis id (e.g. *\"+t+\"* or\",\"*\"+t+\"2*), the `\"+t+\"` position refers to a\",t,\"coordinate. If set to *paper*, the `\"+t+\"`\",\"position refers to the distance from the\",e,\"of the plotting\",\"area in normalized coordinates where *0* (*1*) corresponds to the\",e,\"(\"+r+\"). If set to a\",t,\"axis ID followed by\",\"*domain* (separated by a space), the position behaves like for\",\"*paper*, but refers to the distance in fractions of the domain\",\"length from the\",e,\"of the domain of that axis: e.g.,\",\"*\"+t+\"2 domain* refers to the domain of the second\",t,\" axis and a\",t,\"position of 0.5 refers to the\",\"point between the\",e,\"and the\",r,\"of the domain of the\",\"second\",t,\"axis.\"].join(\" \")}}},20909:function(t){\"use strict\";t.exports={INCREASING:{COLOR:\"#3D9970\",SYMBOL:\"▲\"},DECREASING:{COLOR:\"#FF4136\",SYMBOL:\"▼\"}}},87296:function(t){\"use strict\";t.exports={FORMAT_LINK:\"https://github.com/d3/d3-format/tree/v1.4.5#d3-format\",DATE_FORMAT_LINK:\"https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format\"}},20726:function(t){\"use strict\";t.exports={COMPARISON_OPS:[\"=\",\"!=\",\"<\",\">=\",\">\",\"<=\"],COMPARISON_OPS2:[\"=\",\"<\",\">=\",\">\",\"<=\"],INTERVAL_OPS:[\"[]\",\"()\",\"[)\",\"(]\",\"][\",\")(\",\"](\",\")[\"],SET_OPS:[\"{}\",\"}{\"],CONSTRAINT_REDUCTION:{\"=\":\"=\",\"<\":\"<\",\"<=\":\"<\",\">\":\">\",\">=\":\">\",\"[]\":\"[]\",\"()\":\"[]\",\"[)\":\"[]\",\"(]\":\"[]\",\"][\":\"][\",\")(\":\"][\",\"](\":\"][\",\")[\":\"][\"}}},84770:function(t){\"use strict\";t.exports={solid:[[],0],dot:[[.5,1],200],dash:[[.5,1],50],longdash:[[.5,1],10],dashdot:[[.5,.625,.875,1],50],longdashdot:[[.5,.7,.8,1],10]}},49467:function(t){\"use strict\";t.exports={circle:\"●\",\"circle-open\":\"○\",square:\"■\",\"square-open\":\"□\",diamond:\"◆\",\"diamond-open\":\"◇\",cross:\"+\",x:\"❌\"}},20438:function(t){\"use strict\";t.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}},63821:function(t){\"use strict\";t.exports={BADNUM:void 0,FP_SAFE:1e-4*Number.MAX_VALUE,ONEMAXYEAR:316224e5,ONEAVGYEAR:315576e5,ONEMINYEAR:31536e6,ONEMAXQUARTER:79488e5,ONEAVGQUARTER:78894e5,ONEMINQUARTER:76896e5,ONEMAXMONTH:26784e5,ONEAVGMONTH:26298e5,ONEMINMONTH:24192e5,ONEWEEK:6048e5,ONEDAY:864e5,ONEHOUR:36e5,ONEMIN:6e4,ONESEC:1e3,ONEMILLI:1,ONEMICROSEC:.001,EPOCHJD:2440587.5,ALMOST_EQUAL:.999999,LOG_CLIP:10,MINUS_SIGN:\"\"}},1837:function(t,e){\"use strict\";e.CSS_DECLARATIONS=[[\"image-rendering\",\"optimizeSpeed\"],[\"image-rendering\",\"-moz-crisp-edges\"],[\"image-rendering\",\"-o-crisp-edges\"],[\"image-rendering\",\"-webkit-optimize-contrast\"],[\"image-rendering\",\"optimize-contrast\"],[\"image-rendering\",\"crisp-edges\"],[\"image-rendering\",\"pixelated\"]],e.STYLE=e.CSS_DECLARATIONS.map((function(t){return t.join(\": \")+\"; \"})).join(\"\")},62972:function(t,e){\"use strict\";e.xmlns=\"http://www.w3.org/2000/xmlns/\",e.svg=\"http://www.w3.org/2000/svg\",e.xlink=\"http://www.w3.org/1999/xlink\",e.svgAttrs={xmlns:e.svg,\"xmlns:xlink\":e.xlink}},17430:function(t,e,r){\"use strict\";e.version=r(29697).version,r(71116),r(6713);for(var n=r(33626),i=e.register=n.register,a=r(90742),o=Object.keys(a),s=0;s<o.length;s++){var l=o[s];\"_\"!==l.charAt(0)&&(e[l]=a[l]),i({moduleType:\"apiMethod\",name:l,fn:a[l]})}i(r(69693)),i([r(3599),r(83348),r(44844),r(43701),r(15553),r(46230),r(15359),r(55429),r(44453),r(83595),r(77901),r(88856),r(96919),r(82494),r(32141),r(95433)]),i([r(30227),r(44611)]),window.PlotlyLocales&&Array.isArray(window.PlotlyLocales)&&(i(window.PlotlyLocales),delete window.PlotlyLocales),e.Icons=r(35188);var c=r(32141),u=r(44122);e.Plots={resize:u.resize,graphJson:u.graphJson,sendDataToCloud:u.sendDataToCloud},e.Fx={hover:c.hover,unhover:c.unhover,loneHover:c.loneHover,loneUnhover:c.loneUnhover},e.Snapshot=r(6170),e.PlotSchema=r(57297)},35188:function(t){\"use strict\";t.exports={undo:{width:857.1,height:1e3,path:\"m857 350q0-87-34-166t-91-137-137-92-166-34q-96 0-183 41t-147 114q-4 6-4 13t5 11l76 77q6 5 14 5 9-1 13-7 41-53 100-82t126-29q58 0 110 23t92 61 61 91 22 111-22 111-61 91-92 61-110 23q-55 0-105-20t-90-57l77-77q17-16 8-38-10-23-33-23h-250q-15 0-25 11t-11 25v250q0 24 22 33 22 10 39-8l72-72q60 57 137 88t159 31q87 0 166-34t137-92 91-137 34-166z\",transform:\"matrix(1 0 0 -1 0 850)\"},home:{width:928.6,height:1e3,path:\"m786 296v-267q0-15-11-26t-25-10h-214v214h-143v-214h-214q-15 0-25 10t-11 26v267q0 1 0 2t0 2l321 264 321-264q1-1 1-4z m124 39l-34-41q-5-5-12-6h-2q-7 0-12 3l-386 322-386-322q-7-4-13-4-7 2-12 7l-35 41q-4 5-3 13t6 12l401 334q18 15 42 15t43-15l136-114v109q0 8 5 13t13 5h107q8 0 13-5t5-13v-227l122-102q5-5 6-12t-4-13z\",transform:\"matrix(1 0 0 -1 0 850)\"},\"camera-retro\":{width:1e3,height:1e3,path:\"m518 386q0 8-5 13t-13 5q-37 0-63-27t-26-63q0-8 5-13t13-5 12 5 5 13q0 23 16 38t38 16q8 0 13 5t5 13z m125-73q0-59-42-101t-101-42-101 42-42 101 42 101 101 42 101-42 42-101z m-572-320h858v71h-858v-71z m643 320q0 89-62 152t-152 62-151-62-63-152 63-151 151-63 152 63 62 151z m-571 358h214v72h-214v-72z m-72-107h858v143h-462l-36-71h-360v-72z m929 143v-714q0-30-21-51t-50-21h-858q-29 0-50 21t-21 51v714q0 30 21 51t50 21h858q29 0 50-21t21-51z\",transform:\"matrix(1 0 0 -1 0 850)\"},zoombox:{width:1e3,height:1e3,path:\"m1000-25l-250 251c40 63 63 138 63 218 0 224-182 406-407 406-224 0-406-182-406-406s183-406 407-406c80 0 155 22 218 62l250-250 125 125z m-812 250l0 438 437 0 0-438-437 0z m62 375l313 0 0-312-313 0 0 312z\",transform:\"matrix(1 0 0 -1 0 850)\"},pan:{width:1e3,height:1e3,path:\"m1000 350l-187 188 0-125-250 0 0 250 125 0-188 187-187-187 125 0 0-250-250 0 0 125-188-188 186-187 0 125 252 0 0-250-125 0 187-188 188 188-125 0 0 250 250 0 0-126 187 188z\",transform:\"matrix(1 0 0 -1 0 850)\"},zoom_plus:{width:875,height:1e3,path:\"m1 787l0-875 875 0 0 875-875 0z m687-500l-187 0 0-187-125 0 0 187-188 0 0 125 188 0 0 187 125 0 0-187 187 0 0-125z\",transform:\"matrix(1 0 0 -1 0 850)\"},zoom_minus:{width:875,height:1e3,path:\"m0 788l0-876 875 0 0 876-875 0z m688-500l-500 0 0 125 500 0 0-125z\",transform:\"matrix(1 0 0 -1 0 850)\"},autoscale:{width:1e3,height:1e3,path:\"m250 850l-187 0-63 0 0-62 0-188 63 0 0 188 187 0 0 62z m688 0l-188 0 0-62 188 0 0-188 62 0 0 188 0 62-62 0z m-875-938l0 188-63 0 0-188 0-62 63 0 187 0 0 62-187 0z m875 188l0-188-188 0 0-62 188 0 62 0 0 62 0 188-62 0z m-125 188l-1 0-93-94-156 156 156 156 92-93 2 0 0 250-250 0 0-2 93-92-156-156-156 156 94 92 0 2-250 0 0-250 0 0 93 93 157-156-157-156-93 94 0 0 0-250 250 0 0 0-94 93 156 157 156-157-93-93 0 0 250 0 0 250z\",transform:\"matrix(1 0 0 -1 0 850)\"},tooltip_basic:{width:1500,height:1e3,path:\"m375 725l0 0-375-375 375-374 0-1 1125 0 0 750-1125 0z\",transform:\"matrix(1 0 0 -1 0 850)\"},tooltip_compare:{width:1125,height:1e3,path:\"m187 786l0 2-187-188 188-187 0 0 937 0 0 373-938 0z m0-499l0 1-187-188 188-188 0 0 937 0 0 376-938-1z\",transform:\"matrix(1 0 0 -1 0 850)\"},plotlylogo:{width:1542,height:1e3,path:\"m0-10h182v-140h-182v140z m228 146h183v-286h-183v286z m225 714h182v-1000h-182v1000z m225-285h182v-715h-182v715z m225 142h183v-857h-183v857z m231-428h182v-429h-182v429z m225-291h183v-138h-183v138z\",transform:\"matrix(1 0 0 -1 0 850)\"},\"z-axis\":{width:1e3,height:1e3,path:\"m833 5l-17 108v41l-130-65 130-66c0 0 0 38 0 39 0-1 36-14 39-25 4-15-6-22-16-30-15-12-39-16-56-20-90-22-187-23-279-23-261 0-341 34-353 59 3 60 228 110 228 110-140-8-351-35-351-116 0-120 293-142 474-142 155 0 477 22 477 142 0 50-74 79-163 96z m-374 94c-58-5-99-21-99-40 0-24 65-43 144-43 79 0 143 19 143 43 0 19-42 34-98 40v216h87l-132 135-133-135h88v-216z m167 515h-136v1c16 16 31 34 46 52l84 109v54h-230v-71h124v-1c-16-17-28-32-44-51l-89-114v-51h245v72z\",transform:\"matrix(1 0 0 -1 0 850)\"},\"3d_rotate\":{width:1e3,height:1e3,path:\"m922 660c-5 4-9 7-14 11-359 263-580-31-580-31l-102 28 58-400c0 1 1 1 2 2 118 108 351 249 351 249s-62 27-100 42c88 83 222 183 347 122 16-8 30-17 44-27-2 1-4 2-6 4z m36-329c0 0 64 229-88 296-62 27-124 14-175-11 157-78 225-208 249-266 8-19 11-31 11-31 2 5 6 15 11 32-5-13-8-20-8-20z m-775-239c70-31 117-50 198-32-121 80-199 346-199 346l-96-15-58-12c0 0 55-226 155-287z m603 133l-317-139c0 0 4-4 19-14 7-5 24-15 24-15s-177-147-389 4c235-287 536-112 536-112l31-22 100 299-4-1z m-298-153c6-4 14-9 24-15 0 0-17 10-24 15z\",transform:\"matrix(1 0 0 -1 0 850)\"},camera:{width:1e3,height:1e3,path:\"m500 450c-83 0-150-67-150-150 0-83 67-150 150-150 83 0 150 67 150 150 0 83-67 150-150 150z m400 150h-120c-16 0-34 13-39 29l-31 93c-6 15-23 28-40 28h-340c-16 0-34-13-39-28l-31-94c-6-15-23-28-40-28h-120c-55 0-100-45-100-100v-450c0-55 45-100 100-100h800c55 0 100 45 100 100v450c0 55-45 100-100 100z m-400-550c-138 0-250 112-250 250 0 138 112 250 250 250 138 0 250-112 250-250 0-138-112-250-250-250z m365 380c-19 0-35 16-35 35 0 19 16 35 35 35 19 0 35-16 35-35 0-19-16-35-35-35z\",transform:\"matrix(1 0 0 -1 0 850)\"},movie:{width:1e3,height:1e3,path:\"m938 413l-188-125c0 37-17 71-44 94 64 38 107 107 107 187 0 121-98 219-219 219-121 0-219-98-219-219 0-61 25-117 66-156h-115c30 33 49 76 49 125 0 103-84 187-187 187s-188-84-188-187c0-57 26-107 65-141-38-22-65-62-65-109v-250c0-70 56-126 125-126h500c69 0 125 56 125 126l188-126c34 0 62 28 62 63v375c0 35-28 63-62 63z m-750 0c-69 0-125 56-125 125s56 125 125 125 125-56 125-125-56-125-125-125z m406-1c-87 0-157 70-157 157 0 86 70 156 157 156s156-70 156-156-70-157-156-157z\",transform:\"matrix(1 0 0 -1 0 850)\"},question:{width:857.1,height:1e3,path:\"m500 82v107q0 8-5 13t-13 5h-107q-8 0-13-5t-5-13v-107q0-8 5-13t13-5h107q8 0 13 5t5 13z m143 375q0 49-31 91t-77 65-95 23q-136 0-207-119-9-14 4-24l74-55q4-4 10-4 9 0 14 7 30 38 48 51 19 14 48 14 27 0 48-15t21-33q0-21-11-34t-38-25q-35-16-65-48t-29-70v-20q0-8 5-13t13-5h107q8 0 13 5t5 13q0 10 12 27t30 28q18 10 28 16t25 19 25 27 16 34 7 45z m214-107q0-117-57-215t-156-156-215-58-216 58-155 156-58 215 58 215 155 156 216 58 215-58 156-156 57-215z\",transform:\"matrix(1 0 0 -1 0 850)\"},disk:{width:857.1,height:1e3,path:\"m214-7h429v214h-429v-214z m500 0h72v500q0 8-6 21t-11 20l-157 156q-5 6-19 12t-22 5v-232q0-22-15-38t-38-16h-322q-22 0-37 16t-16 38v232h-72v-714h72v232q0 22 16 38t37 16h465q22 0 38-16t15-38v-232z m-214 518v178q0 8-5 13t-13 5h-107q-7 0-13-5t-5-13v-178q0-8 5-13t13-5h107q7 0 13 5t5 13z m357-18v-518q0-22-15-38t-38-16h-750q-23 0-38 16t-16 38v750q0 22 16 38t38 16h517q23 0 50-12t42-26l156-157q16-15 27-42t11-49z\",transform:\"matrix(1 0 0 -1 0 850)\"},drawopenpath:{width:70,height:70,path:\"M33.21,85.65a7.31,7.31,0,0,1-2.59-.48c-8.16-3.11-9.27-19.8-9.88-41.3-.1-3.58-.19-6.68-.35-9-.15-2.1-.67-3.48-1.43-3.79-2.13-.88-7.91,2.32-12,5.86L3,32.38c1.87-1.64,11.55-9.66,18.27-6.9,2.13.87,4.75,3.14,5.17,9,.17,2.43.26,5.59.36,9.25a224.17,224.17,0,0,0,1.5,23.4c1.54,10.76,4,12.22,4.48,12.4.84.32,2.79-.46,5.76-3.59L43,80.07C41.53,81.57,37.68,85.64,33.21,85.65ZM74.81,69a11.34,11.34,0,0,0,6.09-6.72L87.26,44.5,74.72,32,56.9,38.35c-2.37.86-5.57,3.42-6.61,6L38.65,72.14l8.42,8.43ZM55,46.27a7.91,7.91,0,0,1,3.64-3.17l14.8-5.3,8,8L76.11,60.6l-.06.19a6.37,6.37,0,0,1-3,3.43L48.25,74.59,44.62,71Zm16.57,7.82A6.9,6.9,0,1,0,64.64,61,6.91,6.91,0,0,0,71.54,54.09Zm-4.05,0a2.85,2.85,0,1,1-2.85-2.85A2.86,2.86,0,0,1,67.49,54.09Zm-4.13,5.22L60.5,56.45,44.26,72.7l2.86,2.86ZM97.83,35.67,84.14,22l-8.57,8.57L89.26,44.24Zm-13.69-8,8,8-2.85,2.85-8-8Z\",transform:\"matrix(1 0 0 1 -15 -15)\"},drawclosedpath:{width:90,height:90,path:\"M88.41,21.12a26.56,26.56,0,0,0-36.18,0l-2.07,2-2.07-2a26.57,26.57,0,0,0-36.18,0,23.74,23.74,0,0,0,0,34.8L48,90.12a3.22,3.22,0,0,0,4.42,0l36-34.21a23.73,23.73,0,0,0,0-34.79ZM84,51.24,50.16,83.35,16.35,51.25a17.28,17.28,0,0,1,0-25.47,20,20,0,0,1,27.3,0l4.29,4.07a3.23,3.23,0,0,0,4.44,0l4.29-4.07a20,20,0,0,1,27.3,0,17.27,17.27,0,0,1,0,25.46ZM66.76,47.68h-33v6.91h33ZM53.35,35H46.44V68h6.91Z\",transform:\"matrix(1 0 0 1 -5 -5)\"},lasso:{width:1031,height:1e3,path:\"m1018 538c-36 207-290 336-568 286-277-48-473-256-436-463 10-57 36-108 76-151-13-66 11-137 68-183 34-28 75-41 114-42l-55-70 0 0c-2-1-3-2-4-3-10-14-8-34 5-45 14-11 34-8 45 4 1 1 2 3 2 5l0 0 113 140c16 11 31 24 45 40 4 3 6 7 8 11 48-3 100 0 151 9 278 48 473 255 436 462z m-624-379c-80 14-149 48-197 96 42 42 109 47 156 9 33-26 47-66 41-105z m-187-74c-19 16-33 37-39 60 50-32 109-55 174-68-42-25-95-24-135 8z m360 75c-34-7-69-9-102-8 8 62-16 128-68 170-73 59-175 54-244-5-9 20-16 40-20 61-28 159 121 317 333 354s407-60 434-217c28-159-121-318-333-355z\",transform:\"matrix(1 0 0 -1 0 850)\"},selectbox:{width:1e3,height:1e3,path:\"m0 850l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-285l0-143 143 0 0 143-143 0z m857 0l0-143 143 0 0 143-143 0z m-857-286l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z m285 0l0-143 143 0 0 143-143 0z m286 0l0-143 143 0 0 143-143 0z\",transform:\"matrix(1 0 0 -1 0 850)\"},drawline:{width:70,height:70,path:\"M60.64,62.3a11.29,11.29,0,0,0,6.09-6.72l6.35-17.72L60.54,25.31l-17.82,6.4c-2.36.86-5.57,3.41-6.6,6L24.48,65.5l8.42,8.42ZM40.79,39.63a7.89,7.89,0,0,1,3.65-3.17l14.79-5.31,8,8L61.94,54l-.06.19a6.44,6.44,0,0,1-3,3.43L34.07,68l-3.62-3.63Zm16.57,7.81a6.9,6.9,0,1,0-6.89,6.9A6.9,6.9,0,0,0,57.36,47.44Zm-4,0a2.86,2.86,0,1,1-2.85-2.85A2.86,2.86,0,0,1,53.32,47.44Zm-4.13,5.22L46.33,49.8,30.08,66.05l2.86,2.86ZM83.65,29,70,15.34,61.4,23.9,75.09,37.59ZM70,21.06l8,8-2.84,2.85-8-8ZM87,80.49H10.67V87H87Z\",transform:\"matrix(1 0 0 1 -15 -15)\"},drawrect:{width:80,height:80,path:\"M78,22V79H21V22H78m9-9H12V88H87V13ZM68,46.22H31V54H68ZM53,32H45.22V69H53Z\",transform:\"matrix(1 0 0 1 -10 -10)\"},drawcircle:{width:80,height:80,path:\"M50,84.72C26.84,84.72,8,69.28,8,50.3S26.84,15.87,50,15.87,92,31.31,92,50.3,73.16,84.72,50,84.72Zm0-60.59c-18.6,0-33.74,11.74-33.74,26.17S31.4,76.46,50,76.46,83.74,64.72,83.74,50.3,68.6,24.13,50,24.13Zm17.15,22h-34v7.11h34Zm-13.8-13H46.24v34h7.11Z\",transform:\"matrix(1 0 0 1 -10 -10)\"},eraseshape:{width:80,height:80,path:\"M82.77,78H31.85L6,49.57,31.85,21.14H82.77a8.72,8.72,0,0,1,8.65,8.77V69.24A8.72,8.72,0,0,1,82.77,78ZM35.46,69.84H82.77a.57.57,0,0,0,.49-.6V29.91a.57.57,0,0,0-.49-.61H35.46L17,49.57Zm32.68-34.7-24,24,5,5,24-24Zm-19,.53-5,5,24,24,5-5Z\",transform:\"matrix(1 0 0 1 -10 -10)\"},spikeline:{width:1e3,height:1e3,path:\"M512 409c0-57-46-104-103-104-57 0-104 47-104 104 0 57 47 103 104 103 57 0 103-46 103-103z m-327-39l92 0 0 92-92 0z m-185 0l92 0 0 92-92 0z m370-186l92 0 0 93-92 0z m0-184l92 0 0 92-92 0z\",transform:\"matrix(1.5 0 0 -1.5 0 850)\"},pencil:{width:1792,height:1792,path:\"M491 1536l91-91-235-235-91 91v107h128v128h107zm523-928q0-22-22-22-10 0-17 7l-542 542q-7 7-7 17 0 22 22 22 10 0 17-7l542-542q7-7 7-17zm-54-192l416 416-832 832h-416v-416zm683 96q0 53-37 90l-166 166-416-416 166-165q36-38 90-38 53 0 91 38l235 234q37 39 37 91z\",transform:\"matrix(1 0 0 1 0 1)\"},newplotlylogo:{name:\"newplotlylogo\",svg:[\"<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 132 132'>\",\"<defs>\",\" <style>\",\" .cls-0{fill:#000;}\",\" .cls-1{fill:#FFF;}\",\" .cls-2{fill:#F26;}\",\" .cls-3{fill:#D69;}\",\" .cls-4{fill:#BAC;}\",\" .cls-5{fill:#9EF;}\",\" </style>\",\"</defs>\",\" <title>plotly-logomark</title>\",\" <g id='symbol'>\",\" <rect class='cls-0' x='0' y='0' width='132' height='132' rx='18' ry='18'/>\",\" <circle class='cls-5' cx='102' cy='30' r='6'/>\",\" <circle class='cls-4' cx='78' cy='30' r='6'/>\",\" <circle class='cls-4' cx='78' cy='54' r='6'/>\",\" <circle class='cls-3' cx='54' cy='30' r='6'/>\",\" <circle class='cls-2' cx='30' cy='30' r='6'/>\",\" <circle class='cls-2' cx='30' cy='54' r='6'/>\",\" <path class='cls-1' d='M30,72a6,6,0,0,0-6,6v24a6,6,0,0,0,12,0V78A6,6,0,0,0,30,72Z'/>\",\" <path class='cls-1' d='M78,72a6,6,0,0,0-6,6v24a6,6,0,0,0,12,0V78A6,6,0,0,0,78,72Z'/>\",\" <path class='cls-1' d='M54,48a6,6,0,0,0-6,6v48a6,6,0,0,0,12,0V54A6,6,0,0,0,54,48Z'/>\",\" <path class='cls-1' d='M102,48a6,6,0,0,0-6,6v48a6,6,0,0,0,12,0V54A6,6,0,0,0,102,48Z'/>\",\" </g>\",\"</svg>\"].join(\"\")}}},32546:function(t,e){\"use strict\";e.isLeftAnchor=function(t){return\"left\"===t.xanchor||\"auto\"===t.xanchor&&t.x<=1/3},e.isCenterAnchor=function(t){return\"center\"===t.xanchor||\"auto\"===t.xanchor&&t.x>1/3&&t.x<2/3},e.isRightAnchor=function(t){return\"right\"===t.xanchor||\"auto\"===t.xanchor&&t.x>=2/3},e.isTopAnchor=function(t){return\"top\"===t.yanchor||\"auto\"===t.yanchor&&t.y>=2/3},e.isMiddleAnchor=function(t){return\"middle\"===t.yanchor||\"auto\"===t.yanchor&&t.y>1/3&&t.y<2/3},e.isBottomAnchor=function(t){return\"bottom\"===t.yanchor||\"auto\"===t.yanchor&&t.y<=1/3}},44313:function(t,e,r){\"use strict\";var n=r(98953),i=n.mod,a=n.modHalf,o=Math.PI,s=2*o;function l(t){return Math.abs(t[1]-t[0])>s-1e-14}function c(t,e){return a(e-t,s)}function u(t,e){if(l(e))return!0;var r,n;e[0]<e[1]?(r=e[0],n=e[1]):(r=e[1],n=e[0]),(r=i(r,s))>(n=i(n,s))&&(n+=s);var a=i(t,s),o=a+s;return a>=r&&a<=n||o>=r&&o<=n}function h(t,e,r,n,i,a,c){i=i||0,a=a||0;var u,h,f,p,d,m=l([r,n]);function g(t,e){return[t*Math.cos(e)+i,a-t*Math.sin(e)]}m?(u=0,h=o,f=s):r<n?(u=r,f=n):(u=n,f=r),t<e?(p=t,d=e):(p=e,d=t);var y,v=Math.abs(f-u)<=o?0:1;function x(t,e,r){return\"A\"+[t,t]+\" \"+[0,v,r]+\" \"+g(t,e)}return m?y=null===p?\"M\"+g(d,u)+x(d,h,0)+x(d,f,0)+\"Z\":\"M\"+g(p,u)+x(p,h,0)+x(p,f,0)+\"ZM\"+g(d,u)+x(d,h,1)+x(d,f,1)+\"Z\":null===p?(y=\"M\"+g(d,u)+x(d,f,0),c&&(y+=\"L0,0Z\")):y=\"M\"+g(p,u)+\"L\"+g(d,u)+x(d,f,0)+\"L\"+g(p,f)+x(p,u,1)+\"Z\",y}t.exports={deg2rad:function(t){return t/180*o},rad2deg:function(t){return t/o*180},angleDelta:c,angleDist:function(t,e){return Math.abs(c(t,e))},isFullCircle:l,isAngleInsideSector:u,isPtInsideSector:function(t,e,r,n){return!!u(e,n)&&(r[0]<r[1]?(i=r[0],a=r[1]):(i=r[1],a=r[0]),t>=i&&t<=a);var i,a},pathArc:function(t,e,r,n,i){return h(null,t,e,r,n,i,0)},pathSector:function(t,e,r,n,i){return h(null,t,e,r,n,i,1)},pathAnnulus:function(t,e,r,n,i,a){return h(t,e,r,n,i,a,1)}}},87800:function(t,e,r){\"use strict\";var n=r(93229).decode,i=r(56174),a=Array.isArray,o=ArrayBuffer,s=DataView;function l(t){return o.isView(t)&&!(t instanceof s)}function c(t){return a(t)||l(t)}e.isTypedArray=l,e.isArrayOrTypedArray=c,e.isArray1D=function(t){return!c(t[0])},e.ensureArray=function(t,e){return a(t)||(t=[]),t.length=e,t};var u={u1c:\"undefined\"==typeof Uint8ClampedArray?void 0:Uint8ClampedArray,i1:\"undefined\"==typeof Int8Array?void 0:Int8Array,u1:\"undefined\"==typeof Uint8Array?void 0:Uint8Array,i2:\"undefined\"==typeof Int16Array?void 0:Int16Array,u2:\"undefined\"==typeof Uint16Array?void 0:Uint16Array,i4:\"undefined\"==typeof Int32Array?void 0:Int32Array,u4:\"undefined\"==typeof Uint32Array?void 0:Uint32Array,f4:\"undefined\"==typeof Float32Array?void 0:Float32Array,f8:\"undefined\"==typeof Float64Array?void 0:Float64Array};function h(t){return t.constructor===ArrayBuffer}function f(t,e,r){if(c(t)){if(c(t[0])){for(var n=r,i=0;i<t.length;i++)n=e(n,t[i].length);return n}return t.length}return 0}u.uint8c=u.u1c,u.uint8=u.u1,u.int8=u.i1,u.uint16=u.u2,u.int16=u.i2,u.uint32=u.u4,u.int32=u.i4,u.float32=u.f4,u.float64=u.f8,e.isArrayBuffer=h,e.decodeTypedArraySpec=function(t){var e=[],r=function(t){return{bdata:t.bdata,dtype:t.dtype,shape:t.shape}}(t),i=r.dtype,a=u[i];if(!a)throw new Error('Error in dtype: \"'+i+'\"');var o=a.BYTES_PER_ELEMENT,s=r.bdata;h(s)||(s=n(s));var l=void 0===r.shape?[s.byteLength/o]:(\"\"+r.shape).split(\",\");l.reverse();var c,f,p=l.length,d=+l[0],m=o*d,g=0;if(1===p)e=new a(s);else if(2===p)for(c=+l[1],f=0;f<c;f++)e[f]=new a(s,g,d),g+=m;else{if(3!==p)throw new Error(\"ndim: \"+p+'is not supported with the shape:\"'+r.shape+'\"');c=+l[1];for(var y=+l[2],v=0;v<y;v++)for(e[v]=[],f=0;f<c;f++)e[v][f]=new a(s,g,d),g+=m}return e.bdata=r.bdata,e.dtype=r.dtype,e.shape=l.reverse().join(\",\"),t._inputArray=e,e},e.isTypedArraySpec=function(t){return i(t)&&t.hasOwnProperty(\"dtype\")&&\"string\"==typeof t.dtype&&t.hasOwnProperty(\"bdata\")&&(\"string\"==typeof t.bdata||h(t.bdata))&&(void 0===t.shape||t.hasOwnProperty(\"shape\")&&(\"string\"==typeof t.shape||\"number\"==typeof t.shape))},e.concat=function(){var t,e,r,n,i,o,s,l,c=[],u=!0,h=0;for(r=0;r<arguments.length;r++)(o=(n=arguments[r]).length)&&(e?c.push(n):(e=n,i=o),a(n)?t=!1:(u=!1,h?t!==n.constructor&&(t=!1):t=n.constructor),h+=o);if(!h)return[];if(!c.length)return e;if(u)return e.concat.apply(e,c);if(t){for((s=new t(h)).set(e),r=0;r<c.length;r++)n=c[r],s.set(n,i),i+=n.length;return s}for(s=new Array(h),l=0;l<e.length;l++)s[l]=e[l];for(r=0;r<c.length;r++){for(n=c[r],l=0;l<n.length;l++)s[i+l]=n[l];i+=l}return s},e.maxRowLength=function(t){return f(t,Math.max,0)},e.minRowLength=function(t){return f(t,Math.min,1/0)}},44498:function(t,e,r){\"use strict\";var n=r(10721),i=r(63821).BADNUM,a=/^['\"%,$#\\s']+|[, ]|['\"%,$#\\s']+$/g;t.exports=function(t){return\"string\"==typeof t&&(t=t.replace(a,\"\")),n(t)?Number(t):i}},34823:function(t){\"use strict\";t.exports=function(t){var e=t._fullLayout;e._glcanvas&&e._glcanvas.size()&&e._glcanvas.each((function(t){t.regl&&t.regl.clear({color:!0,depth:!0})}))}},23493:function(t){\"use strict\";t.exports=function(t){t._responsiveChartHandler&&(window.removeEventListener(\"resize\",t._responsiveChartHandler),delete t._responsiveChartHandler)}},34220:function(t,e,r){\"use strict\";var n=r(10721),i=r(65657),a=r(93049).extendFlat,o=r(9829),s=r(19017),l=r(78766),c=r(20438).DESELECTDIM,u=r(35632),h=r(90694).counter,f=r(98953).modHalf,p=r(87800).isArrayOrTypedArray,d=r(87800).isTypedArraySpec,m=r(87800).decodeTypedArraySpec;function g(t,r){var n=e.valObjectMeta[r.valType];if(r.arrayOk&&p(t))return!0;if(n.validateFunction)return n.validateFunction(t,r);var i={},a=i,o={set:function(t){a=t}};return n.coerceFunction(t,o,i,r),a!==i}e.valObjectMeta={data_array:{coerceFunction:function(t,e,r){e.set(p(t)?t:d(t)?m(t):r)}},enumerated:{coerceFunction:function(t,e,r,n){n.coerceNumber&&(t=+t),-1===n.values.indexOf(t)?e.set(r):e.set(t)},validateFunction:function(t,e){e.coerceNumber&&(t=+t);for(var r=e.values,n=0;n<r.length;n++){var i=String(r[n]);if(\"/\"===i.charAt(0)&&\"/\"===i.charAt(i.length-1)){if(new RegExp(i.substr(1,i.length-2)).test(t))return!0}else if(t===r[n])return!0}return!1}},boolean:{coerceFunction:function(t,e,r){!0===t||!1===t?e.set(t):e.set(r)}},number:{coerceFunction:function(t,e,r,i){d(t)&&(t=m(t)),!n(t)||void 0!==i.min&&t<i.min||void 0!==i.max&&t>i.max?e.set(r):e.set(+t)}},integer:{coerceFunction:function(t,e,r,i){-1===(i.extras||[]).indexOf(t)?(d(t)&&(t=m(t)),t%1||!n(t)||void 0!==i.min&&t<i.min||void 0!==i.max&&t>i.max?e.set(r):e.set(+t)):e.set(t)}},string:{coerceFunction:function(t,e,r,n){if(\"string\"!=typeof t){var i=\"number\"==typeof t;!0!==n.strict&&i?e.set(String(t)):e.set(r)}else n.noBlank&&!t?e.set(r):e.set(t)}},color:{coerceFunction:function(t,e,r){d(t)&&(t=m(t)),i(t).isValid()?e.set(t):e.set(r)}},colorlist:{coerceFunction:function(t,e,r){Array.isArray(t)&&t.length&&t.every((function(t){return i(t).isValid()}))?e.set(t):e.set(r)}},colorscale:{coerceFunction:function(t,e,r){e.set(s.get(t,r))}},angle:{coerceFunction:function(t,e,r){d(t)&&(t=m(t)),\"auto\"===t?e.set(\"auto\"):n(t)?e.set(f(+t,360)):e.set(r)}},subplotid:{coerceFunction:function(t,e,r,n){var i=n.regex||h(r);\"string\"==typeof t&&i.test(t)?e.set(t):e.set(r)},validateFunction:function(t,e){var r=e.dflt;return t===r||\"string\"==typeof t&&!!h(r).test(t)}},flaglist:{coerceFunction:function(t,e,r,n){if(-1===(n.extras||[]).indexOf(t))if(\"string\"==typeof t){for(var i=t.split(\"+\"),a=0;a<i.length;){var o=i[a];-1===n.flags.indexOf(o)||i.indexOf(o)<a?i.splice(a,1):a++}i.length?e.set(i.join(\"+\")):e.set(r)}else e.set(r);else e.set(t)}},any:{coerceFunction:function(t,e,r){void 0===t?e.set(r):e.set(d(t)?m(t):t)}},info_array:{coerceFunction:function(t,r,n,i){function a(t,r,n){var i,a={set:function(t){i=t}};return void 0===n&&(n=r.dflt),e.valObjectMeta[r.valType].coerceFunction(t,a,n,r),i}if(d(t)&&(t=m(t)),p(t)){var o,s,l,c,u,h,f=2===i.dimensions||\"1-2\"===i.dimensions&&Array.isArray(t)&&p(t[0]),g=i.items,y=[],v=Array.isArray(g),x=v&&f&&p(g[0]),_=f&&v&&!x,b=v&&!_?g.length:t.length;if(n=Array.isArray(n)?n:[],f)for(o=0;o<b;o++)for(y[o]=[],l=p(t[o])?t[o]:[],u=_?g.length:v?g[o].length:l.length,s=0;s<u;s++)c=_?g[s]:v?g[o][s]:g,void 0!==(h=a(l[s],c,(n[o]||[])[s]))&&(y[o][s]=h);else for(o=0;o<b;o++)void 0!==(h=a(t[o],v?g[o]:g,n[o]))&&(y[o]=h);r.set(y)}else r.set(n)},validateFunction:function(t,e){if(!p(t))return!1;var r=e.items,n=Array.isArray(r),i=2===e.dimensions;if(!e.freeLength&&t.length!==r.length)return!1;for(var a=0;a<t.length;a++)if(i){if(!p(t[a])||!e.freeLength&&t[a].length!==r[a].length)return!1;for(var o=0;o<t[a].length;o++)if(!g(t[a][o],n?r[a][o]:r))return!1}else if(!g(t[a],n?r[a]:r))return!1;return!0}}},e.coerce=function(t,r,n,i,a){var o=u(n,i).get(),s=u(t,i),l=u(r,i),c=s.get(),h=r._template;if(void 0===c&&h&&(c=u(h,i).get(),h=0),void 0===a&&(a=o.dflt),o.arrayOk){if(p(c))return l.set(c),c;if(d(c))return c=m(c),l.set(c),c}var f=e.valObjectMeta[o.valType].coerceFunction;f(c,l,a,o);var y=l.get();return h&&y===a&&!g(c,o)&&(f(c=u(h,i).get(),l,a,o),y=l.get()),y},e.coerce2=function(t,r,n,i,a){var o=u(t,i),s=e.coerce(t,r,n,i,a);return null!=o.get()&&s},e.coerceFont=function(t,e,r,n){n||(n={}),r=a({},r);var i={family:t(e+\".family\",(r=a(r,n.overrideDflt||{})).family),size:t(e+\".size\",r.size),color:t(e+\".color\",r.color),weight:t(e+\".weight\",r.weight),style:t(e+\".style\",r.style)};if(n.noFontVariant||(i.variant=t(e+\".variant\",r.variant)),n.noFontLineposition||(i.lineposition=t(e+\".lineposition\",r.lineposition)),n.noFontTextcase||(i.textcase=t(e+\".textcase\",r.textcase)),!n.noFontShadow){var o=r.shadow;\"none\"===o&&n.autoShadowDflt&&(o=\"auto\"),i.shadow=t(e+\".shadow\",o)}return i},e.coercePattern=function(t,e,r,n){if(t(e+\".shape\")){t(e+\".solidity\"),t(e+\".size\");var i=\"overlay\"===t(e+\".fillmode\");if(!n){var a=t(e+\".bgcolor\",i?r:void 0);t(e+\".fgcolor\",i?l.contrast(a):r)}t(e+\".fgopacity\",i?.5:1)}},e.coerceHoverinfo=function(t,r,n){var i,a=r._module.attributes,s=a.hoverinfo?a:o,l=s.hoverinfo;if(1===n._dataLength){var c=\"all\"===l.dflt?l.flags.slice():l.dflt.split(\"+\");c.splice(c.indexOf(\"name\"),1),i=c.join(\"+\")}return e.coerce(t,r,s,\"hoverinfo\",i)},e.coerceSelectionMarkerOpacity=function(t,e){if(t.marker){var r,n,i=t.marker.opacity;void 0!==i&&(p(i)||t.selected||t.unselected||(r=i,n=c*i),e(\"selected.marker.opacity\",r),e(\"unselected.marker.opacity\",n))}},e.validate=g},92596:function(t,e,r){\"use strict\";var n,i,a=r(42696).DC,o=r(10721),s=r(48636),l=r(98953).mod,c=r(63821),u=c.BADNUM,h=c.ONEDAY,f=c.ONEHOUR,p=c.ONEMIN,d=c.ONESEC,m=c.EPOCHJD,g=r(33626),y=r(42696).aL,v=/^\\s*(-?\\d\\d\\d\\d|\\d\\d)(-(\\d?\\d)(-(\\d?\\d)([ Tt]([01]?\\d|2[0-3])(:([0-5]\\d)(:([0-5]\\d(\\.\\d+)?))?(Z|z|[+\\-]\\d\\d(:?\\d\\d)?)?)?)?)?)?\\s*$/m,x=/^\\s*(-?\\d\\d\\d\\d|\\d\\d)(-(\\d?\\di?)(-(\\d?\\d)([ Tt]([01]?\\d|2[0-3])(:([0-5]\\d)(:([0-5]\\d(\\.\\d+)?))?(Z|z|[+\\-]\\d\\d(:?\\d\\d)?)?)?)?)?)?\\s*$/m,_=(new Date).getFullYear()-70;function b(t){return t&&g.componentsRegistry.calendars&&\"string\"==typeof t&&\"gregorian\"!==t}function w(t,e){return String(t+Math.pow(10,e)).substr(1)}e.dateTick0=function(t,r){var n=function(t,e){return b(t)?e?g.getComponentMethod(\"calendars\",\"CANONICAL_SUNDAY\")[t]:g.getComponentMethod(\"calendars\",\"CANONICAL_TICK\")[t]:e?\"2000-01-02\":\"2000-01-01\"}(t,!!r);if(r<2)return n;var i=e.dateTime2ms(n,t);return i+=h*(r-1),e.ms2DateTime(i,0,t)},e.dfltRange=function(t){return b(t)?g.getComponentMethod(\"calendars\",\"DFLTRANGE\")[t]:[\"2000-01-01\",\"2001-01-01\"]},e.isJSDate=function(t){return\"object\"==typeof t&&null!==t&&\"function\"==typeof t.getTime},e.dateTime2ms=function(t,r){if(e.isJSDate(t)){var a=t.getTimezoneOffset()*p,o=(t.getUTCMinutes()-t.getMinutes())*p+(t.getUTCSeconds()-t.getSeconds())*d+(t.getUTCMilliseconds()-t.getMilliseconds());if(o){var s=3*p;a=a-s/2+l(o-a+s/2,s)}return(t=Number(t)-a)>=n&&t<=i?t:u}if(\"string\"!=typeof t&&\"number\"!=typeof t)return u;t=String(t);var c=b(r),y=t.charAt(0);!c||\"G\"!==y&&\"g\"!==y||(t=t.substr(1),r=\"\");var w=c&&\"chinese\"===r.substr(0,7),T=t.match(w?x:v);if(!T)return u;var k=T[1],A=T[3]||\"1\",M=Number(T[5]||1),S=Number(T[7]||0),E=Number(T[9]||0),C=Number(T[11]||0);if(c){if(2===k.length)return u;var L;k=Number(k);try{var I=g.getComponentMethod(\"calendars\",\"getCal\")(r);if(w){var P=\"i\"===A.charAt(A.length-1);A=parseInt(A,10),L=I.newDate(k,I.toMonthIndex(k,A,P),M)}else L=I.newDate(k,Number(A),M)}catch(t){return u}return L?(L.toJD()-m)*h+S*f+E*p+C*d:u}k=2===k.length?(Number(k)+2e3-_)%100+_:Number(k),A-=1;var z=new Date(Date.UTC(2e3,A,M,S,E));return z.setUTCFullYear(k),z.getUTCMonth()!==A||z.getUTCDate()!==M?u:z.getTime()+C*d},n=e.MIN_MS=e.dateTime2ms(\"-9999\"),i=e.MAX_MS=e.dateTime2ms(\"9999-12-31 23:59:59.9999\"),e.isDateTime=function(t,r){return e.dateTime2ms(t,r)!==u};var T=90*h,k=3*f,A=5*p;function M(t,e,r,n,i){if((e||r||n||i)&&(t+=\" \"+w(e,2)+\":\"+w(r,2),(n||i)&&(t+=\":\"+w(n,2),i))){for(var a=4;i%10==0;)a-=1,i/=10;t+=\".\"+w(i,a)}return t}e.ms2DateTime=function(t,e,r){if(\"number\"!=typeof t||!(t>=n&&t<=i))return u;e||(e=0);var a,o,s,c,v,x,_=Math.floor(10*l(t+.05,1)),w=Math.round(t-_/10);if(b(r)){var S=Math.floor(w/h)+m,E=Math.floor(l(t,h));try{a=g.getComponentMethod(\"calendars\",\"getCal\")(r).fromJD(S).formatDate(\"yyyy-mm-dd\")}catch(t){a=y(\"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=e<T?Math.floor(E/f):0,s=e<T?Math.floor(E%f/p):0,c=e<k?Math.floor(E%p/d):0,v=e<A?E%d*10+_:0}else x=new Date(w),a=y(\"%Y-%m-%d\")(x),o=e<T?x.getUTCHours():0,s=e<T?x.getUTCMinutes():0,c=e<k?x.getUTCSeconds():0,v=e<A?10*x.getUTCMilliseconds()+_:0;return M(a,o,s,c,v)},e.ms2DateTimeLocal=function(t){if(!(t>=n+h&&t<=i-h))return u;var e=Math.floor(10*l(t+.05,1)),r=new Date(Math.round(t-e/10));return M(a(\"%Y-%m-%d\")(r),r.getHours(),r.getMinutes(),r.getSeconds(),10*r.getUTCMilliseconds()+e)},e.cleanDate=function(t,r,n){if(t===u)return r;if(e.isJSDate(t)||\"number\"==typeof t&&isFinite(t)){if(b(n))return s.error(\"JS Dates and milliseconds are incompatible with world calendars\",t),r;if(!(t=e.ms2DateTimeLocal(+t))&&void 0!==r)return r}else if(!e.isDateTime(t,n))return s.error(\"unrecognized date\",t),r;return t};var S=/%\\d?f/g,E=/%h/g,C={1:\"1\",2:\"1\",3:\"2\",4:\"2\"};function L(t,e,r,n){t=t.replace(S,(function(t){var r=Math.min(+t.charAt(1)||6,6);return(e/1e3%1+2).toFixed(r).substr(2).replace(/0+$/,\"\")||\"0\"}));var i=new Date(Math.floor(e+.05));if(t=t.replace(E,(function(){return C[r(\"%q\")(i)]})),b(n))try{t=g.getComponentMethod(\"calendars\",\"worldCalFmt\")(t,e,n)}catch(t){return\"Invalid\"}return r(t)(i)}var I=[59,59.9,59.99,59.999,59.9999];e.formatDate=function(t,e,r,n,i,a){if(i=b(i)&&i,!e)if(\"y\"===r)e=a.year;else if(\"m\"===r)e=a.month;else{if(\"d\"!==r)return function(t,e){var r=l(t+.05,h),n=w(Math.floor(r/f),2)+\":\"+w(l(Math.floor(r/p),60),2);if(\"M\"!==e){o(e)||(e=0);var i=(100+Math.min(l(t/d,60),I[e])).toFixed(e).substr(1);e>0&&(i=i.replace(/0+$/,\"\").replace(/[\\.]$/,\"\")),n+=\":\"+i}return n}(t,r)+\"\\n\"+L(a.dayMonthYear,t,n,i);e=a.dayMonth+\"\\n\"+a.year}return L(e,t,n,i)};var P=3*h;e.incrementMonth=function(t,e,r){r=b(r)&&r;var n=l(t,h);if(t=Math.round(t-n),r)try{var i=Math.round(t/h)+m,a=g.getComponentMethod(\"calendars\",\"getCal\")(r),o=a.fromJD(i);return e%12?a.add(o,e,\"m\"):a.add(o,e/12,\"y\"),(o.toJD()-m)*h+n}catch(e){s.error(\"invalid ms \"+t+\" in calendar \"+r)}var c=new Date(t+P);return c.setUTCMonth(c.getUTCMonth()+e)+n-P},e.findExactDates=function(t,e){for(var r,n,i=0,a=0,s=0,l=0,c=b(e)&&g.getComponentMethod(\"calendars\",\"getCal\")(e),u=0;u<t.length;u++)if(n=t[u],o(n)){if(!(n%h))if(c)try{1===(r=c.fromJD(n/h+m)).day()?1===r.month()?i++:a++:s++}catch(t){}else 1===(r=new Date(n)).getUTCDate()?0===r.getUTCMonth()?i++:a++:s++}else l++;s+=a+=i;var f=t.length-l;return{exactYears:i/f,exactMonths:a/f,exactDays:s/f}}},95425:function(t,e,r){\"use strict\";var n=r(45568),i=r(48636),a=r(15236),o=r(11191);function s(t){var e=t&&t.parentNode;e&&e.removeChild(t)}function l(t,e,r){var n=\"plotly.js-style-\"+t,a=document.getElementById(n);a||((a=document.createElement(\"style\")).setAttribute(\"id\",n),a.appendChild(document.createTextNode(\"\")),document.head.appendChild(a));var o=a.sheet;o.insertRule?o.insertRule(e+\"{\"+r+\"}\",0):o.addRule?o.addRule(e,r,0):i.warn(\"addStyleRule failed\")}function c(t){var e=window.getComputedStyle(t,null),r=e.getPropertyValue(\"-webkit-transform\")||e.getPropertyValue(\"-moz-transform\")||e.getPropertyValue(\"-ms-transform\")||e.getPropertyValue(\"-o-transform\")||e.getPropertyValue(\"transform\");return\"none\"===r?null:r.replace(\"matrix\",\"\").replace(\"3d\",\"\").slice(1,-1).split(\",\").map((function(t){return+t}))}function u(t){for(var e=[];h(t);)e.push(t),t=t.parentNode,\"function\"==typeof ShadowRoot&&t instanceof ShadowRoot&&(t=t.host);return e}function h(t){return t&&(t instanceof Element||t instanceof HTMLElement)}t.exports={getGraphDiv:function(t){var e;if(\"string\"==typeof t){if(null===(e=document.getElementById(t)))throw new Error(\"No DOM element with id '\"+t+\"' exists on the page.\");return e}if(null==t)throw new Error(\"DOM element provided is null or undefined\");return t},isPlotDiv:function(t){var e=n.select(t);return e.node()instanceof HTMLElement&&e.size()&&e.classed(\"js-plotly-plot\")},removeElement:s,addStyleRule:function(t,e){l(\"global\",t,e)},addRelatedStyleRule:l,deleteRelatedStyleRule:function(t){var e=\"plotly.js-style-\"+t,r=document.getElementById(e);r&&s(r)},getFullTransformMatrix:function(t){var e=u(t),r=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return e.forEach((function(t){var e=c(t);if(e){var n=a.convertCssMatrix(e);r=o.multiply(r,r,n)}})),r},getElementTransformMatrix:c,getElementAndAncestors:u,equalDomRects:function(t,e){return t&&e&&t.top===e.top&&t.left===e.left&&t.right===e.right&&t.bottom===e.bottom}}},68596:function(t,e,r){\"use strict\";var n=r(7683).EventEmitter,i={init:function(t){if(t._ev instanceof n)return t;var e=new n,r=new n;return t._ev=e,t._internalEv=r,t.on=e.on.bind(e),t.once=e.once.bind(e),t.removeListener=e.removeListener.bind(e),t.removeAllListeners=e.removeAllListeners.bind(e),t._internalOn=r.on.bind(r),t._internalOnce=r.once.bind(r),t._removeInternalListener=r.removeListener.bind(r),t._removeAllInternalListeners=r.removeAllListeners.bind(r),t.emit=function(n,i){\"undefined\"!=typeof jQuery&&jQuery(t).trigger(n,i),e.emit(n,i),r.emit(n,i)},t},triggerHandler:function(t,e,r){var n,i;\"undefined\"!=typeof jQuery&&(n=jQuery(t).triggerHandler(e,r));var a=t._ev;if(!a)return n;var o,s=a._events[e];if(!s)return n;function l(t){return t.listener?(a.removeListener(e,t.listener),t.fired?void 0:(t.fired=!0,t.listener.apply(a,[r]))):t.apply(a,[r])}for(s=Array.isArray(s)?s:[s],o=0;o<s.length-1;o++)l(s[o]);return i=l(s[o]),void 0!==n?n:i},purge:function(t){return delete t._ev,delete t.on,delete t.once,delete t.removeListener,delete t.removeAllListeners,delete t.emit,delete t._ev,delete t._internalEv,delete t._internalOn,delete t._internalOnce,delete t._removeInternalListener,delete t._removeAllInternalListeners,t}};t.exports=i},93049:function(t,e,r){\"use strict\";var n=r(56174),i=Array.isArray;function a(t,e,r,o){var s,l,c,u,h,f,p,d=t[0],m=t.length;if(2===m&&i(d)&&i(t[1])&&0===d.length){if(p=function(t,e){var r,n;for(r=0;r<t.length;r++){if(null!==(n=t[r])&&\"object\"==typeof n)return!1;void 0!==n&&(e[r]=n)}return!0}(t[1],d),p)return d;d.splice(0,d.length)}for(var g=1;g<m;g++)for(l in s=t[g])c=d[l],u=s[l],o&&i(u)?d[l]=u:e&&u&&(n(u)||(h=i(u)))?(h?(h=!1,f=c&&i(c)?c:[]):f=c&&n(c)?c:{},d[l]=a([f,u],e,r,o)):(void 0!==u||r)&&(d[l]=u);return d}e.extendFlat=function(){return a(arguments,!1,!1,!1)},e.extendDeep=function(){return a(arguments,!0,!1,!1)},e.extendDeepAll=function(){return a(arguments,!0,!0,!1)},e.extendDeepNoArrays=function(){return a(arguments,!0,!1,!0)}},48965:function(t){\"use strict\";t.exports=function(t){for(var e={},r=[],n=0,i=0;i<t.length;i++){var a=t[i];1!==e[a]&&(e[a]=1,r[n++]=a)}return r}},78926:function(t){\"use strict\";function e(t){return!0===t.visible}function r(t){var e=t[0].trace;return!0===e.visible&&0!==e._length}t.exports=function(t){for(var n,i=(n=t,Array.isArray(n)&&Array.isArray(n[0])&&n[0][0]&&n[0][0].trace?r:e),a=[],o=0;o<t.length;o++){var s=t[o];i(s)&&a.push(s)}return a}},3994:function(t,e,r){\"use strict\";var n=r(45568),i=r(78171),{area:a}=r(61990),{centroid:o}=r(30035),{bbox:s}=r(25368),l=r(29527),c=r(48636),u=r(56174),h=r(35632),f=r(80899),p=Object.keys(i),d={\"ISO-3\":l,\"USA-states\":l,\"country names\":function(t){for(var e=0;e<p.length;e++){var r=p[e];if(new RegExp(i[r]).test(t.trim().toLowerCase()))return r}return c.log(\"Unrecognized country name: \"+t+\".\"),!1}};function m(t){var e=t.geojson,r=window.PlotlyGeoAssets||{},n=\"string\"==typeof e?r[e]:e;return u(n)?n:(c.error(\"Oops ... something went wrong when fetching \"+e),!1)}t.exports={locationToFeature:function(t,e,r){if(!e||\"string\"!=typeof e)return!1;var n,i,a,o=d[t](e);if(o){if(\"USA-states\"===t)for(n=[],a=0;a<r.length;a++)(i=r[a]).properties&&i.properties.gu&&\"USA\"===i.properties.gu&&n.push(i);else n=r;for(a=0;a<n.length;a++)if((i=n[a]).id===o)return i;c.log([\"Location with id\",o,\"does not have a matching topojson feature at this resolution.\"].join(\" \"))}return!1},feature2polygons:function(t){var e,r,n,i,a=t.geometry,o=a.coordinates,s=t.id,l=[];function c(t){for(var e=0;e<t.length-1;e++)if(t[e][0]>0&&t[e+1][0]<0)return e;return null}switch(e=\"RUS\"===s||\"FJI\"===s?function(t){var e;if(null===c(t))e=t;else for(e=new Array(t.length),i=0;i<t.length;i++)e[i]=[t[i][0]<0?t[i][0]+360:t[i][0],t[i][1]];l.push(f.tester(e))}:\"ATA\"===s?function(t){var e=c(t);if(null===e)return l.push(f.tester(t));var r=new Array(t.length+1),n=0;for(i=0;i<t.length;i++)i>e?r[n++]=[t[i][0]+360,t[i][1]]:i===e?(r[n++]=t[i],r[n++]=[t[i][0],-90]):r[n++]=t[i];var a=f.tester(r);a.pts.pop(),l.push(a)}:function(t){l.push(f.tester(t))},a.type){case\"MultiPolygon\":for(r=0;r<o.length;r++)for(n=0;n<o[r].length;n++)e(o[r][n]);break;case\"Polygon\":for(r=0;r<o.length;r++)e(o[r])}return l},getTraceGeojson:m,extractTraceFeature:function(t){var e=t[0].trace,r=m(e);if(!r)return!1;var n,i={},s=[];for(n=0;n<e._length;n++){var l=t[n];(l.loc||0===l.loc)&&(i[l.loc]=l)}function u(t){var r=h(t,e.featureidkey||\"id\").get(),n=i[r];if(n){var l=t.geometry;if(\"Polygon\"===l.type||\"MultiPolygon\"===l.type){var u={type:\"Feature\",id:r,geometry:l,properties:{}};u.geometry.coordinates.length>0?u.properties.ct=function(t){var e,r=t.geometry;if(\"MultiPolygon\"===r.type)for(var n=r.coordinates,i=0,s=0;s<n.length;s++){var l={type:\"Polygon\",coordinates:n[s]},c=a(l);c>i&&(i=c,e=l)}else e=r;return o(e).geometry.coordinates}(u):u.properties.ct=[NaN,NaN],n.fIn=t,n.fOut=u,s.push(u)}else c.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 f=r.features;for(n=0;n<f.length;n++)u(f[n]);break;case\"Feature\":u(r);break;default:return c.warn([\"Invalid GeoJSON type\",(r.type||\"none\")+\".\",\"Traces with locationmode *geojson-id* only support\",\"*FeatureCollection* and *Feature* types.\"].join(\" \")),!1}for(var p in i)c.log([\"Location *\"+p+\"*\",\"does not have a matching feature with id-key\",\"*\"+e.featureidkey+\"*.\"].join(\" \"));return s},fetchTraceGeoData:function(t){var e=window.PlotlyGeoAssets||{},r=[];function i(t){return new Promise((function(r,i){n.json(t,(function(n,a){if(n){delete e[t];var o=404===n.status?'GeoJSON at URL \"'+t+'\" does not exist.':\"Unexpected error while fetching from \"+t;return i(new Error(o))}return e[t]=a,r(a)}))}))}function a(t){return new Promise((function(r,n){var i=0,a=setInterval((function(){return e[t]&&\"pending\"!==e[t]?(clearInterval(a),r(e[t])):i>100?(clearInterval(a),n(\"Unexpected error while fetching from \"+t)):void i++}),50)}))}for(var o=0;o<t.length;o++){var s=t[o][0].trace.geojson;\"string\"==typeof s&&(e[s]?\"pending\"===e[s]&&r.push(a(s)):(e[s]=\"pending\",r.push(i(s))))}return r},computeBbox:function(t){return s(t)}}},39532:function(t,e,r){\"use strict\";var n=r(63821).BADNUM;e.calcTraceToLineCoords=function(t){for(var e=t[0].trace.connectgaps,r=[],i=[],a=0;a<t.length;a++){var o=t[a].lonlat;o[0]!==n?i.push(o):!e&&i.length>0&&(r.push(i),i=[])}return i.length>0&&r.push(i),r},e.makeLine=function(t){return 1===t.length?{type:\"LineString\",coordinates:t[0]}:{type:\"MultiLineString\",coordinates:t}},e.makePolygon=function(t){if(1===t.length)return{type:\"Polygon\",coordinates:t};for(var e=new Array(t.length),r=0;r<t.length;r++)e[r]=[t[r]];return{type:\"MultiPolygon\",coordinates:e}},e.makeBlank=function(){return{type:\"Point\",coordinates:[]}}},3447:function(t,e,r){\"use strict\";var n,i,a,o=r(98953).mod;function s(t,e,r,n,i,a,o,s){var l=r-t,c=i-t,u=o-i,h=n-e,f=a-e,p=s-a,d=l*p-u*h;if(0===d)return null;var m=(c*p-u*f)/d,g=(c*h-l*f)/d;return g<0||g>1||m<0||m>1?null:{x:t+l*m,y:e+h*m}}function l(t,e,r,n,i){var a=n*t+i*e;if(a<0)return n*n+i*i;if(a>r){var o=n-t,s=i-e;return o*o+s*s}var l=n*e-i*t;return l*l/r}e.segmentsIntersect=s,e.segmentDistance=function(t,e,r,n,i,a,o,c){if(s(t,e,r,n,i,a,o,c))return 0;var u=r-t,h=n-e,f=o-i,p=c-a,d=u*u+h*h,m=f*f+p*p,g=Math.min(l(u,h,d,i-t,a-e),l(u,h,d,o-t,c-e),l(f,p,m,t-i,e-a),l(f,p,m,r-i,n-a));return Math.sqrt(g)},e.getTextLocation=function(t,e,r,s){if(t===i&&s===a||(n={},i=t,a=s),n[r])return n[r];var l=t.getPointAtLength(o(r-s/2,e)),c=t.getPointAtLength(o(r+s/2,e)),u=Math.atan((c.y-l.y)/(c.x-l.x)),h=t.getPointAtLength(o(r,e)),f={x:(4*h.x+l.x+c.x)/6,y:(4*h.y+l.y+c.y)/6,theta:u};return n[r]=f,f},e.clearLocationCache=function(){i=null},e.getVisibleSegment=function(t,e,r){var n,i,a=e.left,o=e.right,s=e.top,l=e.bottom,c=0,u=t.getTotalLength(),h=u;function f(e){var r=t.getPointAtLength(e);0===e?n=r:e===u&&(i=r);var c=r.x<a?a-r.x:r.x>o?r.x-o:0,h=r.y<s?s-r.y:r.y>l?r.y-l:0;return Math.sqrt(c*c+h*h)}for(var p=f(c);p;){if((c+=p+r)>h)return;p=f(c)}for(p=f(h);p;){if(c>(h-=p+r))return;p=f(h)}return{min:c,max:h,len:h-c,total:u,isClosed:0===c&&h===u&&Math.abs(n.x-i.x)<.1&&Math.abs(n.y-i.y)<.1}},e.findPointOnPath=function(t,e,r,n){for(var i,a,o,s=(n=n||{}).pathLength||t.getTotalLength(),l=n.tolerance||.001,c=n.iterationLimit||30,u=t.getPointAtLength(0)[r]>t.getPointAtLength(s)[r]?-1:1,h=0,f=0,p=s;h<c;){if(i=(f+p)/2,o=(a=t.getPointAtLength(i))[r]-e,Math.abs(o)<l)return a;u*o>0?p=i:f=i,h++}return a}},46998:function(t,e,r){\"use strict\";var n=r(10721),i=r(65657),a=r(162),o=r(88856),s=r(10229).defaultLine,l=r(87800).isArrayOrTypedArray,c=a(s);function u(t,e){var r=t;return r[3]*=e,r}function h(t){if(n(t))return c;var e=a(t);return e.length?e:c}function f(t){return n(t)?t:1}t.exports={formatColor:function(t,e,r){var n=t.color;n&&n._inputArray&&(n=n._inputArray);var i,s,p,d,m,g=l(n),y=l(e),v=o.extractOpts(t),x=[];if(i=void 0!==v.colorscale?o.makeColorScaleFuncFromTrace(t):h,s=g?function(t,e){return void 0===t[e]?c:a(i(t[e]))}:h,p=y?function(t,e){return void 0===t[e]?1:f(t[e])}:f,g||y)for(var _=0;_<r;_++)d=s(n,_),m=p(e,_),x[_]=u(d,m);else x=u(a(n),e);return x},parseColorScale:function(t){var e=o.extractOpts(t),r=e.colorscale;return e.reversescale&&(r=o.flipScale(e.colorscale)),r.map((function(t){var e=t[0],r=i(t[1]).toRgb();return{index:e,rgb:[r.r,r.g,r.b,r.a]}}))}}},71293:function(t,e,r){\"use strict\";var n=r(29527);function i(t){return[t]}t.exports={keyFun:function(t){return t.key},repeat:i,descend:n,wrap:i,unwrap:function(t){return t[0]}}},29527:function(t){\"use strict\";t.exports=function(t){return t}},10688:function(t){\"use strict\";t.exports=function(t,e){if(!e)return t;var r=1/Math.abs(e),n=r>1?(r*t+r*e)/r:t+e,i=String(n).length;if(i>16){var a=String(e).length;if(i>=String(t).length+a){var o=parseFloat(n).toPrecision(12);-1===o.indexOf(\"e+\")&&(n=+o)}}return n}},34809:function(t,e,r){\"use strict\";var n=r(45568),i=r(42696).aL,a=r(36464).GP,o=r(10721),s=r(63821),l=s.FP_SAFE,c=-l,u=s.BADNUM,h=t.exports={};h.adjustFormat=function(t){return!t||/^\\d[.]\\df/.test(t)||/[.]\\d%/.test(t)?t:\"0.f\"===t?\"~f\":/^\\d%/.test(t)?\"~%\":/^\\ds/.test(t)?\"~s\":!/^[~,.0$]/.test(t)&&/[&fps]/.test(t)?\"~\"+t:t};var f={};h.warnBadFormat=function(t){var e=String(t);f[e]||(f[e]=1,h.warn('encountered bad format: \"'+e+'\"'))},h.noFormat=function(t){return String(t)},h.numberFormat=function(t){var e;try{e=a(h.adjustFormat(t))}catch(e){return h.warnBadFormat(t),h.noFormat}return e},h.nestedProperty=r(35632),h.keyedContainer=r(34967),h.relativeAttr=r(82047),h.isPlainObject=r(56174),h.toLogRange=r(8083),h.relinkPrivateKeys=r(80428);var p=r(87800);h.isArrayBuffer=p.isArrayBuffer,h.isTypedArray=p.isTypedArray,h.isArrayOrTypedArray=p.isArrayOrTypedArray,h.isArray1D=p.isArray1D,h.ensureArray=p.ensureArray,h.concat=p.concat,h.maxRowLength=p.maxRowLength,h.minRowLength=p.minRowLength;var d=r(98953);h.mod=d.mod,h.modHalf=d.modHalf;var m=r(34220);h.valObjectMeta=m.valObjectMeta,h.coerce=m.coerce,h.coerce2=m.coerce2,h.coerceFont=m.coerceFont,h.coercePattern=m.coercePattern,h.coerceHoverinfo=m.coerceHoverinfo,h.coerceSelectionMarkerOpacity=m.coerceSelectionMarkerOpacity,h.validate=m.validate;var g=r(92596);h.dateTime2ms=g.dateTime2ms,h.isDateTime=g.isDateTime,h.ms2DateTime=g.ms2DateTime,h.ms2DateTimeLocal=g.ms2DateTimeLocal,h.cleanDate=g.cleanDate,h.isJSDate=g.isJSDate,h.formatDate=g.formatDate,h.incrementMonth=g.incrementMonth,h.dateTick0=g.dateTick0,h.dfltRange=g.dfltRange,h.findExactDates=g.findExactDates,h.MIN_MS=g.MIN_MS,h.MAX_MS=g.MAX_MS;var y=r(98813);h.findBin=y.findBin,h.sorterAsc=y.sorterAsc,h.sorterDes=y.sorterDes,h.distinctVals=y.distinctVals,h.roundUp=y.roundUp,h.sort=y.sort,h.findIndexOfMin=y.findIndexOfMin,h.sortObjectKeys=r(62994);var v=r(89258);h.aggNums=v.aggNums,h.len=v.len,h.mean=v.mean,h.geometricMean=v.geometricMean,h.median=v.median,h.midRange=v.midRange,h.variance=v.variance,h.stdev=v.stdev,h.interp=v.interp;var x=r(15236);h.init2dArray=x.init2dArray,h.transposeRagged=x.transposeRagged,h.dot=x.dot,h.translationMatrix=x.translationMatrix,h.rotationMatrix=x.rotationMatrix,h.rotationXYMatrix=x.rotationXYMatrix,h.apply3DTransform=x.apply3DTransform,h.apply2DTransform=x.apply2DTransform,h.apply2DTransform2=x.apply2DTransform2,h.convertCssMatrix=x.convertCssMatrix,h.inverseTransformMatrix=x.inverseTransformMatrix;var _=r(44313);h.deg2rad=_.deg2rad,h.rad2deg=_.rad2deg,h.angleDelta=_.angleDelta,h.angleDist=_.angleDist,h.isFullCircle=_.isFullCircle,h.isAngleInsideSector=_.isAngleInsideSector,h.isPtInsideSector=_.isPtInsideSector,h.pathArc=_.pathArc,h.pathSector=_.pathSector,h.pathAnnulus=_.pathAnnulus;var b=r(32546);h.isLeftAnchor=b.isLeftAnchor,h.isCenterAnchor=b.isCenterAnchor,h.isRightAnchor=b.isRightAnchor,h.isTopAnchor=b.isTopAnchor,h.isMiddleAnchor=b.isMiddleAnchor,h.isBottomAnchor=b.isBottomAnchor;var w=r(3447);h.segmentsIntersect=w.segmentsIntersect,h.segmentDistance=w.segmentDistance,h.getTextLocation=w.getTextLocation,h.clearLocationCache=w.clearLocationCache,h.getVisibleSegment=w.getVisibleSegment,h.findPointOnPath=w.findPointOnPath;var T=r(93049);h.extendFlat=T.extendFlat,h.extendDeep=T.extendDeep,h.extendDeepAll=T.extendDeepAll,h.extendDeepNoArrays=T.extendDeepNoArrays;var k=r(48636);h.log=k.log,h.warn=k.warn,h.error=k.error;var A=r(90694);h.counterRegex=A.counter;var M=r(64025);h.throttle=M.throttle,h.throttleDone=M.done,h.clearThrottle=M.clear;var S=r(95425);function E(t){var e={};for(var r in t)for(var n=t[r],i=0;i<n.length;i++)e[n[i]]=+r;return e}h.getGraphDiv=S.getGraphDiv,h.isPlotDiv=S.isPlotDiv,h.removeElement=S.removeElement,h.addStyleRule=S.addStyleRule,h.addRelatedStyleRule=S.addRelatedStyleRule,h.deleteRelatedStyleRule=S.deleteRelatedStyleRule,h.getFullTransformMatrix=S.getFullTransformMatrix,h.getElementTransformMatrix=S.getElementTransformMatrix,h.getElementAndAncestors=S.getElementAndAncestors,h.equalDomRects=S.equalDomRects,h.clearResponsive=r(23493),h.preserveDrawingBuffer=r(32521),h.makeTraceGroups=r(75944),h._=r(38514),h.notifier=r(87355),h.filterUnique=r(48965),h.filterVisible=r(78926),h.pushUnique=r(36539),h.increment=r(10688),h.cleanNumber=r(44498),h.ensureNumber=function(t){return o(t)?(t=Number(t))>l||t<c?u:t:u},h.isIndex=function(t,e){return!(void 0!==e&&t>=e)&&o(t)&&t>=0&&t%1==0},h.noop=r(4969),h.identity=r(29527),h.repeat=function(t,e){for(var r=new Array(e),n=0;n<e;n++)r[n]=t;return r},h.swapAttrs=function(t,e,r,n){r||(r=\"x\"),n||(n=\"y\");for(var i=0;i<e.length;i++){var a=e[i],o=h.nestedProperty(t,a.replace(\"?\",r)),s=h.nestedProperty(t,a.replace(\"?\",n)),l=o.get();o.set(s.get()),s.set(l)}},h.raiseToTop=function(t){t.parentNode.appendChild(t)},h.cancelTransition=function(t){return t.transition().duration(0)},h.constrain=function(t,e,r){return e>r?Math.max(r,Math.min(e,t)):Math.max(e,Math.min(r,t))},h.bBoxIntersect=function(t,e,r){return r=r||0,t.left<=e.right+r&&e.left<=t.right+r&&t.top<=e.bottom+r&&e.top<=t.bottom+r},h.simpleMap=function(t,e,r,n,i){for(var a=t.length,o=new Array(a),s=0;s<a;s++)o[s]=e(t[s],r,n,i);return o},h.randstr=function t(e,r,n,i){if(n||(n=16),void 0===r&&(r=24),r<=0)return\"0\";var a,o,s=Math.log(Math.pow(2,r))/Math.log(n),l=\"\";for(a=2;s===1/0;a*=2)s=Math.log(Math.pow(2,r/a))/Math.log(n)*a;var c=s-Math.floor(s);for(a=0;a<Math.floor(s);a++)l=Math.floor(Math.random()*n).toString(n)+l;c&&(o=Math.pow(n,c),l=Math.floor(Math.random()*o).toString(n)+l);var u=parseInt(l,n);return e&&e[l]||u!==1/0&&u>=Math.pow(2,r)?i>10?(h.warn(\"randstr failed uniqueness\"),l):t(e,r,n,(i||0)+1):l},h.OptionControl=function(t,e){t||(t={}),e||(e=\"opt\");var r={optionList:[],_newoption:function(n){n[e]=t,r[n.name]=n,r.optionList.push(n)}};return r[\"_\"+e]=t,r},h.smooth=function(t,e){if((e=Math.round(e)||0)<2)return t;var r,n,i,a,o=t.length,s=2*o,l=2*e-1,c=new Array(l),u=new Array(o);for(r=0;r<l;r++)c[r]=(1-Math.cos(Math.PI*(r+1)/e))/(2*e);for(r=0;r<o;r++){for(a=0,n=0;n<l;n++)(i=r+n+1-e)<-o?i-=s*Math.round(i/s):i>=s&&(i-=s*Math.floor(i/s)),i<0?i=-1-i:i>=o&&(i=s-1-i),a+=t[i]*c[n];u[r]=a}return u},h.syncOrAsync=function(t,e,r){var n;function i(){return h.syncOrAsync(t,e,r)}for(;t.length;)if((n=(0,t.splice(0,1)[0])(e))&&n.then)return n.then(i);return r&&r(e)},h.stripTrailingSlash=function(t){return\"/\"===t.substr(-1)?t.substr(0,t.length-1):t},h.noneOrAll=function(t,e,r){if(t){var n,i=!1,a=!0;for(n=0;n<r.length;n++)null!=t[r[n]]?i=!0:a=!1;if(i&&!a)for(n=0;n<r.length;n++)t[r[n]]=e[r[n]]}},h.mergeArray=function(t,e,r,n){var i=\"function\"==typeof n;if(h.isArrayOrTypedArray(t))for(var a=Math.min(t.length,e.length),o=0;o<a;o++){var s=t[o];e[o][r]=i?n(s):s}},h.mergeArrayCastPositive=function(t,e,r){return h.mergeArray(t,e,r,(function(t){var e=+t;return isFinite(e)&&e>0?e:0}))},h.fillArray=function(t,e,r,n){if(n=n||h.identity,h.isArrayOrTypedArray(t))for(var i=0;i<e.length;i++)e[i][r]=n(t[i])},h.castOption=function(t,e,r,n){n=n||h.identity;var i=h.nestedProperty(t,r).get();return h.isArrayOrTypedArray(i)?Array.isArray(e)&&h.isArrayOrTypedArray(i[e[0]])?n(i[e[0]][e[1]]):n(i[e]):i},h.extractOption=function(t,e,r,n){if(r in t)return t[r];var i=h.nestedProperty(e,n).get();return Array.isArray(i)?void 0:i},h.tagSelected=function(t,e,r){var n,i,a=e.selectedpoints,o=e._indexToPoints;o&&(n=E(o));for(var s=0;s<a.length;s++){var l=a[s];if(h.isIndex(l)||h.isArrayOrTypedArray(l)&&h.isIndex(l[0])&&h.isIndex(l[1])){var c=n?n[l]:l,u=r?r[c]:c;void 0!==(i=u)&&i<t.length&&(t[u].selected=1)}}},h.selIndices2selPoints=function(t){var e=t.selectedpoints,r=t._indexToPoints;if(r){for(var n=E(r),i=[],a=0;a<e.length;a++){var o=e[a];if(h.isIndex(o)){var s=n[o];h.isIndex(s)&&i.push(s)}}return i}return e},h.getTargetArray=function(t,e){var r=e.target;if(\"string\"==typeof r&&r){var n=h.nestedProperty(t,r).get();return!!h.isArrayOrTypedArray(n)&&n}return!!h.isArrayOrTypedArray(r)&&r},h.minExtend=function t(e,r,n){var i={};\"object\"!=typeof r&&(r={});var a,o,s,l=\"pieLike\"===n?-1:3,c=Object.keys(e);for(a=0;a<c.length;a++)s=e[o=c[a]],\"_\"!==o.charAt(0)&&\"function\"!=typeof s&&(\"module\"===o?i[o]=s:Array.isArray(s)?i[o]=\"colorscale\"===o||-1===l?s.slice():s.slice(0,l):h.isTypedArray(s)?i[o]=-1===l?s.subarray():s.subarray(0,l):i[o]=s&&\"object\"==typeof s?t(e[o],r[o],n):s);for(c=Object.keys(r),a=0;a<c.length;a++)\"object\"==typeof(s=r[o=c[a]])&&o in i&&\"object\"==typeof i[o]||(i[o]=s);return i},h.titleCase=function(t){return t.charAt(0).toUpperCase()+t.substr(1)},h.containsAny=function(t,e){for(var r=0;r<e.length;r++)if(-1!==t.indexOf(e[r]))return!0;return!1},h.isIE=function(){return void 0!==window.navigator.msSaveBlob};var C=/Version\\/[\\d\\.]+.*Safari/;h.isSafari=function(){return C.test(window.navigator.userAgent)};var L=/iPad|iPhone|iPod/;h.isIOS=function(){return L.test(window.navigator.userAgent)};var I=/Firefox\\/(\\d+)\\.\\d+/;h.getFirefoxVersion=function(){var t=I.exec(window.navigator.userAgent);if(t&&2===t.length){var e=parseInt(t[1]);if(!isNaN(e))return e}return null},h.isD3Selection=function(t){return t instanceof n.selection},h.ensureSingle=function(t,e,r,n){var i=t.select(e+(r?\".\"+r:\"\"));if(i.size())return i;var a=t.append(e);return r&&a.classed(r,!0),n&&a.call(n),a},h.ensureSingleById=function(t,e,r,n){var i=t.select(e+\"#\"+r);if(i.size())return i;var a=t.append(e).attr(\"id\",r);return n&&a.call(n),a},h.objectFromPath=function(t,e){for(var r,n=t.split(\".\"),i=r={},a=0;a<n.length;a++){var o=n[a],s=null,l=n[a].match(/(.*)\\[([0-9]+)\\]/);l?(o=l[1],s=l[2],r=r[o]=[],a===n.length-1?r[s]=e:r[s]={},r=r[s]):(a===n.length-1?r[o]=e:r[o]={},r=r[o])}return i};var P=/^([^\\[\\.]+)\\.(.+)?/,z=/^([^\\.]+)\\[([0-9]+)\\](\\.)?(.+)?/;function O(t){return\"__\"===t.slice(0,2)}h.expandObjectPaths=function(t){var e,r,n,i,a,o,s;if(\"object\"==typeof t&&!Array.isArray(t))for(r in t)if(t.hasOwnProperty(r))if(e=r.match(P)){if(i=t[r],O(n=e[1]))continue;delete t[r],t[n]=h.extendDeepNoArrays(t[n]||{},h.objectFromPath(r,h.expandObjectPaths(i))[n])}else if(e=r.match(z)){if(i=t[r],O(n=e[1]))continue;if(a=parseInt(e[2]),delete t[r],t[n]=t[n]||[],\".\"===e[3])s=e[4],o=t[n][a]=t[n][a]||{},h.extendDeepNoArrays(o,h.objectFromPath(s,h.expandObjectPaths(i)));else{if(O(n))continue;t[n][a]=h.expandObjectPaths(i)}}else{if(O(r))continue;t[r]=h.expandObjectPaths(t[r])}return t},h.numSeparate=function(t,e,r){if(r||(r=!1),\"string\"!=typeof e||0===e.length)throw new Error(\"Separator string required for formatting!\");\"number\"==typeof t&&(t=String(t));var n=/(\\d+)(\\d{3})/,i=e.charAt(0),a=e.charAt(1),o=t.split(\".\"),s=o[0],l=o.length>1?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},h.TEMPLATE_STRING_REGEX=/%{([^\\s%{}:]*)([:|\\|][^}]*)?}/g;var D=/^\\w*$/;h.templateString=function(t,e){var r={};return t.replace(h.TEMPLATE_STRING_REGEX,(function(t,n){var i;return D.test(n)?i=e[n]:(r[n]=r[n]||h.nestedProperty(e,n).get,i=r[n]()),h.isValidTextValue(i)?i:\"\"}))};var R={max:10,count:0,name:\"hovertemplate\"};h.hovertemplateString=function(){return U.apply(R,arguments)};var F={max:10,count:0,name:\"texttemplate\"};h.texttemplateString=function(){return U.apply(F,arguments)};var B=/^(\\S+)([\\*\\/])(-?\\d+(\\.\\d+)?)$/,N={max:10,count:0,name:\"texttemplate\",parseMultDiv:!0};h.texttemplateStringForShapes=function(){return U.apply(N,arguments)};var j=/^[:|\\|]/;function U(t,e,r){var n=this,a=arguments;e||(e={});var o={};return t.replace(h.TEMPLATE_STRING_REGEX,(function(t,s,l){var c=\"_xother\"===s||\"_yother\"===s,u=\"_xother_\"===s||\"_yother_\"===s,f=\"xother_\"===s||\"yother_\"===s,p=\"xother\"===s||\"yother\"===s||c||f||u,d=s;(c||u)&&(d=d.substring(1)),(f||u)&&(d=d.substring(0,d.length-1));var m,g,y,v=null,x=null;if(n.parseMultDiv){var _=function(t){var e=t.match(B);return e?{key:e[1],op:e[2],number:Number(e[3])}:{key:t,op:null,number:null}}(d);d=_.key,v=_.op,x=_.number}if(p){if(void 0===(m=e[d]))return\"\"}else for(y=3;y<a.length;y++)if(g=a[y]){if(g.hasOwnProperty(d)){m=g[d];break}if(D.test(d)||(m=h.nestedProperty(g,d).get(),(m=o[d]||h.nestedProperty(g,d).get())&&(o[d]=m)),void 0!==m)break}if(void 0!==m&&(\"*\"===v&&(m*=x),\"/\"===v&&(m/=x)),void 0===m&&n)return n.count<n.max&&(h.warn(\"Variable '\"+d+\"' in \"+n.name+\" could not be found!\"),m=t),n.count===n.max&&h.warn(\"Too many \"+n.name+\" warnings - additional warnings will be suppressed\"),n.count++,t;if(l){var b;if(\":\"===l[0]&&(b=r?r.numberFormat:h.numberFormat,\"\"!==m&&(m=b(l.replace(j,\"\"))(m))),\"|\"===l[0]){b=r?r.timeFormat:i;var w=h.dateTime2ms(m);m=h.formatDate(w,l.replace(j,\"\"),!1,b)}}else{var T=d+\"Label\";e.hasOwnProperty(T)&&(m=e[T])}return p&&(m=\"(\"+m+\")\",(c||u)&&(m=\" \"+m),(f||u)&&(m+=\" \")),m}))}h.subplotSort=function(t,e){for(var r=Math.min(t.length,e.length)+1,n=0,i=0,a=0;a<r;a++){var o=t.charCodeAt(a)||0,s=e.charCodeAt(a)||0,l=o>=48&&o<=57,c=s>=48&&s<=57;if(l&&(n=10*n+o-48),c&&(i=10*i+s-48),!l||!c){if(n!==i)return n-i;if(o!==s)return o-s}}return i-n};var V=2e9;h.seedPseudoRandom=function(){V=2e9},h.pseudoRandom=function(){var t=V;return V=(69069*V+1)%4294967296,Math.abs(V-t)<429496729?h.pseudoRandom():V/4294967296},h.fillText=function(t,e,r){var n=Array.isArray(r)?function(t){r.push(t)}:function(t){r.text=t},i=h.extractOption(t,e,\"htx\",\"hovertext\");if(h.isValidTextValue(i))return n(i);var a=h.extractOption(t,e,\"tx\",\"text\");return h.isValidTextValue(a)?n(a):void 0},h.isValidTextValue=function(t){return t||0===t},h.formatPercent=function(t,e){e=e||0;for(var r=(Math.round(100*t*Math.pow(10,e))*Math.pow(.1,e)).toFixed(e)+\"%\",n=0;n<e;n++)-1!==r.indexOf(\".\")&&(r=(r=r.replace(\"0%\",\"%\")).replace(\".%\",\"%\"));return r},h.isHidden=function(t){var e=window.getComputedStyle(t).display;return!e||\"none\"===e},h.strTranslate=function(t,e){return t||e?\"translate(\"+t+\",\"+e+\")\":\"\"},h.strRotate=function(t){return t?\"rotate(\"+t+\")\":\"\"},h.strScale=function(t){return 1!==t?\"scale(\"+t+\")\":\"\"},h.getTextTransform=function(t){var e=t.noCenter,r=t.textX,n=t.textY,i=t.targetX,a=t.targetY,o=t.anchorX||0,s=t.anchorY||0,l=t.rotate,c=t.scale;return c?c>1&&(c=1):c=0,h.strTranslate(i-c*(r+o),a-c*(n+s))+h.strScale(c)+(l?\"rotate(\"+l+(e?\"\":\" \"+r+\" \"+n)+\")\":\"\")},h.setTransormAndDisplay=function(t,e){t.attr(\"transform\",h.getTextTransform(e)),t.style(\"display\",e.scale?null:\"none\")},h.ensureUniformFontSize=function(t,e){var r=h.extendFlat({},e);return r.size=Math.max(e.size,t._fullLayout.uniformtext.minsize||0),r},h.join2=function(t,e,r){var n=t.length;return n>1?t.slice(0,-1).join(e)+r+t[n-1]:t.join(e)},h.bigFont=function(t){return Math.round(1.2*t)};var q=h.getFirefoxVersion(),H=null!==q&&q<86;h.getPositionFromD3Event=function(){return H?[n.event.layerX,n.event.layerY]:[n.event.offsetX,n.event.offsetY]}},56174:function(t){\"use strict\";t.exports=function(t){return window&&window.process&&window.process.versions?\"[object Object]\"===Object.prototype.toString.call(t):\"[object Object]\"===Object.prototype.toString.call(t)&&Object.getPrototypeOf(t).hasOwnProperty(\"hasOwnProperty\")}},34967:function(t,e,r){\"use strict\";var n=r(35632),i=/^\\w*$/;t.exports=function(t,e,r,a){var o,s,l;r=r||\"name\",a=a||\"value\";var c={};e&&e.length?(l=n(t,e),s=l.get()):s=t,e=e||\"\";var u={};if(s)for(o=0;o<s.length;o++)u[s[o][r]]=o;var h=i.test(a),f={set:function(t,e){var i=null===e?4:0;if(!s){if(!l||4===i)return;s=[],l.set(s)}var o=u[t];if(void 0===o){if(4===i)return;i|=3,o=s.length,u[t]=o}else e!==(h?s[o][a]:n(s[o],a).get())&&(i|=2);var p=s[o]=s[o]||{};return p[r]=t,h?p[a]=e:n(p,a).set(e),null!==e&&(i&=-5),c[o]=c[o]|i,f},get:function(t){if(s){var e=u[t];return void 0===e?void 0:h?s[e][a]:n(s[e],a).get()}},rename:function(t,e){var n=u[t];return void 0===n||(c[n]=1|c[n],u[e]=n,delete u[t],s[n][r]=e),f},remove:function(t){var e=u[t];if(void 0===e)return f;var i=s[e];if(Object.keys(i).length>2)return c[e]=2|c[e],f.set(t,null);if(h){for(o=e;o<s.length;o++)c[o]=3|c[o];for(o=e;o<s.length;o++)u[s[o][r]]--;s.splice(e,1),delete u[t]}else n(i,a).set(null),c[e]=6|c[e];return f},constructUpdate:function(){for(var t,i,o={},l=Object.keys(c),u=0;u<l.length;u++)i=l[u],t=e+\"[\"+i+\"]\",s[i]?(1&c[i]&&(o[t+\".\"+r]=s[i][r]),2&c[i]&&(o[t+\".\"+a]=h?4&c[i]?null:s[i][a]:4&c[i]?null:n(s[i],a).get())):o[t]=null;return o}};return f}},38514:function(t,e,r){\"use strict\";var n=r(33626);t.exports=function(t,e){for(var r=t._context.locale,i=0;i<2;i++){for(var a=t._context.locales,o=0;o<2;o++){var s=(a[r]||{}).dictionary;if(s){var l=s[e];if(l)return l}a=n.localeRegistry}var c=r.split(\"-\")[0];if(c===r)break;r=c}return e}},48636:function(t,e,r){\"use strict\";var n=r(24452).dfltConfig,i=r(87355),a=t.exports={};a.log=function(){var t;if(n.logging>1){var e=[\"LOG:\"];for(t=0;t<arguments.length;t++)e.push(arguments[t]);console.trace.apply(console,e)}if(n.notifyOnLogging>1){var r=[];for(t=0;t<arguments.length;t++)r.push(arguments[t]);i(r.join(\"<br>\"),\"long\")}},a.warn=function(){var t;if(n.logging>0){var e=[\"WARN:\"];for(t=0;t<arguments.length;t++)e.push(arguments[t]);console.trace.apply(console,e)}if(n.notifyOnLogging>0){var r=[];for(t=0;t<arguments.length;t++)r.push(arguments[t]);i(r.join(\"<br>\"),\"stick\")}},a.error=function(){var t;if(n.logging>0){var e=[\"ERROR:\"];for(t=0;t<arguments.length;t++)e.push(arguments[t]);console.error.apply(console,e)}if(n.notifyOnLogging>0){var r=[];for(t=0;t<arguments.length;t++)r.push(arguments[t]);i(r.join(\"<br>\"),\"stick\")}}},75944:function(t,e,r){\"use strict\";var n=r(45568);t.exports=function(t,e,r){var i=t.selectAll(\"g.\"+r.replace(/\\s/g,\".\")).data(e,(function(t){return t[0].trace.uid}));i.exit().remove(),i.enter().append(\"g\").attr(\"class\",r),i.order();var a=t.classed(\"rangeplot\")?\"nodeRangePlot3\":\"node3\";return i.each((function(t){t[0][a]=n.select(this)})),i}},15236:function(t,e,r){\"use strict\";var n=r(11191);e.init2dArray=function(t,e){for(var r=new Array(t),n=0;n<t;n++)r[n]=new Array(e);return r},e.transposeRagged=function(t){var e,r,n=0,i=t.length;for(e=0;e<i;e++)n=Math.max(n,t[e].length);var a=new Array(n);for(e=0;e<n;e++)for(a[e]=new Array(i),r=0;r<i;r++)a[e][r]=t[r][e];return a},e.dot=function(t,r){if(!t.length||!r.length||t.length!==r.length)return null;var n,i,a=t.length;if(t[0].length)for(n=new Array(a),i=0;i<a;i++)n[i]=e.dot(t[i],r);else if(r[0].length){var o=e.transposeRagged(r);for(n=new Array(o.length),i=0;i<o.length;i++)n[i]=e.dot(t,o[i])}else for(n=0,i=0;i<a;i++)n+=t[i]*r[i];return n},e.translationMatrix=function(t,e){return[[1,0,t],[0,1,e],[0,0,1]]},e.rotationMatrix=function(t){var e=t*Math.PI/180;return[[Math.cos(e),-Math.sin(e),0],[Math.sin(e),Math.cos(e),0],[0,0,1]]},e.rotationXYMatrix=function(t,r,n){return e.dot(e.dot(e.translationMatrix(r,n),e.rotationMatrix(t)),e.translationMatrix(-r,-n))},e.apply3DTransform=function(t){return function(){var r=arguments,n=1===arguments.length?r[0]:[r[0],r[1],r[2]||0];return e.dot(t,[n[0],n[1],n[2],1]).slice(0,3)}},e.apply2DTransform=function(t){return function(){var r=arguments;3===r.length&&(r=r[0]);var n=1===arguments.length?r[0]:[r[0],r[1]];return e.dot(t,[n[0],n[1],1]).slice(0,2)}},e.apply2DTransform2=function(t){var r=e.apply2DTransform(t);return function(t){return r(t.slice(0,2)).concat(r(t.slice(2,4)))}},e.convertCssMatrix=function(t){if(t){var e=t.length;if(16===e)return t;if(6===e)return[t[0],t[1],0,0,t[2],t[3],0,0,0,0,1,0,t[4],t[5],0,1]}return[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]},e.inverseTransformMatrix=function(t){var e=[];return n.invert(e,t),[[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]]]}},98953:function(t){\"use strict\";t.exports={mod:function(t,e){var r=t%e;return r<0?r+e:r},modHalf:function(t,e){return Math.abs(t)>e/2?t-Math.round(t/e)*e:t}}},35632:function(t,e,r){\"use strict\";var n=r(10721),i=r(87800).isArrayOrTypedArray;function a(t,e){return function(){var r,n,o,s,l,c=t;for(s=0;s<e.length-1;s++){if(-1===(r=e[s])){for(n=!0,o=[],l=0;l<c.length;l++)o[l]=a(c[l],e.slice(s+1))(),o[l]!==o[0]&&(n=!1);return n?o[0]:o}if(\"number\"==typeof r&&!i(c))return;if(\"object\"!=typeof(c=c[r])||null===c)return}if(\"object\"==typeof c&&null!==c&&null!==(o=c[e[s]]))return o}}t.exports=function(t,e){if(n(e))e=String(e);else if(\"string\"!=typeof e||\"[-1]\"===e.substr(e.length-4))throw\"bad property string\";var r,i,o,s,c=e.split(\".\");for(s=0;s<c.length;s++)if(\"__\"===String(c[s]).slice(0,2))throw\"bad property string\";for(s=0;s<c.length;){if(r=String(c[s]).match(/^([^\\[\\]]*)((\\[\\-?[0-9]*\\])+)$/)){if(r[1])c[s]=r[1];else{if(0!==s)throw\"bad property string\";c.splice(0,1)}for(i=r[2].substr(1,r[2].length-2).split(\"][\"),o=0;o<i.length;o++)s++,c.splice(s,0,Number(i[o]))}s++}return\"object\"!=typeof t?function(t,e,r){return{set:function(){throw\"bad container\"},get:function(){},astr:e,parts:r,obj:t}}(t,e,c):{set:l(t,c,e),get:a(t,c),astr:e,parts:c,obj:t}};var o=/(^|\\.)args\\[/;function s(t,e){return void 0===t||null===t&&!e.match(o)}function l(t,e,r){return function(n){var a,o,l=t,f=\"\",p=[[t,f]],d=s(n,r);for(o=0;o<e.length-1;o++){if(\"number\"==typeof(a=e[o])&&!i(l))throw\"array index but container is not an array\";if(-1===a){if(d=!u(l,e.slice(o+1),n,r))break;return}if(!h(l,a,e[o+1],d))break;if(\"object\"!=typeof(l=l[a])||null===l)throw\"container is not an object\";f=c(f,a),p.push([l,f])}if(d){if(o===e.length-1&&(delete l[e[o]],Array.isArray(l)&&+e[o]==l.length-1))for(;l.length&&void 0===l[l.length-1];)l.pop()}else l[e[o]]=n}}function c(t,e){var r=e;return n(e)?r=\"[\"+e+\"]\":t&&(r=\".\"+e),t+r}function u(t,e,r,n){var a,o=i(r),c=!0,u=r,f=n.replace(\"-1\",0),p=!o&&s(r,f),d=e[0];for(a=0;a<t.length;a++)f=n.replace(\"-1\",a),o&&(p=s(u=r[a%r.length],f)),p&&(c=!1),h(t,a,d,p)&&l(t[a],e,n.replace(\"-1\",a))(u);return c}function h(t,e,r,n){if(void 0===t[e]){if(n)return!1;t[e]=\"number\"==typeof r?[]:{}}return!0}},4969:function(t){\"use strict\";t.exports=function(){}},87355:function(t,e,r){\"use strict\";var n=r(45568),i=r(10721),a=[];t.exports=function(t,e){if(-1===a.indexOf(t)){a.push(t);var r=1e3;i(e)?r=e:\"long\"===e&&(r=3e3);var o=n.select(\"body\").selectAll(\".plotly-notifier\").data([0]);o.enter().append(\"div\").classed(\"plotly-notifier\",!0),o.selectAll(\".notifier-note\").data(a).enter().append(\"div\").classed(\"notifier-note\",!0).style(\"opacity\",0).each((function(t){var i=n.select(this);i.append(\"button\").classed(\"notifier-close\",!0).html(\"&times;\").on(\"click\",(function(){i.transition().call(s)}));for(var a=i.append(\"p\"),o=t.split(/<br\\s*\\/?>/g),l=0;l<o.length;l++)l&&a.append(\"br\"),a.append(\"span\").text(o[l]);\"stick\"===e?i.transition().duration(350).style(\"opacity\",1):i.transition().duration(700).style(\"opacity\",1).transition().delay(r).call(s)}))}function s(t){t.duration(700).style(\"opacity\",0).each(\"end\",(function(t){var e=a.indexOf(t);-1!==e&&a.splice(e,1),n.select(this).remove()}))}}},93134:function(t,e,r){\"use strict\";var n=r(27983),i=\"data-savedcursor\";t.exports=function(t,e){var r=t.attr(i);if(e){if(!r){for(var a=(t.attr(\"class\")||\"\").split(\" \"),o=0;o<a.length;o++){var s=a[o];0===s.indexOf(\"cursor-\")&&t.attr(i,s.substr(7)).classed(s,!1)}t.attr(i)||t.attr(i,\"!!\")}n(t,e)}else r&&(t.attr(i,null),\"!!\"===r?n(t):n(t,r))}},80899:function(t,e,r){\"use strict\";var n=r(15236).dot,i=r(63821).BADNUM,a=t.exports={};a.tester=function(t){var e,r=t.slice(),n=r[0][0],a=n,o=r[0][1],s=o;for(r[r.length-1][0]===r[0][0]&&r[r.length-1][1]===r[0][1]||r.push(r[0]),e=1;e<r.length;e++)n=Math.min(n,r[e][0]),a=Math.max(a,r[e][0]),o=Math.min(o,r[e][1]),s=Math.max(s,r[e][1]);var l,c=!1;5===r.length&&(r[0][0]===r[1][0]?r[2][0]===r[3][0]&&r[0][1]===r[3][1]&&r[1][1]===r[2][1]&&(c=!0,l=function(t){return t[0]===r[0][0]}):r[0][1]===r[1][1]&&r[2][1]===r[3][1]&&r[0][0]===r[3][0]&&r[1][0]===r[2][0]&&(c=!0,l=function(t){return t[1]===r[0][1]}));var u=!0,h=r[0];for(e=1;e<r.length;e++)if(h[0]!==r[e][0]||h[1]!==r[e][1]){u=!1;break}return{xmin:n,xmax:a,ymin:o,ymax:s,pts:r,contains:c?function(t,e){var r=t[0],c=t[1];return!(r===i||r<n||r>a||c===i||c<o||c>s||e&&l(t))}:function(t,e){var l=t[0],c=t[1];if(l===i||l<n||l>a||c===i||c<o||c>s)return!1;var u,h,f,p,d,m=r.length,g=r[0][0],y=r[0][1],v=0;for(u=1;u<m;u++)if(h=g,f=y,g=r[u][0],y=r[u][1],!(l<(p=Math.min(h,g))||l>Math.max(h,g)||c>Math.max(f,y)))if(c<Math.min(f,y))l!==p&&v++;else{if(c===(d=g===h?c:f+(l-h)*(y-f)/(g-h)))return 1!==u||!e;c<=d&&l!==p&&v++}return v%2==1},isRect:c,degenerate:u}},a.isSegmentBent=function(t,e,r,i){var a,o,s,l=t[e],c=[t[r][0]-l[0],t[r][1]-l[1]],u=n(c,c),h=Math.sqrt(u),f=[-c[1]/h,c[0]/h];for(a=e+1;a<r;a++)if(o=[t[a][0]-l[0],t[a][1]-l[1]],(s=n(o,c))<0||s>u||Math.abs(n(o,f))>i)return!0;return!1},a.filter=function(t,e){var r=[t[0]],n=0,i=0;function o(o){t.push(o);var s=r.length,l=n;r.splice(i+1);for(var c=l+1;c<t.length;c++)(c===t.length-1||a.isSegmentBent(t,l,c+1,e))&&(r.push(t[c]),r.length<s-2&&(n=c,i=r.length-1),l=c)}return t.length>1&&o(t.pop()),{addPt:o,raw:t,filtered:r}}},22459:function(t,e,r){\"use strict\";var n=r(97464),i=r(81330);t.exports=function(t,e,a){var o=t._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:t._context.plotGlPixelRatio||r.g.devicePixelRatio,extensions:e||[],cachedCode:a||{}})}catch(t){s=!1}n.regl||(s=!1),s&&this.addEventListener(\"webglcontextlost\",(function(e){t&&t.emit&&t.emit(\"plotly_webglcontextlost\",{event:e,layer:n.key})}),!1)}})),s||n({container:o._glcontainer.node()}),s}},32521:function(t,e,r){\"use strict\";var n=r(10721),i=r(13087);t.exports=function(t){var e;if(\"string\"!=typeof(e=t&&t.hasOwnProperty(\"userAgent\")?t.userAgent:function(){var t;return\"undefined\"!=typeof navigator&&(t=navigator.userAgent),t&&t.headers&&\"string\"==typeof t.headers[\"user-agent\"]&&(t=t.headers[\"user-agent\"]),t}()))return!0;var r=i({ua:{headers:{\"user-agent\":e}},tablet:!0,featureDetect:!1});if(!r)for(var a=e.split(\" \"),o=1;o<a.length;o++)if(-1!==a[o].indexOf(\"Safari\"))for(var s=o-1;s>-1;s--){var l=a[s];if(\"Version/\"===l.substr(0,8)){var c=l.substr(8).split(\".\")[0];if(n(c)&&(c=+c),c>=13)return!0}}return r}},36539:function(t){\"use strict\";t.exports=function(t,e){if(e instanceof RegExp){for(var r=e.toString(),n=0;n<t.length;n++)if(t[n]instanceof RegExp&&t[n].toString()===r)return t;t.push(e)}else!e&&0!==e||-1!==t.indexOf(e)||t.push(e);return t}},40486:function(t,e,r){\"use strict\";var n=r(34809),i=r(24452).dfltConfig,a={add:function(t,e,r,n,a){var o,s;t.undoQueue=t.undoQueue||{index:0,queue:[],sequence:!1},s=t.undoQueue.index,t.autoplay?t.undoQueue.inSequence||(t.autoplay=!1):(!t.undoQueue.sequence||t.undoQueue.beginSequence?(o={undo:{calls:[],args:[]},redo:{calls:[],args:[]}},t.undoQueue.queue.splice(s,t.undoQueue.queue.length-s,o),t.undoQueue.index+=1):o=t.undoQueue.queue[s-1],t.undoQueue.beginSequence=!1,o&&(o.undo.calls.unshift(e),o.undo.args.unshift(r),o.redo.calls.push(n),o.redo.args.push(a)),t.undoQueue.queue.length>i.queueLength&&(t.undoQueue.queue.shift(),t.undoQueue.index--))},startSequence:function(t){t.undoQueue=t.undoQueue||{index:0,queue:[],sequence:!1},t.undoQueue.sequence=!0,t.undoQueue.beginSequence=!0},stopSequence:function(t){t.undoQueue=t.undoQueue||{index:0,queue:[],sequence:!1},t.undoQueue.sequence=!1,t.undoQueue.beginSequence=!1},undo:function(t){var e,r;if(!(void 0===t.undoQueue||isNaN(t.undoQueue.index)||t.undoQueue.index<=0)){for(t.undoQueue.index--,e=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,r=0;r<e.undo.calls.length;r++)a.plotDo(t,e.undo.calls[r],e.undo.args[r]);t.undoQueue.inSequence=!1,t.autoplay=!1}},redo:function(t){var e,r;if(!(void 0===t.undoQueue||isNaN(t.undoQueue.index)||t.undoQueue.index>=t.undoQueue.queue.length)){for(e=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,r=0;r<e.redo.calls.length;r++)a.plotDo(t,e.redo.calls[r],e.redo.args[r]);t.undoQueue.inSequence=!1,t.autoplay=!1,t.undoQueue.index++}},plotDo:function(t,e,r){t.autoplay=!0,r=function(t,e){for(var r,i=[],a=0;a<e.length;a++)r=e[a],i[a]=r===t?r:\"object\"==typeof r?Array.isArray(r)?n.extendDeep([],r):n.extendDeepAll({},r):r;return i}(t,r),e.apply(null,r)}};t.exports=a},90694:function(t,e){\"use strict\";e.counter=function(t,e,r,n){var i=(e||\"\")+(r?\"\":\"$\"),a=!1===n?\"\":\"^\";return\"xy\"===t?new RegExp(a+\"x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?\"+i):new RegExp(a+t+\"([2-9]|[1-9][0-9]+)?\"+i)}},82047:function(t){\"use strict\";var e=/^(.*)(\\.[^\\.\\[\\]]+|\\[\\d\\])$/,r=/^[^\\.\\[\\]]+$/;t.exports=function(t,n){for(;n;){var i=t.match(e);if(i)t=i[1];else{if(!t.match(r))throw new Error(\"bad relativeAttr call:\"+[t,n]);t=\"\"}if(\"^\"!==n.charAt(0))break;n=n.slice(1)}return t&&\"[\"!==n.charAt(0)?t+\".\"+n:t+n}},80428:function(t,e,r){\"use strict\";var n=r(87800).isArrayOrTypedArray,i=r(56174);t.exports=function t(e,r){for(var a in r){var o=r[a],s=e[a];if(s!==o)if(\"_\"===a.charAt(0)||\"function\"==typeof o){if(a in e)continue;e[a]=o}else if(n(o)&&n(s)&&i(o[0])){if(\"customdata\"===a||\"ids\"===a)continue;for(var l=Math.min(o.length,s.length),c=0;c<l;c++)s[c]!==o[c]&&i(o[c])&&i(s[c])&&t(s[c],o[c])}else i(o)&&i(s)&&(t(s,o),Object.keys(s).length||delete e[a])}}},98813:function(t,e,r){\"use strict\";var n=r(10721),i=r(48636),a=r(29527),o=r(63821).BADNUM,s=1e-9;function l(t,e){return t<e}function c(t,e){return t<=e}function u(t,e){return t>e}function h(t,e){return t>=e}e.findBin=function(t,e,r){if(n(e.start))return r?Math.ceil((t-e.start)/e.size-s)-1:Math.floor((t-e.start)/e.size+s);var a,o,f=0,p=e.length,d=0,m=p>1?(e[p-1]-e[0])/(p-1):1;for(o=m>=0?r?l:c:r?h:u,t+=m*s*(r?-1:1)*(m>=0?1:-1);f<p&&d++<100;)o(e[a=Math.floor((f+p)/2)],t)?f=a+1:p=a;return d>90&&i.log(\"Long binary search...\"),f-1},e.sorterAsc=function(t,e){return t-e},e.sorterDes=function(t,e){return e-t},e.distinctVals=function(t){var r,n=t.slice();for(n.sort(e.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=[],c=0;c<=r;c++){var u=n[c],h=u-i;void 0===i?(l.push(u),i=u):h>s&&(a=Math.min(a,h),l.push(u),i=u)}return{vals:l,minDiff:a}},e.roundUp=function(t,e,r){for(var n,i=0,a=e.length-1,o=0,s=r?0:1,l=r?1:0,c=r?Math.ceil:Math.floor;i<a&&o++<100;)e[n=c((i+a)/2)]<=t?i=n+s:a=n-l;return e[i]},e.sort=function(t,e){for(var r=0,n=0,i=1;i<t.length;i++){var a=e(t[i],t[i-1]);if(a<0?r=1:a>0&&(n=1),r&&n)return t.sort(e)}return n?t:t.reverse()},e.findIndexOfMin=function(t,e){e=e||a;for(var r,n=1/0,i=0;i<t.length;i++){var o=e(t[i]);o<n&&(n=o,r=i)}return r}},27983:function(t){\"use strict\";t.exports=function(t,e){(t.attr(\"class\")||\"\").split(\" \").forEach((function(e){0===e.indexOf(\"cursor-\")&&t.classed(e,!1)})),e&&t.classed(\"cursor-\"+e,!0)}},97464:function(t,e,r){\"use strict\";var n=r(78766),i=function(){};t.exports=function(t){for(var e in t)\"function\"==typeof t[e]&&(t[e]=i);t.destroy=function(){t.container.parentNode.removeChild(t.container)};var r=document.createElement(\"div\");r.className=\"no-webgl\",r.style.cursor=\"pointer\",r.style.fontSize=\"24px\",r.style.color=n.defaults[0],r.style.position=\"absolute\",r.style.left=r.style.top=\"0px\",r.style.width=r.style.height=\"100%\",r.style[\"background-color\"]=n.lightLine,r.style[\"z-index\"]=30;var a=document.createElement(\"p\");return a.textContent=\"WebGL is not supported by your browser - visit https://get.webgl.org for more info\",a.style.position=\"relative\",a.style.top=\"50%\",a.style.left=\"50%\",a.style.height=\"30%\",a.style.width=\"50%\",a.style.margin=\"-15% 0 0 -25%\",r.appendChild(a),t.container.appendChild(r),t.container.style.background=\"#FFFFFF\",t.container.onclick=function(){window.open(\"https://get.webgl.org\")},!1}},62994:function(t){\"use strict\";t.exports=function(t){return Object.keys(t).sort()}},89258:function(t,e,r){\"use strict\";var n=r(10721),i=r(87800).isArrayOrTypedArray;e.aggNums=function(t,r,a,o){var s,l;if((!o||o>a.length)&&(o=a.length),n(r)||(r=!1),i(a[0])){for(l=new Array(o),s=0;s<o;s++)l[s]=e.aggNums(t,r,a[s]);a=l}for(s=0;s<o;s++)n(r)?n(a[s])&&(r=t(+r,+a[s])):r=a[s];return r},e.len=function(t){return e.aggNums((function(t){return t+1}),0,t)},e.mean=function(t,r){return r||(r=e.len(t)),e.aggNums((function(t,e){return t+e}),0,t)/r},e.geometricMean=function(t,r){return r||(r=e.len(t)),Math.pow(e.aggNums((function(t,e){return t*e}),1,t),1/r)},e.midRange=function(t){if(void 0!==t&&0!==t.length)return(e.aggNums(Math.max,null,t)+e.aggNums(Math.min,null,t))/2},e.variance=function(t,r,i){return r||(r=e.len(t)),n(i)||(i=e.mean(t,r)),e.aggNums((function(t,e){return t+Math.pow(e-i,2)}),0,t)/r},e.stdev=function(t,r,n){return Math.sqrt(e.variance(t,r,n))},e.median=function(t){var r=t.slice().sort();return e.interp(r,.5)},e.interp=function(t,e){if(!n(e))throw\"n should be a finite number\";if((e=e*t.length-.5)<0)return t[0];if(e>t.length-1)return t[t.length-1];var r=e%1;return r*t[Math.ceil(e)]+(1-r)*t[Math.floor(e)]}},55010:function(t,e,r){\"use strict\";var n=r(162);t.exports=function(t){return t?n(t):[0,0,0,1]}},95544:function(t,e,r){\"use strict\";var n=r(1837),i=r(62203),a=r(34809),o=null;t.exports=function(){if(null!==o)return o;o=!1;var t=a.isIE()||a.isSafari()||a.isIOS();if(window.navigator.userAgent&&!t){var e=Array.from(n.CSS_DECLARATIONS).reverse(),r=window.CSS&&window.CSS.supports||window.supportsCSS;if(\"function\"==typeof r)o=e.some((function(t){return r.apply(null,t)}));else{var s=i.tester.append(\"image\").attr(\"style\",n.STYLE),l=window.getComputedStyle(s.node()).imageRendering;o=e.some((function(t){var e=t[1];return l===e||l===e.toLowerCase()})),s.remove()}}return o}},30635:function(t,e,r){\"use strict\";var n=r(45568),i=r(34809),a=i.strTranslate,o=r(62972),s=r(4530).LINE_SPACING,l=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;e.convertToTspans=function(t,r,g){var S=t.text(),E=!t.attr(\"data-notex\")&&r&&r._context.typesetMath&&\"undefined\"!=typeof MathJax&&S.match(l),I=n.select(t.node().parentNode);if(!I.empty()){var P=t.attr(\"class\")?t.attr(\"class\").split(\" \")[0]:\"text\";return P+=\"-math\",I.selectAll(\"svg.\"+P).remove(),I.selectAll(\"g.\"+P+\"-group\").remove(),t.style(\"display\",null).attr({\"data-unformatted\":S,\"data-math\":\"N\"}),E?(r&&r._promises||[]).push(new Promise((function(e){t.style(\"display\",\"none\");var r=parseInt(t.node().style.fontSize,10),o={fontSize:r};!function(t,e,r){var a,o,s,l,f=parseInt((MathJax.version||\"\").split(\".\")[0]);if(2===f||3===f){var p=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\":e.fontSize+\"px\"}).text(t.replace(c,\"\\\\lt \").replace(u,\"\\\\gt \"))).node();return 2===f?MathJax.Hub.Typeset(a):MathJax.typeset([a])},d=function(){var e=l.select(2===f?\".MathJax_SVG\":\".MathJax\"),a=!e.empty()&&l.select(\"svg\").node();if(a){var o,s=a.getBoundingClientRect();o=2===f?n.select(\"body\").select(\"#MathJax_SVG_glyphs\"):e.select(\"defs\"),r(e,o,s)}else i.log(\"There was an error in the tex syntax.\",t),r();l.remove()};2===f?MathJax.Hub.Queue((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:h},displayAlign:\"left\"})}),(function(){if(\"SVG\"!==(a=MathJax.Hub.config.menuSettings.renderer))return MathJax.Hub.setRenderer(\"SVG\")}),p,d,(function(){if(\"SVG\"!==a)return MathJax.Hub.setRenderer(a)}),(function(){return void 0!==s&&(MathJax.Hub.processSectionDelay=s),MathJax.Hub.Config(o)})):3===f&&(o=i.extendDeepAll({},MathJax.config),MathJax.config.tex||(MathJax.config.tex={}),MathJax.config.tex.inlineMath=h,\"svg\"!==(a=MathJax.config.startup.output)&&(MathJax.config.startup.output=\"svg\"),MathJax.startup.defaultReady(),MathJax.startup.promise.then((function(){p(),d(),\"svg\"!==a&&(MathJax.config.startup.output=a),MathJax.config=o})))}else i.warn(\"No MathJax version:\",MathJax.version)}(E[2],o,(function(n,i,o){I.selectAll(\"svg.\"+P).remove(),I.selectAll(\"g.\"+P+\"-group\").remove();var s=n&&n.select(\"svg\");if(!s||!s.node())return z(),void e();var l=I.append(\"g\").classed(P+\"-group\",!0).attr({\"pointer-events\":\"none\",\"data-unformatted\":S,\"data-math\":\"Y\"});l.node().appendChild(s.node()),i&&i.node()&&s.node().insertBefore(i.node().cloneNode(!0),s.node().firstChild);var c=o.width,u=o.height;s.attr({class:P,height:u,preserveAspectRatio:\"xMinYMin meet\"}).style({overflow:\"visible\",\"pointer-events\":\"none\"});var h=t.node().style.fill||\"black\",f=s.select(\"g\");f.attr({fill:h,stroke:h});var p=f.node().getBoundingClientRect(),d=p.width,m=p.height;(d>c||m>u)&&(s.style(\"overflow\",\"hidden\"),d=(p=s.node().getBoundingClientRect()).width,m=p.height);var y=+t.attr(\"x\"),v=+t.attr(\"y\"),x=-(r||t.node().getBoundingClientRect().height)/4;if(\"y\"===P[0])l.attr({transform:\"rotate(\"+[-90,y,v]+\")\"+a(-d/2,x-m/2)});else if(\"l\"===P[0])v=x-m/2;else if(\"a\"===P[0]&&0!==P.indexOf(\"atitle\"))y=0,v=x;else{var _=t.attr(\"text-anchor\");y-=d*(\"middle\"===_?.5:\"end\"===_?1:0),v=v+x-m/2}s.attr({x:y,y:v}),g&&g.call(t,l),e(l)}))}))):z(),t}function z(){I.empty()||(P=t.attr(\"class\")+\"-math\",I.select(\"svg.\"+P).remove()),t.text(\"\").style(\"white-space\",\"pre\");var r=function(t,e){e=e.replace(y,\" \");var r,a=!1,l=[],c=-1;function u(){c++;var e=document.createElementNS(o.svg,\"tspan\");n.select(e).attr({class:\"line\",dy:c*s+\"em\"}),t.appendChild(e),r=e;var i=l;if(l=[{node:e}],i.length>1)for(var a=1;a<i.length;a++)h(i[a])}function h(t){var e,i=t.type,a={};if(\"a\"===i){e=\"a\";var s=t.target,c=t.href,u=t.popup;c&&(a={\"xlink:xlink:show\":\"_blank\"===s||\"_\"!==s.charAt(0)?\"new\":\"replace\",target:s,\"xlink:xlink:href\":c},u&&(a.onclick='window.open(this.href.baseVal,this.target.baseVal,\"'+u+'\");return false;'))}else e=\"tspan\";t.style&&(a.style=t.style);var h=document.createElementNS(o.svg,e);if(\"sup\"===i||\"sub\"===i){g(r,m),r.appendChild(h);var f=document.createElementNS(o.svg,\"tspan\");g(f,m),n.select(f).attr(\"dy\",d[i]),a.dy=p[i],r.appendChild(h),r.appendChild(f)}else r.appendChild(h);n.select(h).attr(a),r=t.node=h,l.push(t)}function g(t,e){t.appendChild(document.createTextNode(e))}function S(t){if(1!==l.length){var n=l.pop();t!==n.type&&i.log(\"Start tag <\"+n.type+\"> doesnt match end tag <\"+t+\">. Pretending it did match.\",e),r=l[l.length-1].node}else i.log(\"Ignoring unexpected end tag </\"+t+\">.\",e)}_.test(e)?u():(r=t,l=[{node:t}]);for(var E=e.split(v),I=0;I<E.length;I++){var P=E[I],z=P.match(x),O=z&&z[2].toLowerCase(),D=f[O];if(\"br\"===O)u();else if(void 0===D)g(r,C(P));else if(z[1])S(O);else{var R=z[4],F={type:O},B=A(R,b);if(B?(B=B.replace(M,\"$1 fill:\"),D&&(B+=\";\"+D)):D&&(B=D),B&&(F.style=B),\"a\"===O){a=!0;var N=A(R,w);if(N){var j=L(N);j&&(F.href=j,F.target=A(R,T)||\"_blank\",F.popup=A(R,k))}}h(F)}}return a}(t.node(),S);r&&t.style(\"pointer-events\",\"all\"),e.positionText(t),g&&g.call(t)}};var c=/(<|&lt;|&#60;)/g,u=/(>|&gt;|&#62;)/g,h=[[\"$\",\"$\"],[\"\\\\(\",\"\\\\)\"]],f={sup:\"font-size:70%\",sub:\"font-size:70%\",s:\"text-decoration:line-through\",u:\"text-decoration:underline\",b:\"font-weight:bold\",i:\"font-style:italic\",a:\"cursor:pointer\",span:\"\",em:\"font-style:italic;font-weight:bold\"},p={sub:\"0.3em\",sup:\"-0.6em\"},d={sub:\"-0.21em\",sup:\"0.42em\"},m=\"\",g=[\"http:\",\"https:\",\"mailto:\",\"\",void 0,\":\"],y=e.NEWLINES=/(\\r\\n?|\\n)/g,v=/(<[^<>]*>)/,x=/<(\\/?)([^ >]*)(\\s+(.*))?>/i,_=/<br(\\s+.*)?>/i;e.BR_TAG_ALL=/<br(\\s+.*)?>/gi;var b=/(^|[\\s\"'])style\\s*=\\s*(\"([^\"]*);?\"|'([^']*);?')/i,w=/(^|[\\s\"'])href\\s*=\\s*(\"([^\"]*)\"|'([^']*)')/i,T=/(^|[\\s\"'])target\\s*=\\s*(\"([^\"\\s]*)\"|'([^'\\s]*)')/i,k=/(^|[\\s\"'])popup\\s*=\\s*(\"([\\w=,]*)\"|'([\\w=,]*)')/i;function A(t,e){if(!t)return null;var r=t.match(e),n=r&&(r[3]||r[4]);return n&&C(n)}var M=/(^|;)\\s*color:/;e.plainText=function(t,e){for(var r=void 0!==(e=e||{}).len&&-1!==e.len?e.len:1/0,n=void 0!==e.allowedTags?e.allowedTags:[\"br\"],i=t.split(v),a=[],o=\"\",s=0,l=0;l<i.length;l++){var c=i[l],u=c.match(x),h=u&&u[2].toLowerCase();if(h)-1!==n.indexOf(h)&&(a.push(c),o=h);else{var f=c.length;if(s+f<r)a.push(c),s+=f;else if(s<r){var p=r-s;o&&(\"br\"!==o||p<=3||f<=3)&&a.pop(),r>3?a.push(c.substr(0,p-3)+\"...\"):a.push(c.substr(0,p));break}o=\"\"}}return a.join(\"\")};var S={mu:\"μ\",amp:\"&\",lt:\"<\",gt:\">\",nbsp:\" \",times:\"×\",plusmn:\"±\",deg:\"°\"},E=/&(#\\d+|#x[\\da-fA-F]+|[a-z]+);/g;function C(t){return t.replace(E,(function(t,e){return(\"#\"===e.charAt(0)?function(t){if(!(t>1114111)){var e=String.fromCodePoint;if(e)return e(t);var r=String.fromCharCode;return t<=65535?r(t):r(55232+(t>>10),t%1024+56320)}}(\"x\"===e.charAt(1)?parseInt(e.substr(2),16):parseInt(e.substr(1),10)):S[e])||t}))}function L(t){var e=encodeURI(decodeURI(t)),r=document.createElement(\"a\"),n=document.createElement(\"a\");r.href=t,n.href=e;var i=r.protocol,a=n.protocol;return-1!==g.indexOf(i)&&-1!==g.indexOf(a)?e:\"\"}function I(t,e,r){var n,a,o,s=r.horizontalAlign,l=r.verticalAlign||\"top\",c=t.node().getBoundingClientRect(),u=e.node().getBoundingClientRect();return a=\"bottom\"===l?function(){return c.bottom-n.height}:\"middle\"===l?function(){return c.top+(c.height-n.height)/2}:function(){return c.top},o=\"right\"===s?function(){return c.right-n.width}:\"center\"===s?function(){return c.left+(c.width-n.width)/2}:function(){return c.left},function(){n=this.node().getBoundingClientRect();var t=o()-u.left,e=a()-u.top,s=r.gd||{};if(r.gd){s._fullLayout._calcInverseTransform(s);var l=i.apply3DTransform(s._fullLayout._invTransform)(t,e);t=l[0],e=l[1]}return this.style({top:e+\"px\",left:t+\"px\",\"z-index\":1e3}),this}}e.convertEntities=C,e.sanitizeHTML=function(t){t=t.replace(y,\" \");for(var e=document.createElement(\"p\"),r=e,i=[],a=t.split(v),o=0;o<a.length;o++){var s=a[o],l=s.match(x),c=l&&l[2].toLowerCase();if(c in f)if(l[1])i.length&&(r=i.pop());else{var u=l[4],h=A(u,b),p=h?{style:h}:{};if(\"a\"===c){var d=A(u,w);if(d){var m=L(d);if(m){p.href=m;var g=A(u,T);g&&(p.target=g)}}}var _=document.createElement(c);r.appendChild(_),n.select(_).attr(p),r=_,i.push(_)}else r.appendChild(document.createTextNode(C(s)))}return e.innerHTML},e.lineCount=function(t){return t.selectAll(\"tspan.line\").size()||1},e.positionText=function(t,e,r){return t.each((function(){var t=n.select(this);function i(e,r){return void 0===r?null===(r=t.attr(e))&&(t.attr(e,0),r=0):t.attr(e,r),r}var a=i(\"x\",e),o=i(\"y\",r);\"text\"===this.nodeName&&t.selectAll(\"tspan.line\").attr({x:a,y:o})}))};var P=\"1px \";e.makeTextShadow=function(t){return P+P+P+t+\", -\"+P+\"-\"+P+P+t+\", \"+P+\"-\"+P+P+t+\", -\"+P+P+P+t},e.makeEditable=function(t,e){var r=e.gd,i=e.delegate,a=n.dispatch(\"edit\",\"input\",\"cancel\"),o=i||t;if(t.style({\"pointer-events\":i?\"none\":\"all\"}),1!==t.size())throw new Error(\"boo\");function s(){var i,s,c,u,h;i=n.select(r).select(\".svg-container\"),s=i.append(\"div\"),c=t.node().style,u=parseFloat(c.fontSize||12),void 0===(h=e.text)&&(h=t.attr(\"data-unformatted\")),s.classed(\"plugin-editable editable\",!0).style({position:\"absolute\",\"font-family\":c.fontFamily||\"Arial\",\"font-size\":u,color:e.fill||c.fill||\"black\",opacity:1,\"background-color\":e.background||\"transparent\",outline:\"#ffffff33 1px solid\",margin:[-u/8+1,0,0,-1].join(\"px \")+\"px\",padding:\"0\",\"box-sizing\":\"border-box\"}).attr({contenteditable:!0}).text(h).call(I(t,i,e)).on(\"blur\",(function(){r._editing=!1,t.text(this.textContent).style({opacity:1});var e,i=n.select(this).attr(\"class\");(e=i?\".\"+i.split(\" \")[0]+\"-math-group\":\"[class*=-math-group]\")&&n.select(t.node().parentNode).select(e).style({opacity:0});var o=this.textContent;n.select(this).transition().duration(0).remove(),n.select(document).on(\"mouseup\",null),a.edit.call(t,o)})).on(\"focus\",(function(){var t=this;r._editing=!0,n.select(document).on(\"mouseup\",(function(){if(n.event.target===t)return!1;document.activeElement===s.node()&&s.node().blur()}))})).on(\"keyup\",(function(){27===n.event.which?(r._editing=!1,t.style({opacity:1}),n.select(this).style({opacity:0}).on(\"blur\",(function(){return!1})).transition().remove(),a.cancel.call(t,this.textContent)):(a.input.call(t,this.textContent),n.select(this).call(I(t,i,e)))})).on(\"keydown\",(function(){13===n.event.which&&this.blur()})).call(l),t.style({opacity:0});var f,p=o.attr(\"class\");(f=p?\".\"+p.split(\" \")[0]+\"-math-group\":\"[class*=-math-group]\")&&n.select(t.node().parentNode).select(f).style({opacity:0})}function l(t){var e=t.node(),r=document.createRange();r.selectNodeContents(e);var n=window.getSelection();n.removeAllRanges(),n.addRange(r),e.focus()}return e.immediate?s():o.on(\"click\",s),n.rebind(t,a,\"on\")}},64025:function(t,e){\"use strict\";var r={};function n(t){t&&null!==t.timer&&(clearTimeout(t.timer),t.timer=null)}e.throttle=function(t,e,i){var a=r[t],o=Date.now();if(!a){for(var s in r)r[s].ts<o-6e4&&delete r[s];a=r[t]={ts:0,timer:null}}function l(){i(),a.ts=Date.now(),a.onDone&&(a.onDone(),a.onDone=null)}n(a),o>a.ts+e?l():a.timer=setTimeout((function(){l(),a.timer=null}),e)},e.done=function(t){var e=r[t];return e&&e.timer?new Promise((function(t){var r=e.onDone;e.onDone=function(){r&&r(),t(),e.onDone=null}})):Promise.resolve()},e.clear=function(t){if(t)n(r[t]),delete r[t];else for(var i in r)e.clear(i)}},8083:function(t,e,r){\"use strict\";var n=r(10721);t.exports=function(t,e){if(t>0)return Math.log(t)/Math.LN10;var r=Math.log(Math.min(e[0],e[1]))/Math.LN10;return n(r)||(r=Math.log(Math.max(e[0],e[1]))/Math.LN10-6),r}},11577:function(t,e,r){\"use strict\";var n=t.exports={},i=r(74285).locationmodeToLayer,a=r(48640).N4;n.getTopojsonName=function(t){return[t.scope.replace(/ /g,\"-\"),\"_\",t.resolution.toString(),\"m\"].join(\"\")},n.getTopojsonPath=function(t,e){return t+e+\".json\"},n.getTopojsonFeatures=function(t,e){var r=i[t.locationmode],n=e.objects[r];return a(e,n).features}},44611:function(t){\"use strict\";t.exports={moduleType:\"locale\",name:\"en-US\",dictionary:{\"Click to enter Colorscale title\":\"Click to enter Colorscale title\"},format:{date:\"%m/%d/%Y\"}}},30227:function(t){\"use strict\";t.exports={moduleType:\"locale\",name:\"en\",dictionary:{\"Click to enter Colorscale title\":\"Click to enter Colourscale title\"},format:{days:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],shortDays:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],months:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],shortMonths:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],periods:[\"AM\",\"PM\"],dateTime:\"%a %b %e %X %Y\",date:\"%d/%m/%Y\",time:\"%H:%M:%S\",decimal:\".\",thousands:\",\",grouping:[3],currency:[\"$\",\"\"],year:\"%Y\",month:\"%b %Y\",dayMonth:\"%b %-d\",dayMonthYear:\"%b %-d, %Y\"}}},56037:function(t,e,r){\"use strict\";var n=r(33626);t.exports=function(t){for(var e,r,i=n.layoutArrayContainers,a=n.layoutArrayRegexes,o=t.split(\"[\")[0],s=0;s<a.length;s++)if((r=t.match(a[s]))&&0===r.index){e=r[0];break}if(e||(e=i[i.indexOf(o)]),!e)return!1;var l=t.substr(e.length);return l?!!(r=l.match(/^\\[(0|[1-9][0-9]*)\\](\\.(.+))?$/))&&{array:e,index:Number(r[1]),property:r[3]||\"\"}:{array:e,index:\"\",property:\"\"}}},13582:function(t,e,r){\"use strict\";var n=r(93049).extendFlat,i=r(56174),a={valType:\"flaglist\",extras:[\"none\"],flags:[\"calc\",\"clearAxisTypes\",\"plot\",\"style\",\"markerSize\",\"colorbars\"]},o={valType:\"flaglist\",extras:[\"none\"],flags:[\"calc\",\"plot\",\"legend\",\"ticks\",\"axrange\",\"layoutstyle\",\"modebar\",\"camera\",\"arraydraw\",\"colorbars\"]},s=a.flags.slice().concat([\"fullReplot\"]),l=o.flags.slice().concat(\"layoutReplot\");function c(t){for(var e={},r=0;r<t.length;r++)e[t[r]]=!1;return e}function u(t,e,r){var a=n({},t);for(var o in a){var s=a[o];i(s)&&(a[o]=h(s,e,0,o))}return\"from-root\"===r&&(a.editType=e),a}function h(t,e,r,i){if(t.valType){var a=n({},t);if(a.editType=e,Array.isArray(t.items)){a.items=new Array(t.items.length);for(var o=0;o<t.items.length;o++)a.items[o]=h(t.items[o],e)}return a}return u(t,e,\"_\"===i.charAt(0)?\"nested\":\"from-root\")}t.exports={traces:a,layout:o,traceFlags:function(){return c(s)},layoutFlags:function(){return c(l)},update:function(t,e){var r=e.editType;if(r&&\"none\"!==r)for(var n=r.split(\"+\"),i=0;i<n.length;i++)t[n[i]]=!0},overrideAll:u}},10887:function(t,e,r){\"use strict\";var n=r(10721),i=r(36472),a=r(33626),o=r(34809),s=r(44122),l=r(5975),c=r(78766),u=l.cleanId,h=l.getFromTrace,f=a.traceIs;function p(t,e){var r=t[e],n=e.charAt(0);r&&\"paper\"!==r&&(t[e]=u(r,n,!0))}function d(t){function e(e,r){var n=t[e],i=t.title&&t.title[r];n&&!i&&(t.title||(t.title={}),t.title[r]=t[e],delete t[e])}t&&(\"string\"!=typeof t.title&&\"number\"!=typeof t.title||(t.title={text:t.title}),e(\"titlefont\",\"font\"),e(\"titleposition\",\"position\"),e(\"titleside\",\"side\"),e(\"titleoffset\",\"offset\"))}function m(t){if(!o.isPlainObject(t))return!1;var e=t.name;return delete t.name,delete t.showlegend,(\"string\"==typeof e||\"number\"==typeof e)&&String(e)}function g(t,e,r,n){if(r&&!n)return t;if(n&&!r)return e;if(!t.trim())return e;if(!e.trim())return t;var i,a=Math.min(t.length,e.length);for(i=0;i<a&&t.charAt(i)===e.charAt(i);i++);return t.substr(0,i).trim()}function y(t){var e=\"middle\",r=\"center\";return\"string\"==typeof t&&(-1!==t.indexOf(\"top\")?e=\"top\":-1!==t.indexOf(\"bottom\")&&(e=\"bottom\"),-1!==t.indexOf(\"left\")?r=\"left\":-1!==t.indexOf(\"right\")&&(r=\"right\")),e+\" \"+r}function v(t,e){return e in t&&\"object\"==typeof t[e]&&0===Object.keys(t[e]).length}e.clearPromiseQueue=function(t){Array.isArray(t._promises)&&t._promises.length>0&&o.log(\"Clearing previous rejected promises from queue.\"),t._promises=[]},e.cleanLayout=function(t){var r,n;t||(t={}),t.xaxis1&&(t.xaxis||(t.xaxis=t.xaxis1),delete t.xaxis1),t.yaxis1&&(t.yaxis||(t.yaxis=t.yaxis1),delete t.yaxis1),t.scene1&&(t.scene||(t.scene=t.scene1),delete t.scene1);var a=(s.subplotsRegistry.cartesian||{}).attrRegex,l=(s.subplotsRegistry.polar||{}).attrRegex,h=(s.subplotsRegistry.ternary||{}).attrRegex,f=(s.subplotsRegistry.gl3d||{}).attrRegex,m=Object.keys(t);for(r=0;r<m.length;r++){var g=m[r];if(a&&a.test(g)){var y=t[g];y.anchor&&\"free\"!==y.anchor&&(y.anchor=u(y.anchor)),y.overlaying&&(y.overlaying=u(y.overlaying)),y.type||(y.isdate?y.type=\"date\":y.islog?y.type=\"log\":!1===y.isdate&&!1===y.islog&&(y.type=\"linear\")),\"withzero\"!==y.autorange&&\"tozero\"!==y.autorange||(y.autorange=!0,y.rangemode=\"tozero\"),y.insiderange&&delete y.range,delete y.islog,delete y.isdate,delete y.categories,v(y,\"domain\")&&delete y.domain,void 0!==y.autotick&&(void 0===y.tickmode&&(y.tickmode=y.autotick?\"auto\":\"linear\"),delete y.autotick),d(y)}else if(l&&l.test(g))d(t[g].radialaxis);else if(h&&h.test(g)){var x=t[g];d(x.aaxis),d(x.baxis),d(x.caxis)}else if(f&&f.test(g)){var _=t[g],b=_.cameraposition;if(Array.isArray(b)&&4===b[0].length){var w=b[0],T=b[1],k=b[2],A=i([],w),M=[];for(n=0;n<3;++n)M[n]=T[n]+k*A[2+4*n];_.camera={eye:{x:M[0],y:M[1],z:M[2]},center:{x:T[0],y:T[1],z:T[2]},up:{x:0,y:0,z:1}},delete _.cameraposition}d(_.xaxis),d(_.yaxis),d(_.zaxis)}}var S=Array.isArray(t.annotations)?t.annotations.length:0;for(r=0;r<S;r++){var E=t.annotations[r];o.isPlainObject(E)&&(E.ref&&(\"paper\"===E.ref?(E.xref=\"paper\",E.yref=\"paper\"):\"data\"===E.ref&&(E.xref=\"x\",E.yref=\"y\"),delete E.ref),p(E,\"xref\"),p(E,\"yref\"))}var C=Array.isArray(t.shapes)?t.shapes.length:0;for(r=0;r<C;r++){var L=t.shapes[r];o.isPlainObject(L)&&(p(L,\"xref\"),p(L,\"yref\"))}var I=Array.isArray(t.images)?t.images.length:0;for(r=0;r<I;r++){var P=t.images[r];o.isPlainObject(P)&&(p(P,\"xref\"),p(P,\"yref\"))}var z=t.legend;return z&&(z.x>3?(z.x=1.02,z.xanchor=\"left\"):z.x<-2&&(z.x=-.02,z.xanchor=\"right\"),z.y>3?(z.y=1.02,z.yanchor=\"bottom\"):z.y<-2&&(z.y=-.02,z.yanchor=\"top\")),d(t),\"rotate\"===t.dragmode&&(t.dragmode=\"orbit\"),c.clean(t),t.template&&t.template.layout&&e.cleanLayout(t.template.layout),t},e.cleanData=function(t){for(var r=0;r<t.length;r++){var n,i=t[r];if(\"histogramy\"===i.type&&\"xbins\"in i&&!(\"ybins\"in i)&&(i.ybins=i.xbins,delete i.xbins),i.error_y&&\"opacity\"in i.error_y){var l=c.defaults,h=i.error_y.color||(f(i,\"bar\")?c.defaultLine:l[r%l.length]);i.error_y.color=c.addOpacity(c.rgb(h),c.opacity(h)*i.error_y.opacity),delete i.error_y.opacity}if(\"bardir\"in i&&(\"h\"!==i.bardir||!f(i,\"bar\")&&\"histogram\"!==i.type.substr(0,9)||(i.orientation=\"h\",e.swapXYData(i)),delete i.bardir),\"histogramy\"===i.type&&e.swapXYData(i),\"histogramx\"!==i.type&&\"histogramy\"!==i.type||(i.type=\"histogram\"),\"scl\"in i&&!(\"colorscale\"in i)&&(i.colorscale=i.scl,delete i.scl),\"reversescl\"in i&&!(\"reversescale\"in i)&&(i.reversescale=i.reversescl,delete i.reversescl),i.xaxis&&(i.xaxis=u(i.xaxis,\"x\")),i.yaxis&&(i.yaxis=u(i.yaxis,\"y\")),f(i,\"gl3d\")&&i.scene&&(i.scene=s.subplotsRegistry.gl3d.cleanId(i.scene)),!f(i,\"pie-like\")&&!f(i,\"bar-like\"))if(Array.isArray(i.textposition))for(n=0;n<i.textposition.length;n++)i.textposition[n]=y(i.textposition[n]);else i.textposition&&(i.textposition=y(i.textposition));var p=a.getModule(i);if(p&&p.colorbar){var x=p.colorbar.container,_=x?i[x]:i;_&&_.colorscale&&(\"YIGnBu\"===_.colorscale&&(_.colorscale=\"YlGnBu\"),\"YIOrRd\"===_.colorscale&&(_.colorscale=\"YlOrRd\"))}if(\"surface\"===i.type&&o.isPlainObject(i.contours)){var b=[\"x\",\"y\",\"z\"];for(n=0;n<b.length;n++){var w=i.contours[b[n]];o.isPlainObject(w)&&(w.highlightColor&&(w.highlightcolor=w.highlightColor,delete w.highlightColor),w.highlightWidth&&(w.highlightwidth=w.highlightWidth,delete w.highlightWidth))}}if(\"candlestick\"===i.type||\"ohlc\"===i.type){var T=!1!==(i.increasing||{}).showlegend,k=!1!==(i.decreasing||{}).showlegend,A=m(i.increasing),M=m(i.decreasing);if(!1!==A&&!1!==M){var S=g(A,M,T,k);S&&(i.name=S)}else!A&&!M||i.name||(i.name=A||M)}if(Array.isArray(i.transforms)){var E=i.transforms;for(n=0;n<E.length;n++){var C=E[n];if(o.isPlainObject(C))switch(C.type){case\"filter\":C.filtersrc&&(C.target=C.filtersrc,delete C.filtersrc),C.calendar&&(C.valuecalendar||(C.valuecalendar=C.calendar),delete C.calendar);break;case\"groupby\":if(C.styles=C.styles||C.style,C.styles&&!Array.isArray(C.styles)){var L=C.styles,I=Object.keys(L);C.styles=[];for(var P=0;P<I.length;P++)C.styles.push({target:I[P],value:L[I[P]]})}}}}v(i,\"line\")&&delete i.line,\"marker\"in i&&(v(i.marker,\"line\")&&delete i.marker.line,v(i,\"marker\")&&delete i.marker),c.clean(i),i.autobinx&&(delete i.autobinx,delete i.xbins),i.autobiny&&(delete i.autobiny,delete i.ybins),d(i),i.colorbar&&d(i.colorbar),i.marker&&i.marker.colorbar&&d(i.marker.colorbar),i.line&&i.line.colorbar&&d(i.line.colorbar),i.aaxis&&d(i.aaxis),i.baxis&&d(i.baxis)}},e.swapXYData=function(t){var e;if(o.swapAttrs(t,[\"?\",\"?0\",\"d?\",\"?bins\",\"nbins?\",\"autobin?\",\"?src\",\"error_?\"]),Array.isArray(t.z)&&Array.isArray(t.z[0])&&(t.transpose?delete t.transpose:t.transpose=!0),t.error_x&&t.error_y){var r=t.error_y,n=\"copy_ystyle\"in r?r.copy_ystyle:!(r.color||r.thickness||r.width);o.swapAttrs(t,[\"error_?.copy_ystyle\"]),n&&o.swapAttrs(t,[\"error_?.color\",\"error_?.thickness\",\"error_?.width\"])}if(\"string\"==typeof t.hoverinfo){var i=t.hoverinfo.split(\"+\");for(e=0;e<i.length;e++)\"x\"===i[e]?i[e]=\"y\":\"y\"===i[e]&&(i[e]=\"x\");t.hoverinfo=i.join(\"+\")}},e.coerceTraceIndices=function(t,e){if(n(e))return[e];if(!Array.isArray(e)||!e.length)return t.data.map((function(t,e){return e}));if(Array.isArray(e)){for(var r=[],i=0;i<e.length;i++)o.isIndex(e[i],t.data.length)?r.push(e[i]):o.warn(\"trace index (\",e[i],\") is not a number or is out of bounds\");return r}return e},e.manageArrayContainers=function(t,e,r){var i=t.obj,a=t.parts,s=a.length,l=a[s-1],c=n(l);if(c&&null===e){var u=a.slice(0,s-1).join(\".\");o.nestedProperty(i,u).get().splice(l,1)}else c&&void 0===t.get()?(void 0===t.get()&&(r[t.astr]=null),t.set(e)):t.set(e)};var x=/(\\.[^\\[\\]\\.]+|\\[[^\\[\\]\\.]+\\])$/;function _(t){var e=t.search(x);if(e>0)return t.substr(0,e)}e.hasParent=function(t,e){for(var r=_(e);r;){if(r in t)return!0;r=_(r)}return!1};var b=[\"x\",\"y\",\"z\"];e.clearAxisTypes=function(t,e,r){for(var n=0;n<e.length;n++)for(var i=t._fullData[n],a=0;a<3;a++){var s=h(t,i,b[a]);if(s&&\"log\"!==s.type){var l=s._name,c=s._id.substr(1);if(\"scene\"===c.substr(0,5)){if(void 0!==r[c])continue;l=c+\".\"+l}var u=l+\".type\";void 0===r[l]&&void 0===r[u]&&o.nestedProperty(t.layout,u).set(null)}}}},90742:function(t,e,r){\"use strict\";var n=r(31420);e._doPlot=n._doPlot,e.newPlot=n.newPlot,e.restyle=n.restyle,e.relayout=n.relayout,e.redraw=n.redraw,e.update=n.update,e._guiRestyle=n._guiRestyle,e._guiRelayout=n._guiRelayout,e._guiUpdate=n._guiUpdate,e._storeDirectGUIEdit=n._storeDirectGUIEdit,e.react=n.react,e.extendTraces=n.extendTraces,e.prependTraces=n.prependTraces,e.addTraces=n.addTraces,e.deleteTraces=n.deleteTraces,e.moveTraces=n.moveTraces,e.purge=n.purge,e.addFrames=n.addFrames,e.deleteFrames=n.deleteFrames,e.animate=n.animate,e.setPlotConfig=n.setPlotConfig;var i=r(95425).getGraphDiv,a=r(28231).eraseActiveShape;e.deleteActiveShape=function(t){return a(i(t))},e.toImage=r(80491),e.validate=r(2466),e.downloadImage=r(26452);var o=r(53853);e.makeTemplate=o.makeTemplate,e.validateTemplate=o.validateTemplate},85844:function(t,e,r){\"use strict\";var n=r(56174),i=r(4969),a=r(48636),o=r(98813).sorterAsc,s=r(33626);e.containerArrayMatch=r(56037);var l=e.isAddVal=function(t){return\"add\"===t||n(t)},c=e.isRemoveVal=function(t){return null===t||\"remove\"===t};e.applyContainerArrayChanges=function(t,e,r,n,u){var h=e.astr,f=s.getComponentMethod(h,\"supplyLayoutDefaults\"),p=s.getComponentMethod(h,\"draw\"),d=s.getComponentMethod(h,\"drawOne\"),m=n.replot||n.recalc||f===i||p===i,g=t.layout,y=t._fullLayout;if(r[\"\"]){Object.keys(r).length>1&&a.warn(\"Full array edits are incompatible with other edits\",h);var v=r[\"\"][\"\"];if(c(v))e.set(null);else{if(!Array.isArray(v))return a.warn(\"Unrecognized full array edit value\",h,v),!0;e.set(v)}return!m&&(f(g,y),p(t),!0)}var x,_,b,w,T,k,A,M,S=Object.keys(r).map(Number).sort(o),E=e.get(),C=E||[],L=u(y,h).get(),I=[],P=-1,z=C.length;for(x=0;x<S.length;x++)if(w=r[b=S[x]],T=Object.keys(w),k=w[\"\"],A=l(k),b<0||b>C.length-(A?0:1))a.warn(\"index out of range\",h,b);else if(void 0!==k)T.length>1&&a.warn(\"Insertion & removal are incompatible with edits to the same index.\",h,b),c(k)?I.push(b):A?(\"add\"===k&&(k={}),C.splice(b,0,k),L&&L.splice(b,0,{})):a.warn(\"Unrecognized full object edit value\",h,b,k),-1===P&&(P=b);else for(_=0;_<T.length;_++)M=h+\"[\"+b+\"].\",u(C[b],T[_],M).set(w[T[_]]);for(x=I.length-1;x>=0;x--)C.splice(I[x],1),L&&L.splice(I[x],1);if(C.length?E||e.set(C):e.set(null),m)return!1;if(f(g,y),d!==i){var O;if(-1===P)O=S;else{for(z=Math.max(C.length,z),O=[],x=0;x<S.length&&!((b=S[x])>=P);x++)O.push(b);for(x=P;x<z;x++)O.push(x)}for(x=0;x<O.length;x++)d(t,O[x])}else p(t);return!0}},31420:function(t,e,r){\"use strict\";var n=r(45568),i=r(10721),a=r(39784),o=r(34809),s=o.nestedProperty,l=r(68596),c=r(40486),u=r(33626),h=r(57297),f=r(44122),p=r(29714),d=r(90259),m=r(25829),g=r(62203),y=r(78766),v=r(95284).initInteractions,x=r(62972),_=r(44844).clearOutline,b=r(24452).dfltConfig,w=r(85844),T=r(10887),k=r(71817),A=r(13582),M=r(54826).AX_NAME_PATTERN,S=0;function E(t){var e=t._fullLayout;e._redrawFromAutoMarginCount?e._redrawFromAutoMarginCount--:t.emit(\"plotly_afterplot\")}function C(t,e){try{t._fullLayout._paper.style(\"background\",e)}catch(t){o.error(t)}}function L(t,e){C(t,y.combine(e,\"white\"))}function I(t,e){if(!t._context){t._context=o.extendDeep({},b);var r=n.select(\"base\");t._context._baseUrl=r.size()&&r.attr(\"href\")?window.location.href.split(\"#\")[0]:\"\"}var i,s,l,c=t._context;if(e){for(s=Object.keys(e),i=0;i<s.length;i++)\"editable\"!==(l=s[i])&&\"edits\"!==l&&l in c&&(\"setBackground\"===l&&\"opaque\"===e[l]?c[l]=L:c[l]=e[l]);e.plot3dPixelRatio&&!c.plotGlPixelRatio&&(c.plotGlPixelRatio=c.plot3dPixelRatio);var u=e.editable;if(void 0!==u)for(c.editable=u,s=Object.keys(c.edits),i=0;i<s.length;i++)c.edits[s[i]]=u;if(e.edits)for(s=Object.keys(e.edits),i=0;i<s.length;i++)(l=s[i])in c.edits&&(c.edits[l]=e.edits[l]);c._exportedPlot=e._exportedPlot}c.staticPlot&&(c.editable=!1,c.edits={},c.autosizable=!1,c.scrollZoom=!1,c.doubleClick=!1,c.showTips=!1,c.showLink=!1,c.displayModeBar=!1),\"hover\"!==c.displayModeBar||a||(c.displayModeBar=!0),\"transparent\"!==c.setBackground&&\"function\"==typeof c.setBackground||(c.setBackground=C),c._hasZeroHeight=c._hasZeroHeight||0===t.clientHeight,c._hasZeroWidth=c._hasZeroWidth||0===t.clientWidth;var h=c.scrollZoom,f=c._scrollZoom={};if(!0===h)f.cartesian=1,f.gl3d=1,f.geo=1,f.mapbox=1,f.map=1;else if(\"string\"==typeof h){var p=h.split(\"+\");for(i=0;i<p.length;i++)f[p[i]]=1}else!1!==h&&(f.gl3d=1,f.geo=1,f.mapbox=1,f.map=1)}function P(t,e){var r,n,i=e+1,a=[];for(r=0;r<t.length;r++)(n=t[r])<0?a.push(i+n):a.push(n);return a}function z(t,e,r){var n,i;for(n=0;n<e.length;n++){if((i=e[n])!==parseInt(i,10))throw new Error(\"all values in \"+r+\" must be integers\");if(i>=t.data.length||i<-t.data.length)throw new Error(r+\" must be valid indices for gd.data.\");if(e.indexOf(i,n+1)>-1||i>=0&&e.indexOf(-t.data.length+i)>-1||i<0&&e.indexOf(t.data.length+i)>-1)throw new Error(\"each index in \"+r+\" must be unique.\")}}function O(t,e,r){if(!Array.isArray(t.data))throw new Error(\"gd.data must be an array.\");if(void 0===e)throw new Error(\"currentIndices is a required argument.\");if(Array.isArray(e)||(e=[e]),z(t,e,\"currentIndices\"),void 0===r||Array.isArray(r)||(r=[r]),void 0!==r&&z(t,r,\"newIndices\"),void 0!==r&&e.length!==r.length)throw new Error(\"current and new indices must be of equal length.\")}function D(t,e,r,n,a){!function(t,e,r,n){var i=o.isPlainObject(n);if(!Array.isArray(t.data))throw new Error(\"gd.data must be an array\");if(!o.isPlainObject(e))throw new Error(\"update must be a key:value object\");if(void 0===r)throw new Error(\"indices must be an integer or array of integers\");for(var a in z(t,r,\"indices\"),e){if(!Array.isArray(e[a])||e[a].length!==r.length)throw new Error(\"attribute \"+a+\" must be an array of length equal to indices array length\");if(i&&(!(a in n)||!Array.isArray(n[a])||n[a].length!==e[a].length))throw new Error(\"when maxPoints is set as a key:value object it must contain a 1:1 corrispondence with the keys and number of traces in the update object\")}}(t,e,r,n);for(var l=function(t,e,r,n){var a,l,c,u,h,f=o.isPlainObject(n),p=[];for(var d in Array.isArray(r)||(r=[r]),r=P(r,t.data.length-1),e)for(var m=0;m<r.length;m++){if(a=t.data[r[m]],l=(c=s(a,d)).get(),u=e[d][m],!o.isArrayOrTypedArray(u))throw new Error(\"attribute: \"+d+\" index: \"+m+\" must be an array\");if(!o.isArrayOrTypedArray(l))throw new Error(\"cannot extend missing or non-array attribute: \"+d);if(l.constructor!==u.constructor)throw new Error(\"cannot extend array with an array of a different type: \"+d);h=f?n[d][m]:n,i(h)||(h=-1),p.push({prop:c,target:l,insert:u,maxp:Math.floor(h)})}return p}(t,e,r,n),c={},u={},h=0;h<l.length;h++){var f=l[h].prop,p=l[h].maxp,d=a(l[h].target,l[h].insert,p);f.set(d[0]),Array.isArray(c[f.astr])||(c[f.astr]=[]),c[f.astr].push(d[1]),Array.isArray(u[f.astr])||(u[f.astr]=[]),u[f.astr].push(l[h].target.length)}return{update:c,maxPoints:u}}function R(t,e){var r=new t.constructor(t.length+e.length);return r.set(t),r.set(e,t.length),r}function F(t,r,n,i){t=o.getGraphDiv(t),T.clearPromiseQueue(t);var a={};if(\"string\"==typeof r)a[r]=n;else{if(!o.isPlainObject(r))return o.warn(\"Restyle fail.\",r,n,i),Promise.reject();a=o.extendFlat({},r),void 0===i&&(i=n)}Object.keys(a).length&&(t.changed=!0);var s=T.coerceTraceIndices(t,i),l=U(t,a,s),u=l.flags;u.calc&&(t.calcdata=void 0),u.clearAxisTypes&&T.clearAxisTypes(t,s,{});var h=[];u.fullReplot?h.push(e._doPlot):(h.push(f.previousPromises),f.supplyDefaults(t),u.markerSize&&(f.doCalcdata(t),G(h)),u.style&&h.push(k.doTraceStyle),u.colorbars&&h.push(k.doColorBars),h.push(E)),h.push(f.rehover,f.redrag,f.reselect),c.add(t,F,[t,l.undoit,l.traces],F,[t,l.redoit,l.traces]);var p=o.syncOrAsync(h,t);return p&&p.then||(p=Promise.resolve()),p.then((function(){return t.emit(\"plotly_restyle\",l.eventData),t}))}function B(t){return void 0===t?null:t}function N(t,e){return e?function(e,r,n){var i=s(e,r),a=i.set;return i.set=function(e){j((n||\"\")+r,i.get(),e,t),a(e)},i}:s}function j(t,e,r,n){if(Array.isArray(e)||Array.isArray(r))for(var i=Array.isArray(e)?e:[],a=Array.isArray(r)?r:[],s=Math.max(i.length,a.length),l=0;l<s;l++)j(t+\"[\"+l+\"]\",i[l],a[l],n);else if(o.isPlainObject(e)||o.isPlainObject(r)){var c=o.isPlainObject(e)?e:{},u=o.isPlainObject(r)?r:{},h=o.extendFlat({},c,u);for(var f in h)j(t+\".\"+f,c[f],u[f],n)}else void 0===n[t]&&(n[t]=B(e))}function U(t,e,r){var n,i=t._fullLayout,a=t._fullData,l=t.data,c=i._guiEditing,d=N(i._preGUI,c),m=o.extendDeepAll({},e);V(e);var g,y=A.traceFlags(),v={},x={};function _(){return r.map((function(){}))}function b(t){var e=p.id2name(t);-1===g.indexOf(e)&&g.push(e)}function w(t){return\"LAYOUT\"+t+\".autorange\"}function k(t){return\"LAYOUT\"+t+\".range\"}function M(t){for(var e=t;e<a.length;e++)if(a[e]._input===l[t])return a[e]}function S(n,a,o){if(Array.isArray(n))n.forEach((function(t){S(t,a,o)}));else if(!(n in e)&&!T.hasParent(e,n)){var s;if(\"LAYOUT\"===n.substr(0,6))s=d(t.layout,n.replace(\"LAYOUT\",\"\"));else{var u=r[o];s=N(i._tracePreGUI[M(u)._fullInput.uid],c)(l[u],n)}n in x||(x[n]=_()),void 0===x[n][o]&&(x[n][o]=B(s.get())),void 0!==a&&s.set(a)}}function E(t){return function(e){return a[e][t]}}function C(t){return function(e,n){return!1===e?a[r[n]][t]:null}}for(var L in e){if(T.hasParent(e,L))throw new Error(\"cannot set \"+L+\" and a parent attribute simultaneously\");var I,P,z,O,D,R,F=e[L];if(\"autobinx\"!==L&&\"autobiny\"!==L||(L=L.charAt(L.length-1)+\"bins\",F=Array.isArray(F)?F.map(C(L)):!1===F?r.map(E(L)):null),v[L]=F,\"LAYOUT\"!==L.substr(0,6)){for(x[L]=_(),n=0;n<r.length;n++)if(I=l[r[n]],P=M(r[n]),O=(z=N(i._tracePreGUI[P._fullInput.uid],c)(I,L)).get(),void 0!==(D=Array.isArray(F)?F[n%F.length]:F)){var j=z.parts[z.parts.length-1],U=L.substr(0,L.length-j.length-1),q=U?U+\".\":\"\",H=U?s(P,U).get():P;if((R=h.getTraceValObject(P,z.parts))&&R.impliedEdits&&null!==D)for(var G in R.impliedEdits)S(o.relativeAttr(L,G),R.impliedEdits[G],n);else if(\"thicknessmode\"!==j&&\"lenmode\"!==j||O===D||\"fraction\"!==D&&\"pixels\"!==D||!H){if(\"type\"===L&&(\"pie\"===D!=(\"pie\"===O)||\"funnelarea\"===D!=(\"funnelarea\"===O))){var Z=\"x\",W=\"y\";\"bar\"!==D&&\"bar\"!==O||\"h\"!==I.orientation||(Z=\"y\",W=\"x\"),o.swapAttrs(I,[\"?\",\"?src\"],\"labels\",Z),o.swapAttrs(I,[\"d?\",\"?0\"],\"label\",Z),o.swapAttrs(I,[\"?\",\"?src\"],\"values\",W),\"pie\"===O||\"funnelarea\"===O?(s(I,\"marker.color\").set(s(I,\"marker.colors\").get()),i._pielayer.selectAll(\"g.trace\").remove()):u.traceIs(I,\"cartesian\")&&s(I,\"marker.colors\").set(s(I,\"marker.color\").get())}}else{var Y=i._size,X=H.orient,$=\"top\"===X||\"bottom\"===X;if(\"thicknessmode\"===j){var J=$?Y.h:Y.w;S(q+\"thickness\",H.thickness*(\"fraction\"===D?1/J:J),n)}else{var K=$?Y.w:Y.h;S(q+\"len\",H.len*(\"fraction\"===D?1/K:K),n)}}if(x[L][n]=B(O),-1!==[\"swapxy\",\"swapxyaxes\",\"orientation\",\"orientationaxes\"].indexOf(L)){if(\"orientation\"===L){z.set(D);var Q=I.x&&!I.y?\"h\":\"v\";if((z.get()||Q)===P.orientation)continue}else\"orientationaxes\"===L&&(I.orientation={v:\"h\",h:\"v\"}[P.orientation]);T.swapXYData(I),y.calc=y.clearAxisTypes=!0}else-1!==f.dataArrayContainers.indexOf(z.parts[0])?(T.manageArrayContainers(z,D,x),y.calc=!0):(R?R.arrayOk&&!u.traceIs(P,\"regl\")&&(o.isArrayOrTypedArray(D)||o.isArrayOrTypedArray(O))?y.calc=!0:A.update(y,R):y.calc=!0,z.set(D))}if(-1!==[\"swapxyaxes\",\"orientationaxes\"].indexOf(L)&&p.swap(t,r),\"orientationaxes\"===L){var tt=s(t.layout,\"hovermode\"),et=tt.get();\"x\"===et?tt.set(\"y\"):\"y\"===et?tt.set(\"x\"):\"x unified\"===et?tt.set(\"y unified\"):\"y unified\"===et&&tt.set(\"x unified\")}if(-1!==[\"orientation\",\"type\"].indexOf(L)){for(g=[],n=0;n<r.length;n++){var rt=l[r[n]];u.traceIs(rt,\"cartesian\")&&(b(rt.xaxis||\"x\"),b(rt.yaxis||\"y\"))}S(g.map(w),!0,0),S(g.map(k),[0,1],0)}}else z=d(t.layout,L.replace(\"LAYOUT\",\"\")),x[L]=[B(z.get())],z.set(Array.isArray(F)?F[0]:F),y.calc=!0}return(y.calc||y.plot)&&(y.fullReplot=!0),{flags:y,undoit:x,redoit:v,traces:r,eventData:o.extendDeepNoArrays([],[m,r])}}function V(t){var e,r,n,i=o.counterRegex(\"axis\",\".title\",!1,!1),a=/colorbar\\.title$/,s=Object.keys(t);for(e=0;e<s.length;e++)r=s[e],n=t[r],\"title\"!==r&&!i.test(r)&&!a.test(r)||\"string\"!=typeof n&&\"number\"!=typeof n?r.indexOf(\"titlefont\")>-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(e,r){t[r]=t[e],delete t[e]}}function q(t,e,r){t=o.getGraphDiv(t),T.clearPromiseQueue(t);var n={};if(\"string\"==typeof e)n[e]=r;else{if(!o.isPlainObject(e))return o.warn(\"Relayout fail.\",e,r),Promise.reject();n=o.extendFlat({},e)}Object.keys(n).length&&(t.changed=!0);var i=X(t,n),a=i.flags;a.calc&&(t.calcdata=void 0);var s=[f.previousPromises];a.layoutReplot?s.push(k.layoutReplot):Object.keys(n).length&&(H(t,a,i)||f.supplyDefaults(t),a.legend&&s.push(k.doLegend),a.layoutstyle&&s.push(k.layoutStyles),a.axrange&&G(s,i.rangesAltered),a.ticks&&s.push(k.doTicksRelayout),a.modebar&&s.push(k.doModeBar),a.camera&&s.push(k.doCamera),a.colorbars&&s.push(k.doColorBars),s.push(E)),s.push(f.rehover,f.redrag,f.reselect),c.add(t,q,[t,i.undoit],q,[t,i.redoit]);var l=o.syncOrAsync(s,t);return l&&l.then||(l=Promise.resolve(t)),l.then((function(){return t.emit(\"plotly_relayout\",i.eventData),t}))}function H(t,e,r){var n,i,a=t._fullLayout;if(!e.axrange)return!1;for(var s in e)if(\"axrange\"!==s&&e[s])return!1;var l=function(t,e){return o.coerce(n,i,m,t,e)},c={};for(var u in r.rangesAltered){var h=p.id2name(u);if(n=t.layout[h],i=a[h],d(n,i,l,c),i._matchGroup)for(var f in i._matchGroup)if(f!==u){var g=a[p.id2name(f)];g.autorange=i.autorange,g.range=i.range.slice(),g._input.range=i.range.slice()}}return!0}function G(t,e){var r=e?function(t){var r=[];for(var n in e){var i=p.getFromId(t,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)e[a]||r.push(a)}return p.draw(t,r,{skipTitle:!0})}:function(t){return p.draw(t,\"redraw\")};t.push(_,k.doAutoRangeAndConstraints,r,k.drawData,k.finalDraw)}var Z=/^[xyz]axis[0-9]*\\.range(\\[[0|1]\\])?$/,W=/^[xyz]axis[0-9]*\\.autorange$/,Y=/^[xyz]axis[0-9]*\\.domain(\\[[0|1]\\])?$/;function X(t,e){var r,n,i,a=t.layout,l=t._fullLayout,c=l._guiEditing,f=N(l._preGUI,c),d=Object.keys(e),m=p.list(t),g=o.extendDeepAll({},e),y={};for(V(e),d=Object.keys(e),n=0;n<d.length;n++)if(0===d[n].indexOf(\"allaxes\")){for(i=0;i<m.length;i++){var v=m[i]._id.substr(1),x=-1!==v.indexOf(\"scene\")?v+\".\":\"\",_=d[n].replace(\"allaxes\",x+m[i]._name);e[_]||(e[_]=e[d[n]])}delete e[d[n]]}var b=A.layoutFlags(),k={},S={};function E(t,r){if(Array.isArray(t))t.forEach((function(t){E(t,r)}));else if(!(t in e)&&!T.hasParent(e,t)){var n=f(a,t);t in S||(S[t]=B(n.get())),void 0!==r&&n.set(r)}}var C,L={};function I(t){var e=p.name2id(t.split(\".\")[0]);return L[e]=1,e}for(var P in e){if(T.hasParent(e,P))throw new Error(\"cannot set \"+P+\" and a parent attribute simultaneously\");for(var z=f(a,P),O=e[P],D=z.parts.length-1;D>0&&\"string\"!=typeof z.parts[D];)D--;var R=z.parts[D],F=z.parts[D-1]+\".\"+R,j=z.parts.slice(0,D).join(\".\"),U=s(t.layout,j).get(),q=s(l,j).get(),H=z.get();if(void 0!==O){k[P]=O,S[P]=\"reverse\"===R?O:B(H);var G=h.getLayoutValObject(l,z.parts);if(G&&G.impliedEdits&&null!==O)for(var X in G.impliedEdits)E(o.relativeAttr(P,X),G.impliedEdits[X]);if(-1!==[\"width\",\"height\"].indexOf(P))if(O){E(\"autosize\",null);var J=\"height\"===P?\"width\":\"height\";E(J,l[J])}else l[P]=t._initialAutoSize[P];else if(\"autosize\"===P)E(\"width\",O?null:l.width),E(\"height\",O?null:l.height);else if(F.match(Z))I(F),s(l,j+\"._inputRange\").set(null);else if(F.match(W)){I(F),s(l,j+\"._inputRange\").set(null);var K=s(l,j).get();K._inputDomain&&(K._input.domain=K._inputDomain.slice())}else F.match(Y)&&s(l,j+\"._inputDomain\").set(null);if(\"type\"===R){C=U;var Q=\"linear\"===q.type&&\"log\"===O,tt=\"log\"===q.type&&\"linear\"===O;if(Q||tt){if(C&&C.range)if(q.autorange)Q&&(C.range=C.range[1]>C.range[0]?[1,2]:[2,1]);else{var et=C.range[0],rt=C.range[1];Q?(et<=0&&rt<=0&&E(j+\".autorange\",!0),et<=0?et=rt/1e6:rt<=0&&(rt=et/1e6),E(j+\".range[0]\",Math.log(et)/Math.LN10),E(j+\".range[1]\",Math.log(rt)/Math.LN10)):(E(j+\".range[0]\",Math.pow(10,et)),E(j+\".range[1]\",Math.pow(10,rt)))}else E(j+\".autorange\",!0);Array.isArray(l._subplots.polar)&&l._subplots.polar.length&&l[z.parts[0]]&&\"radialaxis\"===z.parts[1]&&delete l[z.parts[0]]._subplot.viewInitial[\"radialaxis.range\"],u.getComponentMethod(\"annotations\",\"convertCoords\")(t,q,O,E),u.getComponentMethod(\"images\",\"convertCoords\")(t,q,O,E)}else E(j+\".autorange\",!0),E(j+\".range\",null);s(l,j+\"._inputRange\").set(null)}else if(R.match(M)){var nt=s(l,P).get(),it=(O||{}).type;it&&\"-\"!==it||(it=\"linear\"),u.getComponentMethod(\"annotations\",\"convertCoords\")(t,nt,it,E),u.getComponentMethod(\"images\",\"convertCoords\")(t,nt,it,E)}var at=w.containerArrayMatch(P);if(at){r=at.array,n=at.index;var ot=at.property,st=G||{editType:\"calc\"};\"\"!==n&&\"\"===ot&&(w.isAddVal(O)?S[P]=null:w.isRemoveVal(O)?S[P]=(s(a,r).get()||[])[n]:o.warn(\"unrecognized full object value\",e)),A.update(b,st),y[r]||(y[r]={});var lt=y[r][n];lt||(lt=y[r][n]={}),lt[ot]=O,delete e[P]}else\"reverse\"===R?(U.range?U.range.reverse():(E(j+\".autorange\",!0),U.range=[1,0]),q.autorange?b.calc=!0:b.plot=!0):(\"dragmode\"===P&&(!1===O&&!1!==H||!1!==O&&!1===H)||l._has(\"scatter-like\")&&l._has(\"regl\")&&\"dragmode\"===P&&(\"lasso\"===O||\"select\"===O)&&\"lasso\"!==H&&\"select\"!==H||l._has(\"gl2d\")?b.plot=!0:G?A.update(b,G):b.calc=!0,z.set(O))}}for(r in y)w.applyContainerArrayChanges(t,f(a,r),y[r],b,f)||(b.plot=!0);for(var ct in L){var ut=(C=p.getFromId(t,ct))&&C._constraintGroup;if(ut)for(var ht in b.calc=!0,ut)L[ht]||(p.getFromId(t,ht)._constraintShrinkable=!0)}($(t)||e.height||e.width)&&(b.plot=!0);var ft=l.shapes;for(n=0;n<ft.length;n++)if(ft[n].showlegend){b.calc=!0;break}return(b.plot||b.calc)&&(b.layoutReplot=!0),{flags:b,rangesAltered:L,undoit:S,redoit:k,eventData:g}}function $(t){var e=t._fullLayout,r=e.width,n=e.height;return t.layout.autosize&&f.plotAutoSize(t,t.layout,e),e.width!==r||e.height!==n}function J(t,r,n,i){t=o.getGraphDiv(t),T.clearPromiseQueue(t),o.isPlainObject(r)||(r={}),o.isPlainObject(n)||(n={}),Object.keys(r).length&&(t.changed=!0),Object.keys(n).length&&(t.changed=!0);var a=T.coerceTraceIndices(t,i),s=U(t,o.extendFlat({},r),a),l=s.flags,u=X(t,o.extendFlat({},n)),h=u.flags;(l.calc||h.calc)&&(t.calcdata=void 0),l.clearAxisTypes&&T.clearAxisTypes(t,a,n);var p=[];h.layoutReplot?p.push(k.layoutReplot):l.fullReplot?p.push(e._doPlot):(p.push(f.previousPromises),H(t,h,u)||f.supplyDefaults(t),l.style&&p.push(k.doTraceStyle),(l.colorbars||h.colorbars)&&p.push(k.doColorBars),h.legend&&p.push(k.doLegend),h.layoutstyle&&p.push(k.layoutStyles),h.axrange&&G(p,u.rangesAltered),h.ticks&&p.push(k.doTicksRelayout),h.modebar&&p.push(k.doModeBar),h.camera&&p.push(k.doCamera),p.push(E)),p.push(f.rehover,f.redrag,f.reselect),c.add(t,J,[t,s.undoit,u.undoit,s.traces],J,[t,s.redoit,u.redoit,s.traces]);var d=o.syncOrAsync(p,t);return d&&d.then||(d=Promise.resolve(t)),d.then((function(){return t.emit(\"plotly_update\",{data:s.eventData,layout:u.eventData}),t}))}function K(t){return function(e){e._fullLayout._guiEditing=!0;var r=t.apply(null,arguments);return e._fullLayout._guiEditing=!1,r}}var Q=[{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:/^(map\\d*)\\.(center|zoom|bearing|pitch)/},{pattern:/^legend\\.(x|y)$/,attr:\"editrevision\"},{pattern:/^(shapes|annotations)/,attr:\"editrevision\"},{pattern:/^title\\.text$/,attr:\"editrevision\"}],tt=[{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 et(t,e){for(var r=0;r<e.length;r++){var n=e[r],i=t.match(n.pattern);if(i){var a=i[1]||\"\";return{head:a,tail:t.substr(a.length+1),attr:n.attr}}}}function rt(t,e){var r=s(e,t).get();if(void 0!==r)return r;var n=t.split(\".\");for(n.pop();n.length>1;)if(n.pop(),void 0!==(r=s(e,n.join(\".\")+\".uirevision\").get()))return r;return e.uirevision}function nt(t,e){for(var r=0;r<e.length;r++)if(e[r]._fullInput.uid===t)return r;return-1}function it(t,e,r){for(var n=0;n<e.length;n++)if(e[n].uid===t)return n;return!e[r]||e[r].uid?-1:r}function at(t,e){var r=o.isPlainObject(t),n=Array.isArray(t);return r||n?(r&&o.isPlainObject(e)||n&&Array.isArray(e))&&JSON.stringify(t)===JSON.stringify(e):t===e}function ot(t,e,r,n){var i,a,l,c=n.getValObject,u=n.flags,h=n.immutable,f=n.inArray,p=n.arrayIndex;function d(){var t=i.editType;f&&-1!==t.indexOf(\"arraydraw\")?o.pushUnique(u.arrays[f],p):(A.update(u,i),\"none\"!==t&&u.nChanges++,n.transition&&i.anim&&u.nChangesAnim++,(Z.test(l)||W.test(l))&&(u.rangesAltered[r[0]]=1),Y.test(l)&&s(e,\"_inputDomain\").set(null),\"datarevision\"===a&&(u.newDataRevision=1))}function m(t){return\"data_array\"===t.valType||t.arrayOk}for(a in t){if(u.calc&&!n.transition)return;var g=t[a],y=e[a],v=r.concat(a);if(l=v.join(\".\"),\"_\"!==a.charAt(0)&&\"function\"!=typeof g&&g!==y){if((\"tick0\"===a||\"dtick\"===a)&&\"geo\"!==r[0]){var x=e.tickmode;if(\"auto\"===x||\"array\"===x||!x)continue}if((\"range\"!==a||!e.autorange)&&(\"zmin\"!==a&&\"zmax\"!==a||\"contourcarpet\"!==e.type)&&(i=c(v))&&(!i._compareAsJSON||JSON.stringify(g)!==JSON.stringify(y))){var _,b=i.valType,w=m(i),T=Array.isArray(g),k=Array.isArray(y);if(T&&k){var M=\"_input_\"+a,S=t[M],E=e[M];if(Array.isArray(S)&&S===E)continue}if(void 0===y)w&&T?u.calc=!0:d();else if(i._isLinkedToArray){var C=[],L=!1;f||(u.arrays[a]=C);var I=Math.min(g.length,y.length),P=Math.max(g.length,y.length);if(I!==P){if(\"arraydraw\"!==i.editType){d();continue}L=!0}for(_=0;_<I;_++)ot(g[_],y[_],v.concat(_),o.extendFlat({inArray:a,arrayIndex:_},n));if(L)for(_=I;_<P;_++)C.push(_)}else!b&&o.isPlainObject(g)?ot(g,y,v,n):w?T&&k?(h&&(u.calc=!0),(h||n.newDataRevision)&&d()):T!==k?u.calc=!0:d():T&&k&&g.length===y.length&&String(g)===String(y)||d()}}}for(a in e)if(!(a in t)&&\"_\"!==a.charAt(0)&&\"function\"!=typeof e[a]){if(m(i=c(r.concat(a)))&&Array.isArray(e[a]))return void(u.calc=!0);d()}}function st(t,e){var r;for(r in t)if(\"_\"!==r.charAt(0)){var n=t[r],i=e[r];if(n!==i)if(o.isPlainObject(n)&&o.isPlainObject(i)){if(st(n,i))return!0}else{if(!Array.isArray(n)||!Array.isArray(i))return!0;if(n.length!==i.length)return!0;for(var a=0;a<n.length;a++)if(n[a]!==i[a]){if(!o.isPlainObject(n[a])||!o.isPlainObject(i[a]))return!0;if(st(n[a],i[a]))return!0}}}}function lt(t){var e=t._fullLayout,r=t.getBoundingClientRect();if(!o.equalDomRects(r,e._lastBBox)){var n=e._invTransform=o.inverseTransformMatrix(o.getFullTransformMatrix(t));e._invScaleX=Math.sqrt(n[0][0]*n[0][0]+n[0][1]*n[0][1]+n[0][2]*n[0][2]),e._invScaleY=Math.sqrt(n[1][0]*n[1][0]+n[1][1]*n[1][1]+n[1][2]*n[1][2]),e._lastBBox=r}}e.animate=function(t,e,r){if(t=o.getGraphDiv(t),!o.isPlotDiv(t))throw new Error(\"This element is not a Plotly plot: \"+t+\". It's likely that you've failed to create a plot before animating it. For more details, see https://plotly.com/javascript/animations/\");var n=t._transitionData;n._frameQueue||(n._frameQueue=[]);var i=(r=f.supplyAnimationDefaults(r)).transition,a=r.frame;function s(t){return Array.isArray(i)?t>=i.length?i[0]:i[t]:i}function l(t){return Array.isArray(a)?t>=a.length?a[0]:a[t]:a}function c(t,e){var r=0;return function(){if(t&&++r===e)return t()}}return void 0===n._frameWaitingCnt&&(n._frameWaitingCnt=0),new Promise((function(a,u){function h(){t.emit(\"plotly_animating\"),n._lastFrameAt=-1/0,n._timeToNext=0,n._runningTransitions=0,n._currentFrame=null;var e=function(){n._animationRaf=window.requestAnimationFrame(e),Date.now()-n._lastFrameAt>n._timeToNext&&function(){n._currentFrame&&n._currentFrame.onComplete&&n._currentFrame.onComplete();var e=n._currentFrame=n._frameQueue.shift();if(e){var r=e.name?e.name.toString():null;t._fullLayout._currentFrame=r,n._lastFrameAt=Date.now(),n._timeToNext=e.frameOpts.duration,f.transition(t,e.frame.data,e.frame.layout,T.coerceTraceIndices(t,e.frame.traces),e.frameOpts,e.transitionOpts).then((function(){e.onComplete&&e.onComplete()})),t.emit(\"plotly_animatingframe\",{name:r,frame:e.frame,animation:{frame:e.frameOpts,transition:e.transitionOpts}})}else t.emit(\"plotly_animated\"),window.cancelAnimationFrame(n._animationRaf),n._animationRaf=null}()};e()}var p,d,m=0;function g(t){return Array.isArray(i)?m>=i.length?t.transitionOpts=i[m]:t.transitionOpts=i[0]:t.transitionOpts=i,m++,t}var y=[],v=null==e,x=Array.isArray(e);if(v||x||!o.isPlainObject(e)){if(v||-1!==[\"string\",\"number\"].indexOf(typeof e))for(p=0;p<n._frames.length;p++)(d=n._frames[p])&&(v||String(d.group)===String(e))&&y.push({type:\"byname\",name:String(d.name),data:g({name:d.name})});else if(x)for(p=0;p<e.length;p++){var _=e[p];-1!==[\"number\",\"string\"].indexOf(typeof _)?(_=String(_),y.push({type:\"byname\",name:_,data:g({name:_})})):o.isPlainObject(_)&&y.push({type:\"object\",data:g(o.extendFlat({},_))})}}else y.push({type:\"object\",data:g(o.extendFlat({},e))});for(p=0;p<y.length;p++)if(\"byname\"===(d=y[p]).type&&!n._frameHash[d.data.name])return o.warn('animate failure: frame not found: \"'+d.data.name+'\"'),void u();-1!==[\"next\",\"immediate\"].indexOf(r.mode)&&function(){if(0!==n._frameQueue.length){for(;n._frameQueue.length;){var e=n._frameQueue.pop();e.onInterrupt&&e.onInterrupt()}t.emit(\"plotly_animationinterrupted\",[])}}(),\"reverse\"===r.direction&&y.reverse();var b=t._fullLayout._currentFrame;if(b&&r.fromcurrent){var w=-1;for(p=0;p<y.length;p++)if(\"byname\"===(d=y[p]).type&&d.name===b){w=p;break}if(w>0&&w<y.length-1){var k=[];for(p=0;p<y.length;p++)d=y[p],(\"byname\"!==y[p].type||p>w)&&k.push(d);y=k}}y.length>0?function(e){if(0!==e.length){for(var i=0;i<e.length;i++){var o;o=\"byname\"===e[i].type?f.computeFrame(t,e[i].name):e[i].data;var p=l(i),d=s(i);d.duration=Math.min(d.duration,p.duration);var m={frame:o,name:e[i].name,frameOpts:p,transitionOpts:d};i===e.length-1&&(m.onComplete=c(a,2),m.onInterrupt=u),n._frameQueue.push(m)}\"immediate\"===r.mode&&(n._lastFrameAt=-1/0),n._animationRaf||h()}}(y):(t.emit(\"plotly_animated\"),a())}))},e.addFrames=function(t,e,r){if(t=o.getGraphDiv(t),null==e)return Promise.resolve();if(!o.isPlotDiv(t))throw new Error(\"This element is not a Plotly plot: \"+t+\". It's likely that you've failed to create a plot before adding frames. For more details, see https://plotly.com/javascript/animations/\");var n,i,a,s,l=t._transitionData._frames,u=t._transitionData._frameHash;if(!Array.isArray(e))throw new Error(\"addFrames failure: frameList must be an Array of frame definitions\"+e);var h=l.length+2*e.length,p=[],d={};for(n=e.length-1;n>=0;n--)if(o.isPlainObject(e[n])){var m=e[n].name,g=(u[m]||d[m]||{}).name,y=e[n].name,v=u[g]||d[g];g&&y&&\"number\"==typeof y&&v&&S<5&&(S++,o.warn('addFrames: overwriting frame \"'+(u[g]||d[g]).name+'\" with a frame whose name of type \"number\" also equates to \"'+g+'\". This is valid but may potentially lead to unexpected behavior since all plotly.js frame names are stored internally as strings.'),5===S&&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.\")),d[m]={name:m},p.push({frame:f.supplyFrameDefaults(e[n]),index:r&&void 0!==r[n]&&null!==r[n]?r[n]:h+n})}p.sort((function(t,e){return t.index>e.index?-1:t.index<e.index?1:0}));var x=[],_=[],b=l.length;for(n=p.length-1;n>=0;n--){if(\"number\"==typeof(i=p[n].frame).name&&o.warn(\"Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings\"),!i.name)for(;u[i.name=\"frame \"+t._transitionData._counter++];);if(u[i.name]){for(a=0;a<l.length&&(l[a]||{}).name!==i.name;a++);x.push({type:\"replace\",index:a,value:i}),_.unshift({type:\"replace\",index:a,value:l[a]})}else s=Math.max(0,Math.min(p[n].index,b)),x.push({type:\"insert\",index:s,value:i}),_.unshift({type:\"delete\",index:s}),b++}var w=f.modifyFrames,T=f.modifyFrames,k=[t,_],A=[t,x];return c&&c.add(t,w,k,T,A),f.modifyFrames(t,x)},e.deleteFrames=function(t,e){if(t=o.getGraphDiv(t),!o.isPlotDiv(t))throw new Error(\"This element is not a Plotly plot: \"+t);var r,n,i=t._transitionData._frames,a=[],s=[];if(!e)for(e=[],r=0;r<i.length;r++)e.push(r);for((e=e.slice()).sort(),r=e.length-1;r>=0;r--)n=e[r],a.push({type:\"delete\",index:n}),s.unshift({type:\"insert\",index:n,value:i[n]});var l=f.modifyFrames,u=f.modifyFrames,h=[t,s],p=[t,a];return c&&c.add(t,l,h,u,p),f.modifyFrames(t,a)},e.addTraces=function t(r,n,i){r=o.getGraphDiv(r);var a,s,l=[],u=e.deleteTraces,h=t,f=[r,l],p=[r,n];for(function(t,e,r){var n,i;if(!Array.isArray(t.data))throw new Error(\"gd.data must be an array.\");if(void 0===e)throw new Error(\"traces must be defined.\");for(Array.isArray(e)||(e=[e]),n=0;n<e.length;n++)if(\"object\"!=typeof(i=e[n])||Array.isArray(i)||null===i)throw new Error(\"all values in traces array must be non-array objects\");if(void 0===r||Array.isArray(r)||(r=[r]),void 0!==r&&r.length!==e.length)throw new Error(\"if indices is specified, traces.length must equal indices.length\")}(r,n,i),Array.isArray(n)||(n=[n]),n=n.map((function(t){return o.extendFlat({},t)})),T.cleanData(n),a=0;a<n.length;a++)r.data.push(n[a]);for(a=0;a<n.length;a++)l.push(-n.length+a);if(void 0===i)return s=e.redraw(r),c.add(r,u,f,h,p),s;Array.isArray(i)||(i=[i]);try{O(r,l,i)}catch(t){throw r.data.splice(r.data.length-n.length,n.length),t}return c.startSequence(r),c.add(r,u,f,h,p),s=e.moveTraces(r,l,i),c.stopSequence(r),s},e.deleteTraces=function t(r,n){r=o.getGraphDiv(r);var i,a,s=[],l=e.addTraces,u=t,h=[r,s,n],f=[r,n];if(void 0===n)throw new Error(\"indices must be an integer or array of integers.\");for(Array.isArray(n)||(n=[n]),z(r,n,\"indices\"),(n=P(n,r.data.length-1)).sort(o.sorterDes),i=0;i<n.length;i+=1)a=r.data.splice(n[i],1)[0],s.push(a);var p=e.redraw(r);return c.add(r,l,h,u,f),p},e.extendTraces=function t(r,n,i,a){var s=D(r=o.getGraphDiv(r),n,i,a,(function(t,e,r){var n,i;if(o.isTypedArray(t))if(r<0){var a=new t.constructor(0),s=R(t,e);r<0?(n=s,i=a):(n=a,i=s)}else if(n=new t.constructor(r),i=new t.constructor(t.length+e.length-r),r===e.length)n.set(e),i.set(t);else if(r<e.length){var l=e.length-r;n.set(e.subarray(l)),i.set(t),i.set(e.subarray(0,l),t.length)}else{var c=r-e.length,u=t.length-c;n.set(t.subarray(u)),n.set(e,c),i.set(t.subarray(0,u))}else n=t.concat(e),i=r>=0&&r<n.length?n.splice(0,n.length-r):[];return[n,i]})),l=e.redraw(r),u=[r,s.update,i,s.maxPoints];return c.add(r,e.prependTraces,u,t,arguments),l},e.moveTraces=function t(r,n,i){var a,s=[],l=[],u=t,h=t,f=[r=o.getGraphDiv(r),i,n],p=[r,n,i];if(O(r,n,i),n=Array.isArray(n)?n:[n],void 0===i)for(i=[],a=0;a<n.length;a++)i.push(-n.length+a);for(i=Array.isArray(i)?i:[i],n=P(n,r.data.length-1),i=P(i,r.data.length-1),a=0;a<r.data.length;a++)-1===n.indexOf(a)&&s.push(r.data[a]);for(a=0;a<n.length;a++)l.push({newIndex:i[a],trace:r.data[n[a]]});for(l.sort((function(t,e){return t.newIndex-e.newIndex})),a=0;a<l.length;a+=1)s.splice(l[a].newIndex,0,l[a].trace);r.data=s;var d=e.redraw(r);return c.add(r,u,f,h,p),d},e.prependTraces=function t(r,n,i,a){var s=D(r=o.getGraphDiv(r),n,i,a,(function(t,e,r){var n,i;if(o.isTypedArray(t))if(r<=0){var a=new t.constructor(0),s=R(e,t);r<0?(n=s,i=a):(n=a,i=s)}else if(n=new t.constructor(r),i=new t.constructor(t.length+e.length-r),r===e.length)n.set(e),i.set(t);else if(r<e.length){var l=e.length-r;n.set(e.subarray(0,l)),i.set(e.subarray(l)),i.set(t,l)}else{var c=r-e.length;n.set(e),n.set(t.subarray(0,c),e.length),i.set(t.subarray(c))}else n=e.concat(t),i=r>=0&&r<n.length?n.splice(r,n.length):[];return[n,i]})),l=e.redraw(r),u=[r,s.update,i,s.maxPoints];return c.add(r,e.extendTraces,u,t,arguments),l},e.newPlot=function(t,r,n,i){return t=o.getGraphDiv(t),f.cleanPlot([],{},t._fullData||[],t._fullLayout||{}),f.purge(t),e._doPlot(t,r,n,i)},e._doPlot=function(t,r,i,a){var s;if(t=o.getGraphDiv(t),l.init(t),o.isPlainObject(r)){var c=r;r=c.data,i=c.layout,a=c.config,s=c.frames}if(!1===l.triggerHandler(t,\"plotly_beforeplot\",[r,i,a]))return Promise.reject();r||i||o.isPlotDiv(t)||o.warn(\"Calling _doPlot as if redrawing but this container doesn't yet have a plot.\",t),I(t,a),i||(i={}),n.select(t).classed(\"js-plotly-plot\",!0),g.makeTester(),Array.isArray(t._promises)||(t._promises=[]);var h=0===(t.data||[]).length&&Array.isArray(r);Array.isArray(r)&&(T.cleanData(r),h?t.data=r:t.data.push.apply(t.data,r),t.empty=!1),t.layout&&!h||(t.layout=T.cleanLayout(i)),f.supplyDefaults(t);var d=t._fullLayout,m=d._has(\"cartesian\");d._replotting=!0,(h||d._shouldCreateBgLayer)&&(function(t){var e=n.select(t),r=t._fullLayout;if(r._calcInverseTransform=lt,r._calcInverseTransform(t),r._container=e.selectAll(\".plot-container\").data([0]),r._container.enter().insert(\"div\",\":first-child\").classed(\"plot-container\",!0).classed(\"plotly\",!0),r._paperdiv=r._container.selectAll(\".svg-container\").data([0]),r._paperdiv.enter().append(\"div\").classed(\"user-select-none\",!0).classed(\"svg-container\",!0).style(\"position\",\"relative\"),r._glcontainer=r._paperdiv.selectAll(\".gl-container\").data([{}]),r._glcontainer.enter().append(\"div\").classed(\"gl-container\",!0),r._paperdiv.selectAll(\".main-svg\").remove(),r._paperdiv.select(\".modebar-container\").remove(),r._paper=r._paperdiv.insert(\"svg\",\":first-child\").classed(\"main-svg\",!0),r._toppaper=r._paperdiv.append(\"svg\").classed(\"main-svg\",!0),r._modebardiv=r._paperdiv.append(\"div\"),delete r._modeBar,r._hoverpaper=r._paperdiv.append(\"svg\").classed(\"main-svg\",!0),!r._uid){var i={};n.selectAll(\"defs\").each((function(){this.id&&(i[this.id.split(\"-\")[1]]=1)})),r._uid=o.randstr(i)}r._paperdiv.selectAll(\".main-svg\").attr(x.svgAttrs),r._defs=r._paper.append(\"defs\").attr(\"id\",\"defs-\"+r._uid),r._clips=r._defs.append(\"g\").classed(\"clips\",!0),r._topdefs=r._toppaper.append(\"defs\").attr(\"id\",\"topdefs-\"+r._uid),r._topclips=r._topdefs.append(\"g\").classed(\"clips\",!0),r._bgLayer=r._paper.append(\"g\").classed(\"bglayer\",!0),r._draggers=r._paper.append(\"g\").classed(\"draglayer\",!0);var a=r._paper.append(\"g\").classed(\"layer-below\",!0);r._imageLowerLayer=a.append(\"g\").classed(\"imagelayer\",!0),r._shapeLowerLayer=a.append(\"g\").classed(\"shapelayer\",!0),r._cartesianlayer=r._paper.append(\"g\").classed(\"cartesianlayer\",!0),r._polarlayer=r._paper.append(\"g\").classed(\"polarlayer\",!0),r._smithlayer=r._paper.append(\"g\").classed(\"smithlayer\",!0),r._ternarylayer=r._paper.append(\"g\").classed(\"ternarylayer\",!0),r._geolayer=r._paper.append(\"g\").classed(\"geolayer\",!0),r._funnelarealayer=r._paper.append(\"g\").classed(\"funnelarealayer\",!0),r._pielayer=r._paper.append(\"g\").classed(\"pielayer\",!0),r._iciclelayer=r._paper.append(\"g\").classed(\"iciclelayer\",!0),r._treemaplayer=r._paper.append(\"g\").classed(\"treemaplayer\",!0),r._sunburstlayer=r._paper.append(\"g\").classed(\"sunburstlayer\",!0),r._indicatorlayer=r._toppaper.append(\"g\").classed(\"indicatorlayer\",!0),r._glimages=r._paper.append(\"g\").classed(\"glimages\",!0);var s=r._toppaper.append(\"g\").classed(\"layer-above\",!0);r._imageUpperLayer=s.append(\"g\").classed(\"imagelayer\",!0),r._shapeUpperLayer=s.append(\"g\").classed(\"shapelayer\",!0),r._selectionLayer=r._toppaper.append(\"g\").classed(\"selectionlayer\",!0),r._infolayer=r._toppaper.append(\"g\").classed(\"infolayer\",!0),r._menulayer=r._toppaper.append(\"g\").classed(\"menulayer\",!0),r._zoomlayer=r._toppaper.append(\"g\").classed(\"zoomlayer\",!0),r._hoverlayer=r._hoverpaper.append(\"g\").classed(\"hoverlayer\",!0),r._modebardiv.classed(\"modebar-container\",!0).style(\"position\",\"absolute\").style(\"top\",\"0px\").style(\"right\",\"0px\"),t.emit(\"plotly_framework\")}(t),d._shouldCreateBgLayer&&delete d._shouldCreateBgLayer),g.initGradients(t),g.initPatterns(t),h&&p.saveShowSpikeInitial(t);var y=!t.calcdata||t.calcdata.length!==(t._fullData||[]).length;y&&f.doCalcdata(t);for(var _=0;_<t.calcdata.length;_++)t.calcdata[_][0].trace=t._fullData[_];t._context.responsive?t._responsiveChartHandler||(t._responsiveChartHandler=function(){o.isHidden(t)||f.resize(t)},window.addEventListener(\"resize\",t._responsiveChartHandler)):o.clearResponsive(t);var b=o.extendFlat({},d._size),w=0;function A(){if(f.clearAutoMarginIds(t),k.drawMarginPushers(t),p.allowAutoMargin(t),t._fullLayout.title.text&&t._fullLayout.title.automargin&&f.allowAutoMargin(t,\"title.automargin\"),d._has(\"pie\"))for(var e=t._fullData,r=0;r<e.length;r++){var n=e[r];\"pie\"===n.type&&n.automargin&&f.allowAutoMargin(t,\"pie.\"+n.uid+\".automargin\")}return f.doAutoMargin(t),f.previousPromises(t)}function M(){t._transitioning||(k.doAutoRangeAndConstraints(t),h&&p.saveRangeInitial(t),u.getComponentMethod(\"rangeslider\",\"calcAutorange\")(t))}var S=[f.previousPromises,function(){if(s)return e.addFrames(t,s)},function e(){for(var r=d._basePlotModules,n=0;n<r.length;n++)r[n].drawFramework&&r[n].drawFramework(t);!d._glcanvas&&d._has(\"gl\")&&(d._glcanvas=d._glcontainer.selectAll(\".gl-canvas\").data([{key:\"contextLayer\",context:!0,pick:!1},{key:\"focusLayer\",context:!1,pick:!1},{key:\"pickLayer\",context:!1,pick:!0}],(function(t){return t.key})),d._glcanvas.enter().append(\"canvas\").attr(\"class\",(function(t){return\"gl-canvas gl-canvas-\"+t.key.replace(\"Layer\",\"\")})).style({position:\"absolute\",top:0,left:0,overflow:\"visible\",\"pointer-events\":\"none\"}));var i=t._context.plotGlPixelRatio;if(d._glcanvas){d._glcanvas.attr(\"width\",d.width*i).attr(\"height\",d.height*i).style(\"width\",d.width+\"px\").style(\"height\",d.height+\"px\");var a=d._glcanvas.data()[0].regl;if(a&&(Math.floor(d.width*i)!==a._gl.drawingBufferWidth||Math.floor(d.height*i)!==a._gl.drawingBufferHeight)){var s=\"WebGL context buffer and canvas dimensions do not match due to browser/WebGL bug.\";if(!w)return o.log(s+\" Clearing graph and plotting again.\"),f.cleanPlot([],{},t._fullData,d),f.supplyDefaults(t),d=t._fullLayout,f.doCalcdata(t),w++,e();o.error(s)}}return\"h\"===d.modebar.orientation?d._modebardiv.style(\"height\",null).style(\"width\",\"100%\"):d._modebardiv.style(\"width\",null).style(\"height\",d.height+\"px\"),f.previousPromises(t)},A,function(){if(f.didMarginChange(b,d._size))return o.syncOrAsync([A,k.layoutStyles],t)}];m&&S.push((function(){if(y)return o.syncOrAsync([u.getComponentMethod(\"shapes\",\"calcAutorange\"),u.getComponentMethod(\"annotations\",\"calcAutorange\"),M],t);M()})),S.push(k.layoutStyles),m&&S.push((function(){return p.draw(t,h?\"\":\"redraw\")}),(function(t){var e=t._fullLayout._insideTickLabelsUpdaterange;if(e)return t._fullLayout._insideTickLabelsUpdaterange=void 0,q(t,e).then((function(){p.saveRangeInitial(t,!0)}))})),S.push(k.drawData,k.finalDraw,v,f.addLinks,f.rehover,f.redrag,f.reselect,f.doAutoMargin,f.previousPromises);var C=o.syncOrAsync(S,t);return C&&C.then||(C=Promise.resolve()),C.then((function(){return E(t),t}))},e.purge=function(t){var e=(t=o.getGraphDiv(t))._fullLayout||{},r=t._fullData||[];return f.cleanPlot([],{},r,e),f.purge(t),l.purge(t),e._container&&e._container.remove(),delete t._context,t},e.react=function(t,r,n,i){var a,l;t=o.getGraphDiv(t),T.clearPromiseQueue(t);var c=t._fullData,p=t._fullLayout;if(o.isPlotDiv(t)&&c&&p){if(o.isPlainObject(r)){var d=r;r=d.data,n=d.layout,i=d.config,a=d.frames}var m=!1;if(i){var g=o.extendDeep({},t._context);t._context=void 0,I(t,i),m=st(g,t._context)}t.data=r||[],T.cleanData(t.data),t.layout=n||{},T.cleanLayout(t.layout),function(t,e,r,n){var i,a,l,c,u,h,f,p,d,m,g=n._preGUI,y=[],v={},x={};for(i in g){if(u=et(i,Q)){if(d=u.head,m=u.tail,a=u.attr||d+\".uirevision\",(c=(l=s(n,a).get())&&rt(a,e))&&c===l){if(null===(h=g[i])&&(h=void 0),at(p=(f=s(e,i)).get(),h)){void 0===p&&\"autorange\"===m&&y.push(d),f.set(B(s(n,i).get()));continue}if(\"autorange\"===m||\"range[\"===m.substr(0,6)){var _=g[d+\".range[0]\"],b=g[d+\".range[1]\"],w=g[d+\".autorange\"];if(w||null===w&&null===_&&null===b){if(!(d in v)){var T=s(e,d).get();v[d]=T&&(T.autorange||!1!==T.autorange&&(!T.range||2!==T.range.length))}if(v[d]){f.set(B(s(n,i).get()));continue}}}}}else o.warn(\"unrecognized GUI edit: \"+i);delete g[i],u&&\"range[\"===u.tail.substr(0,6)&&(x[u.head]=1)}for(var k=0;k<y.length;k++){var A=y[k];if(x[A]){var M=s(e,A).get();M&&delete M.autorange}}var S=n._tracePreGUI;for(var E in S){var C,L=S[E],I=null;for(i in L){if(!I){var P=nt(E,r);if(P<0){delete S[E];break}var z=it(E,t,(C=r[P]._fullInput).index);if(z<0){delete S[E];break}I=t[z]}if(u=et(i,tt)){if(u.attr?c=(l=s(n,u.attr).get())&&rt(u.attr,e):(l=C.uirevision,void 0===(c=I.uirevision)&&(c=e.uirevision)),c&&c===l&&(null===(h=L[i])&&(h=void 0),at(p=(f=s(I,i)).get(),h))){f.set(B(s(C,i).get()));continue}}else o.warn(\"unrecognized GUI edit: \"+i+\" in trace uid \"+E);delete L[i]}}}(t.data,t.layout,c,p),f.supplyDefaults(t,{skipUpdateCalc:!0});var y=t._fullData,v=t._fullLayout,x=void 0===v.datarevision,_=v.transition,b=function(t,e,r,n,i){var a=A.layoutFlags();return a.arrays={},a.rangesAltered={},a.nChanges=0,a.nChangesAnim=0,ot(e,r,[],{getValObject:function(t){return h.getLayoutValObject(r,t)},flags:a,immutable:n,transition:i,gd:t}),(a.plot||a.calc)&&(a.layoutReplot=!0),i&&a.nChanges&&a.nChangesAnim&&(a.anim=a.nChanges===a.nChangesAnim?\"all\":\"some\"),a}(t,p,v,x,_),w=b.newDataRevision,M=function(t,e,r,n,i,a){var o=e.length===r.length;if(!i&&!o)return{fullReplot:!0,calc:!0};var s,l,c=A.traceFlags();c.arrays={},c.nChanges=0,c.nChangesAnim=0;var u={getValObject:function(t){var e=h.getTraceValObject(l,t);return!l._module.animatable&&e.anim&&(e.anim=!1),e},flags:c,immutable:n,transition:i,newDataRevision:a,gd:t},p={};for(s=0;s<e.length;s++)if(r[s]){if(l=r[s]._fullInput,f.hasMakesDataTransform(l)&&(l=r[s]),p[l.uid])continue;p[l.uid]=1,ot(e[s]._fullInput,l,[],u)}return(c.calc||c.plot)&&(c.fullReplot=!0),i&&c.nChanges&&c.nChangesAnim&&(c.anim=c.nChanges===c.nChangesAnim&&o?\"all\":\"some\"),c}(t,c,y,x,_,w);if($(t)&&(b.layoutReplot=!0),M.calc||b.calc){t.calcdata=void 0;for(var S=Object.getOwnPropertyNames(v),C=0;C<S.length;C++){var L=S[C],P=L.substring(0,5);if(\"xaxis\"===P||\"yaxis\"===P){var z=v[L]._emptyCategories;z&&z()}}}else f.supplyDefaultsUpdateCalc(t.calcdata,y);var O=[];if(a&&(t._transitionData={},f.createTransitionData(t),O.push((function(){return e.addFrames(t,a)}))),v.transition&&!m&&(M.anim||b.anim))b.ticks&&O.push(k.doTicksRelayout),f.doCalcdata(t),k.doAutoRangeAndConstraints(t),O.push((function(){return f.transitionFromReact(t,M,b,p)}));else if(M.fullReplot||b.layoutReplot||m)t._fullLayout._skipDefaults=!0,O.push(e._doPlot);else{for(var D in b.arrays){var R=b.arrays[D];if(R.length){var F=u.getComponentMethod(D,\"drawOne\");if(F!==o.noop)for(var N=0;N<R.length;N++)F(t,R[N]);else{var j=u.getComponentMethod(D,\"draw\");if(j===o.noop)throw new Error(\"cannot draw components: \"+D);j(t)}}}O.push(f.previousPromises),M.style&&O.push(k.doTraceStyle),(M.colorbars||b.colorbars)&&O.push(k.doColorBars),b.legend&&O.push(k.doLegend),b.layoutstyle&&O.push(k.layoutStyles),b.axrange&&G(O),b.ticks&&O.push(k.doTicksRelayout),b.modebar&&O.push(k.doModeBar),b.camera&&O.push(k.doCamera),O.push(E)}O.push(f.rehover,f.redrag,f.reselect),(l=o.syncOrAsync(O,t))&&l.then||(l=Promise.resolve(t))}else l=e.newPlot(t,r,n,i);return l.then((function(){return t.emit(\"plotly_react\",{data:r,layout:n}),t}))},e.redraw=function(t){if(t=o.getGraphDiv(t),!o.isPlotDiv(t))throw new Error(\"This element is not a Plotly plot: \"+t);return T.cleanData(t.data),T.cleanLayout(t.layout),t.calcdata=void 0,e._doPlot(t).then((function(){return t.emit(\"plotly_redraw\"),t}))},e.relayout=q,e.restyle=F,e.setPlotConfig=function(t){return o.extendFlat(b,t)},e.update=J,e._guiRelayout=K(q),e._guiRestyle=K(F),e._guiUpdate=K(J),e._storeDirectGUIEdit=function(t,e,r){for(var n in r)j(n,s(t,n).get(),r[n],e)}},24452:function(t){\"use strict\";var e={staticPlot:{valType:\"boolean\",dflt:!1},typesetMath:{valType:\"boolean\",dflt:!0},plotlyServerURL:{valType:\"string\",dflt:\"\"},editable:{valType:\"boolean\",dflt:!1},edits:{annotationPosition:{valType:\"boolean\",dflt:!1},annotationTail:{valType:\"boolean\",dflt:!1},annotationText:{valType:\"boolean\",dflt:!1},axisTitleText:{valType:\"boolean\",dflt:!1},colorbarPosition:{valType:\"boolean\",dflt:!1},colorbarTitleText:{valType:\"boolean\",dflt:!1},legendPosition:{valType:\"boolean\",dflt:!1},legendText:{valType:\"boolean\",dflt:!1},shapePosition:{valType:\"boolean\",dflt:!1},titleText:{valType:\"boolean\",dflt:!1}},editSelection:{valType:\"boolean\",dflt:!0},autosizable:{valType:\"boolean\",dflt:!1},responsive:{valType:\"boolean\",dflt:!1},fillFrame:{valType:\"boolean\",dflt:!1},frameMargins:{valType:\"number\",dflt:0,min:0,max:.5},scrollZoom:{valType:\"flaglist\",flags:[\"cartesian\",\"gl3d\",\"geo\",\"mapbox\",\"map\"],extras:[!0,!1],dflt:\"gl3d+geo+map\"},doubleClick:{valType:\"enumerated\",values:[!1,\"reset\",\"autosize\",\"reset+autosize\"],dflt:\"reset+autosize\"},doubleClickDelay:{valType:\"number\",dflt:300,min:0},showAxisDragHandles:{valType:\"boolean\",dflt:!0},showAxisRangeEntryBoxes:{valType:\"boolean\",dflt:!0},showTips:{valType:\"boolean\",dflt:!0},showLink:{valType:\"boolean\",dflt:!1},linkText:{valType:\"string\",dflt:\"Edit chart\",noBlank:!0},sendData:{valType:\"boolean\",dflt:!0},showSources:{valType:\"any\",dflt:!1},displayModeBar:{valType:\"enumerated\",values:[\"hover\",!0,!1],dflt:\"hover\"},showSendToCloud:{valType:\"boolean\",dflt:!1},showEditInChartStudio:{valType:\"boolean\",dflt:!1},modeBarButtonsToRemove:{valType:\"any\",dflt:[]},modeBarButtonsToAdd:{valType:\"any\",dflt:[]},modeBarButtons:{valType:\"any\",dflt:!1},toImageButtonOptions:{valType:\"any\",dflt:{}},displaylogo:{valType:\"boolean\",dflt:!0},watermark:{valType:\"boolean\",dflt:!1},plotGlPixelRatio:{valType:\"number\",dflt:2,min:1,max:4},setBackground:{valType:\"any\",dflt:\"transparent\"},topojsonURL:{valType:\"string\",noBlank:!0,dflt:\"https://cdn.plot.ly/\"},mapboxAccessToken:{valType:\"string\",dflt:null},logging:{valType:\"integer\",min:0,max:2,dflt:1},notifyOnLogging:{valType:\"integer\",min:0,max:2,dflt:0},queueLength:{valType:\"integer\",min:0,dflt:0},globalTransforms:{valType:\"any\",dflt:[]},locale:{valType:\"string\",dflt:\"en-US\"},locales:{valType:\"any\",dflt:{}}},r={};!function t(e,r){for(var n in e){var i=e[n];i.valType?r[n]=i.dflt:(r[n]||(r[n]={}),t(i,r[n]))}}(e,r),t.exports={configAttributes:e,dfltConfig:r}},57297:function(t,e,r){\"use strict\";var n=r(33626),i=r(34809),a=r(9829),o=r(6704),s=r(58935),l=r(49722),c=r(24452).configAttributes,u=r(13582),h=i.extendDeepAll,f=i.isPlainObject,p=i.isArrayOrTypedArray,d=i.nestedProperty,m=i.valObjectMeta,g=\"_isSubplotObj\",y=\"_isLinkedToArray\",v=\"_deprecated\",x=[g,y,\"_arrayAttrRegexps\",v];function _(t,e,r){if(!t)return!1;if(t._isLinkedToArray)if(b(e[r]))r++;else if(r<e.length)return!1;for(;r<e.length;r++){var n=t[e[r]];if(!f(n))break;if(t=n,r===e.length-1)break;if(t._isLinkedToArray){if(!b(e[++r]))return!1}else if(\"info_array\"===t.valType){var i=e[++r];if(!b(i))return!1;var a=t.items;if(Array.isArray(a)){if(i>=a.length)return!1;if(2===t.dimensions){if(r++,e.length===r)return t;var o=e[r];if(!b(o))return!1;t=a[i][o]}else t=a[i]}else t=a}}return t}function b(t){return t===Math.round(t)&&t>=0}function w(){var t,e,r={};for(t in h(r,o),n.subplotsRegistry)if((e=n.subplotsRegistry[t]).layoutAttributes)if(Array.isArray(e.attr))for(var i=0;i<e.attr.length;i++)k(r,e,e.attr[i]);else k(r,e,\"subplot\"===e.attr?e.name:e.attr);for(t in n.componentsRegistry){var a=(e=n.componentsRegistry[t]).schema;if(a&&(a.subplots||a.layout)){var s=a.subplots;if(s&&s.xaxis&&!s.yaxis)for(var l in s.xaxis)delete r.yaxis[l];delete r.xaxis.shift,delete r.xaxis.autoshift}else\"colorscale\"===e.name?h(r,e.layoutAttributes):e.layoutAttributes&&A(r,e.layoutAttributes,e.name)}return{layoutAttributes:T(r)}}function T(t){return function(t){e.crawl(t,(function(t,r,n){e.isValObject(t)?!0!==t.arrayOk&&\"data_array\"!==t.valType||(n[r+\"src\"]={valType:\"string\",editType:\"none\"}):f(t)&&(t.role=\"object\")}))}(t),function(t){e.crawl(t,(function(t,e,r){if(t){var n=t[y];n&&(delete t[y],r[e]={items:{}},r[e].items[n]=t,r[e].role=\"object\")}}))}(t),function(t){!function t(e){for(var r in e)if(f(e[r]))t(e[r]);else if(Array.isArray(e[r]))for(var n=0;n<e[r].length;n++)t(e[r][n]);else e[r]instanceof RegExp&&(e[r]=e[r].toString())}(t)}(t),t}function k(t,e,r){var n=d(t,r),i=h({},e.layoutAttributes);i[g]=!0,n.set(i)}function A(t,e,r){var n=d(t,r);n.set(h(n.get()||{},e))}e.IS_SUBPLOT_OBJ=g,e.IS_LINKED_TO_ARRAY=y,e.DEPRECATED=v,e.UNDERSCORE_ATTRS=x,e.get=function(){var t={};n.allTypes.forEach((function(r){t[r]=function(t){var r,i;i=(r=n.modules[t]._module).basePlotModule;var o={type:null},s=h({},a),l=h({},r.attributes);e.crawl(l,(function(t,e,r,n,i){d(s,i).set(void 0),void 0===t&&d(l,i).set(void 0)})),h(o,s),n.traceIs(t,\"noOpacity\")&&delete o.opacity,n.traceIs(t,\"showLegend\")||(delete o.showlegend,delete o.legendgroup),n.traceIs(t,\"noHover\")&&(delete o.hoverinfo,delete o.hoverlabel),r.selectPoints||delete o.selectedpoints,h(o,l),i.attributes&&h(o,i.attributes),o.type=t;var c={meta:r.meta||{},categories:r.categories||{},animatable:Boolean(r.animatable),type:t,attributes:T(o)};if(r.layoutAttributes){var u={};h(u,r.layoutAttributes),c.layoutAttributes=T(u)}return r.animatable||e.crawl(c,(function(t){e.isValObject(t)&&\"anim\"in t&&delete t.anim})),c}(r)}));var r,i={};return Object.keys(n.transformsRegistry).forEach((function(t){i[t]=function(t){var e=n.transformsRegistry[t],r=h({},e.attributes);return Object.keys(n.componentsRegistry).forEach((function(e){var i=n.componentsRegistry[e];i.schema&&i.schema.transforms&&i.schema.transforms[t]&&Object.keys(i.schema.transforms[t]).forEach((function(e){A(r,i.schema.transforms[t][e],e)}))})),{attributes:T(r)}}(t)})),{defs:{valObjects:m,metaKeys:x.concat([\"description\",\"role\",\"editType\",\"impliedEdits\"]),editType:{traces:u.traces,layout:u.layout},impliedEdits:{}},traces:t,layout:w(),transforms:i,frames:(r={frames:h({},s)},T(r),r.frames),animation:T(l),config:T(c)}},e.crawl=function(t,r,n,i){var a=n||0;i=i||\"\",Object.keys(t).forEach((function(n){var o=t[n];if(-1===x.indexOf(n)){var s=(i?i+\".\":\"\")+n;r(o,n,t,a,s),e.isValObject(o)||f(o)&&\"impliedEdits\"!==n&&e.crawl(o,r,a+1,s)}}))},e.isValObject=function(t){return t&&void 0!==t.valType},e.findArrayAttributes=function(t){var r,n,i=[],o=[],s=[];function l(t,e,n,i){o=o.slice(0,i).concat([e]),s=s.slice(0,i).concat([t&&t._isLinkedToArray]),t&&(\"data_array\"===t.valType||!0===t.arrayOk)&&(\"colorbar\"!==o[i-1]||\"ticktext\"!==e&&\"tickvals\"!==e)&&c(r,0,\"\")}function c(t,e,r){var a=t[o[e]],l=r+o[e];if(e===o.length-1)p(a)&&i.push(n+l);else if(s[e]){if(Array.isArray(a))for(var u=0;u<a.length;u++)f(a[u])&&c(a[u],e+1,l+\"[\"+u+\"].\")}else f(a)&&c(a,e+1,l+\".\")}r=t,n=\"\",e.crawl(a,l),t._module&&t._module.attributes&&e.crawl(t._module.attributes,l);var u=t.transforms;if(u)for(var h=0;h<u.length;h++){var d=u[h],m=d._module;m&&(n=\"transforms[\"+h+\"].\",r=d,e.crawl(m.attributes,l))}return i},e.getTraceValObject=function(t,e){var r,i,o=e[0],s=1;if(\"transforms\"===o){if(1===e.length)return a.transforms;var l=t.transforms;if(!Array.isArray(l)||!l.length)return!1;var c=e[1];if(!b(c)||c>=l.length)return!1;i=(r=(n.transformsRegistry[l[c].type]||{}).attributes)&&r[e[2]],s=3}else{var u=t._module;if(u||(u=(n.modules[t.type||a.type.dflt]||{})._module),!u)return!1;if(!(i=(r=u.attributes)&&r[o])){var h=u.basePlotModule;h&&h.attributes&&(i=h.attributes[o])}i||(i=a[o])}return _(i,e,s)},e.getLayoutValObject=function(t,e){var r=function(t,e){var r,i,a,s,l=t._basePlotModules;if(l){var c;for(r=0;r<l.length;r++){if((a=l[r]).attrRegex&&a.attrRegex.test(e)){if(a.layoutAttrOverrides)return a.layoutAttrOverrides;!c&&a.layoutAttributes&&(c=a.layoutAttributes)}var u=a.baseLayoutAttrOverrides;if(u&&e in u)return u[e]}if(c)return c}var h=t._modules;if(h)for(r=0;r<h.length;r++)if((s=h[r].layoutAttributes)&&e in s)return s[e];for(i in n.componentsRegistry){if(\"colorscale\"===(a=n.componentsRegistry[i]).name&&0===e.indexOf(\"coloraxis\"))return a.layoutAttributes[e];if(!a.schema&&e===a.name)return a.layoutAttributes}return e in o&&o[e]}(t,e[0]);return _(r,e,1)}},78032:function(t,e,r){\"use strict\";var n=r(34809),i=r(9829),a=\"templateitemname\",o={name:{valType:\"string\",editType:\"none\"}};function s(t){return t&&\"string\"==typeof t}function l(t){var e=t.length-1;return\"s\"!==t.charAt(e)&&n.warn(\"bad argument to arrayDefaultKey: \"+t),t.substr(0,t.length-1)+\"defaults\"}o[a]={valType:\"string\",editType:\"calc\"},e.templatedArray=function(t,e){return e._isLinkedToArray=t,e.name=o.name,e[a]=o[a],e},e.traceTemplater=function(t){var e,r,a={};for(e in t)r=t[e],Array.isArray(r)&&r.length&&(a[e]=0);return{newTrace:function(o){var s={type:e=n.coerce(o,{},i,\"type\"),_template:null};if(e in a){r=t[e];var l=a[e]%r.length;a[e]++,s._template=r[l]}return s}}},e.newContainer=function(t,e,r){var i=t._template,a=i&&(i[e]||r&&i[r]);return n.isPlainObject(a)||(a=null),t[e]={_template:a}},e.arrayTemplater=function(t,e,r){var n=t._template,i=n&&n[l(e)],o=n&&n[e];Array.isArray(o)&&o.length||(o=[]);var c={};return{newItem:function(t){var e={name:t.name,_input:t},n=e[a]=t[a];if(!s(n))return e._template=i,e;for(var l=0;l<o.length;l++){var u=o[l];if(u.name===n)return c[n]=1,e._template=u,e}return e[r]=t[r]||!1,e._template=!1,e},defaultItems:function(){for(var t=[],e=0;e<o.length;e++){var r=o[e],n=r.name;if(s(n)&&!c[n]){var i={_template:r,name:n,_input:{_templateitemname:n}};i[a]=r[a],t.push(i),c[n]=1}}return t}}},e.arrayDefaultKey=l,e.arrayEditor=function(t,e,r){var i=(n.nestedProperty(t,e).get()||[]).length,o=r._index,s=o>=i&&(r._input||{})._templateitemname;s&&(o=i);var l,c=e+\"[\"+o+\"]\";function u(){l={},s&&(l[c]={},l[c][a]=s)}function h(t,e){s?n.nestedProperty(l[c],t).set(e):l[c+\".\"+t]=e}function f(){var t=l;return u(),t}return u(),{modifyBase:function(t,e){l[t]=e},modifyItem:h,getUpdateObj:f,applyUpdate:function(e,r){e&&h(e,r);var i=f();for(var a in i)n.nestedProperty(t,a).set(i[a])}}}},71817:function(t,e,r){\"use strict\";var n=r(45568),i=r(33626),a=r(44122),o=r(34809),s=r(30635),l=r(34823),c=r(78766),u=r(62203),h=r(17240),f=r(95433),p=r(29714),d=r(4530),m=r(84391),g=m.enforce,y=m.clean,v=r(32919).doAutoRange,x=\"start\",_=r(54826).zindexSeparator;function b(t,e,r){for(var n=0;n<r.length;n++){var i=r[n][0],a=r[n][1];if(!(i[0]>=t[1]||i[1]<=t[0])&&a[0]<e[1]&&a[1]>e[0])return!0}return!1}function w(t){var r,i,s,l,h,m,g=t._fullLayout,y=g._size,v=y.p,x=p.list(t,\"\",!0);if(g._paperdiv.style({width:t._context.responsive&&g.autosize&&!t._context._hasZeroWidth&&!t.layout.width?\"100%\":g.width+\"px\",height:t._context.responsive&&g.autosize&&!t._context._hasZeroHeight&&!t.layout.height?\"100%\":g.height+\"px\"}).selectAll(\".main-svg\").call(u.setSize,g.width,g.height),t._context.setBackground(t,g.paper_bgcolor),e.drawMainTitle(t),f.manage(t),!g._has(\"cartesian\"))return a.previousPromises(t);function w(t,e,r){var n=t._lw/2;return\"x\"===t._id.charAt(0)?e?\"top\"===r?e._offset-v-n:e._offset+e._length+v+n:y.t+y.h*(1-(t.position||0))+n%1:e?\"right\"===r?e._offset+e._length+v+n:e._offset-v-n:y.l+y.w*(t.position||0)+n%1}for(r=0;r<x.length;r++){var k=(l=x[r])._anchorAxis;l._linepositions={},l._lw=u.crispRound(t,l.linewidth,1),l._mainLinePosition=w(l,k,l.side),l._mainMirrorPosition=l.mirror&&k?w(l,k,d.OPPOSITE_SIDE[l.side]):null}var M=[],S=[],E=[],C=1===c.opacity(g.paper_bgcolor)&&1===c.opacity(g.plot_bgcolor)&&g.paper_bgcolor===g.plot_bgcolor;for(i in g._plots)if((s=g._plots[i]).mainplot)s.bg&&s.bg.remove(),s.bg=void 0;else{var L=s.xaxis.domain,I=s.yaxis.domain,P=s.plotgroup;if(b(L,I,E)&&-1===i.indexOf(_)){var z=P.node(),O=s.bg=o.ensureSingle(P,\"rect\",\"bg\");z.insertBefore(O.node(),z.childNodes[0]),S.push(i)}else P.select(\"rect.bg\").remove(),E.push([L,I]),C||(M.push(i),S.push(i))}var D,R,F,B,N,j,U,V,q,H,G,Z,W,Y=g._bgLayer.selectAll(\".bg\").data(M);for(Y.enter().append(\"rect\").classed(\"bg\",!0),Y.exit().remove(),Y.each((function(t){g._plots[t].bg=n.select(this)})),r=0;r<S.length;r++)s=g._plots[S[r]],h=s.xaxis,m=s.yaxis,s.bg&&void 0!==h._offset&&void 0!==m._offset&&s.bg.call(u.setRect,h._offset-v,m._offset-v,h._length+2*v,m._length+2*v).call(c.fill,g.plot_bgcolor).style(\"stroke-width\",0);if(!g._hasOnlyLargeSploms)for(i in g._plots){s=g._plots[i],h=s.xaxis,m=s.yaxis;var X,$,J=s.clipId=\"clip\"+g._uid+i+\"plot\",K=o.ensureSingleById(g._clips,\"clipPath\",J,(function(t){t.classed(\"plotclip\",!0).append(\"rect\")}));s.clipRect=K.select(\"rect\").attr({width:h._length,height:m._length}),u.setTranslate(s.plot,h._offset,m._offset),s._hasClipOnAxisFalse?(X=null,$=J):(X=J,$=null),u.setClipUrl(s.plot,X,t),s.layerClipId=$}function Q(t){return\"M\"+D+\",\"+t+\"H\"+R}function tt(t){return\"M\"+h._offset+\",\"+t+\"h\"+h._length}function et(t){return\"M\"+t+\",\"+V+\"V\"+U}function rt(t){return void 0!==m._shift&&(t+=m._shift),\"M\"+t+\",\"+m._offset+\"v\"+m._length}function nt(t,e,r){if(!t.showline||i!==t._mainSubplot)return\"\";if(!t._anchorAxis)return r(t._mainLinePosition);var n=e(t._mainLinePosition);return t.mirror&&(n+=e(t._mainMirrorPosition)),n}for(i in g._plots){s=g._plots[i],h=s.xaxis,m=s.yaxis;var it=\"M0,0\";T(h,i)&&(N=A(h,\"left\",m,x),D=h._offset-(N?v+N:0),j=A(h,\"right\",m,x),R=h._offset+h._length+(j?v+j:0),F=w(h,m,\"bottom\"),B=w(h,m,\"top\"),!(W=!h._anchorAxis||i!==h._mainSubplot)||\"allticks\"!==h.mirror&&\"all\"!==h.mirror||(h._linepositions[i]=[F,B]),it=nt(h,Q,tt),W&&h.showline&&(\"all\"===h.mirror||\"allticks\"===h.mirror)&&(it+=Q(F)+Q(B)),s.xlines.style(\"stroke-width\",h._lw+\"px\").call(c.stroke,h.showline?h.linecolor:\"rgba(0,0,0,0)\")),s.xlines.attr(\"d\",it);var at=\"M0,0\";T(m,i)&&(G=A(m,\"bottom\",h,x),U=m._offset+m._length+(G?v:0),Z=A(m,\"top\",h,x),V=m._offset-(Z?v:0),q=w(m,h,\"left\"),H=w(m,h,\"right\"),!(W=!m._anchorAxis||i!==m._mainSubplot)||\"allticks\"!==m.mirror&&\"all\"!==m.mirror||(m._linepositions[i]=[q,H]),at=nt(m,et,rt),W&&m.showline&&(\"all\"===m.mirror||\"allticks\"===m.mirror)&&(at+=et(q)+et(H)),s.ylines.style(\"stroke-width\",m._lw+\"px\").call(c.stroke,m.showline?m.linecolor:\"rgba(0,0,0,0)\")),s.ylines.attr(\"d\",at)}return p.makeClipPaths(t),a.previousPromises(t)}function T(t,e){return(t.ticks||t.showline)&&(e===t._mainSubplot||\"all\"===t.mirror||\"allticks\"===t.mirror)}function k(t,e,r){if(!r.showline||!r._lw)return!1;if(\"all\"===r.mirror||\"allticks\"===r.mirror)return!0;var n=r._anchorAxis;if(!n)return!1;var i=d.FROM_BL[e];return r.side===e?n.domain[i]===t.domain[i]:r.mirror&&n.domain[1-i]===t.domain[1-i]}function A(t,e,r,n){if(k(t,e,r))return r._lw;for(var i=0;i<n.length;i++){var a=n[i];if(a._mainAxis===r._mainAxis&&k(t,e,a))return a._lw}return 0}function M(t){return\"top\"===t?d.CAP_SHIFT+.3+\"em\":\"bottom\"===t?\"-0.3em\":d.MID_SHIFT+\"em\"}e.layoutStyles=function(t){return o.syncOrAsync([a.doAutoMargin,w],t)},e.drawMainTitle=function(t){var e=t._fullLayout.title,r=t._fullLayout,i=function(t){var e=t.title,r=\"middle\";return o.isRightAnchor(e)?r=\"end\":o.isLeftAnchor(e)&&(r=x),r}(r),l=function(t){var e=t.title,r=\"0em\";return o.isTopAnchor(e)?r=d.CAP_SHIFT+\"em\":o.isMiddleAnchor(e)&&(r=d.MID_SHIFT+\"em\"),r}(r),c=function(t,e){var r=t.title,n=t._size,i=0;return\"0em\"!==e&&e?e===d.CAP_SHIFT+\"em\"&&(i=r.pad.t):i=-r.pad.b,\"auto\"===r.y?n.t/2:\"paper\"===r.yref?n.t+n.h-n.h*r.y+i:t.height-t.height*r.y+i}(r,l),f=function(t,e){var r=t.title,n=t._size,i=0;return e===x?i=r.pad.l:\"end\"===e&&(i=-r.pad.r),\"paper\"===r.xref?n.l+n.w*r.x+i:t.width*r.x+i}(r,i);if(h.draw(t,\"gtitle\",{propContainer:r,propName:\"title.text\",subtitlePropName:\"title.subtitle.text\",placeholder:r._dfltTitle.plot,subtitlePlaceholder:r._dfltTitle.subtitle,attributes:{x:f,y:c,\"text-anchor\":i,dy:l}}),e.text&&e.automargin){var p=n.selectAll(\".gtitle\"),m=u.bBox(n.selectAll(\".g-gtitle\").node()).height,g=function(t,e,r){var n=e.y,i=e.yanchor,a=n>.5?\"t\":\"b\",o=t._fullLayout.margin[a],s=0;return\"paper\"===e.yref?s=r+e.pad.t+e.pad.b:\"container\"===e.yref&&(s=function(t,e,r,n,i){var a=0;return\"middle\"===r&&(a+=i/2),\"t\"===t?(\"top\"===r&&(a+=i),a+=n-e*n):(\"bottom\"===r&&(a+=i),a+=e*n),a}(a,n,i,t._fullLayout.height,r)+e.pad.t+e.pad.b),s>o?s:0}(t,e,m);if(g>0){!function(t,e,r,n){var i=\"title.automargin\",s=t._fullLayout.title,l=s.y>.5?\"t\":\"b\",c={x:s.x,y:s.y,t:0,b:0},u={};\"paper\"===s.yref&&function(t,e,r,n,i){var a=\"paper\"===e.yref?t._fullLayout._size.h:t._fullLayout.height,s=o.isTopAnchor(e)?n:n-i,l=\"b\"===r?a-s:s;return!(o.isTopAnchor(e)&&\"t\"===r||o.isBottomAnchor(e)&&\"b\"===r)&&l<i}(t,s,l,e,n)?c[l]=r:\"container\"===s.yref&&(u[l]=r,t._fullLayout._reservedMargin[i]=u),a.allowAutoMargin(t,i),a.autoMargin(t,i,c)}(t,c,g,m),p.attr({x:f,y:c,\"text-anchor\":i,dy:M(e.yanchor)}).call(s.positionText,f,c);var y=(e.text.match(s.BR_TAG_ALL)||[]).length;if(y){var v=d.LINE_SPACING*y+d.MID_SHIFT;0===e.y&&(v=-v),p.selectAll(\".line\").each((function(){var t=+this.getAttribute(\"dy\").slice(0,-2)-v+\"em\";this.setAttribute(\"dy\",t)}))}var _=n.selectAll(\".gtitle-subtitle\");if(_.node()){var b=p.node().getBBox(),w=b.y+b.height+h.SUBTITLE_PADDING_EM*e.subtitle.font.size;_.attr({x:f,y:w,\"text-anchor\":i,dy:M(e.yanchor)}).call(s.positionText,f,w)}}}},e.doTraceStyle=function(t){var r,n=t.calcdata,o=[];for(r=0;r<n.length;r++){var s=n[r],c=s[0]||{},u=c.trace||{},h=u._module||{},f=h.arraysToCalcdata;f&&f(s,u);var p=h.editStyle;p&&o.push({fn:p,cd0:c})}if(o.length){for(r=0;r<o.length;r++){var d=o[r];d.fn(t,d.cd0)}l(t),e.redrawReglTraces(t)}return a.style(t),i.getComponentMethod(\"legend\",\"draw\")(t),a.previousPromises(t)},e.doColorBars=function(t){return i.getComponentMethod(\"colorbar\",\"draw\")(t),a.previousPromises(t)},e.layoutReplot=function(t){var e=t.layout;return t.layout=void 0,i.call(\"_doPlot\",t,\"\",e)},e.doLegend=function(t){return i.getComponentMethod(\"legend\",\"draw\")(t),a.previousPromises(t)},e.doTicksRelayout=function(t){return p.draw(t,\"redraw\"),t._fullLayout._hasOnlyLargeSploms&&(i.subplotsRegistry.splom.updateGrid(t),l(t),e.redrawReglTraces(t)),e.drawMainTitle(t),a.previousPromises(t)},e.doModeBar=function(t){var e=t._fullLayout;f.manage(t);for(var r=0;r<e._basePlotModules.length;r++){var n=e._basePlotModules[r].updateFx;n&&n(t)}return a.previousPromises(t)},e.doCamera=function(t){for(var e=t._fullLayout,r=e._subplots.gl3d,n=0;n<r.length;n++){var i=e[r[n]];i._scene.setViewport(i)}},e.drawData=function(t){var r=t._fullLayout;l(t);for(var n=r._basePlotModules,o=0;o<n.length;o++)n[o].plot(t);return e.redrawReglTraces(t),a.style(t),i.getComponentMethod(\"selections\",\"draw\")(t),i.getComponentMethod(\"shapes\",\"draw\")(t),i.getComponentMethod(\"annotations\",\"draw\")(t),i.getComponentMethod(\"images\",\"draw\")(t),r._replotting=!1,a.previousPromises(t)},e.redrawReglTraces=function(t){var e=t._fullLayout;if(e._has(\"regl\")){var r,n,i=t._fullData,a=[],s=[];for(e._hasOnlyLargeSploms&&e._splomGrid.draw(),r=0;r<i.length;r++){var l=i[r];!0===l.visible&&0!==l._length&&(\"splom\"===l.type?e._splomScenes[l.uid].draw():\"scattergl\"===l.type?o.pushUnique(a,l.xaxis+l.yaxis):\"scatterpolargl\"===l.type&&o.pushUnique(s,l.subplot))}for(r=0;r<a.length;r++)(n=e._plots[a[r]])._scene&&n._scene.draw();for(r=0;r<s.length;r++)(n=e[s[r]]._subplot)._scene&&n._scene.draw()}},e.doAutoRangeAndConstraints=function(t){for(var e,r=p.list(t,\"\",!0),n={},i=0;i<r.length;i++)if(!n[(e=r[i])._id]){n[e._id]=1,y(t,e),v(t,e);var a=e._matchGroup;if(a)for(var o in a){var s=p.getFromId(t,o);v(t,s,e.range),n[o]=1}}g(t)},e.finalDraw=function(t){i.getComponentMethod(\"rangeslider\",\"draw\")(t),i.getComponentMethod(\"rangeselector\",\"draw\")(t)},e.drawMarginPushers=function(t){i.getComponentMethod(\"legend\",\"draw\")(t),i.getComponentMethod(\"rangeselector\",\"draw\")(t),i.getComponentMethod(\"sliders\",\"draw\")(t),i.getComponentMethod(\"updatemenus\",\"draw\")(t),i.getComponentMethod(\"colorbar\",\"draw\")(t)}},53853:function(t,e,r){\"use strict\";var n=r(34809),i=n.isPlainObject,a=r(57297),o=r(44122),s=r(9829),l=r(78032),c=r(24452).dfltConfig;function u(t,e){t=n.extendDeep({},t);var r,a,o=Object.keys(t).sort();function s(e,r,n){if(i(r)&&i(e))u(e,r);else if(Array.isArray(r)&&Array.isArray(e)){var o=l.arrayTemplater({_template:t},n);for(a=0;a<r.length;a++){var s=r[a],c=o.newItem(s)._template;c&&u(c,s)}var h=o.defaultItems();for(a=0;a<h.length;a++)r.push(h[a]._template);for(a=0;a<r.length;a++)delete r[a].templateitemname}}for(r=0;r<o.length;r++){var c=o[r],f=t[c];if(c in e?s(f,e[c],c):e[c]=f,h(c)===c)for(var p in e){var d=h(p);p===d||d!==c||p in t||s(f,e[p],c)}}}function h(t){return t.replace(/[0-9]+$/,\"\")}function f(t,e,r,a,o){var s=o&&r(o);for(var c in t){var u=t[c],p=m(t,c,a),d=m(t,c,o),g=r(d);if(!g){var y=h(c);y!==c&&(g=r(d=m(t,y,o)))}if(!(s&&s===g||!g||g._noTemplating||\"data_array\"===g.valType||g.arrayOk&&Array.isArray(u)))if(!g.valType&&i(u))f(u,e,r,p,d);else if(g._isLinkedToArray&&Array.isArray(u))for(var v=!1,x=0,_={},b=0;b<u.length;b++){var w=u[b];if(i(w)){var T=w.name;if(T)_[T]||(f(w,e,r,m(u,x,p),m(u,x,d)),x++,_[T]=1);else if(!v){var k=m(t,l.arrayDefaultKey(c),a),A=m(u,x,p);f(w,e,r,A,m(u,x,d));var M=n.nestedProperty(e,A);n.nestedProperty(e,k).set(M.get()),M.set(null),v=!0}}}else n.nestedProperty(e,p).set(u)}}function p(t,e){return a.getLayoutValObject(t,n.nestedProperty({},e).parts)}function d(t,e){return a.getTraceValObject(t,n.nestedProperty({},e).parts)}function m(t,e,r){return r?Array.isArray(t)?r+\"[\"+e+\"]\":r+\".\"+e:e}function g(t){for(var e=0;e<t.length;e++)if(i(t[e]))return!0}function y(t){var e;switch(t.code){case\"data\":e=\"The template has no key data.\";break;case\"layout\":e=\"The template has no key layout.\";break;case\"missing\":e=t.path?\"There are no templates for item \"+t.path+\" with name \"+t.templateitemname:\"There are no templates for trace \"+t.index+\", of type \"+t.traceType+\".\";break;case\"unused\":e=t.path?\"The template item at \"+t.path+\" was not used in constructing the plot.\":t.dataCount?\"Some of the templates of type \"+t.traceType+\" were not used. The template has \"+t.templateCount+\" traces, the data only has \"+t.dataCount+\" of this type.\":\"The template has \"+t.templateCount+\" traces of type \"+t.traceType+\" but there are none in the data.\";break;case\"reused\":e=\"Some of the templates of type \"+t.traceType+\" were used more than once. The template has \"+t.templateCount+\" traces, the data has \"+t.dataCount+\" of this type.\"}return t.msg=e,t}e.makeTemplate=function(t){t=n.isPlainObject(t)?t:n.getGraphDiv(t),t=n.extendDeep({_context:c},{data:t.data,layout:t.layout}),o.supplyDefaults(t);var e=t.data||[],r=t.layout||{};r._basePlotModules=t._fullLayout._basePlotModules,r._modules=t._fullLayout._modules;var a={data:{},layout:{}};e.forEach((function(t){var e={};f(t,e,d.bind(null,t));var r=n.coerce(t,{},s,\"type\"),i=a.data[r];i||(i=a.data[r]=[]),i.push(e)})),f(r,a.layout,p.bind(null,r)),delete a.layout.template;var l=r.template;if(i(l)){var h,m,g,y,v,x,_=l.layout;i(_)&&u(_,a.layout);var b=l.data;if(i(b)){for(m in a.data)if(g=b[m],Array.isArray(g)){for(x=(v=a.data[m]).length,y=g.length,h=0;h<x;h++)u(g[h%y],v[h]);for(h=x;h<y;h++)v.push(n.extendDeep({},g[h]))}for(m in b)m in a.data||(a.data[m]=n.extendDeep([],b[m]))}}return a},e.validateTemplate=function(t,e){var r=n.extendDeep({},{_context:c,data:t.data,layout:t.layout}),a=r.layout||{};i(e)||(e=a.template||{});var s=e.layout,l=e.data,u=[];r.layout=a,r.layout.template=e,o.supplyDefaults(r);var f=r._fullLayout,p=r._fullData,d={};if(i(s)?(function t(e,r){for(var n in e)if(\"_\"!==n.charAt(0)&&i(e[n])){var a,o=h(n),s=[];for(a=0;a<r.length;a++)s.push(m(e,n,r[a])),o!==n&&s.push(m(e,o,r[a]));for(a=0;a<s.length;a++)d[s[a]]=1;t(e[n],s)}}(f,[\"layout\"]),function t(e,r){for(var n in e)if(-1===n.indexOf(\"defaults\")&&i(e[n])){var a=m(e,n,r);d[a]?t(e[n],a):u.push({code:\"unused\",path:a})}}(s,\"layout\")):u.push({code:\"layout\"}),i(l)){for(var v,x={},_=0;_<p.length;_++){var b=p[_];x[v=b.type]=(x[v]||0)+1,b._fullInput._template||u.push({code:\"missing\",index:b._fullInput.index,traceType:v})}for(v in l){var w=l[v].length,T=x[v]||0;w>T?u.push({code:\"unused\",traceType:v,templateCount:w,dataCount:T}):T>w&&u.push({code:\"reused\",traceType:v,templateCount:w,dataCount:T})}}else u.push({code:\"data\"});if(function t(e,r){for(var n in e)if(\"_\"!==n.charAt(0)){var a=e[n],o=m(e,n,r);i(a)?(Array.isArray(e)&&!1===a._template&&a.templateitemname&&u.push({code:\"missing\",path:o,templateitemname:a.templateitemname}),t(a,o)):Array.isArray(a)&&g(a)&&t(a,o)}}({data:p,layout:f},\"\"),u.length)return u.map(y)}},80491:function(t,e,r){\"use strict\";var n=r(10721),i=r(31420),a=r(44122),o=r(34809),s=r(84619),l=r(6243),c=r(72914),u=r(29697).version,h={format:{valType:\"enumerated\",values:[\"png\",\"jpeg\",\"webp\",\"svg\",\"full-json\"],dflt:\"png\"},width:{valType:\"number\",min:1},height:{valType:\"number\",min:1},scale:{valType:\"number\",min:0,dflt:1},setBackground:{valType:\"any\",dflt:!1},imageDataOnly:{valType:\"boolean\",dflt:!1}};t.exports=function(t,e){var r,f,p,d;function m(t){return!(t in e)||o.validate(e[t],h[t])}if(e=e||{},o.isPlainObject(t)?(r=t.data||[],f=t.layout||{},p=t.config||{},d={}):(t=o.getGraphDiv(t),r=o.extendDeep([],t.data),f=o.extendDeep({},t.layout),p=t._context,d=t._fullLayout||{}),!m(\"width\")&&null!==e.width||!m(\"height\")&&null!==e.height)throw new Error(\"Height and width should be pixel values.\");if(!m(\"format\"))throw new Error(\"Export format is not \"+o.join2(h.format.values,\", \",\" or \")+\".\");var g={};function y(t,r){return o.coerce(e,g,h,t,r)}var v=y(\"format\"),x=y(\"width\"),_=y(\"height\"),b=y(\"scale\"),w=y(\"setBackground\"),T=y(\"imageDataOnly\"),k=document.createElement(\"div\");k.style.position=\"absolute\",k.style.left=\"-5000px\",document.body.appendChild(k);var A=o.extendFlat({},f);x?A.width=x:null===e.width&&n(d.width)&&(A.width=d.width),_?A.height=_:null===e.height&&n(d.height)&&(A.height=d.height);var M=o.extendFlat({},p,{_exportedPlot:!0,staticPlot:!0,setBackground:w}),S=s.getRedrawFunc(k);function E(){return new Promise((function(t){setTimeout(t,s.getDelay(k._fullLayout))}))}function C(){return new Promise((function(t,e){var r=l(k,v,b),n=k._fullLayout.width,h=k._fullLayout.height;function f(){i.purge(k),document.body.removeChild(k)}if(\"full-json\"===v){var p=a.graphJson(k,!1,\"keepdata\",\"object\",!0,!0);return p.version=u,p=JSON.stringify(p),f(),t(T?p:s.encodeJSON(p))}if(f(),\"svg\"===v)return t(T?r:s.encodeSVG(r));var d=document.createElement(\"canvas\");d.id=o.randstr(),c({format:v,width:n,height:h,scale:b,canvas:d,svg:r,promise:!0}).then(t).catch(e)}))}return new Promise((function(t,e){i.newPlot(k,r,A,M).then(S).then(E).then(C).then((function(e){t(function(t){return T?t.replace(s.IMAGE_URL_PREFIX,\"\"):t}(e))})).catch((function(t){e(t)}))}))}},2466:function(t,e,r){\"use strict\";var n=r(34809),i=r(44122),a=r(57297),o=r(24452).dfltConfig,s=n.isPlainObject,l=Array.isArray,c=n.isArrayOrTypedArray;function u(t,e,r,i,a,o){o=o||[];for(var h=Object.keys(t),f=0;f<h.length;f++){var g=h[f];if(\"transforms\"!==g){var y=o.slice();y.push(g);var v=t[g],x=e[g],_=m(r,g),b=(_||{}).valType,w=\"info_array\"===b,T=\"colorscale\"===b,k=(_||{}).items;if(d(r,g))if(s(v)&&s(x)&&\"any\"!==b)u(v,x,_,i,a,y);else if(w&&l(v)){v.length>x.length&&i.push(p(\"unused\",a,y.concat(x.length)));var A,M,S,E,C,L=x.length,I=Array.isArray(k);if(I&&(L=Math.min(L,k.length)),2===_.dimensions)for(M=0;M<L;M++)if(l(v[M])){v[M].length>x[M].length&&i.push(p(\"unused\",a,y.concat(M,x[M].length)));var P=x[M].length;for(A=0;A<(I?Math.min(P,k[M].length):P);A++)S=I?k[M][A]:k,E=v[M][A],C=x[M][A],n.validate(E,S)?C!==E&&C!==+E&&i.push(p(\"dynamic\",a,y.concat(M,A),E,C)):i.push(p(\"value\",a,y.concat(M,A),E))}else i.push(p(\"array\",a,y.concat(M),v[M]));else for(M=0;M<L;M++)S=I?k[M]:k,E=v[M],C=x[M],n.validate(E,S)?C!==E&&C!==+E&&i.push(p(\"dynamic\",a,y.concat(M),E,C)):i.push(p(\"value\",a,y.concat(M),E))}else if(_.items&&!w&&l(v)){var z,O,D=k[Object.keys(k)[0]],R=[];for(z=0;z<x.length;z++){var F=x[z]._index||z;if((O=y.slice()).push(F),s(v[F])&&s(x[z])){R.push(F);var B=v[F],N=x[z];s(B)&&!1!==B.visible&&!1===N.visible?i.push(p(\"invisible\",a,O)):u(B,N,D,i,a,O)}}for(z=0;z<v.length;z++)(O=y.slice()).push(z),s(v[z])?-1===R.indexOf(z)&&i.push(p(\"unused\",a,O)):i.push(p(\"object\",a,O,v[z]))}else!s(v)&&s(x)?i.push(p(\"object\",a,y,v)):c(v)||!c(x)||w||T?g in e?n.validate(v,_)?\"enumerated\"===_.valType&&(_.coerceNumber&&v!==+x||v!==x)&&i.push(p(\"dynamic\",a,y,v,x)):i.push(p(\"value\",a,y,v)):i.push(p(\"unused\",a,y,v)):i.push(p(\"array\",a,y,v));else i.push(p(\"schema\",a,y))}}return i}t.exports=function(t,e){void 0===t&&(t=[]),void 0===e&&(e={});var r,c,h=a.get(),f=[],d={_context:n.extendFlat({},o)};l(t)?(d.data=n.extendDeep([],t),r=t):(d.data=[],r=[],f.push(p(\"array\",\"data\"))),s(e)?(d.layout=n.extendDeep({},e),c=e):(d.layout={},c={},arguments.length>1&&f.push(p(\"object\",\"layout\"))),i.supplyDefaults(d);for(var m=d._fullData,g=r.length,y=0;y<g;y++){var v=r[y],x=[\"data\",y];if(s(v)){var _=m[y],b=_.type,w=h.traces[b].attributes;w.type={valType:\"enumerated\",values:[b]},!1===_.visible&&!1!==v.visible&&f.push(p(\"invisible\",x)),u(v,_,w,f,x);var T=v.transforms,k=_.transforms;if(T){l(T)||f.push(p(\"array\",x,[\"transforms\"])),x.push(\"transforms\");for(var A=0;A<T.length;A++){var M=[\"transforms\",A],S=T[A].type;if(s(T[A])){var E=h.transforms[S]?h.transforms[S].attributes:{};E.type={valType:\"enumerated\",values:Object.keys(h.transforms)},u(T[A],k[A],E,f,x,M)}else f.push(p(\"object\",x,M))}}}else f.push(p(\"object\",x))}var C=d._fullLayout,L=function(t,e){for(var r=t.layout.layoutAttributes,i=0;i<e.length;i++){var a=e[i],o=t.traces[a.type],s=o.layoutAttributes;s&&(a.subplot?n.extendFlat(r[o.attributes.subplot.dflt],s):n.extendFlat(r,s))}return r}(h,m);return u(c,C,L,f,\"layout\"),0===f.length?void 0:f};var h={object:function(t,e){return(\"layout\"===t&&\"\"===e?\"The layout argument\":\"data\"===t[0]&&\"\"===e?\"Trace \"+t[1]+\" in the data argument\":f(t)+\"key \"+e)+\" must be linked to an object container\"},array:function(t,e){return(\"data\"===t?\"The data argument\":f(t)+\"key \"+e)+\" must be linked to an array container\"},schema:function(t,e){return f(t)+\"key \"+e+\" is not part of the schema\"},unused:function(t,e,r){var n=s(r)?\"container\":\"key\";return f(t)+n+\" \"+e+\" did not get coerced\"},dynamic:function(t,e,r,n){return[f(t)+\"key\",e,\"(set to '\"+r+\"')\",\"got reset to\",\"'\"+n+\"'\",\"during defaults.\"].join(\" \")},invisible:function(t,e){return(e?f(t)+\"item \"+e:\"Trace \"+t[1])+\" got defaulted to be not visible\"},value:function(t,e,r){return[f(t)+\"key \"+e,\"is set to an invalid value (\"+r+\")\"].join(\" \")}};function f(t){return l(t)?\"In data trace \"+t[1]+\", \":\"In \"+t+\", \"}function p(t,e,r,i,a){var o,s;r=r||\"\",l(e)?(o=e[0],s=e[1]):(o=e,s=null);var c=function(t){if(!l(t))return String(t);for(var e=\"\",r=0;r<t.length;r++){var n=t[r];\"number\"==typeof n?e=e.substr(0,e.length-1)+\"[\"+n+\"]\":e+=n,r<t.length-1&&(e+=\".\")}return e}(r),u=h[t](e,c,i,a);return n.log(u),{code:t,container:o,trace:s,path:r,astr:c,msg:u}}function d(t,e){var r=y(e),n=r.keyMinusId,i=r.id;return!!(n in t&&t[n]._isSubplotObj&&i)||e in t}function m(t,e){return e in t?t[e]:t[y(e).keyMinusId]}var g=n.counterRegex(\"([a-z]+)\");function y(t){var e=t.match(g);return{keyMinusId:e&&e[1],id:e&&e[2]}}},49722:function(t){\"use strict\";t.exports={mode:{valType:\"enumerated\",dflt:\"afterall\",values:[\"immediate\",\"next\",\"afterall\"]},direction:{valType:\"enumerated\",values:[\"forward\",\"reverse\"],dflt:\"forward\"},fromcurrent:{valType:\"boolean\",dflt:!1},frame:{duration:{valType:\"number\",min:0,dflt:500},redraw:{valType:\"boolean\",dflt:!0}},transition:{duration:{valType:\"number\",min:0,dflt:500,editType:\"none\"},easing:{valType:\"enumerated\",dflt:\"cubic-in-out\",values:[\"linear\",\"quad\",\"cubic\",\"sin\",\"exp\",\"circle\",\"elastic\",\"back\",\"bounce\",\"linear-in\",\"quad-in\",\"cubic-in\",\"sin-in\",\"exp-in\",\"circle-in\",\"elastic-in\",\"back-in\",\"bounce-in\",\"linear-out\",\"quad-out\",\"cubic-out\",\"sin-out\",\"exp-out\",\"circle-out\",\"elastic-out\",\"back-out\",\"bounce-out\",\"linear-in-out\",\"quad-in-out\",\"cubic-in-out\",\"sin-in-out\",\"exp-in-out\",\"circle-in-out\",\"elastic-in-out\",\"back-in-out\",\"bounce-in-out\"],editType:\"none\"},ordering:{valType:\"enumerated\",values:[\"layout first\",\"traces first\"],dflt:\"layout first\",editType:\"none\"}}}},59008:function(t,e,r){\"use strict\";var n=r(34809),i=r(78032);t.exports=function(t,e,r){var a,o,s=r.name,l=r.inclusionAttr||\"visible\",c=e[s],u=n.isArrayOrTypedArray(t[s])?t[s]:[],h=e[s]=[],f=i.arrayTemplater(e,s,l);for(a=0;a<u.length;a++){var p=u[a];n.isPlainObject(p)?o=f.newItem(p):(o=f.newItem({}))[l]=!1,o._index=a,!1!==o[l]&&r.handleItemDefaults(p,o,e,r),h.push(o)}var d=f.defaultItems();for(a=0;a<d.length;a++)(o=d[a])._index=h.length,r.handleItemDefaults({},o,e,r,{}),h.push(o);if(n.isArrayOrTypedArray(c)){var m=Math.min(c.length,h.length);for(a=0;a<m;a++)n.relinkPrivateKeys(h[a],c[a])}return h}},9829:function(t,e,r){\"use strict\";var n=r(80337),i=r(70192);t.exports={type:{valType:\"enumerated\",values:[],dflt:\"scatter\",editType:\"calc+clearAxisTypes\",_noTemplating:!0},visible:{valType:\"enumerated\",values:[!0,!1,\"legendonly\"],dflt:!0,editType:\"calc\"},showlegend:{valType:\"boolean\",dflt:!0,editType:\"style\"},legend:{valType:\"subplotid\",dflt:\"legend\",editType:\"style\"},legendgroup:{valType:\"string\",dflt:\"\",editType:\"style\"},legendgrouptitle:{text:{valType:\"string\",dflt:\"\",editType:\"style\"},font:n({editType:\"style\"}),editType:\"style\"},legendrank:{valType:\"number\",dflt:1e3,editType:\"style\"},legendwidth:{valType:\"number\",min:0,editType:\"style\"},opacity:{valType:\"number\",min:0,max:1,dflt:1,editType:\"style\"},name:{valType:\"string\",editType:\"style\"},uid:{valType:\"string\",editType:\"plot\",anim:!0},ids:{valType:\"data_array\",editType:\"calc\",anim:!0},customdata:{valType:\"data_array\",editType:\"calc\"},meta:{valType:\"any\",arrayOk:!0,editType:\"plot\"},selectedpoints:{valType:\"any\",editType:\"calc\"},hoverinfo:{valType:\"flaglist\",flags:[\"x\",\"y\",\"z\",\"text\",\"name\"],extras:[\"all\",\"none\",\"skip\"],arrayOk:!0,dflt:\"all\",editType:\"none\"},hoverlabel:i.hoverlabel,stream:{token:{valType:\"string\",noBlank:!0,strict:!0,editType:\"calc\"},maxpoints:{valType:\"number\",min:0,max:1e4,dflt:500,editType:\"calc\"},editType:\"calc\"},transforms:{_isLinkedToArray:\"transform\",editType:\"calc\"},uirevision:{valType:\"any\",editType:\"none\"}}},40528:function(t,e,r){\"use strict\";var n=r(10721),i=r(34809),a=i.dateTime2ms,o=i.incrementMonth,s=r(63821).ONEAVGMONTH;t.exports=function(t,e,r,i){if(\"date\"!==e.type)return{vals:i};var l=t[r+\"periodalignment\"];if(!l)return{vals:i};var c,u=t[r+\"period\"];if(n(u)){if((u=+u)<=0)return{vals:i}}else if(\"string\"==typeof u&&\"M\"===u.charAt(0)){var h=+u.substring(1);if(!(h>0&&Math.round(h)===h))return{vals:i};c=h}for(var f=e.calendar,p=\"start\"===l,d=\"end\"===l,m=t[r+\"period0\"],g=a(m,f)||0,y=[],v=[],x=[],_=i.length,b=0;b<_;b++){var w,T,k,A=i[b];if(c){for(w=Math.round((A-g)/(c*s)),k=o(g,c*w,f);k>A;)k=o(k,-c,f);for(;k<=A;)k=o(k,c,f);T=o(k,-c,f)}else{for(k=g+(w=Math.round((A-g)/u))*u;k>A;)k-=u;for(;k<=A;)k+=u;T=k-u}y[b]=p?T:d?k:(T+k)/2,v[b]=T,x[b]=k}return{vals:y,starts:v,ends:x}}},55126:function(t){\"use strict\";t.exports={xaxis:{valType:\"subplotid\",dflt:\"x\",editType:\"calc+clearAxisTypes\"},yaxis:{valType:\"subplotid\",dflt:\"y\",editType:\"calc+clearAxisTypes\"}}},32919:function(t,e,r){\"use strict\";var n=r(45568),i=r(10721),a=r(34809),o=r(63821).FP_SAFE,s=r(33626),l=r(62203),c=r(5975),u=c.getFromId,h=c.isLinked;function f(t,e){var r,n,i=[],o=t._fullLayout,s=d(o,e,0),l=d(o,e,1),c=g(t,e),u=c.min,h=c.max;if(0===u.length||0===h.length)return a.simpleMap(e.range,e.r2l);var f=u[0].val,m=h[0].val;for(r=1;r<u.length&&f===m;r++)f=Math.min(f,u[r].val);for(r=1;r<h.length&&f===m;r++)m=Math.max(m,h[r].val);var y=e.autorange,v=\"reversed\"===y||\"min reversed\"===y||\"max reversed\"===y;if(!v&&e.range){var x=a.simpleMap(e.range,e.r2l);v=x[1]<x[0]}\"reversed\"===e.autorange&&(e.autorange=!0);var _,b,w,T,A,M,S=e.rangemode,E=\"tozero\"===S,C=\"nonnegative\"===S,L=e._length,I=L/10,P=0;for(r=0;r<u.length;r++)for(_=u[r],n=0;n<h.length;n++)(M=(b=h[n]).val-_.val-p(e,_.val,b.val))>0&&((A=L-s(_)-l(b))>I?M/A>P&&(w=_,T=b,P=M/A):M/L>P&&(w={val:_.val,nopad:1},T={val:b.val,nopad:1},P=M/L));if(f===m){var z=f-1,O=f+1;if(E)if(0===f)i=[0,1];else{var D=(f>0?h:u).reduce((function(t,e){return Math.max(t,l(e))}),0),R=f/(1-Math.min(.5,D/L));i=f>0?[0,R]:[R,0]}else i=C?[Math.max(0,z),Math.max(1,O)]:[z,O]}else E?(w.val>=0&&(w={val:0,nopad:1}),T.val<=0&&(T={val:0,nopad:1})):C&&(w.val-P*s(w)<0&&(w={val:0,nopad:1}),T.val<=0&&(T={val:1,nopad:1})),P=(T.val-w.val-p(e,_.val,b.val))/(L-s(w)-l(T)),i=[w.val-P*s(w),T.val+P*l(T)];return i=k(i,e),e.limitRange&&e.limitRange(),v&&i.reverse(),a.simpleMap(i,e.l2r||Number)}function p(t,e,r){var n=0;if(t.rangebreaks)for(var i=t.locateBreaks(e,r),a=0;a<i.length;a++){var o=i[a];n+=o.max-o.min}return n}function d(t,e,r){var i=.05*e._length,o=e._anchorAxis||{};if(-1!==(e.ticklabelposition||\"\").indexOf(\"inside\")||-1!==(o.ticklabelposition||\"\").indexOf(\"inside\")){var s=e.isReversed();if(!s){var c=a.simpleMap(e.range,e.r2l);s=c[1]<c[0]}s&&(r=!r)}var u=0;return h(t,e._id)||(u=function(t,e,r){var i=0,o=\"x\"===e._id.charAt(0);for(var s in t._plots){var c=t._plots[s];if(e._id===c.xaxis._id||e._id===c.yaxis._id){var u=(o?c.yaxis:c.xaxis)||{};if(-1!==(u.ticklabelposition||\"\").indexOf(\"inside\")&&(!r&&(\"left\"===u.side||\"bottom\"===u.side)||r&&(\"top\"===u.side||\"right\"===u.side))){if(u._vals){var h=a.deg2rad(u._tickAngles[u._id+\"tick\"]||0),f=Math.abs(Math.cos(h)),p=Math.abs(Math.sin(h));if(!u._vals[0].bb){var d=u._id+\"tick\";u._selections[d].each((function(t){var e=n.select(this);e.select(\".text-math-group\").empty()&&(t.bb=l.bBox(e.node()))}))}for(var g=0;g<u._vals.length;g++){var y=u._vals[g].bb;if(y){var v=2*m+y.width,x=2*m+y.height;i=Math.max(i,o?Math.max(v*f,x*p):Math.max(x*f,v*p))}}}\"inside\"===u.ticks&&\"inside\"===u.ticklabelposition&&(i+=u.ticklen||0)}}}return i}(t,e,r)),i=Math.max(u,i),\"domain\"===e.constrain&&e._inputDomain&&(i*=(e._inputDomain[1]-e._inputDomain[0])/(e.domain[1]-e.domain[0])),function(t){return t.nopad?0:t.pad+(t.extrapad?i:u)}}t.exports={applyAutorangeOptions:k,getAutoRange:f,makePadFn:d,doAutoRange:function(t,e,r){if(e.setScale(),e.autorange){e.range=r?r.slice():f(t,e),e._r=e.range.slice(),e._rl=a.simpleMap(e._r,e.r2l);var n=e._input,i={};i[e._attr+\".range\"]=e.range,i[e._attr+\".autorange\"]=e.autorange,s.call(\"_storeDirectGUIEdit\",t.layout,t._fullLayout._preGUI,i),n.range=e.range.slice(),n.autorange=e.autorange}var o=e._anchorAxis;if(o&&o.rangeslider){var l=o.rangeslider[e._name];l&&\"auto\"===l.rangemode&&(l.range=f(t,e)),o._input.rangeslider[e._name]=a.extendFlat({},l)}},findExtremes:function(t,e,r){r||(r={}),t._m||t.setScale();var n,a,s,l,c,u,h,f,p,d=[],m=[],g=e.length,x=r.padded||!1,b=r.tozero&&(\"linear\"===t.type||\"-\"===t.type),w=\"log\"===t.type,T=!1,k=r.vpadLinearized||!1;function A(t){if(Array.isArray(t))return T=!0,function(e){return Math.max(Number(t[e]||0),0)};var e=Math.max(Number(t||0),0);return function(){return e}}var M=A((t._m>0?r.ppadplus:r.ppadminus)||r.ppad||0),S=A((t._m>0?r.ppadminus:r.ppadplus)||r.ppad||0),E=A(r.vpadplus||r.vpad),C=A(r.vpadminus||r.vpad);if(!T){if(f=1/0,p=-1/0,w)for(n=0;n<g;n++)(a=e[n])<f&&a>0&&(f=a),a>p&&a<o&&(p=a);else for(n=0;n<g;n++)(a=e[n])<f&&a>-o&&(f=a),a>p&&a<o&&(p=a);e=[f,p],g=2}var L={tozero:b,extrapad:x};function I(r){s=e[r],i(s)&&(u=M(r),h=S(r),k?(l=t.c2l(s)-C(r),c=t.c2l(s)+E(r)):(f=s-C(r),p=s+E(r),w&&f<p/10&&(f=p/10),l=t.c2l(f),c=t.c2l(p)),b&&(l=Math.min(0,l),c=Math.max(0,c)),_(l)&&y(d,l,h,L),_(c)&&v(m,c,u,L))}var P=Math.min(6,g);for(n=0;n<P;n++)I(n);for(n=g-1;n>=P;n--)I(n);return{min:d,max:m,opts:r}},concatExtremes:g};var m=3;function g(t,e,r){var n,i,a,o=e._id,s=t._fullData,l=t._fullLayout,c=[],h=[];function f(t,e){for(n=0;n<e.length;n++){var r=t[e[n]],s=(r._extremes||{})[o];if(!0===r.visible&&s){for(i=0;i<s.min.length;i++)a=s.min[i],y(c,a.val,a.pad,{extrapad:a.extrapad});for(i=0;i<s.max.length;i++)a=s.max[i],v(h,a.val,a.pad,{extrapad:a.extrapad})}}}if(f(s,e._traceIndices),f(l.annotations||[],e._annIndices||[]),f(l.shapes||[],e._shapeIndices||[]),e._matchGroup&&!r)for(var p in e._matchGroup)if(p!==e._id){var d=u(t,p),m=g(t,d,!0),x=e._length/d._length;for(i=0;i<m.min.length;i++)a=m.min[i],y(c,a.val,a.pad*x,{extrapad:a.extrapad});for(i=0;i<m.max.length;i++)a=m.max[i],v(h,a.val,a.pad*x,{extrapad:a.extrapad})}return{min:c,max:h}}function y(t,e,r,n){x(t,e,r,n,b)}function v(t,e,r,n){x(t,e,r,n,w)}function x(t,e,r,n,i){for(var a=n.tozero,o=n.extrapad,s=!0,l=0;l<t.length&&s;l++){var c=t[l];if(i(c.val,e)&&c.pad>=r&&(c.extrapad||!o)){s=!1;break}i(e,c.val)&&c.pad<=r&&(o||!c.extrapad)&&(t.splice(l,1),l--)}if(s){var u=a&&0===e;t.push({val:e,pad:u?0:r,extrapad:!u&&o})}}function _(t){return i(t)&&Math.abs(t)<o}function b(t,e){return t<=e}function w(t,e){return t>=e}function T(t,e,r){return void 0===e||void 0===r||(e=t.d2l(e))<t.d2l(r)}function k(t,e){if(!e||!e.autorangeoptions)return t;var r=t[0],n=t[1],i=e.autorangeoptions.include;if(void 0!==i){var o=e.d2l(r),s=e.d2l(n);a.isArrayOrTypedArray(i)||(i=[i]);for(var l=0;l<i.length;l++){var c=e.d2l(i[l]);o>=c&&(o=c,r=c),s<=c&&(s=c,n=c)}}return r=function(t,e){var r=e.autorangeoptions;return r&&void 0!==r.minallowed&&T(e,r.minallowed,r.maxallowed)?r.minallowed:r&&void 0!==r.clipmin&&T(e,r.clipmin,r.clipmax)?Math.max(t,e.d2l(r.clipmin)):t}(r,e),n=function(t,e){var r=e.autorangeoptions;return r&&void 0!==r.maxallowed&&T(e,r.minallowed,r.maxallowed)?r.maxallowed:r&&void 0!==r.clipmax&&T(e,r.clipmin,r.clipmax)?Math.min(t,e.d2l(r.clipmax)):t}(n,e),[r,n]}},75511:function(t){\"use strict\";t.exports=function(t,e,r){var n,i;if(r){var a=\"reversed\"===e||\"min reversed\"===e||\"max reversed\"===e;n=r[a?1:0],i=r[a?0:1]}var o=t(\"autorangeoptions.minallowed\",null===i?n:void 0),s=t(\"autorangeoptions.maxallowed\",null===n?i:void 0);void 0===o&&t(\"autorangeoptions.clipmin\"),void 0===s&&t(\"autorangeoptions.clipmax\"),t(\"autorangeoptions.include\")}},29714:function(t,e,r){\"use strict\";var n=r(45568),i=r(10721),a=r(44122),o=r(33626),s=r(34809),l=s.strTranslate,c=r(30635),u=r(17240),h=r(78766),f=r(62203),p=r(25829),d=r(68599),m=r(63821),g=m.ONEMAXYEAR,y=m.ONEAVGYEAR,v=m.ONEMINYEAR,x=m.ONEMAXQUARTER,_=m.ONEAVGQUARTER,b=m.ONEMINQUARTER,w=m.ONEMAXMONTH,T=m.ONEAVGMONTH,k=m.ONEMINMONTH,A=m.ONEWEEK,M=m.ONEDAY,S=M/2,E=m.ONEHOUR,C=m.ONEMIN,L=m.ONESEC,I=m.ONEMILLI,P=m.ONEMICROSEC,z=m.MINUS_SIGN,O=m.BADNUM,D={K:\"zeroline\"},R={K:\"gridline\",L:\"path\"},F={K:\"minor-gridline\",L:\"path\"},B={K:\"tick\",L:\"path\"},N={K:\"tick\",L:\"text\"},j={width:[\"x\",\"r\",\"l\",\"xl\",\"xr\"],height:[\"y\",\"t\",\"b\",\"yt\",\"yb\"],right:[\"r\",\"xr\"],left:[\"l\",\"xl\"],top:[\"t\",\"yt\"],bottom:[\"b\",\"yb\"]},U=r(4530),V=U.MID_SHIFT,q=U.CAP_SHIFT,H=U.LINE_SPACING,G=U.OPPOSITE_SIDE,Z=t.exports={};Z.setConvert=r(19091);var W=r(9666),Y=r(5975),X=Y.idSort,$=Y.isLinked;Z.id2name=Y.id2name,Z.name2id=Y.name2id,Z.cleanId=Y.cleanId,Z.list=Y.list,Z.listIds=Y.listIds,Z.getFromId=Y.getFromId,Z.getFromTrace=Y.getFromTrace;var J=r(32919);Z.getAutoRange=J.getAutoRange,Z.findExtremes=J.findExtremes;var K=1e-4;function Q(t){var e=(t[1]-t[0])*K;return[t[0]-e,t[1]+e]}Z.coerceRef=function(t,e,r,n,i,a){var o=n.charAt(n.length-1),l=r._fullLayout._subplots[o+\"axis\"],c=n+\"ref\",u={};return i||(i=l[0]||(\"string\"==typeof a?a:a[0])),a||(a=i),l=l.concat(l.map((function(t){return t+\" domain\"}))),u[c]={valType:\"enumerated\",values:l.concat(a?\"string\"==typeof a?[a]:a:[]),dflt:i},s.coerce(t,e,u,c)},Z.getRefType=function(t){return void 0===t?t:\"paper\"===t?\"paper\":\"pixel\"===t?\"pixel\":/( domain)$/.test(t)?\"domain\":\"range\"},Z.coercePosition=function(t,e,r,n,i,a){var o,l;if(\"range\"!==Z.getRefType(n))o=s.ensureNumber,l=r(i,a);else{var c=Z.getFromId(e,n);l=r(i,a=c.fraction2r(a)),o=c.cleanPos}t[i]=o(l)},Z.cleanPosition=function(t,e,r){return(\"paper\"===r||\"pixel\"===r?s.ensureNumber:Z.getFromId(e,r).cleanPos)(t)},Z.redrawComponents=function(t,e){e=e||Z.listIds(t);var r=t._fullLayout;function n(n,i,a,s){for(var l=o.getComponentMethod(n,i),c={},u=0;u<e.length;u++)for(var h=r[Z.id2name(e[u])][a],f=0;f<h.length;f++){var p=h[f];if(!c[p]&&(l(t,p),c[p]=1,s))return}}n(\"annotations\",\"drawOne\",\"_annIndices\"),n(\"shapes\",\"drawOne\",\"_shapeIndices\"),n(\"images\",\"draw\",\"_imgIndices\",!0),n(\"selections\",\"drawOne\",\"_selectionIndices\")};var tt=Z.getDataConversions=function(t,e,r,n){var i,a=\"x\"===r||\"y\"===r||\"z\"===r?r:n;if(s.isArrayOrTypedArray(a)){if(i={type:W(n,void 0,{autotypenumbers:t._fullLayout.autotypenumbers}),_categories:[]},Z.setConvert(i),\"category\"===i.type)for(var o=0;o<n.length;o++)i.d2c(n[o])}else i=Z.getFromTrace(t,e,a);return i?{d2c:i.d2c,c2d:i.c2d}:\"ids\"===a?{d2c:rt,c2d:rt}:{d2c:et,c2d:et}};function et(t){return+t}function rt(t){return String(t)}function nt(t,e){return Math.abs((t/e+.5)%1-.5)<.001}function it(t,e){return Math.abs(t/e-1)<.001}function at(t){return+t.substring(1)}function ot(t,e){return t.rangebreaks&&(e=e.filter((function(e){return t.maskBreaks(e.x)!==O}))),e}function st(t){var e=t._mainAxis,r=[];if(e._vals)for(var n=0;n<e._vals.length;n++)if(!e._vals[n].noTick){var i=e.l2p(e._vals[n].x),a=t.p2l(i),o=Z.tickText(t,a);e._vals[n].minor&&(o.minor=!0,o.text=\"\"),r.push(o)}return ot(t,r)}function lt(t,e){var r=Q(s.simpleMap(t.range,t.r2l)),n=Math.min(r[0],r[1]),i=Math.max(r[0],r[1]),a=\"category\"===t.type?t.d2l_noadd:t.d2l;\"log\"===t.type&&\"L\"!==String(t.dtick).charAt(0)&&(t.dtick=\"L\"+Math.pow(10,Math.floor(Math.min(t.range[0],t.range[1]))-1));for(var o=[],l=0;l<=1;l++)if((void 0===e||!(e&&l||!1===e&&!l))&&(!l||t.minor)){var c=l?t.minor.tickvals:t.tickvals,u=l?[]:t.ticktext;if(c){s.isArrayOrTypedArray(u)||(u=[]);for(var h=0;h<c.length;h++){var f=a(c[h]);if(f>n&&f<i){var p=Z.tickText(t,f,!1,String(u[h]));l&&(p.minor=!0,p.text=\"\"),o.push(p)}}}}return ot(t,o)}Z.getDataToCoordFunc=function(t,e,r,n){return tt(t,e,r,n).d2c},Z.counterLetter=function(t){var e=t.charAt(0);return\"x\"===e?\"y\":\"y\"===e?\"x\":void 0},Z.minDtick=function(t,e,r,n){-1===[\"log\",\"category\",\"multicategory\"].indexOf(t.type)&&n?void 0===t._minDtick?(t._minDtick=e,t._forceTick0=r):t._minDtick&&((t._minDtick/e+1e-6)%1<2e-6&&((r-t._forceTick0)/e%1+1.000001)%1<2e-6?(t._minDtick=e,t._forceTick0=r):((e/t._minDtick+1e-6)%1>2e-6||((r-t._forceTick0)/t._minDtick%1+1.000001)%1>2e-6)&&(t._minDtick=0)):t._minDtick=0},Z.saveRangeInitial=function(t,e){for(var r=Z.list(t,\"\",!0),n=!1,i=0;i<r.length;i++){var a=r[i],o=void 0===a._rangeInitial0&&void 0===a._rangeInitial1,s=o||a.range[0]!==a._rangeInitial0||a.range[1]!==a._rangeInitial1,l=a.autorange;(o&&!0!==l||e&&s)&&(a._rangeInitial0=\"min\"===l||\"max reversed\"===l?void 0:a.range[0],a._rangeInitial1=\"max\"===l||\"min reversed\"===l?void 0:a.range[1],a._autorangeInitial=l,n=!0)}return n},Z.saveShowSpikeInitial=function(t,e){for(var r=Z.list(t,\"\",!0),n=!1,i=\"on\",a=0;a<r.length;a++){var o=r[a],s=void 0===o._showSpikeInitial,l=s||!(o.showspikes===o._showspikes);(s||e&&l)&&(o._showSpikeInitial=o.showspikes,n=!0),\"on\"!==i||o.showspikes||(i=\"off\")}return t._fullLayout._cartesianSpikesEnabled=i,n},Z.autoBin=function(t,e,r,n,a,o){var l,c=s.aggNums(Math.min,null,t),u=s.aggNums(Math.max,null,t);if(\"category\"===e.type||\"multicategory\"===e.type)return{start:c-.5,end:u+.5,size:Math.max(1,Math.round(o)||1),_dataSpan:u-c};if(a||(a=e.calendar),l=\"log\"===e.type?{type:\"linear\",range:[c,u]}:{type:e.type,range:s.simpleMap([c,u],e.c2r,0,a),calendar:a},Z.setConvert(l),o=o&&d.dtick(o,l.type))l.dtick=o,l.tick0=d.tick0(void 0,l.type,a);else{var h;if(r)h=(u-c)/r;else{var f=s.distinctVals(t),p=Math.pow(10,Math.floor(Math.log(f.minDiff)/Math.LN10)),m=p*s.roundUp(f.minDiff/p,[.9,1.9,4.9,9.9],!0);h=Math.max(m,2*s.stdev(t)/Math.pow(t.length,n?.25:.4)),i(h)||(h=1)}Z.autoTicks(l,h)}var g,y=l.dtick,v=Z.tickIncrement(Z.tickFirst(l),y,\"reverse\",a);if(\"number\"==typeof y)v=function(t,e,r,n,a){var o=0,s=0,l=0,c=0;function u(e){return(1+100*(e-t)/r.dtick)%100<2}for(var h=0;h<e.length;h++)e[h]%1==0?l++:i(e[h])||c++,u(e[h])&&o++,u(e[h]+r.dtick/2)&&s++;var f=e.length-c;if(l===f&&\"date\"!==r.type)r.dtick<1?t=n-.5*r.dtick:(t-=.5)+r.dtick<n&&(t+=r.dtick);else if(s<.1*f&&(o>.3*f||u(n)||u(a))){var p=r.dtick/2;t+=t+p<n?p:-p}return t}(v,t,l,c,u),g=v+(1+Math.floor((u-v)/y))*y;else for(\"M\"===l.dtick.charAt(0)&&(v=function(t,e,r,n,i){var a=s.findExactDates(e,i);if(a.exactDays>.8){var o=Number(r.substr(1));a.exactYears>.8&&o%12==0?t=Z.tickIncrement(t,\"M6\",\"reverse\")+1.5*M:a.exactMonths>.8?t=Z.tickIncrement(t,\"M1\",\"reverse\")+15.5*M:t-=S;var l=Z.tickIncrement(t,r);if(l<=n)return l}return t}(v,t,y,c,a)),g=v;g<=u;)g=Z.tickIncrement(g,y,!1,a);return{start:e.c2r(v,0,a),end:e.c2r(g,0,a),size:y,_dataSpan:u-c}},Z.prepMinorTicks=function(t,e,r){if(!e.minor.dtick){delete t.dtick;var n,a=e.dtick&&i(e._tmin);if(a){var o=Z.tickIncrement(e._tmin,e.dtick,!0);n=[e._tmin,.99*o+.01*e._tmin]}else{var l=s.simpleMap(e.range,e.r2l);n=[l[0],.8*l[0]+.2*l[1]]}if(t.range=s.simpleMap(n,e.l2r),t._isMinor=!0,Z.prepTicks(t,r),a){var c=i(e.dtick),u=i(t.dtick),h=c?e.dtick:+e.dtick.substring(1),f=u?t.dtick:+t.dtick.substring(1);c&&u?nt(h,f)?h===2*A&&f===2*M&&(t.dtick=A):h===2*A&&f===3*M?t.dtick=A:h!==A||(e._input.minor||{}).nticks?it(h/f,2.5)?t.dtick=h/2:t.dtick=h:t.dtick=M:\"M\"===String(e.dtick).charAt(0)?u?t.dtick=\"M1\":nt(h,f)?h>=12&&2===f&&(t.dtick=\"M3\"):t.dtick=e.dtick:\"L\"===String(t.dtick).charAt(0)?\"L\"===String(e.dtick).charAt(0)?nt(h,f)||(t.dtick=it(h/f,2.5)?e.dtick/2:e.dtick):t.dtick=\"D1\":\"D2\"===t.dtick&&+e.dtick>1&&(t.dtick=1)}t.range=e.range}void 0===e.minor._tick0Init&&(t.tick0=e.tick0)},Z.prepTicks=function(t,e){var r=s.simpleMap(t.range,t.r2l,void 0,void 0,e);if(\"auto\"===t.tickmode||!t.dtick){var n,a=t.nticks;a||(\"category\"===t.type||\"multicategory\"===t.type?(n=t.tickfont?s.bigFont(t.tickfont.size||12):15,a=t._length/n):(n=\"y\"===t._id.charAt(0)?40:80,a=s.constrain(t._length/n,4,9)+1),\"radialaxis\"===t._name&&(a*=2)),t.minor&&\"array\"!==t.minor.tickmode||\"array\"===t.tickmode&&(a*=100),t._roughDTick=Math.abs(r[1]-r[0])/a,Z.autoTicks(t,t._roughDTick),t._minDtick>0&&t.dtick<2*t._minDtick&&(t.dtick=t._minDtick,t.tick0=t.l2r(t._forceTick0))}\"period\"===t.ticklabelmode&&function(t){var e;function r(){return!(i(t.dtick)||\"M\"!==t.dtick.charAt(0))}var n=r(),a=Z.getTickFormat(t);if(a){var o=t._dtickInit!==t.dtick;/%[fLQsSMX]/.test(a)||(/%[HI]/.test(a)?(e=E,o&&!n&&t.dtick<E&&(t.dtick=E)):/%p/.test(a)?(e=S,o&&!n&&t.dtick<S&&(t.dtick=S)):/%[Aadejuwx]/.test(a)?(e=M,o&&!n&&t.dtick<M&&(t.dtick=M)):/%[UVW]/.test(a)?(e=A,o&&!n&&t.dtick<A&&(t.dtick=A)):/%[Bbm]/.test(a)?(e=T,o&&(n?at(t.dtick)<1:t.dtick<k)&&(t.dtick=\"M1\")):/%[q]/.test(a)?(e=_,o&&(n?at(t.dtick)<3:t.dtick<b)&&(t.dtick=\"M3\")):/%[Yy]/.test(a)&&(e=y,o&&(n?at(t.dtick)<12:t.dtick<v)&&(t.dtick=\"M12\")))}(n=r())&&t.tick0===t._dowTick0&&(t.tick0=t._rawTick0),t._definedDelta=e}(t),t.tick0||(t.tick0=\"date\"===t.type?\"2000-01-01\":0),\"date\"===t.type&&t.dtick<.1&&(t.dtick=.1),yt(t)},Z.calcTicks=function(t,e){for(var r,n,a,o,l=t.type,c=t.calendar,u=t.ticklabelstep,h=\"period\"===t.ticklabelmode,f=t.range[0]>t.range[1],p=!t.ticklabelindex||s.isArrayOrTypedArray(t.ticklabelindex)?t.ticklabelindex:[t.ticklabelindex],d=s.simpleMap(t.range,t.r2l,void 0,void 0,e),m=d[1]<d[0],z=Math.min(d[0],d[1]),D=Math.max(d[0],d[1]),R=Math.max(1e3,t._length||0),F=[],B=[],N=[],j=[],U=[],V=t.minor&&(t.minor.ticks||t.minor.showgrid),q=1;q>=(V?0:1);q--){var H=!q;q?(t._dtickInit=t.dtick,t._tick0Init=t.tick0):(t.minor._dtickInit=t.minor.dtick,t.minor._tick0Init=t.minor.tick0);var G=q?t:s.extendFlat({},t,t.minor);if(H?Z.prepMinorTicks(G,t,e):Z.prepTicks(G,e),\"array\"!==G.tickmode)if(\"sync\"!==G.tickmode){var W=Q(d),Y=W[0],X=W[1],$=i(G.dtick),J=\"log\"===l&&!($||\"L\"===G.dtick.charAt(0)),K=Z.tickFirst(G,e);if(q){if(t._tmin=K,K<Y!==m)break;\"category\"!==l&&\"multicategory\"!==l||(X=m?Math.max(-.5,X):Math.min(t._categories.length-.5,X))}var tt,et,rt=null,nt=K;q&&($?et=t.dtick:\"date\"===l?\"string\"==typeof t.dtick&&\"M\"===t.dtick.charAt(0)&&(et=T*t.dtick.substring(1)):et=t._roughDTick,tt=Math.round((t.r2l(nt)-t.r2l(t.tick0))/et)-1);var it=G.dtick;for(G.rangebreaks&&G._tick0Init!==G.tick0&&(nt=Ft(nt,t),m||(nt=Z.tickIncrement(nt,it,!m,c))),q&&h&&(nt=Z.tickIncrement(nt,it,!m,c),tt--);m?nt>=X:nt<=X;nt=Z.tickIncrement(nt,it,m,c)){if(q&&tt++,G.rangebreaks&&!m){if(nt<Y)continue;if(G.maskBreaks(nt)===O&&Ft(nt,G)>=D)break}if(N.length>R||nt===rt)break;rt=nt;var at={value:nt};q?(J&&nt!==(0|nt)&&(at.simpleLabel=!0),u>1&&tt%u&&(at.skipLabel=!0),N.push(at)):(at.minor=!0,j.push(at))}}else N=[],F=st(t);else q?(N=[],F=lt(t,!H)):(j=[],B=lt(t,!H))}!j||j.length<2?p=!1:(r=(j[1].value-j[0].value)*(f?-1:1),n=t.tickformat,(/%f/.test(n)?r>=P:/%L/.test(n)?r>=I:/%[SX]/.test(n)?r>=L:/%M/.test(n)?r>=C:/%[HI]/.test(n)?r>=E:/%p/.test(n)?r>=S:/%[Aadejuwx]/.test(n)?r>=M:/%[UVW]/.test(n)?r>=A:/%[Bbm]/.test(n)?r>=k:/%[q]/.test(n)?r>=b:!/%[Yy]/.test(n)||r>=v)||(p=!1));if(p){var ot=N.concat(j);h&&N.length&&(ot=ot.slice(1)),(ot=ot.sort((function(t,e){return t.value-e.value})).filter((function(t,e,r){return 0===e||t.value!==r[e-1].value}))).map((function(t,e){return void 0!==t.minor||t.skipLabel?null:e})).filter((function(t){return null!==t})).forEach((function(t){p.map((function(e){var r=t+e;r>=0&&r<ot.length&&s.pushUnique(U,ot[r])}))}))}else U=N;if(V&&!(\"inside\"===t.minor.ticks&&\"outside\"===t.ticks||\"outside\"===t.minor.ticks&&\"inside\"===t.ticks)){for(var ct=N.map((function(t){return t.value})),ut=[],ht=0;ht<j.length;ht++){var ft=j[ht],pt=ft.value;if(-1===ct.indexOf(pt)){for(var dt=!1,mt=0;!dt&&mt<N.length;mt++)1e7+N[mt].value===1e7+pt&&(dt=!0);dt||ut.push(ft)}}j=ut}if(h&&function(t,e,r){for(var n=0;n<t.length;n++){var i=t[n].value,a=n,o=n+1;n<t.length-1?(a=n,o=n+1):n>0?(a=n-1,o=n):(a=n,o=n);var s,l=t[a].value,c=t[o].value,u=Math.abs(c-l),h=r||u,f=0;h>=v?f=u>=v&&u<=g?u:y:r===_&&h>=b?f=u>=b&&u<=x?u:_:h>=k?f=u>=k&&u<=w?u:T:r===A&&h>=A?f=A:h>=M?f=M:r===S&&h>=S?f=S:r===E&&h>=E&&(f=E),f>=u&&(f=u,s=!0);var p=i+f;if(e.rangebreaks&&f>0){for(var d=0,m=0;m<84;m++){var C=(m+.5)/84;e.maskBreaks(i*(1-C)+C*p)!==O&&d++}(f*=d/84)||(t[n].drop=!0),s&&u>A&&(f=u)}(f>0||0===n)&&(t[n].periodX=i+f/2)}}(U,t,t._definedDelta),t.rangebreaks){var gt=\"y\"===t._id.charAt(0),yt=1;\"auto\"===t.tickmode&&(yt=t.tickfont?t.tickfont.size:12);var vt=NaN;for(a=N.length-1;a>-1;a--)if(N[a].drop)N.splice(a,1);else{N[a].value=Ft(N[a].value,t);var xt=t.c2p(N[a].value);(gt?vt>xt-yt:vt<xt+yt)?N.splice(m?a+1:a,1):vt=xt}}Rt(t)&&360===Math.abs(d[1]-d[0])&&N.pop(),t._tmax=(N[N.length-1]||{}).value,t._prevDateHead=\"\",t._inCalcTicks=!0;var _t,bt=function(e){e.text=\"\",t._prevDateHead=o};function wt(t,e){var r=Z.tickText(t,e.value,!1,e.simpleLabel),n=e.periodX;return void 0!==n&&(r.periodX=n,(n>D||n<z)&&(n>D&&(r.periodX=D),n<z&&(r.periodX=z),bt(r))),r}for(N=N.concat(j),a=0;a<N.length;a++){var Tt=N[a].minor,kt=N[a].value;Tt?((_t=p&&-1!==U.indexOf(N[a])?wt(t,N[a]):{x:kt}).minor=!0,B.push(_t)):(o=t._prevDateHead,_t=wt(t,N[a]),(N[a].skipLabel||p&&-1===U.indexOf(N[a]))&&bt(_t),F.push(_t))}return F=F.concat(B),t._inCalcTicks=!1,h&&F.length&&(F[0].noTick=!0),F};var ct=[2,5,10],ut=[1,2,3,6,12],ht=[1,2,5,10,15,30],ft=[1,2,3,7,14],pt=[-.046,0,.301,.477,.602,.699,.778,.845,.903,.954,1],dt=[-.301,0,.301,.699,1],mt=[15,30,45,90,180];function gt(t,e,r){return e*s.roundUp(t/e,r)}function yt(t){var e=t.dtick;if(t._tickexponent=0,i(e)||\"string\"==typeof e||(e=1),\"category\"!==t.type&&\"multicategory\"!==t.type||(t._tickround=null),\"date\"===t.type){var r=t.r2l(t.tick0),n=t.l2r(r).replace(/(^-|i)/g,\"\"),a=n.length;if(\"M\"===String(e).charAt(0))a>10||\"01-01\"!==n.substr(5)?t._tickround=\"d\":t._tickround=+e.substr(1)%12==0?\"y\":\"m\";else if(e>=M&&a<=10||e>=15*M)t._tickround=\"d\";else if(e>=C&&a<=16||e>=E)t._tickround=\"M\";else if(e>=L&&a<=19||e>=C)t._tickround=\"S\";else{var o=t.l2r(r+e).replace(/^-/,\"\").length;t._tickround=Math.max(a,o)-20,t._tickround<0&&(t._tickround=4)}}else if(i(e)||\"L\"===e.charAt(0)){var s=t.range.map(t.r2d||Number);i(e)||(e=Number(e.substr(1))),t._tickround=2-Math.floor(Math.log(e)/Math.LN10+.01);var l=Math.max(Math.abs(s[0]),Math.abs(s[1])),c=Math.floor(Math.log(l)/Math.LN10+.01),u=void 0===t.minexponent?3:t.minexponent;Math.abs(c)>u&&(_t(t.exponentformat)&&!bt(c)?t._tickexponent=3*Math.round((c-1)/3):t._tickexponent=c)}else t._tickround=null}function vt(t,e,r){var n=t.tickfont||{};return{x:e,dx:0,dy:0,text:r||\"\",fontSize:n.size,font:n.family,fontWeight:n.weight,fontStyle:n.style,fontVariant:n.variant,fontTextcase:n.textcase,fontLineposition:n.lineposition,fontShadow:n.shadow,fontColor:n.color}}Z.autoTicks=function(t,e,r){var n;function a(t){return Math.pow(t,Math.floor(Math.log(e)/Math.LN10))}if(\"date\"===t.type){t.tick0=s.dateTick0(t.calendar,0);var o=2*e;if(o>y)e/=y,n=a(10),t.dtick=\"M\"+12*gt(e,n,ct);else if(o>T)e/=T,t.dtick=\"M\"+gt(e,1,ut);else if(o>M){if(t.dtick=gt(e,M,t._hasDayOfWeekBreaks?[1,2,7,14]:ft),!r){var l=Z.getTickFormat(t),c=\"period\"===t.ticklabelmode;c&&(t._rawTick0=t.tick0),/%[uVW]/.test(l)?t.tick0=s.dateTick0(t.calendar,2):t.tick0=s.dateTick0(t.calendar,1),c&&(t._dowTick0=t.tick0)}}else o>E?t.dtick=gt(e,E,ut):o>C?t.dtick=gt(e,C,ht):o>L?t.dtick=gt(e,L,ht):(n=a(10),t.dtick=gt(e,n,ct))}else if(\"log\"===t.type){t.tick0=0;var u=s.simpleMap(t.range,t.r2l);if(t._isMinor&&(e*=1.5),e>.7)t.dtick=Math.ceil(e);else if(Math.abs(u[1]-u[0])<1){var h=1.5*Math.abs((u[1]-u[0])/e);e=Math.abs(Math.pow(10,u[1])-Math.pow(10,u[0]))/h,n=a(10),t.dtick=\"L\"+gt(e,n,ct)}else t.dtick=e>.3?\"D2\":\"D1\"}else\"category\"===t.type||\"multicategory\"===t.type?(t.tick0=0,t.dtick=Math.ceil(Math.max(e,1))):Rt(t)?(t.tick0=0,n=1,t.dtick=gt(e,n,mt)):(t.tick0=0,n=a(10),t.dtick=gt(e,n,ct));if(0===t.dtick&&(t.dtick=1),!i(t.dtick)&&\"string\"!=typeof t.dtick){var f=t.dtick;throw t.dtick=1,\"ax.dtick error: \"+String(f)}},Z.tickIncrement=function(t,e,r,a){var o=r?-1:1;if(i(e))return s.increment(t,o*e);var l=e.charAt(0),c=o*Number(e.substr(1));if(\"M\"===l)return s.incrementMonth(t,c,a);if(\"L\"===l)return Math.log(Math.pow(10,t)+c)/Math.LN10;if(\"D\"===l){var u=\"D2\"===e?dt:pt,h=t+.01*o,f=s.roundUp(s.mod(h,1),u,r);return Math.floor(h)+Math.log(n.round(Math.pow(10,f),1))/Math.LN10}throw\"unrecognized dtick \"+String(e)},Z.tickFirst=function(t,e){var r=t.r2l||Number,a=s.simpleMap(t.range,r,void 0,void 0,e),o=a[1]<a[0],l=o?Math.floor:Math.ceil,c=Q(a)[0],u=t.dtick,h=r(t.tick0);if(i(u)){var f=l((c-h)/u)*u+h;return\"category\"!==t.type&&\"multicategory\"!==t.type||(f=s.constrain(f,0,t._categories.length-1)),f}var p=u.charAt(0),d=Number(u.substr(1));if(\"M\"===p){for(var m,g,y,v=0,x=h;v<10;){if(((m=Z.tickIncrement(x,u,o,t.calendar))-c)*(x-c)<=0)return o?Math.min(x,m):Math.max(x,m);g=(c-(x+m)/2)/(m-x),y=p+(Math.abs(Math.round(g))||1)*d,x=Z.tickIncrement(x,y,g<0?!o:o,t.calendar),v++}return s.error(\"tickFirst did not converge\",t),x}if(\"L\"===p)return Math.log(l((Math.pow(10,c)-h)/d)*d+h)/Math.LN10;if(\"D\"===p){var _=\"D2\"===u?dt:pt,b=s.roundUp(s.mod(c,1),_,o);return Math.floor(c)+Math.log(n.round(Math.pow(10,b),1))/Math.LN10}throw\"unrecognized dtick \"+String(u)},Z.tickText=function(t,e,r,n){var a,o=vt(t,e),l=\"array\"===t.tickmode,c=r||l,u=t.type,h=\"category\"===u?t.d2l_noadd:t.d2l,f=function(e){var r=t.l2p(e);return r>=0&&r<=t._length?e:null};if(l&&s.isArrayOrTypedArray(t.ticktext)){var p=s.simpleMap(t.range,t.r2l),d=(Math.abs(p[1]-p[0])-(t._lBreaks||0))/1e4;for(a=0;a<t.ticktext.length&&!(Math.abs(e-h(t.tickvals[a]))<d);a++);if(a<t.ticktext.length)return o.text=String(t.ticktext[a]),o.xbnd=[f(o.x-.5),f(o.x+t.dtick-.5)],o}function m(n){if(void 0===n)return!0;if(r)return\"none\"===n;var i={first:t._tmin,last:t._tmax}[n];return\"all\"!==n&&e!==i}var g=r?\"never\":\"none\"!==t.exponentformat&&m(t.showexponent)?\"hide\":\"\";if(\"date\"===u?function(t,e,r,n){var a=t._tickround,o=r&&t.hoverformat||Z.getTickFormat(t);(n=!o&&n)&&(a=i(a)?4:{y:\"m\",m:\"d\",d:\"M\",M:\"S\",S:4}[a]);var l,c=s.formatDate(e.x,o,a,t._dateFormat,t.calendar,t._extraFormat),u=c.indexOf(\"\\n\");if(-1!==u&&(l=c.substr(u+1),c=c.substr(0,u)),n&&(void 0===l||\"00:00:00\"!==c&&\"00:00\"!==c?8===c.length&&(c=c.replace(/:00$/,\"\")):(c=l,l=\"\")),l)if(r)\"d\"===a?c+=\", \"+l:c=l+(c?\", \"+c:\"\");else if(t._inCalcTicks&&t._prevDateHead===l){var h=Bt(t),f=t._trueSide||t.side;(!h&&\"top\"===f||h&&\"bottom\"===f)&&(c+=\"<br> \")}else t._prevDateHead=l,c+=\"<br>\"+l;e.text=c}(t,o,r,c):\"log\"===u?function(t,e,r,n,a){var o=t.dtick,l=e.x,c=t.tickformat,u=\"string\"==typeof o&&o.charAt(0);if(\"never\"===a&&(a=\"\"),n&&\"L\"!==u&&(o=\"L3\",u=\"L\"),c||\"L\"===u)e.text=wt(Math.pow(10,l),t,a,n);else if(i(o)||\"D\"===u&&s.mod(l+.01,1)<.1){var h=Math.round(l),f=Math.abs(h),p=t.exponentformat;\"power\"===p||_t(p)&&bt(h)?(e.text=0===h?1:1===h?\"10\":\"10<sup>\"+(h>1?\"\":z)+f+\"</sup>\",e.fontSize*=1.25):(\"e\"===p||\"E\"===p)&&f>2?e.text=\"1\"+p+(h>0?\"+\":z)+f:(e.text=wt(Math.pow(10,l),t,\"\",\"fakehover\"),\"D1\"===o&&\"y\"===t._id.charAt(0)&&(e.dy-=e.fontSize/6))}else{if(\"D\"!==u)throw\"unrecognized dtick \"+String(o);e.text=String(Math.round(Math.pow(10,s.mod(l,1)))),e.fontSize*=.75}if(\"D1\"===t.dtick){var d=String(e.text).charAt(0);\"0\"!==d&&\"1\"!==d||(\"y\"===t._id.charAt(0)?e.dx-=e.fontSize/4:(e.dy+=e.fontSize/2,e.dx+=(t.range[1]>t.range[0]?1:-1)*e.fontSize*(l<0?.5:.25)))}}(t,o,0,c,g):\"category\"===u?function(t,e){var r=t._categories[Math.round(e.x)];void 0===r&&(r=\"\"),e.text=String(r)}(t,o):\"multicategory\"===u?function(t,e,r){var n=Math.round(e.x),i=t._categories[n]||[],a=void 0===i[1]?\"\":String(i[1]),o=void 0===i[0]?\"\":String(i[0]);r?e.text=o+\" - \"+a:(e.text=a,e.text2=o)}(t,o,r):Rt(t)?function(t,e,r,n,i){if(\"radians\"!==t.thetaunit||r)e.text=wt(e.x,t,i,n);else{var a=e.x/180;if(0===a)e.text=\"0\";else{var o=function(t){function e(t,e){return Math.abs(t-e)<=1e-6}var r=function(t){for(var r=1;!e(Math.round(t*r)/r,t);)r*=10;return r}(t),n=t*r,i=Math.abs(function t(r,n){return e(n,0)?r:t(n,r%n)}(n,r));return[Math.round(n/i),Math.round(r/i)]}(a);if(o[1]>=100)e.text=wt(s.deg2rad(e.x),t,i,n);else{var l=e.x<0;1===o[1]?1===o[0]?e.text=\"π\":e.text=o[0]+\"π\":e.text=[\"<sup>\",o[0],\"</sup>\",\"\",\"<sub>\",o[1],\"</sub>\",\"π\"].join(\"\"),l&&(e.text=z+e.text)}}}}(t,o,r,c,g):function(t,e,r,n,i){\"never\"===i?i=\"\":\"all\"===t.showexponent&&Math.abs(e.x/t.dtick)<1e-6&&(i=\"hide\"),e.text=wt(e.x,t,i,n)}(t,o,0,c,g),n||(t.tickprefix&&!m(t.showtickprefix)&&(o.text=t.tickprefix+o.text),t.ticksuffix&&!m(t.showticksuffix)&&(o.text+=t.ticksuffix)),t.labelalias&&t.labelalias.hasOwnProperty(o.text)){var y=t.labelalias[o.text];\"string\"==typeof y&&(o.text=y)}return(\"boundaries\"===t.tickson||t.showdividers)&&(o.xbnd=[f(o.x-.5),f(o.x+t.dtick-.5)]),o},Z.hoverLabelText=function(t,e,r){r&&(t=s.extendFlat({},t,{hoverformat:r}));var n=s.isArrayOrTypedArray(e)?e[0]:e,i=s.isArrayOrTypedArray(e)?e[1]:void 0;if(void 0!==i&&i!==n)return Z.hoverLabelText(t,n,r)+\" - \"+Z.hoverLabelText(t,i,r);var a=\"log\"===t.type&&n<=0,o=Z.tickText(t,t.c2l(a?-n:n),\"hover\").text;return a?0===n?\"0\":z+o:o};var xt=[\"f\",\"p\",\"n\",\"μ\",\"m\",\"\",\"k\",\"M\",\"G\",\"T\"];function _t(t){return\"SI\"===t||\"B\"===t}function bt(t){return t>14||t<-15}function wt(t,e,r,n){var a=t<0,o=e._tickround,l=r||e.exponentformat||\"B\",c=e._tickexponent,u=Z.getTickFormat(e),h=e.separatethousands;if(n){var f={exponentformat:l,minexponent:e.minexponent,dtick:\"none\"===e.showexponent?e.dtick:i(t)&&Math.abs(t)||1,range:\"none\"===e.showexponent?e.range.map(e.r2d):[0,t||1]};yt(f),o=(Number(f._tickround)||0)+4,c=f._tickexponent,e.hoverformat&&(u=e.hoverformat)}if(u)return e._numFormat(u)(t).replace(/-/g,z);var p,d=Math.pow(10,-o)/2;if(\"none\"===l&&(c=0),(t=Math.abs(t))<d)t=\"0\",a=!1;else{if(t+=d,c&&(t*=Math.pow(10,-c),o+=c),0===o)t=String(Math.floor(t));else if(o<0){t=(t=String(Math.round(t))).substr(0,t.length+o);for(var m=o;m<0;m++)t+=\"0\"}else{var g=(t=String(t)).indexOf(\".\")+1;g&&(t=t.substr(0,g+o).replace(/\\.?0+$/,\"\"))}t=s.numSeparate(t,e._separators,h)}return c&&\"hide\"!==l&&(_t(l)&&bt(c)&&(l=\"power\"),p=c<0?z+-c:\"power\"!==l?\"+\"+c:String(c),\"e\"===l||\"E\"===l?t+=l+p:\"power\"===l?t+=\"×10<sup>\"+p+\"</sup>\":\"B\"===l&&9===c?t+=\"B\":_t(l)&&(t+=xt[c/3+5])),a?z+t:t}function Tt(t,e){if(t){var r=Object.keys(j).reduce((function(t,r){return-1!==e.indexOf(r)&&j[r].forEach((function(e){t[e]=1})),t}),{});Object.keys(t).forEach((function(e){r[e]||(1===e.length?t[e]=0:delete t[e])}))}}function kt(t,e){for(var r=[],n={},i=0;i<e.length;i++){var a=e[i];n[a.text2]?n[a.text2].push(a.x):n[a.text2]=[a.x]}for(var o in n)r.push(vt(t,s.interp(n[o],.5),o));return r}function At(t){return void 0!==t.periodX?t.periodX:t.x}function Mt(t){return[t.text,t.x,t.axInfo,t.font,t.fontSize,t.fontColor].join(\"_\")}function St(t){var e=t.title.font.size,r=(t.title.text.match(c.BR_TAG_ALL)||[]).length;return t.title.hasOwnProperty(\"standoff\")?e*(q+r*H):r?e*(r+1)*H:e}function Et(t,e){var r=t.l2p(e);return r>1&&r<t._length-1}function Ct(t){var e=n.select(t),r=e.select(\".text-math-group\");return r.empty()?e.select(\"text\"):r}function Lt(t){return t._id+\".automargin\"}function It(t){return Lt(t)+\".mirror\"}function Pt(t){return t._id+\".rangeslider\"}function zt(t,e){for(var r=0;r<e.length;r++)-1===t.indexOf(e[r])&&t.push(e[r])}function Ot(t,e,r){var n,i,a=[],o=[],l=t.layout;for(n=0;n<e.length;n++)a.push(Z.getFromId(t,e[n]));for(n=0;n<r.length;n++)o.push(Z.getFromId(t,r[n]));var c=Object.keys(p),u=[\"anchor\",\"domain\",\"overlaying\",\"position\",\"side\",\"tickangle\",\"editType\"],h=[\"linear\",\"log\"];for(n=0;n<c.length;n++){var f=c[n],d=a[0][f],m=o[0][f],g=!0,y=!1,v=!1;if(\"_\"!==f.charAt(0)&&\"function\"!=typeof d&&-1===u.indexOf(f)){for(i=1;i<a.length&&g;i++){var x=a[i][f];\"type\"===f&&-1!==h.indexOf(d)&&-1!==h.indexOf(x)&&d!==x?y=!0:x!==d&&(g=!1)}for(i=1;i<o.length&&g;i++){var _=o[i][f];\"type\"===f&&-1!==h.indexOf(m)&&-1!==h.indexOf(_)&&m!==_?v=!0:o[i][f]!==m&&(g=!1)}g&&(y&&(l[a[0]._name].type=\"linear\"),v&&(l[o[0]._name].type=\"linear\"),Dt(l,f,a,o,t._fullLayout._dfltTitle))}}for(n=0;n<t._fullLayout.annotations.length;n++){var b=t._fullLayout.annotations[n];-1!==e.indexOf(b.xref)&&-1!==r.indexOf(b.yref)&&s.swapAttrs(l.annotations[n],[\"?\"])}}function Dt(t,e,r,n,i){var a,o=s.nestedProperty,l=o(t[r[0]._name],e).get(),c=o(t[n[0]._name],e).get();for(\"title\"===e&&(l&&l.text===i.x&&(l.text=i.y),c&&c.text===i.y&&(c.text=i.x)),a=0;a<r.length;a++)o(t,r[a]._name+\".\"+e).set(c);for(a=0;a<n.length;a++)o(t,n[a]._name+\".\"+e).set(l)}function Rt(t){return\"angularaxis\"===t._id}function Ft(t,e){for(var r=e._rangebreaks.length,n=0;n<r;n++){var i=e._rangebreaks[n];if(t>=i.min&&t<i.max)return i.max}return t}function Bt(t){return-1!==(t.ticklabelposition||\"\").indexOf(\"inside\")}function Nt(t,e){Bt(t._anchorAxis||{})&&t._hideCounterAxisInsideTickLabels&&t._hideCounterAxisInsideTickLabels(e)}function jt(t,e,r,n){var i,a=\"free\"===t.anchor||void 0!==t.overlaying&&!1!==t.overlaying?t.overlaying:t._id;i=n?\"right\"===t.side?e:-e:e,a in r||(r[a]={}),t.side in r[a]||(r[a][t.side]=0),r[a][t.side]+=i}Z.getTickFormat=function(t){var e,r,n,i,a,o,s,l;function c(t){return\"string\"!=typeof t?t:Number(t.replace(\"M\",\"\"))*T}function u(t,e){var r=[\"L\",\"D\"];if(typeof t==typeof e){if(\"number\"==typeof t)return t-e;var n=r.indexOf(t.charAt(0)),i=r.indexOf(e.charAt(0));return n===i?Number(t.replace(/(L|D)/g,\"\"))-Number(e.replace(/(L|D)/g,\"\")):n-i}return\"number\"==typeof t?1:-1}function h(t,e){var r=null===e[0],n=null===e[1],i=u(t,e[0])>=0,a=u(t,e[1])<=0;return(r||i)&&(n||a)}if(t.tickformatstops&&t.tickformatstops.length>0)switch(t.type){case\"date\":case\"linear\":for(e=0;e<t.tickformatstops.length;e++)if((n=t.tickformatstops[e]).enabled&&(i=t.dtick,a=n.dtickrange,o=void 0,s=void 0,l=void 0,o=c||function(t){return t},s=a[0],l=a[1],(!s&&\"number\"!=typeof s||o(s)<=o(i))&&(!l&&\"number\"!=typeof l||o(l)>=o(i)))){r=n;break}break;case\"log\":for(e=0;e<t.tickformatstops.length;e++)if((n=t.tickformatstops[e]).enabled&&h(t.dtick,n.dtickrange)){r=n;break}}return r?r.value:t.tickformat},Z.getSubplots=function(t,e){var r=t._fullLayout._subplots,n=r.cartesian.concat(r.gl2d||[]),i=e?Z.findSubplotsWithAxis(n,e):n;return i.sort((function(t,e){var r=t.substr(1).split(\"y\"),n=e.substr(1).split(\"y\");return r[0]===n[0]?+r[1]-+n[1]:+r[0]-+n[0]})),i},Z.findSubplotsWithAxis=function(t,e){for(var r=new RegExp(\"x\"===e._id.charAt(0)?\"^\"+e._id+\"y\":e._id+\"$\"),n=[],i=0;i<t.length;i++){var a=t[i];r.test(a)&&n.push(a)}return n},Z.makeClipPaths=function(t){var e=t._fullLayout;if(!e._hasOnlyLargeSploms){var r,i,a={_offset:0,_length:e.width,_id:\"\"},o={_offset:0,_length:e.height,_id:\"\"},s=Z.list(t,\"x\",!0),l=Z.list(t,\"y\",!0),c=[];for(r=0;r<s.length;r++)for(c.push({x:s[r],y:o}),i=0;i<l.length;i++)0===r&&c.push({x:a,y:l[i]}),c.push({x:s[r],y:l[i]});var u=e._clips.selectAll(\".axesclip\").data(c,(function(t){return t.x._id+t.y._id}));u.enter().append(\"clipPath\").classed(\"axesclip\",!0).attr(\"id\",(function(t){return\"clip\"+e._uid+t.x._id+t.y._id})).append(\"rect\"),u.exit().remove(),u.each((function(t){n.select(this).select(\"rect\").attr({x:t.x._offset||0,y:t.y._offset||0,width:t.x._length||1,height:t.y._length||1})}))}},Z.draw=function(t,e,r){var n=t._fullLayout;\"redraw\"===e&&n._paper.selectAll(\"g.subplot\").each((function(t){var e=t[0],r=n._plots[e];if(r){var i=r.xaxis,a=r.yaxis;r.xaxislayer.selectAll(\".\"+i._id+\"tick\").remove(),r.yaxislayer.selectAll(\".\"+a._id+\"tick\").remove(),r.xaxislayer.selectAll(\".\"+i._id+\"tick2\").remove(),r.yaxislayer.selectAll(\".\"+a._id+\"tick2\").remove(),r.xaxislayer.selectAll(\".\"+i._id+\"divider\").remove(),r.yaxislayer.selectAll(\".\"+a._id+\"divider\").remove(),r.minorGridlayer&&r.minorGridlayer.selectAll(\"path\").remove(),r.gridlayer&&r.gridlayer.selectAll(\"path\").remove(),r.zerolinelayer&&r.zerolinelayer.selectAll(\"path\").remove(),n._infolayer.select(\".g-\"+i._id+\"title\").remove(),n._infolayer.select(\".g-\"+a._id+\"title\").remove()}}));var i=e&&\"redraw\"!==e?e:Z.listIds(t),a=Z.list(t).filter((function(t){return t.autoshift})).map((function(t){return t.overlaying}));i.map((function(e){var r=Z.getFromId(t,e);if(\"sync\"===r.tickmode&&r.overlaying){var n=i.findIndex((function(t){return t===r.overlaying}));n>=0&&i.unshift(i.splice(n,1).shift())}}));var o={false:{left:0,right:0}};return s.syncOrAsync(i.map((function(e){return function(){if(e){var n=Z.getFromId(t,e);r||(r={}),r.axShifts=o,r.overlayingShiftedAx=a;var i=Z.drawOne(t,n,r);return n._shiftPusher&&jt(n,n._fullDepth||0,o,!0),n._r=n.range.slice(),n._rl=s.simpleMap(n._r,n.r2l),i}}})))},Z.drawOne=function(t,e,r){var n,i,l,p=(r=r||{}).axShifts||{},d=r.overlayingShiftedAx||[];e.setScale();var m=t._fullLayout,g=e._id,y=g.charAt(0),v=Z.counterLetter(g),x=m._plots[e._mainSubplot];if(x){if(e._shiftPusher=e.autoshift||-1!==d.indexOf(e._id)||-1!==d.indexOf(e.overlaying),e._shiftPusher&\"free\"===e.anchor){var _=e.linewidth/2||0;\"inside\"===e.ticks&&(_+=e.ticklen),jt(e,_,p,!0),jt(e,e.shift||0,p,!1)}!0===r.skipTitle&&void 0!==e._shift||(e._shift=function(t,e){return t.autoshift?e[t.overlaying][t.side]:t.shift||0}(e,p));var b=x[y+\"axislayer\"],w=e._mainLinePosition,T=w+=e._shift,k=e._mainMirrorPosition,A=e._vals=Z.calcTicks(e),M=[e.mirror,T,k].join(\"_\");for(n=0;n<A.length;n++)A[n].axInfo=M;e._selections={},e._tickAngles&&(e._prevTickAngles=e._tickAngles),e._tickAngles={},e._depth=null;var S={};if(e.visible){var E,C,L=Z.makeTransTickFn(e),I=Z.makeTransTickLabelFn(e),P=\"inside\"===e.ticks,z=\"outside\"===e.ticks;if(\"boundaries\"===e.tickson){var O=function(t,e){var r,n=[],i=function(t,e){var r=t.xbnd[e];null!==r&&n.push(s.extendFlat({},t,{x:r}))};if(e.length){for(r=0;r<e.length;r++)i(e[r],0);i(e[r-1],1)}return n}(0,A);C=Z.clipEnds(e,O),E=P?C:O}else C=Z.clipEnds(e,A),E=P&&\"period\"!==e.ticklabelmode?C:A;var D,R=e._gridVals=C,F=function(t,e){var r,n,i=[],a=e.length&&e[e.length-1].x<e[0].x,o=function(t,e){var r=t.xbnd[e];null!==r&&i.push(s.extendFlat({},t,{x:r}))};if(t.showdividers&&e.length){for(r=0;r<e.length;r++){var l=e[r];l.text2!==n&&o(l,a?1:0),n=l.text2}o(e[r-1],a?0:1)}return i}(e,A);if(!m._hasOnlyLargeSploms){var B=e._subplotsWith,N={};for(n=0;n<B.length;n++){i=B[n];var j=(l=m._plots[i])[v+\"axis\"],U=j._mainAxis._id;if(!N[U]){N[U]=1;var W=\"x\"===y?\"M0,\"+j._offset+\"v\"+j._length:\"M\"+j._offset+\",0h\"+j._length;Z.drawGrid(t,e,{vals:R,counterAxis:j,layer:l.gridlayer.select(\".\"+g),minorLayer:l.minorGridlayer.select(\".\"+g),path:W,transFn:L}),Z.drawZeroLine(t,e,{counterAxis:j,layer:l.zerolinelayer,path:W,transFn:L})}}}var Y=Z.getTickSigns(e),X=Z.getTickSigns(e,\"minor\");if(e.ticks||e.minor&&e.minor.ticks){var $,J,K,Q,tt=Z.makeTickPath(e,T,Y[2]),et=Z.makeTickPath(e,T,X[2],{minor:!0});if(e._anchorAxis&&e.mirror&&!0!==e.mirror?($=Z.makeTickPath(e,k,Y[3]),J=Z.makeTickPath(e,k,X[3],{minor:!0}),K=tt+$,Q=et+J):($=\"\",J=\"\",K=tt,Q=et),e.showdividers&&z&&\"boundaries\"===e.tickson){var rt={};for(n=0;n<F.length;n++)rt[F[n].x]=1;D=function(t){return rt[t.x]?$:K}}else D=function(t){return t.minor?Q:K}}if(Z.drawTicks(t,e,{vals:E,layer:b,path:D,transFn:L}),\"allticks\"===e.mirror){var nt=Object.keys(e._linepositions||{});for(n=0;n<nt.length;n++){i=nt[n],l=m._plots[i];var it=e._linepositions[i]||[],at=it[0],ot=it[1],st=it[2],lt=Z.makeTickPath(e,at,st?Y[0]:X[0],{minor:st})+Z.makeTickPath(e,ot,st?Y[1]:X[1],{minor:st});Z.drawTicks(t,e,{vals:E,layer:l[y+\"axislayer\"],path:lt,transFn:L})}}var ct=[];if(ct.push((function(){return Z.drawLabels(t,e,{vals:A,layer:b,plotinfo:l,transFn:I,labelFns:Z.makeLabelFns(e,T)})})),\"multicategory\"===e.type){var ut={x:2,y:10}[y];ct.push((function(){var r={x:\"height\",y:\"width\"}[y],n=ft()[r]+ut+(e._tickAngles[g+\"tick\"]?e.tickfont.size*H:0);return Z.drawLabels(t,e,{vals:kt(e,A),layer:b,cls:g+\"tick2\",repositionOnUpdate:!0,secondary:!0,transFn:L,labelFns:Z.makeLabelFns(e,T+n*Y[4])})})),ct.push((function(){return e._depth=Y[4]*(ft(\"tick2\")[e.side]-T),function(t,e,r){var n=e._id+\"divider\",i=r.vals,a=r.layer.selectAll(\"path.\"+n).data(i,Mt);a.exit().remove(),a.enter().insert(\"path\",\":first-child\").classed(n,1).classed(\"crisp\",1).call(h.stroke,e.dividercolor).style(\"stroke-width\",f.crispRound(t,e.dividerwidth,1)+\"px\"),a.attr(\"transform\",r.transFn).attr(\"d\",r.path)}(t,e,{vals:F,layer:b,path:Z.makeTickPath(e,T,Y[4],{len:e._depth}),transFn:L})}))}else e.title.hasOwnProperty(\"standoff\")&&ct.push((function(){e._depth=Y[4]*(ft()[e.side]-T)}));var ht=o.getComponentMethod(\"rangeslider\",\"isVisible\")(e);return r.skipTitle||ht&&\"bottom\"===e.side||ct.push((function(){return function(t,e){var r,n=t._fullLayout,i=e._id,a=i.charAt(0),o=e.title.font.size,s=(e.title.text.match(c.BR_TAG_ALL)||[]).length;if(e.title.hasOwnProperty(\"standoff\"))\"bottom\"===e.side||\"right\"===e.side?r=e._depth+e.title.standoff+o*q:\"top\"!==e.side&&\"left\"!==e.side||(r=e._depth+e.title.standoff+o*(V+s*H));else{var l=Bt(e);if(\"multicategory\"===e.type)r=e._depth;else{var h=1.5*o;l&&(h=.5*o,\"outside\"===e.ticks&&(h+=e.ticklen)),r=10+h+(e.linewidth?e.linewidth-1:0)}l||(r+=\"x\"===a?\"top\"===e.side?o*(e.showticklabels?1:0):o*(e.showticklabels?1.5:.5):\"right\"===e.side?o*(e.showticklabels?1:.5):o*(e.showticklabels?.5:0))}var p,d,m,g,y=Z.getPxPosition(t,e);if(\"x\"===a?(d=e._offset+e._length/2,m=\"top\"===e.side?y-r:y+r):(m=e._offset+e._length/2,d=\"right\"===e.side?y+r:y-r,p={rotate:\"-90\",offset:0}),\"multicategory\"!==e.type){var v=e._selections[e._id+\"tick\"];if(g={selection:v,side:e.side},v&&v.node()&&v.node().parentNode){var x=f.getTranslate(v.node().parentNode);g.offsetLeft=x.x,g.offsetTop=x.y}e.title.hasOwnProperty(\"standoff\")&&(g.pad=0)}return e._titleStandoff=r,u.draw(t,i+\"title\",{propContainer:e,propName:e._name+\".title.text\",placeholder:n._dfltTitle[a],avoid:g,transform:p,attributes:{x:d,y:m,\"text-anchor\":\"middle\"}})}(t,e)})),ct.push((function(){var r,n,i,s,l=e.side.charAt(0),c=G[e.side].charAt(0),u=Z.getPxPosition(t,e),h=z?e.ticklen:0;(e.automargin||ht||e._shiftPusher)&&(\"multicategory\"===e.type?r=ft(\"tick2\"):(r=ft(),\"x\"===y&&\"b\"===l&&(e._depth=Math.max(r.width>0?r.bottom-u:0,h))));var f=0,p=0;if(e._shiftPusher&&(f=Math.max(h,r.height>0?\"l\"===l?u-r.left:r.right-u:0),e.title.text!==m._dfltTitle[y]&&(p=(e._titleStandoff||0)+(e._titleScoot||0),\"l\"===l&&(p+=St(e))),e._fullDepth=Math.max(f,p)),e.automargin){n={x:0,y:0,r:0,l:0,t:0,b:0};var d=[0,1],g=\"number\"==typeof e._shift?e._shift:0;if(\"x\"===y){if(\"b\"===l?n[l]=e._depth:(n[l]=e._depth=Math.max(r.width>0?u-r.top:0,h),d.reverse()),r.width>0){var x=r.right-(e._offset+e._length);x>0&&(n.xr=1,n.r=x);var _=e._offset-r.left;_>0&&(n.xl=0,n.l=_)}}else if(\"l\"===l?(e._depth=Math.max(r.height>0?u-r.left:0,h),n[l]=e._depth-g):(e._depth=Math.max(r.height>0?r.right-u:0,h),n[l]=e._depth+g,d.reverse()),r.height>0){var b=r.bottom-(e._offset+e._length);b>0&&(n.yb=0,n.b=b);var w=e._offset-r.top;w>0&&(n.yt=1,n.t=w)}n[v]=\"free\"===e.anchor?e.position:e._anchorAxis.domain[d[0]],e.title.text!==m._dfltTitle[y]&&(n[l]+=St(e)+(e.title.standoff||0)),e.mirror&&\"free\"!==e.anchor&&((i={x:0,y:0,r:0,l:0,t:0,b:0})[c]=e.linewidth,e.mirror&&!0!==e.mirror&&(i[c]+=h),!0===e.mirror||\"ticks\"===e.mirror?i[v]=e._anchorAxis.domain[d[1]]:\"all\"!==e.mirror&&\"allticks\"!==e.mirror||(i[v]=[e._counterDomainMin,e._counterDomainMax][d[1]]))}ht&&(s=o.getComponentMethod(\"rangeslider\",\"autoMarginOpts\")(t,e)),\"string\"==typeof e.automargin&&(Tt(n,e.automargin),Tt(i,e.automargin)),a.autoMargin(t,Lt(e),n),a.autoMargin(t,It(e),i),a.autoMargin(t,Pt(e),s)})),s.syncOrAsync(ct)}}function ft(t){var r=g+(t||\"tick\");return S[r]||(S[r]=function(t,e,r){var n,i,a,o;if(t._selections[e].size())n=1/0,i=-1/0,a=1/0,o=-1/0,t._selections[e].each((function(){var t=Ct(this),e=f.bBox(t.node().parentNode);n=Math.min(n,e.top),i=Math.max(i,e.bottom),a=Math.min(a,e.left),o=Math.max(o,e.right)}));else{var s=Z.makeLabelFns(t,r);n=i=s.yFn({dx:0,dy:0,fontSize:0}),a=o=s.xFn({dx:0,dy:0,fontSize:0})}return{top:n,bottom:i,left:a,right:o,height:i-n,width:o-a}}(e,r,T)),S[r]}},Z.getTickSigns=function(t,e){var r=t._id.charAt(0),n={x:\"top\",y:\"right\"}[r],i=t.side===n?1:-1,a=[-1,1,i,-i];return\"inside\"!==(e?(t.minor||{}).ticks:t.ticks)==(\"x\"===r)&&(a=a.map((function(t){return-t}))),t.side&&a.push({l:-1,t:-1,r:1,b:1}[t.side.charAt(0)]),a},Z.makeTransTickFn=function(t){return\"x\"===t._id.charAt(0)?function(e){return l(t._offset+t.l2p(e.x),0)}:function(e){return l(0,t._offset+t.l2p(e.x))}},Z.makeTransTickLabelFn=function(t){var e=function(t){var e=t.ticklabelposition||\"\",r=function(t){return-1!==e.indexOf(t)},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 c=t.side,u=l?(t.tickwidth||0)/2:0,h=3,f=t.tickfont?t.tickfont.size:12;return(o||n)&&(u+=f*q,h+=(t.linewidth||0)/2),(i||a)&&(u+=(t.linewidth||0)/2,h+=3),s&&\"top\"===c&&(h-=f*(1-q)),(i||n)&&(u=-u),\"bottom\"!==c&&\"right\"!==c||(h=-h),[l?u:0,s?h:0]}(t),r=t.ticklabelshift||0,n=t.ticklabelstandoff||0,i=e[0],a=e[1],o=t.range[0]>t.range[1],s=t.ticklabelposition&&-1!==t.ticklabelposition.indexOf(\"inside\"),c=!s;if(r&&(r*=o?-1:1),n){var u=t.side;n*=s&&(\"top\"===u||\"left\"===u)||c&&(\"bottom\"===u||\"right\"===u)?1:-1}return\"x\"===t._id.charAt(0)?function(e){return l(i+t._offset+t.l2p(At(e))+r,a+n)}:function(e){return l(a+n,i+t._offset+t.l2p(At(e))+r)}},Z.makeTickPath=function(t,e,r,n){n||(n={});var i=n.minor;if(i&&!t.minor)return\"\";var a=void 0!==n.len?n.len:i?t.minor.ticklen:t.ticklen,o=t._id.charAt(0),s=(t.linewidth||1)/2;return\"x\"===o?\"M0,\"+(e+s*r)+\"v\"+a*r:\"M\"+(e+s*r)+\",0h\"+a*r},Z.makeLabelFns=function(t,e,r){var n=t.ticklabelposition||\"\",a=function(t){return-1!==n.indexOf(t)},o=a(\"top\"),l=a(\"left\"),c=a(\"right\"),u=a(\"bottom\")||l||o||c,h=a(\"inside\"),f=\"inside\"===n&&\"inside\"===t.ticks||!h&&\"outside\"===t.ticks&&\"boundaries\"!==t.tickson,p=0,d=0,m=f?t.ticklen:0;if(h?m*=-1:u&&(m=0),f&&(p+=m,r)){var g=s.deg2rad(r);p=m*Math.cos(g)+1,d=m*Math.sin(g)}t.showticklabels&&(f||t.showline)&&(p+=.2*t.tickfont.size);var y,v,x,_,b,w={labelStandoff:p+=(t.linewidth||1)/2*(h?-1:1),labelShift:d},T=0,k=t.side,A=t._id.charAt(0),M=t.tickangle;if(\"x\"===A)_=(b=!h&&\"bottom\"===k||h&&\"top\"===k)?1:-1,h&&(_*=-1),y=d*_,v=e+p*_,x=b?1:-.2,90===Math.abs(M)&&(h?x+=V:x=-90===M&&\"bottom\"===k?q:90===M&&\"top\"===k?V:.5,T=V/2*(M/90)),w.xFn=function(t){return t.dx+y+T*t.fontSize},w.yFn=function(t){return t.dy+v+t.fontSize*x},w.anchorFn=function(t,e){if(u){if(l)return\"end\";if(c)return\"start\"}return i(e)&&0!==e&&180!==e?e*_<0!==h?\"end\":\"start\":\"middle\"},w.heightFn=function(e,r,n){return r<-60||r>60?-.5*n:\"top\"===t.side!==h?-n:0};else if(\"y\"===A){if(_=(b=!h&&\"left\"===k||h&&\"right\"===k)?1:-1,h&&(_*=-1),y=p,v=d*_,x=0,h||90!==Math.abs(M)||(x=-90===M&&\"left\"===k||90===M&&\"right\"===k?q:.5),h){var S=i(M)?+M:0;if(0!==S){var E=s.deg2rad(S);T=Math.abs(Math.sin(E))*q*_,x=0}}w.xFn=function(t){return t.dx+e-(y+t.fontSize*x)*_+T*t.fontSize},w.yFn=function(t){return t.dy+v+t.fontSize*V},w.anchorFn=function(t,e){return i(e)&&90===Math.abs(e)?\"middle\":b?\"end\":\"start\"},w.heightFn=function(e,r,n){return\"right\"===t.side&&(r*=-1),r<-30?-n:r<30?-.5*n:0}}return w},Z.drawTicks=function(t,e,r){r=r||{};var i=e._id+\"tick\",a=[].concat(e.minor&&e.minor.ticks?r.vals.filter((function(t){return t.minor&&!t.noTick})):[]).concat(e.ticks?r.vals.filter((function(t){return!t.minor&&!t.noTick})):[]),o=r.layer.selectAll(\"path.\"+i).data(a,Mt);o.exit().remove(),o.enter().append(\"path\").classed(i,1).classed(\"ticks\",1).classed(\"crisp\",!1!==r.crisp).each((function(t){return h.stroke(n.select(this),t.minor?e.minor.tickcolor:e.tickcolor)})).style(\"stroke-width\",(function(r){return f.crispRound(t,r.minor?e.minor.tickwidth:e.tickwidth,1)+\"px\"})).attr(\"d\",r.path).style(\"display\",null),Nt(e,[B]),o.attr(\"transform\",r.transFn)},Z.drawGrid=function(t,e,r){if(r=r||{},\"sync\"!==e.tickmode){var i=e._id+\"grid\",a=e.minor&&e.minor.showgrid,o=a?r.vals.filter((function(t){return t.minor})):[],s=e.showgrid?r.vals.filter((function(t){return!t.minor})):[],l=r.counterAxis;if(l&&Z.shouldShowZeroLine(t,e,l))for(var c=\"array\"===e.tickmode,u=0;u<s.length;u++){var p=s[u].x;if(c?!p:Math.abs(p)<e.dtick/100){if(s=s.slice(0,u).concat(s.slice(u+1)),!c)break;u--}}e._gw=f.crispRound(t,e.gridwidth,1);for(var d=a?f.crispRound(t,e.minor.gridwidth,1):0,m=r.layer,g=r.minorLayer,y=1;y>=0;y--){var v=y?m:g;if(v){var x=v.selectAll(\"path.\"+i).data(y?s:o,Mt);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(t){return h.stroke(n.select(this),t.minor?e.minor.gridcolor:e.gridcolor||\"#ddd\")})).style(\"stroke-dasharray\",(function(t){return f.dashStyle(t.minor?e.minor.griddash:e.griddash,t.minor?e.minor.gridwidth:e.gridwidth)})).style(\"stroke-width\",(function(t){return(t.minor?d:e._gw)+\"px\"})).style(\"display\",null),\"function\"==typeof r.path&&x.attr(\"d\",r.path)}}Nt(e,[R,F])}},Z.drawZeroLine=function(t,e,r){r=r||r;var n=e._id+\"zl\",i=Z.shouldShowZeroLine(t,e,r.counterAxis),a=r.layer.selectAll(\"path.\"+n).data(i?[{x:0,id:e._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(t,e){return X(t.id,e.id)}))})),a.attr(\"transform\",r.transFn).attr(\"d\",r.path).call(h.stroke,e.zerolinecolor||h.defaultLine).style(\"stroke-width\",f.crispRound(t,e.zerolinewidth,e._gw||1)+\"px\").style(\"display\",null),Nt(e,[D])},Z.drawLabels=function(t,e,r){r=r||{};var a=t._fullLayout,o=e._id,u=r.cls||o+\"tick\",h=r.vals.filter((function(t){return t.text})),p=r.labelFns,d=r.secondary?0:e.tickangle,m=(e._prevTickAngles||{})[u],g=r.layer.selectAll(\"g.\"+u).data(e.showticklabels?h:[],Mt),y=[];function v(t,a){t.each((function(t){var o=n.select(this),s=o.select(\".text-math-group\"),u=p.anchorFn(t,a),h=r.transFn.call(o.node(),t)+(i(a)&&0!=+a?\" rotate(\"+a+\",\"+p.xFn(t)+\",\"+(p.yFn(t)-t.fontSize/2)+\")\":\"\"),d=c.lineCount(o),m=H*t.fontSize,g=p.heightFn(t,i(a)?+a:0,(d-1)*m);if(g&&(h+=l(0,g)),s.empty()){var y=o.select(\"text\");y.attr({transform:h,\"text-anchor\":u}),y.style(\"opacity\",1),e._adjustTickLabelsOverflow&&e._adjustTickLabelsOverflow()}else{var v=f.bBox(s.node()).width*{end:-.5,start:.5}[u];s.attr(\"transform\",h+l(v,0))}}))}g.enter().append(\"g\").classed(u,1).append(\"text\").attr(\"text-anchor\",\"middle\").each((function(e){var r=n.select(this),i=t._promises.length;r.call(c.positionText,p.xFn(e),p.yFn(e)).call(f.font,{family:e.font,size:e.fontSize,color:e.fontColor,weight:e.fontWeight,style:e.fontStyle,variant:e.fontVariant,textcase:e.fontTextcase,lineposition:e.fontLineposition,shadow:e.fontShadow}).text(e.text).call(c.convertToTspans,t),t._promises[i]?y.push(t._promises.pop().then((function(){v(r,d)}))):v(r,d)})),Nt(e,[N]),g.exit().remove(),r.repositionOnUpdate&&g.each((function(t){n.select(this).select(\"text\").call(c.positionText,p.xFn(t),p.yFn(t))})),e._adjustTickLabelsOverflow=function(){var r=e.ticklabeloverflow;if(r&&\"allow\"!==r){var i=-1!==r.indexOf(\"hide\"),o=\"x\"===e._id.charAt(0),l=0,c=o?t._fullLayout.width:t._fullLayout.height;if(-1!==r.indexOf(\"domain\")){var u=s.simpleMap(e.range,e.r2l);l=e.l2p(u[0])+e._offset,c=e.l2p(u[1])+e._offset}var h=Math.min(l,c),p=Math.max(l,c),d=e.side,m=1/0,y=-1/0;for(var v in g.each((function(t){var r=n.select(this);if(r.select(\".text-math-group\").empty()){var a=f.bBox(r.node()),s=0;o?(a.right>p||a.left<h)&&(s=1):(a.bottom>p||a.top+(e.tickangle?0:t.fontSize/4)<h)&&(s=1);var l=r.select(\"text\");s?i&&l.style(\"opacity\",0):(l.style(\"opacity\",1),m=\"bottom\"===d||\"right\"===d?Math.min(m,o?a.top:a.left):-1/0,y=\"top\"===d||\"left\"===d?Math.max(y,o?a.bottom:a.right):1/0)}})),a._plots){var x=a._plots[v];if(e._id===x.xaxis._id||e._id===x.yaxis._id){var _=o?x.yaxis:x.xaxis;_&&(_[\"_visibleLabelMin_\"+e._id]=m,_[\"_visibleLabelMax_\"+e._id]=y)}}}},e._hideCounterAxisInsideTickLabels=function(t){var r=\"x\"===e._id.charAt(0),i=[];for(var o in a._plots){var s=a._plots[o];e._id!==s.xaxis._id&&e._id!==s.yaxis._id||i.push(r?s.yaxis:s.xaxis)}i.forEach((function(r,i){r&&Bt(r)&&(t||[D,F,R,B,N]).forEach((function(t){var o=\"tick\"===t.K&&\"text\"===t.L&&\"period\"===e.ticklabelmode,s=a._plots[e._mainSubplot];(t.K===D.K?s.zerolinelayer.selectAll(\".\"+e._id+\"zl\"):t.K===F.K?s.minorGridlayer.selectAll(\".\"+e._id):t.K===R.K?s.gridlayer.selectAll(\".\"+e._id):s[e._id.charAt(0)+\"axislayer\"]).each((function(){var a=n.select(this);t.L&&(a=a.selectAll(t.L)),a.each((function(a){var s=e.l2p(o?At(a):a.x)+e._offset,l=n.select(this);s<e[\"_visibleLabelMax_\"+r._id]&&s>e[\"_visibleLabelMin_\"+r._id]?l.style(\"display\",\"none\"):\"tick\"!==t.K||i||l.style(\"display\",null)}))}))}))}))},v(g,m+1?m:d);var x=null;e._selections&&(e._selections[u]=g);var _=[function(){return y.length&&Promise.all(y)}];e.automargin&&a._redrawFromAutoMarginCount&&90===m?(x=m,_.push((function(){v(g,m)}))):_.push((function(){if(v(g,d),h.length&&e.autotickangles&&(\"log\"!==e.type||\"D\"!==String(e.dtick).charAt(0))){x=e.autotickangles[0];var t,n=0,i=[],a=1;g.each((function(t){n=Math.max(n,t.fontSize);var r=e.l2p(t.x),o=Ct(this),s=f.bBox(o.node());a=Math.max(a,c.lineCount(o)),i.push({top:0,bottom:10,height:10,left:r-s.width/2,right:r+s.width/2+2,width:s.width+2})}));var o=(\"boundaries\"===e.tickson||e.showdividers)&&!r.secondary,l=h.length,u=Math.abs((h[l-1].x-h[0].x)*e._m)/(l-1),p=o?u/2:u,m=o?e.ticklen:1.25*n*a,y=p/Math.sqrt(Math.pow(p,2)+Math.pow(m,2)),_=e.autotickangles.map((function(t){return t*Math.PI/180})),b=_.find((function(t){return Math.abs(Math.cos(t))<=y}));void 0===b&&(b=_.reduce((function(t,e){return Math.abs(Math.cos(t))<Math.abs(Math.cos(e))?t:e}),_[0]));var w=b*(180/Math.PI);if(o){var T=2;for(e.ticks&&(T+=e.tickwidth/2),t=0;t<i.length;t++){var k=h[t].xbnd,A=i[t];if(null!==k[0]&&A.left-e.l2p(k[0])<T||null!==k[1]&&e.l2p(k[1])-A.right<T){x=w;break}}}else{var M=e.ticklabelposition||\"\",S=function(t){return-1!==M.indexOf(t)},E=S(\"top\"),C=S(\"left\"),L=S(\"right\"),I=S(\"bottom\")||C||E||L?(e.tickwidth||0)+6:0;for(t=0;t<i.length-1;t++)if(s.bBoxIntersect(i[t],i[t+1],I)){x=w;break}}x&&v(g,x)}})),e._tickAngles&&_.push((function(){e._tickAngles[u]=null===x?i(d)?d:0:x}));var b=function(){var t=0,r=0;return g.each((function(n,i){var a,o=Ct(this);o.select(\".text-math-group\").empty()&&(e._vals[i]&&(a=e._vals[i].bb||f.bBox(o.node()),e._vals[i].bb=a),t=Math.max(t,a.width),r=Math.max(r,a.height))})),{labelsMaxW:t,labelsMaxH:r}},w=e._anchorAxis;if(w&&(w.autorange||w.insiderange)&&Bt(e)&&!$(a,e._id)&&(a._insideTickLabelsUpdaterange||(a._insideTickLabelsUpdaterange={}),w.autorange&&(a._insideTickLabelsUpdaterange[w._name+\".autorange\"]=w.autorange,_.push(b)),w.insiderange)){var T=b(),k=\"y\"===e._id.charAt(0)?T.labelsMaxW:T.labelsMaxH;k+=6,\"inside\"===e.ticklabelposition&&(k+=e.ticklen||0);var A=\"right\"===e.side||\"top\"===e.side?1:-1,M=1===A?1:0,S=1===A?0:1,E=[];E[S]=w.range[S];var C=w.range,L=w.r2p(C[M]),I=w.r2p(C[S]),P=a._insideTickLabelsUpdaterange[w._name+\".range\"];if(P){var z=w.r2p(P[M]),O=w.r2p(P[S]),j=A*(\"y\"===e._id.charAt(0)?1:-1);j*L<j*z&&(L=z,E[M]=C[M]=P[M]),j*I>j*O&&(I=O,E[S]=C[S]=P[S])}var U=Math.abs(I-L);U-k>0?k*=1+k/(U-=k):k=0,\"y\"!==e._id.charAt(0)&&(k=-k),E[M]=w.p2r(w.r2p(C[M])+A*k),\"min\"===w.autorange||\"max reversed\"===w.autorange?(E[0]=null,w._rangeInitial0=void 0,w._rangeInitial1=void 0):\"max\"!==w.autorange&&\"min reversed\"!==w.autorange||(E[1]=null,w._rangeInitial0=void 0,w._rangeInitial1=void 0),a._insideTickLabelsUpdaterange[w._name+\".range\"]=E}var V=s.syncOrAsync(_);return V&&V.then&&t._promises.push(V),V},Z.getPxPosition=function(t,e){var r,n=t._fullLayout._size,i=e._id.charAt(0),a=e.side;return\"free\"!==e.anchor?r=e._anchorAxis:\"x\"===i?r={_offset:n.t+(1-(e.position||0))*n.h,_length:0}:\"y\"===i&&(r={_offset:n.l+(e.position||0)*n.w+e._shift,_length:0}),\"top\"===a||\"left\"===a?r._offset:\"bottom\"===a||\"right\"===a?r._offset+r._length:void 0},Z.shouldShowZeroLine=function(t,e,r){var n=s.simpleMap(e.range,e.r2l);return n[0]*n[1]<=0&&e.zeroline&&(\"linear\"===e.type||\"-\"===e.type)&&!(e.rangebreaks&&e.maskBreaks(0)===O)&&(Et(e,0)||!function(t,e,r,n){var i=r._mainAxis;if(i){var a=t._fullLayout,o=e._id.charAt(0),s=Z.counterLetter(e._id),l=e._offset+(Math.abs(n[0])<Math.abs(n[1])==(\"x\"===o)?0:e._length),c=a._plots[r._mainSubplot];if(!(c.mainplotinfo||c).overlays.length)return p(r);for(var u=Z.list(t,s),h=0;h<u.length;h++){var f=u[h];if(f._mainAxis===i&&p(f))return!0}}function p(t){if(!t.showline||!t.linewidth)return!1;var r=Math.max((t.linewidth+e.zerolinewidth)/2,1);function n(t){return\"number\"==typeof t&&Math.abs(t-l)<r}if(n(t._mainLinePosition)||n(t._mainMirrorPosition))return!0;var i=t._linepositions||{};for(var a in i)if(n(i[a][0])||n(i[a][1]))return!0}}(t,e,r,n)||function(t,e){for(var r=t._fullData,n=e._mainSubplot,i=e._id.charAt(0),a=0;a<r.length;a++){var s=r[a];if(!0===s.visible&&s.xaxis+s.yaxis===n){if(o.traceIs(s,\"bar-like\")&&s.orientation==={x:\"h\",y:\"v\"}[i])return!0;if(s.fill&&s.fill.charAt(s.fill.length-1)===i)return!0}}return!1}(t,e))},Z.clipEnds=function(t,e){return e.filter((function(e){return Et(t,e.x)}))},Z.allowAutoMargin=function(t){for(var e=Z.list(t,\"\",!0),r=0;r<e.length;r++){var n=e[r];n.automargin&&(a.allowAutoMargin(t,Lt(n)),n.mirror&&a.allowAutoMargin(t,It(n))),o.getComponentMethod(\"rangeslider\",\"isVisible\")(n)&&a.allowAutoMargin(t,Pt(n))}},Z.swap=function(t,e){for(var r=function(t,e){var r,n,i=[];for(r=0;r<e.length;r++){var a=[],o=t._fullData[e[r]].xaxis,s=t._fullData[e[r]].yaxis;if(o&&s){for(n=0;n<i.length;n++)-1===i[n].x.indexOf(o)&&-1===i[n].y.indexOf(s)||a.push(n);if(a.length){var l,c=i[a[0]];if(a.length>1)for(n=1;n<a.length;n++)l=i[a[n]],zt(c.x,l.x),zt(c.y,l.y);zt(c.x,[o]),zt(c.y,[s])}else i.push({x:[o],y:[s]})}}return i}(t,e),n=0;n<r.length;n++)Ot(t,r[n].x,r[n].y)}},9666:function(t,e,r){\"use strict\";var n=r(10721),i=r(34809),a=r(63821).BADNUM,o=i.isArrayOrTypedArray,s=i.isDateTime,l=i.cleanNumber,c=Math.round;function u(t,e){return e?n(t):\"number\"==typeof t}function h(t){return Math.max(1,(t-1)/1e3)}t.exports=function(t,e,r){var i=t,f=r.noMultiCategory;if(o(i)&&!i.length)return\"-\";if(!f&&function(t){return o(t[0])&&o(t[1])}(i))return\"multicategory\";if(f&&Array.isArray(i[0])){for(var p=[],d=0;d<i.length;d++)if(o(i[d]))for(var m=0;m<i[d].length;m++)p.push(i[d][m]);i=p}if(function(t,e){for(var r=t.length,i=h(r),a=0,o=0,l={},u=0;u<r;u+=i){var f=t[c(u)],p=String(f);l[p]||(l[p]=1,s(f,e)&&a++,n(f)&&o++)}return a>2*o}(i,e))return\"date\";var g=\"strict\"!==r.autotypenumbers;return function(t,e){for(var r=t.length,n=h(r),i=0,o=0,s={},u=0;u<r;u+=n){var f=t[c(u)],p=String(f);if(!s[p]){s[p]=1;var d=typeof f;\"boolean\"===d?o++:(e?l(f)!==a:\"number\"===d)?i++:\"string\"===d&&o++}}return o>2*i}(i,g)?\"category\":function(t,e){for(var r=t.length,n=0;n<r;n++)if(u(t[n],e))return!0;return!1}(i,g)?\"linear\":\"-\"}},97655:function(t,e,r){\"use strict\";var n=r(10721),i=r(33626),a=r(34809),o=r(78032),s=r(59008),l=r(25829),c=r(22777),u=r(87433),h=r(12036),f=r(54616),p=r(46473),d=r(97405),m=r(90259),g=r(19091),y=r(54826).WEEKDAY_PATTERN,v=r(54826).HOUR_PATTERN;function x(t,e,r){function i(r,n){return a.coerce(t,e,l.rangebreaks,r,n)}if(i(\"enabled\")){var o=i(\"bounds\");if(o&&o.length>=2){var s,c,u=\"\";if(2===o.length)for(s=0;s<2;s++)if(c=b(o[s])){u=y;break}var h=i(\"pattern\",u);if(h===y)for(s=0;s<2;s++)(c=b(o[s]))&&(e.bounds[s]=o[s]=c-1);if(h)for(s=0;s<2;s++)switch(c=o[s],h){case y:if(!n(c))return void(e.enabled=!1);if((c=+c)!==Math.floor(c)||c<0||c>=7)return void(e.enabled=!1);e.bounds[s]=o[s]=c;break;case v:if(!n(c))return void(e.enabled=!1);if((c=+c)<0||c>24)return void(e.enabled=!1);e.bounds[s]=o[s]=c}if(!1===r.autorange){var f=r.range;if(f[0]<f[1]){if(o[0]<f[0]&&o[1]>f[1])return void(e.enabled=!1)}else if(o[0]>f[0]&&o[1]<f[1])return void(e.enabled=!1)}}else{var p=i(\"values\");if(!p||!p.length)return void(e.enabled=!1);i(\"dvalue\")}}}t.exports=function(t,e,r,n,v){var _,b=n.letter,w=n.font||{},T=n.splomStash||{},k=r(\"visible\",!n.visibleDflt),A=e._template||{},M=e.type||A.type||\"-\";\"date\"===M&&(i.getComponentMethod(\"calendars\",\"handleDefaults\")(t,e,\"calendar\",n.calendar),n.noTicklabelmode||(_=r(\"ticklabelmode\"))),n.noTicklabelindex||\"date\"!==M&&\"linear\"!==M||r(\"ticklabelindex\");var S=\"\";n.noTicklabelposition&&\"multicategory\"!==M||(S=a.coerce(t,e,{ticklabelposition:{valType:\"enumerated\",dflt:\"outside\",values:\"period\"===_?[\"outside\",\"inside\"]:\"x\"===b?[\"outside\",\"inside\",\"outside left\",\"inside left\",\"outside right\",\"inside right\"]:[\"outside\",\"inside\",\"outside top\",\"inside top\",\"outside bottom\",\"inside bottom\"]}},\"ticklabelposition\")),n.noTicklabeloverflow||r(\"ticklabeloverflow\",-1!==S.indexOf(\"inside\")?\"hide past domain\":\"category\"===M||\"multicategory\"===M?\"allow\":\"hide past div\"),g(e,v),m(t,e,r,n),p(t,e,r,n),\"category\"===M||n.noHover||r(\"hoverformat\");var E=r(\"color\"),C=E!==l.color.dflt?E:w.color,L=T.label||v._dfltTitle[b];if(f(t,e,r,M,n),!k)return e;r(\"title.text\",L),a.coerceFont(r,\"title.font\",w,{overrideDflt:{size:a.bigFont(w.size),color:C}}),c(t,e,r,M);var I=n.hasMinor;if(I&&(o.newContainer(e,\"minor\"),c(t,e,r,M,{isMinor:!0})),h(t,e,r,M,n),u(t,e,r,n),I){var P=n.isMinor;n.isMinor=!0,u(t,e,r,n),n.isMinor=P}d(t,e,r,{dfltColor:E,bgColor:n.bgColor,showGrid:n.showGrid,hasMinor:I,attributes:l}),!I||e.minor.ticks||e.minor.showgrid||delete e.minor,(e.showline||e.ticks)&&r(\"mirror\");var z,O=\"multicategory\"===M;if(n.noTickson||\"category\"!==M&&!O||!e.ticks&&!e.showgrid||(O&&(z=\"boundaries\"),\"boundaries\"===r(\"tickson\",z)&&delete e.ticklabelposition),O&&r(\"showdividers\")&&(r(\"dividercolor\"),r(\"dividerwidth\")),\"date\"===M)if(s(t,e,{name:\"rangebreaks\",inclusionAttr:\"enabled\",handleItemDefaults:x}),e.rangebreaks.length){for(var D=0;D<e.rangebreaks.length;D++)if(e.rangebreaks[D].pattern===y){e._hasDayOfWeekBreaks=!0;break}if(g(e,v),v._has(\"scattergl\")||v._has(\"splom\"))for(var R=0;R<n.data.length;R++){var F=n.data[R];\"scattergl\"!==F.type&&\"splom\"!==F.type||(F.visible=!1,a.warn(F.type+\" traces do not work on axes with rangebreaks. Setting trace \"+F.index+\" to `visible: false`.\"))}}else delete e.rangebreaks;return e};var _={sun:1,mon:2,tue:3,wed:4,thu:5,fri:6,sat:7};function b(t){if(\"string\"==typeof t)return _[t.substr(0,3).toLowerCase()]}},80712:function(t,e,r){\"use strict\";var n=r(87296),i=n.FORMAT_LINK,a=n.DATE_FORMAT_LINK;function o(t,e){return[\"Sets the \"+t+\" formatting rule\"+(e?\"for `\"+e+\"` \":\"\"),\"using d3 formatting mini-languages\",\"which are very similar to those in Python. For numbers, see: \"+i+\".\"].join(\" \")}function s(t,e){return o(t,e)+[\" And for dates see: \"+a+\".\",\"We add two items to d3's date formatter:\",\"*%h* for half of the year as a decimal number as well as\",\"*%{n}f* for fractional seconds\",\"with n digits. For example, *2016-10-13 09:15:23.456* with tickformat\",\"*%H~%M~%S.%2f* would display *09~15~23.46*\"].join(\" \")}t.exports={axisHoverFormat:function(t,e){return{valType:\"string\",dflt:\"\",editType:\"none\",description:(e?o:s)(\"hover text\",t)+[\"By default the values are formatted using \"+(e?\"generic number format\":\"`\"+t+\"axis.hoverformat`\")+\".\"].join(\" \")}},descriptionOnlyNumbers:o,descriptionWithDates:s}},5975:function(t,e,r){\"use strict\";var n=r(33626),i=r(54826);function a(t,e){if(e&&e.length)for(var r=0;r<e.length;r++)if(e[r][t])return!0;return!1}e.id2name=function(t){if(\"string\"==typeof t&&t.match(i.AX_ID_PATTERN)){var e=t.split(\" \")[0].substr(1);return\"1\"===e&&(e=\"\"),t.charAt(0)+\"axis\"+e}},e.name2id=function(t){if(t.match(i.AX_NAME_PATTERN)){var e=t.substr(5);return\"1\"===e&&(e=\"\"),t.charAt(0)+e}},e.cleanId=function(t,e,r){var n=/( domain)$/.test(t);if(\"string\"==typeof t&&t.match(i.AX_ID_PATTERN)&&(!e||t.charAt(0)===e)&&(!n||r)){var a=t.split(\" \")[0].substr(1).replace(/^0+/,\"\");return\"1\"===a&&(a=\"\"),t.charAt(0)+a+(n&&r?\" domain\":\"\")}},e.list=function(t,r,n){var i=t._fullLayout;if(!i)return[];var a,o=e.listIds(t,r),s=new Array(o.length);for(a=0;a<o.length;a++){var l=o[a];s[a]=i[l.charAt(0)+\"axis\"+l.substr(1)]}if(!n){var c=i._subplots.gl3d||[];for(a=0;a<c.length;a++){var u=i[c[a]];r?s.push(u[r+\"axis\"]):s.push(u.xaxis,u.yaxis,u.zaxis)}}return s},e.listIds=function(t,e){var r=t._fullLayout;if(!r)return[];var n=r._subplots;return e?n[e+\"axis\"]:n.xaxis.concat(n.yaxis)},e.getFromId=function(t,r,n){var i=t._fullLayout;return r=void 0===r||\"string\"!=typeof r?r:r.replace(\" domain\",\"\"),\"x\"===n?r=r.replace(/y[0-9]*/,\"\"):\"y\"===n&&(r=r.replace(/x[0-9]*/,\"\")),i[e.id2name(r)]},e.getFromTrace=function(t,r,i){var a=t._fullLayout,o=null;if(n.traceIs(r,\"gl3d\")){var s=r.scene;\"scene\"===s.substr(0,5)&&(o=a[s][i+\"axis\"])}else o=e.getFromId(t,r[i+\"axis\"]||i);return o},e.idSort=function(t,e){var r=t.charAt(0),n=e.charAt(0);return r!==n?r>n?1:-1:+(t.substr(1)||1)-+(e.substr(1)||1)},e.ref2id=function(t){return!!/^[xyz]/.test(t)&&t.split(\" \")[0]},e.isLinked=function(t,e){return a(e,t._axisMatchGroups)||a(e,t._axisConstraintGroups)}},46473:function(t,e,r){\"use strict\";var n=r(87800).isTypedArraySpec;t.exports=function(t,e,r,i){if(\"category\"===e.type){var a,o=t.categoryarray,s=Array.isArray(o)&&o.length>0||n(o);s&&(a=\"array\");var l,c=r(\"categoryorder\",a);\"array\"===c&&(l=r(\"categoryarray\")),s||\"array\"!==c||(c=e.categoryorder=\"trace\"),\"trace\"===c?e._initialCategories=[]:\"array\"===c?e._initialCategories=l.slice():(l=function(t,e){var r,n,i,a=e.dataAttr||t._id.charAt(0),o={};if(e.axData)r=e.axData;else for(r=[],n=0;n<e.data.length;n++){var s=e.data[n];s[a+\"axis\"]===t._id&&r.push(s)}for(n=0;n<r.length;n++){var l=r[n][a];for(i=0;i<l.length;i++){var c=l[i];null!=c&&(o[c]=1)}}return Object.keys(o)}(e,i).sort(),\"category ascending\"===c?e._initialCategories=l:\"category descending\"===c&&(e._initialCategories=l.reverse()))}}},68599:function(t,e,r){\"use strict\";var n=r(10721),i=r(34809),a=r(63821),o=a.ONEDAY,s=a.ONEWEEK;e.dtick=function(t,e){var r=\"log\"===e,i=\"date\"===e,a=\"category\"===e,s=i?o:1;if(!t)return s;if(n(t))return(t=Number(t))<=0?s:a?Math.max(1,Math.round(t)):i?Math.max(.1,t):t;if(\"string\"!=typeof t||!i&&!r)return s;var l=t.charAt(0),c=t.substr(1);return(c=n(c)?Number(c):0)<=0||!(i&&\"M\"===l&&c===Math.round(c)||r&&\"L\"===l||r&&\"D\"===l&&(1===c||2===c))?s:t},e.tick0=function(t,e,r,a){return\"date\"===e?i.cleanDate(t,i.dateTick0(r,a%s==0?1:0)):\"D1\"!==a&&\"D2\"!==a?n(t)?Number(t):0:void 0}},54826:function(t,e,r){\"use strict\";var n=r(90694).counter;t.exports={idRegex:{x:n(\"x\",\"( domain)?\"),y:n(\"y\",\"( domain)?\")},attrRegex:n(\"[xy]axis\"),xAxisMatch:n(\"xaxis\"),yAxisMatch:n(\"yaxis\"),AX_ID_PATTERN:/^[xyz][0-9]*( domain)?$/,AX_NAME_PATTERN:/^[xyz]axis[0-9]*$/,SUBPLOT_PATTERN:/^x([0-9]*)y([0-9]*)$/,HOUR_PATTERN:\"hour\",WEEKDAY_PATTERN:\"day of week\",MINDRAG:8,MINZOOM:20,DRAGGERSIZE:20,REDRAWDELAY:50,DFLTRANGEX:[-1,6],DFLTRANGEY:[-1,4],traceLayerClasses:[\"imagelayer\",\"heatmaplayer\",\"contourcarpetlayer\",\"contourlayer\",\"funnellayer\",\"waterfalllayer\",\"barlayer\",\"carpetlayer\",\"violinlayer\",\"boxlayer\",\"ohlclayer\",\"scattercarpetlayer\",\"scatterlayer\"],clipOnAxisFalseQuery:[\".scatterlayer\",\".barlayer\",\".funnellayer\",\".waterfalllayer\"],layerValue2layerClass:{\"above traces\":\"above\",\"below traces\":\"below\"},zindexSeparator:\"z\"}},84391:function(t,e,r){\"use strict\";var n=r(34809),i=r(32919),a=r(5975).id2name,o=r(25829),s=r(67611),l=r(19091),c=r(63821).ALMOST_EQUAL,u=r(4530).FROM_BL;function h(t,e,r){var i=r.axIds,s=r.layoutOut,l=r.hasImage,c=s._axisConstraintGroups,u=s._axisMatchGroups,h=e._id,m=h.charAt(0),g=((s._splomAxes||{})[m]||{})[h]||{},y=e._id,v=\"x\"===y.charAt(0);function x(r,i){return n.coerce(t,e,o,r,i)}e._matchGroup=null,e._constraintGroup=null,x(\"constrain\",l?\"domain\":\"range\"),n.coerce(t,e,{constraintoward:{valType:\"enumerated\",values:v?[\"left\",\"center\",\"right\"]:[\"bottom\",\"middle\",\"top\"],dflt:v?\"center\":\"middle\"}},\"constraintoward\");var _,b,w=e.type,T=[];for(_=0;_<i.length;_++)(b=i[_])!==y&&s[a(b)].type===w&&T.push(b);var k=p(c,y);if(k){var A=[];for(_=0;_<T.length;_++)k[b=T[_]]||A.push(b);T=A}var M,S,E=T.length;E&&(t.matches||g.matches)&&(M=n.coerce(t,e,{matches:{valType:\"enumerated\",values:T,dflt:-1!==T.indexOf(g.matches)?g.matches:void 0}},\"matches\"));var C=l&&!v?e.anchor:void 0;if(E&&!M&&(t.scaleanchor||C)&&(S=n.coerce(t,e,{scaleanchor:{valType:\"enumerated\",values:T.concat([!1])}},\"scaleanchor\",C)),M){e._matchGroup=d(u,y,M,1);var L=s[a(M)],I=f(s,e)/f(s,L);v!==(\"x\"===M.charAt(0))&&(I=(v?\"x\":\"y\")+I),d(c,y,M,I)}else t.matches&&-1!==i.indexOf(t.matches)&&n.warn(\"ignored \"+e._name+'.matches: \"'+t.matches+'\" to avoid an infinite loop');if(S){var P=x(\"scaleratio\");P||(P=e.scaleratio=1),d(c,y,S,P)}else t.scaleanchor&&-1!==i.indexOf(t.scaleanchor)&&n.warn(\"ignored \"+e._name+'.scaleanchor: \"'+t.scaleanchor+'\" to avoid either an infinite loop and possibly inconsistent scaleratios, or because this axis declares a *matches* constraint.')}function f(t,e){var r=e.domain;return r||(r=t[a(e.overlaying)].domain),r[1]-r[0]}function p(t,e){for(var r=0;r<t.length;r++)if(t[r][e])return t[r];return null}function d(t,e,r,n){var i,a,o,s,l,c=p(t,e);null===c?((c={})[e]=1,l=t.length,t.push(c)):l=t.indexOf(c);var u=Object.keys(c);for(i=0;i<t.length;i++)if(o=t[i],i!==l&&o[r]){var h=o[r];for(a=0;a<u.length;a++)o[s=u[a]]=m(h,m(n,c[s]));return void t.splice(l,1)}if(1!==n)for(a=0;a<u.length;a++){var f=u[a];c[f]=m(n,c[f])}c[r]=1}function m(t,e){var r,n,i=\"\",a=\"\";\"string\"==typeof t&&(r=(i=t.match(/^[xy]*/)[0]).length,t=+t.substr(r)),\"string\"==typeof e&&(n=(a=e.match(/^[xy]*/)[0]).length,e=+e.substr(n));var o=t*e;return r||n?r&&n&&i.charAt(0)!==a.charAt(0)?r===n?o:(r>n?i.substr(n):a.substr(r))+o:i+a+t*e:o}function g(t,e){for(var r=e._size,n=r.h/r.w,i={},a=Object.keys(t),o=0;o<a.length;o++){var s=a[o],l=t[s];if(\"string\"==typeof l){var c=l.match(/^[xy]*/)[0],u=c.length;l=+l.substr(u);for(var h=\"y\"===c.charAt(0)?n:1/n,f=0;f<u;f++)l*=h}i[s]=l}return i}function y(t,e){var r=t._inputDomain,n=u[t.constraintoward],i=r[0]+(r[1]-r[0])*n;t.domain=t._input.domain=[i+(r[0]-i)/e,i+(r[1]-i)/e],t.setScale()}e.handleDefaults=function(t,e,r){var i,o,s,c,u,f,p,d,m=r.axIds,g=r.axHasImage,y=e._axisConstraintGroups=[],v=e._axisMatchGroups=[];for(i=0;i<m.length;i++)h(u=t[c=a(m[i])],f=e[c],{axIds:m,layoutOut:e,hasImage:g[c]});function x(t,r){for(i=0;i<t.length;i++)for(s in o=t[i])e[a(s)][r]=o}for(x(v,\"_matchGroup\"),i=0;i<y.length;i++)for(s in o=y[i])if((f=e[a(s)]).fixedrange){for(var _ in o){var b=a(_);!1===(t[b]||{}).fixedrange&&n.warn(\"fixedrange was specified as false for axis \"+b+\" but was overridden because another axis in its constraint group has fixedrange true\"),e[b].fixedrange=!0}break}for(i=0;i<y.length;){for(s in o=y[i]){(f=e[a(s)])._matchGroup&&Object.keys(f._matchGroup).length===Object.keys(o).length&&(y.splice(i,1),i--);break}i++}x(y,\"_constraintGroup\");var w=[\"constrain\",\"range\",\"autorange\",\"rangemode\",\"rangebreaks\",\"categoryorder\",\"categoryarray\"],T=!1,k=!1;function A(){d=f[p],\"rangebreaks\"===p&&(k=f._hasDayOfWeekBreaks)}for(i=0;i<v.length;i++){o=v[i];for(var M=0;M<w.length;M++){var S;for(s in p=w[M],d=null,o)if(u=t[c=a(s)],f=e[c],p in f){if(!f.matches&&(S=f,p in u)){A();break}null===d&&p in u&&A()}if(\"range\"===p&&d&&u.range&&2===u.range.length&&null!==u.range[0]&&null!==u.range[1]&&(T=!0),\"autorange\"===p&&null===d&&T&&(d=!1),null===d&&p in S&&(d=S[p]),null!==d)for(s in o)(f=e[a(s)])[p]=\"range\"===p?d.slice():d,\"rangebreaks\"===p&&(f._hasDayOfWeekBreaks=k,l(f,e))}}},e.enforce=function(t){var e,r,n,o,l,u,h,f,p=t._fullLayout,d=p._axisConstraintGroups||[];for(e=0;e<d.length;e++){n=g(d[e],p);var m=Object.keys(n),v=1/0,x=0,_=1/0,b={},w={},T=!1;for(r=0;r<m.length;r++)w[o=m[r]]=l=p[a(o)],l._inputDomain?l.domain=l._inputDomain.slice():l._inputDomain=l.domain.slice(),l._inputRange||(l._inputRange=l.range.slice()),l.setScale(),b[o]=u=Math.abs(l._m)/n[o],v=Math.min(v,u),\"domain\"!==l.constrain&&l._constraintShrinkable||(_=Math.min(_,u)),delete l._constraintShrinkable,x=Math.max(x,u),\"domain\"===l.constrain&&(T=!0);if(!(v>c*x)||T)for(r=0;r<m.length;r++)if(u=b[o=m[r]],h=(l=w[o]).constrain,u!==_||\"domain\"===h)if(f=u/_,\"range\"===h)s(l,f);else{var k=l._inputDomain,A=(l.domain[1]-l.domain[0])/(k[1]-k[0]),M=(l.r2l(l.range[1])-l.r2l(l.range[0]))/(l.r2l(l._inputRange[1])-l.r2l(l._inputRange[0]));if((f/=A)*M<1){l.domain=l._input.domain=k.slice(),s(l,f);continue}if(M<1&&(l.range=l._input.range=l._inputRange.slice(),f*=M),l.autorange){var S=l.r2l(l.range[0]),E=l.r2l(l.range[1]),C=(S+E)/2,L=C,I=C,P=Math.abs(E-C),z=C-P*f*1.0001,O=C+P*f*1.0001,D=i.makePadFn(p,l,0),R=i.makePadFn(p,l,1);y(l,f);var F,B,N=Math.abs(l._m),j=i.concatExtremes(t,l),U=j.min,V=j.max;for(B=0;B<U.length;B++)(F=U[B].val-D(U[B])/N)>z&&F<L&&(L=F);for(B=0;B<V.length;B++)(F=V[B].val+R(V[B])/N)<O&&F>I&&(I=F);f/=(I-L)/(2*P),L=l.l2r(L),I=l.l2r(I),l.range=l._input.range=S<E?[L,I]:[I,L]}y(l,f)}}},e.getAxisGroup=function(t,e){for(var r=t._axisMatchGroups,n=0;n<r.length;n++)if(r[n][e])return\"g\"+n;return e},e.clean=function(t,e){if(e._inputDomain){for(var r=!1,n=e._id,i=t._fullLayout._axisConstraintGroups,a=0;a<i.length;a++)if(i[a][n]){r=!0;break}r&&\"domain\"===e.constrain||(e._input.domain=e.domain=e._inputDomain,delete e._inputDomain)}}},51680:function(t,e,r){\"use strict\";var n=r(45568),i=r(34809),a=i.numberFormat,o=r(65657),s=r(74043),l=r(33626),c=i.strTranslate,u=r(30635),h=r(78766),f=r(62203),p=r(32141),d=r(29714),m=r(27983),g=r(14751),y=r(70414),v=y.selectingOrDrawing,x=y.freeMode,_=r(4530).FROM_TL,b=r(34823),w=r(71817).redrawReglTraces,T=r(44122),k=r(5975).getFromId,A=r(44844).prepSelect,M=r(44844).clearOutline,S=r(44844).selectOnClick,E=r(67611),C=r(54826),L=C.MINDRAG,I=C.MINZOOM,P=!0;function z(t,e,r,n){var a=i.ensureSingle(t.draglayer,e,r,(function(e){e.classed(\"drag\",!0).style({fill:\"transparent\",\"stroke-width\":0}).attr(\"data-subplot\",t.id)}));return a.call(m,n),a.node()}function O(t,e,r,i,a,o,s){var l=z(t,\"rect\",e,r);return n.select(l).call(f.setRect,i,a,o,s),l}function D(t,e){for(var r=0;r<t.length;r++)if(!t[r].fixedrange)return e;return\"\"}function R(t,e,r,n,i){for(var a=0;a<t.length;a++){var o=t[a];if(!o.fixedrange)if(o.rangebreaks){var s=\"y\"===o._id.charAt(0),l=s?1-e:e,c=s?1-r:r;n[o._name+\".range[0]\"]=o.l2r(o.p2l(l*o._length)),n[o._name+\".range[1]\"]=o.l2r(o.p2l(c*o._length))}else{var u=o._rl[0],h=o._rl[1]-u;n[o._name+\".range[0]\"]=o.l2r(u+h*e),n[o._name+\".range[1]\"]=o.l2r(u+h*r)}}if(i&&i.length){var f=(e+(1-r))/2;R(i,f,1-f,n,[])}}function F(t,e){for(var r=0;r<t.length;r++){var n=t[r];if(!n.fixedrange){if(n.rangebreaks){var i=n._length,a=(n.p2l(0+e)-n.p2l(0)+(n.p2l(i+e)-n.p2l(i)))/2;n.range=[n.l2r(n._rl[0]-a),n.l2r(n._rl[1]-a)]}else n.range=[n.l2r(n._rl[0]-e/n._m),n.l2r(n._rl[1]-e/n._m)];n.limitRange&&n.limitRange()}}}function B(t){return 1-(t>=0?Math.min(t,.9):1/(1/Math.max(t,-.3)+3.222))}function N(t,e,r,n,i){return t.append(\"path\").attr(\"class\",\"zoombox\").style({fill:e>.2?\"rgba(0,0,0,0)\":\"rgba(255,255,255,0)\",\"stroke-width\":0}).attr(\"transform\",c(r,n)).attr(\"d\",i+\"Z\")}function j(t,e,r){return t.append(\"path\").attr(\"class\",\"zoombox-corners\").style({fill:h.background,stroke:h.defaultLine,\"stroke-width\":1,opacity:0}).attr(\"transform\",c(e,r)).attr(\"d\",\"M0,0Z\")}function U(t,e,r,n,i,a){t.attr(\"d\",n+\"M\"+r.l+\",\"+r.t+\"v\"+r.h+\"h\"+r.w+\"v-\"+r.h+\"h-\"+r.w+\"Z\"),V(t,e,i,a)}function V(t,e,r,n){r||(t.transition().style(\"fill\",n>.2?\"rgba(0,0,0,0.4)\":\"rgba(255,255,255,0.3)\").duration(200),e.transition().style(\"opacity\",1).duration(200))}function q(t){n.select(t).selectAll(\".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners\").remove()}function H(t){P&&t.data&&t._context.showTips&&(i.notifier(i._(t,\"Double-click to zoom back out\"),\"long\"),P=!1)}function G(t){var e=Math.floor(Math.min(t.b-t.t,t.r-t.l,I)/2);return\"M\"+(t.l-3.5)+\",\"+(t.t-.5+e)+\"h3v\"+-e+\"h\"+e+\"v-3h-\"+(e+3)+\"ZM\"+(t.r+3.5)+\",\"+(t.t-.5+e)+\"h-3v\"+-e+\"h\"+-e+\"v-3h\"+(e+3)+\"ZM\"+(t.r+3.5)+\",\"+(t.b+.5-e)+\"h-3v\"+e+\"h\"+-e+\"v3h\"+(e+3)+\"ZM\"+(t.l-3.5)+\",\"+(t.b+.5-e)+\"h3v\"+e+\"h\"+e+\"v3h-\"+(e+3)+\"Z\"}function Z(t,e,r,n,a){for(var o,s,l,c,u=!1,h={},f={},p=(a||{}).xaHash,d=(a||{}).yaHash,m=0;m<e.length;m++){var g=e[m];for(o in r)if(g[o]){for(l in g)a&&(p[l]||d[l])||(\"x\"===l.charAt(0)?r:n)[l]||(h[l]=o);for(s in n)a&&(p[s]||d[s])||!g[s]||(u=!0)}for(s in n)if(g[s])for(c in g)a&&(p[c]||d[c])||(\"x\"===c.charAt(0)?r:n)[c]||(f[c]=s)}u&&(i.extendFlat(h,f),f={});var y={},v=[];for(l in h){var x=k(t,l);v.push(x),y[x._id]=x}var _={},b=[];for(c in f){var w=k(t,c);b.push(w),_[w._id]=w}return{xaHash:y,yaHash:_,xaxes:v,yaxes:b,xLinks:h,yLinks:f,isSubplotConstrained:u}}function W(t,e){if(s){var r=void 0!==t.onwheel?\"wheel\":\"mousewheel\";t._onwheel&&t.removeEventListener(r,t._onwheel),t._onwheel=e,t.addEventListener(r,e,{passive:!1})}else void 0!==t.onwheel?t.onwheel=e:void 0!==t.onmousewheel?t.onmousewheel=e:t.isAddedWheelEvent||(t.isAddedWheelEvent=!0,t.addEventListener(\"wheel\",e,{passive:!1}))}function Y(t){var e=[];for(var r in t)e.push(t[r]);return e}t.exports={makeDragBox:function(t,e,r,s,c,h,m,y){var P,z,V,X,$,J,K,Q,tt,et,rt,nt,it,at,ot,st,lt,ct,ut,ht,ft,pt,dt,mt=t._fullLayout._zoomlayer,gt=m+y===\"nsew\",yt=1===(m+y).length;function vt(){if(P=e.xaxis,z=e.yaxis,tt=P._length,et=z._length,K=P._offset,Q=z._offset,(V={})[P._id]=P,(X={})[z._id]=z,m&&y)for(var r=e.overlays,n=0;n<r.length;n++){var i=r[n].xaxis;V[i._id]=i;var a=r[n].yaxis;X[a._id]=a}$=Y(V),J=Y(X),it=D($,y),at=D(J,m),ot=!at&&!it,nt=Z(t,t._fullLayout._axisMatchGroups,V,X);var o=(rt=Z(t,t._fullLayout._axisConstraintGroups,V,X,nt)).isSubplotConstrained||nt.isSubplotConstrained;st=y||o,lt=m||o;var s=t._fullLayout;ct=s._has(\"scattergl\"),ut=s._has(\"splom\"),ht=s._has(\"svg\")}r+=e.yaxis._shift,vt();var xt=function(t,e,r){return t?\"nsew\"===t?r?\"\":\"pan\"===e?\"move\":\"crosshair\":t.toLowerCase()+\"-resize\":\"pointer\"}(at+it,t._fullLayout.dragmode,gt),_t=O(e,m+y+\"drag\",xt,r,s,c,h);if(ot&&!gt)return _t.onmousedown=null,_t.style.pointerEvents=\"none\",_t;var bt,wt,Tt,kt,At,Mt,St,Et,Ct,Lt,It={element:_t,gd:t,plotinfo:e};function Pt(){It.plotinfo.selection=!1,M(t)}function zt(t,r){var i=It.gd;if(i._fullLayout._activeShapeIndex>=0)i._fullLayout._deactivateShape(i);else{var o=i._fullLayout.clickmode;if(q(i),2!==t||yt||Ht(),gt)o.indexOf(\"select\")>-1&&S(r,i,$,J,e.id,It),o.indexOf(\"event\")>-1&&p.click(i,r,e.id);else if(1===t&&yt){var s=m?z:P,c=\"s\"===m||\"w\"===y?0:1,h=s._name+\".range[\"+c+\"]\",f=function(t,e){var r,n=t.range[e],i=Math.abs(n-t.range[1-e]);return\"date\"===t.type?n:\"log\"===t.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,c),d=\"left\",g=\"middle\";if(s.fixedrange)return;m?(g=\"n\"===m?\"top\":\"bottom\",\"right\"===s.side&&(d=\"right\")):\"e\"===y&&(d=\"right\"),i._context.showAxisRangeEntryBoxes&&n.select(_t).call(u.makeEditable,{gd:i,immediate:!0,background:i._fullLayout.paper_bgcolor,text:String(f),fill:s.tickfont?s.tickfont.color:\"#444\",horizontalAlign:d,verticalAlign:g}).on(\"edit\",(function(t){var e=s.d2r(t);void 0!==e&&l.call(\"_guiRelayout\",i,h,e)}))}}}function Ot(e,r){if(t._transitioningWithDuration)return!1;var n=Math.max(0,Math.min(tt,pt*e+bt)),i=Math.max(0,Math.min(et,dt*r+wt)),a=Math.abs(n-bt),o=Math.abs(i-wt);function s(){St=\"\",Tt.r=Tt.l,Tt.t=Tt.b,Ct.attr(\"d\",\"M0,0Z\")}if(Tt.l=Math.min(bt,n),Tt.r=Math.max(bt,n),Tt.t=Math.min(wt,i),Tt.b=Math.max(wt,i),rt.isSubplotConstrained)a>I||o>I?(St=\"xy\",a/tt>o/et?(o=a*et/tt,wt>i?Tt.t=wt-o:Tt.b=wt+o):(a=o*tt/et,bt>n?Tt.l=bt-a:Tt.r=bt+a),Ct.attr(\"d\",G(Tt))):s();else if(nt.isSubplotConstrained)if(a>I||o>I){St=\"xy\";var l=Math.min(Tt.l/tt,(et-Tt.b)/et),c=Math.max(Tt.r/tt,(et-Tt.t)/et);Tt.l=l*tt,Tt.r=c*tt,Tt.b=(1-l)*et,Tt.t=(1-c)*et,Ct.attr(\"d\",G(Tt))}else s();else!at||o<Math.min(Math.max(.6*a,L),I)?a<L||!it?s():(Tt.t=0,Tt.b=et,St=\"x\",Ct.attr(\"d\",function(t,e){return\"M\"+(t.l-.5)+\",\"+(e-I-.5)+\"h-3v\"+(2*I+1)+\"h3ZM\"+(t.r+.5)+\",\"+(e-I-.5)+\"h3v\"+(2*I+1)+\"h-3Z\"}(Tt,wt))):!it||a<Math.min(.6*o,I)?(Tt.l=0,Tt.r=tt,St=\"y\",Ct.attr(\"d\",function(t,e){return\"M\"+(e-I-.5)+\",\"+(t.t-.5)+\"v-3h\"+(2*I+1)+\"v3ZM\"+(e-I-.5)+\",\"+(t.b+.5)+\"v3h\"+(2*I+1)+\"v-3Z\"}(Tt,bt))):(St=\"xy\",Ct.attr(\"d\",G(Tt)));Tt.w=Tt.r-Tt.l,Tt.h=Tt.b-Tt.t,St&&(Lt=!0),t._dragged=Lt,U(Et,Ct,Tt,At,Mt,kt),Dt(),t.emit(\"plotly_relayouting\",ft),Mt=!0}function Dt(){ft={},\"xy\"!==St&&\"x\"!==St||(R($,Tt.l/tt,Tt.r/tt,ft,rt.xaxes),Vt(\"x\",ft)),\"xy\"!==St&&\"y\"!==St||(R(J,(et-Tt.b)/et,(et-Tt.t)/et,ft,rt.yaxes),Vt(\"y\",ft))}function Rt(){Dt(),q(t),Gt(),H(t)}It.prepFn=function(e,r,n){var a=It.dragmode,s=t._fullLayout.dragmode;s!==a&&(It.dragmode=s),vt(),pt=t._fullLayout._invScaleX,dt=t._fullLayout._invScaleY,ot||(gt?e.shiftKey?\"pan\"===s?s=\"zoom\":v(s)||(s=\"pan\"):e.ctrlKey&&(s=\"pan\"):s=\"pan\"),x(s)?It.minDrag=1:It.minDrag=void 0,v(s)?(It.xaxes=$,It.yaxes=J,A(e,r,n,It,s)):(It.clickFn=zt,v(a)&&Pt(),ot||(\"zoom\"===s?(It.moveFn=Ot,It.doneFn=Rt,It.minDrag=1,function(e,r,n){var a=_t.getBoundingClientRect();bt=r-a.left,wt=n-a.top,t._fullLayout._calcInverseTransform(t);var s=i.apply3DTransform(t._fullLayout._invTransform)(bt,wt);bt=s[0],wt=s[1],Tt={l:bt,r:bt,w:0,t:wt,b:wt,h:0},kt=t._hmpixcount?t._hmlumcount/t._hmpixcount:o(t._fullLayout.plot_bgcolor).getLuminance(),Mt=!1,St=\"xy\",Lt=!1,Et=N(mt,kt,K,Q,At=\"M0,0H\"+tt+\"V\"+et+\"H0V0\"),Ct=j(mt,K,Q)}(0,r,n)):\"pan\"===s&&(It.moveFn=Ut,It.doneFn=Gt))),t._fullLayout._redrag=function(){var e=t._dragdata;if(e&&e.element===_t){var r=t._fullLayout.dragmode;v(r)||(vt(),Zt([0,0,tt,et]),It.moveFn(e.dx,e.dy))}}},g.init(It);var Ft=[0,0,tt,et],Bt=null,Nt=C.REDRAWDELAY,jt=e.mainplot?t._fullLayout._plots[e.mainplot]:e;function Ut(e,r){if(e*=pt,r*=dt,!t._transitioningWithDuration){if(t._fullLayout._replotting=!0,\"ew\"===it||\"ns\"===at){var n=it?-e:0,i=at?-r:0;if(nt.isSubplotConstrained){if(it&&at){var a=(e/tt-r/et)/2;n=-(e=a*tt),i=-(r=-a*et)}at?n=-i*tt/et:i=-n*et/tt}return it&&(F($,e),Vt(\"x\")),at&&(F(J,r),Vt(\"y\")),Zt([n,i,tt,et]),qt(),void t.emit(\"plotly_relayouting\",ft)}var o,s,l=\"w\"===it==(\"n\"===at)?1:-1;if(it&&at&&(rt.isSubplotConstrained||nt.isSubplotConstrained)){var c=(e/tt+l*r/et)/2;e=c*tt,r=l*c*et}if(\"w\"===it?e=p($,0,e):\"e\"===it?e=p($,1,-e):it||(e=0),\"n\"===at?r=p(J,1,r):\"s\"===at?r=p(J,0,-r):at||(r=0),o=\"w\"===it?e:0,s=\"n\"===at?r:0,rt.isSubplotConstrained&&!nt.isSubplotConstrained||nt.isSubplotConstrained&&it&&at&&l>0){var u;if(nt.isSubplotConstrained||!it&&1===at.length){for(u=0;u<$.length;u++)$[u].range=$[u]._r.slice(),E($[u],1-r/et);o=(e=r*tt/et)/2}if(nt.isSubplotConstrained||!at&&1===it.length){for(u=0;u<J.length;u++)J[u].range=J[u]._r.slice(),E(J[u],1-e/tt);s=(r=e*et/tt)/2}}nt.isSubplotConstrained&&at||Vt(\"x\"),nt.isSubplotConstrained&&it||Vt(\"y\");var h=tt-e,f=et-r;!nt.isSubplotConstrained||it&&at||(it?(s=o?0:e*et/tt,f=h*et/tt):(o=s?0:r*tt/et,h=f*tt/et)),Zt([o,s,h,f]),qt(),t.emit(\"plotly_relayouting\",ft)}function p(t,e,r){for(var n,i,a=1-e,o=0;o<t.length;o++){var s=t[o];if(!s.fixedrange){n=s,i=s._rl[a]+(s._rl[e]-s._rl[a])/B(r/s._length);var l=s.l2r(i);!1!==l&&void 0!==l&&(s.range[e]=l)}}return n._length*(n._rl[e]-i)/(n._rl[e]-n._rl[a])}}function Vt(t,e){for(var r=nt.isSubplotConstrained?{x:J,y:$}[t]:nt[t+\"axes\"],n=nt.isSubplotConstrained?{x:$,y:J}[t]:[],i=0;i<r.length;i++){var a=r[i],o=a._id,s=nt.xLinks[o]||nt.yLinks[o],l=n[0]||V[s]||X[s];l&&(e?(e[a._name+\".range[0]\"]=e[l._name+\".range[0]\"],e[a._name+\".range[1]\"]=e[l._name+\".range[1]\"]):a.range=l.range.slice())}}function qt(){var r,n=[];function i(t){for(r=0;r<t.length;r++)t[r].fixedrange||n.push(t[r]._id)}function a(t,e){for(r=0;r<t.length;r++){var i=t[r],a=i[e];i.fixedrange||\"sync\"!==a.tickmode||n.push(a._id)}}for(st&&(i($),i(rt.xaxes),i(nt.xaxes),a(e.overlays,\"xaxis\")),lt&&(i(J),i(rt.yaxes),i(nt.yaxes),a(e.overlays,\"yaxis\")),ft={},r=0;r<n.length;r++){var o=n[r],s=k(t,o);d.drawOne(t,s,{skipTitle:!0}),ft[s._name+\".range[0]\"]=s.range[0],ft[s._name+\".range[1]\"]=s.range[1]}d.redrawComponents(t,n)}function Ht(){if(!t._transitioningWithDuration){var e=t._context.doubleClick,r=[];it&&(r=r.concat($)),at&&(r=r.concat(J)),nt.xaxes&&(r=r.concat(nt.xaxes)),nt.yaxes&&(r=r.concat(nt.yaxes));var n,i,a={};if(\"reset+autosize\"===e)for(e=\"autosize\",i=0;i<r.length;i++){var o=(n=r[i])._rangeInitial0,s=n._rangeInitial1,c=void 0!==o||void 0!==s;if(c&&(void 0!==o&&o!==n.range[0]||void 0!==s&&s!==n.range[1])||!c&&!0!==n.autorange){e=\"reset\";break}}if(\"autosize\"===e)for(i=0;i<r.length;i++)(n=r[i]).fixedrange||(a[n._name+\".autorange\"]=!0);else if(\"reset\"===e)for((it||rt.isSubplotConstrained)&&(r=r.concat(rt.xaxes)),at&&!rt.isSubplotConstrained&&(r=r.concat(rt.yaxes)),rt.isSubplotConstrained&&(it?at||(r=r.concat(J)):r=r.concat($)),i=0;i<r.length;i++)if(!(n=r[i]).fixedrange){var u=n._name,h=n._autorangeInitial;void 0===n._rangeInitial0&&void 0===n._rangeInitial1?a[u+\".autorange\"]=!0:void 0===n._rangeInitial0?(a[u+\".autorange\"]=h,a[u+\".range\"]=[null,n._rangeInitial1]):void 0===n._rangeInitial1?(a[u+\".range\"]=[n._rangeInitial0,null],a[u+\".autorange\"]=h):a[u+\".range\"]=[n._rangeInitial0,n._rangeInitial1]}t.emit(\"plotly_doubleclick\",null),l.call(\"_guiRelayout\",t,a)}}function Gt(){Zt([0,0,tt,et]),i.syncOrAsync([T.previousPromises,function(){t._fullLayout._replotting=!1,l.call(\"_guiRelayout\",t,ft)}],t)}function Zt(e){var r,n,a,o,s=t._fullLayout,c=s._plots,u=s._subplots.cartesian;if(ut&&l.subplotsRegistry.splom.drag(t),ct)for(r=0;r<u.length;r++)if(a=(n=c[u[r]]).xaxis,o=n.yaxis,n._scene){a.limitRange&&a.limitRange(),o.limitRange&&o.limitRange();var h=i.simpleMap(a.range,a.r2l),p=i.simpleMap(o.range,o.r2l);n._scene.update({range:[h[0],p[0],h[1],p[1]]})}if((ut||ct)&&(b(t),w(t)),ht){var d=e[2]/P._length,g=e[3]/z._length;for(r=0;r<u.length;r++){a=(n=c[u[r]]).xaxis,o=n.yaxis;var v,x,_,T,k=(st||nt.isSubplotConstrained)&&!a.fixedrange&&V[a._id],A=(lt||nt.isSubplotConstrained)&&!o.fixedrange&&X[o._id];if(k?(v=d,_=y||nt.isSubplotConstrained?e[0]:Xt(a,v)):nt.xaHash[a._id]?(v=d,_=e[0]*a._length/P._length):nt.yaHash[a._id]?(v=g,_=\"ns\"===at?-e[1]*a._length/z._length:Xt(a,v,{n:\"top\",s:\"bottom\"}[at])):_=Yt(a,v=Wt(a,d,g)),v>1&&(void 0!==a.maxallowed&&st===(a.range[0]<a.range[1]?\"e\":\"w\")||void 0!==a.minallowed&&st===(a.range[0]<a.range[1]?\"w\":\"e\"))&&(v=1,_=0),A?(x=g,T=m||nt.isSubplotConstrained?e[1]:Xt(o,x)):nt.yaHash[o._id]?(x=g,T=e[1]*o._length/z._length):nt.xaHash[o._id]?(x=d,T=\"ew\"===it?-e[0]*o._length/P._length:Xt(o,x,{e:\"right\",w:\"left\"}[it])):T=Yt(o,x=Wt(o,d,g)),x>1&&(void 0!==o.maxallowed&&lt===(o.range[0]<o.range[1]?\"n\":\"s\")||void 0!==o.minallowed&&lt===(o.range[0]<o.range[1]?\"s\":\"n\"))&&(x=1,T=0),v||x){v||(v=1),x||(x=1);var M=a._offset-_/v,S=o._offset-T/x;n.clipRect.call(f.setTranslate,_,T).call(f.setScale,v,x),n.plot.call(f.setTranslate,M,S).call(f.setScale,1/v,1/x),v===n.xScaleFactor&&x===n.yScaleFactor||(f.setPointGroupScale(n.zoomScalePts,v,x),f.setTextPointsScale(n.zoomScaleTxt,v,x)),f.hideOutsideRangePoints(n.clipOnAxisFalseTraces,n),n.xScaleFactor=v,n.yScaleFactor=x}}}}function Wt(t,e,r){return t.fixedrange?0:st&&rt.xaHash[t._id]?e:lt&&(rt.isSubplotConstrained?rt.xaHash:rt.yaHash)[t._id]?r:0}function Yt(t,e){return e?(t.range=t._r.slice(),E(t,e),Xt(t,e)):0}function Xt(t,e,r){return t._length*(1-e)*_[r||t.constraintoward||\"middle\"]}return m.length*y.length!=1&&W(_t,(function(e){if(t._context._scrollZoom.cartesian||t._fullLayout._enablescrollzoom){if(Pt(),t._transitioningWithDuration)return e.preventDefault(),void e.stopPropagation();vt(),clearTimeout(Bt);var r=-e.deltaY;if(isFinite(r)||(r=e.wheelDelta/10),isFinite(r)){var n,a=Math.exp(-Math.min(Math.max(r,-20),20)/200),o=jt.draglayer.select(\".nsewdrag\").node().getBoundingClientRect(),s=(e.clientX-o.left)/o.width,l=(o.bottom-e.clientY)/o.height;if(st){for(y||(s=.5),n=0;n<$.length;n++)c($[n],s,a);Vt(\"x\"),Ft[2]*=a,Ft[0]+=Ft[2]*s*(1/a-1)}if(lt){for(m||(l=.5),n=0;n<J.length;n++)c(J[n],l,a);Vt(\"y\"),Ft[3]*=a,Ft[1]+=Ft[3]*(1-l)*(1/a-1)}Zt(Ft),qt(),t.emit(\"plotly_relayouting\",ft),Bt=setTimeout((function(){t._fullLayout&&(Ft=[0,0,tt,et],Gt())}),Nt),e.preventDefault()}else i.log(\"Did not find wheel motion attributes: \",e)}function c(t,e,r){if(!t.fixedrange){var n=i.simpleMap(t.range,t.r2l),a=n[0]+(n[1]-n[0])*e;t.range=n.map((function(e){return t.l2r(a+(e-a)*r)}))}}})),_t},makeDragger:z,makeRectDragger:O,makeZoombox:N,makeCorners:j,updateZoombox:U,xyCorners:G,transitionZoombox:V,removeZoombox:q,showDoubleClickNotifier:H,attachWheelEventHandler:W}},95284:function(t,e,r){\"use strict\";var n=r(45568),i=r(32141),a=r(14751),o=r(27983),s=r(51680).makeDragBox,l=r(54826).DRAGGERSIZE;e.initInteractions=function(t){var r=t._fullLayout;if(t._context.staticPlot)n.select(t).selectAll(\".drag\").remove();else if(r._has(\"cartesian\")||r._has(\"splom\")){Object.keys(r._plots||{}).sort((function(t,e){if((r._plots[t].mainplot&&!0)===(r._plots[e].mainplot&&!0)){var n=t.split(\"y\"),i=e.split(\"y\");return n[0]===i[0]?Number(n[1]||1)-Number(i[1]||1):Number(n[0]||1)-Number(i[0]||1)}return r._plots[t].mainplot?1:-1})).forEach((function(e){var n=r._plots[e],o=n.xaxis,c=n.yaxis;if(!n.mainplot){var u=s(t,n,o._offset,c._offset,o._length,c._length,\"ns\",\"ew\");u.onmousemove=function(r){t._fullLayout._rehover=function(){t._fullLayout._hoversubplot===e&&t._fullLayout._plots[e]&&i.hover(t,r,e)},i.hover(t,r,e),t._fullLayout._lasthover=u,t._fullLayout._hoversubplot=e},u.onmouseout=function(e){t._dragging||(t._fullLayout._hoversubplot=null,a.unhover(t,e))},t._context.showAxisDragHandles&&(s(t,n,o._offset-l,c._offset-l,l,l,\"n\",\"w\"),s(t,n,o._offset+o._length,c._offset-l,l,l,\"n\",\"e\"),s(t,n,o._offset-l,c._offset+c._length,l,l,\"s\",\"w\"),s(t,n,o._offset+o._length,c._offset+c._length,l,l,\"s\",\"e\"))}if(t._context.showAxisDragHandles){if(e===o._mainSubplot){var h=o._mainLinePosition;\"top\"===o.side&&(h-=l),s(t,n,o._offset+.1*o._length,h,.8*o._length,l,\"\",\"ew\"),s(t,n,o._offset,h,.1*o._length,l,\"\",\"w\"),s(t,n,o._offset+.9*o._length,h,.1*o._length,l,\"\",\"e\")}if(e===c._mainSubplot){var f=c._mainLinePosition;\"right\"!==c.side&&(f-=l),s(t,n,f,c._offset+.1*c._length,l,.8*c._length,\"ns\",\"\"),s(t,n,f,c._offset+.9*c._length,l,.1*c._length,\"s\",\"\"),s(t,n,f,c._offset,l,.1*c._length,\"n\",\"\")}}}));var o=r._hoverlayer.node();o.onmousemove=function(e){e.target=t._fullLayout._lasthover,i.hover(t,e,r._hoversubplot)},o.onclick=function(e){e.target=t._fullLayout._lasthover,i.click(t,e)},o.onmousedown=function(e){t._fullLayout._lasthover.onmousedown(e)},e.updateFx(t)}},e.updateFx=function(t){var e=t._fullLayout,r=\"pan\"===e.dragmode?\"move\":\"crosshair\";o(e._draggers,r)}},20706:function(t,e,r){\"use strict\";var n=r(33626),i=r(34809),a=r(5975);t.exports=function(t){return function(e,r){var o=e[t];if(Array.isArray(o))for(var s=n.subplotsRegistry.cartesian,l=s.idRegex,c=r._subplots,u=c.xaxis,h=c.yaxis,f=c.cartesian,p=r._has(\"cartesian\")||r._has(\"gl2d\"),d=0;d<o.length;d++){var m=o[d];if(i.isPlainObject(m)){var g=a.cleanId(m.xref,\"x\",!1),y=a.cleanId(m.yref,\"y\",!1),v=l.x.test(g),x=l.y.test(y);if(v||x){p||i.pushUnique(r._basePlotModules,s);var _=!1;v&&-1===u.indexOf(g)&&(u.push(g),_=!0),x&&-1===h.indexOf(y)&&(h.push(y),_=!0),_&&v&&x&&f.push(g+y)}}}}}},37703:function(t,e,r){\"use strict\";var n=r(45568),i=r(33626),a=r(34809),o=r(44122),s=r(62203),l=r(4173).eV,c=r(5975),u=r(54826),h=r(62972),f=a.ensureSingle;function p(t,e,r){return a.ensureSingle(t,e,r,(function(t){t.datum(r)}))}var d=u.zindexSeparator;function m(t,e,r,a,o){for(var c,h,f,p=u.traceLayerClasses,d=t._fullLayout,m=d._zindices,g=d._modules,y=[],v=[],x=0;x<m.length;x++)for(var _=m[x],b=0;b<g.length;b++){var w=(c=g[b]).name,T=i.modules[w].categories;if(T.svg){var k=c.layerName||w+\"layer\",A=k+(x?Number(x)+1:\"\"),M=c.plot;f=(h=l(r,M,_))[0],r=h[1],f.length&&y.push({i:p.indexOf(k),zindex:x,className:A,plotMethod:M,cdModule:f}),T.zoomScale&&v.push(\".\"+A)}}y.sort((function(t,e){return(t.zindex||0)-(e.zindex||0)||t.i-e.i}));var S=e.plot.selectAll(\"g.mlayer\").data(y,(function(t){return t.className}));if(S.enter().append(\"g\").attr(\"class\",(function(t){return t.className})).classed(\"mlayer\",!0).classed(\"rangeplot\",e.isRangePlot),S.exit().remove(),S.order(),S.each((function(r){var i=n.select(this),l=r.className;r.plotMethod(t,e,r.cdModule,i,a,o),-1===u.clipOnAxisFalseQuery.indexOf(\".\"+l)&&s.setClipUrl(i,e.layerClipId,t)})),d._has(\"scattergl\")&&(c=i.getModule(\"scattergl\"),f=l(r,c)[0],c.plot(t,e,f)),!t._context.staticPlot&&(e._hasClipOnAxisFalse&&(e.clipOnAxisFalseTraces=e.plot.selectAll(u.clipOnAxisFalseQuery.join(\",\")).selectAll(\".trace\")),v.length)){var E=e.plot.selectAll(v.join(\",\")).selectAll(\".trace\");e.zoomScalePts=E.selectAll(\"path.point\"),e.zoomScaleTxt=E.selectAll(\".textpoint\")}}function g(t,e){var r=t._fullLayout,n=e.plotgroup,i=e.id,a=-1!==i.indexOf(d),o=u.layerValue2layerClass[e.xaxis.layer],s=u.layerValue2layerClass[e.yaxis.layer],l=r._hasOnlyLargeSploms;if(!e.mainplot||r._zindices.length>1)if(l)e.xlines=f(n,\"path\",\"xlines-above\"),e.ylines=f(n,\"path\",\"ylines-above\"),e.xaxislayer=f(n,\"g\",\"xaxislayer-above\"),e.yaxislayer=f(n,\"g\",\"yaxislayer-above\");else{if(!a){var h=f(n,\"g\",\"layer-subplot\");e.shapelayer=f(h,\"g\",\"shapelayer\"),e.imagelayer=f(h,\"g\",\"imagelayer\"),e.minorGridlayer=f(n,\"g\",\"minor-gridlayer\"),e.gridlayer=f(n,\"g\",\"gridlayer\"),e.zerolinelayer=f(n,\"g\",\"zerolinelayer\");var m=f(n,\"g\",\"layer-between\");e.shapelayerBetween=f(m,\"g\",\"shapelayer\"),e.imagelayerBetween=f(m,\"g\",\"imagelayer\"),f(n,\"path\",\"xlines-below\"),f(n,\"path\",\"ylines-below\"),e.overlinesBelow=f(n,\"g\",\"overlines-below\"),f(n,\"g\",\"xaxislayer-below\"),f(n,\"g\",\"yaxislayer-below\"),e.overaxesBelow=f(n,\"g\",\"overaxes-below\")}e.overplot=f(n,\"g\",\"overplot\"),e.plot=f(e.overplot,\"g\",i),a||(e.xlines=f(n,\"path\",\"xlines-above\"),e.ylines=f(n,\"path\",\"ylines-above\"),e.overlinesAbove=f(n,\"g\",\"overlines-above\"),f(n,\"g\",\"xaxislayer-above\"),f(n,\"g\",\"yaxislayer-above\"),e.overaxesAbove=f(n,\"g\",\"overaxes-above\"),e.xlines=n.select(\".xlines-\"+o),e.ylines=n.select(\".ylines-\"+s),e.xaxislayer=n.select(\".xaxislayer-\"+o),e.yaxislayer=n.select(\".yaxislayer-\"+s))}else{var g=e.mainplotinfo,y=g.plotgroup,v=i+\"-x\",x=i+\"-y\";e.minorGridlayer=g.minorGridlayer,e.gridlayer=g.gridlayer,e.zerolinelayer=g.zerolinelayer,f(g.overlinesBelow,\"path\",v),f(g.overlinesBelow,\"path\",x),f(g.overaxesBelow,\"g\",v),f(g.overaxesBelow,\"g\",x),e.plot=f(g.overplot,\"g\",i),f(g.overlinesAbove,\"path\",v),f(g.overlinesAbove,\"path\",x),f(g.overaxesAbove,\"g\",v),f(g.overaxesAbove,\"g\",x),e.xlines=y.select(\".overlines-\"+o).select(\".\"+v),e.ylines=y.select(\".overlines-\"+s).select(\".\"+x),e.xaxislayer=y.select(\".overaxes-\"+o).select(\".\"+v),e.yaxislayer=y.select(\".overaxes-\"+s).select(\".\"+x)}a||(l||(p(e.minorGridlayer,\"g\",e.xaxis._id),p(e.minorGridlayer,\"g\",e.yaxis._id),e.minorGridlayer.selectAll(\"g\").map((function(t){return t[0]})).sort(c.idSort),p(e.gridlayer,\"g\",e.xaxis._id),p(e.gridlayer,\"g\",e.yaxis._id),e.gridlayer.selectAll(\"g\").map((function(t){return t[0]})).sort(c.idSort)),e.xlines.style(\"fill\",\"none\").classed(\"crisp\",!0),e.ylines.style(\"fill\",\"none\").classed(\"crisp\",!0))}function y(t,e){if(t){var r={};for(var i in t.each((function(t){var i=t[0];n.select(this).remove(),v(i,e),r[i]=!0})),e._plots)for(var a=e._plots[i].overlays||[],o=0;o<a.length;o++){var s=a[o];r[s.id]&&s.plot.selectAll(\".trace\").remove()}}}function v(t,e){e._draggers.selectAll(\"g.\"+t).remove(),e._defs.select(\"#clip\"+e._uid+t+\"plot\").remove()}e.name=\"cartesian\",e.attr=[\"xaxis\",\"yaxis\"],e.idRoot=[\"x\",\"y\"],e.idRegex=u.idRegex,e.attrRegex=u.attrRegex,e.attributes=r(55126),e.layoutAttributes=r(25829),e.supplyLayoutDefaults=r(74098),e.transitionAxes=r(84982),e.finalizeSubplots=function(t,e){var r,n,i,o=e._subplots,s=o.xaxis,l=o.yaxis,h=o.cartesian,f=h.concat(o.gl2d||[]),p={},d={};for(r=0;r<f.length;r++){var m=f[r].split(\"y\");p[m[0]]=1,d[\"y\"+m[1]]=1}for(r=0;r<s.length;r++)p[n=s[r]]||(i=(t[c.id2name(n)]||{}).anchor,u.idRegex.y.test(i)||(i=\"y\"),h.push(n+i),f.push(n+i),d[i]||(d[i]=1,a.pushUnique(l,i)));for(r=0;r<l.length;r++)d[i=l[r]]||(n=(t[c.id2name(i)]||{}).anchor,u.idRegex.x.test(n)||(n=\"x\"),h.push(n+i),f.push(n+i),p[n]||(p[n]=1,a.pushUnique(s,n)));if(!f.length){for(var g in n=\"\",i=\"\",t)u.attrRegex.test(g)&&(\"x\"===g.charAt(0)?(!n||+g.substr(5)<+n.substr(5))&&(n=g):(!i||+g.substr(5)<+i.substr(5))&&(i=g));n=n?c.name2id(n):\"x\",i=i?c.name2id(i):\"y\",s.push(n),l.push(i),h.push(n+i)}},e.plot=function(t,e,r,n){var i,o=t._fullLayout,s=o._subplots.cartesian,l=t.calcdata;if(!Array.isArray(e))for(e=[],i=0;i<l.length;i++)e.push(i);for(var c=o._zindices,u=0;u<c.length;u++){var h=c[u];for(i=0;i<s.length;i++){var f=s[i],p=o._plots[f];if(u>0){var g=p.id;if(-1!==g.indexOf(d))continue;g+=d+(u+1),p=a.extendFlat({},p,{id:g,plot:o._cartesianlayer.selectAll(\".subplot\").select(\".\"+g)})}for(var y,v=[],x=0;x<l.length;x++){var _=l[x],b=_[0].trace;h===(b.zorder||0)&&b.xaxis+b.yaxis===f&&((-1!==e.indexOf(b.index)||b.carpet)&&(y&&y[0].trace.xaxis+y[0].trace.yaxis===f&&-1!==[\"tonextx\",\"tonexty\",\"tonext\"].indexOf(b.fill)&&-1===v.indexOf(y)&&v.push(y),v.push(_)),y=_)}m(t,p,v,r,n)}}},e.clean=function(t,e,r,n){var i,a,o,s=n._plots||{},l=e._plots||{},u=n._subplots||{};if(n._hasOnlyLargeSploms&&!e._hasOnlyLargeSploms)for(o in s)(i=s[o]).plotgroup&&i.plotgroup.remove();var h=n._has&&n._has(\"gl\"),f=e._has&&e._has(\"gl\");if(h&&!f)for(o in s)(i=s[o])._scene&&i._scene.destroy();if(u.xaxis&&u.yaxis){var p=c.listIds({_fullLayout:n});for(a=0;a<p.length;a++){var m=p[a];e[c.id2name(m)]||n._infolayer.selectAll(\".g-\"+m+\"title\").remove()}}var g=n._has&&n._has(\"cartesian\"),x=e._has&&e._has(\"cartesian\");if(g&&!x)y(n._cartesianlayer.selectAll(\".subplot\"),n),n._defs.selectAll(\".axesclip\").remove(),delete n._axisConstraintGroups,delete n._axisMatchGroups;else if(u.cartesian)for(a=0;a<u.cartesian.length;a++){var _=u.cartesian[a];if(-1===_.indexOf(d)&&!l[_]){var b=\".\"+_+\",.\"+_+\"-x,.\"+_+\"-y\";n._cartesianlayer.selectAll(b).remove(),v(_,n)}}},e.drawFramework=function(t){var e,r=t._fullLayout,i=t.calcdata,o={};for(e=0;e<i.length;e++){var s=i[e][0],l=s.trace.zorder||0;o[l]||(o[l]=[]),o[l].push(s)}var c=Object.keys(o).map(Number).sort(a.sorterAsc);c.length||(c=[0]),r._zindices=c;var u=function(t){var e,r,n,i,a,o,s=t._fullLayout,l=s._zindices.length,c=s._subplots.cartesian,u=c.length,h=[],f=[];for(e=0;e<u;e++){n=c[e],a=(i=s._plots[n]).xaxis,o=i.yaxis;var p=a._mainAxis,m=o._mainAxis,g=p._id+m._id,y=s._plots[g];i.overlays=[],g!==n&&y?(i.mainplot=g,i.mainplotinfo=y,f.push(n)):(i.mainplot=void 0,i.mainplotinfo=void 0,h.push(n))}for(e=0;e<f.length;e++)n=f[e],(i=s._plots[n]).mainplotinfo.overlays.push(i);var v=h.concat(f),x=[];for(e=0;e<u;e++){n=v[e],a=(i=s._plots[n]).xaxis,o=i.yaxis;for(var _=[],b=1;b<=l;b++){var w=\"\";for(b>1&&(w+=d+b),_.push(n+w),r=0;r<i.overlays.length;r++)_.push(i.overlays[r].id+w)}_=_.concat([a.layer,o.layer,a.overlaying||\"\",o.overlaying||\"\"]),x.push(_)}return x}(t),h=u.length,p=[];for(e=0;e<h;e++)p[e]=u[e].slice();for(var m=1;m<c.length;m++){var v=[];for(e=0;e<h;e++)v[e]=u[e].slice(),v[e][0]+=d+(m+1);p=p.concat(v)}var x=r._cartesianlayer.selectAll(\".subplot\").data(p,String);x.enter().append(\"g\").attr(\"class\",(function(t){return\"subplot \"+t[0]})),x.order(),x.exit().call(y,r),x.each((function(e){var i=e[0],o=i.indexOf(d),s=-1!==o,l=s?i.slice(0,o):i,c=r._plots[i];c||(c=a.extendFlat({},r._plots[l]))&&(c.id=i,r._plots[i]=c,r._subplots.cartesian.push(i)),c&&(c.plotgroup=n.select(this),g(t,c),s||(c.draglayer=f(r._draggers,\"g\",i)))}))},e.rangePlot=function(t,e,r){g(t,e),m(t,e,r),o.style(t)},e.toSVG=function(t){var e=t._fullLayout._glimages,r=n.select(t).selectAll(\".svg-container\");r.filter((function(t,e){return e===r.size()-1})).selectAll(\".gl-canvas-context, .gl-canvas-focus\").each((function(){var t=this,r=t.toDataURL(\"image/png\");e.append(\"svg:image\").attr({xmlns:h.svg,\"xlink:href\":r,preserveAspectRatio:\"none\",x:0,y:0,width:t.style.width,height:t.style.height})}))},e.updateFx=r(95284).updateFx},25829:function(t,e,r){\"use strict\";var n=r(80337),i=r(10229),a=r(94850).T,o=r(93049).extendFlat,s=r(78032).templatedArray,l=r(80712).descriptionWithDates,c=r(63821).ONEDAY,u=r(54826),h=u.HOUR_PATTERN,f=u.WEEKDAY_PATTERN,p={valType:\"enumerated\",values:[\"auto\",\"linear\",\"array\"],editType:\"ticks\",impliedEdits:{tick0:void 0,dtick:void 0}},d=o({},p,{values:p.values.slice().concat([\"sync\"])});function m(t){return{valType:\"integer\",min:0,dflt:t?5:0,editType:\"ticks\"}}var g={valType:\"any\",editType:\"ticks\",impliedEdits:{tickmode:\"linear\"}},y={valType:\"any\",editType:\"ticks\",impliedEdits:{tickmode:\"linear\"}},v={valType:\"data_array\",editType:\"ticks\"},x={valType:\"enumerated\",values:[\"outside\",\"inside\",\"\"],editType:\"ticks\"};function _(t){var e={valType:\"number\",min:0,editType:\"ticks\"};return t||(e.dflt=5),e}function b(t){var e={valType:\"number\",min:0,editType:\"ticks\"};return t||(e.dflt=1),e}var w={valType:\"color\",dflt:i.defaultLine,editType:\"ticks\"},T={valType:\"color\",dflt:i.lightLine,editType:\"ticks\"};function k(t){var e={valType:\"number\",min:0,editType:\"ticks\"};return t||(e.dflt=1),e}var A=o({},a,{editType:\"ticks\"}),M={valType:\"boolean\",editType:\"ticks\"};t.exports={visible:{valType:\"boolean\",editType:\"plot\"},color:{valType:\"color\",dflt:i.defaultLine,editType:\"ticks\"},title:{text:{valType:\"string\",editType:\"ticks\"},font:n({editType:\"ticks\"}),standoff:{valType:\"number\",min:0,editType:\"ticks\"},editType:\"ticks\"},type:{valType:\"enumerated\",values:[\"-\",\"linear\",\"log\",\"date\",\"category\",\"multicategory\"],dflt:\"-\",editType:\"calc\",_noTemplating:!0},autotypenumbers:{valType:\"enumerated\",values:[\"convert types\",\"strict\"],dflt:\"convert types\",editType:\"calc\"},autorange:{valType:\"enumerated\",values:[!0,!1,\"reversed\",\"min reversed\",\"max reversed\",\"min\",\"max\"],dflt:!0,editType:\"axrange\",impliedEdits:{\"range[0]\":void 0,\"range[1]\":void 0}},autorangeoptions:{minallowed:{valType:\"any\",editType:\"plot\",impliedEdits:{\"range[0]\":void 0,\"range[1]\":void 0}},maxallowed:{valType:\"any\",editType:\"plot\",impliedEdits:{\"range[0]\":void 0,\"range[1]\":void 0}},clipmin:{valType:\"any\",editType:\"plot\",impliedEdits:{\"range[0]\":void 0,\"range[1]\":void 0}},clipmax:{valType:\"any\",editType:\"plot\",impliedEdits:{\"range[0]\":void 0,\"range[1]\":void 0}},include:{valType:\"any\",arrayOk:!0,editType:\"plot\",impliedEdits:{\"range[0]\":void 0,\"range[1]\":void 0}},editType:\"plot\"},rangemode:{valType:\"enumerated\",values:[\"normal\",\"tozero\",\"nonnegative\"],dflt:\"normal\",editType:\"plot\"},range:{valType:\"info_array\",items:[{valType:\"any\",editType:\"axrange\",impliedEdits:{\"^autorange\":!1},anim:!0},{valType:\"any\",editType:\"axrange\",impliedEdits:{\"^autorange\":!1},anim:!0}],editType:\"axrange\",impliedEdits:{autorange:!1},anim:!0},minallowed:{valType:\"any\",editType:\"plot\",impliedEdits:{\"^autorange\":!1}},maxallowed:{valType:\"any\",editType:\"plot\",impliedEdits:{\"^autorange\":!1}},fixedrange:{valType:\"boolean\",dflt:!1,editType:\"calc\"},insiderange:{valType:\"info_array\",items:[{valType:\"any\",editType:\"plot\"},{valType:\"any\",editType:\"plot\"}],editType:\"plot\"},scaleanchor:{valType:\"enumerated\",values:[u.idRegex.x.toString(),u.idRegex.y.toString(),!1],editType:\"plot\"},scaleratio:{valType:\"number\",min:0,dflt:1,editType:\"plot\"},constrain:{valType:\"enumerated\",values:[\"range\",\"domain\"],editType:\"plot\"},constraintoward:{valType:\"enumerated\",values:[\"left\",\"center\",\"right\",\"top\",\"middle\",\"bottom\"],editType:\"plot\"},matches:{valType:\"enumerated\",values:[u.idRegex.x.toString(),u.idRegex.y.toString()],editType:\"calc\"},rangebreaks:s(\"rangebreak\",{enabled:{valType:\"boolean\",dflt:!0,editType:\"calc\"},bounds:{valType:\"info_array\",items:[{valType:\"any\",editType:\"calc\"},{valType:\"any\",editType:\"calc\"}],editType:\"calc\"},pattern:{valType:\"enumerated\",values:[f,h,\"\"],editType:\"calc\"},values:{valType:\"info_array\",freeLength:!0,editType:\"calc\",items:{valType:\"any\",editType:\"calc\"}},dvalue:{valType:\"number\",editType:\"calc\",min:0,dflt:c},editType:\"calc\"}),tickmode:d,nticks:m(),tick0:g,dtick:y,ticklabelstep:{valType:\"integer\",min:1,dflt:1,editType:\"ticks\"},tickvals:v,ticktext:{valType:\"data_array\",editType:\"ticks\"},ticks:x,tickson:{valType:\"enumerated\",values:[\"labels\",\"boundaries\"],dflt:\"labels\",editType:\"ticks\"},ticklabelmode:{valType:\"enumerated\",values:[\"instant\",\"period\"],dflt:\"instant\",editType:\"ticks\"},ticklabelposition:{valType:\"enumerated\",values:[\"outside\",\"inside\",\"outside top\",\"inside top\",\"outside left\",\"inside left\",\"outside right\",\"inside right\",\"outside bottom\",\"inside bottom\"],dflt:\"outside\",editType:\"calc\"},ticklabeloverflow:{valType:\"enumerated\",values:[\"allow\",\"hide past div\",\"hide past domain\"],editType:\"calc\"},ticklabelshift:{valType:\"integer\",dflt:0,editType:\"ticks\"},ticklabelstandoff:{valType:\"integer\",dflt:0,editType:\"ticks\"},ticklabelindex:{valType:\"integer\",arrayOk:!0,editType:\"calc\"},mirror:{valType:\"enumerated\",values:[!0,\"ticks\",!1,\"all\",\"allticks\"],dflt:!1,editType:\"ticks+layoutstyle\"},ticklen:_(),tickwidth:b(),tickcolor:w,showticklabels:{valType:\"boolean\",dflt:!0,editType:\"ticks\"},labelalias:{valType:\"any\",dflt:!1,editType:\"ticks\"},automargin:{valType:\"flaglist\",flags:[\"height\",\"width\",\"left\",\"right\",\"top\",\"bottom\"],extras:[!0,!1],dflt:!1,editType:\"ticks\"},showspikes:{valType:\"boolean\",dflt:!1,editType:\"modebar\"},spikecolor:{valType:\"color\",dflt:null,editType:\"none\"},spikethickness:{valType:\"number\",dflt:3,editType:\"none\"},spikedash:o({},a,{dflt:\"dash\",editType:\"none\"}),spikemode:{valType:\"flaglist\",flags:[\"toaxis\",\"across\",\"marker\"],dflt:\"toaxis\",editType:\"none\"},spikesnap:{valType:\"enumerated\",values:[\"data\",\"cursor\",\"hovered data\"],dflt:\"hovered data\",editType:\"none\"},tickfont:n({editType:\"ticks\"}),tickangle:{valType:\"angle\",dflt:\"auto\",editType:\"ticks\"},autotickangles:{valType:\"info_array\",freeLength:!0,items:{valType:\"angle\"},dflt:[0,30,90],editType:\"ticks\"},tickprefix:{valType:\"string\",dflt:\"\",editType:\"ticks\"},showtickprefix:{valType:\"enumerated\",values:[\"all\",\"first\",\"last\",\"none\"],dflt:\"all\",editType:\"ticks\"},ticksuffix:{valType:\"string\",dflt:\"\",editType:\"ticks\"},showticksuffix:{valType:\"enumerated\",values:[\"all\",\"first\",\"last\",\"none\"],dflt:\"all\",editType:\"ticks\"},showexponent:{valType:\"enumerated\",values:[\"all\",\"first\",\"last\",\"none\"],dflt:\"all\",editType:\"ticks\"},exponentformat:{valType:\"enumerated\",values:[\"none\",\"e\",\"E\",\"power\",\"SI\",\"B\"],dflt:\"B\",editType:\"ticks\"},minexponent:{valType:\"number\",dflt:3,min:0,editType:\"ticks\"},separatethousands:{valType:\"boolean\",dflt:!1,editType:\"ticks\"},tickformat:{valType:\"string\",dflt:\"\",editType:\"ticks\",description:l(\"tick label\")},tickformatstops:s(\"tickformatstop\",{enabled:{valType:\"boolean\",dflt:!0,editType:\"ticks\"},dtickrange:{valType:\"info_array\",items:[{valType:\"any\",editType:\"ticks\"},{valType:\"any\",editType:\"ticks\"}],editType:\"ticks\"},value:{valType:\"string\",dflt:\"\",editType:\"ticks\"},editType:\"ticks\"}),hoverformat:{valType:\"string\",dflt:\"\",editType:\"none\",description:l(\"hover text\")},showline:{valType:\"boolean\",dflt:!1,editType:\"ticks+layoutstyle\"},linecolor:{valType:\"color\",dflt:i.defaultLine,editType:\"layoutstyle\"},linewidth:{valType:\"number\",min:0,dflt:1,editType:\"ticks+layoutstyle\"},showgrid:M,gridcolor:T,gridwidth:k(),griddash:A,zeroline:{valType:\"boolean\",editType:\"ticks\"},zerolinecolor:{valType:\"color\",dflt:i.defaultLine,editType:\"ticks\"},zerolinewidth:{valType:\"number\",dflt:1,editType:\"ticks\"},showdividers:{valType:\"boolean\",dflt:!0,editType:\"ticks\"},dividercolor:{valType:\"color\",dflt:i.defaultLine,editType:\"ticks\"},dividerwidth:{valType:\"number\",dflt:1,editType:\"ticks\"},anchor:{valType:\"enumerated\",values:[\"free\",u.idRegex.x.toString(),u.idRegex.y.toString()],editType:\"plot\"},side:{valType:\"enumerated\",values:[\"top\",\"bottom\",\"left\",\"right\"],editType:\"plot\"},overlaying:{valType:\"enumerated\",values:[\"free\",u.idRegex.x.toString(),u.idRegex.y.toString()],editType:\"plot\"},minor:{tickmode:p,nticks:m(\"minor\"),tick0:g,dtick:y,tickvals:v,ticks:x,ticklen:_(\"minor\"),tickwidth:b(\"minor\"),tickcolor:w,gridcolor:T,gridwidth:k(\"minor\"),griddash:A,showgrid:M,editType:\"ticks\"},layer:{valType:\"enumerated\",values:[\"above traces\",\"below traces\"],dflt:\"above traces\",editType:\"plot\"},domain:{valType:\"info_array\",items:[{valType:\"number\",min:0,max:1,editType:\"plot\"},{valType:\"number\",min:0,max:1,editType:\"plot\"}],dflt:[0,1],editType:\"plot\"},position:{valType:\"number\",min:0,max:1,dflt:0,editType:\"plot\"},autoshift:{valType:\"boolean\",dflt:!1,editType:\"plot\"},shift:{valType:\"number\",editType:\"plot\"},categoryorder:{valType:\"enumerated\",values:[\"trace\",\"category ascending\",\"category descending\",\"array\",\"total ascending\",\"total descending\",\"min ascending\",\"min descending\",\"max ascending\",\"max descending\",\"sum ascending\",\"sum descending\",\"mean ascending\",\"mean descending\",\"geometric mean ascending\",\"geometric mean descending\",\"median ascending\",\"median descending\"],dflt:\"trace\",editType:\"calc\"},categoryarray:{valType:\"data_array\",editType:\"calc\"},uirevision:{valType:\"any\",editType:\"none\"},editType:\"calc\",_deprecated:{autotick:{valType:\"boolean\",editType:\"ticks\"},title:{valType:\"string\",editType:\"ticks\"},titlefont:n({editType:\"ticks\"})}}},74098:function(t,e,r){\"use strict\";var n=r(34809),i=r(78766),a=r(36040).isUnifiedHover,o=r(45265),s=r(78032),l=r(6704),c=r(25829),u=r(4392),h=r(97655),f=r(84391),p=r(40957),d=r(5975),m=d.id2name,g=d.name2id,y=r(54826).AX_ID_PATTERN,v=r(33626),x=v.traceIs,_=v.getComponentMethod;function b(t,e,r){Array.isArray(t[e])?t[e].push(r):t[e]=[r]}t.exports=function(t,e,r){var v,w,T=e.autotypenumbers,k={},A={},M={},S={},E={},C={},L={},I={},P={},z={};for(v=0;v<r.length;v++){var O=r[v];if(x(O,\"cartesian\")||x(O,\"gl2d\")){var D,R;if(O.xaxis)D=m(O.xaxis),b(k,D,O);else if(O.xaxes)for(w=0;w<O.xaxes.length;w++)b(k,m(O.xaxes[w]),O);if(O.yaxis)R=m(O.yaxis),b(k,R,O);else if(O.yaxes)for(w=0;w<O.yaxes.length;w++)b(k,m(O.yaxes[w]),O);\"funnel\"===O.type?\"h\"===O.orientation?(D&&(A[D]=!0),R&&(L[R]=!0)):R&&(M[R]=!0):\"image\"===O.type?(R&&(I[R]=!0),D&&(I[D]=!0)):(R&&(E[R]=!0,C[R]=!0),x(O,\"carpet\")&&(\"carpet\"!==O.type||O._cheater)||D&&(S[D]=!0)),\"carpet\"===O.type&&O._cheater&&D&&(A[D]=!0),x(O,\"2dMap\")&&(P[D]=!0,P[R]=!0),x(O,\"oriented\")&&(z[\"h\"===O.orientation?R:D]=!0)}}var F=e._subplots,B=F.xaxis,N=F.yaxis,j=n.simpleMap(B,m),U=n.simpleMap(N,m),V=j.concat(U),q=i.background;B.length&&N.length&&(q=n.coerce(t,e,l,\"plot_bgcolor\"));var H,G,Z,W,Y,X=i.combine(q,e.paper_bgcolor);function $(){var t=k[H]||[];Y._traceIndices=t.map((function(t){return t._expandedIndex})),Y._annIndices=[],Y._shapeIndices=[],Y._selectionIndices=[],Y._imgIndices=[],Y._subplotsWith=[],Y._counterAxes=[],Y._name=Y._attr=H,Y._id=G}function J(t,e){return n.coerce(W,Y,c,t,e)}function K(t,e){return n.coerce2(W,Y,c,t,e)}function Q(t){return\"x\"===t?N:B}function tt(e,r){for(var n=\"x\"===e?j:U,i=[],a=0;a<n.length;a++){var o=n[a];o===r||(t[o]||{}).overlaying||i.push(g(o))}return i}var et={x:Q(\"x\"),y:Q(\"y\")},rt=et.x.concat(et.y),nt={},it=[];function at(){var t=W.matches;y.test(t)&&-1===rt.indexOf(t)&&(nt[t]=W.type,it=Object.keys(nt))}var ot=o(t,e),st=a(ot);for(v=0;v<V.length;v++){H=V[v],G=g(H),Z=H.charAt(0),n.isPlainObject(t[H])||(t[H]={}),W=t[H],Y=s.newContainer(e,H,Z+\"axis\"),$();var lt=\"x\"===Z&&!S[H]&&A[H]||\"y\"===Z&&!E[H]&&M[H],ct=\"y\"===Z&&(!C[H]&&L[H]||I[H]),ut={hasMinor:!0,letter:Z,font:e.font,outerTicks:P[H],showGrid:!z[H],data:k[H]||[],bgColor:X,calendar:e.calendar,automargin:!0,visibleDflt:lt,reverseDflt:ct,autotypenumbersDflt:T,splomStash:((e._splomAxes||{})[Z]||{})[G],noAutotickangles:\"y\"===Z};J(\"uirevision\",e.uirevision),u(W,Y,J,ut),h(W,Y,J,ut,e);var ht=st&&Z===ot.charAt(0),ft=K(\"spikecolor\",st?Y.color:void 0),pt=K(\"spikethickness\",st?1.5:void 0),dt=K(\"spikedash\",st?\"dot\":void 0),mt=K(\"spikemode\",st?\"across\":void 0),gt=K(\"spikesnap\");J(\"showspikes\",!!(ht||ft||pt||dt||mt||gt))||(delete Y.spikecolor,delete Y.spikethickness,delete Y.spikedash,delete Y.spikemode,delete Y.spikesnap);var yt=m(W.overlaying),vt=[0,1];if(void 0!==e[yt]){var xt=m(e[yt].anchor);void 0!==e[xt]&&(vt=e[xt].domain)}p(W,Y,J,{letter:Z,counterAxes:et[Z],overlayableAxes:tt(Z,H),grid:e.grid,overlayingDomain:vt}),J(\"title.standoff\"),at(),Y._input=W}for(v=0;v<it.length;){G=it[v++],Z=(H=m(G)).charAt(0),n.isPlainObject(t[H])||(t[H]={}),W=t[H],Y=s.newContainer(e,H,Z+\"axis\"),$();var _t={letter:Z,font:e.font,outerTicks:P[H],showGrid:!z[H],data:[],bgColor:X,calendar:e.calendar,automargin:!0,visibleDflt:!1,reverseDflt:!1,autotypenumbersDflt:T,splomStash:((e._splomAxes||{})[Z]||{})[G]};J(\"uirevision\",e.uirevision),Y.type=nt[G]||\"linear\",h(W,Y,J,_t,e),p(W,Y,J,{letter:Z,counterAxes:et[Z],overlayableAxes:tt(Z,H),grid:e.grid}),J(\"fixedrange\"),at(),Y._input=W}var bt=_(\"rangeslider\",\"handleDefaults\"),wt=_(\"rangeselector\",\"handleDefaults\");for(v=0;v<j.length;v++)H=j[v],W=t[H],Y=e[H],bt(t,e,H),\"date\"===Y.type&&wt(W,Y,e,U,Y.calendar),J(\"fixedrange\");for(v=0;v<U.length;v++){H=U[v],W=t[H],Y=e[H];var Tt=e[m(Y.anchor)];J(\"fixedrange\",_(\"rangeslider\",\"isVisible\")(Tt))}f.handleDefaults(t,e,{axIds:rt.concat(it).sort(d.idSort),axHasImage:I})}},97405:function(t,e,r){\"use strict\";var n=r(65657).mix,i=r(10229),a=r(34809);t.exports=function(t,e,r,o){var s=(o=o||{}).dfltColor;function l(r,n){return a.coerce2(t,e,o.attributes,r,n)}var c=l(\"linecolor\",s),u=l(\"linewidth\");r(\"showline\",o.showLine||!!c||!!u)||(delete e.linecolor,delete e.linewidth);var h=l(\"gridcolor\",n(s,o.bgColor,o.blend||i.lightFraction).toRgbString()),f=l(\"gridwidth\"),p=l(\"griddash\");if(r(\"showgrid\",o.showGrid||!!h||!!f||!!p)||(delete e.gridcolor,delete e.gridwidth,delete e.griddash),o.hasMinor){var d=l(\"minor.gridcolor\",n(e.gridcolor,o.bgColor,67).toRgbString()),m=l(\"minor.gridwidth\",e.gridwidth||1),g=l(\"minor.griddash\",e.griddash||\"solid\");r(\"minor.showgrid\",!!d||!!m||!!g)||(delete e.minor.gridcolor,delete e.minor.gridwidth,delete e.minor.griddash)}if(!o.noZeroLine){var y=l(\"zerolinecolor\",s),v=l(\"zerolinewidth\");r(\"zeroline\",o.showGrid||!!y||!!v)||(delete e.zerolinecolor,delete e.zerolinewidth)}}},40957:function(t,e,r){\"use strict\";var n=r(10721),i=r(34809);t.exports=function(t,e,r,a){var o,s,l,c,u,h,f=a.counterAxes||[],p=a.overlayableAxes||[],d=a.letter,m=a.grid,g=a.overlayingDomain;m&&(s=m._domains[d][m._axisMap[e._id]],o=m._anchors[e._id],s&&(l=m[d+\"side\"].split(\" \")[0],c=m.domain[d][\"right\"===l||\"top\"===l?1:0])),s=s||[0,1],o=o||(n(t.position)?\"free\":f[0]||\"free\"),l=l||(\"x\"===d?\"bottom\":\"left\"),c=c||0,u=0,h=!1;var y=i.coerce(t,e,{anchor:{valType:\"enumerated\",values:[\"free\"].concat(f),dflt:o}},\"anchor\"),v=i.coerce(t,e,{side:{valType:\"enumerated\",values:\"x\"===d?[\"bottom\",\"top\"]:[\"left\",\"right\"],dflt:l}},\"side\");\"free\"===y&&(\"y\"===d&&(r(\"autoshift\")&&(c=\"left\"===v?g[0]:g[1],h=!e.automargin||e.automargin,u=\"left\"===v?-3:3),r(\"shift\",u)),r(\"position\",c)),r(\"automargin\",h);var x=!1;if(p.length&&(x=i.coerce(t,e,{overlaying:{valType:\"enumerated\",values:[!1].concat(p),dflt:!1}},\"overlaying\")),!x){var _=r(\"domain\",s);_[0]>_[1]-1/4096&&(e.domain=s),i.noneOrAll(t.domain,e.domain,s),\"sync\"===e.tickmode&&(e.tickmode=\"auto\")}return r(\"layer\"),e}},54616:function(t,e,r){\"use strict\";var n=r(87703);t.exports=function(t,e,r,i,a){a||(a={});var o=a.tickSuffixDflt,s=n(t);r(\"tickprefix\")&&r(\"showtickprefix\",s),r(\"ticksuffix\",o)&&r(\"showticksuffix\",s)}},90259:function(t,e,r){\"use strict\";var n=r(75511);t.exports=function(t,e,r,i){var a=e._template||{},o=e.type||a.type||\"-\";r(\"minallowed\"),r(\"maxallowed\");var s,l=r(\"range\");l||i.noInsiderange||\"log\"===o||(!(s=r(\"insiderange\"))||null!==s[0]&&null!==s[1]||(e.insiderange=!1,s=void 0),s&&(l=r(\"range\",s)));var c,u=e.getAutorangeDflt(l,i),h=r(\"autorange\",u);!l||(null!==l[0]||null!==l[1])&&(null!==l[0]&&null!==l[1]||\"reversed\"!==h&&!0!==h)&&(null===l[0]||\"min\"!==h&&\"max reversed\"!==h)&&(null===l[1]||\"max\"!==h&&\"min reversed\"!==h)||(l=void 0,delete e.range,e.autorange=!0,c=!0),c||(h=r(\"autorange\",u=e.getAutorangeDflt(l,i))),h&&(n(r,h,l),\"linear\"!==o&&\"-\"!==o||r(\"rangemode\")),e.cleanRange()}},67611:function(t,e,r){\"use strict\";var n=r(4530).FROM_BL;t.exports=function(t,e,r){void 0===r&&(r=n[t.constraintoward||\"center\"]);var i=[t.r2l(t.range[0]),t.r2l(t.range[1])],a=i[0]+(i[1]-i[0])*r;t.range=t._input.range=[t.l2r(a+(i[0]-a)*e),t.l2r(a+(i[1]-a)*e)],t.setScale()}},19091:function(t,e,r){\"use strict\";var n=r(45568),i=r(42696).aL,a=r(34809),o=a.numberFormat,s=r(10721),l=a.cleanNumber,c=a.ms2DateTime,u=a.dateTime2ms,h=a.ensureNumber,f=a.isArrayOrTypedArray,p=r(63821),d=p.FP_SAFE,m=p.BADNUM,g=p.LOG_CLIP,y=p.ONEWEEK,v=p.ONEDAY,x=p.ONEHOUR,_=p.ONEMIN,b=p.ONESEC,w=r(5975),T=r(54826),k=T.HOUR_PATTERN,A=T.WEEKDAY_PATTERN;function M(t){return Math.pow(10,t)}function S(t){return null!=t}t.exports=function(t,e){e=e||{};var r=t._id||\"x\",p=r.charAt(0);function E(e,r){if(e>0)return Math.log(e)/Math.LN10;if(e<=0&&r&&t.range&&2===t.range.length){var n=t.range[0],i=t.range[1];return.5*(n+i-2*g*Math.abs(n-i))}return m}function C(e,r,n,i){if((i||{}).msUTC&&s(e))return+e;var o=u(e,n||t.calendar);if(o===m){if(!s(e))return m;e=+e;var l=Math.floor(10*a.mod(e+.05,1)),c=Math.round(e-l/10);o=u(new Date(c))+l/10}return o}function L(e,r,n){return c(e,r,n||t.calendar)}function I(e){return t._categories[Math.round(e)]}function P(e){if(S(e)){if(void 0===t._categoriesMap&&(t._categoriesMap={}),void 0!==t._categoriesMap[e])return t._categoriesMap[e];t._categories.push(\"number\"==typeof e?String(e):e);var r=t._categories.length-1;return t._categoriesMap[e]=r,r}return m}function z(e){if(t._categoriesMap)return t._categoriesMap[e]}function O(t){var e=z(t);return void 0!==e?e:s(t)?+t:void 0}function D(t){return s(t)?+t:z(t)}function R(t,e,r){return n.round(r+e*t,2)}function F(t,e,r){return(t-r)/e}var B=function(e){return s(e)?R(e,t._m,t._b):m},N=function(e){return F(e,t._m,t._b)};if(t.rangebreaks){var j=\"y\"===p;B=function(e){if(!s(e))return m;var r=t._rangebreaks.length;if(!r)return R(e,t._m,t._b);var n=j;t.range[0]>t.range[1]&&(n=!n);for(var i=n?-1:1,a=i*e,o=0,l=0;l<r;l++){var c=i*t._rangebreaks[l].min,u=i*t._rangebreaks[l].max;if(a<c)break;if(!(a>u)){o=a<(c+u)/2?l:l+1;break}o=l+1}var h=t._B[o]||0;return isFinite(h)?R(e,t._m2,h):0},N=function(e){var r=t._rangebreaks.length;if(!r)return F(e,t._m,t._b);for(var n=0,i=0;i<r&&!(e<t._rangebreaks[i].pmin);i++)e>t._rangebreaks[i].pmax&&(n=i+1);return F(e,t._m2,t._B[n])}}t.c2l=\"log\"===t.type?E:h,t.l2c=\"log\"===t.type?M:h,t.l2p=B,t.p2l=N,t.c2p=\"log\"===t.type?function(t,e){return B(E(t,e))}:B,t.p2c=\"log\"===t.type?function(t){return M(N(t))}:N,-1!==[\"linear\",\"-\"].indexOf(t.type)?(t.d2r=t.r2d=t.d2c=t.r2c=t.d2l=t.r2l=l,t.c2d=t.c2r=t.l2d=t.l2r=h,t.d2p=t.r2p=function(e){return t.l2p(l(e))},t.p2d=t.p2r=N,t.cleanPos=h):\"log\"===t.type?(t.d2r=t.d2l=function(t,e){return E(l(t),e)},t.r2d=t.r2c=function(t){return M(l(t))},t.d2c=t.r2l=l,t.c2d=t.l2r=h,t.c2r=E,t.l2d=M,t.d2p=function(e,r){return t.l2p(t.d2r(e,r))},t.p2d=function(t){return M(N(t))},t.r2p=function(e){return t.l2p(l(e))},t.p2r=N,t.cleanPos=h):\"date\"===t.type?(t.d2r=t.r2d=a.identity,t.d2c=t.r2c=t.d2l=t.r2l=C,t.c2d=t.c2r=t.l2d=t.l2r=L,t.d2p=t.r2p=function(e,r,n){return t.l2p(C(e,0,n))},t.p2d=t.p2r=function(t,e,r){return L(N(t),e,r)},t.cleanPos=function(e){return a.cleanDate(e,m,t.calendar)}):\"category\"===t.type?(t.d2c=t.d2l=P,t.r2d=t.c2d=t.l2d=I,t.d2r=t.d2l_noadd=O,t.r2c=function(e){var r=D(e);return void 0!==r?r:t.fraction2r(.5)},t.l2r=t.c2r=h,t.r2l=D,t.d2p=function(e){return t.l2p(t.r2c(e))},t.p2d=function(t){return I(N(t))},t.r2p=t.d2p,t.p2r=N,t.cleanPos=function(t){return\"string\"==typeof t&&\"\"!==t?t:h(t)}):\"multicategory\"===t.type&&(t.r2d=t.c2d=t.l2d=I,t.d2r=t.d2l_noadd=O,t.r2c=function(e){var r=O(e);return void 0!==r?r:t.fraction2r(.5)},t.r2c_just_indices=z,t.l2r=t.c2r=h,t.r2l=O,t.d2p=function(e){return t.l2p(t.r2c(e))},t.p2d=function(t){return I(N(t))},t.r2p=t.d2p,t.p2r=N,t.cleanPos=function(t){return Array.isArray(t)||\"string\"==typeof t&&\"\"!==t?t:h(t)},t.setupMultiCategory=function(n){var i,o,s=t._traceIndices,l=t._matchGroup;if(l&&0===t._categories.length)for(var c in l)if(c!==r){var u=e[w.id2name(c)];s=s.concat(u._traceIndices)}var h=[[0,{}],[0,{}]],d=[];for(i=0;i<s.length;i++){var m=n[s[i]];if(p in m){var g=m[p],y=m._length||a.minRowLength(g);if(f(g[0])&&f(g[1]))for(o=0;o<y;o++){var v=g[0][o],x=g[1][o];S(v)&&S(x)&&(d.push([v,x]),v in h[0][1]||(h[0][1][v]=h[0][0]++),x in h[1][1]||(h[1][1][x]=h[1][0]++))}}}for(d.sort((function(t,e){var r=h[0][1],n=r[t[0]]-r[e[0]];if(n)return n;var i=h[1][1];return i[t[1]]-i[e[1]]})),i=0;i<d.length;i++)P(d[i])}),t.fraction2r=function(e){var r=t.r2l(t.range[0]),n=t.r2l(t.range[1]);return t.l2r(r+e*(n-r))},t.r2fraction=function(e){var r=t.r2l(t.range[0]),n=t.r2l(t.range[1]);return(t.r2l(e)-r)/(n-r)},t.limitRange=function(e){var r=t.minallowed,n=t.maxallowed;if(void 0!==r||void 0!==n){e||(e=\"range\");var i=a.nestedProperty(t,e).get(),o=a.simpleMap(i,t.r2l),s=o[1]<o[0];s&&o.reverse();var l=a.simpleMap([r,n],t.r2l);if(void 0!==r&&o[0]<l[0]&&(i[s?1:0]=r),void 0!==n&&o[1]>l[1]&&(i[s?0:1]=n),i[0]===i[1]){var c=t.l2r(r),u=t.l2r(n);if(void 0!==r){var h=c+1;void 0!==n&&(h=Math.min(h,u)),i[s?1:0]=h}if(void 0!==n){var f=u+1;void 0!==r&&(f=Math.max(f,c)),i[s?0:1]=f}}}},t.cleanRange=function(e,r){t._cleanRange(e,r),t.limitRange(e)},t._cleanRange=function(e,r){r||(r={}),e||(e=\"range\");var n,i,o=a.nestedProperty(t,e).get();if(i=(i=\"date\"===t.type?a.dfltRange(t.calendar):\"y\"===p?T.DFLTRANGEY:\"realaxis\"===t._name?[0,1]:r.dfltRange||T.DFLTRANGEX).slice(),\"tozero\"!==t.rangemode&&\"nonnegative\"!==t.rangemode||(i[0]=0),o&&2===o.length){var l=null===o[0],c=null===o[1];for(\"date\"!==t.type||t.autorange||(o[0]=a.cleanDate(o[0],m,t.calendar),o[1]=a.cleanDate(o[1],m,t.calendar)),n=0;n<2;n++)if(\"date\"===t.type){if(!a.isDateTime(o[n],t.calendar)){t[e]=i;break}if(t.r2l(o[0])===t.r2l(o[1])){var u=a.constrain(t.r2l(o[0]),a.MIN_MS+1e3,a.MAX_MS-1e3);o[0]=t.l2r(u-1e3),o[1]=t.l2r(u+1e3);break}}else{if(!s(o[n])){if(l||c||!s(o[1-n])){t[e]=i;break}o[n]=o[1-n]*(n?10:.1)}if(o[n]<-d?o[n]=-d:o[n]>d&&(o[n]=d),o[0]===o[1]){var h=Math.max(1,Math.abs(1e-6*o[0]));o[0]-=h,o[1]+=h}}}else a.nestedProperty(t,e).set(i)},t.setScale=function(r){var n=e._size;if(t.overlaying){var i=w.getFromId({_fullLayout:e},t.overlaying);t.domain=i.domain}var a=r&&t._r?\"_r\":\"range\",o=t.calendar;t.cleanRange(a);var s,l,c=t.r2l(t[a][0],o),u=t.r2l(t[a][1],o),h=\"y\"===p;if(h?(t._offset=n.t+(1-t.domain[1])*n.h,t._length=n.h*(t.domain[1]-t.domain[0]),t._m=t._length/(c-u),t._b=-t._m*u):(t._offset=n.l+t.domain[0]*n.w,t._length=n.w*(t.domain[1]-t.domain[0]),t._m=t._length/(u-c),t._b=-t._m*c),t._rangebreaks=[],t._lBreaks=0,t._m2=0,t._B=[],t.rangebreaks&&(t._rangebreaks=t.locateBreaks(Math.min(c,u),Math.max(c,u)),t._rangebreaks.length)){for(s=0;s<t._rangebreaks.length;s++)l=t._rangebreaks[s],t._lBreaks+=Math.abs(l.max-l.min);var f=h;c>u&&(f=!f),f&&t._rangebreaks.reverse();var d=f?-1:1;for(t._m2=d*t._length/(Math.abs(u-c)-t._lBreaks),t._B.push(-t._m2*(h?u:c)),s=0;s<t._rangebreaks.length;s++)l=t._rangebreaks[s],t._B.push(t._B[t._B.length-1]-d*t._m2*(l.max-l.min));for(s=0;s<t._rangebreaks.length;s++)(l=t._rangebreaks[s]).pmin=B(l.min),l.pmax=B(l.max)}if(!isFinite(t._m)||!isFinite(t._b)||t._length<0)throw e._replotting=!1,new Error(\"Something went wrong with axis scaling\")},t.maskBreaks=function(e){var r,n,i,o,s,c=t.rangebreaks||[];c._cachedPatterns||(c._cachedPatterns=c.map((function(e){return e.enabled&&e.bounds?a.simpleMap(e.bounds,e.pattern?l:t.d2c):null}))),c._cachedValues||(c._cachedValues=c.map((function(e){return e.enabled&&e.values?a.simpleMap(e.values,t.d2c).sort(a.sorterAsc):null})));for(var u=0;u<c.length;u++){var h=c[u];if(h.enabled)if(h.bounds){var f=h.pattern;switch(n=(r=c._cachedPatterns[u])[0],i=r[1],f){case A:o=(s=new Date(e)).getUTCDay(),n>i&&(i+=7,o<n&&(o+=7));break;case k:o=(s=new Date(e)).getUTCHours()+(s.getUTCMinutes()/60+s.getUTCSeconds()/3600+s.getUTCMilliseconds()/36e5),n>i&&(i+=24,o<n&&(o+=24));break;case\"\":o=e}if(o>=n&&o<i)return m}else for(var p=c._cachedValues[u],d=0;d<p.length;d++)if(i=(n=p[d])+h.dvalue,e>=n&&e<i)return m}return e},t.locateBreaks=function(e,r){var n,i,o,s,c=[];if(!t.rangebreaks)return c;var u=t.rangebreaks.slice().sort((function(t,e){return t.pattern===A&&e.pattern===k?-1:e.pattern===A&&t.pattern===k?1:0})),h=function(t,n){if((t=a.constrain(t,e,r))!==(n=a.constrain(n,e,r))){for(var i=!0,o=0;o<c.length;o++){var s=c[o];t<s.max&&n>=s.min&&(t<s.min&&(s.min=t),n>s.max&&(s.max=n),i=!1)}i&&c.push({min:t,max:n})}};for(n=0;n<u.length;n++){var f=u[n];if(f.enabled)if(f.bounds){var p=e,d=r;f.pattern&&(p=Math.floor(p)),o=(i=a.simpleMap(f.bounds,f.pattern?l:t.r2l))[0],s=i[1];var m,g,w=new Date(p);switch(f.pattern){case A:g=y,m=(s-o+(s<o?7:0))*v,p+=o*v-(w.getUTCDay()*v+w.getUTCHours()*x+w.getUTCMinutes()*_+w.getUTCSeconds()*b+w.getUTCMilliseconds());break;case k:g=v,m=(s-o+(s<o?24:0))*x,p+=o*x-(w.getUTCHours()*x+w.getUTCMinutes()*_+w.getUTCSeconds()*b+w.getUTCMilliseconds());break;default:p=Math.min(i[0],i[1]),m=g=(d=Math.max(i[0],i[1]))-p}for(var T=p;T<d;T+=g)h(T,T+m)}else for(var M=a.simpleMap(f.values,t.d2c),S=0;S<M.length;S++)h(o=M[S],s=o+f.dvalue)}return c.sort((function(t,e){return t.min-e.min})),c},t.makeCalcdata=function(e,r,n){var i,o,s,l,c=t.type,u=\"date\"===c&&e[r+\"calendar\"];if(r in e){if(i=e[r],l=e._length||a.minRowLength(i),a.isTypedArray(i)&&(\"linear\"===c||\"log\"===c)){if(l===i.length)return i;if(i.subarray)return i.subarray(0,l)}if(\"multicategory\"===c)return function(t,e){for(var r=new Array(e),n=0;n<e;n++){var i=(t[0]||[])[n],a=(t[1]||[])[n];r[n]=z([i,a])}return r}(i,l);for(o=new Array(l),s=0;s<l;s++)o[s]=t.d2c(i[s],0,u,n)}else{var h=r+\"0\"in e?t.d2c(e[r+\"0\"],0,u):0,f=e[\"d\"+r]?Number(e[\"d\"+r]):1;for(i=e[{x:\"y\",y:\"x\"}[r]],l=e._length||i.length,o=new Array(l),s=0;s<l;s++)o[s]=h+s*f}if(t.rangebreaks)for(s=0;s<l;s++)o[s]=t.maskBreaks(o[s]);return o},t.isValidRange=function(e,r){return Array.isArray(e)&&2===e.length&&(r&&null===e[0]||s(t.r2l(e[0])))&&(r&&null===e[1]||s(t.r2l(e[1])))},t.getAutorangeDflt=function(e,r){var n=!t.isValidRange(e,\"nullOk\");return n&&r&&r.reverseDflt?n=\"reversed\":e&&(null===e[0]&&null===e[1]?n=!0:null===e[0]&&null!==e[1]?n=\"min\":null!==e[0]&&null===e[1]&&(n=\"max\")),n},t.isReversed=function(){var e=t.autorange;return\"reversed\"===e||\"min reversed\"===e||\"max reversed\"===e},t.isPtWithinRange=function(e,r){var n=t.c2l(e[p],null,r),i=t.r2l(t.range[0]),a=t.r2l(t.range[1]);return i<a?i<=n&&n<=a:a<=n&&n<=i},t._emptyCategories=function(){t._categories=[],t._categoriesMap={}},t.clearCalc=function(){var r=t._matchGroup;if(r){var n=null,i=null;for(var a in r){var o=e[w.id2name(a)];if(o._categories){n=o._categories,i=o._categoriesMap;break}}n&&i?(t._categories=n,t._categoriesMap=i):t._emptyCategories()}else t._emptyCategories();if(t._initialCategories)for(var s=0;s<t._initialCategories.length;s++)P(t._initialCategories[s])},t.sortByInitialCategories=function(){var n=[];if(t._emptyCategories(),t._initialCategories)for(var i=0;i<t._initialCategories.length;i++)P(t._initialCategories[i]);n=n.concat(t._traceIndices);var a=t._matchGroup;for(var o in a)if(r!==o){var s=e[w.id2name(o)];s._categories=t._categories,s._categoriesMap=t._categoriesMap,n=n.concat(s._traceIndices)}return n};var U=e._d3locale;\"date\"===t.type&&(t._dateFormat=U?U.timeFormat:i,t._extraFormat=e._extraFormat),t._separators=e.separators,t._numFormat=U?U.numberFormat:o,delete t._minDtick,delete t._forceTick0}},87703:function(t){\"use strict\";t.exports=function(t){var e=[\"showexponent\",\"showtickprefix\",\"showticksuffix\"].filter((function(e){return void 0!==t[e]}));if(e.every((function(r){return t[r]===t[e[0]]}))||1===e.length)return t[e[0]]}},12036:function(t,e,r){\"use strict\";var n=r(34809),i=r(78766).contrast,a=r(25829),o=r(87703),s=r(59008);function l(t,e){function r(r,i){return n.coerce(t,e,a.tickformatstops,r,i)}r(\"enabled\")&&(r(\"dtickrange\"),r(\"value\"))}t.exports=function(t,e,r,c,u){u||(u={});var h=r(\"labelalias\");n.isPlainObject(h)||delete e.labelalias;var f=o(t);if(r(\"showticklabels\")){u.noTicklabelshift||r(\"ticklabelshift\"),u.noTicklabelstandoff||r(\"ticklabelstandoff\");var p=u.font||{},d=e.color,m=-1!==(e.ticklabelposition||\"\").indexOf(\"inside\")?i(u.bgColor):d&&d!==a.color.dflt?d:p.color;if(n.coerceFont(r,\"tickfont\",p,{overrideDflt:{color:m}}),u.noTicklabelstep||\"multicategory\"===c||\"log\"===c||r(\"ticklabelstep\"),!u.noAng){var g=r(\"tickangle\");u.noAutotickangles||\"auto\"!==g||r(\"autotickangles\")}if(\"category\"!==c){var y=r(\"tickformat\");s(t,e,{name:\"tickformatstops\",inclusionAttr:\"enabled\",handleItemDefaults:l}),e.tickformatstops.length||delete e.tickformatstops,u.noExp||y||\"date\"===c||(r(\"showexponent\",f),r(\"exponentformat\"),r(\"minexponent\"),r(\"separatethousands\"))}}}},87433:function(t,e,r){\"use strict\";var n=r(34809),i=r(25829);t.exports=function(t,e,r,a){var o=a.isMinor,s=o?t.minor||{}:t,l=o?e.minor:e,c=o?i.minor:i,u=o?\"minor.\":\"\",h=n.coerce2(s,l,c,\"ticklen\",o?.6*(e.ticklen||5):void 0),f=n.coerce2(s,l,c,\"tickwidth\",o?e.tickwidth||1:void 0),p=n.coerce2(s,l,c,\"tickcolor\",(o?e.tickcolor:void 0)||l.color);r(u+\"ticks\",!o&&a.outerTicks||h||f||p?\"outside\":\"\")||(delete l.ticklen,delete l.tickwidth,delete l.tickcolor)}},22777:function(t,e,r){\"use strict\";var n=r(68599),i=r(34809).isArrayOrTypedArray,a=r(87800).isTypedArraySpec,o=r(87800).decodeTypedArraySpec;t.exports=function(t,e,r,s,l){l||(l={});var c=l.isMinor,u=c?t.minor||{}:t,h=c?e.minor:e,f=c?\"minor.\":\"\";function p(t){var e=u[t];return a(e)&&(e=o(e)),void 0!==e?e:(h._template||{})[t]}var d=p(\"tick0\"),m=p(\"dtick\"),g=p(\"tickvals\"),y=r(f+\"tickmode\",i(g)?\"array\":m?\"linear\":\"auto\");if(\"auto\"===y||\"sync\"===y)r(f+\"nticks\");else if(\"linear\"===y){var v=h.dtick=n.dtick(m,s);h.tick0=n.tick0(d,s,e.calendar,v)}else\"multicategory\"!==s&&(void 0===r(f+\"tickvals\")?h.tickmode=\"auto\":c||r(\"ticktext\"))}},84982:function(t,e,r){\"use strict\";var n=r(45568),i=r(33626),a=r(34809),o=r(62203),s=r(29714);t.exports=function(t,e,r,l){var c=t._fullLayout;if(0!==e.length){var u,h,f,p;l&&(u=l());var d=n.ease(r.easing);return t._transitionData._interruptCallbacks.push((function(){return window.cancelAnimationFrame(p),p=null,function(){for(var r={},n=0;n<e.length;n++){var a=e[n],o=a.plotinfo.xaxis,s=a.plotinfo.yaxis;a.xr0&&(r[o._name+\".range\"]=a.xr0.slice()),a.yr0&&(r[s._name+\".range\"]=a.yr0.slice())}return i.call(\"relayout\",t,r).then((function(){for(var t=0;t<e.length;t++)m(e[t].plotinfo)}))}()})),h=Date.now(),p=window.requestAnimationFrame((function n(){f=Date.now();for(var a=Math.min(1,(f-h)/r.duration),o=d(a),s=0;s<e.length;s++)g(e[s],o);f-h>r.duration?(function(){for(var r={},n=0;n<e.length;n++){var a=e[n],o=a.plotinfo.xaxis,s=a.plotinfo.yaxis;a.xr1&&(r[o._name+\".range\"]=a.xr1.slice()),a.yr1&&(r[s._name+\".range\"]=a.yr1.slice())}u&&u(),i.call(\"relayout\",t,r).then((function(){for(var t=0;t<e.length;t++)m(e[t].plotinfo)}))}(),p=window.cancelAnimationFrame(n)):p=window.requestAnimationFrame(n)})),Promise.resolve()}function m(t){var e=t.xaxis,r=t.yaxis;c._defs.select(\"#\"+t.clipId+\"> rect\").call(o.setTranslate,0,0).call(o.setScale,1,1),t.plot.call(o.setTranslate,e._offset,r._offset).call(o.setScale,1,1);var n=t.plot.selectAll(\".scatterlayer .trace\");n.selectAll(\".point\").call(o.setPointGroupScale,1,1),n.selectAll(\".textpoint\").call(o.setTextPointsScale,1,1),n.call(o.hideOutsideRangePoints,t)}function g(e,r){var n=e.plotinfo,i=n.xaxis,l=n.yaxis,c=i._length,u=l._length,h=!!e.xr1,f=!!e.yr1,p=[];if(h){var d=a.simpleMap(e.xr0,i.r2l),m=a.simpleMap(e.xr1,i.r2l),g=d[1]-d[0],y=m[1]-m[0];p[0]=(d[0]*(1-r)+r*m[0]-d[0])/(d[1]-d[0])*c,p[2]=c*(1-r+r*y/g),i.range[0]=i.l2r(d[0]*(1-r)+r*m[0]),i.range[1]=i.l2r(d[1]*(1-r)+r*m[1])}else p[0]=0,p[2]=c;if(f){var v=a.simpleMap(e.yr0,l.r2l),x=a.simpleMap(e.yr1,l.r2l),_=v[1]-v[0],b=x[1]-x[0];p[1]=(v[1]*(1-r)+r*x[1]-v[1])/(v[0]-v[1])*u,p[3]=u*(1-r+r*b/_),l.range[0]=i.l2r(v[0]*(1-r)+r*x[0]),l.range[1]=l.l2r(v[1]*(1-r)+r*x[1])}else p[1]=0,p[3]=u;s.drawOne(t,i,{skipTitle:!0}),s.drawOne(t,l,{skipTitle:!0}),s.redrawComponents(t,[i._id,l._id]);var w=h?c/p[2]:1,T=f?u/p[3]:1,k=h?p[0]:0,A=f?p[1]:0,M=h?p[0]/p[2]*c:0,S=f?p[1]/p[3]*u:0,E=i._offset-M,C=l._offset-S;n.clipRect.call(o.setTranslate,k,A).call(o.setScale,1/w,1/T),n.plot.call(o.setTranslate,E,C).call(o.setScale,w,T),o.setPointGroupScale(n.zoomScalePts,1/w,1/T),o.setTextPointsScale(n.zoomScaleTxt,1/w,1/T)}s.redrawComponents(t)}},4392:function(t,e,r){\"use strict\";var n=r(33626).traceIs,i=r(9666);function a(t){return{v:\"x\",h:\"y\"}[t.orientation||\"v\"]}function o(t,e){var r=a(t),i=n(t,\"box-violin\"),o=n(t._fullInput||{},\"candlestick\");return i&&!o&&e===r&&void 0===t[r]&&void 0===t[r+\"0\"]}t.exports=function(t,e,r,s){r(\"autotypenumbers\",s.autotypenumbersDflt),\"-\"===r(\"type\",(s.splomStash||{}).type)&&(function(t,e){if(\"-\"===t.type){var r,s=t._id,l=s.charAt(0);-1!==s.indexOf(\"scene\")&&(s=l);var c=function(t,e,r){for(var n=0;n<t.length;n++){var i=t[n];if(\"splom\"===i.type&&i._length>0&&(i[\"_\"+r+\"axes\"]||{})[e])return i;if((i[r+\"axis\"]||r)===e){if(o(i,r))return i;if((i[r]||[]).length||i[r+\"0\"])return i}}}(e,s,l);if(c)if(\"histogram\"!==c.type||l!=={v:\"y\",h:\"x\"}[c.orientation||\"v\"]){var u=l+\"calendar\",h=c[u],f={noMultiCategory:!n(c,\"cartesian\")||n(c,\"noMultiCategory\")};if(\"box\"===c.type&&c._hasPreCompStats&&l==={h:\"x\",v:\"y\"}[c.orientation||\"v\"]&&(f.noMultiCategory=!0),f.autotypenumbers=t.autotypenumbers,o(c,l)){var p=a(c),d=[];for(r=0;r<e.length;r++){var m=e[r];n(m,\"box-violin\")&&(m[l+\"axis\"]||l)===s&&(void 0!==m[p]?d.push(m[p][0]):void 0!==m.name?d.push(m.name):d.push(\"text\"),m[u]!==h&&(h=void 0))}t.type=i(d,h,f)}else if(\"splom\"===c.type){var g=c.dimensions[c._axesDim[s]];g.visible&&(t.type=i(g.values,h,f))}else t.type=i(c[l]||[c[l+\"0\"]],h,f)}else t.type=\"linear\"}}(e,s.data),\"-\"===e.type?e.type=\"linear\":t.type=e.type)}},90251:function(t,e,r){\"use strict\";var n=r(33626),i=r(34809);function a(t,e,r){var n,a,o,s=!1;if(\"data\"===e.type)n=t._fullData[null!==e.traces?e.traces[0]:0];else{if(\"layout\"!==e.type)return!1;n=t._fullLayout}return a=i.nestedProperty(n,e.prop).get(),(o=r[e.type]=r[e.type]||{}).hasOwnProperty(e.prop)&&o[e.prop]!==a&&(s=!0),o[e.prop]=a,{changed:s,value:a}}function o(t,e){var r=[],n=e[0],a={};if(\"string\"==typeof n)a[n]=e[1];else{if(!i.isPlainObject(n))return r;a=n}return l(a,(function(t,e,n){r.push({type:\"layout\",prop:t,value:n})}),\"\",0),r}function s(t,e){var r,n,a,o,s=[];if(n=e[0],a=e[1],r=e[2],o={},\"string\"==typeof n)o[n]=a;else{if(!i.isPlainObject(n))return s;o=n,void 0===r&&(r=a)}return void 0===r&&(r=null),l(o,(function(e,n,i){var a,o;if(Array.isArray(i)){o=i.slice();var l=Math.min(o.length,t.data.length);r&&(l=Math.min(l,r.length)),a=[];for(var c=0;c<l;c++)a[c]=r?r[c]:c}else o=i,a=r?r.slice():null;if(null===a)Array.isArray(o)&&(o=o[0]);else if(Array.isArray(a)){if(!Array.isArray(o)){var u=o;o=[];for(var h=0;h<a.length;h++)o[h]=u}o.length=Math.min(a.length,o.length)}s.push({type:\"data\",prop:e,traces:a,value:o})}),\"\",0),s}function l(t,e,r,n){Object.keys(t).forEach((function(a){var o=t[a];if(\"_\"!==a[0]){var s=r+(n>0?\".\":\"\")+a;i.isPlainObject(o)?l(o,e,s,n+1):e(s,a,o)}}))}e.manageCommandObserver=function(t,r,n,o){var s={},l=!0;r&&r._commandObserver&&(s=r._commandObserver),s.cache||(s.cache={}),s.lookupTable={};var c=e.hasSimpleAPICommandBindings(t,n,s.lookupTable);if(r&&r._commandObserver){if(c)return s;if(r._commandObserver.remove)return r._commandObserver.remove(),r._commandObserver=null,s}if(c){a(t,c,s.cache),s.check=function(){if(l){var e=a(t,c,s.cache);return e.changed&&o&&void 0!==s.lookupTable[e.value]&&(s.disable(),Promise.resolve(o({value:e.value,type:c.type,prop:c.prop,traces:c.traces,index:s.lookupTable[e.value]})).then(s.enable,s.enable)),e.changed}};for(var u=[\"plotly_relayout\",\"plotly_redraw\",\"plotly_restyle\",\"plotly_update\",\"plotly_animatingframe\",\"plotly_afterplot\"],h=0;h<u.length;h++)t._internalOn(u[h],s.check);s.remove=function(){for(var e=0;e<u.length;e++)t._removeInternalListener(u[e],s.check)}}else i.log(\"Unable to automatically bind plot updates to API command\"),s.lookupTable={},s.remove=function(){};return s.disable=function(){l=!1},s.enable=function(){l=!0},r&&(r._commandObserver=s),s},e.hasSimpleAPICommandBindings=function(t,r,n){var i,a,o=r.length;for(i=0;i<o;i++){var s,l=r[i],c=l.method,u=l.args;if(Array.isArray(u)||(u=[]),!c)return!1;var h=e.computeAPICommandBindings(t,c,u);if(1!==h.length)return!1;if(a){if((s=h[0]).type!==a.type)return!1;if(s.prop!==a.prop)return!1;if(Array.isArray(a.traces)){if(!Array.isArray(s.traces))return!1;s.traces.sort();for(var f=0;f<a.traces.length;f++)if(a.traces[f]!==s.traces[f])return!1}else if(s.prop!==a.prop)return!1}else a=h[0],Array.isArray(a.traces)&&a.traces.sort();var p=(s=h[0]).value;if(Array.isArray(p)){if(1!==p.length)return!1;p=p[0]}n&&(n[p]=i)}return a},e.executeAPICommand=function(t,e,r){if(\"skip\"===e)return Promise.resolve();var a=n.apiMethodRegistry[e],o=[t];Array.isArray(r)||(r=[]);for(var s=0;s<r.length;s++)o.push(r[s]);return a.apply(null,o).catch((function(t){return i.warn(\"API call to Plotly.\"+e+\" rejected.\",t),Promise.reject(t)}))},e.computeAPICommandBindings=function(t,e,r){var n;switch(Array.isArray(r)||(r=[]),e){case\"restyle\":n=s(t,r);break;case\"relayout\":n=o(0,r);break;case\"update\":n=s(t,[r[0],r[2]]).concat(o(0,[r[1]]));break;case\"animate\":n=function(t,e){return Array.isArray(e[0])&&1===e[0].length&&-1!==[\"string\",\"number\"].indexOf(typeof e[0][0])?[{type:\"layout\",prop:\"_currentFrame\",value:e[0][0].toString()}]:[]}(0,r);break;default:n=[]}return n}},13792:function(t,e,r){\"use strict\";var n=r(93049).extendFlat;e.u=function(t,e){e=e||{};var r={valType:\"info_array\",editType:(t=t||{}).editType,items:[{valType:\"number\",min:0,max:1,editType:t.editType},{valType:\"number\",min:0,max:1,editType:t.editType}],dflt:[0,1]},i=(t.name&&t.name,t.trace,e.description&&e.description,{x:n({},r,{}),y:n({},r,{}),editType:t.editType});return t.noGridCell||(i.row={valType:\"integer\",min:0,dflt:0,editType:t.editType},i.column={valType:\"integer\",min:0,dflt:0,editType:t.editType}),i},e.N=function(t,e,r,n){var i=n&&n.x||[0,1],a=n&&n.y||[0,1],o=e.grid;if(o){var s=r(\"domain.column\");void 0!==s&&(s<o.columns?i=o._domains.x[s]:delete t.domain.column);var l=r(\"domain.row\");void 0!==l&&(l<o.rows?a=o._domains.y[l]:delete t.domain.row)}var c=r(\"domain.x\",i),u=r(\"domain.y\",a);c[0]<c[1]||(t.domain.x=i.slice()),u[0]<u[1]||(t.domain.y=a.slice())}},80337:function(t){\"use strict\";t.exports=function(t){var e=t.variantValues,r=t.editType,n=t.colorEditType;void 0===n&&(n=r);var i={editType:r,valType:\"integer\",min:1,max:1e3,extras:[\"normal\",\"bold\"],dflt:\"normal\"};t.noNumericWeightValues&&(i.valType=\"enumerated\",i.values=i.extras,i.extras=void 0,i.min=void 0,i.max=void 0);var a={family:{valType:\"string\",noBlank:!0,strict:!0,editType:r},size:{valType:\"number\",min:1,editType:r},color:{valType:\"color\",editType:n},weight:i,style:{editType:r,valType:\"enumerated\",values:[\"normal\",\"italic\"],dflt:\"normal\"},variant:t.noFontVariant?void 0:{editType:r,valType:\"enumerated\",values:e||[\"normal\",\"small-caps\",\"all-small-caps\",\"all-petite-caps\",\"petite-caps\",\"unicase\"],dflt:\"normal\"},textcase:t.noFontTextcase?void 0:{editType:r,valType:\"enumerated\",values:[\"normal\",\"word caps\",\"upper\",\"lower\"],dflt:\"normal\"},lineposition:t.noFontLineposition?void 0:{editType:r,valType:\"flaglist\",flags:[\"under\",\"over\",\"through\"],extras:[\"none\"],dflt:\"none\"},shadow:t.noFontShadow?void 0:{editType:r,valType:\"string\",dflt:t.autoShadowDflt?\"auto\":\"none\"},editType:r};return t.autoSize&&(a.size.dflt=\"auto\"),t.autoColor&&(a.color.dflt=\"auto\"),t.arrayOk&&(a.family.arrayOk=!0,a.weight.arrayOk=!0,a.style.arrayOk=!0,t.noFontVariant||(a.variant.arrayOk=!0),t.noFontTextcase||(a.textcase.arrayOk=!0),t.noFontLineposition||(a.lineposition.arrayOk=!0),t.noFontShadow||(a.shadow.arrayOk=!0),a.size.arrayOk=!0,a.color.arrayOk=!0),a}},58935:function(t){\"use strict\";t.exports={_isLinkedToArray:\"frames_entry\",group:{valType:\"string\"},name:{valType:\"string\"},traces:{valType:\"any\"},baseframe:{valType:\"string\"},data:{valType:\"any\"},layout:{valType:\"any\"}}},74285:function(t,e){\"use strict\";e.projNames={airy:\"airy\",aitoff:\"aitoff\",\"albers usa\":\"albersUsa\",albers:\"albers\",august:\"august\",\"azimuthal equal area\":\"azimuthalEqualArea\",\"azimuthal equidistant\":\"azimuthalEquidistant\",baker:\"baker\",bertin1953:\"bertin1953\",boggs:\"boggs\",bonne:\"bonne\",bottomley:\"bottomley\",bromley:\"bromley\",collignon:\"collignon\",\"conic conformal\":\"conicConformal\",\"conic equal area\":\"conicEqualArea\",\"conic equidistant\":\"conicEquidistant\",craig:\"craig\",craster:\"craster\",\"cylindrical equal area\":\"cylindricalEqualArea\",\"cylindrical stereographic\":\"cylindricalStereographic\",eckert1:\"eckert1\",eckert2:\"eckert2\",eckert3:\"eckert3\",eckert4:\"eckert4\",eckert5:\"eckert5\",eckert6:\"eckert6\",eisenlohr:\"eisenlohr\",\"equal earth\":\"equalEarth\",equirectangular:\"equirectangular\",fahey:\"fahey\",\"foucaut sinusoidal\":\"foucautSinusoidal\",foucaut:\"foucaut\",ginzburg4:\"ginzburg4\",ginzburg5:\"ginzburg5\",ginzburg6:\"ginzburg6\",ginzburg8:\"ginzburg8\",ginzburg9:\"ginzburg9\",gnomonic:\"gnomonic\",\"gringorten quincuncial\":\"gringortenQuincuncial\",gringorten:\"gringorten\",guyou:\"guyou\",hammer:\"hammer\",hill:\"hill\",homolosine:\"homolosine\",hufnagel:\"hufnagel\",hyperelliptical:\"hyperelliptical\",kavrayskiy7:\"kavrayskiy7\",lagrange:\"lagrange\",larrivee:\"larrivee\",laskowski:\"laskowski\",loximuthal:\"loximuthal\",mercator:\"mercator\",miller:\"miller\",mollweide:\"mollweide\",\"mt flat polar parabolic\":\"mtFlatPolarParabolic\",\"mt flat polar quartic\":\"mtFlatPolarQuartic\",\"mt flat polar sinusoidal\":\"mtFlatPolarSinusoidal\",\"natural earth\":\"naturalEarth\",\"natural earth1\":\"naturalEarth1\",\"natural earth2\":\"naturalEarth2\",\"nell hammer\":\"nellHammer\",nicolosi:\"nicolosi\",orthographic:\"orthographic\",patterson:\"patterson\",\"peirce quincuncial\":\"peirceQuincuncial\",polyconic:\"polyconic\",\"rectangular polyconic\":\"rectangularPolyconic\",robinson:\"robinson\",satellite:\"satellite\",\"sinu mollweide\":\"sinuMollweide\",sinusoidal:\"sinusoidal\",stereographic:\"stereographic\",times:\"times\",\"transverse mercator\":\"transverseMercator\",\"van der grinten\":\"vanDerGrinten\",\"van der grinten2\":\"vanDerGrinten2\",\"van der grinten3\":\"vanDerGrinten3\",\"van der grinten4\":\"vanDerGrinten4\",wagner4:\"wagner4\",wagner6:\"wagner6\",wiechel:\"wiechel\",\"winkel tripel\":\"winkel3\",winkel3:\"winkel3\"},e.axesNames=[\"lonaxis\",\"lataxis\"],e.lonaxisSpan={orthographic:180,\"azimuthal equal area\":360,\"azimuthal equidistant\":360,\"conic conformal\":180,gnomonic:160,stereographic:180,\"transverse mercator\":180,\"*\":360},e.lataxisSpan={\"conic conformal\":150,stereographic:179.5,\"*\":180},e.scopeDefaults={world:{lonaxisRange:[-180,180],lataxisRange:[-90,90],projType:\"equirectangular\",projRotate:[0,0,0]},usa:{lonaxisRange:[-180,-50],lataxisRange:[15,80],projType:\"albers usa\"},europe:{lonaxisRange:[-30,60],lataxisRange:[30,85],projType:\"conic conformal\",projRotate:[15,0,0],projParallels:[0,60]},asia:{lonaxisRange:[22,160],lataxisRange:[-15,55],projType:\"mercator\",projRotate:[0,0,0]},africa:{lonaxisRange:[-30,60],lataxisRange:[-40,40],projType:\"mercator\",projRotate:[0,0,0]},\"north america\":{lonaxisRange:[-180,-45],lataxisRange:[5,85],projType:\"conic conformal\",projRotate:[-100,0,0],projParallels:[29.5,45.5]},\"south america\":{lonaxisRange:[-100,-30],lataxisRange:[-60,15],projType:\"mercator\",projRotate:[0,0,0]}},e.clipPad=.001,e.precision=.1,e.landColor=\"#F0DC82\",e.waterColor=\"#3399FF\",e.locationmodeToLayer={\"ISO-3\":\"countries\",\"USA-states\":\"subunits\",\"country names\":\"countries\"},e.sphereSVG={type:\"Sphere\"},e.fillLayers={ocean:1,land:1,lakes:1},e.lineLayers={subunits:1,countries:1,coastlines:1,rivers:1,frame:1},e.layers=[\"bg\",\"ocean\",\"land\",\"lakes\",\"subunits\",\"countries\",\"coastlines\",\"rivers\",\"lataxis\",\"lonaxis\",\"frame\",\"backplot\",\"frontplot\"],e.layersForChoropleth=[\"bg\",\"ocean\",\"land\",\"subunits\",\"countries\",\"coastlines\",\"lataxis\",\"lonaxis\",\"frame\",\"backplot\",\"rivers\",\"lakes\",\"frontplot\"],e.layerNameToAdjective={ocean:\"ocean\",land:\"land\",lakes:\"lake\",subunits:\"subunit\",countries:\"country\",coastlines:\"coastline\",rivers:\"river\",frame:\"frame\"}},6493:function(t,e,r){\"use strict\";var n=r(45568),i=r(70884),a=i.geoPath,o=i.geoDistance,s=r(75987),l=r(33626),c=r(34809),u=c.strTranslate,h=r(78766),f=r(62203),p=r(32141),d=r(44122),m=r(29714),g=r(32919).getAutoRange,y=r(14751),v=r(44844).prepSelect,x=r(44844).clearOutline,_=r(44844).selectOnClick,b=r(14309),w=r(74285),T=r(3994),k=r(11577),A=r(48640).N4;function M(t){this.id=t.id,this.graphDiv=t.graphDiv,this.container=t.container,this.topojsonURL=t.topojsonURL,this.isStatic=t.staticPlot,this.topojsonName=null,this.topojson=null,this.projection=null,this.scope=null,this.viewInitial=null,this.fitScale=null,this.bounds=null,this.midPt=null,this.hasChoropleth=!1,this.traceHash={},this.layers={},this.basePaths={},this.dataPaths={},this.dataPoints={},this.clipDef=null,this.clipRect=null,this.bgRect=null,this.makeFramework()}var S=M.prototype;function E(t,e){var r=w.clipPad,n=t[0]+r,i=t[1]-r,a=e[0]+r,o=e[1]-r;n>0&&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]]]}}t.exports=function(t){return new M(t)},S.plot=function(t,e,r,n){var i=this;if(n)return i.update(t,e,!0);i._geoCalcData=t,i._fullLayout=e;var a=e[this.id],o=[],s=!1;for(var l in w.layerNameToAdjective)if(\"frame\"!==l&&a[\"show\"+l]){s=!0;break}for(var c=!1,u=0;u<t.length;u++){var h=t[0][0].trace;h._geo=i,h.locationmode&&(s=!0);var f=h.marker;if(f){var p=f.angle,d=f.angleref;(p||\"north\"===d||\"previous\"===d)&&(c=!0)}}if(this._hasMarkerAngles=c,s){var m=k.getTopojsonName(a);null!==i.topojson&&m===i.topojsonName||(i.topojsonName=m,void 0===PlotlyGeoAssets.topojson[i.topojsonName]&&o.push(i.fetchTopojson()))}o=o.concat(T.fetchTraceGeoData(t)),r.push(new Promise((function(r,n){Promise.all(o).then((function(){i.topojson=PlotlyGeoAssets.topojson[i.topojsonName],i.update(t,e),r()})).catch(n)})))},S.fetchTopojson=function(){var t=this,e=k.getTopojsonPath(t.topojsonURL,t.topojsonName);return new Promise((function(r,i){n.json(e,(function(n,a){if(n)return 404===n.status?i(new Error([\"plotly.js could not find topojson file at\",e+\".\",\"Make sure the *topojsonURL* plot config option\",\"is set properly.\"].join(\" \"))):i(new Error([\"unexpected error while fetching topojson file at\",e].join(\" \")));PlotlyGeoAssets.topojson[t.topojsonName]=a,r()}))}))},S.update=function(t,e,r){var n=e[this.id];this.hasChoropleth=!1;for(var i=0;i<t.length;i++){var a=t[i],o=a[0].trace;\"choropleth\"===o.type&&(this.hasChoropleth=!0),!0===o.visible&&o._length>0&&o._module.calcGeoJSON(a,e)}if(!r){if(this.updateProjection(t,e))return;this.viewInitial&&this.scope===n.scope||this.saveViewInitial(n)}this.scope=n.scope,this.updateBaseLayers(e,n),this.updateDims(e,n),this.updateFx(e,n),d.generalUpdatePerTraceModule(this.graphDiv,this,t,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(t,e){var r=this.graphDiv,n=e[this.id],l=e._size,u=n.domain,h=n.projection,f=n.lonaxis,p=n.lataxis,d=f._ax,m=p._ax,y=this.projection=function(t){var e=t.projection,r=e.type,n=w.projNames[r];n=\"geo\"+c.titleCase(n);for(var l=(i[n]||s[n])(),u=t._isSatellite?180*Math.acos(1/e.distance)/Math.PI:t._isClipped?w.lonaxisSpan[r]/2:null,h=[\"center\",\"rotate\",\"parallels\",\"clipExtent\"],f=function(t){return t?l:[]},p=0;p<h.length;p++){var d=h[p];\"function\"!=typeof l[d]&&(l[d]=f)}return l.isLonLatOverEdges=function(t){if(null===l(t))return!0;if(u){var e=l.rotate();return o(t,[-e[0],-e[1]])>u*Math.PI/180}return!1},l.getPath=function(){return a().projection(l)},l.getBounds=function(t){return l.getPath().bounds(t)},l.precision(w.precision),t._isSatellite&&l.tilt(e.tilt).distance(e.distance),u&&l.clipAngle(u-w.clipPad),l}(n),v=[[l.l+l.w*u.x[0],l.t+l.h*(1-u.y[1])],[l.l+l.w*u.x[1],l.t+l.h*(1-u.y[0])]],x=n.center||{},_=h.rotation||{},b=f.range||[],T=p.range||[];if(n.fitbounds){d._length=v[1][0]-v[0][0],m._length=v[1][1]-v[0][1],d.range=g(r,d),m.range=g(r,m);var k=(d.range[0]+d.range[1])/2,A=(m.range[0]+m.range[1])/2;if(n._isScoped)x={lon:k,lat:A};else if(n._isClipped){x={lon:k,lat:A},_={lon:k,lat:A,roll:_.roll};var M=h.type,S=w.lonaxisSpan[M]/2||180,C=w.lataxisSpan[M]/2||90;b=[k-S,k+S],T=[A-C,A+C]}else x={lon:k,lat:A},_={lon:k,lat:_.lat,roll:_.roll}}y.center([x.lon-_.lon,x.lat-_.lat]).rotate([-_.lon,-_.lat,_.roll]).parallels(h.parallels);var L=E(b,T);y.fitExtent(v,L);var I=this.bounds=y.getBounds(L),P=this.fitScale=y.scale(),z=y.translate();if(n.fitbounds){var O=y.getBounds(E(d.range,m.range)),D=Math.min((I[1][0]-I[0][0])/(O[1][0]-O[0][0]),(I[1][1]-I[0][1])/(O[1][1]-O[0][1]));isFinite(D)?y.scale(D*P):c.warn(\"Something went wrong during\"+this.id+\"fitbounds computations.\")}else y.scale(h.scale*P);var R=this.midPt=[(I[0][0]+I[1][0])/2,(I[0][1]+I[1][1])/2];if(y.translate([z[0]+(R[0]-z[0]),z[1]+(R[1]-z[1])]).clipExtent(I),n._isAlbersUsa){var F=y([x.lon,x.lat]),B=y.translate();y.translate([B[0]-(F[0]-B[0]),B[1]-(F[1]-B[1])])}},S.updateBaseLayers=function(t,e){var r=this,i=r.topojson,a=r.layers,o=r.basePaths;function s(t){return\"lonaxis\"===t||\"lataxis\"===t}function l(t){return Boolean(w.lineLayers[t])}function c(t){return Boolean(w.fillLayers[t])}var u=(this.hasChoropleth?w.layersForChoropleth:w.layers).filter((function(t){return l(t)||c(t)?e[\"show\"+t]:!s(t)||e[t].showgrid})),p=r.framework.selectAll(\".layer\").data(u,String);p.exit().each((function(t){delete a[t],delete o[t],n.select(this).remove()})),p.enter().append(\"g\").attr(\"class\",(function(t){return\"layer \"+t})).each((function(t){var e=a[t]=n.select(this);\"bg\"===t?r.bgRect=e.append(\"rect\").style(\"pointer-events\",\"all\"):s(t)?o[t]=e.append(\"path\").style(\"fill\",\"none\"):\"backplot\"===t?e.append(\"g\").classed(\"choroplethlayer\",!0):\"frontplot\"===t?e.append(\"g\").classed(\"scatterlayer\",!0):l(t)?o[t]=e.append(\"path\").style(\"fill\",\"none\").style(\"stroke-miterlimit\",2):c(t)&&(o[t]=e.append(\"path\").style(\"stroke\",\"none\"))})),p.order(),p.each((function(r){var n=o[r],a=w.layerNameToAdjective[r];\"frame\"===r?n.datum(w.sphereSVG):l(r)||c(r)?n.datum(A(i,i.objects[r])):s(r)&&n.datum(function(t,e,r){var n,i,a,o=e[t],s=w.scopeDefaults[e.scope];\"lonaxis\"===t?(n=s.lonaxisRange,i=s.lataxisRange,a=function(t,e){return[t,e]}):\"lataxis\"===t&&(n=s.lataxisRange,i=s.lonaxisRange,a=function(t,e){return[e,t]});var l={type:\"linear\",range:[n[0],n[1]-1e-6],tick0:o.tick0,dtick:o.dtick};m.setConvert(l,r);var c=m.calcTicks(l);e.isScoped||\"lonaxis\"!==t||c.pop();for(var u=c.length,h=new Array(u),f=0;f<u;f++)for(var p=c[f].x,d=h[f]=[],g=i[0];g<i[1]+2.5;g+=2.5)d.push(a(p,g));return{type:\"MultiLineString\",coordinates:h}}(r,e,t)).call(h.stroke,e[r].gridcolor).call(f.dashLine,e[r].griddash,e[r].gridwidth),l(r)?n.call(h.stroke,e[a+\"color\"]).call(f.dashLine,\"\",e[a+\"width\"]):c(r)&&n.call(h.fill,e[a+\"color\"])}))},S.updateDims=function(t,e){var r=this.bounds,n=(e.framewidth||0)/2,i=r[0][0]-n,a=r[0][1]-n,o=r[1][0]-i+n,s=r[1][1]-a+n;f.setRect(this.clipRect,i,a,o,s),this.bgRect.call(f.setRect,i,a,o,s).call(h.fill,e.bgcolor),this.xaxis._offset=i,this.xaxis._length=o,this.yaxis._offset=a,this.yaxis._length=s},S.updateFx=function(t,e){var r=this,i=r.graphDiv,a=r.bgRect,o=t.dragmode,s=t.clickmode;if(!r.isStatic){var u={element:r.bgRect.node(),gd:i,plotinfo:{id:r.id,xaxis:r.xaxis,yaxis:r.yaxis,fillRangeItems:function(t,e){e.isRect?(t.range={})[r.id]=[h([e.xmin,e.ymin]),h([e.xmax,e.ymax])]:(t.lassoPoints={})[r.id]=e.map(h)}},xaxes:[r.xaxis],yaxes:[r.yaxis],subplot:r.id,clickFn:function(t){2===t&&x(i)}};\"pan\"===o?(a.node().onmousedown=null,a.call(b(r,e)),a.on(\"dblclick.zoom\",(function(){var t=r.viewInitial,e={};for(var n in t)e[r.id+\".\"+n]=t[n];l.call(\"_guiRelayout\",i,e),i.emit(\"plotly_doubleclick\",null)})),i._context._scrollZoom.geo||a.on(\"wheel.zoom\",null)):\"select\"!==o&&\"lasso\"!==o||(a.on(\".zoom\",null),u.prepFn=function(t,e,r){v(t,e,r,u,o)},y.init(u)),a.on(\"mousemove\",(function(){var t=r.projection.invert(c.getPositionFromD3Event());if(!t)return y.unhover(i,n.event);r.xaxis.p2c=function(){return t[0]},r.yaxis.p2c=function(){return t[1]},p.hover(i,n.event,r.id)})),a.on(\"mouseout\",(function(){i._dragging||y.unhover(i,n.event)})),a.on(\"click\",(function(){\"select\"!==o&&\"lasso\"!==o&&(s.indexOf(\"select\")>-1&&_(n.event,i,[r.xaxis],[r.yaxis],r.id,u),s.indexOf(\"event\")>-1&&p.click(i,n.event))}))}function h(t){return r.projection.invert([t[0]+r.xaxis._offset,t[1]+r.yaxis._offset])}},S.makeFramework=function(){var t=this,e=t.graphDiv,r=e._fullLayout,i=\"clip\"+r._uid+t.id;t.clipDef=r._clips.append(\"clipPath\").attr(\"id\",i),t.clipRect=t.clipDef.append(\"rect\"),t.framework=n.select(t.container).append(\"g\").attr(\"class\",\"geo \"+t.id).call(f.setClipUrl,i,e),t.project=function(e){var r=t.projection(e);return r?[r[0]-t.xaxis._offset,r[1]-t.yaxis._offset]:[null,null]},t.xaxis={_id:\"x\",c2p:function(e){return t.project(e)[0]}},t.yaxis={_id:\"y\",c2p:function(e){return t.project(e)[1]}},t.mockAxis={type:\"linear\",showexponent:\"all\",exponentformat:\"B\"},m.setConvert(t.mockAxis,r)},S.saveViewInitial=function(t){var e,r=t.center||{},n=t.projection,i=n.rotation||{};this.viewInitial={fitbounds:t.fitbounds,\"projection.scale\":n.scale},e=t._isScoped?{\"center.lon\":r.lon,\"center.lat\":r.lat}:t._isClipped?{\"projection.rotation.lon\":i.lon,\"projection.rotation.lat\":i.lat}:{\"center.lon\":r.lon,\"center.lat\":r.lat,\"projection.rotation.lon\":i.lon},c.extendFlat(this.viewInitial,e)},S.render=function(t){this._hasMarkerAngles&&t?this.plot(this._geoCalcData,this._fullLayout,[],!0):this._render()},S._render=function(){var t,e=this.projection,r=e.getPath();function n(t){var r=e(t.lonlat);return r?u(r[0],r[1]):null}function i(t){return e.isLonLatOverEdges(t.lonlat)?\"none\":null}for(t in this.basePaths)this.basePaths[t].attr(\"d\",r);for(t in this.dataPaths)this.dataPaths[t].attr(\"d\",(function(t){return r(t.geojson)}));for(t in this.dataPoints)this.dataPoints[t].attr(\"display\",i).attr(\"transform\",n)}},47544:function(t,e,r){\"use strict\";var n=r(4173).fX,i=r(34809).counterRegex,a=r(6493),o=\"geo\",s=i(o),l={};l[o]={valType:\"subplotid\",dflt:o,editType:\"calc\"},t.exports={attr:o,name:o,idRoot:o,idRegex:s,attrRegex:s,attributes:l,layoutAttributes:r(42194),supplyLayoutDefaults:r(31653),plot:function(t){for(var e=t._fullLayout,r=t.calcdata,i=e._subplots[o],s=0;s<i.length;s++){var l=i[s],c=n(r,o,l),u=e[l]._subplot;u||(u=a({id:l,graphDiv:t,container:e._geolayer.node(),topojsonURL:t._context.topojsonURL,staticPlot:t._context.staticPlot}),e[l]._subplot=u),u.plot(c,e,t._promises)}},updateFx:function(t){for(var e=t._fullLayout,r=e._subplots[o],n=0;n<r.length;n++){var i=e[r[n]];i._subplot.updateFx(e,i)}},clean:function(t,e,r,n){for(var i=n._subplots[o]||[],a=0;a<i.length;a++){var s=i[a],l=n[s]._subplot;!e[s]&&l&&(l.framework.remove(),l.clipDef.remove())}}}},42194:function(t,e,r){\"use strict\";var n=r(10229),i=r(13792).u,a=r(94850).T,o=r(74285),s=r(13582).overrideAll,l=r(62994),c={range:{valType:\"info_array\",items:[{valType:\"number\"},{valType:\"number\"}]},showgrid:{valType:\"boolean\",dflt:!1},tick0:{valType:\"number\",dflt:0},dtick:{valType:\"number\"},gridcolor:{valType:\"color\",dflt:n.lightLine},gridwidth:{valType:\"number\",min:0,dflt:1},griddash:a};(t.exports=s({domain:i({name:\"geo\"},{}),fitbounds:{valType:\"enumerated\",values:[!1,\"locations\",\"geojson\"],dflt:!1,editType:\"plot\"},resolution:{valType:\"enumerated\",values:[110,50],dflt:110,coerceNumber:!0},scope:{valType:\"enumerated\",values:l(o.scopeDefaults),dflt:\"world\"},projection:{type:{valType:\"enumerated\",values:l(o.projNames)},rotation:{lon:{valType:\"number\"},lat:{valType:\"number\"},roll:{valType:\"number\"}},tilt:{valType:\"number\",dflt:0},distance:{valType:\"number\",min:1.001,dflt:2},parallels:{valType:\"info_array\",items:[{valType:\"number\"},{valType:\"number\"}]},scale:{valType:\"number\",min:0,dflt:1}},center:{lon:{valType:\"number\"},lat:{valType:\"number\"}},visible:{valType:\"boolean\",dflt:!0},showcoastlines:{valType:\"boolean\"},coastlinecolor:{valType:\"color\",dflt:n.defaultLine},coastlinewidth:{valType:\"number\",min:0,dflt:1},showland:{valType:\"boolean\",dflt:!1},landcolor:{valType:\"color\",dflt:o.landColor},showocean:{valType:\"boolean\",dflt:!1},oceancolor:{valType:\"color\",dflt:o.waterColor},showlakes:{valType:\"boolean\",dflt:!1},lakecolor:{valType:\"color\",dflt:o.waterColor},showrivers:{valType:\"boolean\",dflt:!1},rivercolor:{valType:\"color\",dflt:o.waterColor},riverwidth:{valType:\"number\",min:0,dflt:1},showcountries:{valType:\"boolean\"},countrycolor:{valType:\"color\",dflt:n.defaultLine},countrywidth:{valType:\"number\",min:0,dflt:1},showsubunits:{valType:\"boolean\"},subunitcolor:{valType:\"color\",dflt:n.defaultLine},subunitwidth:{valType:\"number\",min:0,dflt:1},showframe:{valType:\"boolean\"},framecolor:{valType:\"color\",dflt:n.defaultLine},framewidth:{valType:\"number\",min:0,dflt:1},bgcolor:{valType:\"color\",dflt:n.background},lonaxis:c,lataxis:c},\"plot\",\"from-root\")).uirevision={valType:\"any\",editType:\"none\"}},31653:function(t,e,r){\"use strict\";var n=r(34809),i=r(4448),a=r(4173).KO,o=r(74285),s=r(42194),l=o.axesNames;function c(t,e,r,i){var s=a(i.fullData,\"geo\",i.id).map((function(t){return t._expandedIndex})),c=r(\"resolution\"),u=r(\"scope\"),h=o.scopeDefaults[u],f=r(\"projection.type\",h.projType),p=e._isAlbersUsa=\"albers usa\"===f;p&&(u=e.scope=\"usa\");var d=e._isScoped=\"world\"!==u,m=e._isSatellite=\"satellite\"===f,g=e._isConic=-1!==f.indexOf(\"conic\")||\"albers\"===f,y=e._isClipped=!!o.lonaxisSpan[f];if(!1===t.visible){var v=n.extendDeep({},e._template);v.showcoastlines=!1,v.showcountries=!1,v.showframe=!1,v.showlakes=!1,v.showland=!1,v.showocean=!1,v.showrivers=!1,v.showsubunits=!1,v.lonaxis&&(v.lonaxis.showgrid=!1),v.lataxis&&(v.lataxis.showgrid=!1),e._template=v}for(var x=r(\"visible\"),_=0;_<l.length;_++){var b,w=l[_],T=[30,10][_];if(d)b=h[w+\"Range\"];else{var k=o[w+\"Span\"],A=(k[f]||k[\"*\"])/2,M=r(\"projection.rotation.\"+w.substr(0,3),h.projRotate[_]);b=[M-A,M+A]}var S=r(w+\".range\",b);r(w+\".tick0\"),r(w+\".dtick\",T),r(w+\".showgrid\",!!x&&void 0)&&(r(w+\".gridcolor\"),r(w+\".gridwidth\"),r(w+\".griddash\")),e[w]._ax={type:\"linear\",_id:w.slice(0,3),_traceIndices:s,setScale:n.identity,c2l:n.identity,r2l:n.identity,autorange:!0,range:S.slice(),_m:1,_input:{}}}var E=e.lonaxis.range,C=e.lataxis.range,L=E[0],I=E[1];L>0&&I<0&&(I+=360);var P,z,O,D=(L+I)/2;if(!p){var R=d?h.projRotate:[D,0,0];P=r(\"projection.rotation.lon\",R[0]),r(\"projection.rotation.lat\",R[1]),r(\"projection.rotation.roll\",R[2]),r(\"showcoastlines\",!d&&x)&&(r(\"coastlinecolor\"),r(\"coastlinewidth\")),r(\"showocean\",!!x&&void 0)&&r(\"oceancolor\")}p?(z=-96.6,O=38.7):(z=d?D:P,O=(C[0]+C[1])/2),r(\"center.lon\",z),r(\"center.lat\",O),m&&(r(\"projection.tilt\"),r(\"projection.distance\")),g&&r(\"projection.parallels\",h.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\",d&&\"usa\"!==u&&x)&&(r(\"countrycolor\"),r(\"countrywidth\")),(\"usa\"===u||\"north america\"===u&&50===c)&&(r(\"showsubunits\",x),r(\"subunitcolor\"),r(\"subunitwidth\")),d||r(\"showframe\",x)&&(r(\"framecolor\"),r(\"framewidth\")),r(\"bgcolor\"),r(\"fitbounds\")&&(delete e.projection.scale,d?(delete e.center.lon,delete e.center.lat):y?(delete e.center.lon,delete e.center.lat,delete e.projection.rotation.lon,delete e.projection.rotation.lat,delete e.lonaxis.range,delete e.lataxis.range):(delete e.center.lon,delete e.center.lat,delete e.projection.rotation.lon))}t.exports=function(t,e,r){i(t,e,r,{type:\"geo\",attributes:s,handleDefaults:c,fullData:r,partition:\"y\"})}},14309:function(t,e,r){\"use strict\";var n=r(45568),i=r(34809),a=r(33626),o=Math.PI/180,s=180/Math.PI,l={cursor:\"pointer\"},c={cursor:\"auto\"};function u(t,e){return n.behavior.zoom().translate(e.translate()).scale(e.scale())}function h(t,e,r){var n=t.id,o=t.graphDiv,s=o.layout,l=s[n],c=o._fullLayout,u=c[n],h={},f={};function p(t,e){h[n+\".\"+t]=i.nestedProperty(l,t).get(),a.call(\"_storeDirectGUIEdit\",s,c._preGUI,h);var r=i.nestedProperty(u,t);r.get()!==e&&(r.set(e),i.nestedProperty(l,t).set(e),f[n+\".\"+t]=e)}r(p),p(\"projection.scale\",e.scale()/t.fitScale),p(\"fitbounds\",!1),o.emit(\"plotly_relayout\",f)}function f(t,e){var r=u(0,e);function i(r){var n=e.invert(t.midPt);r(\"center.lon\",n[0]),r(\"center.lat\",n[1])}return r.on(\"zoomstart\",(function(){n.select(this).style(l)})).on(\"zoom\",(function(){e.scale(n.event.scale).translate(n.event.translate),t.render(!0);var r=e.invert(t.midPt);t.graphDiv.emit(\"plotly_relayouting\",{\"geo.projection.scale\":e.scale()/t.fitScale,\"geo.center.lon\":r[0],\"geo.center.lat\":r[1]})})).on(\"zoomend\",(function(){n.select(this).style(c),h(t,e,i)})),r}function p(t,e){var r,i,a,o,s,f,p,d,m,g=u(0,e);function y(t){return e.invert(t)}function v(r){var n=e.rotate(),i=e.invert(t.midPt);r(\"projection.rotation.lon\",-n[0]),r(\"center.lon\",i[0]),r(\"center.lat\",i[1])}return g.on(\"zoomstart\",(function(){n.select(this).style(l),r=n.mouse(this),i=e.rotate(),a=e.translate(),o=i,s=y(r)})).on(\"zoom\",(function(){if(f=n.mouse(this),function(t){var r=y(t);if(!r)return!0;var n=e(r);return Math.abs(n[0]-t[0])>2||Math.abs(n[1]-t[1])>2}(r))return g.scale(e.scale()),void g.translate(e.translate());e.scale(n.event.scale),e.translate([a[0],n.event.translate[1]]),s?y(f)&&(d=y(f),p=[o[0]+(d[0]-s[0]),i[1],i[2]],e.rotate(p),o=p):s=y(r=f),m=!0,t.render(!0);var l=e.rotate(),c=e.invert(t.midPt);t.graphDiv.emit(\"plotly_relayouting\",{\"geo.projection.scale\":e.scale()/t.fitScale,\"geo.center.lon\":c[0],\"geo.center.lat\":c[1],\"geo.projection.rotation.lon\":-l[0]})})).on(\"zoomend\",(function(){n.select(this).style(c),m&&h(t,e,v)})),g}function d(t,e){var r,i={r:e.rotate(),k:e.scale()},a=u(0,e),f=function(t){for(var e=0,r=arguments.length,i=[];++e<r;)i.push(arguments[e]);var a=n.dispatch.apply(null,i);return a.of=function(e,r){return function(i){var o;try{o=i.sourceEvent=n.event,i.target=t,n.event=i,a[i.type].apply(e,r)}finally{n.event=o}}},a}(a,\"zoomstart\",\"zoom\",\"zoomend\"),p=0,d=a.on;function y(t){var r=e.rotate();t(\"projection.rotation.lon\",-r[0]),t(\"projection.rotation.lat\",-r[1])}return a.on(\"zoomstart\",(function(){n.select(this).style(l);var t,c,u,h,y,_,b,w,T,k,A,M=n.mouse(this),S=e.rotate(),E=S,C=e.translate(),L=(c=.5*(t=S)[0]*o,u=.5*t[1]*o,h=.5*t[2]*o,y=Math.sin(c),_=Math.cos(c),b=Math.sin(u),w=Math.cos(u),T=Math.sin(h),[_*w*(k=Math.cos(h))+y*b*T,y*w*k-_*b*T,_*b*k+y*w*T,_*w*T-y*b*k]);r=m(e,M),d.call(a,\"zoom\",(function(){var t,a,o,l,c,u,h,p,d,y,_=n.mouse(this);if(e.scale(i.k=n.event.scale),r){if(m(e,_)){e.rotate(S).translate(C);var b=m(e,_),w=function(t,e){if(t&&e){var r=function(t,e){return[t[1]*e[2]-t[2]*e[1],t[2]*e[0]-t[0]*e[2],t[0]*e[1]-t[1]*e[0]]}(t,e),n=Math.sqrt(x(r,r)),i=.5*Math.acos(Math.max(-1,Math.min(1,x(t,e)))),a=Math.sin(i)/n;return n&&[Math.cos(i),r[2]*a,-r[1]*a,r[0]*a]}}(r,b),T=function(t){return[Math.atan2(2*(t[0]*t[1]+t[2]*t[3]),1-2*(t[1]*t[1]+t[2]*t[2]))*s,Math.asin(Math.max(-1,Math.min(1,2*(t[0]*t[2]-t[3]*t[1]))))*s,Math.atan2(2*(t[0]*t[3]+t[1]*t[2]),1-2*(t[2]*t[2]+t[3]*t[3]))*s]}((o=(t=L)[0],l=t[1],c=t[2],u=t[3],[o*(h=(a=w)[0])-l*(p=a[1])-c*(d=a[2])-u*(y=a[3]),o*p+l*h+c*y-u*d,o*d-l*y+c*h+u*p,o*y+l*d-c*p+u*h])),k=i.r=function(t,e,r){var n=v(e,2,t[0]);n=v(n,1,t[1]),n=v(n,0,t[2]-r[2]);var i,a,o=e[0],l=e[1],c=e[2],u=n[0],h=n[1],f=n[2],p=Math.atan2(l,o)*s,d=Math.sqrt(o*o+l*l);Math.abs(h)>d?(a=(h>0?90:-90)-p,i=0):(a=Math.asin(h/d)*s-p,i=Math.sqrt(d*d-h*h));var m=180-a-2*p,y=(Math.atan2(f,u)-Math.atan2(c,i))*s,x=(Math.atan2(f,u)-Math.atan2(c,-i))*s;return g(r[0],r[1],a,y)<=g(r[0],r[1],m,x)?[a,y,r[2]]:[m,x,r[2]]}(T,r,E);isFinite(k[0])&&isFinite(k[1])&&isFinite(k[2])||(k=E),e.rotate(k),E=k}}else r=m(e,M=_);f.of(this,arguments)({type:\"zoom\"})})),A=f.of(this,arguments),p++||A({type:\"zoomstart\"})})).on(\"zoomend\",(function(){var r;n.select(this).style(c),d.call(a,\"zoom\",null),r=f.of(this,arguments),--p||r({type:\"zoomend\"}),h(t,e,y)})).on(\"zoom.redraw\",(function(){t.render(!0);var r=e.rotate();t.graphDiv.emit(\"plotly_relayouting\",{\"geo.projection.scale\":e.scale()/t.fitScale,\"geo.projection.rotation.lon\":-r[0],\"geo.projection.rotation.lat\":-r[1]})})),n.rebind(a,f,\"on\")}function m(t,e){var r=t.invert(e);return r&&isFinite(r[0])&&isFinite(r[1])&&function(t){var e=t[0]*o,r=t[1]*o,n=Math.cos(r);return[n*Math.cos(e),n*Math.sin(e),Math.sin(r)]}(r)}function g(t,e,r,n){var i=y(r-t),a=y(n-e);return Math.sqrt(i*i+a*a)}function y(t){return(t%360+540)%360-180}function v(t,e,r){var n=r*o,i=t.slice(),a=0===e?1:0,s=2===e?1:2,l=Math.cos(n),c=Math.sin(n);return i[a]=t[a]*l-t[s]*c,i[s]=t[s]*l+t[a]*c,i}function x(t,e){for(var r=0,n=0,i=t.length;n<i;++n)r+=t[n]*e[n];return r}t.exports=function(t,e){var r=t.projection;return(e._isScoped?f:e._isClipped?d:p)(t,r)}},4173:function(t,e,r){\"use strict\";var n=r(33626),i=r(54826).SUBPLOT_PATTERN;e.fX=function(t,e,r){var i=n.subplotsRegistry[e];if(!i)return[];for(var a=i.attr,o=[],s=0;s<t.length;s++){var l=t[s];l[0].trace[a]===r&&o.push(l)}return o},e.eV=function(t,e,r){var i,a=[],o=[];if(!(i=\"string\"==typeof e?n.getModule(e).plot:\"function\"==typeof e?e:e.plot))return[a,t];for(var s=r,l=0;l<t.length;l++){var c=t[l],u=c[0].trace,h=void 0!==u.zorder;!0===u.visible&&0!==u._length&&(!u._module||u._module.plot!==i||h&&u.zorder!==s?o.push(c):a.push(c))}return[a,o]},e.KO=function(t,e,r){if(!n.subplotsRegistry[e])return[];var a,o,s,l=n.subplotsRegistry[e].attr,c=[];if(\"gl2d\"===e){var u=r.match(i);o=\"x\"+u[1],s=\"y\"+u[2]}for(var h=0;h<t.length;h++)a=t[h],\"gl2d\"===e&&n.traceIs(a,\"gl2d\")?a[l[0]]===o&&a[l[1]]===s&&c.push(a):a[l]===r&&c.push(a);return c}},77055:function(t,e,r){\"use strict\";var n=r(99978),i=r(20573),a=r(44039),o=r(54826),s=r(74043);function l(t,e){this.element=t,this.plot=e,this.mouseListener=null,this.wheelListener=null,this.lastInputTime=Date.now(),this.lastPos=[0,0],this.boxEnabled=!1,this.boxInited=!1,this.boxStart=[0,0],this.boxEnd=[0,0],this.dragStart=[0,0]}t.exports=function(t){var e=t.mouseContainer,r=t.glplot,c=new l(e,r);function u(){t.xaxis.autorange=!1,t.yaxis.autorange=!1}function h(e,n,i){var a,s,l=t.calcDataBox(),h=r.viewBox,f=c.lastPos[0],p=c.lastPos[1],d=o.MINDRAG*r.pixelRatio,m=o.MINZOOM*r.pixelRatio;function g(e,r,n){var i=Math.min(r,n),a=Math.max(r,n);i!==a?(l[e]=i,l[e+2]=a,c.dataBox=l,t.setRanges(l)):(t.selectBox.selectBox=[0,0,1,1],t.glplot.setDirty())}switch(n*=r.pixelRatio,i*=r.pixelRatio,i=h[3]-h[1]-i,t.fullLayout.dragmode){case\"zoom\":if(e){var y=n/(h[2]-h[0])*(l[2]-l[0])+l[0],v=i/(h[3]-h[1])*(l[3]-l[1])+l[1];c.boxInited||(c.boxStart[0]=y,c.boxStart[1]=v,c.dragStart[0]=n,c.dragStart[1]=i),c.boxEnd[0]=y,c.boxEnd[1]=v,c.boxInited=!0,c.boxEnabled||c.boxStart[0]===c.boxEnd[0]&&c.boxStart[1]===c.boxEnd[1]||(c.boxEnabled=!0);var x=Math.abs(c.dragStart[0]-n)<m,_=Math.abs(c.dragStart[1]-i)<m;if(!function(){for(var e=t.graphDiv._fullLayout._axisConstraintGroups,r=t.xaxis._id,n=t.yaxis._id,i=0;i<e.length;i++)if(-1!==e[i][r]){if(-1!==e[i][n])return!0;break}return!1}()||x&&_)x&&(c.boxEnd[0]=c.boxStart[0]),_&&(c.boxEnd[1]=c.boxStart[1]);else{a=c.boxEnd[0]-c.boxStart[0],s=c.boxEnd[1]-c.boxStart[1];var b=(l[3]-l[1])/(l[2]-l[0]);Math.abs(a*b)>Math.abs(s)?(c.boxEnd[1]=c.boxStart[1]+Math.abs(a)*b*(s>=0?1:-1),c.boxEnd[1]<l[1]?(c.boxEnd[1]=l[1],c.boxEnd[0]=c.boxStart[0]+(l[1]-c.boxStart[1])/Math.abs(b)):c.boxEnd[1]>l[3]&&(c.boxEnd[1]=l[3],c.boxEnd[0]=c.boxStart[0]+(l[3]-c.boxStart[1])/Math.abs(b))):(c.boxEnd[0]=c.boxStart[0]+Math.abs(s)/b*(a>=0?1:-1),c.boxEnd[0]<l[0]?(c.boxEnd[0]=l[0],c.boxEnd[1]=c.boxStart[1]+(l[0]-c.boxStart[0])*Math.abs(b)):c.boxEnd[0]>l[2]&&(c.boxEnd[0]=l[2],c.boxEnd[1]=c.boxStart[1]+(l[2]-c.boxStart[0])*Math.abs(b)))}}else c.boxEnabled?(a=c.boxStart[0]!==c.boxEnd[0],s=c.boxStart[1]!==c.boxEnd[1],a||s?(a&&(g(0,c.boxStart[0],c.boxEnd[0]),t.xaxis.autorange=!1),s&&(g(1,c.boxStart[1],c.boxEnd[1]),t.yaxis.autorange=!1),t.relayoutCallback()):t.glplot.setDirty(),c.boxEnabled=!1,c.boxInited=!1):c.boxInited&&(c.boxInited=!1);break;case\"pan\":c.boxEnabled=!1,c.boxInited=!1,e?(c.panning||(c.dragStart[0]=n,c.dragStart[1]=i),Math.abs(c.dragStart[0]-n)<d&&(n=c.dragStart[0]),Math.abs(c.dragStart[1]-i)<d&&(i=c.dragStart[1]),a=(f-n)*(l[2]-l[0])/(r.viewBox[2]-r.viewBox[0]),s=(p-i)*(l[3]-l[1])/(r.viewBox[3]-r.viewBox[1]),l[0]+=a,l[2]+=a,l[1]+=s,l[3]+=s,t.setRanges(l),c.panning=!0,c.lastInputTime=Date.now(),u(),t.cameraChanged(),t.handleAnnotations()):c.panning&&(c.panning=!1,t.relayoutCallback())}c.lastPos[0]=n,c.lastPos[1]=i}return c.mouseListener=n(e,h),e.addEventListener(\"touchstart\",(function(t){var r=a(t.changedTouches[0],e);h(0,r[0],r[1]),h(1,r[0],r[1]),t.preventDefault()}),!!s&&{passive:!1}),e.addEventListener(\"touchmove\",(function(t){t.preventDefault();var r=a(t.changedTouches[0],e);h(1,r[0],r[1]),t.preventDefault()}),!!s&&{passive:!1}),e.addEventListener(\"touchend\",(function(t){h(0,c.lastPos[0],c.lastPos[1]),t.preventDefault()}),!!s&&{passive:!1}),c.wheelListener=i(e,(function(e,n){if(!t.scrollZoom)return!1;var i=t.calcDataBox(),a=r.viewBox,o=c.lastPos[0],s=c.lastPos[1],l=Math.exp(5*n/(a[3]-a[1])),h=o/(a[2]-a[0])*(i[2]-i[0])+i[0],f=s/(a[3]-a[1])*(i[3]-i[1])+i[1];return i[0]=(i[0]-h)*l+h,i[2]=(i[2]-h)*l+h,i[1]=(i[1]-f)*l+f,i[3]=(i[3]-f)*l+f,t.setRanges(i),c.lastInputTime=Date.now(),u(),t.cameraChanged(),t.handleAnnotations(),t.relayoutCallback(),!0}),!0),c}},10749:function(t,e,r){\"use strict\";var n=r(29714),i=r(55010);function a(t){this.scene=t,this.gl=t.gl,this.pixelRatio=t.pixelRatio,this.screenBox=[0,0,1,1],this.viewBox=[0,0,1,1],this.dataBox=[-1,-1,1,1],this.borderLineEnable=[!1,!1,!1,!1],this.borderLineWidth=[1,1,1,1],this.borderLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.ticks=[[],[]],this.tickEnable=[!0,!0,!1,!1],this.tickPad=[15,15,15,15],this.tickAngle=[0,0,0,0],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickMarkLength=[0,0,0,0],this.tickMarkWidth=[0,0,0,0],this.tickMarkColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labels=[\"x\",\"y\"],this.labelEnable=[!0,!0,!1,!1],this.labelAngle=[0,Math.PI/2,0,3*Math.PI/2],this.labelPad=[15,15,15,15],this.labelSize=[12,12],this.labelFont=[\"sans-serif\",\"sans-serif\"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.title=\"\",this.titleEnable=!0,this.titleCenter=[0,0,0,0],this.titleAngle=0,this.titleColor=[0,0,0,1],this.titleFont=\"sans-serif\",this.titleSize=18,this.gridLineEnable=[!0,!0],this.gridLineColor=[[0,0,0,.5],[0,0,0,.5]],this.gridLineWidth=[1,1],this.zeroLineEnable=[!0,!0],this.zeroLineWidth=[1,1],this.zeroLineColor=[[0,0,0,1],[0,0,0,1]],this.borderColor=[0,0,0,0],this.backgroundColor=[0,0,0,0],this.static=this.scene.staticPlot}var o=a.prototype,s=[\"xaxis\",\"yaxis\"];o.merge=function(t){var e,r,n,a,o,l,c,u,h,f,p;for(this.titleEnable=!1,this.backgroundColor=i(t.plot_bgcolor),f=0;f<2;++f){var d=(e=s[f]).charAt(0);for(n=(r=t[this.scene[e]._name]).title.text===this.scene.fullLayout._dfltTitle[d]?\"\":r.title.text,p=0;p<=2;p+=2)this.labelEnable[f+p]=!1,this.labels[f+p]=n,this.labelColor[f+p]=i(r.title.font.color),this.labelFont[f+p]=r.title.font.family,this.labelSize[f+p]=r.title.font.size,this.labelPad[f+p]=this.getLabelPad(e,r),this.tickEnable[f+p]=!1,this.tickColor[f+p]=i((r.tickfont||{}).color),this.tickAngle[f+p]=\"auto\"===r.tickangle?0:Math.PI*-r.tickangle/180,this.tickPad[f+p]=this.getTickPad(r),this.tickMarkLength[f+p]=0,this.tickMarkWidth[f+p]=r.tickwidth||0,this.tickMarkColor[f+p]=i(r.tickcolor),this.borderLineEnable[f+p]=!1,this.borderLineColor[f+p]=i(r.linecolor),this.borderLineWidth[f+p]=r.linewidth||0;c=this.hasSharedAxis(r),o=this.hasAxisInDfltPos(e,r)&&!c,l=this.hasAxisInAltrPos(e,r)&&!c,a=r.mirror||!1,u=c?-1!==String(a).indexOf(\"all\"):!!a,h=c?\"allticks\"===a:-1!==String(a).indexOf(\"ticks\"),o?this.labelEnable[f]=!0:l&&(this.labelEnable[f+2]=!0),o?this.tickEnable[f]=r.showticklabels:l&&(this.tickEnable[f+2]=r.showticklabels),(o||u)&&(this.borderLineEnable[f]=r.showline),(l||u)&&(this.borderLineEnable[f+2]=r.showline),(o||h)&&(this.tickMarkLength[f]=this.getTickMarkLength(r)),(l||h)&&(this.tickMarkLength[f+2]=this.getTickMarkLength(r)),this.gridLineEnable[f]=r.showgrid,this.gridLineColor[f]=i(r.gridcolor),this.gridLineWidth[f]=r.gridwidth,this.zeroLineEnable[f]=r.zeroline,this.zeroLineColor[f]=i(r.zerolinecolor),this.zeroLineWidth[f]=r.zerolinewidth}},o.hasSharedAxis=function(t){var e=this.scene,r=e.fullLayout._subplots.gl2d;return 0!==n.findSubplotsWithAxis(r,t).indexOf(e.id)},o.hasAxisInDfltPos=function(t,e){var r=e.side;return\"xaxis\"===t?\"bottom\"===r:\"yaxis\"===t?\"left\"===r:void 0},o.hasAxisInAltrPos=function(t,e){var r=e.side;return\"xaxis\"===t?\"top\"===r:\"yaxis\"===t?\"right\"===r:void 0},o.getLabelPad=function(t,e){var r=1.5,n=e.title.font.size,i=e.showticklabels;return\"xaxis\"===t?\"top\"===e.side?n*(r+(i?1:0))-10:n*(r+(i?.5:0))-10:\"yaxis\"===t?\"right\"===e.side?10+n*(r+(i?1:.5)):10+n*(r+(i?.5:0)):void 0},o.getTickPad=function(t){return\"outside\"===t.ticks?10+t.ticklen:15},o.getTickMarkLength=function(t){if(!t.ticks)return 0;var e=t.ticklen;return\"inside\"===t.ticks?-e:e},t.exports=function(t){return new a(t)}},24585:function(t,e,r){\"use strict\";var n=r(13582).overrideAll,i=r(27672),a=r(6704),o=r(62972),s=r(54826),l=r(37703),c=r(6811),u=r(4173).KO;e.name=\"gl2d\",e.attr=[\"xaxis\",\"yaxis\"],e.idRoot=[\"x\",\"y\"],e.idRegex=s.idRegex,e.attrRegex=s.attrRegex,e.attributes=r(55126),e.supplyLayoutDefaults=function(t,e,r){e._has(\"cartesian\")||l.supplyLayoutDefaults(t,e,r)},e.layoutAttrOverrides=n(l.layoutAttributes,\"plot\",\"from-root\"),e.baseLayoutAttrOverrides=n({plot_bgcolor:a.plot_bgcolor,hoverlabel:c.hoverlabel},\"plot\",\"nested\"),e.plot=function(t){for(var e=t._fullLayout,r=t._fullData,n=e._subplots.gl2d,a=0;a<n.length;a++){var o=n[a],s=e._plots[o],l=u(r,\"gl2d\",o),c=s._scene2d;void 0===c&&(c=new i({id:o,graphDiv:t,container:t.querySelector(\".gl-container\"),staticPlot:t._context.staticPlot,plotGlPixelRatio:t._context.plotGlPixelRatio},e),s._scene2d=c),c.plot(l,t.calcdata,e,t.layout)}},e.clean=function(t,e,r,n){for(var i=n._subplots.gl2d||[],a=0;a<i.length;a++){var o=i[a],s=n._plots[o];s._scene2d&&0===u(t,\"gl2d\",o).length&&(s._scene2d.destroy(),delete n._plots[o])}l.clean.apply(this,arguments)},e.drawFramework=function(t){t._context.staticPlot||l.drawFramework(t)},e.toSVG=function(t){for(var e=t._fullLayout,r=e._subplots.gl2d,n=0;n<r.length;n++){var i=e._plots[r[n]]._scene2d,a=i.toImage(\"png\");e._glimages.append(\"svg:image\").attr({xmlns:o.svg,\"xlink:href\":a,x:0,y:0,width:\"100%\",height:\"100%\",preserveAspectRatio:\"none\"}),i.destroy()}},e.updateFx=function(t){for(var e=t._fullLayout,r=e._subplots.gl2d,n=0;n<r.length;n++)e._plots[r[n]]._scene2d.updateFx(e.dragmode)}},27672:function(t,e,r){\"use strict\";var n,i,a=r(33626),o=r(29714),s=r(32141),l=r(99098).gl_plot2d,c=r(99098).gl_spikes2d,u=r(99098).gl_select_box,h=r(22248),f=r(10749),p=r(77055),d=r(97464),m=r(84391),g=m.enforce,y=m.clean,v=r(32919).doAutoRange,x=r(70414),_=x.drawMode,b=x.selectMode,w=[\"xaxis\",\"yaxis\"],T=r(54826).SUBPLOT_PATTERN;function k(t,e){this.container=t.container,this.graphDiv=t.graphDiv,this.pixelRatio=t.plotGlPixelRatio||window.devicePixelRatio,this.id=t.id,this.staticPlot=!!t.staticPlot,this.scrollZoom=this.graphDiv._context._scrollZoom.cartesian,this.fullData=null,this.updateRefs(e),this.makeFramework(),this.stopped||(this.glplotOptions=f(this),this.glplotOptions.merge(e),this.glplot=l(this.glplotOptions),this.camera=p(this),this.traces={},this.spikes=c(this.glplot),this.selectBox=u(this.glplot,{innerFill:!1,outerFill:!0}),this.lastButtonState=0,this.pickResult=null,this.isMouseOver=!0,this.stopped=!1,this.redraw=this.draw.bind(this),this.redraw())}t.exports=k;var A=k.prototype;A.makeFramework=function(){if(this.staticPlot){if(!(i||(n=document.createElement(\"canvas\"),i=h({canvas:n,preserveDrawingBuffer:!1,premultipliedAlpha:!0,antialias:!0}))))throw new Error(\"Error creating static canvas/context for image server\");this.canvas=n,this.gl=i}else{var t=this.container.querySelector(\".gl-canvas-focus\"),e=h({canvas:t,preserveDrawingBuffer:!0,premultipliedAlpha:!0});if(!e)return d(this),void(this.stopped=!0);this.canvas=t,this.gl=e}var r=this.canvas;r.style.width=\"100%\",r.style.height=\"100%\",r.style.position=\"absolute\",r.style.top=\"0px\",r.style.left=\"0px\",r.style[\"pointer-events\"]=\"none\",this.updateSize(r);var a=this.svgContainer=document.createElementNS(\"http://www.w3.org/2000/svg\",\"svg\");a.style.position=\"absolute\",a.style.top=a.style.left=\"0px\",a.style.width=a.style.height=\"100%\",a.style[\"z-index\"]=20,a.style[\"pointer-events\"]=\"none\";var o=this.mouseContainer=document.createElement(\"div\");o.style.position=\"absolute\",o.style[\"pointer-events\"]=\"auto\",this.pickCanvas=this.container.querySelector(\".gl-canvas-pick\");var s=this.container;s.appendChild(a),s.appendChild(o);var l=this;o.addEventListener(\"mouseout\",(function(){l.isMouseOver=!1,l.unhover()})),o.addEventListener(\"mouseover\",(function(){l.isMouseOver=!0}))},A.toImage=function(t){t||(t=\"png\"),this.stopped=!0,this.staticPlot&&this.container.appendChild(n),this.updateSize(this.canvas);var e=this.glplot.gl,r=e.drawingBufferWidth,i=e.drawingBufferHeight;e.clearColor(1,1,1,0),e.clear(e.COLOR_BUFFER_BIT|e.DEPTH_BUFFER_BIT),this.glplot.setDirty(),this.glplot.draw(),e.bindFramebuffer(e.FRAMEBUFFER,null);var a=new Uint8Array(r*i*4);e.readPixels(0,0,r,i,e.RGBA,e.UNSIGNED_BYTE,a);for(var o=0,s=i-1;o<s;++o,--s)for(var l=0;l<r;++l)for(var c=0;c<4;++c){var u=a[4*(r*o+l)+c];a[4*(r*o+l)+c]=a[4*(r*s+l)+c],a[4*(r*s+l)+c]=u}var h=document.createElement(\"canvas\");h.width=r,h.height=i;var f,p=h.getContext(\"2d\",{willReadFrequently:!0}),d=p.createImageData(r,i);switch(d.data.set(a),p.putImageData(d,0,0),t){case\"jpeg\":f=h.toDataURL(\"image/jpeg\");break;case\"webp\":f=h.toDataURL(\"image/webp\");break;default:f=h.toDataURL(\"image/png\")}return this.staticPlot&&this.container.removeChild(n),f},A.updateSize=function(t){t||(t=this.canvas);var e=this.pixelRatio,r=this.fullLayout,n=r.width,i=r.height,a=0|Math.ceil(e*n),o=0|Math.ceil(e*i);return t.width===a&&t.height===o||(t.width=a,t.height=o),t},A.computeTickMarks=function(){this.xaxis.setScale(),this.yaxis.setScale();for(var t=[o.calcTicks(this.xaxis),o.calcTicks(this.yaxis)],e=0;e<2;++e)for(var r=0;r<t[e].length;++r)t[e][r].text=t[e][r].text+\"\";return t},A.updateRefs=function(t){this.fullLayout=t;var e=this.id.match(T),r=\"xaxis\"+e[1],n=\"yaxis\"+e[2];this.xaxis=this.fullLayout[r],this.yaxis=this.fullLayout[n]},A.relayoutCallback=function(){var t=this.graphDiv,e=this.xaxis,r=this.yaxis,n=t.layout,i={},o=i[e._name+\".range\"]=e.range.slice(),s=i[r._name+\".range\"]=r.range.slice();i[e._name+\".autorange\"]=e.autorange,i[r._name+\".autorange\"]=r.autorange,a.call(\"_storeDirectGUIEdit\",t.layout,t._fullLayout._preGUI,i);var l=n[e._name];l.range=o,l.autorange=e.autorange;var c=n[r._name];c.range=s,c.autorange=r.autorange,i.lastInputTime=this.camera.lastInputTime,t.emit(\"plotly_relayout\",i)},A.cameraChanged=function(){var t=this.camera;this.glplot.setDataBox(this.calcDataBox());var e=this.computeTickMarks();(function(t,e){for(var r=0;r<2;++r){var n=t[r],i=e[r];if(n.length!==i.length)return!0;for(var a=0;a<n.length;++a)if(n[a].x!==i[a].x)return!0}return!1})(e,this.glplotOptions.ticks)&&(this.glplotOptions.ticks=e,this.glplotOptions.dataBox=t.dataBox,this.glplot.update(this.glplotOptions),this.handleAnnotations())},A.handleAnnotations=function(){for(var t=this.graphDiv,e=this.fullLayout.annotations,r=0;r<e.length;r++){var n=e[r];n.xref===this.xaxis._id&&n.yref===this.yaxis._id&&a.getComponentMethod(\"annotations\",\"drawOne\")(t,r)}},A.destroy=function(){if(this.glplot){var t=this.traces;t&&Object.keys(t).map((function(e){t[e].dispose(),delete t[e]})),this.glplot.dispose(),this.container.removeChild(this.svgContainer),this.container.removeChild(this.mouseContainer),this.fullData=null,this.glplot=null,this.stopped=!0,this.camera.mouseListener.enabled=!1,this.mouseContainer.removeEventListener(\"wheel\",this.camera.wheelListener),this.camera=null}},A.plot=function(t,e,r){var n=this.glplot;this.updateRefs(r),this.xaxis.clearCalc(),this.yaxis.clearCalc(),this.updateTraces(t,e),this.updateFx(r.dragmode);var i=r.width,a=r.height;this.updateSize(this.canvas);var o=this.glplotOptions;o.merge(r),o.screenBox=[0,0,i,a];var s={_fullLayout:{_axisConstraintGroups:r._axisConstraintGroups,xaxis:this.xaxis,yaxis:this.yaxis,_size:r._size}};y(s,this.xaxis),y(s,this.yaxis);var l,c,u=r._size,h=this.xaxis.domain,f=this.yaxis.domain;for(o.viewBox=[u.l+h[0]*u.w,u.b+f[0]*u.h,i-u.r-(1-h[1])*u.w,a-u.t-(1-f[1])*u.h],this.mouseContainer.style.width=u.w*(h[1]-h[0])+\"px\",this.mouseContainer.style.height=u.h*(f[1]-f[0])+\"px\",this.mouseContainer.height=u.h*(f[1]-f[0]),this.mouseContainer.style.left=u.l+h[0]*u.w+\"px\",this.mouseContainer.style.top=u.t+(1-f[1])*u.h+\"px\",c=0;c<2;++c)(l=this[w[c]])._length=o.viewBox[c+2]-o.viewBox[c],v(this.graphDiv,l),l.setScale();g(s),o.ticks=this.computeTickMarks(),o.dataBox=this.calcDataBox(),o.merge(r),n.update(o),this.glplot.draw()},A.calcDataBox=function(){var t=this.xaxis,e=this.yaxis,r=t.range,n=e.range,i=t.r2l,a=e.r2l;return[i(r[0]),a(n[0]),i(r[1]),a(n[1])]},A.setRanges=function(t){var e=this.xaxis,r=this.yaxis,n=e.l2r,i=r.l2r;e.range=[n(t[0]),n(t[2])],r.range=[i(t[1]),i(t[3])]},A.updateTraces=function(t,e){var r,n,i,a=Object.keys(this.traces);this.fullData=t;t:for(r=0;r<a.length;r++){var o=a[r],s=this.traces[o];for(n=0;n<t.length;n++)if((i=t[n]).uid===o&&i.type===s.type)continue t;s.dispose(),delete this.traces[o]}for(r=0;r<t.length;r++){i=t[r];var l=e[r],c=this.traces[i.uid];c?c.update(i,l):(c=i._module.plot(this,i,l),this.traces[i.uid]=c)}this.glplot.objects.sort((function(t,e){return t._trace.index-e._trace.index}))},A.updateFx=function(t){b(t)||_(t)?(this.pickCanvas.style[\"pointer-events\"]=\"none\",this.mouseContainer.style[\"pointer-events\"]=\"none\"):(this.pickCanvas.style[\"pointer-events\"]=\"auto\",this.mouseContainer.style[\"pointer-events\"]=\"auto\"),this.mouseContainer.style.cursor=\"pan\"===t?\"move\":\"zoom\"===t?\"crosshair\":null},A.emitPointAction=function(t,e){for(var r,n=t.trace.uid,i=t.pointIndex,a=0;a<this.fullData.length;a++)this.fullData[a].uid===n&&(r=this.fullData[a]);var o={x:t.traceCoord[0],y:t.traceCoord[1],curveNumber:r.index,pointNumber:i,data:r._input,fullData:this.fullData,xaxis:this.xaxis,yaxis:this.yaxis};s.appendArrayPointValue(o,r,i),this.graphDiv.emit(e,{points:[o]})},A.draw=function(){if(!this.stopped){requestAnimationFrame(this.redraw);var t=this.glplot,e=this.camera,r=e.mouseListener,n=1===this.lastButtonState&&0===r.buttons,i=this.fullLayout;this.lastButtonState=r.buttons,this.cameraChanged();var a,o=r.x*t.pixelRatio,l=this.canvas.height-t.pixelRatio*r.y;if(e.boxEnabled&&\"zoom\"===i.dragmode){this.selectBox.enabled=!0;for(var c=this.selectBox.selectBox=[Math.min(e.boxStart[0],e.boxEnd[0]),Math.min(e.boxStart[1],e.boxEnd[1]),Math.max(e.boxStart[0],e.boxEnd[0]),Math.max(e.boxStart[1],e.boxEnd[1])],u=0;u<2;u++)e.boxStart[u]===e.boxEnd[u]&&(c[u]=t.dataBox[u],c[u+2]=t.dataBox[u+2]);t.setDirty()}else if(!e.panning&&this.isMouseOver){this.selectBox.enabled=!1;var h=i._size,f=this.xaxis.domain,p=this.yaxis.domain,d=(a=t.pick(o/t.pixelRatio+h.l+f[0]*h.w,l/t.pixelRatio-(h.t+(1-p[1])*h.h)))&&a.object._trace.handlePick(a);if(d&&n&&this.emitPointAction(d,\"plotly_click\"),a&&\"skip\"!==a.object._trace.hoverinfo&&i.hovermode&&d&&(!this.lastPickResult||this.lastPickResult.traceUid!==d.trace.uid||this.lastPickResult.dataCoord[0]!==d.dataCoord[0]||this.lastPickResult.dataCoord[1]!==d.dataCoord[1])){var m=d;this.lastPickResult={traceUid:d.trace?d.trace.uid:null,dataCoord:d.dataCoord.slice()},this.spikes.update({center:a.dataCoord}),m.screenCoord=[((t.viewBox[2]-t.viewBox[0])*(a.dataCoord[0]-t.dataBox[0])/(t.dataBox[2]-t.dataBox[0])+t.viewBox[0])/t.pixelRatio,(this.canvas.height-(t.viewBox[3]-t.viewBox[1])*(a.dataCoord[1]-t.dataBox[1])/(t.dataBox[3]-t.dataBox[1])-t.viewBox[1])/t.pixelRatio],this.emitPointAction(d,\"plotly_hover\");var g=this.fullData[m.trace.index]||{},y=m.pointIndex,v=s.castHoverinfo(g,i,y);if(v&&\"all\"!==v){var x=v.split(\"+\");-1===x.indexOf(\"x\")&&(m.traceCoord[0]=void 0),-1===x.indexOf(\"y\")&&(m.traceCoord[1]=void 0),-1===x.indexOf(\"z\")&&(m.traceCoord[2]=void 0),-1===x.indexOf(\"text\")&&(m.textLabel=void 0),-1===x.indexOf(\"name\")&&(m.name=void 0)}s.loneHover({x:m.screenCoord[0],y:m.screenCoord[1],xLabel:this.hoverFormatter(\"xaxis\",m.traceCoord[0]),yLabel:this.hoverFormatter(\"yaxis\",m.traceCoord[1]),zLabel:m.traceCoord[2],text:m.textLabel,name:m.name,color:s.castHoverOption(g,y,\"bgcolor\")||m.color,borderColor:s.castHoverOption(g,y,\"bordercolor\"),fontFamily:s.castHoverOption(g,y,\"font.family\"),fontSize:s.castHoverOption(g,y,\"font.size\"),fontColor:s.castHoverOption(g,y,\"font.color\"),nameLength:s.castHoverOption(g,y,\"namelength\"),textAlign:s.castHoverOption(g,y,\"align\")},{container:this.svgContainer,gd:this.graphDiv})}}a||this.unhover(),t.draw()}},A.unhover=function(){this.lastPickResult&&(this.spikes.update({}),this.lastPickResult=null,this.graphDiv.emit(\"plotly_unhover\"),s.loneUnhover(this.svgContainer))},A.hoverFormatter=function(t,e){if(void 0!==e){var r=this[t];return o.tickText(r,r.c2l(e),\"hover\").text}}},2487:function(t,e,r){\"use strict\";var n=r(13582).overrideAll,i=r(6811),a=r(20299),o=r(4173).KO,s=r(34809),l=r(62972),c=\"gl3d\",u=\"scene\";e.name=c,e.attr=u,e.idRoot=u,e.idRegex=e.attrRegex=s.counterRegex(\"scene\"),e.attributes=r(22597),e.layoutAttributes=r(77168),e.baseLayoutAttrOverrides=n({hoverlabel:i.hoverlabel},\"plot\",\"nested\"),e.supplyLayoutDefaults=r(15250),e.plot=function(t){for(var e=t._fullLayout,r=t._fullData,n=e._subplots[c],i=0;i<n.length;i++){var s=n[i],l=o(r,c,s),u=e[s],h=u.camera,f=u._scene;f||(f=new a({id:s,graphDiv:t,container:t.querySelector(\".gl-container\"),staticPlot:t._context.staticPlot,plotGlPixelRatio:t._context.plotGlPixelRatio,camera:h},e),u._scene=f),f.viewInitial||(f.viewInitial={up:{x:h.up.x,y:h.up.y,z:h.up.z},eye:{x:h.eye.x,y:h.eye.y,z:h.eye.z},center:{x:h.center.x,y:h.center.y,z:h.center.z}}),f.plot(l,e,t.layout)}},e.clean=function(t,e,r,n){for(var i=n._subplots[c]||[],a=0;a<i.length;a++){var o=i[a];!e[o]&&n[o]._scene&&(n[o]._scene.destroy(),n._infolayer&&n._infolayer.selectAll(\".annotation-\"+o).remove())}},e.toSVG=function(t){for(var e=t._fullLayout,r=e._subplots[c],n=e._size,i=0;i<r.length;i++){var a=e[r[i]],o=a.domain,s=a._scene,u=s.toImage(\"png\");e._glimages.append(\"svg:image\").attr({xmlns:l.svg,\"xlink:href\":u,x:n.l+n.w*o.x[0],y:n.t+n.h*(1-o.y[1]),width:n.w*(o.x[1]-o.x[0]),height:n.h*(o.y[1]-o.y[0]),preserveAspectRatio:\"none\"}),s.destroy()}},e.cleanId=function(t){if(t.match(/^scene[0-9]*$/)){var e=t.substr(5);return\"1\"===e&&(e=\"\"),u+e}},e.updateFx=function(t){for(var e=t._fullLayout,r=e._subplots[c],n=0;n<r.length;n++)e[r[n]]._scene.updateFx(e.dragmode,e.hovermode)}},22597:function(t){\"use strict\";t.exports={scene:{valType:\"subplotid\",dflt:\"scene\",editType:\"calc+clearAxisTypes\"}}},63397:function(t,e,r){\"use strict\";var n=r(78766),i=r(25829),a=r(93049).extendFlat,o=r(13582).overrideAll;t.exports=o({visible:i.visible,showspikes:{valType:\"boolean\",dflt:!0},spikesides:{valType:\"boolean\",dflt:!0},spikethickness:{valType:\"number\",min:0,dflt:2},spikecolor:{valType:\"color\",dflt:n.defaultLine},showbackground:{valType:\"boolean\",dflt:!1},backgroundcolor:{valType:\"color\",dflt:\"rgba(204, 204, 204, 0.5)\"},showaxeslabels:{valType:\"boolean\",dflt:!0},color:i.color,categoryorder:i.categoryorder,categoryarray:i.categoryarray,title:{text:i.title.text,font:i.title.font},type:a({},i.type,{values:[\"-\",\"linear\",\"log\",\"date\",\"category\"]}),autotypenumbers:i.autotypenumbers,autorange:i.autorange,autorangeoptions:{minallowed:i.autorangeoptions.minallowed,maxallowed:i.autorangeoptions.maxallowed,clipmin:i.autorangeoptions.clipmin,clipmax:i.autorangeoptions.clipmax,include:i.autorangeoptions.include,editType:\"plot\"},rangemode:i.rangemode,minallowed:i.minallowed,maxallowed:i.maxallowed,range:a({},i.range,{items:[{valType:\"any\",editType:\"plot\",impliedEdits:{\"^autorange\":!1}},{valType:\"any\",editType:\"plot\",impliedEdits:{\"^autorange\":!1}}],anim:!1}),tickmode:i.minor.tickmode,nticks:i.nticks,tick0:i.tick0,dtick:i.dtick,tickvals:i.tickvals,ticktext:i.ticktext,ticks:i.ticks,mirror:i.mirror,ticklen:i.ticklen,tickwidth:i.tickwidth,tickcolor:i.tickcolor,showticklabels:i.showticklabels,labelalias:i.labelalias,tickfont:i.tickfont,tickangle:i.tickangle,tickprefix:i.tickprefix,showtickprefix:i.showtickprefix,ticksuffix:i.ticksuffix,showticksuffix:i.showticksuffix,showexponent:i.showexponent,exponentformat:i.exponentformat,minexponent:i.minexponent,separatethousands:i.separatethousands,tickformat:i.tickformat,tickformatstops:i.tickformatstops,hoverformat:i.hoverformat,showline:i.showline,linecolor:i.linecolor,linewidth:i.linewidth,showgrid:i.showgrid,gridcolor:a({},i.gridcolor,{dflt:\"rgb(204, 204, 204)\"}),gridwidth:i.gridwidth,zeroline:i.zeroline,zerolinecolor:i.zerolinecolor,zerolinewidth:i.zerolinewidth,_deprecated:{title:i._deprecated.title,titlefont:i._deprecated.titlefont}},\"plot\",\"from-root\")},34258:function(t,e,r){\"use strict\";var n=r(65657).mix,i=r(34809),a=r(78032),o=r(63397),s=r(4392),l=r(97655),c=[\"xaxis\",\"yaxis\",\"zaxis\"];t.exports=function(t,e,r){var u,h;function f(t,e){return i.coerce(u,h,o,t,e)}for(var p=0;p<c.length;p++){var d=c[p];u=t[d]||{},(h=a.newContainer(e,d))._id=d[0]+r.scene,h._name=d,s(u,h,f,r),l(u,h,f,{font:r.font,letter:d[0],data:r.data,showGrid:!0,noAutotickangles:!0,noTicklabelindex:!0,noTickson:!0,noTicklabelmode:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,noTicklabelstep:!0,noTicklabelposition:!0,noTicklabeloverflow:!0,noInsiderange:!0,bgColor:r.bgColor,calendar:r.calendar},r.fullLayout),f(\"gridcolor\",n(h.color,r.bgColor,72.72727272727273).toRgbString()),f(\"title.text\",d[0]),h.setScale=i.noop,f(\"showspikes\")&&(f(\"spikesides\"),f(\"spikethickness\"),f(\"spikecolor\",h.color)),f(\"showaxeslabels\"),f(\"showbackground\")&&f(\"backgroundcolor\")}}},95701:function(t,e,r){\"use strict\";var n=r(55010),i=r(34809),a=[\"xaxis\",\"yaxis\",\"zaxis\"];function o(){this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.tickEnable=[!0,!0,!0],this.tickFont=[\"sans-serif\",\"sans-serif\",\"sans-serif\"],this.tickSize=[12,12,12],this.tickFontWeight=[\"normal\",\"normal\",\"normal\",\"normal\"],this.tickFontStyle=[\"normal\",\"normal\",\"normal\",\"normal\"],this.tickFontVariant=[\"normal\",\"normal\",\"normal\",\"normal\"],this.tickAngle=[0,0,0],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[18,18,18],this.labels=[\"x\",\"y\",\"z\"],this.labelEnable=[!0,!0,!0],this.labelFont=[\"Open Sans\",\"Open Sans\",\"Open Sans\"],this.labelSize=[20,20,20],this.labelFontWeight=[\"normal\",\"normal\",\"normal\",\"normal\"],this.labelFontStyle=[\"normal\",\"normal\",\"normal\",\"normal\"],this.labelFontVariant=[\"normal\",\"normal\",\"normal\",\"normal\"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[30,30,30],this.lineEnable=[!0,!0,!0],this.lineMirror=[!1,!1,!1],this.lineWidth=[1,1,1],this.lineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.lineTickEnable=[!0,!0,!0],this.lineTickMirror=[!1,!1,!1],this.lineTickLength=[10,10,10],this.lineTickWidth=[1,1,1],this.lineTickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.gridEnable=[!0,!0,!0],this.gridWidth=[1,1,1],this.gridColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroEnable=[!0,!0,!0],this.zeroLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroLineWidth=[2,2,2],this.backgroundEnable=[!0,!0,!0],this.backgroundColor=[[.8,.8,.8,.5],[.8,.8,.8,.5],[.8,.8,.8,.5]],this._defaultTickPad=this.tickPad.slice(),this._defaultLabelPad=this.labelPad.slice(),this._defaultLineTickLength=this.lineTickLength.slice()}o.prototype.merge=function(t,e){for(var r=this,o=0;o<3;++o){var s=e[a[o]];s.visible?(r.labels[o]=t._meta?i.templateString(s.title.text,t._meta):s.title.text,\"font\"in s.title&&(s.title.font.color&&(r.labelColor[o]=n(s.title.font.color)),s.title.font.family&&(r.labelFont[o]=s.title.font.family),s.title.font.size&&(r.labelSize[o]=s.title.font.size),s.title.font.weight&&(r.labelFontWeight[o]=s.title.font.weight),s.title.font.style&&(r.labelFontStyle[o]=s.title.font.style),s.title.font.variant&&(r.labelFontVariant[o]=s.title.font.variant)),\"showline\"in s&&(r.lineEnable[o]=s.showline),\"linecolor\"in s&&(r.lineColor[o]=n(s.linecolor)),\"linewidth\"in s&&(r.lineWidth[o]=s.linewidth),\"showgrid\"in s&&(r.gridEnable[o]=s.showgrid),\"gridcolor\"in s&&(r.gridColor[o]=n(s.gridcolor)),\"gridwidth\"in s&&(r.gridWidth[o]=s.gridwidth),\"log\"===s.type?r.zeroEnable[o]=!1:\"zeroline\"in s&&(r.zeroEnable[o]=s.zeroline),\"zerolinecolor\"in s&&(r.zeroLineColor[o]=n(s.zerolinecolor)),\"zerolinewidth\"in s&&(r.zeroLineWidth[o]=s.zerolinewidth),\"ticks\"in s&&s.ticks?r.lineTickEnable[o]=!0:r.lineTickEnable[o]=!1,\"ticklen\"in s&&(r.lineTickLength[o]=r._defaultLineTickLength[o]=s.ticklen),\"tickcolor\"in s&&(r.lineTickColor[o]=n(s.tickcolor)),\"tickwidth\"in s&&(r.lineTickWidth[o]=s.tickwidth),\"tickangle\"in s&&(r.tickAngle[o]=\"auto\"===s.tickangle?-3600:Math.PI*-s.tickangle/180),\"showticklabels\"in s&&(r.tickEnable[o]=s.showticklabels),\"tickfont\"in s&&(s.tickfont.color&&(r.tickColor[o]=n(s.tickfont.color)),s.tickfont.family&&(r.tickFont[o]=s.tickfont.family),s.tickfont.size&&(r.tickSize[o]=s.tickfont.size),s.tickfont.weight&&(r.tickFontWeight[o]=s.tickfont.weight),s.tickfont.style&&(r.tickFontStyle[o]=s.tickfont.style),s.tickfont.variant&&(r.tickFontVariant[o]=s.tickfont.variant)),\"mirror\"in s?-1!==[\"ticks\",\"all\",\"allticks\"].indexOf(s.mirror)?(r.lineTickMirror[o]=!0,r.lineMirror[o]=!0):!0===s.mirror?(r.lineTickMirror[o]=!1,r.lineMirror[o]=!0):(r.lineTickMirror[o]=!1,r.lineMirror[o]=!1):r.lineMirror[o]=!1,\"showbackground\"in s&&!1!==s.showbackground?(r.backgroundEnable[o]=!0,r.backgroundColor[o]=n(s.backgroundcolor)):r.backgroundEnable[o]=!1):(r.tickEnable[o]=!1,r.labelEnable[o]=!1,r.lineEnable[o]=!1,r.lineTickEnable[o]=!1,r.gridEnable[o]=!1,r.zeroEnable[o]=!1,r.backgroundEnable[o]=!1)}},t.exports=function(t,e){var r=new o;return r.merge(t,e),r}},15250:function(t,e,r){\"use strict\";var n=r(34809),i=r(78766),a=r(33626),o=r(4448),s=r(34258),l=r(77168),c=r(4173).KO,u=\"gl3d\";function h(t,e,r,n){for(var o=r(\"bgcolor\"),l=i.combine(o,n.paper_bgcolor),h=[\"up\",\"center\",\"eye\"],f=0;f<h.length;f++)r(\"camera.\"+h[f]+\".x\"),r(\"camera.\"+h[f]+\".y\"),r(\"camera.\"+h[f]+\".z\");r(\"camera.projection.type\");var p=!!r(\"aspectratio.x\")&&!!r(\"aspectratio.y\")&&!!r(\"aspectratio.z\"),d=r(\"aspectmode\",p?\"manual\":\"auto\");p||(t.aspectratio=e.aspectratio={x:1,y:1,z:1},\"manual\"===d&&(e.aspectmode=\"auto\"),t.aspectmode=e.aspectmode);var m=c(n.fullData,u,n.id);s(t,e,{font:n.font,scene:n.id,data:m,bgColor:l,calendar:n.calendar,autotypenumbersDflt:n.autotypenumbersDflt,fullLayout:n.fullLayout}),a.getComponentMethod(\"annotations3d\",\"handleDefaults\")(t,e,n);var g=n.getDfltFromLayout(\"dragmode\");if(!1!==g&&!g)if(g=\"orbit\",t.camera&&t.camera.up){var y=t.camera.up.x,v=t.camera.up.y,x=t.camera.up.z;0!==x&&(y&&v&&x?x/Math.sqrt(y*y+v*v+x*x)>.999&&(g=\"turntable\"):g=\"turntable\")}else g=\"turntable\";r(\"dragmode\",g),r(\"hovermode\",n.getDfltFromLayout(\"hovermode\"))}t.exports=function(t,e,r){var i=e._basePlotModules.length>1;o(t,e,r,{type:u,attributes:l,handleDefaults:h,fullLayout:e,font:e.font,fullData:r,getDfltFromLayout:function(e){if(!i)return n.validate(t[e],l[e])?t[e]:void 0},autotypenumbersDflt:e.autotypenumbers,paper_bgcolor:e.paper_bgcolor,calendar:e.calendar})}},77168:function(t,e,r){\"use strict\";var n=r(63397),i=r(13792).u,a=r(93049).extendFlat,o=r(34809).counterRegex;function s(t,e,r){return{x:{valType:\"number\",dflt:t,editType:\"camera\"},y:{valType:\"number\",dflt:e,editType:\"camera\"},z:{valType:\"number\",dflt:r,editType:\"camera\"},editType:\"camera\"}}t.exports={_arrayAttrRegexps:[o(\"scene\",\".annotations\",!0)],bgcolor:{valType:\"color\",dflt:\"rgba(0,0,0,0)\",editType:\"plot\"},camera:{up:a(s(0,0,1),{}),center:a(s(0,0,0),{}),eye:a(s(1.25,1.25,1.25),{}),projection:{type:{valType:\"enumerated\",values:[\"perspective\",\"orthographic\"],dflt:\"perspective\",editType:\"calc\"},editType:\"calc\"},editType:\"camera\"},domain:i({name:\"scene\",editType:\"plot\"}),aspectmode:{valType:\"enumerated\",values:[\"auto\",\"cube\",\"data\",\"manual\"],dflt:\"auto\",editType:\"plot\",impliedEdits:{\"aspectratio.x\":void 0,\"aspectratio.y\":void 0,\"aspectratio.z\":void 0}},aspectratio:{x:{valType:\"number\",min:0,editType:\"plot\",impliedEdits:{\"^aspectmode\":\"manual\"}},y:{valType:\"number\",min:0,editType:\"plot\",impliedEdits:{\"^aspectmode\":\"manual\"}},z:{valType:\"number\",min:0,editType:\"plot\",impliedEdits:{\"^aspectmode\":\"manual\"}},editType:\"plot\",impliedEdits:{aspectmode:\"manual\"}},xaxis: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\"}}}},64087:function(t,e,r){\"use strict\";var n=r(55010),i=[\"xaxis\",\"yaxis\",\"zaxis\"];function a(){this.enabled=[!0,!0,!0],this.colors=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.drawSides=[!0,!0,!0],this.lineWidth=[1,1,1]}a.prototype.merge=function(t){for(var e=0;e<3;++e){var r=t[i[e]];r.visible?(this.enabled[e]=r.showspikes,this.colors[e]=n(r.spikecolor),this.drawSides[e]=r.spikesides,this.lineWidth[e]=r.spikethickness):(this.enabled[e]=!1,this.drawSides[e]=!1)}},t.exports=function(t){var e=new a;return e.merge(t),e}},32412:function(t,e,r){\"use strict\";t.exports=function(t){for(var e=t.axesOptions,r=t.glplot.axesPixels,s=t.fullSceneLayout,l=[[],[],[]],c=0;c<3;++c){var u=s[a[c]];if(u._length=(r[c].hi-r[c].lo)*r[c].pixelsPerDataUnit/t.dataScale[c],Math.abs(u._length)===1/0||isNaN(u._length))l[c]=[];else{u._input_range=u.range.slice(),u.range[0]=r[c].lo/t.dataScale[c],u.range[1]=r[c].hi/t.dataScale[c],u._m=1/(t.dataScale[c]*r[c].pixelsPerDataUnit),u.range[0]===u.range[1]&&(u.range[0]-=1,u.range[1]+=1);var h=u.tickmode;if(\"auto\"===u.tickmode){u.tickmode=\"linear\";var f=u.nticks||i.constrain(u._length/40,4,9);n.autoTicks(u,Math.abs(u.range[1]-u.range[0])/f)}for(var p=n.calcTicks(u,{msUTC:!0}),d=0;d<p.length;++d)p[d].x=p[d].x*t.dataScale[c],\"date\"===u.type&&(p[d].text=p[d].text.replace(/\\<br\\>/g,\" \"));l[c]=p,u.tickmode=h}}for(e.ticks=l,c=0;c<3;++c)for(o[c]=.5*(t.glplot.bounds[0][c]+t.glplot.bounds[1][c]),d=0;d<2;++d)e.bounds[d][c]=t.glplot.bounds[d][c];t.contourLevels=function(t){for(var e=new Array(3),r=0;r<3;++r){for(var n=t[r],i=new Array(n.length),a=0;a<n.length;++a)i[a]=n[a].x;e[r]=i}return e}(l)};var n=r(29714),i=r(34809),a=[\"xaxis\",\"yaxis\",\"zaxis\"],o=[0,0,0]},25802:function(t){\"use strict\";function e(t,e){var r,n,i=[0,0,0,0];for(r=0;r<4;++r)for(n=0;n<4;++n)i[n]+=t[4*r+n]*e[r];return i}t.exports=function(t,r){return e(t.projection,e(t.view,e(t.model,[r[0],r[1],r[2],1])))}},20299:function(t,e,r){\"use strict\";var n,i,a=r(99098).gl_plot3d,o=a.createCamera,s=a.createScene,l=r(22248),c=r(74043),u=r(33626),h=r(34809),f=h.preserveDrawingBuffer(),p=r(29714),d=r(32141),m=r(55010),g=r(97464),y=r(25802),v=r(95701),x=r(64087),_=r(32412),b=r(32919).applyAutorangeOptions,w=!1;function T(t,e){var r=document.createElement(\"div\"),n=t.container;this.graphDiv=t.graphDiv;var i=document.createElementNS(\"http://www.w3.org/2000/svg\",\"svg\");i.style.position=\"absolute\",i.style.top=i.style.left=\"0px\",i.style.width=i.style.height=\"100%\",i.style[\"z-index\"]=20,i.style[\"pointer-events\"]=\"none\",r.appendChild(i),this.svgContainer=i,r.id=t.id,r.style.position=\"absolute\",r.style.top=r.style.left=\"0px\",r.style.width=r.style.height=\"100%\",n.appendChild(r),this.fullLayout=e,this.id=t.id||\"scene\",this.fullSceneLayout=e[this.id],this.plotArgs=[[],{},{}],this.axesOptions=v(e,e[this.id]),this.spikeOptions=x(e[this.id]),this.container=r,this.staticMode=!!t.staticPlot,this.pixelRatio=this.pixelRatio||t.plotGlPixelRatio||2,this.dataScale=[1,1,1],this.contourLevels=[[],[],[]],this.convertAnnotations=u.getComponentMethod(\"annotations3d\",\"convert\"),this.drawAnnotations=u.getComponentMethod(\"annotations3d\",\"draw\"),this.initializeGLPlot()}var k=T.prototype;k.prepareOptions=function(){var t=this,e={canvas:t.canvas,gl:t.gl,glOptions:{preserveDrawingBuffer:f,premultipliedAlpha:!0,antialias:!0},container:t.container,axes:t.axesOptions,spikes:t.spikeOptions,pickRadius:10,snapToData:!0,autoScale:!0,autoBounds:!1,cameraObject:t.camera,pixelRatio:t.pixelRatio};if(t.staticMode){if(!(i||(n=document.createElement(\"canvas\"),i=l({canvas:n,preserveDrawingBuffer:!0,premultipliedAlpha:!0,antialias:!0}))))throw new Error(\"error creating static canvas/context for image server\");e.gl=i,e.canvas=n}return e};var A=!0;k.tryCreatePlot=function(){var t=this,e=t.prepareOptions(),r=!0;try{t.glplot=s(e)}catch(n){if(t.staticMode||!A||f)r=!1;else{h.warn([\"webgl setup failed possibly due to\",\"false preserveDrawingBuffer config.\",\"The mobile/tablet device may not be detected by is-mobile module.\",\"Enabling preserveDrawingBuffer in second attempt to create webgl scene...\"].join(\" \"));try{f=e.glOptions.preserveDrawingBuffer=!0,t.glplot=s(e)}catch(t){f=e.glOptions.preserveDrawingBuffer=!1,r=!1}}}return A=!1,r},k.initializeGLCamera=function(){var t=this,e=t.fullSceneLayout.camera,r=\"orthographic\"===e.projection.type;t.camera=o(t.container,{center:[e.center.x,e.center.y,e.center.z],eye:[e.eye.x,e.eye.y,e.eye.z],up:[e.up.x,e.up.y,e.up.z],_ortho:r,zoomMin:.01,zoomMax:100,mode:\"orbit\"})},k.initializeGLPlot=function(){var t=this;if(t.initializeGLCamera(),!t.tryCreatePlot())return g(t);t.traces={},t.make4thDimension();var e=t.graphDiv,r=e.layout,n=function(){var e={};return t.isCameraChanged(r)&&(e[t.id+\".camera\"]=t.getCamera()),t.isAspectChanged(r)&&(e[t.id+\".aspectratio\"]=t.glplot.getAspectratio(),\"manual\"!==r[t.id].aspectmode&&(t.fullSceneLayout.aspectmode=r[t.id].aspectmode=e[t.id+\".aspectmode\"]=\"manual\")),e},i=function(t){if(!1!==t.fullSceneLayout.dragmode){var e=n();t.saveLayout(r),t.graphDiv.emit(\"plotly_relayout\",e)}};return t.glplot.canvas&&(t.glplot.canvas.addEventListener(\"mouseup\",(function(){i(t)})),t.glplot.canvas.addEventListener(\"touchstart\",(function(){w=!0})),t.glplot.canvas.addEventListener(\"wheel\",(function(r){if(e._context._scrollZoom.gl3d){if(t.camera._ortho){var n=r.deltaX>r.deltaY?1.1:1/1.1,a=t.glplot.getAspectratio();t.glplot.setAspectratio({x:n*a.x,y:n*a.y,z:n*a.z})}i(t)}}),!!c&&{passive:!1}),t.glplot.canvas.addEventListener(\"mousemove\",(function(){if(!1!==t.fullSceneLayout.dragmode&&0!==t.camera.mouseListener.buttons){var e=n();t.graphDiv.emit(\"plotly_relayouting\",e)}})),t.staticMode||t.glplot.canvas.addEventListener(\"webglcontextlost\",(function(r){e&&e.emit&&e.emit(\"plotly_webglcontextlost\",{event:r,layer:t.id})}),!1)),t.glplot.oncontextloss=function(){t.recoverContext()},t.glplot.onrender=function(){t.render()},!0},k.render=function(){var t,e=this,r=e.graphDiv,n=e.svgContainer,i=e.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),_(e),e.glplot.axes.update(e.axesOptions);for(var c=Object.keys(e.traces),u=null,f=e.glplot.selection,m=0;m<c.length;++m)\"skip\"!==(t=e.traces[c[m]]).data.hoverinfo&&t.handlePick(f)&&(u=t),t.setContourLevels&&t.setContourLevels();function g(t,r,n){var i=e.fullSceneLayout[t+\"axis\"];return\"log\"!==i.type&&(r=i.d2l(r)),p.hoverLabelText(i,r,n)}if(null!==u){var v=y(e.glplot.cameraParams,f.dataCoordinate);t=u.data;var x,b=r._fullData[t.index],T=f.index,k={xLabel:g(\"x\",f.traceCoordinate[0],t.xhoverformat),yLabel:g(\"y\",f.traceCoordinate[1],t.yhoverformat),zLabel:g(\"z\",f.traceCoordinate[2],t.zhoverformat)},A=d.castHoverinfo(b,e.fullLayout,T),M=(A||\"\").split(\"+\"),S=A&&\"all\"===A;b.hovertemplate||S||(-1===M.indexOf(\"x\")&&(k.xLabel=void 0),-1===M.indexOf(\"y\")&&(k.yLabel=void 0),-1===M.indexOf(\"z\")&&(k.zLabel=void 0),-1===M.indexOf(\"text\")&&(f.textLabel=void 0),-1===M.indexOf(\"name\")&&(u.name=void 0));var E=[];\"cone\"===t.type||\"streamtube\"===t.type?(k.uLabel=g(\"x\",f.traceCoordinate[3],t.uhoverformat),(S||-1!==M.indexOf(\"u\"))&&E.push(\"u: \"+k.uLabel),k.vLabel=g(\"y\",f.traceCoordinate[4],t.vhoverformat),(S||-1!==M.indexOf(\"v\"))&&E.push(\"v: \"+k.vLabel),k.wLabel=g(\"z\",f.traceCoordinate[5],t.whoverformat),(S||-1!==M.indexOf(\"w\"))&&E.push(\"w: \"+k.wLabel),k.normLabel=f.traceCoordinate[6].toPrecision(3),(S||-1!==M.indexOf(\"norm\"))&&E.push(\"norm: \"+k.normLabel),\"streamtube\"===t.type&&(k.divergenceLabel=f.traceCoordinate[7].toPrecision(3),(S||-1!==M.indexOf(\"divergence\"))&&E.push(\"divergence: \"+k.divergenceLabel)),f.textLabel&&E.push(f.textLabel),x=E.join(\"<br>\")):\"isosurface\"===t.type||\"volume\"===t.type?(k.valueLabel=p.hoverLabelText(e._mockAxis,e._mockAxis.d2l(f.traceCoordinate[3]),t.valuehoverformat),E.push(\"value: \"+k.valueLabel),f.textLabel&&E.push(f.textLabel),x=E.join(\"<br>\")):x=f.textLabel;var C={x:f.traceCoordinate[0],y:f.traceCoordinate[1],z:f.traceCoordinate[2],data:b._input,fullData:b,curveNumber:b.index,pointNumber:T};d.appendArrayPointValue(C,b,T),t._module.eventData&&(C=b._module.eventData(C,f,b,{},T));var L={points:[C]};if(e.fullSceneLayout.hovermode){var I=[];d.loneHover({trace:b,x:(.5+.5*v[0]/v[3])*s,y:(.5-.5*v[1]/v[3])*l,xLabel:k.xLabel,yLabel:k.yLabel,zLabel:k.zLabel,text:x,name:u.name,color:d.castHoverOption(b,T,\"bgcolor\")||u.color,borderColor:d.castHoverOption(b,T,\"bordercolor\"),fontFamily:d.castHoverOption(b,T,\"font.family\"),fontSize:d.castHoverOption(b,T,\"font.size\"),fontColor:d.castHoverOption(b,T,\"font.color\"),nameLength:d.castHoverOption(b,T,\"namelength\"),textAlign:d.castHoverOption(b,T,\"align\"),hovertemplate:h.castOption(b,T,\"hovertemplate\"),hovertemplateLabels:h.extendFlat({},C,k),eventData:[C]},{container:n,gd:r,inOut_bbox:I}),C.bbox=I[0]}f.distance<5&&(f.buttons||w)?r.emit(\"plotly_click\",L):r.emit(\"plotly_hover\",L),this.oldEventData=L}else d.loneUnhover(n),this.oldEventData&&r.emit(\"plotly_unhover\",this.oldEventData),this.oldEventData=void 0;e.drawAnnotations(e)},k.recoverContext=function(){var t=this;t.glplot.dispose();var e=function(){t.glplot.gl.isContextLost()?requestAnimationFrame(e):t.initializeGLPlot()?t.plot.apply(t,t.plotArgs):h.error(\"Catastrophic and unrecoverable WebGL error. Context lost.\")};requestAnimationFrame(e)};var M=[\"xaxis\",\"yaxis\",\"zaxis\"];function S(t,e,r){for(var n=t.fullSceneLayout,i=0;i<3;i++){var a=M[i],o=a.charAt(0),s=n[a],l=e[o],c=e[o+\"calendar\"],u=e[\"_\"+o+\"length\"];if(h.isArrayOrTypedArray(l))for(var f,p=0;p<(u||l.length);p++)if(h.isArrayOrTypedArray(l[p]))for(var d=0;d<l[p].length;++d)f=s.d2l(l[p][d],0,c),!isNaN(f)&&isFinite(f)&&(r[0][i]=Math.min(r[0][i],f),r[1][i]=Math.max(r[1][i],f));else f=s.d2l(l[p],0,c),!isNaN(f)&&isFinite(f)&&(r[0][i]=Math.min(r[0][i],f),r[1][i]=Math.max(r[1][i],f));else r[0][i]=Math.min(r[0][i],0),r[1][i]=Math.max(r[1][i],u-1)}}k.plot=function(t,e,r){var n=this;if(n.plotArgs=[t,e,r],!n.glplot.contextLost){var i,a,o,s,l,c,u=e[n.id],h=r[n.id];n.fullLayout=e,n.fullSceneLayout=u,n.axesOptions.merge(e,u),n.spikeOptions.merge(u),n.setViewport(u),n.updateFx(u.dragmode,u.hovermode),n.camera.enableWheel=n.graphDiv._context._scrollZoom.gl3d,n.glplot.setClearColor(m(u.bgcolor)),n.setConvert(l),t?Array.isArray(t)||(t=[t]):t=[];var f=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]];for(o=0;o<t.length;++o)!0===(i=t[o]).visible&&0!==i._length&&S(this,i,f);!function(t,e){for(var r=t.fullSceneLayout,n=r.annotations||[],i=0;i<3;i++)for(var a=M[i],o=a.charAt(0),s=r[a],l=0;l<n.length;l++){var c=n[l];if(c.visible){var u=s.r2l(c[o]);!isNaN(u)&&isFinite(u)&&(e[0][i]=Math.min(e[0][i],u),e[1][i]=Math.max(e[1][i],u))}}}(this,f);var p=[1,1,1];for(s=0;s<3;++s)f[1][s]===f[0][s]?p[s]=1:p[s]=1/(f[1][s]-f[0][s]);for(n.dataScale=p,n.convertAnnotations(this),o=0;o<t.length;++o)!0===(i=t[o]).visible&&0!==i._length&&((a=n.traces[i.uid])?a.data.type===i.type?a.update(i):(a.dispose(),a=i._module.plot(this,i),n.traces[i.uid]=a):(a=i._module.plot(this,i),n.traces[i.uid]=a),a.name=i.name);var d=Object.keys(n.traces);t:for(o=0;o<d.length;++o){for(s=0;s<t.length;++s)if(t[s].uid===d[o]&&!0===t[s].visible&&0!==t[s]._length)continue t;(a=n.traces[d[o]]).dispose(),delete n.traces[d[o]]}n.glplot.objects.sort((function(t,e){return t._trace.data.index-e._trace.data.index}));var g,y=[[0,0,0],[0,0,0]],v=[],x={};for(o=0;o<3;++o){var _;if((c=(l=u[M[o]]).type)in x?(x[c].acc*=p[o],x[c].count+=1):x[c]={acc:p[o],count:1},l.autorange){y[0][o]=1/0,y[1][o]=-1/0;var w=n.glplot.objects,T=n.fullSceneLayout.annotations||[],k=l._name.charAt(0);for(s=0;s<w.length;s++){var A=w[s],E=A.bounds,C=A._trace.data._pad||0;\"ErrorBars\"===A.constructor.name&&l._lowerLogErrorBound?y[0][o]=Math.min(y[0][o],l._lowerLogErrorBound):y[0][o]=Math.min(y[0][o],E[0][o]/p[o]-C),y[1][o]=Math.max(y[1][o],E[1][o]/p[o]+C)}for(s=0;s<T.length;s++){var L=T[s];if(L.visible){var I=l.r2l(L[k]);y[0][o]=Math.min(y[0][o],I),y[1][o]=Math.max(y[1][o],I)}}if(\"rangemode\"in l&&\"tozero\"===l.rangemode&&(y[0][o]=Math.min(y[0][o],0),y[1][o]=Math.max(y[1][o],0)),y[0][o]>y[1][o])y[0][o]=-1,y[1][o]=1;else{var P=y[1][o]-y[0][o];y[0][o]-=P/32,y[1][o]+=P/32}if(_=[y[0][o],y[1][o]],_=b(_,l),y[0][o]=_[0],y[1][o]=_[1],l.isReversed()){var z=y[0][o];y[0][o]=y[1][o],y[1][o]=z}}else _=l.range,y[0][o]=l.r2l(_[0]),y[1][o]=l.r2l(_[1]);y[0][o]===y[1][o]&&(y[0][o]-=1,y[1][o]+=1),v[o]=y[1][o]-y[0][o],l.range=[y[0][o],y[1][o]],l.limitRange(),n.glplot.setBounds(o,{min:l.range[0]*p[o],max:l.range[1]*p[o]})}var O=u.aspectmode;if(\"cube\"===O)g=[1,1,1];else if(\"manual\"===O){var D=u.aspectratio;g=[D.x,D.y,D.z]}else{if(\"auto\"!==O&&\"data\"!==O)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 F=x[c=(l=u[M[o]]).type];R[o]=Math.pow(F.acc,1/F.count)/p[o]}g=\"data\"===O||Math.max.apply(null,R)/Math.min.apply(null,R)<=4?R:[1,1,1]}u.aspectratio.x=h.aspectratio.x=g[0],u.aspectratio.y=h.aspectratio.y=g[1],u.aspectratio.z=h.aspectratio.z=g[2],n.glplot.setAspectratio(u.aspectratio),n.viewInitial.aspectratio||(n.viewInitial.aspectratio={x:u.aspectratio.x,y:u.aspectratio.y,z:u.aspectratio.z}),n.viewInitial.aspectmode||(n.viewInitial.aspectmode=u.aspectmode);var B=u.domain||null,N=e._size||null;if(B&&N){var j=n.container.style;j.position=\"absolute\",j.left=N.l+B.x[0]*N.w+\"px\",j.top=N.t+(1-B.y[1])*N.h+\"px\",j.width=N.w*(B.x[1]-B.x[0])+\"px\",j.height=N.h*(B.y[1]-B.y[0])+\"px\"}n.glplot.redraw()}},k.destroy=function(){var t=this;t.glplot&&(t.camera.mouseListener.enabled=!1,t.container.removeEventListener(\"wheel\",t.camera.wheelListener),t.camera=null,t.glplot.dispose(),t.container.parentNode.removeChild(t.container),t.glplot=null)},k.getCamera=function(){var t,e=this;return e.camera.view.recalcMatrix(e.camera.view.lastT()),{up:{x:(t=e.camera).up[0],y:t.up[1],z:t.up[2]},center:{x:t.center[0],y:t.center[1],z:t.center[2]},eye:{x:t.eye[0],y:t.eye[1],z:t.eye[2]},projection:{type:!0===t._ortho?\"orthographic\":\"perspective\"}}},k.setViewport=function(t){var e,r=this,n=t.camera;r.camera.lookAt.apply(this,[[(e=n).eye.x,e.eye.y,e.eye.z],[e.center.x,e.center.y,e.center.z],[e.up.x,e.up.y,e.up.z]]),r.glplot.setAspectratio(t.aspectratio),\"orthographic\"===n.projection.type!==r.camera._ortho&&(r.glplot.redraw(),r.glplot.clearRGBA(),r.glplot.dispose(),r.initializeGLPlot())},k.isCameraChanged=function(t){var e=this.getCamera(),r=h.nestedProperty(t,this.id+\".camera\").get();function n(t,e,r,n){var i=[\"up\",\"center\",\"eye\"],a=[\"x\",\"y\",\"z\"];return e[i[r]]&&t[i[r]][a[n]]===e[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(e,r,a,o)){i=!0;break}(!r.projection||e.projection&&e.projection.type!==r.projection.type)&&(i=!0)}return i},k.isAspectChanged=function(t){var e=this.glplot.getAspectratio(),r=h.nestedProperty(t,this.id+\".aspectratio\").get();return void 0===r||r.x!==e.x||r.y!==e.y||r.z!==e.z},k.saveLayout=function(t){var e,r,n,i,a,o,s=this,l=s.fullLayout,c=s.isCameraChanged(t),f=s.isAspectChanged(t),p=c||f;if(p){var d={};c&&(e=s.getCamera(),n=(r=h.nestedProperty(t,s.id+\".camera\")).get(),d[s.id+\".camera\"]=n),f&&(i=s.glplot.getAspectratio(),o=(a=h.nestedProperty(t,s.id+\".aspectratio\")).get(),d[s.id+\".aspectratio\"]=o),u.call(\"_storeDirectGUIEdit\",t,l._preGUI,d),c&&(r.set(e),h.nestedProperty(l,s.id+\".camera\").set(e)),f&&(a.set(i),h.nestedProperty(l,s.id+\".aspectratio\").set(i),s.glplot.redraw())}return p},k.updateFx=function(t,e){var r=this,n=r.camera;if(n)if(\"orbit\"===t)n.mode=\"orbit\",n.keyBindingMode=\"rotate\";else if(\"turntable\"===t){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,c=o.up.z;if(c/Math.sqrt(s*s+l*l+c*c)<.999){var f=r.id+\".camera.up\",p={x:0,y:0,z:1},d={};d[f]=p;var m=i.layout;u.call(\"_storeDirectGUIEdit\",m,a._preGUI,d),o.up=p,h.nestedProperty(m,f).set(p)}}else n.keyBindingMode=t;r.fullSceneLayout.hovermode=e},k.toImage=function(t){var e=this;t||(t=\"png\"),e.staticMode&&e.container.appendChild(n),e.glplot.redraw();var r=e.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(t,e,r){for(var n=0,i=r-1;n<i;++n,--i)for(var a=0;a<e;++a)for(var o=0;o<4;++o){var s=4*(e*n+a)+o,l=4*(e*i+a)+o,c=t[s];t[s]=t[l],t[l]=c}}(o,i,a),function(t,e,r){for(var n=0;n<r;++n)for(var i=0;i<e;++i){var a=4*(e*n+i),o=t[a+3];if(o>0)for(var s=255/o,l=0;l<3;++l)t[a+l]=Math.min(s*t[a+l],255)}}(o,i,a);var s=document.createElement(\"canvas\");s.width=i,s.height=a;var l,c=s.getContext(\"2d\",{willReadFrequently:!0}),u=c.createImageData(i,a);switch(u.data.set(o),c.putImageData(u,0,0),t){case\"jpeg\":l=s.toDataURL(\"image/jpeg\");break;case\"webp\":l=s.toDataURL(\"image/webp\");break;default:l=s.toDataURL(\"image/png\")}return e.staticMode&&e.container.removeChild(n),l},k.setConvert=function(){for(var t=0;t<3;t++){var e=this.fullSceneLayout[M[t]];p.setConvert(e,this.fullLayout),e.setScale=h.noop}},k.make4thDimension=function(){var t=this,e=t.graphDiv._fullLayout;t._mockAxis={type:\"linear\",showexponent:\"all\",exponentformat:\"B\"},p.setConvert(t._mockAxis,e)},t.exports=T},88239:function(t){\"use strict\";t.exports=function(t,e,r,n){n=n||t.length;for(var i=new Array(n),a=0;a<n;a++)i[a]=[t[a],e[a],r[a]];return i}},6704:function(t,e,r){\"use strict\";var n=r(80337),i=r(49722),a=r(10229),o=r(64101),s=r(52307),l=r(57891),c=r(93049).extendFlat,u=n({editType:\"calc\"});u.family.dflt='\"Open Sans\", verdana, arial, sans-serif',u.size.dflt=12,u.color.dflt=a.defaultLine,t.exports={font:u,title:{text:{valType:\"string\",editType:\"layoutstyle\"},font:n({editType:\"layoutstyle\"}),subtitle:{text:{valType:\"string\",editType:\"layoutstyle\"},font:n({editType:\"layoutstyle\"}),editType:\"layoutstyle\"},xref:{valType:\"enumerated\",dflt:\"container\",values:[\"container\",\"paper\"],editType:\"layoutstyle\"},yref:{valType:\"enumerated\",dflt:\"container\",values:[\"container\",\"paper\"],editType:\"layoutstyle\"},x:{valType:\"number\",min:0,max:1,dflt:.5,editType:\"layoutstyle\"},y:{valType:\"number\",min:0,max:1,dflt:\"auto\",editType:\"layoutstyle\"},xanchor:{valType:\"enumerated\",dflt:\"auto\",values:[\"auto\",\"left\",\"center\",\"right\"],editType:\"layoutstyle\"},yanchor:{valType:\"enumerated\",dflt:\"auto\",values:[\"auto\",\"top\",\"middle\",\"bottom\"],editType:\"layoutstyle\"},pad:c(l({editType:\"layoutstyle\"}),{}),automargin:{valType:\"boolean\",dflt:!1,editType:\"plot\"},editType:\"layoutstyle\"},uniformtext:{mode:{valType:\"enumerated\",values:[!1,\"hide\",\"show\"],dflt:!1,editType:\"plot\"},minsize:{valType:\"number\",min:0,dflt:0,editType:\"plot\"},editType:\"plot\"},autosize:{valType:\"boolean\",dflt:!1,editType:\"none\"},width:{valType:\"number\",min:10,dflt:700,editType:\"plot\"},height:{valType:\"number\",min:10,dflt:450,editType:\"plot\"},minreducedwidth:{valType:\"number\",min:2,dflt:64,editType:\"plot\"},minreducedheight:{valType:\"number\",min:2,dflt:64,editType:\"plot\"},margin:{l:{valType:\"number\",min:0,dflt:80,editType:\"plot\"},r:{valType:\"number\",min:0,dflt:80,editType:\"plot\"},t:{valType:\"number\",min:0,dflt:100,editType:\"plot\"},b:{valType:\"number\",min:0,dflt:80,editType:\"plot\"},pad:{valType:\"number\",min:0,dflt:0,editType:\"plot\"},autoexpand:{valType:\"boolean\",dflt:!0,editType:\"plot\"},editType:\"plot\"},computed:{valType:\"any\",editType:\"none\"},paper_bgcolor:{valType:\"color\",dflt:a.background,editType:\"plot\"},plot_bgcolor:{valType:\"color\",dflt:a.background,editType:\"layoutstyle\"},autotypenumbers:{valType:\"enumerated\",values:[\"convert types\",\"strict\"],dflt:\"convert types\",editType:\"calc\"},separators:{valType:\"string\",editType:\"plot\"},hidesources:{valType:\"boolean\",dflt:!1,editType:\"plot\"},showlegend:{valType:\"boolean\",editType:\"legend\"},colorway:{valType:\"colorlist\",dflt:a.defaults,editType:\"calc\"},datarevision:{valType:\"any\",editType:\"calc\"},uirevision:{valType:\"any\",editType:\"none\"},editrevision:{valType:\"any\",editType:\"none\"},selectionrevision:{valType:\"any\",editType:\"none\"},template:{valType:\"any\",editType:\"calc\"},newshape:o.newshape,activeshape:o.activeshape,newselection:s.newselection,activeselection:s.activeselection,meta:{valType:\"any\",arrayOk:!0,editType:\"plot\"},transition:c({},i.transition,{editType:\"none\"}),_deprecated:{title:{valType:\"string\",editType:\"layoutstyle\"},titlefont:n({editType:\"layoutstyle\"})}}},8814:function(t,e,r){\"use strict\";var n=r(62994),i=r(37071),a=\"https://basemaps.cartocdn.com/gl/positron-gl-style/style.json\",o=\"https://basemaps.cartocdn.com/gl/dark-matter-gl-style/style.json\",s=\"https://basemaps.cartocdn.com/gl/voyager-gl-style/style.json\",l={basic:s,streets:s,outdoors:s,light:a,dark:o,satellite:r(51962),\"satellite-streets\":i,\"open-street-map\":{id:\"osm\",version:8,sources:{\"plotly-osm-tiles\":{type:\"raster\",attribution:'© <a target=\"_blank\" href=\"https://www.openstreetmap.org/copyright\">OpenStreetMap</a> contributors',tiles:[\"https://tile.openstreetmap.org/{z}/{x}/{y}.png\"],tileSize:256}},layers:[{id:\"plotly-osm-tiles\",type:\"raster\",source:\"plotly-osm-tiles\",minzoom:0,maxzoom:22}],glyphs:\"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf\"},\"white-bg\":{id:\"white-bg\",version:8,sources:{},layers:[{id:\"white-bg\",type:\"background\",paint:{\"background-color\":\"#FFFFFF\"},minzoom:0,maxzoom:22}],glyphs:\"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf\"},\"carto-positron\":a,\"carto-darkmatter\":o,\"carto-voyager\":s,\"carto-positron-nolabels\":\"https://basemaps.cartocdn.com/gl/positron-nolabels-gl-style/style.json\",\"carto-darkmatter-nolabels\":\"https://basemaps.cartocdn.com/gl/dark-matter-nolabels-gl-style/style.json\",\"carto-voyager-nolabels\":\"https://basemaps.cartocdn.com/gl/voyager-nolabels-gl-style/style.json\"},c=n(l);t.exports={styleValueDflt:\"basic\",stylesMap:l,styleValuesMap:c,traceLayerPrefix:\"plotly-trace-layer-\",layoutLayerPrefix:\"plotly-layout-layer-\",missingStyleErrorMsg:[\"No valid maplibre style found, please set `map.style` to one of:\",c.join(\", \"),\"or use a tile service.\"].join(\"\\n\"),mapOnErrorMsg:\"Map error.\"}},4657:function(t,e,r){\"use strict\";var n=r(34809);t.exports=function(t,e){var r=t.split(\" \"),i=r[0],a=r[1],o=n.isArrayOrTypedArray(e)?n.mean(e):e,s=.5+o/100,l=1.5+o/100,c=[\"\",\"\"],u=[0,0];switch(i){case\"top\":c[0]=\"top\",u[1]=-l;break;case\"bottom\":c[0]=\"bottom\",u[1]=l}switch(a){case\"left\":c[1]=\"right\",u[0]=-s;break;case\"right\":c[1]=\"left\",u[0]=s}return{anchor:c[0]&&c[1]?c.join(\"-\"):c[0]?c[0]:c[1]?c[1]:\"center\",offset:u}}},34091:function(t,e,r){\"use strict\";var n=r(34809),i=n.strTranslate,a=n.strScale,o=r(4173).fX,s=r(62972),l=r(45568),c=r(62203),u=r(30635),h=r(38793),f=\"map\";e.name=f,e.attr=\"subplot\",e.idRoot=f,e.idRegex=e.attrRegex=n.counterRegex(f),e.attributes={subplot:{valType:\"subplotid\",dflt:\"map\",editType:\"calc\"}},e.layoutAttributes=r(8257),e.supplyLayoutDefaults=r(97446),e.plot=function(t){for(var e=t._fullLayout,r=t.calcdata,i=e._subplots[f],a=0;a<i.length;a++){var s=i[a],l=o(r,f,s),c=e[s],u=c._subplot;u||(u=new h(t,s),e[s]._subplot=u),u.viewInitial||(u.viewInitial={center:n.extendFlat({},c.center),zoom:c.zoom,bearing:c.bearing,pitch:c.pitch}),u.plot(l,e,t._promises)}},e.clean=function(t,e,r,n){for(var i=n._subplots[f]||[],a=0;a<i.length;a++){var o=i[a];!e[o]&&n[o]._subplot&&n[o]._subplot.destroy()}},e.toSVG=function(t){for(var e=t._fullLayout,r=e._subplots[f],n=e._size,o=0;o<r.length;o++){var h=e[r[o]],p=h.domain,d=h._subplot.toImage(\"png\");e._glimages.append(\"svg:image\").attr({xmlns:s.svg,\"xlink:href\":d,x:n.l+n.w*p.x[0],y:n.t+n.h*(1-p.y[1]),width:n.w*(p.x[1]-p.x[0]),height:n.h*(p.y[1]-p.y[0]),preserveAspectRatio:\"none\"});var m=l.select(h._subplot.div).select(\".maplibregl-ctrl-attrib\").text().replace(\"Improve this map\",\"\"),g=e._glimages.append(\"g\"),y=g.append(\"text\");y.text(m).classed(\"static-attribution\",!0).attr({\"font-size\":12,\"font-family\":\"Arial\",color:\"rgba(0, 0, 0, 0.75)\",\"text-anchor\":\"end\",\"data-unformatted\":m});var v=c.bBox(y.node()),x=n.w*(p.x[1]-p.x[0]);if(v.width>x/2){var _=m.split(\"|\").join(\"<br>\");y.text(_).attr(\"data-unformatted\",_).call(u.convertToTspans,t),v=c.bBox(y.node())}y.attr(\"transform\",i(-3,8-v.height)),g.insert(\"rect\",\".static-attribution\").attr({x:-v.width-6,y:-v.height-3,width:v.width+6,height:v.height+3,fill:\"rgba(255, 255, 255, 0.75)\"});var b=1;v.width+6>x&&(b=x/(v.width+6));var w=[n.l+n.w*p.x[1],n.t+n.h*(1-p.y[0])];g.attr(\"transform\",i(w[0],w[1])+a(b))}},e.updateFx=function(t){for(var e=t._fullLayout,r=e._subplots[f],n=0;n<r.length;n++)e[r[n]]._subplot.updateFx(e)}},33389:function(t,e,r){\"use strict\";var n=r(34809),i=r(30635).sanitizeHTML,a=r(4657),o=r(8814);function s(t,e){this.subplot=t,this.uid=t.uid+\"-\"+e,this.index=e,this.idSource=\"source-\"+this.uid,this.idLayer=o.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var l=s.prototype;function c(t){if(!t.visible)return!1;var e=t.source;if(Array.isArray(e)&&e.length>0){for(var r=0;r<e.length;r++)if(\"string\"!=typeof e[r]||0===e[r].length)return!1;return!0}return n.isPlainObject(e)||\"string\"==typeof e&&e.length>0}function u(t){var e={},r={};switch(t.type){case\"circle\":n.extendFlat(r,{\"circle-radius\":t.circle.radius,\"circle-color\":t.color,\"circle-opacity\":t.opacity});break;case\"line\":n.extendFlat(r,{\"line-width\":t.line.width,\"line-color\":t.color,\"line-opacity\":t.opacity,\"line-dasharray\":t.line.dash});break;case\"fill\":n.extendFlat(r,{\"fill-color\":t.color,\"fill-outline-color\":t.fill.outlinecolor,\"fill-opacity\":t.opacity});break;case\"symbol\":var i=t.symbol,o=a(i.textposition,i.iconsize);n.extendFlat(e,{\"icon-image\":i.icon+\"-15\",\"icon-size\":i.iconsize/10,\"text-field\":i.text,\"text-size\":i.textfont.size,\"text-anchor\":o.anchor,\"text-offset\":o.offset,\"symbol-placement\":i.placement}),n.extendFlat(r,{\"icon-color\":t.color,\"text-color\":i.textfont.color,\"text-opacity\":t.opacity});break;case\"raster\":n.extendFlat(r,{\"raster-fade-duration\":0,\"raster-opacity\":t.opacity})}return{layout:e,paint:r}}l.update=function(t){this.visible?this.needsNewImage(t)?this.updateImage(t):this.needsNewSource(t)?(this.removeLayer(),this.updateSource(t),this.updateLayer(t)):this.needsNewLayer(t)?this.updateLayer(t):this.updateStyle(t):(this.updateSource(t),this.updateLayer(t)),this.visible=c(t)},l.needsNewImage=function(t){return this.subplot.map.getSource(this.idSource)&&\"image\"===this.sourceType&&\"image\"===t.sourcetype&&(this.source!==t.source||JSON.stringify(this.coordinates)!==JSON.stringify(t.coordinates))},l.needsNewSource=function(t){return this.sourceType!==t.sourcetype||JSON.stringify(this.source)!==JSON.stringify(t.source)||this.layerType!==t.type},l.needsNewLayer=function(t){return this.layerType!==t.type||this.below!==this.subplot.belowLookup[\"layout-\"+this.index]},l.lookupBelow=function(){return this.subplot.belowLookup[\"layout-\"+this.index]},l.updateImage=function(t){this.subplot.map.getSource(this.idSource).updateImage({url:t.source,coordinates:t.coordinates});var e=this.findFollowingMapLayerId(this.lookupBelow());null!==e&&this.subplot.map.moveLayer(this.idLayer,e)},l.updateSource=function(t){var e=this.subplot.map;if(e.getSource(this.idSource)&&e.removeSource(this.idSource),this.sourceType=t.sourcetype,this.source=t.source,c(t)){var r=function(t){var e,r=t.sourcetype,n=t.source,a={type:r};return\"geojson\"===r?e=\"data\":\"vector\"===r?e=\"string\"==typeof n?\"url\":\"tiles\":\"raster\"===r?(e=\"tiles\",a.tileSize=256):\"image\"===r&&(e=\"url\",a.coordinates=t.coordinates),a[e]=n,t.sourceattribution&&(a.attribution=i(t.sourceattribution)),a}(t);e.addSource(this.idSource,r)}},l.findFollowingMapLayerId=function(t){if(\"traces\"===t)for(var e=this.subplot.getMapLayers(),r=0;r<e.length;r++){var n=e[r].id;if(\"string\"==typeof n&&0===n.indexOf(o.traceLayerPrefix)){t=n;break}}return t},l.updateLayer=function(t){var e=this.subplot,r=u(t),n=this.lookupBelow(),i=this.findFollowingMapLayerId(n);this.removeLayer(),c(t)&&e.addLayer({id:this.idLayer,source:this.idSource,\"source-layer\":t.sourcelayer||\"\",type:t.type,minzoom:t.minzoom,maxzoom:t.maxzoom,layout:r.layout,paint:r.paint},i),this.layerType=t.type,this.below=n},l.updateStyle=function(t){if(c(t)){var e=u(t);this.subplot.setOptions(this.idLayer,\"setLayoutProperty\",e.layout),this.subplot.setOptions(this.idLayer,\"setPaintProperty\",e.paint)}},l.removeLayer=function(){var t=this.subplot.map;t.getLayer(this.idLayer)&&t.removeLayer(this.idLayer)},l.dispose=function(){var t=this.subplot.map;t.getLayer(this.idLayer)&&t.removeLayer(this.idLayer),t.getSource(this.idSource)&&t.removeSource(this.idSource)},t.exports=function(t,e,r){var n=new s(t,e);return n.update(r),n}},8257:function(t,e,r){\"use strict\";var n=r(34809),i=r(78766).defaultLine,a=r(13792).u,o=r(80337),s=r(36640).textposition,l=r(13582).overrideAll,c=r(78032).templatedArray,u=r(8814),h=o({noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0});h.family.dflt=\"Open Sans Regular, Arial Unicode MS Regular\",(t.exports=l({_arrayAttrRegexps:[n.counterRegex(\"map\",\".layers\",!0)],domain:a({name:\"map\"}),style:{valType:\"any\",values:u.styleValuesMap,dflt:u.styleValueDflt},center:{lon:{valType:\"number\",dflt:0},lat:{valType:\"number\",dflt:0}},zoom:{valType:\"number\",dflt:1},bearing:{valType:\"number\",dflt:0},pitch:{valType:\"number\",dflt:0},bounds:{west:{valType:\"number\"},east:{valType:\"number\"},south:{valType:\"number\"},north:{valType:\"number\"}},layers:c(\"layer\",{visible:{valType:\"boolean\",dflt:!0},sourcetype:{valType:\"enumerated\",values:[\"geojson\",\"vector\",\"raster\",\"image\"],dflt:\"geojson\"},source:{valType:\"any\"},sourcelayer:{valType:\"string\",dflt:\"\"},sourceattribution:{valType:\"string\"},type:{valType:\"enumerated\",values:[\"circle\",\"line\",\"fill\",\"symbol\",\"raster\"],dflt:\"circle\"},coordinates:{valType:\"any\"},below:{valType:\"string\"},color:{valType:\"color\",dflt:i},opacity:{valType:\"number\",min:0,max:1,dflt:1},minzoom:{valType:\"number\",min:0,max:24,dflt:0},maxzoom:{valType:\"number\",min:0,max:24,dflt:24},circle:{radius:{valType:\"number\",dflt:15}},line:{width:{valType:\"number\",dflt:2},dash:{valType:\"data_array\"}},fill:{outlinecolor:{valType:\"color\",dflt:i}},symbol:{icon:{valType:\"string\",dflt:\"marker\"},iconsize:{valType:\"number\",dflt:10},text:{valType:\"string\",dflt:\"\"},placement:{valType:\"enumerated\",values:[\"point\",\"line\",\"line-center\"],dflt:\"point\"},textfont:h,textposition:n.extendFlat({},s,{arrayOk:!1})}})},\"plot\",\"from-root\")).uirevision={valType:\"any\",editType:\"none\"}},97446:function(t,e,r){\"use strict\";var n=r(34809),i=r(4448),a=r(59008),o=r(8257);function s(t,e,r){r(\"style\"),r(\"center.lon\"),r(\"center.lat\"),r(\"zoom\"),r(\"bearing\"),r(\"pitch\");var n=r(\"bounds.west\"),i=r(\"bounds.east\"),o=r(\"bounds.south\"),s=r(\"bounds.north\");void 0!==n&&void 0!==i&&void 0!==o&&void 0!==s||delete e.bounds,a(t,e,{name:\"layers\",handleItemDefaults:l}),e._input=t}function l(t,e){function r(r,i){return n.coerce(t,e,o.layers,r,i)}if(r(\"visible\")){var i,a=r(\"sourcetype\"),s=\"raster\"===a||\"image\"===a;r(\"source\"),r(\"sourceattribution\"),\"vector\"===a&&r(\"sourcelayer\"),\"image\"===a&&r(\"coordinates\"),s&&(i=\"raster\");var l=r(\"type\",i);s&&\"raster\"!==l&&(l=e.type=\"raster\",n.log(\"Source types *raster* and *image* must drawn *raster* layer type.\")),r(\"below\"),r(\"color\"),r(\"opacity\"),r(\"minzoom\"),r(\"maxzoom\"),\"circle\"===l&&r(\"circle.radius\"),\"line\"===l&&(r(\"line.width\"),r(\"line.dash\")),\"fill\"===l&&r(\"fill.outlinecolor\"),\"symbol\"===l&&(r(\"symbol.icon\"),r(\"symbol.iconsize\"),r(\"symbol.text\"),n.coerceFont(r,\"symbol.textfont\",void 0,{noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}),r(\"symbol.textposition\"),r(\"symbol.placement\"))}}t.exports=function(t,e,r){i(t,e,r,{type:\"map\",attributes:o,handleDefaults:s,partition:\"y\"})}},38793:function(t,e,r){\"use strict\";var n=r(89380),i=r(34809),a=r(3994),o=r(33626),s=r(29714),l=r(14751),c=r(32141),u=r(70414),h=u.drawMode,f=u.selectMode,p=r(44844).prepSelect,d=r(44844).clearOutline,m=r(44844).clearSelectionsCache,g=r(44844).selectOnClick,y=r(8814),v=r(33389);function x(t,e){this.id=e,this.gd=t;var r=t._fullLayout,n=t._context;this.container=r._glcontainer.node(),this.isStatic=n.staticPlot,this.uid=r._uid+\"-\"+this.id,this.div=null,this.xaxis=null,this.yaxis=null,this.createFramework(r),this.map=null,this.styleObj=null,this.traceHash={},this.layerList=[],this.belowLookup={},this.dragging=!1,this.wheeling=!1}var _=x.prototype;_.plot=function(t,e,r){var n,i=this;n=i.map?new Promise((function(r,n){i.updateMap(t,e,r,n)})):new Promise((function(r,n){i.createMap(t,e,r,n)})),r.push(n)},_.createMap=function(t,e,r,i){var o=this,s=e[o.id],l=o.styleObj=w(s.style),c=s.bounds,u=c?[[c.west,c.south],[c.east,c.north]]:null,h=o.map=new n.Map({container:o.div,style:l.style,center:T(s.center),zoom:s.zoom,bearing:s.bearing,pitch:s.pitch,maxBounds:u,interactive:!o.isStatic,preserveDrawingBuffer:o.isStatic,doubleClickZoom:!1,boxZoom:!1,attributionControl:!1}).addControl(new n.AttributionControl({compact:!0})),f={};h.on(\"styleimagemissing\",(function(t){var e=t.id;if(!f[e]&&e.includes(\"-15\")){f[e]=!0;var r=new Image(15,15);r.onload=function(){h.addImage(e,r)},r.crossOrigin=\"Anonymous\",r.src=\"https://unpkg.com/maki@2.1.0/icons/\"+e+\".svg\"}})),h.setTransformRequest((function(t){return{url:t=(t=(t=t.replace(\"https://fonts.openmaptiles.org/Open Sans Extrabold\",\"https://fonts.openmaptiles.org/Open Sans Extra Bold\")).replace(\"https://tiles.basemaps.cartocdn.com/fonts/Open Sans Extrabold\",\"https://fonts.openmaptiles.org/Open Sans Extra Bold\")).replace(\"https://fonts.openmaptiles.org/Open Sans Regular,Arial Unicode MS Regular\",\"https://fonts.openmaptiles.org/Klokantech Noto Sans Regular\")}})),h._canvas.style.left=\"0px\",h._canvas.style.top=\"0px\",o.rejectOnError(i),o.isStatic||o.initFx(t,e);var p=[];p.push(new Promise((function(t){h.once(\"load\",t)}))),p=p.concat(a.fetchTraceGeoData(t)),Promise.all(p).then((function(){o.fillBelowLookup(t,e),o.updateData(t),o.updateLayout(e),o.resolveOnRender(r)})).catch(i)},_.updateMap=function(t,e,r,n){var i=this,o=i.map,s=e[this.id];i.rejectOnError(n);var l=[],c=w(s.style);JSON.stringify(i.styleObj)!==JSON.stringify(c)&&(i.styleObj=c,o.setStyle(c.style),i.traceHash={},l.push(new Promise((function(t){o.once(\"styledata\",t)})))),l=l.concat(a.fetchTraceGeoData(t)),Promise.all(l).then((function(){i.fillBelowLookup(t,e),i.updateData(t),i.updateLayout(e),i.resolveOnRender(r)})).catch(n)},_.fillBelowLookup=function(t,e){var r,n,i=e[this.id].layers,a=this.belowLookup={},o=!1;for(r=0;r<t.length;r++){var s=t[r][0].trace,l=s._module;\"string\"==typeof s.below?n=s.below:l.getBelow&&(n=l.getBelow(s,this)),\"\"===n&&(o=!0),a[\"trace-\"+s.uid]=n||\"\"}for(r=0;r<i.length;r++){var c=i[r];n=\"string\"==typeof c.below?c.below:o?\"traces\":\"\",a[\"layout-\"+r]=n}var u,h,f={};for(u in a)f[n=a[u]]?f[n].push(u):f[n]=[u];for(n in f){var p=f[n];if(p.length>1)for(r=0;r<p.length;r++)0===(u=p[r]).indexOf(\"trace-\")?(h=u.split(\"trace-\")[1],this.traceHash[h]&&(this.traceHash[h].below=null)):0===u.indexOf(\"layout-\")&&(h=u.split(\"layout-\")[1],this.layerList[h]&&(this.layerList[h].below=null))}};var b={choroplethmap:0,densitymap:1,scattermap:2};function w(t){var e={};return i.isPlainObject(t)?(e.id=t.id,e.style=t):\"string\"==typeof t?(e.id=t,y.stylesMap[t]?e.style=y.stylesMap[t]:e.style=t):(e.id=y.styleValueDflt,e.style=function(t){return y.styleUrlPrefix+t+\"-\"+y.styleUrlSuffix}(y.styleValueDflt)),e.transition={duration:0,delay:0},e}function T(t){return[t.lon,t.lat]}_.updateData=function(t){var e,r,n,i,a=this.traceHash,o=t.slice().sort((function(t,e){return b[t[0].trace.type]-b[e[0].trace.type]}));for(n=0;n<o.length;n++){var s=o[n],l=!1;(e=a[(r=s[0].trace).uid])&&(e.type===r.type?(e.update(s),l=!0):e.dispose()),!l&&r._module&&(a[r.uid]=r._module.plot(this,s))}var c=Object.keys(a);t:for(n=0;n<c.length;n++){var u=c[n];for(i=0;i<t.length;i++)if(u===(r=t[i][0].trace).uid)continue t;(e=a[u]).dispose(),delete a[u]}},_.updateLayout=function(t){var e=this.map,r=t[this.id];this.dragging||this.wheeling||(e.setCenter(T(r.center)),e.setZoom(r.zoom),e.setBearing(r.bearing),e.setPitch(r.pitch)),this.updateLayers(t),this.updateFramework(t),this.updateFx(t),this.map.resize(),this.gd._context._scrollZoom.map?e.scrollZoom.enable():e.scrollZoom.disable()},_.resolveOnRender=function(t){var e=this.map;e.on(\"render\",(function r(){e.loaded()&&(e.off(\"render\",r),setTimeout(t,10))}))},_.rejectOnError=function(t){var e=this.map;function r(){t(new Error(y.mapOnErrorMsg))}e.once(\"error\",r),e.once(\"style.error\",r),e.once(\"source.error\",r),e.once(\"tile.error\",r),e.once(\"layer.error\",r)},_.createFramework=function(t){var e=this,r=e.div=document.createElement(\"div\");r.id=e.uid,r.style.position=\"absolute\",e.container.appendChild(r),e.xaxis={_id:\"x\",c2p:function(t){return e.project(t).x}},e.yaxis={_id:\"y\",c2p:function(t){return e.project(t).y}},e.updateFramework(t),e.mockAxis={type:\"linear\",showexponent:\"all\",exponentformat:\"B\"},s.setConvert(e.mockAxis,t)},_.initFx=function(t,e){var r=this,n=r.gd,i=r.map;function a(){c.loneUnhover(e._hoverlayer)}function s(){var t=r.getView();n.emit(\"plotly_relayouting\",r.getViewEditsWithDerived(t))}i.on(\"moveend\",(function(t){if(r.map){var e=n._fullLayout;if(t.originalEvent||r.wheeling){var i=e[r.id];o.call(\"_storeDirectGUIEdit\",n.layout,e._preGUI,r.getViewEdits(i));var a=r.getView();i._input.center=i.center=a.center,i._input.zoom=i.zoom=a.zoom,i._input.bearing=i.bearing=a.bearing,i._input.pitch=i.pitch=a.pitch,n.emit(\"plotly_relayout\",r.getViewEditsWithDerived(a))}t.originalEvent&&\"mouseup\"===t.originalEvent.type?r.dragging=!1:r.wheeling&&(r.wheeling=!1),e&&e._rehover&&e._rehover()}})),i.on(\"wheel\",(function(){r.wheeling=!0})),i.on(\"mousemove\",(function(t){var e=r.div.getBoundingClientRect(),a=[t.originalEvent.offsetX,t.originalEvent.offsetY];t.target.getBoundingClientRect=function(){return e},r.xaxis.p2c=function(){return i.unproject(a).lng},r.yaxis.p2c=function(){return i.unproject(a).lat},n._fullLayout._rehover=function(){n._fullLayout._hoversubplot===r.id&&n._fullLayout[r.id]&&c.hover(n,t,r.id)},c.hover(n,t,r.id),n._fullLayout._hoversubplot=r.id})),i.on(\"dragstart\",(function(){r.dragging=!0,a()})),i.on(\"zoomstart\",a),i.on(\"mouseout\",(function(){n._fullLayout._hoversubplot=null})),i.on(\"drag\",s),i.on(\"zoom\",s),i.on(\"dblclick\",(function(){var t=n._fullLayout[r.id];o.call(\"_storeDirectGUIEdit\",n.layout,n._fullLayout._preGUI,r.getViewEdits(t));var e=r.viewInitial;i.setCenter(T(e.center)),i.setZoom(e.zoom),i.setBearing(e.bearing),i.setPitch(e.pitch);var a=r.getView();t._input.center=t.center=a.center,t._input.zoom=t.zoom=a.zoom,t._input.bearing=t.bearing=a.bearing,t._input.pitch=t.pitch=a.pitch,n.emit(\"plotly_doubleclick\",null),n.emit(\"plotly_relayout\",r.getViewEditsWithDerived(a))})),r.clearOutline=function(){m(r.dragOptions),d(r.dragOptions.gd)},r.onClickInPanFn=function(t){return function(e){var i=n._fullLayout.clickmode;i.indexOf(\"select\")>-1&&g(e.originalEvent,n,[r.xaxis],[r.yaxis],r.id,t),i.indexOf(\"event\")>-1&&c.click(n,e.originalEvent)}}},_.updateFx=function(t){var e=this,r=e.map,n=e.gd;if(!e.isStatic){var a,o=t.dragmode;a=function(t,r){r.isRect?(t.range={})[e.id]=[c([r.xmin,r.ymin]),c([r.xmax,r.ymax])]:(t.lassoPoints={})[e.id]=r.map(c)};var s=e.dragOptions;e.dragOptions=i.extendDeep(s||{},{dragmode:t.dragmode,element:e.div,gd:n,plotinfo:{id:e.id,domain:t[e.id].domain,xaxis:e.xaxis,yaxis:e.yaxis,fillRangeItems:a},xaxes:[e.xaxis],yaxes:[e.yaxis],subplot:e.id}),r.off(\"click\",e.onClickInPanHandler),f(o)||h(o)?(r.dragPan.disable(),r.on(\"zoomstart\",e.clearOutline),e.dragOptions.prepFn=function(t,r,n){p(t,r,n,e.dragOptions,o)},l.init(e.dragOptions)):(r.dragPan.enable(),r.off(\"zoomstart\",e.clearOutline),e.div.onmousedown=null,e.div.ontouchstart=null,e.div.removeEventListener(\"touchstart\",e.div._ontouchstart),e.onClickInPanHandler=e.onClickInPanFn(e.dragOptions),r.on(\"click\",e.onClickInPanHandler))}function c(t){var r=e.map.unproject(t);return[r.lng,r.lat]}},_.updateFramework=function(t){var e=t[this.id].domain,r=t._size,n=this.div.style;n.width=r.w*(e.x[1]-e.x[0])+\"px\",n.height=r.h*(e.y[1]-e.y[0])+\"px\",n.left=r.l+e.x[0]*r.w+\"px\",n.top=r.t+(1-e.y[1])*r.h+\"px\",this.xaxis._offset=r.l+e.x[0]*r.w,this.xaxis._length=r.w*(e.x[1]-e.x[0]),this.yaxis._offset=r.t+(1-e.y[1])*r.h,this.yaxis._length=r.h*(e.y[1]-e.y[0])},_.updateLayers=function(t){var e,r=t[this.id].layers,n=this.layerList;if(r.length!==n.length){for(e=0;e<n.length;e++)n[e].dispose();for(n=this.layerList=[],e=0;e<r.length;e++)n.push(v(this,e,r[e]))}else for(e=0;e<r.length;e++)n[e].update(r[e])},_.destroy=function(){this.map&&(this.map.remove(),this.map=null,this.container.removeChild(this.div))},_.toImage=function(){return this.map.stop(),this.map.getCanvas().toDataURL()},_.setOptions=function(t,e,r){for(var n in r)this.map[e](t,n,r[n])},_.getMapLayers=function(){return this.map.getStyle().layers},_.addLayer=function(t,e){var r=this.map;if(\"string\"==typeof e){if(\"\"===e)return void r.addLayer(t,e);for(var n=this.getMapLayers(),a=0;a<n.length;a++)if(e===n[a].id)return void r.addLayer(t,e);i.warn([\"Trying to add layer with *below* value\",e,\"referencing a layer that does not exist\",\"or that does not yet exist.\"].join(\" \"))}r.addLayer(t)},_.project=function(t){return this.map.project(new n.LngLat(t[0],t[1]))},_.getView=function(){var t=this.map,e=t.getCenter(),r={lon:e.lng,lat:e.lat},n=t.getCanvas(),i=parseInt(n.style.width),a=parseInt(n.style.height);return{center:r,zoom:t.getZoom(),bearing:t.getBearing(),pitch:t.getPitch(),_derived:{coordinates:[t.unproject([0,0]).toArray(),t.unproject([i,0]).toArray(),t.unproject([i,a]).toArray(),t.unproject([0,a]).toArray()]}}},_.getViewEdits=function(t){for(var e=this.id,r=[\"center\",\"zoom\",\"bearing\",\"pitch\"],n={},i=0;i<r.length;i++){var a=r[i];n[e+\".\"+a]=t[a]}return n},_.getViewEditsWithDerived=function(t){var e=this.id,r=this.getViewEdits(t);return r[e+\"._derived\"]=t._derived,r},t.exports=x},44245:function(t,e,r){\"use strict\";var n=r(62994),i=\"1.13.4\",a='© <a target=\"_blank\" href=\"https://www.openstreetmap.org/copyright\">OpenStreetMap</a> contributors',o=['© <a target=\"_blank\" href=\"https://carto.com/\">Carto</a>',a].join(\" \"),s=['Map tiles by <a target=\"_blank\" href=\"https://stamen.com\">Stamen Design</a>','under <a target=\"_blank\" href=\"https://creativecommons.org/licenses/by/3.0\">CC BY 3.0</a>',\"|\",'Data by <a target=\"_blank\" href=\"https://openstreetmap.org\">OpenStreetMap</a> contributors','under <a target=\"_blank\" href=\"https://www.openstreetmap.org/copyright\">ODbL</a>'].join(\" \"),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}],glyphs:\"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf\"},\"white-bg\":{id:\"white-bg\",version:8,sources:{},layers:[{id:\"white-bg\",type:\"background\",paint:{\"background-color\":\"#FFFFFF\"},minzoom:0,maxzoom:22}],glyphs:\"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf\"},\"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}],glyphs:\"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf\"},\"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}],glyphs:\"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf\"},\"stamen-terrain\":{id:\"stamen-terrain\",version:8,sources:{\"plotly-stamen-terrain\":{type:\"raster\",attribution:s,tiles:[\"https://tiles.stadiamaps.com/tiles/stamen_terrain/{z}/{x}/{y}.png?api_key=\"],tileSize:256}},layers:[{id:\"plotly-stamen-terrain\",type:\"raster\",source:\"plotly-stamen-terrain\",minzoom:0,maxzoom:22}],glyphs:\"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf\"},\"stamen-toner\":{id:\"stamen-toner\",version:8,sources:{\"plotly-stamen-toner\":{type:\"raster\",attribution:s,tiles:[\"https://tiles.stadiamaps.com/tiles/stamen_toner/{z}/{x}/{y}.png?api_key=\"],tileSize:256}},layers:[{id:\"plotly-stamen-toner\",type:\"raster\",source:\"plotly-stamen-toner\",minzoom:0,maxzoom:22}],glyphs:\"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf\"},\"stamen-watercolor\":{id:\"stamen-watercolor\",version:8,sources:{\"plotly-stamen-watercolor\":{type:\"raster\",attribution:['Map tiles by <a target=\"_blank\" href=\"https://stamen.com\">Stamen Design</a>','under <a target=\"_blank\" href=\"https://creativecommons.org/licenses/by/3.0\">CC BY 3.0</a>',\"|\",'Data by <a target=\"_blank\" href=\"https://openstreetmap.org\">OpenStreetMap</a> contributors','under <a target=\"_blank\" href=\"https://creativecommons.org/licenses/by-sa/3.0\">CC BY SA</a>'].join(\" \"),tiles:[\"https://tiles.stadiamaps.com/tiles/stamen_watercolor/{z}/{x}/{y}.jpg?api_key=\"],tileSize:256}},layers:[{id:\"plotly-stamen-watercolor\",type:\"raster\",source:\"plotly-stamen-watercolor\",minzoom:0,maxzoom:22}],glyphs:\"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf\"}},c=n(l);t.exports={requiredVersion:i,styleUrlPrefix:\"mapbox://styles/mapbox/\",styleUrlSuffix:\"v9\",styleValuesMapbox:[\"basic\",\"streets\",\"outdoors\",\"light\",\"dark\",\"satellite\",\"satellite-streets\"],styleValueDflt:\"basic\",stylesNonMapbox:l,styleValuesNonMapbox:c,traceLayerPrefix:\"plotly-trace-layer-\",layoutLayerPrefix:\"plotly-layout-layer-\",wrongVersionErrorMsg:[\"Your custom plotly.js bundle is not using the correct mapbox-gl version\",\"Please install @plotly/mapbox-gl@\"+i+\".\"].join(\"\\n\"),noAccessTokenErrorMsg:[\"Missing Mapbox access token.\",\"Mapbox trace type require a Mapbox access token to be registered.\",\"For example:\",\" Plotly.newPlot(gd, data, layout, { mapboxAccessToken: 'my-access-token' });\",\"More info here: https://www.mapbox.com/help/define-access-token/\"].join(\"\\n\"),missingStyleErrorMsg:[\"No valid mapbox style found, please set `mapbox.style` to one of:\",c.join(\", \"),\"or register a Mapbox access token to use a Mapbox-served style.\"].join(\"\\n\"),multipleTokensErrorMsg:[\"Set multiple mapbox access token across different mapbox subplot,\",\"using first token found as mapbox-gl does not allow multipleaccess tokens on the same page.\"].join(\"\\n\"),mapOnErrorMsg:\"Mapbox error.\",mapboxLogo:{path0:\"m 10.5,1.24 c -5.11,0 -9.25,4.15 -9.25,9.25 0,5.1 4.15,9.25 9.25,9.25 5.1,0 9.25,-4.15 9.25,-9.25 0,-5.11 -4.14,-9.25 -9.25,-9.25 z m 4.39,11.53 c -1.93,1.93 -4.78,2.31 -6.7,2.31 -0.7,0 -1.41,-0.05 -2.1,-0.16 0,0 -1.02,-5.64 2.14,-8.81 0.83,-0.83 1.95,-1.28 3.13,-1.28 1.27,0 2.49,0.51 3.39,1.42 1.84,1.84 1.89,4.75 0.14,6.52 z\",path1:\"M 10.5,-0.01 C 4.7,-0.01 0,4.7 0,10.49 c 0,5.79 4.7,10.5 10.5,10.5 5.8,0 10.5,-4.7 10.5,-10.5 C 20.99,4.7 16.3,-0.01 10.5,-0.01 Z m 0,19.75 c -5.11,0 -9.25,-4.15 -9.25,-9.25 0,-5.1 4.14,-9.26 9.25,-9.26 5.11,0 9.25,4.15 9.25,9.25 0,5.13 -4.14,9.26 -9.25,9.26 z\",path2:\"M 14.74,6.25 C 12.9,4.41 9.98,4.35 8.23,6.1 5.07,9.27 6.09,14.91 6.09,14.91 c 0,0 5.64,1.02 8.81,-2.14 C 16.64,11 16.59,8.09 14.74,6.25 Z m -2.27,4.09 -0.91,1.87 -0.9,-1.87 -1.86,-0.91 1.86,-0.9 0.9,-1.87 0.91,1.87 1.86,0.9 z\",polygon:\"11.56,12.21 10.66,10.34 8.8,9.43 10.66,8.53 11.56,6.66 12.47,8.53 14.33,9.43 12.47,10.34\"},styleRules:{map:\"overflow:hidden;position:relative;\",\"missing-css\":\"display:none;\",canary:\"background-color:salmon;\",\"ctrl-bottom-left\":\"position: absolute; pointer-events: none; z-index: 2; bottom: 0; left: 0;\",\"ctrl-bottom-right\":\"position: absolute; pointer-events: none; z-index: 2; right: 0; bottom: 0;\",ctrl:\"clear: both; pointer-events: auto; transform: translate(0, 0);\",\"ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner\":\"display: none;\",\"ctrl-attrib.mapboxgl-compact:hover .mapboxgl-ctrl-attrib-inner\":\"display: block; margin-top:2px\",\"ctrl-attrib.mapboxgl-compact:hover\":\"padding: 2px 24px 2px 4px; visibility: visible; margin-top: 6px;\",\"ctrl-attrib.mapboxgl-compact::after\":'content: \"\"; cursor: pointer; position: absolute; background-image: url(\\'data:image/svg+xml;charset=utf-8,%3Csvg viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"%3E %3Cpath fill=\"%23333333\" fill-rule=\"evenodd\" d=\"M4,10a6,6 0 1,0 12,0a6,6 0 1,0 -12,0 M9,7a1,1 0 1,0 2,0a1,1 0 1,0 -2,0 M9,10a1,1 0 1,1 2,0l0,3a1,1 0 1,1 -2,0\"/%3E %3C/svg%3E\\'); background-color: rgba(255, 255, 255, 0.5); width: 24px; height: 24px; box-sizing: border-box; border-radius: 12px;',\"ctrl-attrib.mapboxgl-compact\":\"min-height: 20px; padding: 0; margin: 10px; position: relative; background-color: #fff; border-radius: 3px 12px 12px 3px;\",\"ctrl-bottom-right > .mapboxgl-ctrl-attrib.mapboxgl-compact::after\":\"bottom: 0; right: 0\",\"ctrl-bottom-left > .mapboxgl-ctrl-attrib.mapboxgl-compact::after\":\"bottom: 0; left: 0\",\"ctrl-bottom-left .mapboxgl-ctrl\":\"margin: 0 0 10px 10px; float: left;\",\"ctrl-bottom-right .mapboxgl-ctrl\":\"margin: 0 10px 10px 0; float: right;\",\"ctrl-attrib\":\"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px\",\"ctrl-attrib a\":\"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px\",\"ctrl-attrib a:hover\":\"color: inherit; text-decoration: underline;\",\"ctrl-attrib .mapbox-improve-map\":\"font-weight: bold; margin-left: 2px;\",\"attrib-empty\":\"display: none;\",\"ctrl-logo\":'display:block; width: 21px; height: 21px; background-image: url(\\'data:image/svg+xml;charset=utf-8,%3C?xml version=\"1.0\" encoding=\"utf-8\"?%3E %3Csvg version=\"1.1\" id=\"Layer_1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\" viewBox=\"0 0 21 21\" style=\"enable-background:new 0 0 21 21;\" xml:space=\"preserve\"%3E%3Cg transform=\"translate(0,0.01)\"%3E%3Cpath d=\"m 10.5,1.24 c -5.11,0 -9.25,4.15 -9.25,9.25 0,5.1 4.15,9.25 9.25,9.25 5.1,0 9.25,-4.15 9.25,-9.25 0,-5.11 -4.14,-9.25 -9.25,-9.25 z m 4.39,11.53 c -1.93,1.93 -4.78,2.31 -6.7,2.31 -0.7,0 -1.41,-0.05 -2.1,-0.16 0,0 -1.02,-5.64 2.14,-8.81 0.83,-0.83 1.95,-1.28 3.13,-1.28 1.27,0 2.49,0.51 3.39,1.42 1.84,1.84 1.89,4.75 0.14,6.52 z\" style=\"opacity:0.9;fill:%23ffffff;enable-background:new\" class=\"st0\"/%3E%3Cpath d=\"M 10.5,-0.01 C 4.7,-0.01 0,4.7 0,10.49 c 0,5.79 4.7,10.5 10.5,10.5 5.8,0 10.5,-4.7 10.5,-10.5 C 20.99,4.7 16.3,-0.01 10.5,-0.01 Z m 0,19.75 c -5.11,0 -9.25,-4.15 -9.25,-9.25 0,-5.1 4.14,-9.26 9.25,-9.26 5.11,0 9.25,4.15 9.25,9.25 0,5.13 -4.14,9.26 -9.25,9.26 z\" style=\"opacity:0.35;enable-background:new\" class=\"st1\"/%3E%3Cpath d=\"M 14.74,6.25 C 12.9,4.41 9.98,4.35 8.23,6.1 5.07,9.27 6.09,14.91 6.09,14.91 c 0,0 5.64,1.02 8.81,-2.14 C 16.64,11 16.59,8.09 14.74,6.25 Z m -2.27,4.09 -0.91,1.87 -0.9,-1.87 -1.86,-0.91 1.86,-0.9 0.9,-1.87 0.91,1.87 1.86,0.9 z\" style=\"opacity:0.35;enable-background:new\" class=\"st1\"/%3E%3Cpolygon points=\"11.56,12.21 10.66,10.34 8.8,9.43 10.66,8.53 11.56,6.66 12.47,8.53 14.33,9.43 12.47,10.34 \" style=\"opacity:0.9;fill:%23ffffff;enable-background:new\" class=\"st0\"/%3E%3C/g%3E%3C/svg%3E\\')'}}},2178:function(t,e,r){\"use strict\";var n=r(34809);t.exports=function(t,e){var r=t.split(\" \"),i=r[0],a=r[1],o=n.isArrayOrTypedArray(e)?n.mean(e):e,s=.5+o/100,l=1.5+o/100,c=[\"\",\"\"],u=[0,0];switch(i){case\"top\":c[0]=\"top\",u[1]=-l;break;case\"bottom\":c[0]=\"bottom\",u[1]=l}switch(a){case\"left\":c[1]=\"right\",u[0]=-s;break;case\"right\":c[1]=\"left\",u[0]=s}return{anchor:c[0]&&c[1]?c.join(\"-\"):c[0]?c[0]:c[1]?c[1]:\"center\",offset:u}}},68192:function(t,e,r){\"use strict\";var n=r(32280),i=r(34809),a=i.strTranslate,o=i.strScale,s=r(4173).fX,l=r(62972),c=r(45568),u=r(62203),h=r(30635),f=r(5417),p=\"mapbox\",d=e.constants=r(44245);e.name=p,e.attr=\"subplot\",e.idRoot=p,e.idRegex=e.attrRegex=i.counterRegex(p);var m=[\"mapbox subplots and traces are deprecated!\",\"Please consider switching to `map` subplots and traces.\",\"Learn more at: https://plotly.com/javascript/maplibre-migration/\"].join(\" \");e.attributes={subplot:{valType:\"subplotid\",dflt:\"mapbox\",editType:\"calc\"}},e.layoutAttributes=r(67514),e.supplyLayoutDefaults=r(86989);var g=!0;function y(t){return\"string\"==typeof t&&(-1!==d.styleValuesMapbox.indexOf(t)||0===t.indexOf(\"mapbox://\")||0===t.indexOf(\"stamen\"))}e.plot=function(t){g&&(g=!1,i.warn(m));var e=t._fullLayout,r=t.calcdata,a=e._subplots[p];if(n.version!==d.requiredVersion)throw new Error(d.wrongVersionErrorMsg);var o=function(t,e){var r=t._fullLayout;if(\"\"===t._context.mapboxAccessToken)return\"\";for(var n=[],a=[],o=!1,s=!1,l=0;l<e.length;l++){var c=r[e[l]],u=c.accesstoken;y(c.style)&&(u?i.pushUnique(n,u):(y(c._input.style)&&(i.error(\"Uses Mapbox map style, but did not set an access token.\"),o=!0),s=!0)),u&&i.pushUnique(a,u)}if(s){var h=o?d.noAccessTokenErrorMsg:d.missingStyleErrorMsg;throw i.error(h),new Error(h)}return n.length?(n.length>1&&i.warn(d.multipleTokensErrorMsg),n[0]):(a.length&&i.log([\"Listed mapbox access token(s)\",a.join(\",\"),\"but did not use a Mapbox map style, ignoring token(s).\"].join(\" \")),\"\")}(t,a);n.accessToken=o;for(var l=0;l<a.length;l++){var c=a[l],u=s(r,p,c),h=e[c],v=h._subplot;v||(v=new f(t,c),e[c]._subplot=v),v.viewInitial||(v.viewInitial={center:i.extendFlat({},h.center),zoom:h.zoom,bearing:h.bearing,pitch:h.pitch}),v.plot(u,e,t._promises)}},e.clean=function(t,e,r,n){for(var i=n._subplots[p]||[],a=0;a<i.length;a++){var o=i[a];!e[o]&&n[o]._subplot&&n[o]._subplot.destroy()}},e.toSVG=function(t){for(var e=t._fullLayout,r=e._subplots[p],n=e._size,i=0;i<r.length;i++){var s=e[r[i]],f=s.domain,m=s._subplot.toImage(\"png\");e._glimages.append(\"svg:image\").attr({xmlns:l.svg,\"xlink:href\":m,x:n.l+n.w*f.x[0],y:n.t+n.h*(1-f.y[1]),width:n.w*(f.x[1]-f.x[0]),height:n.h*(f.y[1]-f.y[0]),preserveAspectRatio:\"none\"});var g=c.select(s._subplot.div);if(null!==g.select(\".mapboxgl-ctrl-logo\").node().offsetParent){var y=e._glimages.append(\"g\");y.attr(\"transform\",a(n.l+n.w*f.x[0]+10,n.t+n.h*(1-f.y[0])-31)),y.append(\"path\").attr(\"d\",d.mapboxLogo.path0).style({opacity:.9,fill:\"#ffffff\",\"enable-background\":\"new\"}),y.append(\"path\").attr(\"d\",d.mapboxLogo.path1).style(\"opacity\",.35).style(\"enable-background\",\"new\"),y.append(\"path\").attr(\"d\",d.mapboxLogo.path2).style(\"opacity\",.35).style(\"enable-background\",\"new\"),y.append(\"polygon\").attr(\"points\",d.mapboxLogo.polygon).style({opacity:.9,fill:\"#ffffff\",\"enable-background\":\"new\"})}var v=g.select(\".mapboxgl-ctrl-attrib\").text().replace(\"Improve this map\",\"\"),x=e._glimages.append(\"g\"),_=x.append(\"text\");_.text(v).classed(\"static-attribution\",!0).attr({\"font-size\":12,\"font-family\":\"Arial\",color:\"rgba(0, 0, 0, 0.75)\",\"text-anchor\":\"end\",\"data-unformatted\":v});var b=u.bBox(_.node()),w=n.w*(f.x[1]-f.x[0]);if(b.width>w/2){var T=v.split(\"|\").join(\"<br>\");_.text(T).attr(\"data-unformatted\",T).call(h.convertToTspans,t),b=u.bBox(_.node())}_.attr(\"transform\",a(-3,8-b.height)),x.insert(\"rect\",\".static-attribution\").attr({x:-b.width-6,y:-b.height-3,width:b.width+6,height:b.height+3,fill:\"rgba(255, 255, 255, 0.75)\"});var k=1;b.width+6>w&&(k=w/(b.width+6));var A=[n.l+n.w*f.x[1],n.t+n.h*(1-f.y[0])];x.attr(\"transform\",a(A[0],A[1])+o(k))}},e.updateFx=function(t){for(var e=t._fullLayout,r=e._subplots[p],n=0;n<r.length;n++)e[r[n]]._subplot.updateFx(e)}},51276:function(t,e,r){\"use strict\";var n=r(34809),i=r(30635).sanitizeHTML,a=r(2178),o=r(44245);function s(t,e){this.subplot=t,this.uid=t.uid+\"-\"+e,this.index=e,this.idSource=\"source-\"+this.uid,this.idLayer=o.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var l=s.prototype;function c(t){if(!t.visible)return!1;var e=t.source;if(Array.isArray(e)&&e.length>0){for(var r=0;r<e.length;r++)if(\"string\"!=typeof e[r]||0===e[r].length)return!1;return!0}return n.isPlainObject(e)||\"string\"==typeof e&&e.length>0}function u(t){var e={},r={};switch(t.type){case\"circle\":n.extendFlat(r,{\"circle-radius\":t.circle.radius,\"circle-color\":t.color,\"circle-opacity\":t.opacity});break;case\"line\":n.extendFlat(r,{\"line-width\":t.line.width,\"line-color\":t.color,\"line-opacity\":t.opacity,\"line-dasharray\":t.line.dash});break;case\"fill\":n.extendFlat(r,{\"fill-color\":t.color,\"fill-outline-color\":t.fill.outlinecolor,\"fill-opacity\":t.opacity});break;case\"symbol\":var i=t.symbol,o=a(i.textposition,i.iconsize);n.extendFlat(e,{\"icon-image\":i.icon+\"-15\",\"icon-size\":i.iconsize/10,\"text-field\":i.text,\"text-size\":i.textfont.size,\"text-anchor\":o.anchor,\"text-offset\":o.offset,\"symbol-placement\":i.placement}),n.extendFlat(r,{\"icon-color\":t.color,\"text-color\":i.textfont.color,\"text-opacity\":t.opacity});break;case\"raster\":n.extendFlat(r,{\"raster-fade-duration\":0,\"raster-opacity\":t.opacity})}return{layout:e,paint:r}}l.update=function(t){this.visible?this.needsNewImage(t)?this.updateImage(t):this.needsNewSource(t)?(this.removeLayer(),this.updateSource(t),this.updateLayer(t)):this.needsNewLayer(t)?this.updateLayer(t):this.updateStyle(t):(this.updateSource(t),this.updateLayer(t)),this.visible=c(t)},l.needsNewImage=function(t){return this.subplot.map.getSource(this.idSource)&&\"image\"===this.sourceType&&\"image\"===t.sourcetype&&(this.source!==t.source||JSON.stringify(this.coordinates)!==JSON.stringify(t.coordinates))},l.needsNewSource=function(t){return this.sourceType!==t.sourcetype||JSON.stringify(this.source)!==JSON.stringify(t.source)||this.layerType!==t.type},l.needsNewLayer=function(t){return this.layerType!==t.type||this.below!==this.subplot.belowLookup[\"layout-\"+this.index]},l.lookupBelow=function(){return this.subplot.belowLookup[\"layout-\"+this.index]},l.updateImage=function(t){this.subplot.map.getSource(this.idSource).updateImage({url:t.source,coordinates:t.coordinates});var e=this.findFollowingMapboxLayerId(this.lookupBelow());null!==e&&this.subplot.map.moveLayer(this.idLayer,e)},l.updateSource=function(t){var e=this.subplot.map;if(e.getSource(this.idSource)&&e.removeSource(this.idSource),this.sourceType=t.sourcetype,this.source=t.source,c(t)){var r=function(t){var e,r=t.sourcetype,n=t.source,a={type:r};return\"geojson\"===r?e=\"data\":\"vector\"===r?e=\"string\"==typeof n?\"url\":\"tiles\":\"raster\"===r?(e=\"tiles\",a.tileSize=256):\"image\"===r&&(e=\"url\",a.coordinates=t.coordinates),a[e]=n,t.sourceattribution&&(a.attribution=i(t.sourceattribution)),a}(t);e.addSource(this.idSource,r)}},l.findFollowingMapboxLayerId=function(t){if(\"traces\"===t)for(var e=this.subplot.getMapLayers(),r=0;r<e.length;r++){var n=e[r].id;if(\"string\"==typeof n&&0===n.indexOf(o.traceLayerPrefix)){t=n;break}}return t},l.updateLayer=function(t){var e=this.subplot,r=u(t),n=this.lookupBelow(),i=this.findFollowingMapboxLayerId(n);this.removeLayer(),c(t)&&e.addLayer({id:this.idLayer,source:this.idSource,\"source-layer\":t.sourcelayer||\"\",type:t.type,minzoom:t.minzoom,maxzoom:t.maxzoom,layout:r.layout,paint:r.paint},i),this.layerType=t.type,this.below=n},l.updateStyle=function(t){if(c(t)){var e=u(t);this.subplot.setOptions(this.idLayer,\"setLayoutProperty\",e.layout),this.subplot.setOptions(this.idLayer,\"setPaintProperty\",e.paint)}},l.removeLayer=function(){var t=this.subplot.map;t.getLayer(this.idLayer)&&t.removeLayer(this.idLayer)},l.dispose=function(){var t=this.subplot.map;t.getLayer(this.idLayer)&&t.removeLayer(this.idLayer),t.getSource(this.idSource)&&t.removeSource(this.idSource)},t.exports=function(t,e,r){var n=new s(t,e);return n.update(r),n}},67514:function(t,e,r){\"use strict\";var n=r(34809),i=r(78766).defaultLine,a=r(13792).u,o=r(80337),s=r(36640).textposition,l=r(13582).overrideAll,c=r(78032).templatedArray,u=r(44245),h=o({noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0});h.family.dflt=\"Open Sans Regular, Arial Unicode MS Regular\",(t.exports=l({_arrayAttrRegexps:[n.counterRegex(\"mapbox\",\".layers\",!0)],domain:a({name:\"mapbox\"}),accesstoken:{valType:\"string\",noBlank:!0,strict:!0},style:{valType:\"any\",values:u.styleValuesMapbox.concat(u.styleValuesNonMapbox),dflt:u.styleValueDflt},center:{lon:{valType:\"number\",dflt:0},lat:{valType:\"number\",dflt:0}},zoom:{valType:\"number\",dflt:1},bearing:{valType:\"number\",dflt:0},pitch:{valType:\"number\",dflt:0},bounds:{west:{valType:\"number\"},east:{valType:\"number\"},south:{valType:\"number\"},north:{valType:\"number\"}},layers:c(\"layer\",{visible:{valType:\"boolean\",dflt:!0},sourcetype:{valType:\"enumerated\",values:[\"geojson\",\"vector\",\"raster\",\"image\"],dflt:\"geojson\"},source:{valType:\"any\"},sourcelayer:{valType:\"string\",dflt:\"\"},sourceattribution:{valType:\"string\"},type:{valType:\"enumerated\",values:[\"circle\",\"line\",\"fill\",\"symbol\",\"raster\"],dflt:\"circle\"},coordinates:{valType:\"any\"},below:{valType:\"string\"},color:{valType:\"color\",dflt:i},opacity:{valType:\"number\",min:0,max:1,dflt:1},minzoom:{valType:\"number\",min:0,max:24,dflt:0},maxzoom:{valType:\"number\",min:0,max:24,dflt:24},circle:{radius:{valType:\"number\",dflt:15}},line:{width:{valType:\"number\",dflt:2},dash:{valType:\"data_array\"}},fill:{outlinecolor:{valType:\"color\",dflt:i}},symbol:{icon:{valType:\"string\",dflt:\"marker\"},iconsize:{valType:\"number\",dflt:10},text:{valType:\"string\",dflt:\"\"},placement:{valType:\"enumerated\",values:[\"point\",\"line\",\"line-center\"],dflt:\"point\"},textfont:h,textposition:n.extendFlat({},s,{arrayOk:!1})}})},\"plot\",\"from-root\")).uirevision={valType:\"any\",editType:\"none\"}},86989:function(t,e,r){\"use strict\";var n=r(34809),i=r(4448),a=r(59008),o=r(67514);function s(t,e,r,n){r(\"accesstoken\",n.accessToken),r(\"style\"),r(\"center.lon\"),r(\"center.lat\"),r(\"zoom\"),r(\"bearing\"),r(\"pitch\");var i=r(\"bounds.west\"),o=r(\"bounds.east\"),s=r(\"bounds.south\"),c=r(\"bounds.north\");void 0!==i&&void 0!==o&&void 0!==s&&void 0!==c||delete e.bounds,a(t,e,{name:\"layers\",handleItemDefaults:l}),e._input=t}function l(t,e){function r(r,i){return n.coerce(t,e,o.layers,r,i)}if(r(\"visible\")){var i,a=r(\"sourcetype\"),s=\"raster\"===a||\"image\"===a;r(\"source\"),r(\"sourceattribution\"),\"vector\"===a&&r(\"sourcelayer\"),\"image\"===a&&r(\"coordinates\"),s&&(i=\"raster\");var l=r(\"type\",i);s&&\"raster\"!==l&&(l=e.type=\"raster\",n.log(\"Source types *raster* and *image* must drawn *raster* layer type.\")),r(\"below\"),r(\"color\"),r(\"opacity\"),r(\"minzoom\"),r(\"maxzoom\"),\"circle\"===l&&r(\"circle.radius\"),\"line\"===l&&(r(\"line.width\"),r(\"line.dash\")),\"fill\"===l&&r(\"fill.outlinecolor\"),\"symbol\"===l&&(r(\"symbol.icon\"),r(\"symbol.iconsize\"),r(\"symbol.text\"),n.coerceFont(r,\"symbol.textfont\",void 0,{noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}),r(\"symbol.textposition\"),r(\"symbol.placement\"))}}t.exports=function(t,e,r){i(t,e,r,{type:\"mapbox\",attributes:o,handleDefaults:s,partition:\"y\",accessToken:e._mapboxAccessToken})}},5417:function(t,e,r){\"use strict\";var n=r(32280),i=r(34809),a=r(3994),o=r(33626),s=r(29714),l=r(14751),c=r(32141),u=r(70414),h=u.drawMode,f=u.selectMode,p=r(44844).prepSelect,d=r(44844).clearOutline,m=r(44844).clearSelectionsCache,g=r(44844).selectOnClick,y=r(44245),v=r(51276);function x(t,e){this.id=e,this.gd=t;var r=t._fullLayout,n=t._context;this.container=r._glcontainer.node(),this.isStatic=n.staticPlot,this.uid=r._uid+\"-\"+this.id,this.div=null,this.xaxis=null,this.yaxis=null,this.createFramework(r),this.map=null,this.accessToken=null,this.styleObj=null,this.traceHash={},this.layerList=[],this.belowLookup={},this.dragging=!1,this.wheeling=!1}var _=x.prototype;_.plot=function(t,e,r){var n,i=this,a=e[i.id];i.map&&a.accesstoken!==i.accessToken&&(i.map.remove(),i.map=null,i.styleObj=null,i.traceHash={},i.layerList=[]),n=i.map?new Promise((function(r,n){i.updateMap(t,e,r,n)})):new Promise((function(r,n){i.createMap(t,e,r,n)})),r.push(n)},_.createMap=function(t,e,r,i){var o=this,s=e[o.id],l=o.styleObj=w(s.style,e);o.accessToken=s.accesstoken;var c=s.bounds,u=c?[[c.west,c.south],[c.east,c.north]]:null,h=o.map=new n.Map({container:o.div,style:l.style,center:k(s.center),zoom:s.zoom,bearing:s.bearing,pitch:s.pitch,maxBounds:u,interactive:!o.isStatic,preserveDrawingBuffer:o.isStatic,doubleClickZoom:!1,boxZoom:!1,attributionControl:!1}).addControl(new n.AttributionControl({compact:!0}));h._canvas.style.left=\"0px\",h._canvas.style.top=\"0px\",o.rejectOnError(i),o.isStatic||o.initFx(t,e);var f=[];f.push(new Promise((function(t){h.once(\"load\",t)}))),f=f.concat(a.fetchTraceGeoData(t)),Promise.all(f).then((function(){o.fillBelowLookup(t,e),o.updateData(t),o.updateLayout(e),o.resolveOnRender(r)})).catch(i)},_.updateMap=function(t,e,r,n){var i=this,o=i.map,s=e[this.id];i.rejectOnError(n);var l=[],c=w(s.style,e);JSON.stringify(i.styleObj)!==JSON.stringify(c)&&(i.styleObj=c,o.setStyle(c.style),i.traceHash={},l.push(new Promise((function(t){o.once(\"styledata\",t)})))),l=l.concat(a.fetchTraceGeoData(t)),Promise.all(l).then((function(){i.fillBelowLookup(t,e),i.updateData(t),i.updateLayout(e),i.resolveOnRender(r)})).catch(n)},_.fillBelowLookup=function(t,e){var r,n,i=e[this.id].layers,a=this.belowLookup={},o=!1;for(r=0;r<t.length;r++){var s=t[r][0].trace,l=s._module;\"string\"==typeof s.below?n=s.below:l.getBelow&&(n=l.getBelow(s,this)),\"\"===n&&(o=!0),a[\"trace-\"+s.uid]=n||\"\"}for(r=0;r<i.length;r++){var c=i[r];n=\"string\"==typeof c.below?c.below:o?\"traces\":\"\",a[\"layout-\"+r]=n}var u,h,f={};for(u in a)f[n=a[u]]?f[n].push(u):f[n]=[u];for(n in f){var p=f[n];if(p.length>1)for(r=0;r<p.length;r++)0===(u=p[r]).indexOf(\"trace-\")?(h=u.split(\"trace-\")[1],this.traceHash[h]&&(this.traceHash[h].below=null)):0===u.indexOf(\"layout-\")&&(h=u.split(\"layout-\")[1],this.layerList[h]&&(this.layerList[h].below=null))}};var b={choroplethmapbox:0,densitymapbox:1,scattermapbox:2};function w(t,e){var r={};if(i.isPlainObject(t))r.id=t.id,r.style=t;else if(\"string\"==typeof t)if(r.id=t,-1!==y.styleValuesMapbox.indexOf(t))r.style=T(t);else if(y.stylesNonMapbox[t]){r.style=y.stylesNonMapbox[t];var n=r.style.sources[\"plotly-\"+t],a=n?n.tiles:void 0;a&&a[0]&&\"?api_key=\"===a[0].slice(-9)&&(a[0]+=e._mapboxAccessToken)}else r.style=t;else r.id=y.styleValueDflt,r.style=T(y.styleValueDflt);return r.transition={duration:0,delay:0},r}function T(t){return y.styleUrlPrefix+t+\"-\"+y.styleUrlSuffix}function k(t){return[t.lon,t.lat]}_.updateData=function(t){var e,r,n,i,a=this.traceHash,o=t.slice().sort((function(t,e){return b[t[0].trace.type]-b[e[0].trace.type]}));for(n=0;n<o.length;n++){var s=o[n],l=!1;(e=a[(r=s[0].trace).uid])&&(e.type===r.type?(e.update(s),l=!0):e.dispose()),!l&&r._module&&(a[r.uid]=r._module.plot(this,s))}var c=Object.keys(a);t:for(n=0;n<c.length;n++){var u=c[n];for(i=0;i<t.length;i++)if(u===(r=t[i][0].trace).uid)continue t;(e=a[u]).dispose(),delete a[u]}},_.updateLayout=function(t){var e=this.map,r=t[this.id];this.dragging||this.wheeling||(e.setCenter(k(r.center)),e.setZoom(r.zoom),e.setBearing(r.bearing),e.setPitch(r.pitch)),this.updateLayers(t),this.updateFramework(t),this.updateFx(t),this.map.resize(),this.gd._context._scrollZoom.mapbox?e.scrollZoom.enable():e.scrollZoom.disable()},_.resolveOnRender=function(t){var e=this.map;e.on(\"render\",(function r(){e.loaded()&&(e.off(\"render\",r),setTimeout(t,10))}))},_.rejectOnError=function(t){var e=this.map;function r(){t(new Error(y.mapOnErrorMsg))}e.once(\"error\",r),e.once(\"style.error\",r),e.once(\"source.error\",r),e.once(\"tile.error\",r),e.once(\"layer.error\",r)},_.createFramework=function(t){var e=this,r=e.div=document.createElement(\"div\");r.id=e.uid,r.style.position=\"absolute\",e.container.appendChild(r),e.xaxis={_id:\"x\",c2p:function(t){return e.project(t).x}},e.yaxis={_id:\"y\",c2p:function(t){return e.project(t).y}},e.updateFramework(t),e.mockAxis={type:\"linear\",showexponent:\"all\",exponentformat:\"B\"},s.setConvert(e.mockAxis,t)},_.initFx=function(t,e){var r=this,n=r.gd,i=r.map;function a(){c.loneUnhover(e._hoverlayer)}function s(){var t=r.getView();n.emit(\"plotly_relayouting\",r.getViewEditsWithDerived(t))}i.on(\"moveend\",(function(t){if(r.map){var e=n._fullLayout;if(t.originalEvent||r.wheeling){var i=e[r.id];o.call(\"_storeDirectGUIEdit\",n.layout,e._preGUI,r.getViewEdits(i));var a=r.getView();i._input.center=i.center=a.center,i._input.zoom=i.zoom=a.zoom,i._input.bearing=i.bearing=a.bearing,i._input.pitch=i.pitch=a.pitch,n.emit(\"plotly_relayout\",r.getViewEditsWithDerived(a))}t.originalEvent&&\"mouseup\"===t.originalEvent.type?r.dragging=!1:r.wheeling&&(r.wheeling=!1),e._rehover&&e._rehover()}})),i.on(\"wheel\",(function(){r.wheeling=!0})),i.on(\"mousemove\",(function(t){var e=r.div.getBoundingClientRect(),a=[t.originalEvent.offsetX,t.originalEvent.offsetY];t.target.getBoundingClientRect=function(){return e},r.xaxis.p2c=function(){return i.unproject(a).lng},r.yaxis.p2c=function(){return i.unproject(a).lat},n._fullLayout._rehover=function(){n._fullLayout._hoversubplot===r.id&&n._fullLayout[r.id]&&c.hover(n,t,r.id)},c.hover(n,t,r.id),n._fullLayout._hoversubplot=r.id})),i.on(\"dragstart\",(function(){r.dragging=!0,a()})),i.on(\"zoomstart\",a),i.on(\"mouseout\",(function(){n._fullLayout._hoversubplot=null})),i.on(\"drag\",s),i.on(\"zoom\",s),i.on(\"dblclick\",(function(){var t=n._fullLayout[r.id];o.call(\"_storeDirectGUIEdit\",n.layout,n._fullLayout._preGUI,r.getViewEdits(t));var e=r.viewInitial;i.setCenter(k(e.center)),i.setZoom(e.zoom),i.setBearing(e.bearing),i.setPitch(e.pitch);var a=r.getView();t._input.center=t.center=a.center,t._input.zoom=t.zoom=a.zoom,t._input.bearing=t.bearing=a.bearing,t._input.pitch=t.pitch=a.pitch,n.emit(\"plotly_doubleclick\",null),n.emit(\"plotly_relayout\",r.getViewEditsWithDerived(a))})),r.clearOutline=function(){m(r.dragOptions),d(r.dragOptions.gd)},r.onClickInPanFn=function(t){return function(e){var i=n._fullLayout.clickmode;i.indexOf(\"select\")>-1&&g(e.originalEvent,n,[r.xaxis],[r.yaxis],r.id,t),i.indexOf(\"event\")>-1&&c.click(n,e.originalEvent)}}},_.updateFx=function(t){var e=this,r=e.map,n=e.gd;if(!e.isStatic){var a,o=t.dragmode;a=function(t,r){r.isRect?(t.range={})[e.id]=[c([r.xmin,r.ymin]),c([r.xmax,r.ymax])]:(t.lassoPoints={})[e.id]=r.map(c)};var s=e.dragOptions;e.dragOptions=i.extendDeep(s||{},{dragmode:t.dragmode,element:e.div,gd:n,plotinfo:{id:e.id,domain:t[e.id].domain,xaxis:e.xaxis,yaxis:e.yaxis,fillRangeItems:a},xaxes:[e.xaxis],yaxes:[e.yaxis],subplot:e.id}),r.off(\"click\",e.onClickInPanHandler),f(o)||h(o)?(r.dragPan.disable(),r.on(\"zoomstart\",e.clearOutline),e.dragOptions.prepFn=function(t,r,n){p(t,r,n,e.dragOptions,o)},l.init(e.dragOptions)):(r.dragPan.enable(),r.off(\"zoomstart\",e.clearOutline),e.div.onmousedown=null,e.div.ontouchstart=null,e.div.removeEventListener(\"touchstart\",e.div._ontouchstart),e.onClickInPanHandler=e.onClickInPanFn(e.dragOptions),r.on(\"click\",e.onClickInPanHandler))}function c(t){var r=e.map.unproject(t);return[r.lng,r.lat]}},_.updateFramework=function(t){var e=t[this.id].domain,r=t._size,n=this.div.style;n.width=r.w*(e.x[1]-e.x[0])+\"px\",n.height=r.h*(e.y[1]-e.y[0])+\"px\",n.left=r.l+e.x[0]*r.w+\"px\",n.top=r.t+(1-e.y[1])*r.h+\"px\",this.xaxis._offset=r.l+e.x[0]*r.w,this.xaxis._length=r.w*(e.x[1]-e.x[0]),this.yaxis._offset=r.t+(1-e.y[1])*r.h,this.yaxis._length=r.h*(e.y[1]-e.y[0])},_.updateLayers=function(t){var e,r=t[this.id].layers,n=this.layerList;if(r.length!==n.length){for(e=0;e<n.length;e++)n[e].dispose();for(n=this.layerList=[],e=0;e<r.length;e++)n.push(v(this,e,r[e]))}else for(e=0;e<r.length;e++)n[e].update(r[e])},_.destroy=function(){this.map&&(this.map.remove(),this.map=null,this.container.removeChild(this.div))},_.toImage=function(){return this.map.stop(),this.map.getCanvas().toDataURL()},_.setOptions=function(t,e,r){for(var n in r)this.map[e](t,n,r[n])},_.getMapLayers=function(){return this.map.getStyle().layers},_.addLayer=function(t,e){var r=this.map;if(\"string\"==typeof e){if(\"\"===e)return void r.addLayer(t,e);for(var n=this.getMapLayers(),a=0;a<n.length;a++)if(e===n[a].id)return void r.addLayer(t,e);i.warn([\"Trying to add layer with *below* value\",e,\"referencing a layer that does not exist\",\"or that does not yet exist.\"].join(\" \"))}r.addLayer(t)},_.project=function(t){return this.map.project(new n.LngLat(t[0],t[1]))},_.getView=function(){var t=this.map,e=t.getCenter(),r={lon:e.lng,lat:e.lat},n=t.getCanvas(),i=parseInt(n.style.width),a=parseInt(n.style.height);return{center:r,zoom:t.getZoom(),bearing:t.getBearing(),pitch:t.getPitch(),_derived:{coordinates:[t.unproject([0,0]).toArray(),t.unproject([i,0]).toArray(),t.unproject([i,a]).toArray(),t.unproject([0,a]).toArray()]}}},_.getViewEdits=function(t){for(var e=this.id,r=[\"center\",\"zoom\",\"bearing\",\"pitch\"],n={},i=0;i<r.length;i++){var a=r[i];n[e+\".\"+a]=t[a]}return n},_.getViewEditsWithDerived=function(t){var e=this.id,r=this.getViewEdits(t);return r[e+\"._derived\"]=t._derived,r},t.exports=x},57891:function(t){\"use strict\";t.exports=function(t){var e=t.editType;return{t:{valType:\"number\",dflt:0,editType:e},r:{valType:\"number\",dflt:0,editType:e},b:{valType:\"number\",dflt:0,editType:e},l:{valType:\"number\",dflt:0,editType:e},editType:e}}},44122:function(t,e,r){\"use strict\";var n=r(45568),i=r(42696).de,a=r(36464).OE,o=r(10721),s=r(93229),l=r(33626),c=r(57297),u=r(78032),h=r(34809),f=r(78766),p=r(63821).BADNUM,d=r(5975),m=r(78534).clearOutline,g=r(26667),y=r(49722),v=r(58935),x=r(4173).eV,_=h.relinkPrivateKeys,b=h._,w=t.exports={};h.extendFlat(w,l),w.attributes=r(9829),w.attributes.type.values=w.allTypes,w.fontAttrs=r(80337),w.layoutAttributes=r(6704);var T=w.transformsRegistry,k=r(90251);w.executeAPICommand=k.executeAPICommand,w.computeAPICommandBindings=k.computeAPICommandBindings,w.manageCommandObserver=k.manageCommandObserver,w.hasSimpleAPICommandBindings=k.hasSimpleAPICommandBindings,w.redrawText=function(t){return t=h.getGraphDiv(t),new Promise((function(e){setTimeout((function(){t._fullLayout&&(l.getComponentMethod(\"annotations\",\"draw\")(t),l.getComponentMethod(\"legend\",\"draw\")(t),l.getComponentMethod(\"colorbar\",\"draw\")(t),e(w.previousPromises(t)))}),300)}))},w.resize=function(t){var e;t=h.getGraphDiv(t);var r=new Promise((function(r,n){t&&!h.isHidden(t)||n(new Error(\"Resize must be passed a displayed plot div element.\")),t._redrawTimer&&clearTimeout(t._redrawTimer),t._resolveResize&&(e=t._resolveResize),t._resolveResize=r,t._redrawTimer=setTimeout((function(){if(!t.layout||t.layout.width&&t.layout.height||h.isHidden(t))r(t);else{delete t.layout.width,delete t.layout.height;var e=t.changed;t.autoplay=!0,l.call(\"relayout\",t,{autosize:!0}).then((function(){t.changed=e,t._resolveResize===r&&(delete t._resolveResize,r(t))}))}}),100)}));return e&&e(r),r},w.previousPromises=function(t){if((t._promises||[]).length)return Promise.all(t._promises).then((function(){t._promises=[]}))},w.addLinks=function(t){if(t._context.showLink||t._context.showSources){var e=t._fullLayout,r=h.ensureSingle(e._paper,\"text\",\"js-plot-link-container\",(function(t){t.style({\"font-family\":'\"Open Sans\", Arial, sans-serif',\"font-size\":\"12px\",fill:f.defaultLine,\"pointer-events\":\"all\"}).each((function(){var t=n.select(this);t.append(\"tspan\").classed(\"js-link-to-tool\",!0),t.append(\"tspan\").classed(\"js-link-spacer\",!0),t.append(\"tspan\").classed(\"js-sourcelinks\",!0)}))})),i=r.node(),a={y:e._paper.attr(\"height\")-9};document.body.contains(i)&&i.getComputedTextLength()>=e.width-20?(a[\"text-anchor\"]=\"start\",a.x=5):(a[\"text-anchor\"]=\"end\",a.x=e._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\");t._context.showSources&&t._context.showSources(t),t._context.showLink&&function(t,e){e.text(\"\");var r=e.append(\"a\").attr({\"xlink:xlink:href\":\"#\",class:\"link--impt link--embedview\",\"font-weight\":\"bold\"}).text(t._context.linkText+\" \"+String.fromCharCode(187));if(t._context.sendData)r.on(\"click\",(function(){w.sendDataToCloud(t)}));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})}}(t,o),s.text(o.text()&&l.text()?\" - \":\"\")}},w.sendDataToCloud=function(t){var e=(window.PLOTLYENV||{}).BASE_URL||t._context.plotlyServerURL;if(e){t.emit(\"plotly_beforeexport\");var r=n.select(t).append(\"div\").attr(\"id\",\"hiddenform\").style(\"display\",\"none\"),i=r.append(\"form\").attr({action:e+\"/external\",method:\"post\",target:\"_blank\"});return i.append(\"input\").attr({type:\"text\",name:\"data\"}).node().value=w.graphJson(t,!1,\"keepdata\"),i.node().submit(),r.remove(),t.emit(\"plotly_afterexport\"),!1}};var A=[\"days\",\"shortDays\",\"months\",\"shortMonths\",\"periods\",\"dateTime\",\"date\",\"time\",\"decimal\",\"thousands\",\"grouping\",\"currency\"],M=[\"year\",\"month\",\"dayMonth\",\"dayMonthYear\"];function S(t,e){var r=t._context.locale;r||(r=\"en-US\");var n=!1,i={};function a(t){for(var r=!0,a=0;a<e.length;a++){var o=e[a];i[o]||(t[o]?i[o]=t[o]:r=!1)}r&&(n=!0)}for(var o=0;o<2;o++){for(var s=t._context.locales,c=0;c<2;c++){var u=(s[r]||{}).format;if(u&&(a(u),n))break;s=l.localeRegistry}var h=r.split(\"-\")[0];if(n||h===r)break;r=h}return n||a(l.localeRegistry.en.format),i}function E(t,e){var r={_fullLayout:e},n=\"x\"===t._id.charAt(0),i=t._mainAxis._anchorAxis,a=\"\",o=\"\",s=\"\";if(i&&(s=i._mainAxis._id,a=n?t._id+s:s+t._id),!a||!e._plots[a]){a=\"\";for(var l=t._counterAxes,c=0;c<l.length;c++){var u=l[c],h=n?t._id+u:u+t._id;o||(o=h);var f=d.getFromId(r,u);if(s&&f.overlaying===s){a=h;break}}}return a||o}function C(t){var e=t.transforms;if(Array.isArray(e)&&e.length)for(var r=0;r<e.length;r++){var n=e[r],i=n._module||T[n.type];if(i&&i.makesData)return!0}return!1}function L(t,e,r,n){for(var i=t.transforms,a=[t],o=0;o<i.length;o++){var s=i[o],l=T[s.type];l&&l.transform&&(a=l.transform(a,{transform:s,fullTrace:t,fullData:e,layout:r,fullLayout:n,transformIndex:o}))}return a}function I(t){return\"string\"==typeof t&&\"px\"===t.substr(t.length-2)&&parseFloat(t)}function P(t){var e=t.margin;if(!t._size){var r=t._size={l:Math.round(e.l),r:Math.round(e.r),t:Math.round(e.t),b:Math.round(e.b),p:Math.round(e.pad)};r.w=Math.round(t.width)-r.l-r.r,r.h=Math.round(t.height)-r.t-r.b}t._pushmargin||(t._pushmargin={}),t._pushmarginIds||(t._pushmarginIds={}),t._reservedMargin||(t._reservedMargin={})}w.supplyDefaults=function(t,e){var r=e&&e.skipUpdateCalc,n=t._fullLayout||{};if(n._skipDefaults)delete n._skipDefaults;else{var o,s=t._fullLayout={},c=t.layout||{},u=t._fullData||[],f=t._fullData=[],p=t.data||[],d=t.calcdata||[],g=t._context||{};t._transitionData||w.createTransitionData(t),s._dfltTitle={plot:b(t,\"Click to enter Plot title\"),subtitle:b(t,\"Click to enter Plot subtitle\"),x:b(t,\"Click to enter X axis title\"),y:b(t,\"Click to enter Y axis title\"),colorbar:b(t,\"Click to enter Colorscale title\"),annotation:b(t,\"new text\")},s._traceWord=b(t,\"trace\");var y=S(t,A);if(s._mapboxAccessToken=g.mapboxAccessToken,n._initialAutoSizeIsDone){var v=n.width,x=n.height;w.supplyLayoutGlobalDefaults(c,s,y),c.width||(s.width=v),c.height||(s.height=x),w.sanitizeMargins(s)}else{w.supplyLayoutGlobalDefaults(c,s,y);var T=!c.width||!c.height,k=s.autosize,E=g.autosizable;T&&(k||E)?w.plotAutoSize(t,c,s):T&&w.sanitizeMargins(s),!k&&T&&(c.width=s.width,c.height=s.height)}s._d3locale=function(t,e){return t.decimal=e.charAt(0),t.thousands=e.charAt(1),{numberFormat:function(e){try{e=a(t).format(h.adjustFormat(e))}catch(t){return h.warnBadFormat(e),h.noFormat}return e},timeFormat:i(t).utcFormat}}(y,s.separators),s._extraFormat=S(t,M),s._initialAutoSizeIsDone=!0,s._dataLength=p.length,s._modules=[],s._visibleModules=[],s._basePlotModules=[];var C=s._subplots=function(){var t,e,r=l.collectableSubplotTypes,n={};if(!r){r=[];var i=l.subplotsRegistry;for(var a in i){var o=i[a].attr;if(o&&(r.push(a),Array.isArray(o)))for(e=0;e<o.length;e++)h.pushUnique(r,o[e])}}for(t=0;t<r.length;t++)n[r[t]]=[];return n}(),L=s._splomAxes={x:{},y:{}},I=s._splomSubplots={};s._splomGridDflt={},s._scatterStackOpts={},s._firstScatter={},s._alignmentOpts={},s._colorAxes={},s._requestRangeslider={},s._traceUids=function(t,e){var r,n,i=e.length,a=[];for(r=0;r<t.length;r++){var o=t[r]._fullInput;o!==n&&a.push(o),n=o}var s=a.length,l=new Array(i),c={};function u(t,e){l[e]=t,c[t]=1}function f(t,e){if(t&&\"string\"==typeof t&&!c[t])return u(t,e),!0}for(r=0;r<i;r++){var p=e[r].uid;\"number\"==typeof p&&(p=String(p)),f(p,r)||r<s&&f(a[r].uid,r)||u(h.randstr(c),r)}return l}(u,p),s._globalTransforms=(t._context||{}).globalTransforms,w.supplyDataDefaults(p,f,c,s);var z=Object.keys(L.x),O=Object.keys(L.y);if(z.length>1&&O.length>1){for(l.getComponentMethod(\"grid\",\"sizeDefaults\")(c,s),o=0;o<z.length;o++)h.pushUnique(C.xaxis,z[o]);for(o=0;o<O.length;o++)h.pushUnique(C.yaxis,O[o]);for(var D in I)h.pushUnique(C.cartesian,D)}if(s._has=w._hasPlotType.bind(s),u.length===f.length)for(o=0;o<f.length;o++)_(f[o],u[o]);w.supplyLayoutModuleDefaults(c,s,f,t._transitionData);var R=s._visibleModules,F=[];for(o=0;o<R.length;o++){var B=R[o].crossTraceDefaults;B&&h.pushUnique(F,B)}for(o=0;o<F.length;o++)F[o](f,s);s._hasOnlyLargeSploms=1===s._basePlotModules.length&&\"splom\"===s._basePlotModules[0].name&&z.length>15&&O.length>15&&0===s.shapes.length&&0===s.images.length,w.linkSubplots(f,s,u,n),w.cleanPlot(f,s,u,n);var N=!(!n._has||!n._has(\"gl2d\")),j=!(!s._has||!s._has(\"gl2d\")),U=!(!n._has||!n._has(\"cartesian\"))||N,V=!(!s._has||!s._has(\"cartesian\"))||j;U&&!V?n._bgLayer.remove():V&&!U&&(s._shouldCreateBgLayer=!0),n._zoomlayer&&!t._dragging&&m({_fullLayout:n}),function(t,e){var r,n=[];e.meta&&(r=e._meta={meta:e.meta,layout:{meta:e.meta}});for(var i=0;i<t.length;i++){var a=t[i];a.meta?n[a.index]=a._meta={meta:a.meta}:e.meta&&(a._meta={meta:e.meta}),e.meta&&(a._meta.layout={meta:e.meta})}n.length&&(r||(r=e._meta={}),r.data=n)}(f,s),_(s,n),l.getComponentMethod(\"colorscale\",\"crossTraceDefaults\")(f,s),s._preGUI||(s._preGUI={}),s._tracePreGUI||(s._tracePreGUI={});var q,H=s._tracePreGUI,G={};for(q in H)G[q]=\"old\";for(o=0;o<f.length;o++)G[q=f[o]._fullInput.uid]||(H[q]={}),G[q]=\"new\";for(q in G)\"old\"===G[q]&&delete H[q];P(s),l.getComponentMethod(\"rangeslider\",\"makeData\")(s),r||d.length!==f.length||w.supplyDefaultsUpdateCalc(d,f)}},w.supplyDefaultsUpdateCalc=function(t,e){for(var r=0;r<e.length;r++){var n=e[r],i=(t[r]||[])[0];if(i&&i.trace){var a=i.trace;if(a._hasCalcTransform){var o,s,l,c=a._arrayAttrs;for(o=0;o<c.length;o++)s=c[o],l=h.nestedProperty(a,s).get().slice(),h.nestedProperty(n,s).set(l)}i.trace=n}}},w.createTransitionData=function(t){t._transitionData||(t._transitionData={}),t._transitionData._frames||(t._transitionData._frames=[]),t._transitionData._frameHash||(t._transitionData._frameHash={}),t._transitionData._counter||(t._transitionData._counter=0),t._transitionData._interruptCallbacks||(t._transitionData._interruptCallbacks=[])},w._hasPlotType=function(t){var e,r=this._basePlotModules||[];for(e=0;e<r.length;e++)if(r[e].name===t)return!0;var n=this._modules||[];for(e=0;e<n.length;e++){var i=n[e].name;if(i===t)return!0;var a=l.modules[i];if(a&&a.categories[t])return!0}return!1},w.cleanPlot=function(t,e,r,n){var i,a,o=n._basePlotModules||[];for(i=0;i<o.length;i++){var s=o[i];s.clean&&s.clean(t,e,r,n)}var l=n._has&&n._has(\"gl\"),c=e._has&&e._has(\"gl\");l&&!c&&void 0!==n._glcontainer&&(n._glcontainer.selectAll(\".gl-canvas\").remove(),n._glcontainer.selectAll(\".no-webgl\").remove(),n._glcanvas=null);var u=!!n._infolayer;t:for(i=0;i<r.length;i++){var h=r[i].uid;for(a=0;a<t.length;a++)if(h===t[a].uid)continue t;u&&n._infolayer.select(\".cb\"+h).remove()}},w.linkSubplots=function(t,e,r,n){var i,a,o=n._plots||{},s=e._plots={},c=e._subplots,u={_fullData:t,_fullLayout:e},f=c.cartesian.concat(c.gl2d||[]);for(i=0;i<f.length;i++){var p,m=f[i],g=o[m],y=d.getFromId(u,m,\"x\"),v=d.getFromId(u,m,\"y\");for(g?p=s[m]=g:(p=s[m]={}).id=m,y._counterAxes.push(v._id),v._counterAxes.push(y._id),y._subplotsWith.push(m),v._subplotsWith.push(m),p.xaxis=y,p.yaxis=v,p._hasClipOnAxisFalse=!1,a=0;a<t.length;a++){var x=t[a];if(x.xaxis===p.xaxis._id&&x.yaxis===p.yaxis._id&&!1===x.cliponaxis){p._hasClipOnAxisFalse=!0;break}}}var _,b=d.list(u,null,!0);for(i=0;i<b.length;i++){var w=null;(_=b[i]).overlaying&&(w=d.getFromId(u,_.overlaying))&&w.overlaying&&(_.overlaying=!1,w=null),_._mainAxis=w||_,w&&(_.domain=w.domain.slice()),_._anchorAxis=\"free\"===_.anchor?null:d.getFromId(u,_.anchor)}for(i=0;i<b.length;i++)if((_=b[i])._counterAxes.sort(d.idSort),_._subplotsWith.sort(h.subplotSort),_._mainSubplot=E(_,e),_._counterAxes.length&&(_.spikemode&&-1!==_.spikemode.indexOf(\"across\")||_.automargin&&_.mirror&&\"free\"!==_.anchor||l.getComponentMethod(\"rangeslider\",\"isVisible\")(_))){var T=1,k=0;for(a=0;a<_._counterAxes.length;a++){var A=d.getFromId(u,_._counterAxes[a]);T=Math.min(T,A.domain[0]),k=Math.max(k,A.domain[1])}T<k&&(_._counterDomainMin=T,_._counterDomainMax=k)}},w.clearExpandedTraceDefaultColors=function(t){var e,r,n;for(r=[],(e=t._module._colorAttrs)||(t._module._colorAttrs=e=[],c.crawl(t._module.attributes,(function(t,n,i,a){r[a]=n,r.length=a+1,\"color\"===t.valType&&void 0===t.dflt&&e.push(r.join(\".\"))}))),n=0;n<e.length;n++)h.nestedProperty(t,\"_input.\"+e[n]).get()||h.nestedProperty(t,e[n]).set(null)},w.supplyDataDefaults=function(t,e,r,n){var i,a,o,s=n._modules,c=n._visibleModules,f=n._basePlotModules,p=0,d=0;function m(t){e.push(t);var r=t._module;r&&(h.pushUnique(s,r),!0===t.visible&&h.pushUnique(c,r),h.pushUnique(f,t._module.basePlotModule),p++,!1!==t._input.visible&&d++)}n._transformModules=[];var g={},y=[],v=(r.template||{}).data||{},x=u.traceTemplater(v);for(i=0;i<t.length;i++){if(o=t[i],(a=x.newTrace(o)).uid=n._traceUids[i],w.supplyTraceDefaults(o,a,d,n,i),a.index=i,a._input=o,a._expandedIndex=p,a.transforms&&a.transforms.length)for(var b=!1!==o.visible&&!1===a.visible,T=L(a,e,r,n),k=0;k<T.length;k++){var A=T[k],M={_template:a._template,type:a.type,uid:a.uid+k};b&&!1===A.visible&&delete A.visible,w.supplyTraceDefaults(A,M,p,n,i),_(M,A),M.index=i,M._input=o,M._fullInput=a,M._expandedIndex=p,M._expandedInput=A,m(M)}else a._fullInput=a,a._expandedInput=a,m(a);l.traceIs(a,\"carpetAxis\")&&(g[a.carpet]=a),l.traceIs(a,\"carpetDependent\")&&y.push(i)}for(i=0;i<y.length;i++)if((a=e[y[i]]).visible){var S=g[a.carpet];a._carpet=S,S&&S.visible?(a.xaxis=S.xaxis,a.yaxis=S.yaxis):a.visible=!1}},w.supplyAnimationDefaults=function(t){var e;t=t||{};var r={};function n(e,n){return h.coerce(t||{},r,y,e,n)}if(n(\"mode\"),n(\"direction\"),n(\"fromcurrent\"),Array.isArray(t.frame))for(r.frame=[],e=0;e<t.frame.length;e++)r.frame[e]=w.supplyAnimationFrameDefaults(t.frame[e]||{});else r.frame=w.supplyAnimationFrameDefaults(t.frame||{});if(Array.isArray(t.transition))for(r.transition=[],e=0;e<t.transition.length;e++)r.transition[e]=w.supplyAnimationTransitionDefaults(t.transition[e]||{});else r.transition=w.supplyAnimationTransitionDefaults(t.transition||{});return r},w.supplyAnimationFrameDefaults=function(t){var e={};function r(r,n){return h.coerce(t||{},e,y.frame,r,n)}return r(\"duration\"),r(\"redraw\"),e},w.supplyAnimationTransitionDefaults=function(t){var e={};function r(r,n){return h.coerce(t||{},e,y.transition,r,n)}return r(\"duration\"),r(\"easing\"),e},w.supplyFrameDefaults=function(t){var e={};function r(r,n){return h.coerce(t,e,v,r,n)}return r(\"group\"),r(\"name\"),r(\"traces\"),r(\"baseframe\"),r(\"data\"),r(\"layout\"),e},w.supplyTraceDefaults=function(t,e,r,n,i){var a,o=n.colorway||f.defaults,s=o[r%o.length];function c(r,n){return h.coerce(t,e,w.attributes,r,n)}var u=c(\"visible\");c(\"type\"),c(\"name\",n._traceWord+\" \"+i),c(\"uirevision\",n.uirevision);var p=w.getModule(e);if(e._module=p,p){var d=p.basePlotModule,m=d.attr,g=d.attributes;if(m&&g){var y=n._subplots,v=\"\";if(u||\"gl2d\"!==d.name){if(Array.isArray(m))for(a=0;a<m.length;a++){var x=m[a],_=h.coerce(t,e,g,x);y[x]&&h.pushUnique(y[x],_),v+=_}else v=h.coerce(t,e,g,m);y[d.name]&&h.pushUnique(y[d.name],v)}}}if(u){if(c(\"customdata\"),c(\"ids\"),c(\"meta\"),l.traceIs(e,\"showLegend\")?(h.coerce(t,e,p.attributes.showlegend?p.attributes:w.attributes,\"showlegend\"),c(\"legend\"),c(\"legendwidth\"),c(\"legendgroup\"),c(\"legendgrouptitle.text\"),c(\"legendrank\"),e._dfltShowLegend=!0):e._dfltShowLegend=!1,p&&p.supplyDefaults(t,e,s,n),l.traceIs(e,\"noOpacity\")||c(\"opacity\"),l.traceIs(e,\"notLegendIsolatable\")&&(e.visible=!!e.visible),l.traceIs(e,\"noHover\")||(e.hovertemplate||h.coerceHoverinfo(t,e,n),\"parcats\"!==e.type&&l.getComponentMethod(\"fx\",\"supplyDefaults\")(t,e,s,n)),p&&p.selectPoints){var b=c(\"selectedpoints\");h.isTypedArray(b)&&(e.selectedpoints=Array.from(b))}w.supplyTransformDefaults(t,e,n)}return e},w.hasMakesDataTransform=C,w.supplyTransformDefaults=function(t,e,r){if(e._length||C(t)){var n=r._globalTransforms||[],i=r._transformModules||[];if(Array.isArray(t.transforms)||0!==n.length)for(var a=t.transforms||[],o=n.concat(a),s=e.transforms=[],l=0;l<o.length;l++){var c,u=o[l],f=u.type,p=T[f],d=!(u._module&&u._module===p),m=p&&\"function\"==typeof p.transform;p||h.warn(\"Unrecognized transform type \"+f+\".\"),p&&p.supplyDefaults&&(d||m)?((c=p.supplyDefaults(u,e,r,t)).type=f,c._module=p,h.pushUnique(i,p)):c=h.extendFlat({},u),s.push(c)}}},w.supplyLayoutGlobalDefaults=function(t,e,r){function n(r,n){return h.coerce(t,e,w.layoutAttributes,r,n)}var i=t.template;h.isPlainObject(i)&&(e.template=i,e._template=i.layout,e._dataTemplate=i.data),n(\"autotypenumbers\");var a=h.coerceFont(n,\"font\"),o=a.size;h.coerceFont(n,\"title.font\",a,{overrideDflt:{size:Math.round(1.4*o)}}),n(\"title.text\",e._dfltTitle.plot),n(\"title.xref\");var s=n(\"title.yref\");n(\"title.pad.t\"),n(\"title.pad.r\"),n(\"title.pad.b\"),n(\"title.pad.l\");var c=n(\"title.automargin\");n(\"title.x\"),n(\"title.xanchor\"),n(\"title.y\"),n(\"title.yanchor\"),n(\"title.subtitle.text\",e._dfltTitle.subtitle),h.coerceFont(n,\"title.subtitle.font\",a,{overrideDflt:{size:Math.round(.7*e.title.font.size)}}),c&&(\"paper\"===s&&(0!==e.title.y&&(e.title.y=1),\"auto\"===e.title.yanchor&&(e.title.yanchor=0===e.title.y?\"top\":\"bottom\")),\"container\"===s&&(\"auto\"===e.title.y&&(e.title.y=1),\"auto\"===e.title.yanchor&&(e.title.yanchor=e.title.y<.5?\"bottom\":\"top\"))),n(\"uniformtext.mode\")&&n(\"uniformtext.minsize\"),n(\"autosize\",!(t.width&&t.height)),n(\"width\"),n(\"height\"),n(\"minreducedwidth\"),n(\"minreducedheight\"),n(\"margin.l\"),n(\"margin.r\"),n(\"margin.t\"),n(\"margin.b\"),n(\"margin.pad\"),n(\"margin.autoexpand\"),t.width&&t.height&&w.sanitizeMargins(e),l.getComponentMethod(\"grid\",\"sizeDefaults\")(t,e),n(\"paper_bgcolor\"),n(\"separators\",r.decimal+r.thousands),n(\"hidesources\"),n(\"colorway\"),n(\"datarevision\");var u=n(\"uirevision\");n(\"editrevision\",u),n(\"selectionrevision\",u),l.getComponentMethod(\"modebar\",\"supplyLayoutDefaults\")(t,e),l.getComponentMethod(\"shapes\",\"supplyDrawNewShapeDefaults\")(t,e,n),l.getComponentMethod(\"selections\",\"supplyDrawNewSelectionDefaults\")(t,e,n),n(\"meta\"),h.isPlainObject(t.transition)&&(n(\"transition.duration\"),n(\"transition.easing\"),n(\"transition.ordering\")),l.getComponentMethod(\"calendars\",\"handleDefaults\")(t,e,\"calendar\"),l.getComponentMethod(\"fx\",\"supplyLayoutGlobalDefaults\")(t,e,n),h.coerce(t,e,g,\"scattermode\")},w.plotAutoSize=function(t,e,r){var n,i,a=t._context||{},s=a.frameMargins,l=h.isPlotDiv(t);if(l&&t.emit(\"plotly_autosize\"),a.fillFrame)n=window.innerWidth,i=window.innerHeight,document.body.style.overflow=\"hidden\";else{var c=l?window.getComputedStyle(t):{};if(n=I(c.width)||I(c.maxWidth)||r.width,i=I(c.height)||I(c.maxHeight)||r.height,o(s)&&s>0){var u=1-2*s;n=Math.round(u*n),i=Math.round(u*i)}}var f=w.layoutAttributes.width.min,p=w.layoutAttributes.height.min;n<f&&(n=f),i<p&&(i=p);var d=!e.width&&Math.abs(r.width-n)>1,m=!e.height&&Math.abs(r.height-i)>1;(m||d)&&(d&&(r.width=n),m&&(r.height=i)),t._initialAutoSize||(t._initialAutoSize={width:n,height:i}),w.sanitizeMargins(r)},w.supplyLayoutModuleDefaults=function(t,e,r,n){var i,a,o,s=l.componentsRegistry,c=e._basePlotModules,u=l.subplotsRegistry.cartesian;for(i in s)(o=s[i]).includeBasePlot&&o.includeBasePlot(t,e);for(var f in c.length||c.push(u),e._has(\"cartesian\")&&(l.getComponentMethod(\"grid\",\"contentDefaults\")(t,e),u.finalizeSubplots(t,e)),e._subplots)e._subplots[f].sort(h.subplotSort);for(a=0;a<c.length;a++)(o=c[a]).supplyLayoutDefaults&&o.supplyLayoutDefaults(t,e,r);var p=e._modules;for(a=0;a<p.length;a++)(o=p[a]).supplyLayoutDefaults&&o.supplyLayoutDefaults(t,e,r);var d=e._transformModules;for(a=0;a<d.length;a++)(o=d[a]).supplyLayoutDefaults&&o.supplyLayoutDefaults(t,e,r,n);for(i in s)(o=s[i]).supplyLayoutDefaults&&o.supplyLayoutDefaults(t,e,r)},w.purge=function(t){var e=t._fullLayout||{};void 0!==e._glcontainer&&(e._glcontainer.selectAll(\".gl-canvas\").remove(),e._glcontainer.remove(),e._glcanvas=null),e._modeBar&&e._modeBar.destroy(),t._transitionData&&(t._transitionData._interruptCallbacks&&(t._transitionData._interruptCallbacks.length=0),t._transitionData._animationRaf&&window.cancelAnimationFrame(t._transitionData._animationRaf)),h.clearThrottle(),h.clearResponsive(t),delete t.data,delete t.layout,delete t._fullData,delete t._fullLayout,delete t.calcdata,delete t.empty,delete t.fid,delete t.undoqueue,delete t.undonum,delete t.autoplay,delete t.changed,delete t._promises,delete t._redrawTimer,delete t._hmlumcount,delete t._hmpixcount,delete t._transitionData,delete t._transitioning,delete t._initialAutoSize,delete t._transitioningWithDuration,delete t._dragging,delete t._dragged,delete t._dragdata,delete t._hoverdata,delete t._snapshotInProgress,delete t._editing,delete t._mouseDownTime,delete t._legendMouseDownTime,t.removeAllListeners&&t.removeAllListeners()},w.style=function(t){var e,r=t._fullLayout._visibleModules,n=[];for(e=0;e<r.length;e++){var i=r[e];i.style&&h.pushUnique(n,i.style)}for(e=0;e<n.length;e++)n[e](t)},w.sanitizeMargins=function(t){if(t&&t.margin){var e,r=t.width,n=t.height,i=t.margin,a=r-(i.l+i.r),o=n-(i.t+i.b);a<0&&(e=(r-1)/(i.l+i.r),i.l=Math.floor(e*i.l),i.r=Math.floor(e*i.r)),o<0&&(e=(n-1)/(i.t+i.b),i.t=Math.floor(e*i.t),i.b=Math.floor(e*i.b))}},w.clearAutoMarginIds=function(t){t._fullLayout._pushmarginIds={}},w.allowAutoMargin=function(t,e){t._fullLayout._pushmarginIds[e]=1},w.autoMargin=function(t,e,r){var n=t._fullLayout,i=n.width,a=n.height,o=n.margin,s=n.minreducedwidth,l=n.minreducedheight,c=h.constrain(i-o.l-o.r,2,s),u=h.constrain(a-o.t-o.b,2,l),f=Math.max(0,i-c),p=Math.max(0,a-u),d=n._pushmargin,m=n._pushmarginIds;if(!1!==o.autoexpand){if(r){var g=r.pad;if(void 0===g&&(g=Math.min(12,o.l,o.r,o.t,o.b)),f){var y=(r.l+r.r)/f;y>1&&(r.l/=y,r.r/=y)}if(p){var v=(r.t+r.b)/p;v>1&&(r.t/=v,r.b/=v)}var x=void 0!==r.xl?r.xl:r.x,_=void 0!==r.xr?r.xr:r.x,b=void 0!==r.yt?r.yt:r.y,T=void 0!==r.yb?r.yb:r.y;d[e]={l:{val:x,size:r.l+g},r:{val:_,size:r.r+g},b:{val:T,size:r.b+g},t:{val:b,size:r.t+g}},m[e]=1}else delete d[e],delete m[e];if(!n._replotting)return w.doAutoMargin(t)}},w.doAutoMargin=function(t){var e=t._fullLayout,r=e.width,n=e.height;e._size||(e._size={}),P(e);var i=e._size,a=e.margin,s={t:0,b:0,l:0,r:0},c=h.extendFlat({},i),u=a.l,f=a.r,p=a.t,m=a.b,g=e._pushmargin,y=e._pushmarginIds,v=e.minreducedwidth,x=e.minreducedheight;if(!1!==a.autoexpand){for(var _ in g)y[_]||delete g[_];var b=t._fullLayout._reservedMargin;for(var T in b)for(var k in b[T]){var A=b[T][k];s[k]=Math.max(s[k],A)}for(var M in g.base={l:{val:0,size:u},r:{val:1,size:f},t:{val:1,size:p},b:{val:0,size:m}},s){var S=0;for(var E in g)\"base\"!==E&&o(g[E][M].size)&&(S=g[E][M].size>S?g[E][M].size:S);var C=Math.max(0,a[M]-S);s[M]=Math.max(0,s[M]-C)}for(var L in g){var I=g[L].l||{},z=g[L].b||{},O=I.val,D=I.size,R=z.val,F=z.size,B=r-s.r-s.l,N=n-s.t-s.b;for(var j in g){if(o(D)&&g[j].r){var U=g[j].r.val,V=g[j].r.size;if(U>O){var q=(D*U+(V-B)*O)/(U-O),H=(V*(1-O)+(D-B)*(1-U))/(U-O);q+H>u+f&&(u=q,f=H)}}if(o(F)&&g[j].t){var G=g[j].t.val,Z=g[j].t.size;if(G>R){var W=(F*G+(Z-N)*R)/(G-R),Y=(Z*(1-R)+(F-N)*(1-G))/(G-R);W+Y>m+p&&(m=W,p=Y)}}}}}var X=h.constrain(r-a.l-a.r,2,v),$=h.constrain(n-a.t-a.b,2,x),J=Math.max(0,r-X),K=Math.max(0,n-$);if(J){var Q=(u+f)/J;Q>1&&(u/=Q,f/=Q)}if(K){var tt=(m+p)/K;tt>1&&(m/=tt,p/=tt)}if(i.l=Math.round(u)+s.l,i.r=Math.round(f)+s.r,i.t=Math.round(p)+s.t,i.b=Math.round(m)+s.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,!e._replotting&&(w.didMarginChange(c,i)||function(t){if(\"_redrawFromAutoMarginCount\"in t._fullLayout)return!1;var e=d.list(t,\"\",!0);for(var r in e)if(e[r].autoshift||e[r].shift)return!0;return!1}(t))){\"_redrawFromAutoMarginCount\"in e?e._redrawFromAutoMarginCount++:e._redrawFromAutoMarginCount=1;var et=3*(1+Object.keys(y).length);if(e._redrawFromAutoMarginCount<et)return l.call(\"_doPlot\",t);e._size=c,h.warn(\"Too many auto-margin redraws.\")}!function(t){var e=d.list(t,\"\",!0);[\"_adjustTickLabelsOverflow\",\"_hideCounterAxisInsideTickLabels\"].forEach((function(t){for(var r=0;r<e.length;r++){var n=e[r][t];n&&n()}}))}(t)};var z=[\"l\",\"r\",\"t\",\"b\",\"p\",\"w\",\"h\"];function O(t,e,r){var n=!1,i=[w.previousPromises,function(){if(t._transitionData)return t._transitioning=!1,function(t){var e=Promise.resolve();if(!t)return e;for(;t.length;)e=e.then(t.shift());return e}(t._transitionData._interruptCallbacks)},r.prepareFn,w.rehover,w.reselect,function(){return t.emit(\"plotly_transitioning\",[]),new Promise((function(i){t._transitioning=!0,e.duration>0&&(t._transitioningWithDuration=!0),t._transitionData._interruptCallbacks.push((function(){n=!0})),r.redraw&&t._transitionData._interruptCallbacks.push((function(){return l.call(\"redraw\",t)})),t._transitionData._interruptCallbacks.push((function(){t.emit(\"plotly_transitioninterrupted\",[])}));var a=0,o=0;function s(){return a++,function(){var e;o++,n||o!==a||(e=i,t._transitionData&&(function(t){if(t)for(;t.length;)t.shift()}(t._transitionData._interruptCallbacks),Promise.resolve().then((function(){if(r.redraw)return l.call(\"redraw\",t)})).then((function(){t._transitioning=!1,t._transitioningWithDuration=!1,t.emit(\"plotly_transitioned\",[])})).then(e)))}}r.runFn(s),setTimeout(s())}))}],a=h.syncOrAsync(i,t);return a&&a.then||(a=Promise.resolve()),a.then((function(){return t}))}w.didMarginChange=function(t,e){for(var r=0;r<z.length;r++){var n=z[r],i=t[n],a=e[n];if(!o(i)||Math.abs(a-i)>1)return!0}return!1},w.graphJson=function(t,e,r,n,i,a){(i&&e&&!t._fullData||i&&!e&&!t._fullLayout)&&w.supplyDefaults(t);var o=i?t._fullData:t.data,l=i?t._fullLayout:t.layout,c=(t._transitionData||{})._frames;function u(t,e){if(\"function\"==typeof t)return e?\"_function_\":null;if(h.isPlainObject(t)){var n,i={};return Object.keys(t).sort().forEach((function(a){if(-1===[\"_\",\"[\"].indexOf(a.charAt(0)))if(\"function\"!=typeof t[a]){if(\"keepdata\"===r){if(\"src\"===a.substr(a.length-3))return}else if(\"keepstream\"===r){if(\"string\"==typeof(n=t[a+\"src\"])&&n.indexOf(\":\")>0&&!h.isPlainObject(t.stream))return}else if(\"keepall\"!==r&&\"string\"==typeof(n=t[a+\"src\"])&&n.indexOf(\":\")>0)return;i[a]=u(t[a],e)}else e&&(i[a]=\"_function\")})),i}var a=Array.isArray(t),o=h.isTypedArray(t);if((a||o)&&t.dtype&&t.shape){var l=t.bdata;return u({dtype:t.dtype,shape:t.shape,bdata:h.isArrayBuffer(l)?s.encode(l):l},e)}return a?t.map((function(t){return u(t,e)})):o?h.simpleMap(t,h.identity):h.isJSDate(t)?h.ms2DateTimeLocal(+t):t}var f={data:(o||[]).map((function(t){var r=u(t);return e&&delete r.fit,r}))};if(!e&&(f.layout=u(l),i)){var p=l._size;f.layout.computed={margin:{b:p.b,l:p.l,r:p.r,t:p.t}}}return c&&(f.frames=u(c)),a&&(f.config=u(t._context,!0)),\"object\"===n?f:JSON.stringify(f)},w.modifyFrames=function(t,e){var r,n,i,a=t._transitionData._frames,o=t._transitionData._frameHash;for(r=0;r<e.length;r++)switch((n=e[r]).type){case\"replace\":i=n.value;var s=(a[n.index]||{}).name,l=i.name;a[n.index]=o[l]=i,l!==s&&(delete o[s],o[l]=i);break;case\"insert\":o[(i=n.value).name]=i,a.splice(n.index,0,i);break;case\"delete\":delete o[(i=a[n.index]).name],a.splice(n.index,1)}return Promise.resolve()},w.computeFrame=function(t,e){var r,n,i,a,o=t._transitionData._frameHash;if(!e)throw new Error(\"computeFrame must be given a string frame name\");var s=o[e.toString()];if(!s)return!1;for(var l=[s],c=[s.name];s.baseframe&&(s=o[s.baseframe.toString()])&&-1===c.indexOf(s.name);)l.push(s),c.push(s.name);for(var u={};s=l.pop();)if(s.layout&&(u.layout=w.extendLayout(u.layout,s.layout)),s.data){if(u.data||(u.data=[]),!(n=s.traces))for(n=[],r=0;r<s.data.length;r++)n[r]=r;for(u.traces||(u.traces=[]),r=0;r<s.data.length;r++)null!=(i=n[r])&&(-1===(a=u.traces.indexOf(i))&&(a=u.data.length,u.traces[a]=i),u.data[a]=w.extendTrace(u.data[a],s.data[r]))}return u},w.recomputeFrameHash=function(t){for(var e=t._transitionData._frameHash={},r=t._transitionData._frames,n=0;n<r.length;n++){var i=r[n];i&&i.name&&(e[i.name]=i)}},w.extendObjectWithContainers=function(t,e,r){var n,i,a,o,s,l,c,u=h.extendDeepNoArrays({},e||{}),f=h.expandObjectPaths(u),p={};if(r&&r.length)for(a=0;a<r.length;a++)void 0===(i=(n=h.nestedProperty(f,r[a])).get())?h.nestedProperty(p,r[a]).set(null):(n.set(null),h.nestedProperty(p,r[a]).set(i));if(t=h.extendDeepNoArrays(t||{},f),r&&r.length)for(a=0;a<r.length;a++)if(l=h.nestedProperty(p,r[a]).get()){for(c=(s=h.nestedProperty(t,r[a])).get(),Array.isArray(c)||(c=[],s.set(c)),o=0;o<l.length;o++){var d=l[o];c[o]=null===d?null:w.extendObjectWithContainers(c[o],d)}s.set(c)}return t},w.dataArrayContainers=[\"transforms\",\"dimensions\"],w.layoutArrayContainers=l.layoutArrayContainers,w.extendTrace=function(t,e){return w.extendObjectWithContainers(t,e,w.dataArrayContainers)},w.extendLayout=function(t,e){return w.extendObjectWithContainers(t,e,w.layoutArrayContainers)},w.transition=function(t,e,r,n,i,a){var o={redraw:i.redraw},s={},l=[];return o.prepareFn=function(){for(var i=Array.isArray(e)?e.length:0,a=n.slice(0,i),o=0;o<a.length;o++){var c=a[o],u=t._fullData[c]._module;if(u){if(u.animatable){var f=u.basePlotModule.name;s[f]||(s[f]=[]),s[f].push(c)}t.data[a[o]]=w.extendTrace(t.data[a[o]],e[o])}}var p=h.expandObjectPaths(h.extendDeepNoArrays({},r)),d=/^[xy]axis[0-9]*$/;for(var m in p)d.test(m)&&delete p[m].range;w.extendLayout(t.layout,p),delete t.calcdata,w.supplyDefaults(t),w.doCalcdata(t);var g=h.expandObjectPaths(r);if(g){var y=t._fullLayout._plots;for(var v in y){var x=y[v],_=x.xaxis,b=x.yaxis,T=_.range.slice(),k=b.range.slice(),A=null,M=null,S=null,E=null;Array.isArray(g[_._name+\".range\"])?A=g[_._name+\".range\"].slice():Array.isArray((g[_._name]||{}).range)&&(A=g[_._name].range.slice()),Array.isArray(g[b._name+\".range\"])?M=g[b._name+\".range\"].slice():Array.isArray((g[b._name]||{}).range)&&(M=g[b._name].range.slice()),T&&A&&(_.r2l(T[0])!==_.r2l(A[0])||_.r2l(T[1])!==_.r2l(A[1]))&&(S={xr0:T,xr1:A}),k&&M&&(b.r2l(k[0])!==b.r2l(M[0])||b.r2l(k[1])!==b.r2l(M[1]))&&(E={yr0:k,yr1:M}),(S||E)&&l.push(h.extendFlat({plotinfo:x},S,E))}}return Promise.resolve()},o.runFn=function(e){var n,i,o=t._fullLayout._basePlotModules,c=l.length;if(r)for(i=0;i<o.length;i++)o[i].transitionAxes&&o[i].transitionAxes(t,l,a,e);for(var u in c?((n=h.extendFlat({},a)).duration=0,delete s.cartesian):n=a,s){var f=s[u];t._fullData[f[0]]._module.basePlotModule.plot(t,f,n,e)}},O(t,a,o)},w.transitionFromReact=function(t,e,r,n){var i=t._fullLayout,a=i.transition,o={},s=[];return o.prepareFn=function(){var t=i._plots;for(var a in o.redraw=!1,\"some\"===e.anim&&(o.redraw=!0),\"some\"===r.anim&&(o.redraw=!0),t){var l=t[a],c=l.xaxis,u=l.yaxis,f=n[c._name].range.slice(),p=n[u._name].range.slice(),d=c.range.slice(),m=u.range.slice();c.setScale(),u.setScale();var g=null,y=null;c.r2l(f[0])===c.r2l(d[0])&&c.r2l(f[1])===c.r2l(d[1])||(g={xr0:f,xr1:d}),u.r2l(p[0])===u.r2l(m[0])&&u.r2l(p[1])===u.r2l(m[1])||(y={yr0:p,yr1:m}),(g||y)&&s.push(h.extendFlat({plotinfo:l},g,y))}return Promise.resolve()},o.runFn=function(r){for(var n,i,o,l=t._fullData,c=t._fullLayout._basePlotModules,u=[],f=0;f<l.length;f++)u.push(f);function p(){if(t._fullLayout)for(var e=0;e<c.length;e++)c[e].transitionAxes&&c[e].transitionAxes(t,s,n,r)}function d(){if(t._fullLayout)for(var e=0;e<c.length;e++)c[e].plot(t,o,i,r)}s.length&&e.anim?\"traces first\"===a.ordering?(n=h.extendFlat({},a,{duration:0}),o=u,i=a,setTimeout(p,a.duration),d()):(n=a,o=null,i=h.extendFlat({},a,{duration:0}),setTimeout(d,n.duration),p()):s.length?(n=a,p()):e.anim&&(o=u,i=a,d())},O(t,a,o)},w.doCalcdata=function(t,e){var r,n,i,a,o=d.list(t),s=t._fullData,u=t._fullLayout,f=new Array(s.length),m=(t.calcdata||[]).slice();for(t.calcdata=f,u._numBoxes=0,u._numViolins=0,u._violinScaleGroupStats={},t._hmpixcount=0,t._hmlumcount=0,u._piecolormap={},u._sunburstcolormap={},u._treemapcolormap={},u._iciclecolormap={},u._funnelareacolormap={},i=0;i<s.length;i++)Array.isArray(e)&&-1===e.indexOf(i)&&(f[i]=m[i]);for(i=0;i<s.length;i++)(r=s[i])._arrayAttrs=c.findArrayAttributes(r),r._extremes={};var g=u._subplots.polar||[];for(i=0;i<g.length;i++)o.push(u[g[i]].radialaxis,u[g[i]].angularaxis);for(var y in u._colorAxes){var v=u[y];!1!==v.cauto&&(delete v.cmin,delete v.cmax)}var x=!1;function _(e){if(r=s[e],n=r._module,!0===r.visible&&r.transforms){if(n&&n.calc){var i=n.calc(t,r);i[0]&&i[0].t&&i[0].t._scene&&delete i[0].t._scene.dirty}for(a=0;a<r.transforms.length;a++){var o=r.transforms[a];(n=T[o.type])&&n.calcTransform&&(r._hasCalcTransform=!0,x=!0,n.calcTransform(t,r,o))}}}function b(e,i){if(r=s[e],!!(n=r._module).isContainer===i){var o=[];if(!0===r.visible&&0!==r._length){delete r._indexToPoints;var l=r.transforms||[];for(a=l.length-1;a>=0;a--)if(l[a].enabled){r._indexToPoints=l[a]._indexToPoints;break}n&&n.calc&&(o=n.calc(t,r))}Array.isArray(o)&&o[0]||(o=[{x:p,y:p}]),o[0].t||(o[0].t={}),o[0].trace=r,f[e]=o}}for(R(o,s,u),i=0;i<s.length;i++)b(i,!0);for(i=0;i<s.length;i++)_(i);for(x&&R(o,s,u),i=0;i<s.length;i++)b(i,!0);for(i=0;i<s.length;i++)b(i,!1);F(t);var w=function(t,e){var r,n,i,a,o,s=[];function c(t,r,n){var i=r._id.charAt(0);if(\"histogram2dcontour\"===t){var a=r._counterAxes[0],o=d.getFromId(e,a),s=\"x\"===i||\"x\"===a&&\"category\"===o.type,l=\"y\"===i||\"y\"===a&&\"category\"===o.type;return function(t,e){return 0===t||0===e||s&&t===n[e].length-1||l&&e===n.length-1?-1:(\"y\"===i?e:t)-1}}return function(t,e){return\"y\"===i?e:t}}var u={min:function(t){return h.aggNums(Math.min,null,t)},max:function(t){return h.aggNums(Math.max,null,t)},sum:function(t){return h.aggNums((function(t,e){return t+e}),null,t)},total:function(t){return h.aggNums((function(t,e){return t+e}),null,t)},mean:function(t){return h.mean(t)},\"geometric mean\":function(t){return h.geometricMean(t)},median:function(t){return h.median(t)}};function f(t,e){return t[1]-e[1]}function p(t,e){return e[1]-t[1]}for(r=0;r<t.length;r++){var m=t[r];if(\"category\"===m.type){var g=m.categoryorder.match(D);if(g){var y=g[1],v=g[2],x=m._id.charAt(0),_=\"x\"===x,b=[];for(n=0;n<m._categories.length;n++)b.push([m._categories[n],[]]);for(n=0;n<m._traceIndices.length;n++){var w=m._traceIndices[n],T=e._fullData[w];if(!0===T.visible){var k=T.type;l.traceIs(T,\"histogram\")&&(delete T._xautoBinFinished,delete T._yautoBinFinished);var A=\"splom\"===k,M=\"scattergl\"===k,S=e.calcdata[w];for(i=0;i<S.length;i++){var E,C,L=S[i];if(A){var I=T._axesDim[m._id];if(!_){var P=T._diag[I][0];P&&(m=e._fullLayout[d.id2name(P)])}var z=L.trace.dimensions[I].values;for(a=0;a<z.length;a++)for(E=m._categoriesMap[z[a]],o=0;o<L.trace.dimensions.length;o++)if(o!==I){var O=L.trace.dimensions[o];b[E][1].push(O.values[a])}}else if(M){for(a=0;a<L.t.x.length;a++)_?(E=L.t.x[a],C=L.t.y[a]):(E=L.t.y[a],C=L.t.x[a]),b[E][1].push(C);L.t&&L.t._scene&&delete L.t._scene.dirty}else if(L.hasOwnProperty(\"z\")){C=L.z;var R=c(T.type,m,C);for(a=0;a<C.length;a++)for(o=0;o<C[a].length;o++)(E=R(o,a))+1&&b[E][1].push(C[a][o])}else for(void 0===(E=L.p)&&(E=L[x]),void 0===(C=L.s)&&(C=L.v),void 0===C&&(C=_?L.y:L.x),Array.isArray(C)||(C=void 0===C?[]:[C]),a=0;a<C.length;a++)b[E][1].push(C[a])}}}m._categoriesValue=b;var F=[];for(n=0;n<b.length;n++)F.push([b[n][0],u[y](b[n][1])]);F.sort(\"descending\"===v?p:f),m._categoriesAggregatedValue=F,m._initialCategories=F.map((function(t){return t[0]})),s=s.concat(m.sortByInitialCategories())}}}return s}(o,t);if(w.length){for(u._numBoxes=0,u._numViolins=0,i=0;i<w.length;i++)b(w[i],!0);for(i=0;i<w.length;i++)b(w[i],!1);F(t)}l.getComponentMethod(\"fx\",\"calc\")(t),l.getComponentMethod(\"errorbars\",\"calc\")(t)};var D=/(total|sum|min|max|mean|geometric mean|median) (ascending|descending)/;function R(t,e,r){var n={};function i(t){t.clearCalc(),\"multicategory\"===t.type&&t.setupMultiCategory(e),n[t._id]=1}h.simpleMap(t,i);for(var a=r._axisMatchGroups||[],o=0;o<a.length;o++)for(var s in a[o])n[s]||i(r[d.id2name(s)])}function F(t){var e,r,n,i=t._fullLayout,a=i._visibleModules,o={};for(r=0;r<a.length;r++){var s=a[r],l=s.crossTraceCalc;if(l){var c=s.basePlotModule.name;o[c]?h.pushUnique(o[c],l):o[c]=[l]}}for(n in o){var u=o[n],f=i._subplots[n];if(Array.isArray(f))for(e=0;e<f.length;e++){var p=f[e],d=\"cartesian\"===n?i._plots[p]:i[p];for(r=0;r<u.length;r++)u[r](t,d,p)}else for(r=0;r<u.length;r++)u[r](t)}}w.rehover=function(t){t._fullLayout._rehover&&t._fullLayout._rehover()},w.redrag=function(t){t._fullLayout._redrag&&t._fullLayout._redrag()},w.reselect=function(t){var e=t._fullLayout,r=(t.layout||{}).selections,n=e._previousSelections;e._previousSelections=r;var i=e._reselect||JSON.stringify(r)!==JSON.stringify(n);l.getComponentMethod(\"selections\",\"reselect\")(t,i)},w.generalUpdatePerTraceModule=function(t,e,r,n){var i,a=e.traceHash,o={};for(i=0;i<r.length;i++){var s=r[i],l=s[0].trace;l.visible&&(o[l.type]=o[l.type]||[],o[l.type].push(s))}for(var c in a)if(!o[c]){var u=a[c][0];u[0].trace.visible=!1,o[c]=[u]}for(var f in o){var p=o[f];p[0][0].trace._module.plot(t,e,h.filterVisible(p),n)}e.traceHash=o},w.plotBasePlot=function(t,e,r,n,i){var a=l.getModule(t),o=x(e.calcdata,a)[0];a.plot(e,o,n,i)},w.cleanBasePlot=function(t,e,r,n,i){var a=i._has&&i._has(t),o=r._has&&r._has(t);a&&!o&&i[\"_\"+t+\"layer\"].selectAll(\"g.trace\").remove()}},26484:function(t){\"use strict\";t.exports={attr:\"subplot\",name:\"polar\",axisNames:[\"angularaxis\",\"radialaxis\"],axisName2dataArray:{angularaxis:\"theta\",radialaxis:\"r\"},layerNames:[\"draglayer\",\"plotbg\",\"backplot\",\"angular-grid\",\"radial-grid\",\"frontplot\",\"angular-line\",\"radial-line\",\"angular-axis\",\"radial-axis\"],radialDragBoxSize:50,angularDragBoxSize:30,cornerLen:25,cornerHalfWidth:2,MINDRAG:8,MINZOOM:20,OFFEDGE:20}},95928:function(t,e,r){\"use strict\";var n=r(34809),i=r(80899).tester,a=n.findIndexOfMin,o=n.isAngleInsideSector,s=n.angleDelta,l=n.angleDist;function c(t,e,r,n){var i,a,o=n[0],s=n[1],l=h(Math.sin(e)-Math.sin(t)),c=h(Math.cos(e)-Math.cos(t)),u=Math.tan(r),f=h(1/u),p=l/c,d=s-p*o;return f?l&&c?a=u*(i=d/(u-p)):c?(i=s*f,a=s):(i=o,a=o*u):l&&c?(i=0,a=d):c?(i=0,a=s):i=a=NaN,[i,a]}function u(t,e,r,i){return n.isFullCircle([e,r])?function(t,e){var r,n=e.length,i=new Array(n+1);for(r=0;r<n;r++){var a=e[r];i[r]=[t*Math.cos(a),t*Math.sin(a)]}return i[r]=i[0].slice(),i}(t,i):function(t,e,r,i){var s,u,h=i.length,f=[];function p(e){return[t*Math.cos(e),t*Math.sin(e)]}function d(t,e,r){return c(t,e,r,p(t))}function m(t){return n.mod(t,h)}function g(t){return o(t,[e,r])}var y=a(i,(function(t){return g(t)?l(t,e):1/0})),v=d(i[y],i[m(y-1)],e);for(f.push(v),s=y,u=0;u<h;s++,u++){var x=i[m(s)];if(!g(x))break;f.push(p(x))}var _=a(i,(function(t){return g(t)?l(t,r):1/0})),b=d(i[_],i[m(_+1)],r);return f.push(b),f.push([0,0]),f.push(f[0].slice()),f}(t,e,r,i)}function h(t){return Math.abs(t)>1e-10?t:0}function f(t,e,r){e=e||0,r=r||0;for(var n=t.length,i=new Array(n),a=0;a<n;a++){var o=t[a];i[a]=[e+o[0],r-o[1]]}return i}t.exports={isPtInsidePolygon:function(t,e,r,n,a){if(!o(e,n))return!1;var s,l;r[0]<r[1]?(s=r[0],l=r[1]):(s=r[1],l=r[0]);var c=i(u(s,n[0],n[1],a)),h=i(u(l,n[0],n[1],a)),f=[t*Math.cos(e),t*Math.sin(e)];return h.contains(f)&&!c.contains(f)},findPolygonOffset:function(t,e,r,n){for(var i=1/0,a=1/0,o=u(t,e,r,n),s=0;s<o.length;s++){var l=o[s];i=Math.min(i,l[0]),a=Math.min(a,-l[1])}return[i,a]},findEnclosingVertexAngles:function(t,e){var r=a(e,(function(e){var r=s(e,t);return r>0?r:1/0})),i=n.mod(r+1,e.length);return[e[r],e[i]]},findIntersectionXY:c,findXYatLength:function(t,e,r,n){var i=-e*r,a=e*e+1,o=2*(e*i-r),s=i*i+r*r-t*t,l=Math.sqrt(o*o-4*a*s),c=(-o+l)/(2*a),u=(-o-l)/(2*a);return[[c,e*c+i+n],[u,e*u+i+n]]},clampTiny:h,pathPolygon:function(t,e,r,n,i,a){return\"M\"+f(u(t,e,r,n),i,a).join(\"L\")},pathPolygonAnnulus:function(t,e,r,n,i,a,o){var s,l;t<e?(s=t,l=e):(s=e,l=t);var c=f(u(s,r,n,i),a,o);return\"M\"+f(u(l,r,n,i),a,o).reverse().join(\"L\")+\"M\"+c.join(\"L\")}}},31645:function(t,e,r){\"use strict\";var n=r(4173).fX,i=r(34809).counterRegex,a=r(35785),o=r(26484),s=o.attr,l=o.name,c=i(l),u={};u[s]={valType:\"subplotid\",dflt:l,editType:\"calc\"},t.exports={attr:s,name:l,idRoot:l,idRegex:c,attrRegex:c,attributes:u,layoutAttributes:r(42219),supplyLayoutDefaults:r(84588),plot:function(t){for(var e=t._fullLayout,r=t.calcdata,i=e._subplots[l],o=0;o<i.length;o++){var s=i[o],c=n(r,l,s),u=e[s]._subplot;u||(u=a(t,s),e[s]._subplot=u),u.plot(c,e,t._promises)}},clean:function(t,e,r,n){for(var i=n._subplots[l]||[],a=n._has&&n._has(\"gl\"),o=e._has&&e._has(\"gl\"),s=a&&!o,c=0;c<i.length;c++){var u=i[c],h=n[u]._subplot;if(!e[u]&&h)for(var f in h.framework.remove(),h.layers[\"radial-axis-title\"].remove(),h.clipPaths)h.clipPaths[f].remove();s&&h._scene&&(h._scene.destroy(),h._scene=null)}},toSVG:r(37703).toSVG}},42219:function(t,e,r){\"use strict\";var n=r(10229),i=r(25829),a=r(13792).u,o=r(34809).extendFlat,s=r(13582).overrideAll,l=s({color:i.color,showline:o({},i.showline,{dflt:!0}),linecolor:i.linecolor,linewidth:i.linewidth,showgrid:o({},i.showgrid,{dflt:!0}),gridcolor:i.gridcolor,gridwidth:i.gridwidth,griddash:i.griddash},\"plot\",\"from-root\"),c=s({tickmode:i.minor.tickmode,nticks:i.nticks,tick0:i.tick0,dtick:i.dtick,tickvals:i.tickvals,ticktext:i.ticktext,ticks:i.ticks,ticklen:i.ticklen,tickwidth:i.tickwidth,tickcolor:i.tickcolor,ticklabelstep:i.ticklabelstep,showticklabels:i.showticklabels,labelalias:i.labelalias,showtickprefix:i.showtickprefix,tickprefix:i.tickprefix,showticksuffix:i.showticksuffix,ticksuffix:i.ticksuffix,showexponent:i.showexponent,exponentformat:i.exponentformat,minexponent:i.minexponent,separatethousands:i.separatethousands,tickfont:i.tickfont,tickangle:i.tickangle,tickformat:i.tickformat,tickformatstops:i.tickformatstops,layer:i.layer},\"plot\",\"from-root\"),u={visible:o({},i.visible,{dflt:!0}),type:o({},i.type,{values:[\"-\",\"linear\",\"log\",\"date\",\"category\"]}),autotypenumbers:i.autotypenumbers,autorangeoptions:{minallowed:i.autorangeoptions.minallowed,maxallowed:i.autorangeoptions.maxallowed,clipmin:i.autorangeoptions.clipmin,clipmax:i.autorangeoptions.clipmax,include:i.autorangeoptions.include,editType:\"plot\"},autorange:o({},i.autorange,{editType:\"plot\"}),rangemode:{valType:\"enumerated\",values:[\"tozero\",\"nonnegative\",\"normal\"],dflt:\"tozero\",editType:\"calc\"},minallowed:o({},i.minallowed,{editType:\"plot\"}),maxallowed:o({},i.maxallowed,{editType:\"plot\"}),range:o({},i.range,{items:[{valType:\"any\",editType:\"plot\",impliedEdits:{\"^autorange\":!1}},{valType:\"any\",editType:\"plot\",impliedEdits:{\"^autorange\":!1}}],editType:\"plot\"}),categoryorder:i.categoryorder,categoryarray:i.categoryarray,angle:{valType:\"angle\",editType:\"plot\"},autotickangles:i.autotickangles,side:{valType:\"enumerated\",values:[\"clockwise\",\"counterclockwise\"],dflt:\"clockwise\",editType:\"plot\"},title:{text:o({},i.title.text,{editType:\"plot\",dflt:\"\"}),font:o({},i.title.font,{editType:\"plot\"}),editType:\"plot\"},hoverformat:i.hoverformat,uirevision:{valType:\"any\",editType:\"none\"},editType:\"calc\",_deprecated:{title:i._deprecated.title,titlefont:i._deprecated.titlefont}};o(u,l,c);var h={visible:o({},i.visible,{dflt:!0}),type:{valType:\"enumerated\",values:[\"-\",\"linear\",\"category\"],dflt:\"-\",editType:\"calc\",_noTemplating:!0},autotypenumbers:i.autotypenumbers,categoryorder:i.categoryorder,categoryarray:i.categoryarray,thetaunit:{valType:\"enumerated\",values:[\"radians\",\"degrees\"],dflt:\"degrees\",editType:\"calc\"},period:{valType:\"number\",editType:\"calc\",min:0},direction:{valType:\"enumerated\",values:[\"counterclockwise\",\"clockwise\"],dflt:\"counterclockwise\",editType:\"calc\"},rotation:{valType:\"angle\",editType:\"calc\"},hoverformat:i.hoverformat,uirevision:{valType:\"any\",editType:\"none\"},editType:\"calc\"};o(h,l,c),t.exports={domain:a({name:\"polar\",editType:\"plot\"}),sector:{valType:\"info_array\",items:[{valType:\"number\",editType:\"plot\"},{valType:\"number\",editType:\"plot\"}],dflt:[0,360],editType:\"plot\"},hole:{valType:\"number\",min:0,max:1,dflt:0,editType:\"plot\"},bgcolor:{valType:\"color\",editType:\"plot\",dflt:n.background},radialaxis:u,angularaxis:h,gridshape:{valType:\"enumerated\",values:[\"circular\",\"linear\"],dflt:\"circular\",editType:\"plot\"},uirevision:{valType:\"any\",editType:\"none\"},editType:\"calc\"}},84588:function(t,e,r){\"use strict\";var n=r(34809),i=r(78766),a=r(78032),o=r(4448),s=r(4173).KO,l=r(22777),c=r(87433),u=r(12036),h=r(54616),f=r(46473),p=r(97405),d=r(75511),m=r(9666),g=r(42219),y=r(51937),v=r(26484),x=v.axisNames;function _(t,e,r,o){var m=r(\"bgcolor\");o.bgColor=i.combine(m,o.paper_bgcolor);var _=r(\"sector\");r(\"hole\");var w,T=s(o.fullData,v.name,o.id),k=o.layoutOut;function A(t,e){return r(w+\".\"+t,e)}for(var M=0;M<x.length;M++){w=x[M],n.isPlainObject(t[w])||(t[w]={});var S=t[w],E=a.newContainer(e,w);E._id=E._name=w,E._attr=o.id+\".\"+w,E._traceIndices=T.map((function(t){return t._expandedIndex}));var C=v.axisName2dataArray[w],L=b(S,E,A,T,C,o);f(S,E,A,{axData:T,dataAttr:C});var I=A(\"visible\");switch(y(E,e,k),A(\"uirevision\",e.uirevision),E._m=1,w){case\"radialaxis\":A(\"minallowed\"),A(\"maxallowed\");var P,z=A(\"range\"),O=E.getAutorangeDflt(z),D=A(\"autorange\",O);!z||(null!==z[0]||null!==z[1])&&(null!==z[0]&&null!==z[1]||\"reversed\"!==D&&!0!==D)&&(null===z[0]||\"min\"!==D&&\"max reversed\"!==D)&&(null===z[1]||\"max\"!==D&&\"min reversed\"!==D)||(z=void 0,delete E.range,E.autorange=!0,P=!0),P||(D=A(\"autorange\",O=E.getAutorangeDflt(z))),S.autorange=D,D&&(d(A,D,z),\"linear\"!==L&&\"-\"!==L||A(\"rangemode\"),E.isReversed()&&(E._m=-1)),E.cleanRange(\"range\",{dfltRange:[0,1]});break;case\"angularaxis\":if(\"date\"===L){n.log(\"Polar plots do not support date angular axes yet.\");for(var R=0;R<T.length;R++)T[R].visible=!1;L=S.type=E.type=\"linear\"}A(\"linear\"===L?\"thetaunit\":\"period\");var F=A(\"direction\");A(\"rotation\",{counterclockwise:0,clockwise:90}[F])}if(h(S,E,A,E.type,{tickSuffixDflt:\"degrees\"===E.thetaunit?\"°\":void 0}),I){var B,N,j,U,V,q,H,G,Z,W,Y=o.font||{};N=(B=A(\"color\"))===S.color?B:Y.color,j=Y.size,U=Y.family,V=Y.weight,q=Y.style,H=Y.variant,G=Y.textcase,Z=Y.lineposition,W=Y.shadow,l(S,E,A,E.type),u(S,E,A,E.type,{font:{weight:V,style:q,variant:H,textcase:G,lineposition:Z,shadow:W,color:N,size:j,family:U},noAutotickangles:\"angularaxis\"===w,noTicklabelshift:!0,noTicklabelstandoff:!0}),c(S,E,A,{outerTicks:!0}),p(S,E,A,{dfltColor:B,bgColor:o.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:g[w]}),A(\"layer\"),\"radialaxis\"===w&&(A(\"side\"),A(\"angle\",_[0]),A(\"title.text\"),n.coerceFont(A,\"title.font\",{weight:V,style:q,variant:H,textcase:G,lineposition:Z,shadow:W,color:N,size:n.bigFont(j),family:U}))}\"category\"!==L&&A(\"hoverformat\"),E._input=S}\"category\"===e.angularaxis.type&&r(\"gridshape\")}function b(t,e,r,n,i,a){var o=r(\"autotypenumbers\",a.autotypenumbersDflt);if(\"-\"===r(\"type\")){for(var s,l=0;l<n.length;l++)if(n[l].visible){s=n[l];break}s&&s[i]&&(e.type=m(s[i],\"gregorian\",{noMultiCategory:!0,autotypenumbers:o})),\"-\"===e.type?e.type=\"linear\":t.type=e.type}return e.type}t.exports=function(t,e,r){o(t,e,r,{type:v.name,attributes:g,handleDefaults:_,font:e.font,autotypenumbersDflt:e.autotypenumbers,paper_bgcolor:e.paper_bgcolor,fullData:r,layoutOut:e})}},35785:function(t,e,r){\"use strict\";var n=r(45568),i=r(65657),a=r(33626),o=r(34809),s=o.strRotate,l=o.strTranslate,c=r(78766),u=r(62203),h=r(44122),f=r(29714),p=r(19091),d=r(51937),m=r(32919).doAutoRange,g=r(51680),y=r(14751),v=r(32141),x=r(17240),_=r(44844).prepSelect,b=r(44844).selectOnClick,w=r(44844).clearOutline,T=r(27983),k=r(34823),A=r(71817).redrawReglTraces,M=r(4530).MID_SHIFT,S=r(26484),E=r(95928),C=r(52007),L=C.smith,I=C.reactanceArc,P=C.resistanceArc,z=C.smithTransform,O=o._,D=o.mod,R=o.deg2rad,F=o.rad2deg;function B(t,e,r){this.isSmith=r||!1,this.id=e,this.gd=t,this._hasClipOnAxisFalse=null,this.vangles=null,this.radialAxisAngle=null,this.traceHash={},this.layers={},this.clipPaths={},this.clipIds={},this.viewInitial={};var n=t._fullLayout,i=\"clip\"+n._uid+e;this.clipIds.forTraces=i+\"-for-traces\",this.clipPaths.forTraces=n._clips.append(\"clipPath\").attr(\"id\",this.clipIds.forTraces),this.clipPaths.forTraces.append(\"path\"),this.framework=n[\"_\"+(r?\"smith\":\"polar\")+\"layer\"].append(\"g\").attr(\"class\",e),this.getHole=function(t){return this.isSmith?0:t.hole},this.getSector=function(t){return this.isSmith?[0,360]:t.sector},this.getRadial=function(t){return this.isSmith?t.realaxis:t.radialaxis},this.getAngular=function(t){return this.isSmith?t.imaginaryaxis:t.angularaxis},r||(this.radialTickLayout=null,this.angularTickLayout=null)}var N=B.prototype;function j(t){var e=t.ticks+String(t.ticklen)+String(t.showticklabels);return\"side\"in t&&(e+=t.side),e}function U(t,e){return e[o.findIndexOfMin(e,(function(e){return o.angleDist(t,e)}))]}function V(t,e,r){return e?(t.attr(\"display\",null),t.attr(r)):t&&t.attr(\"display\",\"none\"),t}t.exports=function(t,e,r){return new B(t,e,r)},N.plot=function(t,e){for(var r=this,n=e[r.id],i=!1,a=0;a<t.length;a++)if(!1===t[a][0].trace.cliponaxis){i=!0;break}r._hasClipOnAxisFalse=i,r.updateLayers(e,n),r.updateLayout(e,n),h.generalUpdatePerTraceModule(r.gd,r,t,n),r.updateFx(e,n),r.isSmith&&(delete n.realaxis.range,delete n.imaginaryaxis.range)},N.updateLayers=function(t,e){var r=this,i=r.isSmith,a=r.layers,o=r.getRadial(e),s=r.getAngular(e),l=S.layerNames,c=l.indexOf(\"frontplot\"),u=l.slice(0,c),h=\"below traces\"===s.layer,f=\"below traces\"===o.layer;h&&u.push(\"angular-line\"),f&&u.push(\"radial-line\"),h&&u.push(\"angular-axis\"),f&&u.push(\"radial-axis\"),u.push(\"frontplot\"),h||u.push(\"angular-line\"),f||u.push(\"radial-line\"),h||u.push(\"angular-axis\"),f||u.push(\"radial-axis\");var p=(i?\"smith\":\"polar\")+\"sublayer\",d=r.framework.selectAll(\".\"+p).data(u,String);d.enter().append(\"g\").attr(\"class\",(function(t){return p+\" \"+t})).each((function(t){var e=a[t]=n.select(this);switch(t){case\"frontplot\":i||e.append(\"g\").classed(\"barlayer\",!0),e.append(\"g\").classed(\"scatterlayer\",!0);break;case\"backplot\":e.append(\"g\").classed(\"maplayer\",!0);break;case\"plotbg\":a.bg=e.append(\"path\");break;case\"radial-grid\":case\"angular-grid\":e.style(\"fill\",\"none\");break;case\"radial-line\":e.append(\"line\").style(\"fill\",\"none\");break;case\"angular-line\":e.append(\"path\").style(\"fill\",\"none\")}})),d.order()},N.updateLayout=function(t,e){var r=this,n=r.layers,i=t._size,a=r.getRadial(e),o=r.getAngular(e),s=e.domain.x,h=e.domain.y;r.xOffset=i.l+i.w*s[0],r.yOffset=i.t+i.h*(1-h[1]);var f=r.xLength=i.w*(s[1]-s[0]),p=r.yLength=i.h*(h[1]-h[0]),d=r.getSector(e);r.sectorInRad=d.map(R);var m,g,y,v,x,_=r.sectorBBox=function(t){var e,r=t[0],n=t[1]-r,i=D(r,360),a=i+n,o=Math.cos(R(i)),s=Math.sin(R(i)),l=Math.cos(R(a)),c=Math.sin(R(a));return e=i<=90&&a>=90||i>90&&a>=450?1:s<=0&&c<=0?0:Math.max(s,c),[i<=180&&a>=180||i>180&&a>=540?-1:o>=0&&l>=0?0:Math.min(o,l),i<=270&&a>=270||i>270&&a>=630?-1:s>=0&&c>=0?0:Math.min(s,c),a>=360?1:o<=0&&l<=0?0:Math.max(o,l),e]}(d),b=_[2]-_[0],w=_[3]-_[1],T=p/f,k=Math.abs(w/b);T>k?(m=f,x=(p-(g=f*k))/i.h/2,y=[s[0],s[1]],v=[h[0]+x,h[1]-x]):(g=p,x=(f-(m=p/k))/i.w/2,y=[s[0]+x,s[1]-x],v=[h[0],h[1]]),r.xLength2=m,r.yLength2=g,r.xDomain2=y,r.yDomain2=v;var A,M=r.xOffset2=i.l+i.w*y[0],S=r.yOffset2=i.t+i.h*(1-v[1]),E=r.radius=m/b,C=r.innerRadius=r.getHole(e)*E,L=r.cx=M-E*_[0],I=r.cy=S+E*_[3],P=r.cxx=L-M,z=r.cyy=I-S,O=a.side;\"counterclockwise\"===O?(A=O,O=\"top\"):\"clockwise\"===O&&(A=O,O=\"bottom\"),r.radialAxis=r.mockAxis(t,e,a,{_id:\"x\",side:O,_trueSide:A,domain:[C/i.w,E/i.w]}),r.angularAxis=r.mockAxis(t,e,o,{side:\"right\",domain:[0,Math.PI],autorange:!1}),r.doAutoRange(t,e),r.updateAngularAxis(t,e),r.updateRadialAxis(t,e),r.updateRadialAxisTitle(t,e),r.xaxis=r.mockCartesianAxis(t,e,{_id:\"x\",domain:y}),r.yaxis=r.mockCartesianAxis(t,e,{_id:\"y\",domain:v});var F=r.pathSubplot();r.clipPaths.forTraces.select(\"path\").attr(\"d\",F).attr(\"transform\",l(P,z)),n.frontplot.attr(\"transform\",l(M,S)).call(u.setClipUrl,r._hasClipOnAxisFalse?null:r.clipIds.forTraces,r.gd),n.bg.attr(\"d\",F).attr(\"transform\",l(L,I)).call(c.fill,e.bgcolor)},N.mockAxis=function(t,e,r,n){var i=o.extendFlat({},r,n);return d(i,e,t),i},N.mockCartesianAxis=function(t,e,r){var n=this,i=n.isSmith,a=r._id,s=o.extendFlat({type:\"linear\"},r);p(s,t);var l={x:[0,2],y:[1,3]};return s.setRange=function(){var t=n.sectorBBox,r=l[a],i=n.radialAxis._rl,o=(i[1]-i[0])/(1-n.getHole(e));s.range=[t[r[0]]*o,t[r[1]]*o]},s.isPtWithinRange=\"x\"!==a||i?function(){return!0}:function(t){return n.isPtInside(t)},s.setRange(),s.setScale(),s},N.doAutoRange=function(t,e){var r=this,n=r.gd,i=r.radialAxis,a=r.getRadial(e);m(n,i);var o=i.range;if(a.range=o.slice(),a._input.range=o.slice(),i._rl=[i.r2l(o[0],null,\"gregorian\"),i.r2l(o[1],null,\"gregorian\")],void 0!==i.minallowed){var s=i.r2l(i.minallowed);i._rl[0]>i._rl[1]?i._rl[1]=Math.max(i._rl[1],s):i._rl[0]=Math.max(i._rl[0],s)}if(void 0!==i.maxallowed){var l=i.r2l(i.maxallowed);i._rl[0]<i._rl[1]?i._rl[1]=Math.min(i._rl[1],l):i._rl[0]=Math.min(i._rl[0],l)}},N.updateRadialAxis=function(t,e){var r=this,n=r.gd,i=r.layers,a=r.radius,u=r.innerRadius,h=r.cx,p=r.cy,d=r.getRadial(e),m=D(r.getSector(e)[0],360),g=r.radialAxis,y=u<a,v=r.isSmith;v||(r.fillViewInitialKey(\"radialaxis.angle\",d.angle),r.fillViewInitialKey(\"radialaxis.range\",g.range.slice()),g.setGeometry()),\"auto\"===g.tickangle&&m>90&&m<=270&&(g.tickangle=180);var x=v?function(t){var e=z(r,L([t.x,0]));return l(e[0]-h,e[1]-p)}:function(t){return l(g.l2p(t.x)+u,0)},_=v?function(t){return P(r,t.x,-1/0,1/0)}:function(t){return r.pathArc(g.r2p(t.x)+u)},b=j(d);if(r.radialTickLayout!==b&&(i[\"radial-axis\"].selectAll(\".xtick\").remove(),r.radialTickLayout=b),y){g.setScale();var w=0,T=v?(g.tickvals||[]).filter((function(t){return t>=0})).map((function(t){return f.tickText(g,t,!0,!1)})):f.calcTicks(g),k=v?T:f.clipEnds(g,T),A=f.getTickSigns(g)[2];v&&((\"top\"===g.ticks&&\"bottom\"===g.side||\"bottom\"===g.ticks&&\"top\"===g.side)&&(A=-A),\"top\"===g.ticks&&\"top\"===g.side&&(w=-g.ticklen),\"bottom\"===g.ticks&&\"bottom\"===g.side&&(w=g.ticklen)),f.drawTicks(n,g,{vals:T,layer:i[\"radial-axis\"],path:f.makeTickPath(g,0,A),transFn:x,crisp:!1}),f.drawGrid(n,g,{vals:k,layer:i[\"radial-grid\"],path:_,transFn:o.noop,crisp:!1}),f.drawLabels(n,g,{vals:T,layer:i[\"radial-axis\"],transFn:x,labelFns:f.makeLabelFns(g,w)})}var M=r.radialAxisAngle=r.vangles?F(U(R(d.angle),r.vangles)):d.angle,S=l(h,p),E=S+s(-M);V(i[\"radial-axis\"],y&&(d.showticklabels||d.ticks),{transform:E}),V(i[\"radial-grid\"],y&&d.showgrid,{transform:v?\"\":S}),V(i[\"radial-line\"].select(\"line\"),y&&d.showline,{x1:v?-a:u,y1:0,x2:a,y2:0,transform:E}).attr(\"stroke-width\",d.linewidth).call(c.stroke,d.linecolor)},N.updateRadialAxisTitle=function(t,e,r){if(!this.isSmith){var n=this,i=n.gd,a=n.radius,o=n.cx,s=n.cy,l=n.getRadial(e),c=n.id+\"title\",h=0;if(l.title){var f=u.bBox(n.layers[\"radial-axis\"].node()).height,p=l.title.font.size,d=l.side;h=\"top\"===d?p:\"counterclockwise\"===d?-(f+.4*p):f+.8*p}var m=void 0!==r?r:n.radialAxisAngle,g=R(m),y=Math.cos(g),v=Math.sin(g),_=o+a/2*y+h*v,b=s-a/2*v+h*y;n.layers[\"radial-axis-title\"]=x.draw(i,c,{propContainer:l,propName:n.id+\".radialaxis.title\",placeholder:O(i,\"Click to enter radial axis title\"),attributes:{x:_,y:b,\"text-anchor\":\"middle\"},transform:{rotate:-m}})}},N.updateAngularAxis=function(t,e){var r=this,n=r.gd,i=r.layers,a=r.radius,u=r.innerRadius,h=r.cx,p=r.cy,d=r.getAngular(e),m=r.angularAxis,g=r.isSmith;g||(r.fillViewInitialKey(\"angularaxis.rotation\",d.rotation),m.setGeometry(),m.setScale());var y=g?function(t){var e=z(r,L([0,t.x]));return Math.atan2(e[0]-h,e[1]-p)-Math.PI/2}:function(t){return m.t2g(t.x)};\"linear\"===m.type&&\"radians\"===m.thetaunit&&(m.tick0=F(m.tick0),m.dtick=F(m.dtick));var v=function(t){return l(h+a*Math.cos(t),p-a*Math.sin(t))},x=g?function(t){var e=z(r,L([0,t.x]));return l(e[0],e[1])}:function(t){return v(y(t))},_=g?function(t){var e=z(r,L([0,t.x])),n=Math.atan2(e[0]-h,e[1]-p)-Math.PI/2;return l(e[0],e[1])+s(-F(n))}:function(t){var e=y(t);return v(e)+s(-F(e))},b=g?function(t){return I(r,t.x,0,1/0)}:function(t){var e=y(t),r=Math.cos(e),n=Math.sin(e);return\"M\"+[h+u*r,p-u*n]+\"L\"+[h+a*r,p-a*n]},w=f.makeLabelFns(m,0).labelStandoff,T={xFn:function(t){var e=y(t);return Math.cos(e)*w},yFn:function(t){var e=y(t),r=Math.sin(e)>0?.2:1;return-Math.sin(e)*(w+t.fontSize*r)+Math.abs(Math.cos(e))*(t.fontSize*M)},anchorFn:function(t){var e=y(t),r=Math.cos(e);return Math.abs(r)<.1?\"middle\":r>0?\"start\":\"end\"},heightFn:function(t,e,r){var n=y(t);return-.5*(1+Math.sin(n))*r}},k=j(d);r.angularTickLayout!==k&&(i[\"angular-axis\"].selectAll(\".\"+m._id+\"tick\").remove(),r.angularTickLayout=k);var A,S=g?[1/0].concat(m.tickvals||[]).map((function(t){return f.tickText(m,t,!0,!1)})):f.calcTicks(m);if(g&&(S[0].text=\"∞\",S[0].fontSize*=1.75),\"linear\"===e.gridshape?(A=S.map(y),o.angleDelta(A[0],A[1])<0&&(A=A.slice().reverse())):A=null,r.vangles=A,\"category\"===m.type&&(S=S.filter((function(t){return o.isAngleInsideSector(y(t),r.sectorInRad)}))),m.visible){var E=\"inside\"===m.ticks?-1:1,C=(m.linewidth||1)/2;f.drawTicks(n,m,{vals:S,layer:i[\"angular-axis\"],path:\"M\"+E*C+\",0h\"+E*m.ticklen,transFn:_,crisp:!1}),f.drawGrid(n,m,{vals:S,layer:i[\"angular-grid\"],path:b,transFn:o.noop,crisp:!1}),f.drawLabels(n,m,{vals:S,layer:i[\"angular-axis\"],repositionOnUpdate:!0,transFn:x,labelFns:T})}V(i[\"angular-line\"].select(\"path\"),d.showline,{d:r.pathSubplot(),transform:l(h,p)}).attr(\"stroke-width\",d.linewidth).call(c.stroke,d.linecolor)},N.updateFx=function(t,e){this.gd._context.staticPlot||(!this.isSmith&&(this.updateAngularDrag(t),this.updateRadialDrag(t,e,0),this.updateRadialDrag(t,e,1)),this.updateHoverAndMainDrag(t))},N.updateHoverAndMainDrag=function(t){var e,r,s=this,c=s.isSmith,u=s.gd,h=s.layers,f=t._zoomlayer,p=S.MINZOOM,d=S.OFFEDGE,m=s.radius,x=s.innerRadius,T=s.cx,k=s.cy,A=s.cxx,M=s.cyy,C=s.sectorInRad,L=s.vangles,I=s.radialAxis,P=E.clampTiny,z=E.findXYatLength,O=E.findEnclosingVertexAngles,D=S.cornerHalfWidth,R=S.cornerLen/2,F=g.makeDragger(h,\"path\",\"maindrag\",!1===t.dragmode?\"none\":\"crosshair\");n.select(F).attr(\"d\",s.pathSubplot()).attr(\"transform\",l(T,k)),F.onmousemove=function(t){v.hover(u,t,s.id),u._fullLayout._lasthover=F,u._fullLayout._hoversubplot=s.id},F.onmouseout=function(t){u._dragging||y.unhover(u,t)};var B,N,j,U,V,q,H,G,Z,W={element:F,gd:u,subplot:s.id,plotinfo:{id:s.id,xaxis:s.xaxis,yaxis:s.yaxis},xaxes:[s.xaxis],yaxes:[s.yaxis]};function Y(t,e){return Math.sqrt(t*t+e*e)}function X(t,e){return Y(t-A,e-M)}function $(t,e){return Math.atan2(M-e,t-A)}function J(t,e){return[t*Math.cos(e),t*Math.sin(-e)]}function K(t,e){if(0===t)return s.pathSector(2*D);var r=R/t,n=e-r,i=e+r,a=Math.max(0,Math.min(t,m)),o=a-D,l=a+D;return\"M\"+J(o,n)+\"A\"+[o,o]+\" 0,0,0 \"+J(o,i)+\"L\"+J(l,i)+\"A\"+[l,l]+\" 0,0,1 \"+J(l,n)+\"Z\"}function Q(t,e,r){if(0===t)return s.pathSector(2*D);var n,i,a=J(t,e),o=J(t,r),l=P((a[0]+o[0])/2),c=P((a[1]+o[1])/2);if(l&&c){var u=c/l,h=-1/u,f=z(D,u,l,c);n=z(R,h,f[0][0],f[0][1]),i=z(R,h,f[1][0],f[1][1])}else{var p,d;c?(p=R,d=D):(p=D,d=R),n=[[l-p,c-d],[l+p,c-d]],i=[[l-p,c+d],[l+p,c+d]]}return\"M\"+n.join(\"L\")+\"L\"+i.reverse().join(\"L\")+\"Z\"}function tt(t,e){return e=Math.max(Math.min(e,m),x),t<d?t=0:m-t<d?t=m:e<d?e=0:m-e<d&&(e=m),Math.abs(e-t)>p?(t<e?(j=t,U=e):(j=e,U=t),!0):(j=null,U=null,!1)}function et(t,e){t=t||V,e=e||\"M0,0Z\",G.attr(\"d\",t),Z.attr(\"d\",e),g.transitionZoombox(G,Z,q,H),q=!0;var r={};ot(r),u.emit(\"plotly_relayouting\",r)}function rt(t,n){var i,a,o=B+(t*=e),l=N+(n*=r),c=X(B,N),u=Math.min(X(o,l),m),h=$(B,N);tt(c,u)&&(i=V+s.pathSector(U),j&&(i+=s.pathSector(j)),a=K(j,h)+K(U,h)),et(i,a)}function nt(t,e,r,n){var i=E.findIntersectionXY(r,n,r,[t-A,M-e]);return Y(i[0],i[1])}function it(t,e){var r,n,i=B+t,a=N+e,o=$(B,N),l=$(i,a),c=O(o,L),u=O(l,L);tt(nt(B,N,c[0],c[1]),Math.min(nt(i,a,u[0],u[1]),m))&&(r=V+s.pathSector(U),j&&(r+=s.pathSector(j)),n=[Q(j,c[0],c[1]),Q(U,c[0],c[1])].join(\" \")),et(r,n)}function at(){if(g.removeZoombox(u),null!==j&&null!==U){var t={};ot(t),g.showDoubleClickNotifier(u),a.call(\"_guiRelayout\",u,t)}}function ot(t){var e=I._rl,r=(e[1]-e[0])/(1-x/m)/m,n=[e[0]+(j-x)*r,e[0]+(U-x)*r];t[s.id+\".radialaxis.range\"]=n}function st(t,e){var r=u._fullLayout.clickmode;if(g.removeZoombox(u),2===t){var n={};for(var i in s.viewInitial)n[s.id+\".\"+i]=s.viewInitial[i];u.emit(\"plotly_doubleclick\",null),a.call(\"_guiRelayout\",u,n)}r.indexOf(\"select\")>-1&&1===t&&b(e,u,[s.xaxis],[s.yaxis],s.id,W),r.indexOf(\"event\")>-1&&v.click(u,e,s.id)}W.prepFn=function(t,n,a){var l=u._fullLayout.dragmode,h=F.getBoundingClientRect();u._fullLayout._calcInverseTransform(u);var p=u._fullLayout._invTransform;e=u._fullLayout._invScaleX,r=u._fullLayout._invScaleY;var d=o.apply3DTransform(p)(n-h.left,a-h.top);if(B=d[0],N=d[1],L){var y=E.findPolygonOffset(m,C[0],C[1],L);B+=A+y[0],N+=M+y[1]}switch(l){case\"zoom\":W.clickFn=st,c||(W.moveFn=L?it:rt,W.doneFn=at,function(){j=null,U=null,V=s.pathSubplot(),q=!1;var t=u._fullLayout[s.id];H=i(t.bgcolor).getLuminance(),(G=g.makeZoombox(f,H,T,k,V)).attr(\"fill-rule\",\"evenodd\"),Z=g.makeCorners(f,T,k),w(u)}());break;case\"select\":case\"lasso\":_(t,n,a,W,l)}},y.init(W)},N.updateRadialDrag=function(t,e,r){var i=this,c=i.gd,u=i.layers,h=i.radius,f=i.innerRadius,p=i.cx,d=i.cy,m=i.radialAxis,v=S.radialDragBoxSize,x=v/2;if(m.visible){var _,b,T,M=R(i.radialAxisAngle),E=m._rl,C=E[0],L=E[1],I=E[r],P=.75*(E[1]-E[0])/(1-i.getHole(e))/h;r?(_=p+(h+x)*Math.cos(M),b=d-(h+x)*Math.sin(M),T=\"radialdrag\"):(_=p+(f-x)*Math.cos(M),b=d-(f-x)*Math.sin(M),T=\"radialdrag-inner\");var z,O,D,B=g.makeRectDragger(u,T,\"crosshair\",-x,-x,v,v),N={element:B,gd:c};!1===t.dragmode&&(N.dragmode=!1),V(n.select(B),m.visible&&f<h,{transform:l(_,b)}),N.prepFn=function(){z=null,O=null,D=null,N.moveFn=j,N.doneFn=q,w(c)},N.clampFn=function(t,e){return Math.sqrt(t*t+e*e)<S.MINDRAG&&(t=0,e=0),[t,e]},y.init(N)}function j(t,e){if(z)z(t,e);else{var n=[t,-e],a=[Math.cos(M),Math.sin(M)],s=Math.abs(o.dot(n,a)/Math.sqrt(o.dot(n,n)));isNaN(s)||(z=s<.5?H:G)}var l={};!function(t){null!==O?t[i.id+\".radialaxis.angle\"]=O:null!==D&&(t[i.id+\".radialaxis.range[\"+r+\"]\"]=D)}(l),c.emit(\"plotly_relayouting\",l)}function q(){null!==O?a.call(\"_guiRelayout\",c,i.id+\".radialaxis.angle\",O):null!==D&&a.call(\"_guiRelayout\",c,i.id+\".radialaxis.range[\"+r+\"]\",D)}function H(t,e){if(0!==r){var n=_+t,a=b+e;O=Math.atan2(d-a,n-p),i.vangles&&(O=U(O,i.vangles)),O=F(O);var o=l(p,d)+s(-O);u[\"radial-axis\"].attr(\"transform\",o),u[\"radial-line\"].select(\"line\").attr(\"transform\",o);var c=i.gd._fullLayout,h=c[i.id];i.updateRadialAxisTitle(c,h,O)}}function G(t,e){var n=o.dot([t,-e],[Math.cos(M),Math.sin(M)]);if(D=I-P*n,P>0==(r?D>C:D<L)){var s=c._fullLayout,l=s[i.id];m.range[r]=D,m._rl[r]=D,i.updateRadialAxis(s,l),i.xaxis.setRange(),i.xaxis.setScale(),i.yaxis.setRange(),i.yaxis.setScale();var u=!1;for(var h in i.traceHash){var f=i.traceHash[h],p=o.filterVisible(f);f[0][0].trace._module.plot(c,i,p,l),a.traceIs(h,\"gl\")&&p.length&&(u=!0)}u&&(k(c),A(c))}else D=null}},N.updateAngularDrag=function(t){var e=this,r=e.gd,i=e.layers,c=e.radius,h=e.angularAxis,f=e.cx,p=e.cy,d=e.cxx,m=e.cyy,v=S.angularDragBoxSize,x=g.makeDragger(i,\"path\",\"angulardrag\",!1===t.dragmode?\"none\":\"move\"),_={element:x,gd:r};function b(t,e){return Math.atan2(m+v-e,t-d-v)}!1===t.dragmode?_.dragmode=!1:n.select(x).attr(\"d\",e.pathAnnulus(c,c+v)).attr(\"transform\",l(f,p)).call(T,\"move\");var M,E,C,L,I,P,z=i.frontplot.select(\".scatterlayer\").selectAll(\".trace\"),O=z.selectAll(\".point\"),D=z.selectAll(\".textpoint\");function R(c,g){var y=e.gd._fullLayout,v=y[e.id],x=b(M+c*t._invScaleX,E+g*t._invScaleY),_=F(x-P);if(L=C+_,i.frontplot.attr(\"transform\",l(e.xOffset2,e.yOffset2)+s([-_,d,m])),e.vangles){I=e.radialAxisAngle+_;var w=l(f,p)+s(-_),T=l(f,p)+s(-I);i.bg.attr(\"transform\",w),i[\"radial-grid\"].attr(\"transform\",w),i[\"radial-axis\"].attr(\"transform\",T),i[\"radial-line\"].select(\"line\").attr(\"transform\",T),e.updateRadialAxisTitle(y,v,I)}else e.clipPaths.forTraces.select(\"path\").attr(\"transform\",l(d,m)+s(_));O.each((function(){var t=n.select(this),e=u.getTranslate(t);t.attr(\"transform\",l(e.x,e.y)+s([_]))})),D.each((function(){var t=n.select(this),e=t.select(\"text\"),r=u.getTranslate(t);t.attr(\"transform\",s([_,e.attr(\"x\"),e.attr(\"y\")])+l(r.x,r.y))})),h.rotation=o.modHalf(L,360),e.updateAngularAxis(y,v),e._hasClipOnAxisFalse&&!o.isFullCircle(e.sectorInRad)&&z.call(u.hideOutsideRangePoints,e);var S=!1;for(var R in e.traceHash)if(a.traceIs(R,\"gl\")){var N=e.traceHash[R],j=o.filterVisible(N);N[0][0].trace._module.plot(r,e,j,v),j.length&&(S=!0)}S&&(k(r),A(r));var U={};B(U),r.emit(\"plotly_relayouting\",U)}function B(t){t[e.id+\".angularaxis.rotation\"]=L,e.vangles&&(t[e.id+\".radialaxis.angle\"]=I)}function N(){D.select(\"text\").attr(\"transform\",null);var t={};B(t),a.call(\"_guiRelayout\",r,t)}_.prepFn=function(n,i,a){var s=t[e.id];C=s.angularaxis.rotation;var l=x.getBoundingClientRect();M=i-l.left,E=a-l.top,r._fullLayout._calcInverseTransform(r);var c=o.apply3DTransform(t._invTransform)(M,E);M=c[0],E=c[1],P=b(M,E),_.moveFn=R,_.doneFn=N,w(r)},e.vangles&&!o.isFullCircle(e.sectorInRad)&&(_.prepFn=o.noop,T(n.select(x),null)),y.init(_)},N.isPtInside=function(t){if(this.isSmith)return!0;var e=this.sectorInRad,r=this.vangles,n=this.angularAxis.c2g(t.theta),i=this.radialAxis,a=i.c2l(t.r),s=i._rl;return(r?E.isPtInsidePolygon:o.isPtInsideSector)(a,n,s,e,r)},N.pathArc=function(t){var e=this.sectorInRad,r=this.vangles;return(r?E.pathPolygon:o.pathArc)(t,e[0],e[1],r)},N.pathSector=function(t){var e=this.sectorInRad,r=this.vangles;return(r?E.pathPolygon:o.pathSector)(t,e[0],e[1],r)},N.pathAnnulus=function(t,e){var r=this.sectorInRad,n=this.vangles;return(n?E.pathPolygonAnnulus:o.pathAnnulus)(t,e,r[0],r[1],n)},N.pathSubplot=function(){var t=this.innerRadius,e=this.radius;return t?this.pathAnnulus(t,e):this.pathSector(e)},N.fillViewInitialKey=function(t,e){t in this.viewInitial||(this.viewInitial[t]=e)}},51937:function(t,e,r){\"use strict\";var n=r(34809),i=r(19091),a=n.deg2rad,o=n.rad2deg;t.exports=function(t,e,r){switch(i(t,r),t._id){case\"x\":case\"radialaxis\":!function(t,e){var r=e._subplot;t.setGeometry=function(){var e=t._rl[0],n=t._rl[1],i=r.innerRadius,a=(r.radius-i)/(n-e),o=i/a,s=e>n?function(t){return t<=0}:function(t){return t>=0};t.c2g=function(r){var n=t.c2l(r)-e;return(s(n)?n:0)+o},t.g2c=function(r){return t.l2c(r+e-o)},t.g2p=function(t){return t*a},t.c2p=function(e){return t.g2p(t.c2g(e))}}}(t,e);break;case\"angularaxis\":!function(t,e){var r=t.type;if(\"linear\"===r){var i=t.d2c,s=t.c2d;t.d2c=function(t,e){return function(t,e){return\"degrees\"===e?a(t):t}(i(t),e)},t.c2d=function(t,e){return s(function(t,e){return\"degrees\"===e?o(t):t}(t,e))}}t.makeCalcdata=function(e,r){var n,i,a=e[r],o=e._length,s=function(r){return t.d2c(r,e.thetaunit)};if(a)for(n=new Array(o),i=0;i<o;i++)n[i]=s(a[i]);else{var l=r+\"0\",c=\"d\"+r,u=l in e?s(e[l]):0,h=e[c]?s(e[c]):(t.period||2*Math.PI)/o;for(n=new Array(o),i=0;i<o;i++)n[i]=u+i*h}return n},t.setGeometry=function(){var i,s,l,c,u=e.sector,h=u.map(a),f={clockwise:-1,counterclockwise:1}[t.direction],p=a(t.rotation),d=function(t){return f*t+p},m=function(t){return(t-p)/f};switch(r){case\"linear\":s=i=n.identity,c=a,l=o,t.range=n.isFullCircle(h)?[u[0],u[0]+360]:h.map(m).map(o);break;case\"category\":var g=t._categories.length,y=t.period?Math.max(t.period,g):g;0===y&&(y=1),s=c=function(t){return 2*t*Math.PI/y},i=l=function(t){return t*y/Math.PI/2},t.range=[0,y]}t.c2g=function(t){return d(s(t))},t.g2c=function(t){return i(m(t))},t.t2g=function(t){return d(c(t))},t.g2t=function(t){return l(m(t))}}}(t,e)}}},70951:function(t){\"use strict\";t.exports={attr:\"subplot\",name:\"smith\",axisNames:[\"realaxis\",\"imaginaryaxis\"],axisName2dataArray:{imaginaryaxis:\"imag\",realaxis:\"real\"}}},52007:function(t){\"use strict\";function e(t){return t<0?-1:t>0?1:0}function r(t){var e=t[0],r=t[1];if(!isFinite(e)||!isFinite(r))return[1,0];var n=(e+1)*(e+1)+r*r;return[(e*e+r*r-1)/n,2*r/n]}function n(t,e){var r=e[0],n=e[1];return[r*t.radius+t.cx,-n*t.radius+t.cy]}function i(t,e){return e*t.radius}t.exports={smith:r,reactanceArc:function(t,e,a,o){var s=n(t,r([a,e])),l=s[0],c=s[1],u=n(t,r([o,e])),h=u[0],f=u[1];if(0===e)return[\"M\"+l+\",\"+c,\"L\"+h+\",\"+f].join(\" \");var p=i(t,1/Math.abs(e));return[\"M\"+l+\",\"+c,\"A\"+p+\",\"+p+\" 0 0,\"+(e<0?1:0)+\" \"+h+\",\"+f].join(\" \")},resistanceArc:function(t,a,o,s){var l=i(t,1/(a+1)),c=n(t,r([a,o])),u=c[0],h=c[1],f=n(t,r([a,s])),p=f[0],d=f[1];if(e(o)!==e(s)){var m=n(t,r([a,0]));return[\"M\"+u+\",\"+h,\"A\"+l+\",\"+l+\" 0 0,\"+(0<o?0:1)+\" \"+m[0]+\",\"+m[1],\"A\"+l+\",\"+l+\" 0 0,\"+(s<0?0:1)+p+\",\"+d].join(\" \")}return[\"M\"+u+\",\"+h,\"A\"+l+\",\"+l+\" 0 0,\"+(s<o?0:1)+\" \"+p+\",\"+d].join(\" \")},smithTransform:n}},50358:function(t,e,r){\"use strict\";var n=r(4173).fX,i=r(34809).counterRegex,a=r(35785),o=r(70951),s=o.attr,l=o.name,c=i(l),u={};u[s]={valType:\"subplotid\",dflt:l,editType:\"calc\"},t.exports={attr:s,name:l,idRoot:l,idRegex:c,attrRegex:c,attributes:u,layoutAttributes:r(93288),supplyLayoutDefaults:r(31359),plot:function(t){for(var e=t._fullLayout,r=t.calcdata,i=e._subplots[l],o=0;o<i.length;o++){var s=i[o],c=n(r,l,s),u=e[s]._subplot;u||(u=a(t,s,!0),e[s]._subplot=u),u.plot(c,e,t._promises)}},clean:function(t,e,r,n){for(var i=n._subplots[l]||[],a=0;a<i.length;a++){var o=i[a],s=n[o]._subplot;if(!e[o]&&s)for(var c in s.framework.remove(),s.clipPaths)s.clipPaths[c].remove()}},toSVG:r(37703).toSVG}},93288:function(t,e,r){\"use strict\";var n=r(10229),i=r(25829),a=r(13792).u,o=r(34809).extendFlat,s=r(13582).overrideAll,l=s({color:i.color,showline:o({},i.showline,{dflt:!0}),linecolor:i.linecolor,linewidth:i.linewidth,showgrid:o({},i.showgrid,{dflt:!0}),gridcolor:i.gridcolor,gridwidth:i.gridwidth,griddash:i.griddash},\"plot\",\"from-root\"),c=s({ticklen:i.ticklen,tickwidth:o({},i.tickwidth,{dflt:2}),tickcolor:i.tickcolor,showticklabels:i.showticklabels,labelalias:i.labelalias,showtickprefix:i.showtickprefix,tickprefix:i.tickprefix,showticksuffix:i.showticksuffix,ticksuffix:i.ticksuffix,tickfont:i.tickfont,tickformat:i.tickformat,hoverformat:i.hoverformat,layer:i.layer},\"plot\",\"from-root\"),u=o({visible:o({},i.visible,{dflt:!0}),tickvals:{dflt:[.2,.5,1,2,5],valType:\"data_array\",editType:\"plot\"},tickangle:o({},i.tickangle,{dflt:90}),ticks:{valType:\"enumerated\",values:[\"top\",\"bottom\",\"\"],editType:\"ticks\"},side:{valType:\"enumerated\",values:[\"top\",\"bottom\"],dflt:\"top\",editType:\"plot\"},editType:\"calc\"},l,c),h=o({visible:o({},i.visible,{dflt:!0}),tickvals:{valType:\"data_array\",editType:\"plot\"},ticks:i.ticks,editType:\"calc\"},l,c);t.exports={domain:a({name:\"smith\",editType:\"plot\"}),bgcolor:{valType:\"color\",editType:\"plot\",dflt:n.background},realaxis:u,imaginaryaxis:h,editType:\"calc\"}},31359:function(t,e,r){\"use strict\";var n,i,a,o=r(34809),s=r(78766),l=r(78032),c=r(4448),u=r(4173).KO,h=r(54616),f=r(12036),p=r(97405),d=r(19091),m=r(93288),g=r(70951),y=g.axisNames,v=(n=function(t){return o.isTypedArray(t)&&(t=Array.from(t)),t.slice().reverse().map((function(t){return-t})).concat([0]).concat(t)},i=String,a={},function(t){var e=i?i(t):t;if(e in a)return a[e];var r=n(t);return a[e]=r,r});function x(t,e,r,n){var i=r(\"bgcolor\");n.bgColor=s.combine(i,n.paper_bgcolor);var a,c=u(n.fullData,g.name,n.id),x=n.layoutOut;function _(t,e){return r(a+\".\"+t,e)}for(var b=0;b<y.length;b++){a=y[b],o.isPlainObject(t[a])||(t[a]={});var w=t[a],T=l.newContainer(e,a);T._id=T._name=a,T._attr=n.id+\".\"+a,T._traceIndices=c.map((function(t){return t._expandedIndex}));var k=_(\"visible\");if(T.type=\"linear\",d(T,x),h(w,T,_,T.type),k){var A,M,S,E,C=\"realaxis\"===a;C&&_(\"side\"),C?_(\"tickvals\"):_(\"tickvals\",v(e.realaxis.tickvals||m.realaxis.tickvals.dflt)),o.isTypedArray(T.tickvals)&&(T.tickvals=Array.from(T.tickvals));var L=n.font||{};k&&(M=(A=_(\"color\"))===w.color?A:L.color,S=L.size,E=L.family),f(w,T,_,T.type,{noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,noTicklabelstep:!0,noAng:!C,noExp:!0,font:{color:M,size:S,family:E}}),o.coerce2(t,e,m,a+\".ticklen\"),o.coerce2(t,e,m,a+\".tickwidth\"),o.coerce2(t,e,m,a+\".tickcolor\",e.color),_(\"ticks\")||(delete e[a].ticklen,delete e[a].tickwidth,delete e[a].tickcolor),p(w,T,_,{dfltColor:A,bgColor:n.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:m[a]}),_(\"layer\")}_(\"hoverformat\"),delete T.type,T._input=w}}t.exports=function(t,e,r){c(t,e,r,{noUirevision:!0,type:g.name,attributes:m,handleDefaults:x,font:e.font,paper_bgcolor:e.paper_bgcolor,fullData:r,layoutOut:e})}},4448:function(t,e,r){\"use strict\";var n=r(34809),i=r(78032),a=r(13792).N;t.exports=function(t,e,r,o){var s,l,c=o.type,u=o.attributes,h=o.handleDefaults,f=o.partition||\"x\",p=e._subplots[c],d=p.length,m=d&&p[0].replace(/\\d+$/,\"\");function g(t,e){return n.coerce(s,l,u,t,e)}for(var y=0;y<d;y++){var v=p[y];s=t[v]?t[v]:t[v]={},l=i.newContainer(e,v,m),o.noUirevision||g(\"uirevision\",e.uirevision);var x={};x[f]=[y/d,(y+1)/d],a(l,e,g,x),o.id=v,h(s,l,g,o)}}},3208:function(t,e,r){\"use strict\";var n=r(87296);function i(t){var e=t.description?\" \"+t.description:\"\",r=t.keys||[];if(r.length>0){for(var n=[],i=0;i<r.length;i++)n[i]=\"`\"+r[i]+\"`\";e+=\"Finally, the template string has access to \",e=1===r.length?e+\"variable \"+n[0]:e+\"variables \"+n.slice(0,-1).join(\", \")+\" and \"+n.slice(-1)+\".\"}return e}n.FORMAT_LINK,n.DATE_FORMAT_LINK,e.rb=function(t,e){t=t||{},i(e=e||{});var r={valType:\"string\",dflt:\"\",editType:t.editType||\"none\"};return!1!==t.arrayOk&&(r.arrayOk=!0),r},e.ay=function(t,e){t=t||{},i(e=e||{});var r={valType:\"string\",dflt:\"\",editType:t.editType||\"calc\"};return!1!==t.arrayOk&&(r.arrayOk=!0),r},e.LF=function(t,e){return e=e||{},(t=t||{}).newshape,i(e),{valType:\"string\",dflt:\"\",editType:t.editType||\"arraydraw\"}}},7638:function(t,e,r){\"use strict\";var n=r(83637),i=r(4173).fX,a=r(34809).counterRegex,o=\"ternary\";e.name=o;var s=e.attr=\"subplot\";e.idRoot=o,e.idRegex=e.attrRegex=a(o),(e.attributes={})[s]={valType:\"subplotid\",dflt:\"ternary\",editType:\"calc\"},e.layoutAttributes=r(77416),e.supplyLayoutDefaults=r(25247),e.plot=function(t){for(var e=t._fullLayout,r=t.calcdata,a=e._subplots[o],s=0;s<a.length;s++){var l=a[s],c=i(r,o,l),u=e[l]._subplot;u||(u=new n({id:l,graphDiv:t,container:e._ternarylayer.node()},e),e[l]._subplot=u),u.plot(c,e,t._promises)}},e.clean=function(t,e,r,n){for(var i=n._subplots[o]||[],a=0;a<i.length;a++){var s=i[a],l=n[s]._subplot;!e[s]&&l&&(l.plotContainer.remove(),l.clipDef.remove(),l.clipDefRelative.remove(),l.layers[\"a-title\"].remove(),l.layers[\"b-title\"].remove(),l.layers[\"c-title\"].remove())}},e.updateFx=function(t){var e=t._fullLayout;e._ternarylayer.selectAll(\"g.toplevel\").style(\"cursor\",\"pan\"===e.dragmode?\"move\":\"crosshair\")}},77416:function(t,e,r){\"use strict\";var n=r(10229),i=r(13792).u,a=r(25829),o=r(13582).overrideAll,s=r(93049).extendFlat,l={title:{text:a.title.text,font:a.title.font},color:a.color,tickmode:a.minor.tickmode,nticks:s({},a.nticks,{dflt:6,min:1}),tick0:a.tick0,dtick:a.dtick,tickvals:a.tickvals,ticktext:a.ticktext,ticks:a.ticks,ticklen:a.ticklen,tickwidth:a.tickwidth,tickcolor:a.tickcolor,ticklabelstep:a.ticklabelstep,showticklabels:a.showticklabels,labelalias:a.labelalias,showtickprefix:a.showtickprefix,tickprefix:a.tickprefix,showticksuffix:a.showticksuffix,ticksuffix:a.ticksuffix,showexponent:a.showexponent,exponentformat:a.exponentformat,minexponent:a.minexponent,separatethousands:a.separatethousands,tickfont:a.tickfont,tickangle:a.tickangle,tickformat:a.tickformat,tickformatstops:a.tickformatstops,hoverformat:a.hoverformat,showline:s({},a.showline,{dflt:!0}),linecolor:a.linecolor,linewidth:a.linewidth,showgrid:s({},a.showgrid,{dflt:!0}),gridcolor:a.gridcolor,gridwidth:a.gridwidth,griddash:a.griddash,layer:a.layer,min:{valType:\"number\",dflt:0,min:0},_deprecated:{title:a._deprecated.title,titlefont:a._deprecated.titlefont}},c=t.exports=o({domain:i({name:\"ternary\"}),bgcolor:{valType:\"color\",dflt:n.background},sum:{valType:\"number\",dflt:1,min:0},aaxis:l,baxis:l,caxis:l},\"plot\",\"from-root\");c.uirevision={valType:\"any\",editType:\"none\"},c.aaxis.uirevision=c.baxis.uirevision=c.caxis.uirevision={valType:\"any\",editType:\"none\"}},25247:function(t,e,r){\"use strict\";var n=r(78766),i=r(78032),a=r(34809),o=r(4448),s=r(12036),l=r(54616),c=r(87433),u=r(22777),h=r(97405),f=r(77416),p=[\"aaxis\",\"baxis\",\"caxis\"];function d(t,e,r,a){var o,s,l,c=r(\"bgcolor\"),u=r(\"sum\");a.bgColor=n.combine(c,a.paper_bgcolor);for(var h=0;h<p.length;h++)s=t[o=p[h]]||{},(l=i.newContainer(e,o))._name=o,m(s,l,a,e);var f=e.aaxis,d=e.baxis,g=e.caxis;f.min+d.min+g.min>=u&&(f.min=0,d.min=0,g.min=0,t.aaxis&&delete t.aaxis.min,t.baxis&&delete t.baxis.min,t.caxis&&delete t.caxis.min)}function m(t,e,r,n){var i=f[e._name];function o(r,n){return a.coerce(t,e,i,r,n)}o(\"uirevision\",n.uirevision),e.type=\"linear\";var p=o(\"color\"),d=p!==i.color.dflt?p:r.font.color,m=e._name.charAt(0).toUpperCase(),g=\"Component \"+m,y=o(\"title.text\",g);e._hovertitle=y===g?y:m,a.coerceFont(o,\"title.font\",r.font,{overrideDflt:{size:a.bigFont(r.font.size),color:d}}),o(\"min\"),u(t,e,o,\"linear\"),l(t,e,o,\"linear\"),s(t,e,o,\"linear\",{noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0}),c(t,e,o,{outerTicks:!0}),o(\"showticklabels\")&&(a.coerceFont(o,\"tickfont\",r.font,{overrideDflt:{color:d}}),o(\"tickangle\"),o(\"tickformat\")),h(t,e,o,{dfltColor:p,bgColor:r.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:i}),o(\"hoverformat\"),o(\"layer\")}t.exports=function(t,e,r){o(t,e,r,{type:\"ternary\",attributes:f,handleDefaults:d,font:e.font,paper_bgcolor:e.paper_bgcolor})}},83637:function(t,e,r){\"use strict\";var n=r(45568),i=r(65657),a=r(33626),o=r(34809),s=o.strTranslate,l=o._,c=r(78766),u=r(62203),h=r(19091),f=r(93049).extendFlat,p=r(44122),d=r(29714),m=r(14751),g=r(32141),y=r(70414),v=y.freeMode,x=y.rectMode,_=r(17240),b=r(44844).prepSelect,w=r(44844).selectOnClick,T=r(44844).clearOutline,k=r(44844).clearSelectionsCache,A=r(54826);function M(t,e){this.id=t.id,this.graphDiv=t.graphDiv,this.init(e),this.makeFramework(e),this.updateFx(e),this.aTickLayout=null,this.bTickLayout=null,this.cTickLayout=null}t.exports=M;var S=M.prototype;S.init=function(t){this.container=t._ternarylayer,this.defs=t._defs,this.layoutId=t._uid,this.traceHash={},this.layers={}},S.plot=function(t,e){var r=this,n=e[r.id],i=e._size;r._hasClipOnAxisFalse=!1;for(var a=0;a<t.length;a++)if(!1===t[a][0].trace.cliponaxis){r._hasClipOnAxisFalse=!0;break}r.updateLayers(n),r.adjustLayout(n,i),p.generalUpdatePerTraceModule(r.graphDiv,r,t,n),r.layers.plotbg.select(\"path\").call(c.fill,n.bgcolor)},S.makeFramework=function(t){var e=this,r=e.graphDiv,n=t[e.id],i=e.clipId=\"clip\"+e.layoutId+e.id,a=e.clipIdRelative=\"clip-relative\"+e.layoutId+e.id;e.clipDef=o.ensureSingleById(t._clips,\"clipPath\",i,(function(t){t.append(\"path\").attr(\"d\",\"M0,0Z\")})),e.clipDefRelative=o.ensureSingleById(t._clips,\"clipPath\",a,(function(t){t.append(\"path\").attr(\"d\",\"M0,0Z\")})),e.plotContainer=o.ensureSingle(e.container,\"g\",e.id),e.updateLayers(n),u.setClipUrl(e.layers.backplot,i,r),u.setClipUrl(e.layers.grids,i,r)},S.updateFx=function(t){t._ternarylayer.selectAll(\"g.toplevel\").style(\"cursor\",\"pan\"===t.dragmode?\"move\":\"crosshair\")},S.updateLayers=function(t){var e=this.layers,r=[\"draglayer\",\"plotbg\",\"backplot\",\"grids\"];\"below traces\"===t.aaxis.layer&&r.push(\"aaxis\",\"aline\"),\"below traces\"===t.baxis.layer&&r.push(\"baxis\",\"bline\"),\"below traces\"===t.caxis.layer&&r.push(\"caxis\",\"cline\"),r.push(\"frontplot\"),\"above traces\"===t.aaxis.layer&&r.push(\"aaxis\",\"aline\"),\"above traces\"===t.baxis.layer&&r.push(\"baxis\",\"bline\"),\"above traces\"===t.caxis.layer&&r.push(\"caxis\",\"cline\");var i=this.plotContainer.selectAll(\"g.toplevel\").data(r,String),a=[\"agrid\",\"bgrid\",\"cgrid\"];i.enter().append(\"g\").attr(\"class\",(function(t){return\"toplevel \"+t})).each((function(t){var r=n.select(this);e[t]=r,\"frontplot\"===t?r.append(\"g\").classed(\"scatterlayer\",!0):\"backplot\"===t?r.append(\"g\").classed(\"maplayer\",!0):\"plotbg\"===t?r.append(\"path\").attr(\"d\",\"M0,0Z\"):\"aline\"===t||\"bline\"===t||\"cline\"===t?r.append(\"path\"):\"grids\"===t&&a.forEach((function(t){e[t]=r.append(\"g\").classed(\"grid \"+t,!0)}))})),i.order()};var E=Math.sqrt(4/3);S.adjustLayout=function(t,e){var r,n,i,a,o,l,p=this,d=t.domain,m=(d.x[0]+d.x[1])/2,g=(d.y[0]+d.y[1])/2,y=d.x[1]-d.x[0],v=d.y[1]-d.y[0],x=y*e.w,_=v*e.h,b=t.sum,w=t.aaxis.min,T=t.baxis.min,k=t.caxis.min;x>E*_?i=(a=_)*E:a=(i=x)/E,o=y*i/x,l=v*a/_,r=e.l+e.w*m-i/2,n=e.t+e.h*(1-g)-a/2,p.x0=r,p.y0=n,p.w=i,p.h=a,p.sum=b,p.xaxis={type:\"linear\",range:[w+2*k-b,b-w-2*T],domain:[m-o/2,m+o/2],_id:\"x\"},h(p.xaxis,p.graphDiv._fullLayout),p.xaxis.setScale(),p.xaxis.isPtWithinRange=function(t){return t.a>=p.aaxis.range[0]&&t.a<=p.aaxis.range[1]&&t.b>=p.baxis.range[1]&&t.b<=p.baxis.range[0]&&t.c>=p.caxis.range[1]&&t.c<=p.caxis.range[0]},p.yaxis={type:\"linear\",range:[w,b-T-k],domain:[g-l/2,g+l/2],_id:\"y\"},h(p.yaxis,p.graphDiv._fullLayout),p.yaxis.setScale(),p.yaxis.isPtWithinRange=function(){return!0};var A=p.yaxis.domain[0],M=p.aaxis=f({},t.aaxis,{range:[w,b-T-k],side:\"left\",tickangle:(+t.aaxis.tickangle||0)-30,domain:[A,A+l*E],anchor:\"free\",position:0,_id:\"y\",_length:i});h(M,p.graphDiv._fullLayout),M.setScale();var S=p.baxis=f({},t.baxis,{range:[b-w-k,T],side:\"bottom\",domain:p.xaxis.domain,anchor:\"free\",position:0,_id:\"x\",_length:i});h(S,p.graphDiv._fullLayout),S.setScale();var C=p.caxis=f({},t.caxis,{range:[b-w-T,k],side:\"right\",tickangle:(+t.caxis.tickangle||0)+30,domain:[A,A+l*E],anchor:\"free\",position:0,_id:\"y\",_length:i});h(C,p.graphDiv._fullLayout),C.setScale();var L=\"M\"+r+\",\"+(n+a)+\"h\"+i+\"l-\"+i/2+\",-\"+a+\"Z\";p.clipDef.select(\"path\").attr(\"d\",L),p.layers.plotbg.select(\"path\").attr(\"d\",L);var I=\"M0,\"+a+\"h\"+i+\"l-\"+i/2+\",-\"+a+\"Z\";p.clipDefRelative.select(\"path\").attr(\"d\",I);var P=s(r,n);p.plotContainer.selectAll(\".scatterlayer,.maplayer\").attr(\"transform\",P),p.clipDefRelative.select(\"path\").attr(\"transform\",null);var z=s(r-S._offset,n+a);p.layers.baxis.attr(\"transform\",z),p.layers.bgrid.attr(\"transform\",z);var O=s(r+i/2,n)+\"rotate(30)\"+s(0,-M._offset);p.layers.aaxis.attr(\"transform\",O),p.layers.agrid.attr(\"transform\",O);var D=s(r+i/2,n)+\"rotate(-30)\"+s(0,-C._offset);p.layers.caxis.attr(\"transform\",D),p.layers.cgrid.attr(\"transform\",D),p.drawAxes(!0),p.layers.aline.select(\"path\").attr(\"d\",M.showline?\"M\"+r+\",\"+(n+a)+\"l\"+i/2+\",-\"+a:\"M0,0\").call(c.stroke,M.linecolor||\"#000\").style(\"stroke-width\",(M.linewidth||0)+\"px\"),p.layers.bline.select(\"path\").attr(\"d\",S.showline?\"M\"+r+\",\"+(n+a)+\"h\"+i:\"M0,0\").call(c.stroke,S.linecolor||\"#000\").style(\"stroke-width\",(S.linewidth||0)+\"px\"),p.layers.cline.select(\"path\").attr(\"d\",C.showline?\"M\"+(r+i/2)+\",\"+n+\"l\"+i/2+\",\"+a:\"M0,0\").call(c.stroke,C.linecolor||\"#000\").style(\"stroke-width\",(C.linewidth||0)+\"px\"),p.graphDiv._context.staticPlot||p.initInteractions(),u.setClipUrl(p.layers.frontplot,p._hasClipOnAxisFalse?null:p.clipId,p.graphDiv)},S.drawAxes=function(t){var e=this,r=e.graphDiv,n=e.id.substr(7)+\"title\",i=e.layers,a=e.aaxis,o=e.baxis,s=e.caxis;if(e.drawAx(a),e.drawAx(o),e.drawAx(s),t){var c=Math.max(a.showticklabels?a.tickfont.size/2:0,(s.showticklabels?.75*s.tickfont.size:0)+(\"outside\"===s.ticks?.87*s.ticklen:0)),u=(o.showticklabels?o.tickfont.size:0)+(\"outside\"===o.ticks?o.ticklen:0)+3;i[\"a-title\"]=_.draw(r,\"a\"+n,{propContainer:a,propName:e.id+\".aaxis.title\",placeholder:l(r,\"Click to enter Component A title\"),attributes:{x:e.x0+e.w/2,y:e.y0-a.title.font.size/3-c,\"text-anchor\":\"middle\"}}),i[\"b-title\"]=_.draw(r,\"b\"+n,{propContainer:o,propName:e.id+\".baxis.title\",placeholder:l(r,\"Click to enter Component B title\"),attributes:{x:e.x0-u,y:e.y0+e.h+.83*o.title.font.size+u,\"text-anchor\":\"middle\"}}),i[\"c-title\"]=_.draw(r,\"c\"+n,{propContainer:s,propName:e.id+\".caxis.title\",placeholder:l(r,\"Click to enter Component C title\"),attributes:{x:e.x0+e.w+u,y:e.y0+e.h+.83*s.title.font.size+u,\"text-anchor\":\"middle\"}})}},S.drawAx=function(t){var e,r=this,n=r.graphDiv,i=t._name,a=i.charAt(0),s=t._id,l=r.layers[i],c=a+\"tickLayout\",u=(e=t).ticks+String(e.ticklen)+String(e.showticklabels);r[c]!==u&&(l.selectAll(\".\"+s+\"tick\").remove(),r[c]=u),t.setScale();var h=d.calcTicks(t),f=d.clipEnds(t,h),p=d.makeTransTickFn(t),m=d.getTickSigns(t)[2],g=o.deg2rad(30),y=m*(t.linewidth||1)/2,v=m*t.ticklen,x=r.w,_=r.h,b=\"b\"===a?\"M0,\"+y+\"l\"+Math.sin(g)*v+\",\"+Math.cos(g)*v:\"M\"+y+\",0l\"+Math.cos(g)*v+\",\"+-Math.sin(g)*v,w={a:\"M0,0l\"+_+\",-\"+x/2,b:\"M0,0l-\"+x/2+\",-\"+_,c:\"M0,0l-\"+_+\",\"+x/2}[a];d.drawTicks(n,t,{vals:\"inside\"===t.ticks?f:h,layer:l,path:b,transFn:p,crisp:!1}),d.drawGrid(n,t,{vals:f,layer:r.layers[a+\"grid\"],path:w,transFn:p,crisp:!1}),d.drawLabels(n,t,{vals:h,layer:l,transFn:p,labelFns:d.makeLabelFns(t,0,30)})};var C=A.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\",I=\"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\",P=\"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\",z=!0;function O(t){n.select(t).selectAll(\".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners\").remove()}S.clearOutline=function(){k(this.dragOptions),T(this.dragOptions.gd)},S.initInteractions=function(){var t,e,r,n,h,f,p,d,y,_,T,k,M=this,S=M.layers.plotbg.select(\"path\").node(),C=M.graphDiv,D=C._fullLayout._zoomlayer;function R(t){var e={};return e[M.id+\".aaxis.min\"]=t.a,e[M.id+\".baxis.min\"]=t.b,e[M.id+\".caxis.min\"]=t.c,e}function F(t,e){var r=C._fullLayout.clickmode;O(C),2===t&&(C.emit(\"plotly_doubleclick\",null),a.call(\"_guiRelayout\",C,R({a:0,b:0,c:0}))),r.indexOf(\"select\")>-1&&1===t&&w(e,C,[M.xaxis],[M.yaxis],M.id,M.dragOptions),r.indexOf(\"event\")>-1&&g.click(C,e,M.id)}function B(t,e){return 1-e/M.h}function N(t,e){return 1-(t+(M.h-e)/Math.sqrt(3))/M.w}function j(t,e){return(t-(M.h-e)/Math.sqrt(3))/M.w}function U(i,a){var o=r+i*t,s=n+a*e,l=Math.max(0,Math.min(1,B(0,n),B(0,s))),c=Math.max(0,Math.min(1,N(r,n),N(o,s))),u=Math.max(0,Math.min(1,j(r,n),j(o,s))),m=(l/2+u)*M.w,g=(1-l/2-c)*M.w,v=(m+g)/2,x=g-m,b=(1-l)*M.h,w=b-x/E;x<A.MINZOOM?(p=h,T.attr(\"d\",y),k.attr(\"d\",\"M0,0Z\")):(p={a:h.a+l*f,b:h.b+c*f,c:h.c+u*f},T.attr(\"d\",y+\"M\"+m+\",\"+b+\"H\"+g+\"L\"+v+\",\"+w+\"L\"+m+\",\"+b+\"Z\"),k.attr(\"d\",\"M\"+r+\",\"+n+\"m0.5,0.5h5v-2h-5v-5h-2v5h-5v2h5v5h2ZM\"+m+\",\"+b+L+\"M\"+g+\",\"+b+I+\"M\"+v+\",\"+w+P)),_||(T.transition().style(\"fill\",d>.2?\"rgba(0,0,0,0.4)\":\"rgba(255,255,255,0.3)\").duration(200),k.transition().style(\"opacity\",1).duration(200),_=!0),C.emit(\"plotly_relayouting\",R(p))}function V(){O(C),p!==h&&(a.call(\"_guiRelayout\",C,R(p)),z&&C.data&&C._context.showTips&&(o.notifier(l(C,\"Double-click to zoom back out\"),\"long\"),z=!1))}function q(t,e){var r=t/M.xaxis._m,n=e/M.yaxis._m,i=[(p={a:h.a-n,b:h.b+(r+n)/2,c:h.c-(r-n)/2}).a,p.b,p.c].sort(o.sorterAsc),a=i.indexOf(p.a),l=i.indexOf(p.b),c=i.indexOf(p.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),p={a:i[a],b:i[l],c:i[c]},e=(h.a-p.a)*M.yaxis._m,t=(h.c-p.c-h.b+p.b)*M.xaxis._m);var f=s(M.x0+t,M.y0+e);M.plotContainer.selectAll(\".scatterlayer,.maplayer\").attr(\"transform\",f);var d=s(-t,-e);M.clipDefRelative.select(\"path\").attr(\"transform\",d),M.aaxis.range=[p.a,M.sum-p.b-p.c],M.baxis.range=[M.sum-p.a-p.c,p.b],M.caxis.range=[M.sum-p.a-p.b,p.c],M.drawAxes(!1),M._hasClipOnAxisFalse&&M.plotContainer.select(\".scatterlayer\").selectAll(\".trace\").call(u.hideOutsideRangePoints,M),C.emit(\"plotly_relayouting\",R(p))}function H(){a.call(\"_guiRelayout\",C,R(p))}this.dragOptions={element:S,gd:C,plotinfo:{id:M.id,domain:C._fullLayout[M.id].domain,xaxis:M.xaxis,yaxis:M.yaxis},subplot:M.id,prepFn:function(a,l,u){M.dragOptions.xaxes=[M.xaxis],M.dragOptions.yaxes=[M.yaxis],t=C._fullLayout._invScaleX,e=C._fullLayout._invScaleY;var m=M.dragOptions.dragmode=C._fullLayout.dragmode;v(m)?M.dragOptions.minDrag=1:M.dragOptions.minDrag=void 0,\"zoom\"===m?(M.dragOptions.moveFn=U,M.dragOptions.clickFn=F,M.dragOptions.doneFn=V,function(t,e,a){var l=S.getBoundingClientRect();r=e-l.left,n=a-l.top,C._fullLayout._calcInverseTransform(C);var u=C._fullLayout._invTransform,m=o.apply3DTransform(u)(r,n);r=m[0],n=m[1],h={a:M.aaxis.range[0],b:M.baxis.range[1],c:M.caxis.range[1]},p=h,f=M.aaxis.range[1]-h.a,d=i(M.graphDiv._fullLayout[M.id].bgcolor).getLuminance(),y=\"M0,\"+M.h+\"L\"+M.w/2+\", 0L\"+M.w+\",\"+M.h+\"Z\",_=!1,T=D.append(\"path\").attr(\"class\",\"zoombox\").attr(\"transform\",s(M.x0,M.y0)).style({fill:d>.2?\"rgba(0,0,0,0)\":\"rgba(255,255,255,0)\",\"stroke-width\":0}).attr(\"d\",y),k=D.append(\"path\").attr(\"class\",\"zoombox-corners\").attr(\"transform\",s(M.x0,M.y0)).style({fill:c.background,stroke:c.defaultLine,\"stroke-width\":1,opacity:0}).attr(\"d\",\"M0,0Z\"),M.clearOutline(C)}(0,l,u)):\"pan\"===m?(M.dragOptions.moveFn=q,M.dragOptions.clickFn=F,M.dragOptions.doneFn=H,h={a:M.aaxis.range[0],b:M.baxis.range[1],c:M.caxis.range[1]},p=h,M.clearOutline(C)):(x(m)||v(m))&&b(a,l,u,M.dragOptions,m)}},S.onmousemove=function(t){g.hover(C,t,M.id),C._fullLayout._lasthover=S,C._fullLayout._hoversubplot=M.id},S.onmouseout=function(t){C._dragging||m.unhover(C,t)},m.init(this.dragOptions)}},33626:function(t,e,r){\"use strict\";var n=r(48636),i=r(4969),a=r(36539),o=r(56174),s=r(95425).addStyleRule,l=r(93049),c=r(9829),u=r(6704),h=l.extendFlat,f=l.extendDeepAll;function p(t){var i=t.name,a=t.categories,o=t.meta;if(e.modules[i])n.log(\"Type \"+i+\" already registered\");else{e.subplotsRegistry[t.basePlotModule.name]||function(t){var r=t.name;if(e.subplotsRegistry[r])n.log(\"Plot type \"+r+\" already registered.\");else for(var i in y(t),e.subplotsRegistry[r]=t,e.componentsRegistry)_(i,t.name)}(t.basePlotModule);for(var l={},c=0;c<a.length;c++)l[a[c]]=!0,e.allCategories[a[c]]=!0;for(var u in e.modules[i]={_module:t,categories:l},o&&Object.keys(o).length&&(e.modules[i].meta=o),e.allTypes.push(i),e.componentsRegistry)v(u,i);t.layoutAttributes&&h(e.traceLayoutAttributes,t.layoutAttributes);var f=t.basePlotModule,p=f.name;if(\"mapbox\"===p){var d=f.constants.styleRules;for(var m in d)s(\".js-plotly-plot .plotly .mapboxgl-\"+m,d[m])}\"map\"===p&&r(96144),\"geo\"!==p&&\"mapbox\"!==p&&\"map\"!==p||void 0!==window.PlotlyGeoAssets||(window.PlotlyGeoAssets={topojson:{}})}}function d(t){if(\"string\"!=typeof t.name)throw new Error(\"Component module *name* must be a string.\");var r=t.name;for(var n in e.componentsRegistry[r]=t,t.layoutAttributes&&(t.layoutAttributes._isLinkedToArray&&a(e.layoutArrayContainers,r),y(t)),e.modules)v(r,n);for(var i in e.subplotsRegistry)_(r,i);for(var o in e.transformsRegistry)x(r,o);t.schema&&t.schema.layout&&f(u,t.schema.layout)}function m(t){if(\"string\"!=typeof t.name)throw new Error(\"Transform module *name* must be a string.\");var r=\"Transform module \"+t.name,i=\"function\"==typeof t.transform,a=\"function\"==typeof t.calcTransform;if(!i&&!a)throw new Error(r+\" is missing a *transform* or *calcTransform* method.\");for(var s in i&&a&&n.log([r+\" has both a *transform* and *calcTransform* methods.\",\"Please note that all *transform* methods are executed\",\"before all *calcTransform* methods.\"].join(\" \")),o(t.attributes)||n.log(r+\" registered without an *attributes* object.\"),\"function\"!=typeof t.supplyDefaults&&n.log(r+\" registered without a *supplyDefaults* method.\"),e.transformsRegistry[t.name]=t,e.componentsRegistry)x(s,t.name)}function g(t){var r=t.name,n=r.split(\"-\")[0],i=t.dictionary,a=t.format,o=i&&Object.keys(i).length,s=a&&Object.keys(a).length,l=e.localeRegistry,c=l[r];if(c||(l[r]=c={}),n!==r){var u=l[n];u||(l[n]=u={}),o&&u.dictionary===c.dictionary&&(u.dictionary=i),s&&u.format===c.format&&(u.format=a)}o&&(c.dictionary=i),s&&(c.format=a)}function y(t){if(t.layoutAttributes){var r=t.layoutAttributes._arrayAttrRegexps;if(r)for(var n=0;n<r.length;n++)a(e.layoutArrayRegexes,r[n])}}function v(t,r){var n=e.componentsRegistry[t].schema;if(n&&n.traces){var i=n.traces[r];i&&f(e.modules[r]._module.attributes,i)}}function x(t,r){var n=e.componentsRegistry[t].schema;if(n&&n.transforms){var i=n.transforms[r];i&&f(e.transformsRegistry[r].attributes,i)}}function _(t,r){var n=e.componentsRegistry[t].schema;if(n&&n.subplots){var i=e.subplotsRegistry[r],a=i.layoutAttributes,o=\"subplot\"===i.attr?i.name:i.attr;Array.isArray(o)&&(o=o[0]);var s=n.subplots[o];a&&s&&f(a,s)}}function b(t){return\"object\"==typeof t&&(t=t.type),t}e.modules={},e.allCategories={},e.allTypes=[],e.subplotsRegistry={},e.transformsRegistry={},e.componentsRegistry={},e.layoutArrayContainers=[],e.layoutArrayRegexes=[],e.traceLayoutAttributes={},e.localeRegistry={},e.apiMethodRegistry={},e.collectableSubplotTypes=null,e.register=function(t){if(e.collectableSubplotTypes=null,!t)throw new Error(\"No argument passed to Plotly.register.\");t&&!Array.isArray(t)&&(t=[t]);for(var r=0;r<t.length;r++){var n=t[r];if(!n)throw new Error(\"Invalid module was attempted to be registered!\");switch(n.moduleType){case\"trace\":p(n);break;case\"transform\":m(n);break;case\"component\":d(n);break;case\"locale\":g(n);break;case\"apiMethod\":var i=n.name;e.apiMethodRegistry[i]=n.fn;break;default:throw new Error(\"Invalid module was attempted to be registered!\")}}},e.getModule=function(t){var r=e.modules[b(t)];return!!r&&r._module},e.traceIs=function(t,r){if(\"various\"===(t=b(t)))return!1;var i=e.modules[t];return i||(t&&n.log(\"Unrecognized trace type \"+t+\".\"),i=e.modules[c.type.dflt]),!!i.categories[r]},e.getTransformIndices=function(t,e){for(var r=[],n=t.transforms||[],i=0;i<n.length;i++)n[i].type===e&&r.push(i);return r},e.hasTransform=function(t,e){for(var r=t.transforms||[],n=0;n<r.length;n++)if(r[n].type===e)return!0;return!1},e.getComponentMethod=function(t,r){var n=e.componentsRegistry[t];return n&&n[r]||i},e.call=function(){var t=arguments[0],r=[].slice.call(arguments,1);return e.apiMethodRegistry[t].apply(null,r)}},3164:function(t,e,r){\"use strict\";var n=r(33626),i=r(34809),a=i.extendFlat,o=i.extendDeep;function s(t){var e;switch(t){case\"themes__thumb\":e={autosize:!0,width:150,height:150,title:{text:\"\"},showlegend:!1,margin:{l:5,r:5,t:5,b:5,pad:0},annotations:[]};break;case\"thumbnail\":e={title:{text:\"\"},hidesources:!0,showlegend:!1,borderwidth:0,bordercolor:\"\",margin:{l:1,r:1,t:1,b:1,pad:0},annotations:[]};break;default:e={}}return e}t.exports=function(t,e){var r,i,l=t.data,c=t.layout,u=o([],l),h=o({},c,s(e.tileClass)),f=t._context||{};if(e.width&&(h.width=e.width),e.height&&(h.height=e.height),\"thumbnail\"===e.tileClass||\"themes__thumb\"===e.tileClass){h.annotations=[];var p=Object.keys(h);for(r=0;r<p.length;r++)i=p[r],[\"xaxis\",\"yaxis\",\"zaxis\"].indexOf(i.slice(0,5))>-1&&(h[p[r]].title={text:\"\"});for(r=0;r<u.length;r++){var d=u[r];d.showscale=!1,d.marker&&(d.marker.showscale=!1),n.traceIs(d,\"pie-like\")&&(d.textposition=\"none\")}}if(Array.isArray(e.annotations))for(r=0;r<e.annotations.length;r++)h.annotations.push(e.annotations[r]);var m=Object.keys(h).filter((function(t){return t.match(/^scene\\d*$/)}));if(m.length){var g={};for(\"thumbnail\"===e.tileClass&&(g={title:{text:\"\"},showaxeslabels:!1,showticklabels:!1,linetickenable:!1}),r=0;r<m.length;r++){var y=h[m[r]];y.xaxis||(y.xaxis={}),y.yaxis||(y.yaxis={}),y.zaxis||(y.zaxis={}),a(y.xaxis,g),a(y.yaxis,g),a(y.zaxis,g),y._scene=null}}var v=document.createElement(\"div\");e.tileClass&&(v.className=e.tileClass);var x={gd:v,td:v,layout:h,data:u,config:{staticPlot:void 0===e.staticPlot||e.staticPlot,plotGlPixelRatio:void 0===e.plotGlPixelRatio?2:e.plotGlPixelRatio,displaylogo:e.displaylogo||!1,showLink:e.showLink||!1,showTips:e.showTips||!1,mapboxAccessToken:f.mapboxAccessToken}};return\"transparent\"!==e.setBackground&&(x.config.setBackground=e.setBackground||\"opaque\"),x.gd.defaultLayout=s(e.tileClass),x}},26452:function(t,e,r){\"use strict\";var n=r(34809),i=r(80491),a=r(33353),o=r(84619);t.exports=function(t,e){var r;return n.isPlainObject(t)||(r=n.getGraphDiv(t)),(e=e||{}).format=e.format||\"png\",e.width=e.width||null,e.height=e.height||null,e.imageDataOnly=!0,new Promise((function(s,l){r&&r._snapshotInProgress&&l(new Error(\"Snapshotting already in progress.\")),n.isIE()&&\"svg\"!==e.format&&l(new Error(o.MSG_IE_BAD_FORMAT)),r&&(r._snapshotInProgress=!0);var c=i(t,e),u=e.filename||t.fn||\"newplot\";u+=\".\"+e.format.replace(\"-\",\".\"),c.then((function(t){return r&&(r._snapshotInProgress=!1),a(t,u,e.format)})).then((function(t){s(t)})).catch((function(t){r&&(r._snapshotInProgress=!1),l(t)}))}))}},33353:function(t,e,r){\"use strict\";var n=r(34809),i=r(84619);t.exports=function(t,e,r){var a=document.createElement(\"a\"),o=\"download\"in a;return new Promise((function(s,l){var c,u;if(n.isIE())return c=i.createBlob(t,\"svg\"),window.navigator.msSaveBlob(c,e),c=null,s(e);if(o)return c=i.createBlob(t,r),u=i.createObjectURL(c),a.href=u,a.download=e,document.body.appendChild(a),a.click(),document.body.removeChild(a),i.revokeObjectURL(u),c=null,s(e);if(n.isSafari()){var h=\"svg\"===r?\",\":\";base64,\";return i.octetStream(h+encodeURIComponent(t)),s(e)}l(new Error(\"download error\"))}))}},84619:function(t,e,r){\"use strict\";var n=r(33626);e.getDelay=function(t){return t._has&&(t._has(\"gl3d\")||t._has(\"gl2d\")||t._has(\"mapbox\")||t._has(\"map\"))?500:0},e.getRedrawFunc=function(t){return function(){n.getComponentMethod(\"colorbar\",\"draw\")(t)}},e.encodeSVG=function(t){return\"data:image/svg+xml,\"+encodeURIComponent(t)},e.encodeJSON=function(t){return\"data:application/json,\"+encodeURIComponent(t)};var i=window.URL||window.webkitURL;e.createObjectURL=function(t){return i.createObjectURL(t)},e.revokeObjectURL=function(t){return i.revokeObjectURL(t)},e.createBlob=function(t,e){if(\"svg\"===e)return new window.Blob([t],{type:\"image/svg+xml;charset=utf-8\"});if(\"full-json\"===e)return new window.Blob([t],{type:\"application/json;charset=utf-8\"});var r=function(t){for(var e=t.length,r=new ArrayBuffer(e),n=new Uint8Array(r),i=0;i<e;i++)n[i]=t.charCodeAt(i);return r}(window.atob(t));return new window.Blob([r],{type:\"image/\"+e})},e.octetStream=function(t){document.location.href=\"data:application/octet-stream\"+t},e.IMAGE_URL_PREFIX=/^data:image\\/\\w+;base64,/,e.MSG_IE_BAD_FORMAT=\"Sorry IE does not support downloading from canvas. Try {format:'svg'} instead.\"},6170:function(t,e,r){\"use strict\";var n=r(84619),i={getDelay:n.getDelay,getRedrawFunc:n.getRedrawFunc,clone:r(3164),toSVG:r(6243),svgToImg:r(72914),toImage:r(76896),downloadImage:r(26452)};t.exports=i},72914:function(t,e,r){\"use strict\";var n=r(34809),i=r(7683).EventEmitter,a=r(84619);t.exports=function(t){var e=t.emitter||new i,r=new Promise((function(i,o){var s=window.Image,l=t.svg,c=t.format||\"png\";if(n.isIE()&&\"svg\"!==c){var u=new Error(a.MSG_IE_BAD_FORMAT);return o(u),t.promise?r:e.emit(\"error\",u)}var h,f,p=t.canvas,d=t.scale||1,m=t.width||300,g=t.height||150,y=d*m,v=d*g,x=p.getContext(\"2d\",{willReadFrequently:!0}),_=new s;\"svg\"===c||n.isSafari()?f=a.encodeSVG(l):(h=a.createBlob(l,\"svg\"),f=a.createObjectURL(h)),p.width=y,p.height=v,_.onload=function(){var r;switch(h=null,a.revokeObjectURL(f),\"svg\"!==c&&x.drawImage(_,0,0,y,v),c){case\"jpeg\":r=p.toDataURL(\"image/jpeg\");break;case\"png\":r=p.toDataURL(\"image/png\");break;case\"webp\":r=p.toDataURL(\"image/webp\");break;case\"svg\":r=f;break;default:var n=\"Image format is not jpeg, png, svg or webp.\";if(o(new Error(n)),!t.promise)return e.emit(\"error\",n)}i(r),t.promise||e.emit(\"success\",r)},_.onerror=function(r){if(h=null,a.revokeObjectURL(f),o(r),!t.promise)return e.emit(\"error\",r)},_.src=f}));return t.promise?r:e}},76896:function(t,e,r){\"use strict\";var n=r(7683).EventEmitter,i=r(33626),a=r(34809),o=r(84619),s=r(3164),l=r(6243),c=r(72914);t.exports=function(t,e){var r=new n,u=s(t,{format:\"png\"}),h=u.gd;h.style.position=\"absolute\",h.style.left=\"-5000px\",document.body.appendChild(h);var f=o.getRedrawFunc(h);return i.call(\"_doPlot\",h,u.data,u.layout,u.config).then(f).then((function(){var t=o.getDelay(h._fullLayout);setTimeout((function(){var t=l(h),n=document.createElement(\"canvas\");n.id=a.randstr(),(r=c({format:e.format,width:h._fullLayout.width,height:h._fullLayout.height,canvas:n,emitter:r,svg:t})).clean=function(){h&&document.body.removeChild(h)}}),t)})).catch((function(t){r.emit(\"error\",t)})),r}},6243:function(t,e,r){\"use strict\";var n=r(45568),i=r(34809),a=r(62203),o=r(78766),s=r(62972),l=/\"/g,c=\"TOBESTRIPPED\",u=new RegExp('(\"'+c+\")|(\"+c+'\")',\"g\");t.exports=function(t,e,r){var h,f=t._fullLayout,p=f._paper,d=f._toppaper,m=f.width,g=f.height;p.insert(\"rect\",\":first-child\").call(a.setRect,0,0,m,g).call(o.fill,f.paper_bgcolor);var y=f._basePlotModules||[];for(h=0;h<y.length;h++){var v=y[h];v.toSVG&&v.toSVG(t)}if(d){var x=d.node().childNodes,_=Array.prototype.slice.call(x);for(h=0;h<_.length;h++){var b=_[h];b.childNodes.length&&p.node().appendChild(b)}}f._draggers&&f._draggers.remove(),p.node().style.background=\"\",p.selectAll(\"text\").attr({\"data-unformatted\":null,\"data-math\":null}).each((function(){var t=n.select(this);if(\"hidden\"!==this.style.visibility&&\"none\"!==this.style.display){t.style({visibility:null,display:null});var e=this.style.fontFamily;e&&-1!==e.indexOf('\"')&&t.style(\"font-family\",e.replace(l,c));var r=this.style.fontWeight;!r||\"normal\"!==r&&\"400\"!==r||t.style(\"font-weight\",void 0);var i=this.style.fontStyle;i&&\"normal\"===i&&t.style(\"font-style\",void 0);var a=this.style.fontVariant;a&&\"normal\"===a&&t.style(\"font-variant\",void 0)}else t.remove()})),p.selectAll(\".gradient_filled,.pattern_filled\").each((function(){var t=n.select(this),e=this.style.fill;e&&-1!==e.indexOf(\"url(\")&&t.style(\"fill\",e.replace(l,c));var r=this.style.stroke;r&&-1!==r.indexOf(\"url(\")&&t.style(\"stroke\",r.replace(l,c))})),\"pdf\"!==e&&\"eps\"!==e||p.selectAll(\"#MathJax_SVG_glyphs path\").attr(\"stroke-width\",0),p.node().setAttributeNS(s.xmlns,\"xmlns\",s.svg),p.node().setAttributeNS(s.xmlns,\"xmlns:xlink\",s.xlink),\"svg\"===e&&r&&(p.attr(\"width\",r*m),p.attr(\"height\",r*g),p.attr(\"viewBox\",\"0 0 \"+m+\" \"+g));var w=(new window.XMLSerializer).serializeToString(p.node());return w=(w=(w=function(t){var e=n.select(\"body\").append(\"div\").style({display:\"none\"}).html(\"\"),r=t.replace(/(&[^;]*;)/gi,(function(t){return\"&lt;\"===t?\"&#60;\":\"&rt;\"===t?\"&#62;\":-1!==t.indexOf(\"<\")||-1!==t.indexOf(\">\")?\"\":e.html(t).text()}));return e.remove(),r}(w)).replace(/&(?!\\w+;|\\#[0-9]+;| \\#x[0-9A-F]+;)/g,\"&amp;\")).replace(u,\"'\"),i.isIE()&&(w=(w=(w=w.replace(/\"/gi,\"'\")).replace(/(\\('#)([^']*)('\\))/gi,'(\"#$2\")')).replace(/(\\\\')/gi,'\"')),w}},35374:function(t,e,r){\"use strict\";var n=r(34809);t.exports=function(t,e){for(var r=0;r<t.length;r++)t[r].i=r;n.mergeArray(e.text,t,\"tx\"),n.mergeArray(e.hovertext,t,\"htx\");var i=e.marker;if(i){n.mergeArray(i.opacity,t,\"mo\",!0),n.mergeArray(i.color,t,\"mc\");var a=i.line;a&&(n.mergeArray(a.color,t,\"mlc\"),n.mergeArrayCastPositive(a.width,t,\"mlw\"))}}},81481:function(t,e,r){\"use strict\";var n=r(36640),i=r(80712).axisHoverFormat,a=r(3208).rb,o=r(3208).ay,s=r(87163),l=r(80337),c=r(56155),u=r(94850).k,h=r(93049).extendFlat,f=l({editType:\"calc\",arrayOk:!0,colorEditType:\"style\"}),p=h({},n.marker.line.width,{dflt:0}),d=h({width:p,editType:\"calc\"},s(\"marker.line\")),m=h({line:d,editType:\"calc\"},s(\"marker\"),{opacity:{valType:\"number\",arrayOk:!0,dflt:1,min:0,max:1,editType:\"style\"},pattern:u,cornerradius:{valType:\"any\",editType:\"calc\"}});t.exports={x:n.x,x0:n.x0,dx:n.dx,y:n.y,y0:n.y0,dy:n.dy,xperiod:n.xperiod,yperiod:n.yperiod,xperiod0:n.xperiod0,yperiod0:n.yperiod0,xperiodalignment:n.xperiodalignment,yperiodalignment:n.yperiodalignment,xhoverformat:i(\"x\"),yhoverformat:i(\"y\"),text:n.text,texttemplate:o({editType:\"plot\"},{keys:c.eventDataKeys}),hovertext:n.hovertext,hovertemplate:a({},{keys:c.eventDataKeys}),textposition:{valType:\"enumerated\",values:[\"inside\",\"outside\",\"auto\",\"none\"],dflt:\"auto\",arrayOk:!0,editType:\"calc\"},insidetextanchor:{valType:\"enumerated\",values:[\"end\",\"middle\",\"start\"],dflt:\"end\",editType:\"plot\"},textangle:{valType:\"angle\",dflt:\"auto\",editType:\"plot\"},textfont:h({},f,{}),insidetextfont:h({},f,{}),outsidetextfont:h({},f,{}),constraintext:{valType:\"enumerated\",values:[\"inside\",\"outside\",\"both\",\"none\"],dflt:\"both\",editType:\"calc\"},cliponaxis:h({},n.cliponaxis,{}),orientation:{valType:\"enumerated\",values:[\"v\",\"h\"],editType:\"calc+clearAxisTypes\"},base:{valType:\"any\",dflt:null,arrayOk:!0,editType:\"calc\"},offset:{valType:\"number\",dflt:null,arrayOk:!0,editType:\"calc\"},width:{valType:\"number\",dflt:null,min:0,arrayOk:!0,editType:\"calc\"},marker:m,offsetgroup:n.offsetgroup,alignmentgroup:n.alignmentgroup,selected:{marker:{opacity:n.selected.marker.opacity,color:n.selected.marker.color,editType:\"style\"},textfont:n.selected.textfont,editType:\"style\"},unselected:{marker:{opacity:n.unselected.marker.opacity,color:n.unselected.marker.color,editType:\"style\"},textfont:n.unselected.textfont,editType:\"style\"},zorder:n.zorder,_deprecated:{bardir:{valType:\"enumerated\",editType:\"calc\",values:[\"v\",\"h\"]}}}},67565:function(t,e,r){\"use strict\";var n=r(29714),i=r(40528),a=r(65477).hasColorscale,o=r(28379),s=r(35374),l=r(48861);t.exports=function(t,e){var r,c,u,h,f,p,d=n.getFromId(t,e.xaxis||\"x\"),m=n.getFromId(t,e.yaxis||\"y\"),g={msUTC:!(!e.base&&0!==e.base)};\"h\"===e.orientation?(r=d.makeCalcdata(e,\"x\",g),u=m.makeCalcdata(e,\"y\"),h=i(e,m,\"y\",u),f=!!e.yperiodalignment,p=\"y\"):(r=m.makeCalcdata(e,\"y\",g),u=d.makeCalcdata(e,\"x\"),h=i(e,d,\"x\",u),f=!!e.xperiodalignment,p=\"x\"),c=h.vals;for(var y=Math.min(c.length,r.length),v=new Array(y),x=0;x<y;x++)v[x]={p:c[x],s:r[x]},f&&(v[x].orig_p=u[x],v[x][p+\"End\"]=h.ends[x],v[x][p+\"Start\"]=h.starts[x]),e.ids&&(v[x].id=String(e.ids[x]));return a(e,\"marker\")&&o(t,e,{vals:e.marker.color,containerStr:\"marker\",cLetter:\"c\"}),a(e,\"marker.line\")&&o(t,e,{vals:e.marker.line.color,containerStr:\"marker.line\",cLetter:\"c\"}),s(v,e),l(v,e),v}},56155:function(t){\"use strict\";t.exports={TEXTPAD:3,eventDataKeys:[\"value\",\"label\"]}},24782:function(t,e,r){\"use strict\";var n=r(10721),i=r(34809).isArrayOrTypedArray,a=r(63821).BADNUM,o=r(33626),s=r(29714),l=r(84391).getAxisGroup,c=r(2880);function u(t,e,r,o,u){if(o.length){var _,b,w,T;switch(function(t,e){var r,a;for(r=0;r<e.length;r++){var o,s=e[r],l=s[0].trace,c=\"funnel\"===l.type?l._base:l.base,u=\"h\"===l.orientation?l.xcalendar:l.ycalendar,h=\"category\"===t.type||\"multicategory\"===t.type?function(){return null}:t.d2c;if(i(c)){for(a=0;a<Math.min(c.length,s.length);a++)o=h(c[a],0,u),n(o)?(s[a].b=+o,s[a].hasB=1):s[a].b=0;for(;a<s.length;a++)s[a].b=0}else{o=h(c,0,u);var f=n(o);for(o=f?o:0,a=0;a<s.length;a++)s[a].b=o,f&&(s[a].hasB=1)}}}(r,o),u.mode){case\"overlay\":h(e,r,o,u);break;case\"group\":for(_=[],b=[],w=0;w<o.length;w++)void 0===(T=o[w])[0].trace.offset?b.push(T):_.push(T);b.length&&function(t,e,r,n,i){var o=new c(n,{posAxis:e,sepNegVal:!1,overlapNoMerge:!i.norm});(function(t,e,r,n){for(var i=t._fullLayout,a=r.positions,o=r.distinctPositions,s=r.minDiff,c=r.traces,u=c.length,h=a.length!==o.length,f=s*(1-n.gap),g=l(i,e._id)+c[0][0].trace.orientation,y=i._alignmentOpts[g]||{},v=0;v<u;v++){var x,_,b=c[v],w=b[0].trace,T=y[w.alignmentgroup]||{},k=Object.keys(T.offsetGroups||{}).length,A=(x=k?f/k:h?f/u:f)*(1-(n.groupgap||0));_=k?((2*w._offsetIndex+1-k)*x-A)/2:h?((2*v+1-u)*x-A)/2:-A/2;var M=b[0].t;M.barwidth=A,M.poffset=_,M.bargroupwidth=f,M.bardelta=s}r.binWidth=c[0][0].t.barwidth/100,p(r),d(e,r),m(e,r,h)})(t,e,o,i),function(t,e){for(var r=t.traces,n=0;n<r.length;n++){var i=r[n];if(void 0===i[0].trace.base)for(var o=new c([i],{posAxis:e,sepNegVal:!0,overlapNoMerge:!0}),s=0;s<i.length;s++){var l=i[s];if(l.p!==a){var u=o.put(l.p,l.b+l.s);u&&(l.b=u)}}}}(o,e),i.norm?(y(o),v(r,o,i)):g(r,o)}(t,e,r,b,u),_.length&&h(e,r,_,u);break;case\"stack\":case\"relative\":for(_=[],b=[],w=0;w<o.length;w++)void 0===(T=o[w])[0].trace.base?b.push(T):_.push(T);!function(t){if(!(t.length<2)){var e,r,i,a,o,s;for(e=0;e<t.length&&void 0===(a=(r=t[e][0].trace).marker?r.marker.cornerradius:void 0);e++);if(void 0!==a)for(o=n(a)?+a:+a.slice(0,-1),s=n(a)?\"px\":\"%\",e=0;e<t.length;e++)(i=t[e][0].t).cornerradiusvalue=o,i.cornerradiusform=s}}(b),b.length&&function(t,e,r,n,i){var o=new c(n,{posAxis:e,sepNegVal:\"relative\"===i.mode,overlapNoMerge:!(i.norm||\"stack\"===i.mode||\"relative\"===i.mode)});f(e,o,i),function(t,e,r){var n,i,o,l,c,u,h=x(t),f=e.traces;for(l=0;l<f.length;l++)if(\"funnel\"===(i=(n=f[l])[0].trace).type)for(c=0;c<n.length;c++)(u=n[c]).s!==a&&e.put(u.p,-.5*u.s);for(l=0;l<f.length;l++){o=\"funnel\"===(i=(n=f[l])[0].trace).type;var p=[];for(c=0;c<n.length;c++)if((u=n[c]).s!==a){var d;d=o?u.s:u.s+u.b;var m=e.put(u.p,d),g=m+d;u.b=m,u[h]=g,r.norm||(p.push(g),u.hasB&&p.push(m))}r.norm||(i._extremes[t._id]=s.findExtremes(t,p,{tozero:!0,padded:!0}))}}(r,o,i);for(var l=0;l<n.length;l++)for(var u=n[l],h=0;h<u.length;h++){var p=u[h];p.s!==a&&p.b+p.s===o.get(p.p,p.s)&&(p._outmost=!0)}i.norm&&v(r,o,i)}(0,e,r,b,u),_.length&&h(e,r,_,u)}!function(t){var e,r,i,a,o,s,l;for(e=0;e<t.length;e++)i=(r=t[e])[0].trace,void 0===(a=r[0].t).cornerradiusvalue&&void 0!==(o=i.marker?i.marker.cornerradius:void 0)&&(s=n(o)?+o:+o.slice(0,-1),l=n(o)?\"px\":\"%\",a.cornerradiusvalue=s,a.cornerradiusform=l)}(o),function(t,e){var r,a,o,s=x(e),l={},c=1/0,u=-1/0;for(r=0;r<t.length;r++)for(o=t[r],a=0;a<o.length;a++){var h=o[a].p;n(h)&&(c=Math.min(c,h),u=Math.max(u,h))}var f=1e4/(u-c),p=l.round=function(t){return String(Math.round(f*(t-c)))},d={},m={},g=t.some((function(t){var e=t[0].trace;return\"marker\"in e&&e.marker.cornerradius}));for(r=0;r<t.length;r++){(o=t[r])[0].t.extents=l;var y=o[0].t.poffset,v=i(y);for(a=0;a<o.length;a++){var _=o[a],b=_[s]-_.w/2;if(n(b)){var w=_[s]+_.w/2,T=p(_.p);l[T]?l[T]=[Math.min(b,l[T][0]),Math.max(w,l[T][1])]:l[T]=[b,w]}if(_.p0=_.p+(v?y[a]:y),_.p1=_.p0+_.w,_.s0=_.b,_.s1=_.s0+_.s,g){var k=Math.min(_.s0,_.s1)||0,A=Math.max(_.s0,_.s1)||0,M=_[s];d[M]=M in d?Math.min(d[M],k):k,m[M]=M in m?Math.max(m[M],A):A}}}g&&function(t,e,r,n){for(var i=x(n),a=0;a<t.length;a++)for(var o=t[a],s=0;s<o.length;s++){var l=o[s],c=l[i];l._sMin=e[c],l._sMax=r[c]}}(t,d,m,e)}(o,e)}}function h(t,e,r,n){for(var i=0;i<r.length;i++){var a=r[i],o=new c([a],{posAxis:t,sepNegVal:!1,overlapNoMerge:!n.norm});f(t,o,n),n.norm?(y(o),v(e,o,n)):g(e,o)}}function f(t,e,r){for(var n=e.minDiff,i=e.traces,a=n*(1-r.gap),o=a*(1-(r.groupgap||0)),s=-o/2,l=0;l<i.length;l++){var c=i[l][0].t;c.barwidth=o,c.poffset=s,c.bargroupwidth=a,c.bardelta=n}e.binWidth=i[0][0].t.barwidth/100,p(e),d(t,e),m(t,e)}function p(t){var e,r,a=t.traces;for(e=0;e<a.length;e++){var o,s=a[e],l=s[0],c=l.trace,u=l.t,h=c._offset||c.offset,f=u.poffset;if(i(h)){for(o=Array.prototype.slice.call(h,0,s.length),r=0;r<o.length;r++)n(o[r])||(o[r]=f);for(r=o.length;r<s.length;r++)o.push(f);u.poffset=o}else void 0!==h&&(u.poffset=h);var p=c._width||c.width,d=u.barwidth;if(i(p)){var m=Array.prototype.slice.call(p,0,s.length);for(r=0;r<m.length;r++)n(m[r])||(m[r]=d);for(r=m.length;r<s.length;r++)m.push(d);if(u.barwidth=m,void 0===h){for(o=[],r=0;r<s.length;r++)o.push(f+(d-m[r])/2);u.poffset=o}}else void 0!==p&&(u.barwidth=p,void 0===h&&(u.poffset=f+(d-p)/2))}}function d(t,e){for(var r=e.traces,n=x(t),a=0;a<r.length;a++)for(var o=r[a],s=o[0].t,l=s.poffset,c=i(l),u=s.barwidth,h=i(u),f=0;f<o.length;f++){var p=o[f],d=p.w=h?u[f]:u;void 0===p.p&&(p.p=p[n],p[\"orig_\"+n]=p[n]);var m=(c?l[f]:l)+d/2;p[n]=p.p+m}}function m(t,e,r){var n=e.traces,a=e.minDiff/2;s.minDtick(t,e.minDiff,e.distinctPositions[0],r);for(var o=0;o<n.length;o++){var l,c,u,h,f=n[o],p=f[0],d=p.trace,m=[];for(h=0;h<f.length;h++)c=(l=f[h]).p-a,u=l.p+a,m.push(c,u);if(d.width||d.offset){var g=p.t,y=g.poffset,v=g.barwidth,x=i(y),_=i(v);for(h=0;h<f.length;h++){l=f[h];var b=x?y[h]:y,w=_?v[h]:v;u=(c=l.p+b)+w,m.push(c,u)}}d._extremes[t._id]=s.findExtremes(t,m,{padded:!1})}}function g(t,e){for(var r=e.traces,n=x(t),i=0;i<r.length;i++){for(var a=r[i],o=a[0].trace,l=\"scatter\"===o.type,c=\"v\"===o.orientation,u=[],h=!1,f=0;f<a.length;f++){var p=a[f],d=l?0:p.b,m=l?c?p.y:p.x:d+p.s;p[n]=m,u.push(m),p.hasB&&u.push(d),p.hasB&&p.b||(h=!0)}o._extremes[t._id]=s.findExtremes(t,u,{tozero:h,padded:!0})}}function y(t){for(var e=t.traces,r=0;r<e.length;r++)for(var n=e[r],i=0;i<n.length;i++){var o=n[i];o.s!==a&&t.put(o.p,o.b+o.s)}}function v(t,e,r){var i=e.traces,o=x(t),l=\"fraction\"===r.norm?1:100,c=l/1e9,u=t.l2c(t.c2l(0)),h=\"stack\"===r.mode?l:u;function f(e){return n(t.c2l(e))&&(e<u-c||e>h+c||!n(u))}for(var p=0;p<i.length;p++){for(var d=i[p],m=d[0].trace,g=[],y=!1,v=!1,_=0;_<d.length;_++){var b=d[_];if(b.s!==a){var w=Math.abs(l/e.get(b.p,b.s));b.b*=w,b.s*=w;var T=b.b,k=T+b.s;b[o]=k,g.push(k),v=v||f(k),b.hasB&&(g.push(T),v=v||f(T)),b.hasB&&b.b||(y=!0)}}m._extremes[t._id]=s.findExtremes(t,g,{tozero:y,padded:v})}}function x(t){return t._id.charAt(0)}t.exports={crossTraceCalc:function(t,e){for(var r=e.xaxis,n=e.yaxis,i=t._fullLayout,a=t._fullData,s=t.calcdata,l=[],c=[],h=0;h<a.length;h++){var f=a[h];if(!0===f.visible&&o.traceIs(f,\"bar\")&&f.xaxis===r._id&&f.yaxis===n._id&&(\"h\"===f.orientation?l.push(s[h]):c.push(s[h]),f._computePh))for(var p=t.calcdata[h],d=0;d<p.length;d++)\"function\"==typeof p[d].ph0&&(p[d].ph0=p[d].ph0()),\"function\"==typeof p[d].ph1&&(p[d].ph1=p[d].ph1())}var m={xCat:\"category\"===r.type||\"multicategory\"===r.type,yCat:\"category\"===n.type||\"multicategory\"===n.type,mode:i.barmode,norm:i.barnorm,gap:i.bargap,groupgap:i.bargroupgap};u(t,r,n,c,m),u(t,n,r,l,m)},setGroupPositions:u}},17550:function(t,e,r){\"use strict\";var n=r(10721),i=r(34809),a=r(78766),o=r(33626),s=r(99867),l=r(99669),c=r(59760),u=r(36301),h=r(81481),f=i.coerceFont;function p(t){if(n(t)){if((t=+t)>=0)return t}else if(\"string\"==typeof t&&\"%\"===(t=t.trim()).slice(-1)&&n(t.slice(0,-1))&&(t=+t.slice(0,-1))>=0)return t+\"%\"}function d(t,e,r,n,a,o){var s=!(!1===(o=o||{}).moduleHasSelected),l=!(!1===o.moduleHasUnselected),c=!(!1===o.moduleHasConstrain),u=!(!1===o.moduleHasCliponaxis),h=!(!1===o.moduleHasTextangle),p=!(!1===o.moduleHasInsideanchor),d=!!o.hasPathbar,m=Array.isArray(a)||\"auto\"===a,g=m||\"inside\"===a,y=m||\"outside\"===a;if(g||y){var v=f(n,\"textfont\",r.font),x=i.extendFlat({},v),_=!(t.textfont&&t.textfont.color);if(_&&delete x.color,f(n,\"insidetextfont\",x),d){var b=i.extendFlat({},v);_&&delete b.color,f(n,\"pathbar.textfont\",b)}y&&f(n,\"outsidetextfont\",v),s&&n(\"selected.textfont.color\"),l&&n(\"unselected.textfont.color\"),c&&n(\"constraintext\"),u&&n(\"cliponaxis\"),h&&n(\"textangle\"),n(\"texttemplate\")}g&&p&&n(\"insidetextanchor\")}t.exports={supplyDefaults:function(t,e,r,n){function u(r,n){return i.coerce(t,e,h,r,n)}if(s(t,e,n,u)){l(t,e,n,u),u(\"xhoverformat\"),u(\"yhoverformat\"),u(\"zorder\"),u(\"orientation\",e.x&&!e.y?\"h\":\"v\"),u(\"base\"),u(\"offset\"),u(\"width\"),u(\"text\"),u(\"hovertext\"),u(\"hovertemplate\");var f=u(\"textposition\");d(t,0,n,u,f,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),c(t,e,u,r,n);var p=(e.marker.line||{}).color,m=o.getComponentMethod(\"errorbars\",\"supplyDefaults\");m(t,e,p||a.defaultLine,{axis:\"y\"}),m(t,e,p||a.defaultLine,{axis:\"x\",inherit:\"y\"}),i.coerceSelectionMarkerOpacity(e,u)}else e.visible=!1},crossTraceDefaults:function(t,e){var r,n;function a(t,e){return i.coerce(n._input,n,h,t,e)}for(var o=0;o<t.length;o++)if(\"bar\"===(n=t[o]).type){r=n._input;var s=a(\"marker.cornerradius\",e.barcornerradius);n.marker&&(n.marker.cornerradius=p(s)),\"group\"===e.barmode&&u(r,n,e,a)}},handleText:d,validateCornerradius:p}},59541:function(t){\"use strict\";t.exports=function(t,e,r){return t.x=\"xVal\"in e?e.xVal:e.x,t.y=\"yVal\"in e?e.yVal:e.y,e.xa&&(t.xaxis=e.xa),e.ya&&(t.yaxis=e.ya),\"h\"===r.orientation?(t.label=t.y,t.value=t.x):(t.label=t.x,t.value=t.y),t}},42843:function(t,e,r){\"use strict\";var n=r(10721),i=r(65657),a=r(34809).isArrayOrTypedArray;e.coerceString=function(t,e,r){if(\"string\"==typeof e){if(e||!t.noBlank)return e}else if((\"number\"==typeof e||!0===e)&&!t.strict)return String(e);return void 0!==r?r:t.dflt},e.coerceNumber=function(t,e,r){if(n(e)){e=+e;var i=t.min,a=t.max;if(!(void 0!==i&&e<i||void 0!==a&&e>a))return e}return void 0!==r?r:t.dflt},e.coerceColor=function(t,e,r){return i(e).isValid()?e:void 0!==r?r:t.dflt},e.coerceEnumerated=function(t,e,r){return t.coerceNumber&&(e=+e),-1!==t.values.indexOf(e)?e:void 0!==r?r:t.dflt},e.getValue=function(t,e){var r;return a(t)?e<t.length&&(r=t[e]):r=t,r},e.getLineWidth=function(t,e){return 0<e.mlw?e.mlw:a(t.marker.line.width)?0:t.marker.line.width}},91664:function(t,e,r){\"use strict\";var n=r(32141),i=r(33626),a=r(78766),o=r(34809).fillText,s=r(42843).getLineWidth,l=r(29714).hoverLabelText,c=r(63821).BADNUM;function u(t,e,r,i,a){var s,u,h,f,p,d,m,g=t.cd,y=g[0].trace,v=g[0].t,x=\"closest\"===i,_=\"waterfall\"===y.type,b=t.maxHoverDistance,w=t.maxSpikeDistance;\"h\"===y.orientation?(s=r,u=e,h=\"y\",f=\"x\",p=O,d=P):(s=e,u=r,h=\"x\",f=\"y\",d=O,p=P);var T=y[h+\"period\"],k=x||T;function A(t){return S(t,-1)}function M(t){return S(t,1)}function S(t,e){var r=t.w;return t[h]+e*r/2}function E(t){return t[h+\"End\"]-t[h+\"Start\"]}var C=x?A:T?function(t){return t.p-E(t)/2}:function(t){return Math.min(A(t),t.p-v.bardelta/2)},L=x?M:T?function(t){return t.p+E(t)/2}:function(t){return Math.max(M(t),t.p+v.bardelta/2)};function I(t,e,r){return a.finiteRange&&(r=0),n.inbox(t-s,e-s,r+Math.min(1,Math.abs(e-t)/m)-1)}function P(t){return I(C(t),L(t),b)}function z(t){var e=t[f];if(_){var r=Math.abs(t.rawS)||0;u>0?e+=r:u<0&&(e-=r)}return e}function O(t){var e=u,r=t.b,i=z(t);return n.inbox(r-e,i-e,b+(i-e)/(i-r)-1)}var D=t[h+\"a\"],R=t[f+\"a\"];m=Math.abs(D.r2c(D.range[1])-D.r2c(D.range[0]));var F=n.getDistanceFunction(i,p,d,(function(t){return(p(t)+d(t))/2}));if(n.getClosest(g,F,t),!1!==t.index&&g[t.index].p!==c){k||(C=function(t){return Math.min(A(t),t.p-v.bargroupwidth/2)},L=function(t){return Math.max(M(t),t.p+v.bargroupwidth/2)});var B=g[t.index],N=y.base?B.b+B.s:B.s;t[f+\"0\"]=t[f+\"1\"]=R.c2p(B[f],!0),t[f+\"LabelVal\"]=N;var j=v.extents[v.extents.round(B.p)];t[h+\"0\"]=D.c2p(x?C(B):j[0],!0),t[h+\"1\"]=D.c2p(x?L(B):j[1],!0);var U=void 0!==B.orig_p;return t[h+\"LabelVal\"]=U?B.orig_p:B.p,t.labelLabel=l(D,t[h+\"LabelVal\"],y[h+\"hoverformat\"]),t.valueLabel=l(R,t[f+\"LabelVal\"],y[f+\"hoverformat\"]),t.baseLabel=l(R,B.b,y[f+\"hoverformat\"]),t.spikeDistance=(function(t){var e=u,r=t.b,i=z(t);return n.inbox(r-e,i-e,w+(i-e)/(i-r)-1)}(B)+function(t){return I(A(t),M(t),w)}(B))/2,t[h+\"Spike\"]=D.c2p(B.p,!0),o(B,y,t),t.hovertemplate=y.hovertemplate,t}}function h(t,e){var r=e.mcc||t.marker.color,n=e.mlcc||t.marker.line.color,i=s(t,e);return a.opacity(r)?r:a.opacity(n)&&i?n:void 0}t.exports={hoverPoints:function(t,e,r,n,a){var o=u(t,e,r,n,a);if(o){var s=o.cd,l=s[0].trace,c=s[o.index];return o.color=h(l,c),i.getComponentMethod(\"errorbars\",\"hoverInfo\")(c,l,o),[o]}},hoverOnBars:u,getTraceColor:h}},58218:function(t,e,r){\"use strict\";t.exports={attributes:r(81481),layoutAttributes:r(25412),supplyDefaults:r(17550).supplyDefaults,crossTraceDefaults:r(17550).crossTraceDefaults,supplyLayoutDefaults:r(78931),calc:r(67565),crossTraceCalc:r(24782).crossTraceCalc,colorbar:r(21146),arraysToCalcdata:r(35374),plot:r(32995).plot,style:r(6851).style,styleOnSelect:r(6851).styleOnSelect,hoverPoints:r(91664).hoverPoints,eventData:r(59541),selectPoints:r(88384),moduleType:\"trace\",name:\"bar\",basePlotModule:r(37703),categories:[\"bar-like\",\"cartesian\",\"svg\",\"bar\",\"oriented\",\"errorBarsOK\",\"showLegend\",\"zoomScale\"],animatable:!0,meta:{}}},25412:function(t){\"use strict\";t.exports={barmode:{valType:\"enumerated\",values:[\"stack\",\"group\",\"overlay\",\"relative\"],dflt:\"group\",editType:\"calc\"},barnorm:{valType:\"enumerated\",values:[\"\",\"fraction\",\"percent\"],dflt:\"\",editType:\"calc\"},bargap:{valType:\"number\",min:0,max:1,editType:\"calc\"},bargroupgap:{valType:\"number\",min:0,max:1,dflt:0,editType:\"calc\"},barcornerradius:{valType:\"any\",editType:\"calc\"}}},78931:function(t,e,r){\"use strict\";var n=r(33626),i=r(29714),a=r(34809),o=r(25412),s=r(17550).validateCornerradius;t.exports=function(t,e,r){function l(r,n){return a.coerce(t,e,o,r,n)}for(var c=!1,u=!1,h=!1,f={},p=l(\"barmode\"),d=0;d<r.length;d++){var m=r[d];if(n.traceIs(m,\"bar\")&&m.visible){if(c=!0,\"group\"===p){var g=m.xaxis+m.yaxis;f[g]&&(h=!0),f[g]=!0}m.visible&&\"histogram\"===m.type&&\"category\"!==i.getFromId({_fullLayout:e},m[\"v\"===m.orientation?\"xaxis\":\"yaxis\"]).type&&(u=!0)}}if(c){\"overlay\"!==p&&l(\"barnorm\"),l(\"bargap\",u&&!h?0:.2),l(\"bargroupgap\");var y=l(\"barcornerradius\");e.barcornerradius=s(y)}else delete e.barmode}},32995:function(t,e,r){\"use strict\";var n=r(45568),i=r(10721),a=r(34809),o=r(30635),s=r(78766),l=r(62203),c=r(33626),u=r(29714).tickText,h=r(84102),f=h.recordMinTextSize,p=h.clearMinTextSize,d=r(6851),m=r(42843),g=r(56155),y=r(81481),v=y.text,x=y.textposition,_=r(36040).appendArrayPointValue,b=g.TEXTPAD;function w(t){return t.id}function T(t){if(t.ids)return w}function k(t){return(t>0)-(t<0)}function A(t,e){return t<e?1:-1}function M(t,e,r,n){var i;return!e.uniformtext.mode&&S(r)?(n&&(i=n()),t.transition().duration(r.duration).ease(r.easing).each(\"end\",(function(){i&&i()})).each(\"interrupt\",(function(){i&&i()}))):t}function S(t){return t&&t.duration>0}function E(t,e,r,n,i){return!(t<0||e<0)&&(r<=t&&n<=e||r<=e&&n<=t||(i?t>=r*(e/n):e>=n*(t/r)))}function C(t){return\"auto\"===t?0:t}function L(t,e){var r=Math.PI/180*e,n=Math.abs(Math.sin(r)),i=Math.abs(Math.cos(r));return{x:t.width*i+t.height*n,y:t.width*n+t.height*i}}function I(t,e,r,n,i,a){var o=!!a.isHorizontal,s=!!a.constrained,l=a.angle||0,c=a.anchor,u=\"end\"===c,h=\"start\"===c,f=((a.leftToRight||0)+1)/2,p=1-f,d=a.hasB,m=a.r,g=a.overhead,y=i.width,v=i.height,x=Math.abs(e-t),_=Math.abs(n-r),w=x>2*b&&_>2*b?b:0;x-=2*w,_-=2*w;var T=C(l);\"auto\"!==l||y<=x&&v<=_||!(y>x||v>_)||(y>_||v>x)&&y<v==x<_||(T+=90);var k,M,S=L(i,T);if(m&&m-g>b){var E=function(t,e,r,n,i,a,o,s,l){var c,u,h,f,p=Math.max(0,Math.abs(e-t)-2*b),d=Math.max(0,Math.abs(n-r)-2*b),m=a-b,g=o?m-Math.sqrt(m*m-(m-o)*(m-o)):m,y=l?2*m:s?m-o:2*g,v=l?2*m:s?2*g:m-o;return i.y/i.x>=d/(p-y)?f=d/i.y:i.y/i.x<=(d-v)/p?f=p/i.x:!l&&s?(c=i.x*i.x+i.y*i.y/4,h=(p-m)*(p-m)+(d/2-m)*(d/2-m)-m*m,f=(-(u=-2*i.x*(p-m)-i.y*(d/2-m))+Math.sqrt(u*u-4*c*h))/(2*c)):l?(c=(i.x*i.x+i.y*i.y)/4,h=(p/2-m)*(p/2-m)+(d/2-m)*(d/2-m)-m*m,f=(-(u=-i.x*(p/2-m)-i.y*(d/2-m))+Math.sqrt(u*u-4*c*h))/(2*c)):(c=i.x*i.x/4+i.y*i.y,h=(p/2-m)*(p/2-m)+(d-m)*(d-m)-m*m,f=(-(u=-i.x*(p/2-m)-2*i.y*(d-m))+Math.sqrt(u*u-4*c*h))/(2*c)),{scale:f=Math.min(1,f),pad:s?Math.max(0,m-Math.sqrt(Math.max(0,m*m-(m-(d-i.y*f)/2)*(m-(d-i.y*f)/2)))-o):Math.max(0,m-Math.sqrt(Math.max(0,m*m-(m-(p-i.x*f)/2)*(m-(p-i.x*f)/2)))-o)}}(t,e,r,n,S,m,g,o,d);k=E.scale,M=E.pad}else k=1,s&&(k=Math.min(1,x/S.x,_/S.y)),M=0;var I=i.left*p+i.right*f,P=(i.top+i.bottom)/2,z=(t+b)*p+(e-b)*f,O=(r+n)/2,D=0,R=0;if(h||u){var F=(o?S.x:S.y)/2;m&&(u||d)&&(w+=M);var B=o?A(t,e):A(r,n);o?h?(z=t+B*w,D=-B*F):(z=e-B*w,D=B*F):h?(O=r+B*w,R=-B*F):(O=n-B*w,R=B*F)}return{textX:I,textY:P,targetX:z,targetY:O,anchorX:D,anchorY:R,scale:k,rotate:T}}t.exports={plot:function(t,e,r,h,g,y){var w=e.xaxis,P=e.yaxis,z=t._fullLayout,O=t._context.staticPlot;g||(g={mode:z.barmode,norm:z.barmode,gap:z.bargap,groupgap:z.bargroupgap},p(\"bar\",z));var D=a.makeTraceGroups(h,r,\"trace bars\").each((function(r){var c=n.select(this),h=r[0].trace,p=r[0].t,D=\"waterfall\"===h.type,R=\"funnel\"===h.type,F=\"histogram\"===h.type,B=\"bar\"===h.type,N=B||R,j=0;D&&h.connector.visible&&\"between\"===h.connector.mode&&(j=h.connector.line.width/2);var U=\"h\"===h.orientation,V=S(g),q=a.ensureSingle(c,\"g\",\"points\"),H=T(h),G=q.selectAll(\"g.point\").data(a.identity,H);G.enter().append(\"g\").classed(\"point\",!0),G.exit().remove(),G.each((function(c,T){var S,D,R=n.select(this),q=function(t,e,r,n){var i=[],a=[],o=n?e:r,s=n?r:e;return i[0]=o.c2p(t.s0,!0),a[0]=s.c2p(t.p0,!0),i[1]=o.c2p(t.s1,!0),a[1]=s.c2p(t.p1,!0),n?[i,a]:[a,i]}(c,w,P,U),H=q[0][0],G=q[0][1],Z=q[1][0],W=q[1][1],Y=0==(U?G-H:W-Z);if(Y&&N&&m.getLineWidth(h,c)&&(Y=!1),Y||(Y=!(i(H)&&i(G)&&i(Z)&&i(W))),c.isBlank=Y,Y&&(U?G=H:W=Z),j&&!Y&&(U?(H-=A(H,G)*j,G+=A(H,G)*j):(Z-=A(Z,W)*j,W+=A(Z,W)*j)),\"waterfall\"===h.type){if(!Y){var X=h[c.dir].marker;S=X.line.width,D=X.color}}else S=m.getLineWidth(h,c),D=c.mc||h.marker.color;function $(t){var e=n.round(S/2%1,2);return 0===g.gap&&0===g.groupgap?n.round(Math.round(t)-e,2):t}var J=s.opacity(D)<1||S>.01?$:function(t,e,r){return r&&t===e?t:Math.abs(t-e)>=2?$(t):t>e?Math.ceil(t):Math.floor(t)};t._context.staticPlot||(H=J(H,G,U),G=J(G,H,U),Z=J(Z,W,!U),W=J(W,Z,!U));var K,Q=U?w.c2p:P.c2p;K=c.s0>0?c._sMax:c.s0<0?c._sMin:c.s1>0?c._sMax:c._sMin;var tt,et,rt=B||F?function(t,e){if(!t)return 0;var r,n=U?Math.abs(W-Z):Math.abs(G-H),i=U?Math.abs(G-H):Math.abs(W-Z),a=J(Math.abs(Q(K,!0)-Q(0,!0))),o=c.hasB?Math.min(n/2,i/2):Math.min(n/2,a);return r=\"%\"===e?n*(Math.min(50,t)/100):t,J(Math.max(Math.min(r,o),0))}(p.cornerradiusvalue,p.cornerradiusform):0,nt=\"M\"+H+\",\"+Z+\"V\"+W+\"H\"+G+\"V\"+Z+\"Z\",it=0;if(rt&&c.s){var at=0===k(c.s0)||k(c.s)===k(c.s0)?c.s1:c.s0;if((it=J(c.hasB?0:Math.abs(Q(K,!0)-Q(at,!0))))<rt){var ot=A(H,G),st=A(Z,W),lt=ot===-st?1:0;if(U)if(c.hasB)tt=\"M\"+(H+rt*ot)+\",\"+Z+\"A \"+rt+\",\"+rt+\" 0 0 \"+lt+\" \"+H+\",\"+(Z+rt*st)+\"V\"+(W-rt*st)+\"A \"+rt+\",\"+rt+\" 0 0 \"+lt+\" \"+(H+rt*ot)+\",\"+W+\"H\"+(G-rt*ot)+\"A \"+rt+\",\"+rt+\" 0 0 \"+lt+\" \"+G+\",\"+(W-rt*st)+\"V\"+(Z+rt*st)+\"A \"+rt+\",\"+rt+\" 0 0 \"+lt+\" \"+(G-rt*ot)+\",\"+Z+\"Z\";else{var ct=(et=Math.abs(G-H)+it)<rt?rt-Math.sqrt(et*(2*rt-et)):0,ut=it>0?Math.sqrt(it*(2*rt-it)):0,ht=ot>0?Math.max:Math.min;tt=\"M\"+H+\",\"+Z+\"V\"+(W-ct*st)+\"H\"+ht(G-(rt-it)*ot,H)+\"A \"+rt+\",\"+rt+\" 0 0 \"+lt+\" \"+G+\",\"+(W-rt*st-ut)+\"V\"+(Z+rt*st+ut)+\"A \"+rt+\",\"+rt+\" 0 0 \"+lt+\" \"+ht(G-(rt-it)*ot,H)+\",\"+(Z+ct*st)+\"Z\"}else if(c.hasB)tt=\"M\"+(H+rt*ot)+\",\"+Z+\"A \"+rt+\",\"+rt+\" 0 0 \"+lt+\" \"+H+\",\"+(Z+rt*st)+\"V\"+(W-rt*st)+\"A \"+rt+\",\"+rt+\" 0 0 \"+lt+\" \"+(H+rt*ot)+\",\"+W+\"H\"+(G-rt*ot)+\"A \"+rt+\",\"+rt+\" 0 0 \"+lt+\" \"+G+\",\"+(W-rt*st)+\"V\"+(Z+rt*st)+\"A \"+rt+\",\"+rt+\" 0 0 \"+lt+\" \"+(G-rt*ot)+\",\"+Z+\"Z\";else{var ft=(et=Math.abs(W-Z)+it)<rt?rt-Math.sqrt(et*(2*rt-et)):0,pt=it>0?Math.sqrt(it*(2*rt-it)):0,dt=st>0?Math.max:Math.min;tt=\"M\"+(H+ft*ot)+\",\"+Z+\"V\"+dt(W-(rt-it)*st,Z)+\"A \"+rt+\",\"+rt+\" 0 0 \"+lt+\" \"+(H+rt*ot-pt)+\",\"+W+\"H\"+(G-rt*ot+pt)+\"A \"+rt+\",\"+rt+\" 0 0 \"+lt+\" \"+(G-ft*ot)+\",\"+dt(W-(rt-it)*st,Z)+\"V\"+Z+\"Z\"}}else tt=nt}else tt=nt;var mt=M(a.ensureSingle(R,\"path\"),z,g,y);if(mt.style(\"vector-effect\",O?\"none\":\"non-scaling-stroke\").attr(\"d\",isNaN((G-H)*(W-Z))||Y&&t._context.staticPlot?\"M0,0Z\":tt).call(l.setClipUrl,e.layerClipId,t),!z.uniformtext.mode&&V){var gt=l.makePointStyleFns(h);l.singlePointStyle(c,mt,h,gt,t)}!function(t,e,r,n,i,s,c,h,p,g,y,w,T){var k,S=e.xaxis,P=e.yaxis,z=t._fullLayout;function O(e,r,n){return a.ensureSingle(e,\"text\").text(r).attr({class:\"bartext bartext-\"+k,\"text-anchor\":\"middle\",\"data-notex\":1}).call(l.font,n).call(o.convertToTspans,t)}var D=n[0].trace,R=\"h\"===D.orientation,F=function(t,e,r,n,i){var o,s=e[0].trace;return o=s.texttemplate?function(t,e,r,n,i){var o=e[0].trace,s=a.castOption(o,r,\"texttemplate\");if(!s)return\"\";var l,c,h,f,p=\"histogram\"===o.type,d=\"waterfall\"===o.type,m=\"funnel\"===o.type,g=\"h\"===o.orientation;function y(t){return u(f,f.c2l(t),!0).text}g?(l=\"y\",c=i,h=\"x\",f=n):(l=\"x\",c=n,h=\"y\",f=i);var v,x=e[r],b={};b.label=x.p,b.labelLabel=b[l+\"Label\"]=(v=x.p,u(c,c.c2l(v),!0).text);var w=a.castOption(o,x.i,\"text\");(0===w||w)&&(b.text=w),b.value=x.s,b.valueLabel=b[h+\"Label\"]=y(x.s);var T={};_(T,o,x.i),(p||void 0===T.x)&&(T.x=g?b.value:b.label),(p||void 0===T.y)&&(T.y=g?b.label:b.value),(p||void 0===T.xLabel)&&(T.xLabel=g?b.valueLabel:b.labelLabel),(p||void 0===T.yLabel)&&(T.yLabel=g?b.labelLabel:b.valueLabel),d&&(b.delta=+x.rawS||x.s,b.deltaLabel=y(b.delta),b.final=x.v,b.finalLabel=y(b.final),b.initial=b.final-b.delta,b.initialLabel=y(b.initial)),m&&(b.value=x.s,b.valueLabel=y(b.value),b.percentInitial=x.begR,b.percentInitialLabel=a.formatPercent(x.begR),b.percentPrevious=x.difR,b.percentPreviousLabel=a.formatPercent(x.difR),b.percentTotal=x.sumR,b.percenTotalLabel=a.formatPercent(x.sumR));var k=a.castOption(o,x.i,\"customdata\");return k&&(b.customdata=k),a.texttemplateString(s,b,t._d3locale,T,b,o._meta||{})}(t,e,r,n,i):s.textinfo?function(t,e,r,n){var i=t[0].trace,o=\"h\"===i.orientation,s=\"waterfall\"===i.type,l=\"funnel\"===i.type;function c(t){return u(o?r:n,+t,!0).text}var h,f,p=i.textinfo,d=t[e],m=p.split(\"+\"),g=[],y=function(t){return-1!==m.indexOf(t)};if(y(\"label\")&&g.push((f=t[e].p,u(o?n:r,f,!0).text)),y(\"text\")&&(0===(h=a.castOption(i,d.i,\"text\"))||h)&&g.push(h),s){var v=+d.rawS||d.s,x=d.v,_=x-v;y(\"initial\")&&g.push(c(_)),y(\"delta\")&&g.push(c(v)),y(\"final\")&&g.push(c(x))}if(l){y(\"value\")&&g.push(c(d.s));var b=0;y(\"percent initial\")&&b++,y(\"percent previous\")&&b++,y(\"percent total\")&&b++;var w=b>1;y(\"percent initial\")&&(h=a.formatPercent(d.begR),w&&(h+=\" of initial\"),g.push(h)),y(\"percent previous\")&&(h=a.formatPercent(d.difR),w&&(h+=\" of previous\"),g.push(h)),y(\"percent total\")&&(h=a.formatPercent(d.sumR),w&&(h+=\" of total\"),g.push(h))}return g.join(\"<br>\")}(e,r,n,i):m.getValue(s.text,r),m.coerceString(v,o)}(z,n,i,S,P);k=function(t,e){var r=m.getValue(t.textposition,e);return m.coerceEnumerated(x,r)}(D,i);var B=\"stack\"===w.mode||\"relative\"===w.mode,N=n[i],j=!B||N._outmost,U=N.hasB,V=g&&g-y>b;if(F&&\"none\"!==k&&(!N.isBlank&&s!==c&&h!==p||\"auto\"!==k&&\"inside\"!==k)){var q=z.font,H=d.getBarColor(n[i],D),G=d.getInsideTextFont(D,i,q,H),Z=d.getOutsideTextFont(D,i,q),W=D.insidetextanchor||\"end\",Y=r.datum();R?\"log\"===S.type&&Y.s0<=0&&(s=S.range[0]<S.range[1]?0:S._length):\"log\"===P.type&&Y.s0<=0&&(h=P.range[0]<P.range[1]?P._length:0);var X,$,J,K,Q,tt=Math.abs(c-s),et=Math.abs(p-h),rt=tt-2*b,nt=et-2*b;if(\"outside\"===k&&(j||N.hasB||(k=\"inside\")),\"auto\"===k)if(j){k=\"inside\",X=O(r,F,Q=a.ensureUniformFontSize(t,G)),J=($=l.bBox(X.node())).width,K=$.height;var it,at=J>0&&K>0;it=V?U?E(rt-2*g,nt,J,K,R)||E(rt,nt-2*g,J,K,R):R?E(rt-(g-y),nt,J,K,R)||E(rt,nt-2*(g-y),J,K,R):E(rt,nt-(g-y),J,K,R)||E(rt-2*(g-y),nt,J,K,R):E(rt,nt,J,K,R),at&&it?k=\"inside\":(k=\"outside\",X.remove(),X=null)}else k=\"inside\";if(!X){var ot=(X=O(r,F,Q=a.ensureUniformFontSize(t,\"outside\"===k?Z:G))).attr(\"transform\");if(X.attr(\"transform\",\"\"),J=($=l.bBox(X.node())).width,K=$.height,X.attr(\"transform\",ot),J<=0||K<=0)return void X.remove()}var st,lt=D.textangle;st=\"outside\"===k?function(t,e,r,n,i,a){var o,s=!!a.isHorizontal,l=!!a.constrained,c=a.angle||0,u=i.width,h=i.height,f=Math.abs(e-t),p=Math.abs(n-r);o=s?p>2*b?b:0:f>2*b?b:0;var d=1;l&&(d=s?Math.min(1,p/h):Math.min(1,f/u));var m=C(c),g=L(i,m),y=(s?g.x:g.y)/2,v=(i.left+i.right)/2,x=(i.top+i.bottom)/2,_=(t+e)/2,w=(r+n)/2,T=0,k=0,M=s?A(e,t):A(r,n);return s?(_=e-M*o,T=M*y):(w=n+M*o,k=-M*y),{textX:v,textY:x,targetX:_,targetY:w,anchorX:T,anchorY:k,scale:d,rotate:m}}(s,c,h,p,$,{isHorizontal:R,constrained:\"both\"===D.constraintext||\"outside\"===D.constraintext,angle:lt}):I(s,c,h,p,$,{isHorizontal:R,constrained:\"both\"===D.constraintext||\"inside\"===D.constraintext,angle:lt,anchor:W,hasB:U,r:g,overhead:y}),st.fontSize=Q.size,f(\"histogram\"===D.type?\"bar\":D.type,st,z),N.transform=st;var ct=M(X,z,w,T);a.setTransormAndDisplay(ct,st)}else r.select(\"text\").remove()}(t,e,R,r,T,H,G,Z,W,rt,it,g,y),e.layerClipId&&l.hideOutsideRangePoint(c,R.select(\"text\"),w,P,h.xcalendar,h.ycalendar)}));var Z=!1===h.cliponaxis;l.setClipUrl(c,Z?null:e.layerClipId,t)}));c.getComponentMethod(\"errorbars\",\"plot\")(t,D,e,g)},toMoveInsideBar:I}},88384:function(t){\"use strict\";function e(t,e,r,n,i){var a=e.c2p(n?t.s0:t.p0,!0),o=e.c2p(n?t.s1:t.p1,!0),s=r.c2p(n?t.p0:t.s0,!0),l=r.c2p(n?t.p1:t.s1,!0);return i?[(a+o)/2,(s+l)/2]:n?[o,(s+l)/2]:[(a+o)/2,l]}t.exports=function(t,r){var n,i=t.cd,a=t.xaxis,o=t.yaxis,s=i[0].trace,l=\"funnel\"===s.type,c=\"h\"===s.orientation,u=[];if(!1===r)for(n=0;n<i.length;n++)i[n].selected=0;else for(n=0;n<i.length;n++){var h=i[n],f=\"ct\"in h?h.ct:e(h,a,o,c,l);r.contains(f,!1,n,t)?(u.push({pointNumber:n,x:a.c2d(h.x),y:o.c2d(h.y)}),h.selected=1):h.selected=0}return u}},2880:function(t,e,r){\"use strict\";t.exports=i;var n=r(34809).distinctVals;function i(t,e){this.traces=t,this.sepNegVal=e.sepNegVal,this.overlapNoMerge=e.overlapNoMerge;for(var r=1/0,i=e.posAxis._id.charAt(0),a=[],o=0;o<t.length;o++){for(var s=t[o],l=0;l<s.length;l++){var c=s[l],u=c.p;void 0===u&&(u=c[i]),void 0!==u&&a.push(u)}s[0]&&s[0].width1&&(r=Math.min(s[0].width1,r))}this.positions=a;var h=n(a);this.distinctPositions=h.vals,1===h.vals.length&&r!==1/0?this.minDiff=r:this.minDiff=Math.min(h.minDiff,r);var f=(e.posAxis||{}).type;\"category\"!==f&&\"multicategory\"!==f||(this.minDiff=1),this.binWidth=this.minDiff,this.bins={}}i.prototype.put=function(t,e){var r=this.getLabel(t,e),n=this.bins[r]||0;return this.bins[r]=n+e,n},i.prototype.get=function(t,e){var r=this.getLabel(t,e);return this.bins[r]||0},i.prototype.getLabel=function(t,e){return(e<0&&this.sepNegVal?\"v\":\"^\")+(this.overlapNoMerge?t:Math.round(t/this.binWidth))}},6851:function(t,e,r){\"use strict\";var n=r(45568),i=r(78766),a=r(62203),o=r(34809),s=r(33626),l=r(84102).resizeText,c=r(81481),u=c.textfont,h=c.insidetextfont,f=c.outsidetextfont,p=r(42843);function d(t,e,r){a.pointStyle(t.selectAll(\"path\"),e,r),m(t,e,r)}function m(t,e,r){t.selectAll(\"text\").each((function(t){var i=n.select(this),s=o.ensureUniformFontSize(r,g(i,t,e,r));a.font(i,s)}))}function g(t,e,r,n){var i=n._fullLayout.font,a=r.textfont;if(t.classed(\"bartext-inside\")){var o=b(e,r);a=v(r,e.i,i,o)}else t.classed(\"bartext-outside\")&&(a=x(r,e.i,i));return a}function y(t,e,r){return _(u,t.textfont,e,r)}function v(t,e,r,n){var a=y(t,e,r);return(void 0===t._input.textfont||void 0===t._input.textfont.color||Array.isArray(t.textfont.color)&&void 0===t.textfont.color[e])&&(a={color:i.contrast(n),family:a.family,size:a.size,weight:a.weight,style:a.style,variant:a.variant,textcase:a.textcase,lineposition:a.lineposition,shadow:a.shadow}),_(h,t.insidetextfont,e,a)}function x(t,e,r){var n=y(t,e,r);return _(f,t.outsidetextfont,e,n)}function _(t,e,r,n){e=e||{};var i=p.getValue(e.family,r),a=p.getValue(e.size,r),o=p.getValue(e.color,r),s=p.getValue(e.weight,r),l=p.getValue(e.style,r),c=p.getValue(e.variant,r),u=p.getValue(e.textcase,r),h=p.getValue(e.lineposition,r),f=p.getValue(e.shadow,r);return{family:p.coerceString(t.family,i,n.family),size:p.coerceNumber(t.size,a,n.size),color:p.coerceColor(t.color,o,n.color),weight:p.coerceString(t.weight,s,n.weight),style:p.coerceString(t.style,l,n.style),variant:p.coerceString(t.variant,c,n.variant),textcase:p.coerceString(t.variant,u,n.textcase),lineposition:p.coerceString(t.variant,h,n.lineposition),shadow:p.coerceString(t.variant,f,n.shadow)}}function b(t,e){return\"waterfall\"===e.type?e[t.dir].marker.color:t.mcc||t.mc||e.marker.color}t.exports={style:function(t){var e=n.select(t).selectAll('g[class^=\"barlayer\"]').selectAll(\"g.trace\");l(t,e,\"bar\");var r=e.size(),i=t._fullLayout;e.style(\"opacity\",(function(t){return t[0].trace.opacity})).each((function(t){(\"stack\"===i.barmode&&r>1||0===i.bargap&&0===i.bargroupgap&&!t[0].trace.marker.line.width)&&n.select(this).attr(\"shape-rendering\",\"crispEdges\")})),e.selectAll(\"g.points\").each((function(e){d(n.select(this),e[0].trace,t)})),s.getComponentMethod(\"errorbars\",\"style\")(e)},styleTextPoints:m,styleOnSelect:function(t,e,r){var i=e[0].trace;i.selectedpoints?function(t,e,r){a.selectedPointStyle(t.selectAll(\"path\"),e),function(t,e,r){t.each((function(t){var i,s=n.select(this);if(t.selected){i=o.ensureUniformFontSize(r,g(s,t,e,r));var l=e.selected.textfont&&e.selected.textfont.color;l&&(i.color=l),a.font(s,i)}else a.selectedTextStyle(s,e)}))}(t.selectAll(\"text\"),e,r)}(r,i,t):(d(r,i,t),s.getComponentMethod(\"errorbars\",\"style\")(r))},getInsideTextFont:v,getOutsideTextFont:x,getBarColor:b,resizeText:l}},59760:function(t,e,r){\"use strict\";var n=r(78766),i=r(65477).hasColorscale,a=r(39356),o=r(34809).coercePattern;t.exports=function(t,e,r,s,l){var c=r(\"marker.color\",s),u=i(t,\"marker\");u&&a(t,e,l,r,{prefix:\"marker.\",cLetter:\"c\"}),r(\"marker.line.color\",n.defaultLine),i(t,\"marker.line\")&&a(t,e,l,r,{prefix:\"marker.line.\",cLetter:\"c\"}),r(\"marker.line.width\"),r(\"marker.opacity\"),o(r,\"marker.pattern\",c,u),r(\"selected.marker.color\"),r(\"unselected.marker.color\")}},84102:function(t,e,r){\"use strict\";var n=r(45568),i=r(34809);function a(t){return\"_\"+t+\"Text_minsize\"}t.exports={recordMinTextSize:function(t,e,r){if(r.uniformtext.mode){var n=a(t),i=r.uniformtext.minsize,o=e.scale*e.fontSize;e.hide=o<i,r[n]=r[n]||1/0,e.hide||(r[n]=Math.min(r[n],Math.max(o,i)))}},clearMinTextSize:function(t,e){e[a(t)]=void 0},resizeText:function(t,e,r){var a=t._fullLayout,o=a[\"_\"+r+\"Text_minsize\"];if(o){var s,l=\"hide\"===a.uniformtext.mode;switch(r){case\"funnelarea\":case\"pie\":case\"sunburst\":s=\"g.slice\";break;case\"treemap\":case\"icicle\":s=\"g.slice, g.pathbar\";break;default:s=\"g.points > g.point\"}e.selectAll(s).each((function(t){var e=t.transform;if(e){e.scale=l&&e.hide?0:o/e.fontSize;var r=n.select(this).select(\"text\");i.setTransormAndDisplay(r,e)}}))}}}},32225:function(t,e,r){\"use strict\";var n,i=r(3208).rb,a=r(93049).extendFlat,o=r(8738),s=r(81481);t.exports={r:o.r,theta:o.theta,r0:o.r0,dr:o.dr,theta0:o.theta0,dtheta:o.dtheta,thetaunit:o.thetaunit,base:a({},s.base,{}),offset:a({},s.offset,{}),width:a({},s.width,{}),text:a({},s.text,{}),hovertext:a({},s.hovertext,{}),marker:(n=a({},s.marker),delete n.cornerradius,n),hoverinfo:o.hoverinfo,hovertemplate:i(),selected:s.selected,unselected:s.unselected}},27941:function(t,e,r){\"use strict\";var n=r(65477).hasColorscale,i=r(28379),a=r(34809).isArrayOrTypedArray,o=r(35374),s=r(24782).setGroupPositions,l=r(48861),c=r(33626).traceIs,u=r(34809).extendFlat;t.exports={calc:function(t,e){for(var r=t._fullLayout,s=e.subplot,c=r[s].radialaxis,u=r[s].angularaxis,h=c.makeCalcdata(e,\"r\"),f=u.makeCalcdata(e,\"theta\"),p=e._length,d=new Array(p),m=h,g=f,y=0;y<p;y++)d[y]={p:g[y],s:m[y]};function v(t){var r=e[t];void 0!==r&&(e[\"_\"+t]=a(r)?u.makeCalcdata(e,t):u.d2c(r,e.thetaunit))}return\"linear\"===u.type&&(v(\"width\"),v(\"offset\")),n(e,\"marker\")&&i(t,e,{vals:e.marker.color,containerStr:\"marker\",cLetter:\"c\"}),n(e,\"marker.line\")&&i(t,e,{vals:e.marker.line.color,containerStr:\"marker.line\",cLetter:\"c\"}),o(d,e),l(d,e),d},crossTraceCalc:function(t,e,r){for(var n=t.calcdata,i=[],a=0;a<n.length;a++){var o=n[a],l=o[0].trace;!0===l.visible&&c(l,\"bar\")&&l.subplot===r&&i.push(o)}var h=u({},e.radialaxis,{_id:\"x\"}),f=e.angularaxis;s(t,f,h,i,{mode:e.barmode,norm:e.barnorm,gap:e.bargap,groupgap:e.bargroupgap})}}},77318:function(t,e,r){\"use strict\";var n=r(34809),i=r(73749).handleRThetaDefaults,a=r(59760),o=r(32225);t.exports=function(t,e,r,s){function l(r,i){return n.coerce(t,e,o,r,i)}i(t,e,s,l)?(l(\"thetaunit\"),l(\"base\"),l(\"offset\"),l(\"width\"),l(\"text\"),l(\"hovertext\"),l(\"hovertemplate\"),a(t,e,l,r,s),n.coerceSelectionMarkerOpacity(e,l)):e.visible=!1}},83080:function(t,e,r){\"use strict\";var n=r(32141),i=r(34809),a=r(91664).getTraceColor,o=i.fillText,s=r(29709).makeHoverPointText,l=r(95928).isPtInsidePolygon;t.exports=function(t,e,r){var c=t.cd,u=c[0].trace,h=t.subplot,f=h.radialAxis,p=h.angularAxis,d=h.vangles,m=d?l:i.isPtInsideSector,g=t.maxHoverDistance,y=p._period||2*Math.PI,v=Math.abs(f.g2p(Math.sqrt(e*e+r*r))),x=Math.atan2(r,e);if(f.range[0]>f.range[1]&&(x+=Math.PI),n.getClosest(c,(function(t){return m(v,x,[t.rp0,t.rp1],[t.thetag0,t.thetag1],d)?g+Math.min(1,Math.abs(t.thetag1-t.thetag0)/y)-1+(t.rp1-v)/(t.rp1-t.rp0)-1:1/0}),t),!1!==t.index){var _=c[t.index];t.x0=t.x1=_.ct[0],t.y0=t.y1=_.ct[1];var b=i.extendFlat({},_,{r:_.s,theta:_.p});return o(_,u,t),s(b,u,h,t),t.hovertemplate=u.hovertemplate,t.color=a(u,_),t.xLabelVal=t.yLabelVal=void 0,_.s<0&&(t.idealAlign=\"left\"),[t]}}},89362:function(t,e,r){\"use strict\";t.exports={moduleType:\"trace\",name:\"barpolar\",basePlotModule:r(31645),categories:[\"polar\",\"bar\",\"showLegend\"],attributes:r(32225),layoutAttributes:r(42956),supplyDefaults:r(77318),supplyLayoutDefaults:r(60507),calc:r(27941).calc,crossTraceCalc:r(27941).crossTraceCalc,plot:r(11627),colorbar:r(21146),formatLabels:r(33368),style:r(6851).style,styleOnSelect:r(6851).styleOnSelect,hoverPoints:r(83080),selectPoints:r(88384),meta:{}}},42956:function(t){\"use strict\";t.exports={barmode:{valType:\"enumerated\",values:[\"stack\",\"overlay\"],dflt:\"stack\",editType:\"calc\"},bargap:{valType:\"number\",dflt:.1,min:0,max:1,editType:\"calc\"}}},60507:function(t,e,r){\"use strict\";var n=r(34809),i=r(42956);t.exports=function(t,e,r){var a,o={};function s(r,o){return n.coerce(t[a]||{},e[a],i,r,o)}for(var l=0;l<r.length;l++){var c=r[l];\"barpolar\"===c.type&&!0===c.visible&&(o[a=c.subplot]||(s(\"barmode\"),s(\"bargap\"),o[a]=1))}}},11627:function(t,e,r){\"use strict\";var n=r(45568),i=r(10721),a=r(34809),o=r(62203),s=r(95928);t.exports=function(t,e,r){var l=t._context.staticPlot,c=e.xaxis,u=e.yaxis,h=e.radialAxis,f=e.angularAxis,p=function(t){var e=t.cxx,r=t.cyy;return t.vangles?function(n,i,o,l){var c,u;a.angleDelta(o,l)>0?(c=o,u=l):(c=l,u=o);var h=[s.findEnclosingVertexAngles(c,t.vangles)[0],(c+u)/2,s.findEnclosingVertexAngles(u,t.vangles)[1]];return s.pathPolygonAnnulus(n,i,c,u,h,e,r)}:function(t,n,i,o){return a.pathAnnulus(t,n,i,o,e,r)}}(e),d=e.layers.frontplot.select(\"g.barlayer\");a.makeTraceGroups(d,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(t){var e,r=n.select(this),o=t.rp0=h.c2p(t.s0),s=t.rp1=h.c2p(t.s1),l=t.thetag0=f.c2g(t.p0),d=t.thetag1=f.c2g(t.p1);if(i(o)&&i(s)&&i(l)&&i(d)&&o!==s&&l!==d){var m=h.c2g(t.s1),g=(l+d)/2;t.ct=[c.c2p(m*Math.cos(g)),u.c2p(m*Math.sin(g))],e=p(o,s,l,d)}else e=\"M0,0Z\";a.ensureSingle(r,\"path\").attr(\"d\",e)})),o.setClipUrl(r,e._hasClipOnAxisFalse?e.clipIds.forTraces:null,t)}))}},64625:function(t,e,r){\"use strict\";var n=r(19326),i=r(36640),a=r(81481),o=r(10229),s=r(80712).axisHoverFormat,l=r(3208).rb,c=r(93049).extendFlat,u=i.marker,h=u.line;t.exports={y:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},x:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},x0:{valType:\"any\",editType:\"calc+clearAxisTypes\"},y0:{valType:\"any\",editType:\"calc+clearAxisTypes\"},dx:{valType:\"number\",editType:\"calc\"},dy:{valType:\"number\",editType:\"calc\"},xperiod:i.xperiod,yperiod:i.yperiod,xperiod0:i.xperiod0,yperiod0:i.yperiod0,xperiodalignment:i.xperiodalignment,yperiodalignment:i.yperiodalignment,xhoverformat:s(\"x\"),yhoverformat:s(\"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\"},sdmultiple:{valType:\"number\",min:0,editType:\"calc\",dflt:1},sizemode:{valType:\"enumerated\",values:[\"quartiles\",\"sd\"],editType:\"calc\",dflt:\"quartiles\"},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:c({},u.symbol,{arrayOk:!1,editType:\"plot\"}),opacity:c({},u.opacity,{arrayOk:!1,dflt:1,editType:\"style\"}),angle:c({},u.angle,{arrayOk:!1,editType:\"calc\"}),size:c({},u.size,{arrayOk:!1,editType:\"calc\"}),color:c({},u.color,{arrayOk:!1,editType:\"style\"}),line:{color:c({},h.color,{arrayOk:!1,dflt:o.defaultLine,editType:\"style\"}),width:c({},h.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(),whiskerwidth:{valType:\"number\",min:0,max:1,dflt:.5,editType:\"calc\"},showwhiskers:{valType:\"boolean\",editType:\"calc\"},offsetgroup:a.offsetgroup,alignmentgroup:a.alignmentgroup,selected:{marker:i.selected.marker,editType:\"style\"},unselected:{marker:i.unselected.marker,editType:\"style\"},text:c({},i.text,{}),hovertext:c({},i.hovertext,{}),hovertemplate:l({}),hoveron:{valType:\"flaglist\",flags:[\"boxes\",\"points\"],dflt:\"boxes+points\",editType:\"style\"},zorder:i.zorder}},89429:function(t,e,r){\"use strict\";var n=r(10721),i=r(29714),a=r(40528),o=r(34809),s=r(63821).BADNUM,l=o._;t.exports=function(t,e){var r,c,v,x,_,b,w,T=t._fullLayout,k=i.getFromId(t,e.xaxis||\"x\"),A=i.getFromId(t,e.yaxis||\"y\"),M=[],S=\"violin\"===e.type?\"_numViolins\":\"_numBoxes\";\"h\"===e.orientation?(v=k,x=\"x\",_=A,b=\"y\",w=!!e.yperiodalignment):(v=A,x=\"y\",_=k,b=\"x\",w=!!e.xperiodalignment);var E,C,L,I,P,z,O=function(t,e,r,i){var s,l=e+\"0\"in t;if(e in t||l&&\"d\"+e in t){var c=r.makeCalcdata(t,e);return[a(t,r,e,c).vals,c]}s=l?t[e+\"0\"]:\"name\"in t&&(\"category\"===r.type||n(t.name)&&-1!==[\"linear\",\"log\"].indexOf(r.type)||o.isDateTime(t.name)&&\"date\"===r.type)?t.name:i;for(var u=\"multicategory\"===r.type?r.r2c_just_indices(s):r.d2c(s,0,t[e+\"calendar\"]),h=t._length,f=new Array(h),p=0;p<h;p++)f[p]=u;return[f]}(e,b,_,T[S]),D=O[0],R=O[1],F=o.distinctVals(D,_),B=F.vals,N=F.minDiff/2,j=\"all\"===(e.boxpoints||e.points)?o.identity:function(t){return t.v<E.lf||t.v>E.uf};if(e._hasPreCompStats){var U=e[x],V=function(t){return v.d2c((e[t]||[])[r])},q=1/0,H=-1/0;for(r=0;r<e._length;r++){var G=D[r];if(n(G)){if((E={}).pos=E[b]=G,w&&R&&(E.orig_p=R[r]),E.q1=V(\"q1\"),E.med=V(\"median\"),E.q3=V(\"q3\"),C=[],U&&o.isArrayOrTypedArray(U[r]))for(c=0;c<U[r].length;c++)(z=v.d2c(U[r][c]))!==s&&(u(P={v:z,i:[r,c]},e,[r,c]),C.push(P));if(E.pts=C.sort(h),I=(L=E[x]=C.map(f)).length,E.med!==s&&E.q1!==s&&E.q3!==s&&E.med>=E.q1&&E.q3>=E.med){var Z=V(\"lowerfence\");E.lf=Z!==s&&Z<=E.q1?Z:p(E,L,I);var W=V(\"upperfence\");E.uf=W!==s&&W>=E.q3?W:d(E,L,I);var Y=V(\"mean\");E.mean=Y!==s?Y:I?o.mean(L,I):(E.q1+E.q3)/2;var X=V(\"sd\");E.sd=Y!==s&&X>=0?X:I?o.stdev(L,I,E.mean):E.q3-E.q1,E.lo=m(E),E.uo=g(E);var $=V(\"notchspan\");$=$!==s&&$>0?$:y(E,I),E.ln=E.med-$,E.un=E.med+$;var J=E.lf,K=E.uf;e.boxpoints&&L.length&&(J=Math.min(J,L[0]),K=Math.max(K,L[I-1])),e.notched&&(J=Math.min(J,E.ln),K=Math.max(K,E.un)),E.min=J,E.max=K}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}q=Math.min(q,E.min),H=Math.max(H,E.max),E.pts2=C.filter(j),M.push(E)}}e._extremes[v._id]=i.findExtremes(v,[q,H],{padded:!0})}else{var tt=v.makeCalcdata(e,x),et=function(t,e){for(var r=t.length,n=new Array(r+1),i=0;i<r;i++)n[i]=t[i]-e;return n[r]=t[r-1]+e,n}(B,N),rt=B.length,nt=function(t){for(var e=new Array(t),r=0;r<t;r++)e[r]=[];return e}(rt);for(r=0;r<e._length;r++)if(z=tt[r],n(z)){var it=o.findBin(D[r],et);it>=0&&it<rt&&(u(P={v:z,i:r},e,r),nt[it].push(P))}var at=1/0,ot=-1/0,st=e.quartilemethod,lt=\"exclusive\"===st,ct=\"inclusive\"===st;for(r=0;r<rt;r++)if(nt[r].length>0){var ut,ht;(E={}).pos=E[b]=B[r],C=E.pts=nt[r].sort(h),I=(L=E[x]=C.map(f)).length,E.min=L[0],E.max=L[I-1],E.mean=o.mean(L,I),E.sd=o.stdev(L,I,E.mean)*e.sdmultiple,E.med=o.interp(L,.5),I%2&&(lt||ct)?(lt?(ut=L.slice(0,I/2),ht=L.slice(I/2+1)):ct&&(ut=L.slice(0,I/2+1),ht=L.slice(I/2)),E.q1=o.interp(ut,.5),E.q3=o.interp(ht,.5)):(E.q1=o.interp(L,.25),E.q3=o.interp(L,.75)),E.lf=p(E,L,I),E.uf=d(E,L,I),E.lo=m(E),E.uo=g(E);var ft=y(E,I);E.ln=E.med-ft,E.un=E.med+ft,at=Math.min(at,E.ln),ot=Math.max(ot,E.un),E.pts2=C.filter(j),M.push(E)}e.notched&&o.isTypedArray(tt)&&(tt=Array.from(tt)),e._extremes[v._id]=i.findExtremes(v,e.notched?tt.concat([at,ot]):tt,{padded:!0})}return function(t,e){if(o.isArrayOrTypedArray(e.selectedpoints))for(var r=0;r<t.length;r++){for(var n=t[r].pts||[],i={},a=0;a<n.length;a++)i[n[a].i]=a;o.tagSelected(n,e,i)}}(M,e),M.length>0?(M[0].t={num:T[S],dPos:N,posLetter:b,valLetter:x,labels:{med:l(t,\"median:\"),min:l(t,\"min:\"),q1:l(t,\"q1:\"),q3:l(t,\"q3:\"),max:l(t,\"max:\"),mean:\"sd\"===e.boxmean||\"sd\"===e.sizemode?l(t,\"mean ± σ:\").replace(\"σ\",1===e.sdmultiple?\"σ\":e.sdmultiple+\"σ\"):l(t,\"mean:\"),lf:l(t,\"lower fence:\"),uf:l(t,\"upper fence:\")}},T[S]++,M):[{t:{empty:!0}}]};var c={text:\"tx\",hovertext:\"htx\"};function u(t,e,r){for(var n in c)o.isArrayOrTypedArray(e[n])&&(Array.isArray(r)?o.isArrayOrTypedArray(e[n][r[0]])&&(t[c[n]]=e[n][r[0]][r[1]]):t[c[n]]=e[n][r])}function h(t,e){return t.v-e.v}function f(t){return t.v}function p(t,e,r){return 0===r?t.q1:Math.min(t.q1,e[Math.min(o.findBin(2.5*t.q1-1.5*t.q3,e,!0)+1,r-1)])}function d(t,e,r){return 0===r?t.q3:Math.max(t.q3,e[Math.max(o.findBin(2.5*t.q3-1.5*t.q1,e),0)])}function m(t){return 4*t.q1-3*t.q3}function g(t){return 4*t.q3-3*t.q1}function y(t,e){return 0===e?0:1.57*(t.q3-t.q1)/Math.sqrt(e)}},81606:function(t,e,r){\"use strict\";var n=r(29714),i=r(34809),a=r(84391).getAxisGroup,o=[\"v\",\"h\"];function s(t,e,r,o){var s,l,c,u=e.calcdata,h=e._fullLayout,f=o._id,p=f.charAt(0),d=[],m=0;for(s=0;s<r.length;s++)for(c=u[r[s]],l=0;l<c.length;l++)d.push(o.c2l(c[l].pos,!0)),m+=(c[l].pts2||[]).length;if(d.length){var g=i.distinctVals(d);\"category\"!==o.type&&\"multicategory\"!==o.type||(g.minDiff=1);var y=g.minDiff/2;n.minDtick(o,g.minDiff,g.vals[0],!0);var v=h[\"violin\"===t?\"_numViolins\":\"_numBoxes\"],x=\"group\"===h[t+\"mode\"]&&v>1,_=1-h[t+\"gap\"],b=1-h[t+\"groupgap\"];for(s=0;s<r.length;s++){var w,T,k,A,M,S,E=(c=u[r[s]])[0].trace,C=c[0].t,L=E.width,I=E.side;if(L)w=T=A=L/2,k=0;else if(w=y,x){var P=a(h,o._id)+E.orientation,z=(h._alignmentOpts[P]||{})[E.alignmentgroup]||{},O=Object.keys(z.offsetGroups||{}).length,D=O||v;T=w*_*b/D,k=2*w*(((O?E._offsetIndex:C.num)+.5)/D-.5)*_,A=w*_/D}else T=w*_*b,k=0,A=w;C.dPos=w,C.bPos=k,C.bdPos=T,C.wHover=A;var R,F,B,N,j,U,V=k+T,q=Boolean(L);if(\"positive\"===I?(M=w*(L?1:.5),R=V,S=R=k):\"negative\"===I?(M=R=k,S=w*(L?1:.5),F=V):(M=S=w,R=F=V),(E.boxpoints||E.points)&&m>0){var H=E.pointpos,G=E.jitter,Z=E.marker.size/2,W=0;H+G>=0&&((W=V*(H+G))>M?(q=!0,j=Z,B=W):W>R&&(j=Z,B=M)),W<=M&&(B=M);var Y=0;H-G<=0&&((Y=-V*(H-G))>S?(q=!0,U=Z,N=Y):Y>F&&(U=Z,N=S)),Y<=S&&(N=S)}else B=M,N=S;var X=new Array(c.length);for(l=0;l<c.length;l++)X[l]=c[l].pos;E._extremes[f]=n.findExtremes(o,X,{padded:q,vpadminus:N,vpadplus:B,vpadLinearized:!0,ppadminus:{x:U,y:j}[p],ppadplus:{x:j,y:U}[p]})}}}t.exports={crossTraceCalc:function(t,e){for(var r=t.calcdata,n=e.xaxis,i=e.yaxis,a=0;a<o.length;a++){for(var l=o[a],c=\"h\"===l?i:n,u=[],h=0;h<r.length;h++){var f=r[h],p=f[0].t,d=f[0].trace;!0!==d.visible||\"box\"!==d.type&&\"candlestick\"!==d.type||p.empty||(d.orientation||\"v\")!==l||d.xaxis!==n._id||d.yaxis!==i._id||u.push(h)}s(\"box\",t,u,c)}},setPositionOffset:s}},62294:function(t,e,r){\"use strict\";var n=r(34809),i=r(33626),a=r(78766),o=r(99669),s=r(36301),l=r(9666),c=r(64625);function u(t,e,r,a){function o(t){var e=0;return t&&t.length&&(e+=1,n.isArrayOrTypedArray(t[0])&&t[0].length&&(e+=1)),e}function s(e){return n.validate(t[e],c[e])}var u,h=r(\"y\"),f=r(\"x\");if(\"box\"===e.type){var p=r(\"q1\"),d=r(\"median\"),m=r(\"q3\");e._hasPreCompStats=p&&p.length&&d&&d.length&&m&&m.length,u=Math.min(n.minRowLength(p),n.minRowLength(d),n.minRowLength(m))}var g,y,v=o(h),x=o(f),_=v&&n.minRowLength(h),b=x&&n.minRowLength(f),w=a.calendar,T={autotypenumbers:a.autotypenumbers};if(e._hasPreCompStats)switch(String(x)+String(v)){case\"00\":var k=s(\"x0\")||s(\"dx\");g=!s(\"y0\")&&!s(\"dy\")||k?\"v\":\"h\",y=u;break;case\"10\":g=\"v\",y=Math.min(u,b);break;case\"20\":g=\"h\",y=Math.min(u,f.length);break;case\"01\":g=\"h\",y=Math.min(u,_);break;case\"02\":g=\"v\",y=Math.min(u,h.length);break;case\"12\":g=\"v\",y=Math.min(u,b,h.length);break;case\"21\":g=\"h\",y=Math.min(u,f.length,_);break;case\"11\":y=0;break;case\"22\":var A,M=!1;for(A=0;A<f.length;A++)if(\"category\"===l(f[A],w,T)){M=!0;break}if(M)g=\"v\",y=Math.min(u,b,h.length);else{for(A=0;A<h.length;A++)if(\"category\"===l(h[A],w,T)){M=!0;break}M?(g=\"h\",y=Math.min(u,f.length,_)):(g=\"v\",y=Math.min(u,b,h.length))}}else v>0?(g=\"v\",y=x>0?Math.min(b,_):Math.min(_)):x>0?(g=\"h\",y=Math.min(b)):y=0;if(y){e._length=y;var S=r(\"orientation\",g);e._hasPreCompStats?\"v\"===S&&0===x?(r(\"x0\",0),r(\"dx\",1)):\"h\"===S&&0===v&&(r(\"y0\",0),r(\"dy\",1)):\"v\"===S&&0===x?r(\"x0\"):\"h\"===S&&0===v&&r(\"y0\"),i.getComponentMethod(\"calendars\",\"handleTraceDefaults\")(t,e,[\"x\",\"y\"],a)}else e.visible=!1}function h(t,e,r,i){var a=i.prefix,o=n.coerce2(t,e,c,\"marker.outliercolor\"),s=r(\"marker.line.outliercolor\"),l=\"outliers\";e._hasPreCompStats?l=\"all\":(o||s)&&(l=\"suspectedoutliers\");var u=r(a+\"points\",l);u?(r(\"jitter\",\"all\"===u?.3:0),r(\"pointpos\",\"all\"===u?-1.5:0),r(\"marker.symbol\"),r(\"marker.opacity\"),r(\"marker.size\"),r(\"marker.angle\"),r(\"marker.color\",e.line.color),r(\"marker.line.color\"),r(\"marker.line.width\"),\"suspectedoutliers\"===u&&(r(\"marker.line.outliercolor\",e.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 e.marker;var h=r(\"hoveron\");\"all\"!==h&&-1===h.indexOf(\"points\")||r(\"hovertemplate\"),n.coerceSelectionMarkerOpacity(e,r)}t.exports={supplyDefaults:function(t,e,r,i){function s(r,i){return n.coerce(t,e,c,r,i)}if(u(t,e,s,i),!1!==e.visible){o(t,e,i,s),s(\"xhoverformat\"),s(\"yhoverformat\");var l=e._hasPreCompStats;l&&(s(\"lowerfence\"),s(\"upperfence\")),s(\"line.color\",(t.marker||{}).color||r),s(\"line.width\"),s(\"fillcolor\",a.addOpacity(e.line.color,.5));var f=!1;if(l){var p=s(\"mean\"),d=s(\"sd\");p&&p.length&&(f=!0,d&&d.length&&(f=\"sd\"))}s(\"whiskerwidth\");var m,g=s(\"sizemode\");\"quartiles\"===g&&(m=s(\"boxmean\",f)),s(\"showwhiskers\",\"quartiles\"===g),\"sd\"!==g&&\"sd\"!==m||s(\"sdmultiple\"),s(\"width\"),s(\"quartilemethod\");var y=!1;if(l){var v=s(\"notchspan\");v&&v.length&&(y=!0)}else n.validate(t.notchwidth,c.notchwidth)&&(y=!0);s(\"notched\",y)&&s(\"notchwidth\"),h(t,e,s,{prefix:\"box\"}),s(\"zorder\")}},crossTraceDefaults:function(t,e){var r,i;function a(t){return n.coerce(i._input,i,c,t)}for(var o=0;o<t.length;o++){var l=(i=t[o]).type;\"box\"!==l&&\"violin\"!==l||(r=i._input,\"group\"===e[l+\"mode\"]&&s(r,i,e,a))}},handleSampleDefaults:u,handlePointsDefaults:h}},76429:function(t){\"use strict\";t.exports=function(t,e){return e.hoverOnBox&&(t.hoverOnBox=e.hoverOnBox),\"xVal\"in e&&(t.x=e.xVal),\"yVal\"in e&&(t.y=e.yVal),e.xa&&(t.xaxis=e.xa),e.ya&&(t.yaxis=e.ya),t}},11448:function(t,e,r){\"use strict\";var n=r(29714),i=r(34809),a=r(32141),o=r(78766),s=i.fillText;function l(t,e,r,s){var l,c,u,h,f,p,d,m,g,y,v,x,_,b,w=t.cd,T=t.xa,k=t.ya,A=w[0].trace,M=w[0].t,S=\"violin\"===A.type,E=M.bdPos,C=M.wHover,L=function(t){return u.c2l(t.pos)+M.bPos-u.c2l(p)};S&&\"both\"!==A.side?(\"positive\"===A.side&&(g=function(t){var e=L(t);return a.inbox(e,e+C,y)},x=E,_=0),\"negative\"===A.side&&(g=function(t){var e=L(t);return a.inbox(e-C,e,y)},x=0,_=E)):(g=function(t){var e=L(t);return a.inbox(e-C,e+C,y)},x=_=E),b=S?function(t){return a.inbox(t.span[0]-f,t.span[1]-f,y)}:function(t){return a.inbox(t.min-f,t.max-f,y)},\"h\"===A.orientation?(f=e,p=r,d=b,m=g,l=\"y\",u=k,c=\"x\",h=T):(f=r,p=e,d=g,m=b,l=\"x\",u=T,c=\"y\",h=k);var I=Math.min(1,E/Math.abs(u.r2c(u.range[1])-u.r2c(u.range[0])));function P(t){return(d(t)+m(t))/2}y=t.maxHoverDistance-I,v=t.maxSpikeDistance-I;var z=a.getDistanceFunction(s,d,m,P);if(a.getClosest(w,z,t),!1===t.index)return[];var O=w[t.index],D=A.line.color,R=(A.marker||{}).color;o.opacity(D)&&A.line.width?t.color=D:o.opacity(R)&&A.boxpoints?t.color=R:t.color=A.fillcolor,t[l+\"0\"]=u.c2p(O.pos+M.bPos-_,!0),t[l+\"1\"]=u.c2p(O.pos+M.bPos+x,!0),t[l+\"LabelVal\"]=void 0!==O.orig_p?O.orig_p:O.pos;var F=l+\"Spike\";t.spikeDistance=P(O)*v/y,t[F]=u.c2p(O.pos,!0);var B=A.boxmean||\"sd\"===A.sizemode||(A.meanline||{}).visible,N=A.boxpoints||A.points,j=N&&B?[\"max\",\"uf\",\"q3\",\"med\",\"mean\",\"q1\",\"lf\",\"min\"]:N&&!B?[\"max\",\"uf\",\"q3\",\"med\",\"q1\",\"lf\",\"min\"]:!N&&B?[\"max\",\"q3\",\"med\",\"mean\",\"q1\",\"min\"]:[\"max\",\"q3\",\"med\",\"q1\",\"min\"],U=h.range[1]<h.range[0];A.orientation===(U?\"v\":\"h\")&&j.reverse();for(var V=t.spikeDistance,q=t[F],H=[],G=0;G<j.length;G++){var Z=j[G];if(Z in O){var W=O[Z],Y=h.c2p(W,!0),X=i.extendFlat({},t);X.attr=Z,X[c+\"0\"]=X[c+\"1\"]=Y,X[c+\"LabelVal\"]=W,X[c+\"Label\"]=(M.labels?M.labels[Z]+\" \":\"\")+n.hoverLabelText(h,W,A[c+\"hoverformat\"]),X.hoverOnBox=!0,\"mean\"!==Z||!(\"sd\"in O)||\"sd\"!==A.boxmean&&\"sd\"!==A.sizemode||(X[c+\"err\"]=O.sd),X.hovertemplate=!1,H.push(X)}}t.name=\"\",t.spikeDistance=void 0,t[F]=void 0;for(var $=0;$<H.length;$++)\"med\"!==H[$].attr?(H[$].name=\"\",H[$].spikeDistance=void 0,H[$][F]=void 0):(H[$].spikeDistance=V,H[$][F]=q);return H}function c(t,e,r){for(var n,o,l,c=t.cd,u=t.xa,h=t.ya,f=c[0].trace,p=u.c2p(e),d=h.c2p(r),m=a.quadrature((function(t){var e=Math.max(3,t.mrc||0);return Math.max(Math.abs(u.c2p(t.x)-p)-e,1-3/e)}),(function(t){var e=Math.max(3,t.mrc||0);return Math.max(Math.abs(h.c2p(t.y)-d)-e,1-3/e)})),g=!1,y=0;y<c.length;y++){o=c[y];for(var v=0;v<(o.pts||[]).length;v++){var x=m(l=o.pts[v]);x<=t.distance&&(t.distance=x,g=[y,v])}}if(!g)return!1;l=(o=c[g[0]]).pts[g[1]];var _=u.c2p(l.x,!0),b=h.c2p(l.y,!0),w=l.mrc||1;n=i.extendFlat({},t,{index:l.i,color:(f.marker||{}).color,name:f.name,x0:_-w,x1:_+w,y0:b-w,y1:b+w,spikeDistance:t.distance,hovertemplate:f.hovertemplate});var T,k=o.orig_p,A=void 0!==k?k:o.pos;return\"h\"===f.orientation?(T=h,n.xLabelVal=l.x,n.yLabelVal=A):(T=u,n.xLabelVal=A,n.yLabelVal=l.y),n[T._id.charAt(0)+\"Spike\"]=T.c2p(o.pos,!0),s(l,f,n),n}t.exports={hoverPoints:function(t,e,r,n){var i,a=t.cd[0].trace.hoveron,o=[];return-1!==a.indexOf(\"boxes\")&&(o=o.concat(l(t,e,r,n))),-1!==a.indexOf(\"points\")&&(i=c(t,e,r)),\"closest\"===n?i?[i]:o:i?(o.push(i),o):o},hoverOnBoxes:l,hoverOnPoints:c}},53794:function(t,e,r){\"use strict\";t.exports={attributes:r(64625),layoutAttributes:r(64636),supplyDefaults:r(62294).supplyDefaults,crossTraceDefaults:r(62294).crossTraceDefaults,supplyLayoutDefaults:r(65067).supplyLayoutDefaults,calc:r(89429),crossTraceCalc:r(81606).crossTraceCalc,plot:r(95419).plot,style:r(59979).style,styleOnSelect:r(59979).styleOnSelect,hoverPoints:r(11448).hoverPoints,eventData:r(76429),selectPoints:r(72488),moduleType:\"trace\",name:\"box\",basePlotModule:r(37703),categories:[\"cartesian\",\"svg\",\"symbols\",\"oriented\",\"box-violin\",\"showLegend\",\"boxLayout\",\"zoomScale\"],meta:{}}},64636:function(t){\"use strict\";t.exports={boxmode:{valType:\"enumerated\",values:[\"group\",\"overlay\"],dflt:\"overlay\",editType:\"calc\"},boxgap:{valType:\"number\",min:0,max:1,dflt:.3,editType:\"calc\"},boxgroupgap:{valType:\"number\",min:0,max:1,dflt:.3,editType:\"calc\"}}},65067:function(t,e,r){\"use strict\";var n=r(33626),i=r(34809),a=r(64636);function o(t,e,r,i,a){for(var o=a+\"Layout\",s=!1,l=0;l<r.length;l++){var c=r[l];if(n.traceIs(c,o)){s=!0;break}}s&&(i(a+\"mode\"),i(a+\"gap\"),i(a+\"groupgap\"))}t.exports={supplyLayoutDefaults:function(t,e,r){o(0,0,r,(function(r,n){return i.coerce(t,e,a,r,n)}),\"box\")},_supply:o}},95419:function(t,e,r){\"use strict\";var n=r(45568),i=r(34809),a=r(62203);function o(t,e,r,a,o){var s,l,c=\"h\"===r.orientation,u=e.val,h=e.pos,f=!!h.rangebreaks,p=a.bPos,d=a.wdPos||0,m=a.bPosPxOffset||0,g=r.whiskerwidth||0,y=!1!==r.showwhiskers,v=r.notched||!1,x=v?1-2*r.notchwidth:1;Array.isArray(a.bdPos)?(s=a.bdPos[0],l=a.bdPos[1]):(s=a.bdPos,l=a.bdPos);var _=t.selectAll(\"path.box\").data(\"violin\"!==r.type||r.box.visible?i.identity:[]);_.enter().append(\"path\").style(\"vector-effect\",o?\"none\":\"non-scaling-stroke\").attr(\"class\",\"box\"),_.exit().remove(),_.each((function(t){if(t.empty)return n.select(this).attr(\"d\",\"M0,0Z\");var e=h.c2l(t.pos+p,!0),a=h.l2p(e-s)+m,o=h.l2p(e+l)+m,_=f?(a+o)/2:h.l2p(e)+m,b=r.whiskerwidth,w=f?a*b+(1-b)*_:h.l2p(e-d)+m,T=f?o*b+(1-b)*_:h.l2p(e+d)+m,k=h.l2p(e-s*x)+m,A=h.l2p(e+l*x)+m,M=\"sd\"===r.sizemode,S=u.c2p(M?t.mean-t.sd:t.q1,!0),E=M?u.c2p(t.mean+t.sd,!0):u.c2p(t.q3,!0),C=i.constrain(M?u.c2p(t.mean,!0):u.c2p(t.med,!0),Math.min(S,E)+1,Math.max(S,E)-1),L=void 0===t.lf||!1===r.boxpoints||M,I=u.c2p(L?t.min:t.lf,!0),P=u.c2p(L?t.max:t.uf,!0),z=u.c2p(t.ln,!0),O=u.c2p(t.un,!0);c?n.select(this).attr(\"d\",\"M\"+C+\",\"+k+\"V\"+A+\"M\"+S+\",\"+a+\"V\"+o+(v?\"H\"+z+\"L\"+C+\",\"+A+\"L\"+O+\",\"+o:\"\")+\"H\"+E+\"V\"+a+(v?\"H\"+O+\"L\"+C+\",\"+k+\"L\"+z+\",\"+a:\"\")+\"Z\"+(y?\"M\"+S+\",\"+_+\"H\"+I+\"M\"+E+\",\"+_+\"H\"+P+(0===g?\"\":\"M\"+I+\",\"+w+\"V\"+T+\"M\"+P+\",\"+w+\"V\"+T):\"\")):n.select(this).attr(\"d\",\"M\"+k+\",\"+C+\"H\"+A+\"M\"+a+\",\"+S+\"H\"+o+(v?\"V\"+z+\"L\"+A+\",\"+C+\"L\"+o+\",\"+O:\"\")+\"V\"+E+\"H\"+a+(v?\"V\"+O+\"L\"+k+\",\"+C+\"L\"+a+\",\"+z:\"\")+\"Z\"+(y?\"M\"+_+\",\"+S+\"V\"+I+\"M\"+_+\",\"+E+\"V\"+P+(0===g?\"\":\"M\"+w+\",\"+I+\"H\"+T+\"M\"+w+\",\"+P+\"H\"+T):\"\"))}))}function s(t,e,r,n){var o=e.x,s=e.y,l=n.bdPos,c=n.bPos,u=r.boxpoints||r.points;i.seedPseudoRandom();var h=t.selectAll(\"g.points\").data(u?function(t){return t.forEach((function(t){t.t=n,t.trace=r})),t}:[]);h.enter().append(\"g\").attr(\"class\",\"points\"),h.exit().remove();var f=h.selectAll(\"path\").data((function(t){var e,n,a=t.pts2,o=Math.max((t.max-t.min)/10,t.q3-t.q1),s=1e-9*o,h=.01*o,f=[],p=0;if(r.jitter){if(0===o)for(p=1,f=new Array(a.length),e=0;e<a.length;e++)f[e]=1;else for(e=0;e<a.length;e++){var d=Math.max(0,e-5),m=a[d].v,g=Math.min(a.length-1,e+5),y=a[g].v;\"all\"!==u&&(a[e].v<t.lf?y=Math.min(y,t.lf):m=Math.max(m,t.uf));var v=Math.sqrt(h*(g-d)/(y-m+s))||0;v=i.constrain(Math.abs(v),0,1),f.push(v),p=Math.max(v,p)}n=2*r.jitter/(p||1)}for(e=0;e<a.length;e++){var x=a[e],_=x.v,b=r.jitter?n*f[e]*(i.pseudoRandom()-.5):0,w=t.pos+c+l*(r.pointpos+b);\"h\"===r.orientation?(x.y=w,x.x=_):(x.x=w,x.y=_),\"suspectedoutliers\"===u&&_<t.uo&&_>t.lo&&(x.so=!0)}return a}));f.enter().append(\"path\").classed(\"point\",!0),f.exit().remove(),f.call(a.translatePoints,o,s)}function l(t,e,r,a){var o,s,l=e.val,c=e.pos,u=!!c.rangebreaks,h=a.bPos,f=a.bPosPxOffset||0,p=r.boxmean||(r.meanline||{}).visible;Array.isArray(a.bdPos)?(o=a.bdPos[0],s=a.bdPos[1]):(o=a.bdPos,s=a.bdPos);var d=t.selectAll(\"path.mean\").data(\"box\"===r.type&&r.boxmean||\"violin\"===r.type&&r.box.visible&&r.meanline.visible?i.identity:[]);d.enter().append(\"path\").attr(\"class\",\"mean\").style({fill:\"none\",\"vector-effect\":\"non-scaling-stroke\"}),d.exit().remove(),d.each((function(t){var e=c.c2l(t.pos+h,!0),i=c.l2p(e-o)+f,a=c.l2p(e+s)+f,d=u?(i+a)/2:c.l2p(e)+f,m=l.c2p(t.mean,!0),g=l.c2p(t.mean-t.sd,!0),y=l.c2p(t.mean+t.sd,!0);\"h\"===r.orientation?n.select(this).attr(\"d\",\"M\"+m+\",\"+i+\"V\"+a+(\"sd\"===p?\"m0,0L\"+g+\",\"+d+\"L\"+m+\",\"+i+\"L\"+y+\",\"+d+\"Z\":\"\")):n.select(this).attr(\"d\",\"M\"+i+\",\"+m+\"H\"+a+(\"sd\"===p?\"m0,0L\"+d+\",\"+g+\"L\"+i+\",\"+m+\"L\"+d+\",\"+y+\"Z\":\"\"))}))}t.exports={plot:function(t,e,r,a){var c=t._context.staticPlot,u=e.xaxis,h=e.yaxis;i.makeTraceGroups(a,r,\"trace boxes\").each((function(t){var e,r,i=n.select(this),a=t[0],f=a.t,p=a.trace;f.wdPos=f.bdPos*p.whiskerwidth,!0!==p.visible||f.empty?i.remove():(\"h\"===p.orientation?(e=h,r=u):(e=u,r=h),o(i,{pos:e,val:r},p,f,c),s(i,{x:u,y:h},p,f),l(i,{pos:e,val:r},p,f))}))},plotBoxAndWhiskers:o,plotPoints:s,plotBoxMean:l}},72488:function(t){\"use strict\";t.exports=function(t,e){var r,n,i=t.cd,a=t.xaxis,o=t.yaxis,s=[];if(!1===e)for(r=0;r<i.length;r++)for(n=0;n<(i[r].pts||[]).length;n++)i[r].pts[n].selected=0;else for(r=0;r<i.length;r++)for(n=0;n<(i[r].pts||[]).length;n++){var l=i[r].pts[n],c=a.c2p(l.x),u=o.c2p(l.y);e.contains([c,u],null,l.i,t)?(s.push({pointNumber:l.i,x:a.c2d(l.x),y:o.c2d(l.y)}),l.selected=1):l.selected=0}return s}},59979:function(t,e,r){\"use strict\";var n=r(45568),i=r(78766),a=r(62203);t.exports={style:function(t,e,r){var o=r||n.select(t).selectAll(\"g.trace.boxes\");o.style(\"opacity\",(function(t){return t[0].trace.opacity})),o.each((function(e){var r=n.select(this),o=e[0].trace,s=o.line.width;function l(t,e,r,n){t.style(\"stroke-width\",e+\"px\").call(i.stroke,r).call(i.fill,n)}var c=r.selectAll(\"path.box\");if(\"candlestick\"===o.type)c.each((function(t){if(!t.empty){var e=n.select(this),r=o[t.dir];l(e,r.line.width,r.line.color,r.fillcolor),e.style(\"opacity\",o.selectedpoints&&!t.selected?.3:1)}}));else{l(c,s,o.line.color,o.fillcolor),r.selectAll(\"path.mean\").style({\"stroke-width\":s,\"stroke-dasharray\":2*s+\"px,\"+s+\"px\"}).call(i.stroke,o.line.color);var u=r.selectAll(\"path.point\");a.pointStyle(u,o,t)}}))},styleOnSelect:function(t,e,r){var n=e[0].trace,i=r.selectAll(\"path.point\");n.selectedpoints?a.selectedPointStyle(i,n):a.pointStyle(i,n,t)}}},24319:function(t,e,r){\"use strict\";var n=r(34809).extendFlat,i=r(80712).axisHoverFormat,a=r(86706),o=r(64625);function s(t){return{line:{color:n({},o.line.color,{dflt:t}),width:o.line.width,editType:\"style\"},fillcolor:o.fillcolor,editType:\"style\"}}t.exports={xperiod:a.xperiod,xperiod0:a.xperiod0,xperiodalignment:a.xperiodalignment,xhoverformat:i(\"x\"),yhoverformat:i(\"y\"),x:a.x,open:a.open,high:a.high,low:a.low,close:a.close,line:{width:n({},o.line.width,{}),editType:\"style\"},increasing:s(a.increasing.line.color.dflt),decreasing:s(a.decreasing.line.color.dflt),text:a.text,hovertext:a.hovertext,whiskerwidth:n({},o.whiskerwidth,{dflt:0}),hoverlabel:a.hoverlabel,zorder:o.zorder}},63679:function(t,e,r){\"use strict\";var n=r(34809),i=r(29714),a=r(40528),o=r(95694).calcCommon;function s(t,e,r,n){return{min:r,q1:Math.min(t,n),med:n,q3:Math.max(t,n),max:e}}t.exports=function(t,e){var r=t._fullLayout,l=i.getFromId(t,e.xaxis),c=i.getFromId(t,e.yaxis),u=l.makeCalcdata(e,\"x\"),h=a(e,l,\"x\",u).vals,f=o(t,e,u,h,c,s);return f.length?(n.extendFlat(f[0].t,{num:r._numBoxes,dPos:n.distinctVals(h).minDiff/2,posLetter:\"x\",valLetter:\"y\"}),r._numBoxes++,f):[{t:{empty:!0}}]}},57336:function(t,e,r){\"use strict\";var n=r(34809),i=r(78766),a=r(28270),o=r(99669),s=r(24319);function l(t,e,r,n){var a=r(n+\".line.color\");r(n+\".line.width\",e.line.width),r(n+\".fillcolor\",i.addOpacity(a,.5))}t.exports=function(t,e,r,i){function c(r,i){return n.coerce(t,e,s,r,i)}a(t,e,c,i)?(o(t,e,i,c,{x:!0}),c(\"xhoverformat\"),c(\"yhoverformat\"),c(\"line.width\"),l(0,e,c,\"increasing\"),l(0,e,c,\"decreasing\"),c(\"text\"),c(\"hovertext\"),c(\"whiskerwidth\"),i._requestRangeslider[e.xaxis]=!0,c(\"zorder\")):e.visible=!1}},51252:function(t,e,r){\"use strict\";t.exports={moduleType:\"trace\",name:\"candlestick\",basePlotModule:r(37703),categories:[\"cartesian\",\"svg\",\"showLegend\",\"candlestick\",\"boxLayout\"],meta:{},attributes:r(24319),layoutAttributes:r(64636),supplyLayoutDefaults:r(65067).supplyLayoutDefaults,crossTraceCalc:r(81606).crossTraceCalc,supplyDefaults:r(57336),calc:r(63679),plot:r(95419).plot,layerName:\"boxlayer\",style:r(59979).style,hoverPoints:r(93245).hoverPoints,selectPoints:r(49343)}},8432:function(t,e,r){\"use strict\";var n=r(6038),i=r(78032);t.exports=function(t,e,r,a,o){a(\"a\")||(a(\"da\"),a(\"a0\")),a(\"b\")||(a(\"db\"),a(\"b0\")),function(t,e,r,a){[\"aaxis\",\"baxis\"].forEach((function(o){var s=o.charAt(0),l=t[o]||{},c=i.newContainer(e,o),u={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,noTicklabelstep:!0,tickfont:\"x\",id:s+\"axis\",letter:s,font:e.font,name:o,data:t[s],calendar:e.calendar,dfltColor:a,bgColor:r.paper_bgcolor,autotypenumbersDflt:r.autotypenumbers,fullLayout:r};n(l,c,u),c._categories=c._categories||[],t[o]||\"-\"===l.type||(t[o]={type:l.type})}))}(t,e,r,o)}},97052:function(t,e,r){\"use strict\";var n=r(34809).isArrayOrTypedArray;function i(t,e){if(!n(t)||e>=10)return null;for(var r=1/0,a=-1/0,o=t.length,s=0;s<o;s++){var l=t[s];if(n(l)){var c=i(l,e+1);c&&(r=Math.min(c[0],r),a=Math.max(c[1],a))}else r=Math.min(l,r),a=Math.max(l,a)}return[r,a]}t.exports=function(t){return i(t,0)}},43745:function(t,e,r){\"use strict\";var n=r(80337),i=r(86961),a=r(10229),o=n({editType:\"calc\"}),s=r(36640).zorder;o.family.dflt='\"Open Sans\", verdana, arial, sans-serif',o.size.dflt=12,o.color.dflt=a.defaultLine,t.exports={carpet:{valType:\"string\",editType:\"calc\"},x:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},y:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},a:{valType:\"data_array\",editType:\"calc\"},a0:{valType:\"number\",dflt:0,editType:\"calc\"},da:{valType:\"number\",dflt:1,editType:\"calc\"},b:{valType:\"data_array\",editType:\"calc\"},b0:{valType:\"number\",dflt:0,editType:\"calc\"},db:{valType:\"number\",dflt:1,editType:\"calc\"},cheaterslope:{valType:\"number\",dflt:1,editType:\"calc\"},aaxis:i,baxis:i,font:o,color:{valType:\"color\",dflt:a.defaultLine,editType:\"plot\"},transforms:void 0,zorder:s}},94903:function(t,e,r){\"use strict\";var n=r(34809).isArrayOrTypedArray;t.exports=function(t,e,r,i){var a,o,s,l,c,u,h,f,p,d,m,g,y,v=n(r)?\"a\":\"b\",x=(\"a\"===v?t.aaxis:t.baxis).smoothing,_=\"a\"===v?t.a2i:t.b2j,b=\"a\"===v?r:i,w=\"a\"===v?i:r,T=\"a\"===v?e.a.length:e.b.length,k=\"a\"===v?e.b.length:e.a.length,A=Math.floor(\"a\"===v?t.b2j(w):t.a2i(w)),M=\"a\"===v?function(e){return t.evalxy([],e,A)}:function(e){return t.evalxy([],A,e)};x&&(s=Math.max(0,Math.min(k-2,A)),l=A-s,o=\"a\"===v?function(e,r){return t.dxydi([],e,s,r,l)}:function(e,r){return t.dxydj([],s,e,l,r)});var S=_(b[0]),E=_(b[1]),C=S<E?1:-1,L=1e-8*(E-S),I=C>0?Math.floor:Math.ceil,P=C>0?Math.ceil:Math.floor,z=C>0?Math.min:Math.max,O=C>0?Math.max:Math.min,D=I(S+L),R=P(E-L),F=[[h=M(S)]];for(a=D;a*C<R*C;a+=C)c=[],m=O(S,a),y=(g=z(E,a+C))-m,u=Math.max(0,Math.min(T-2,Math.floor(.5*(m+g)))),f=M(g),x&&(p=o(u,m-u),d=o(u,g-u),c.push([h[0]+p[0]/3*y,h[1]+p[1]/3*y]),c.push([f[0]-d[0]/3*y,f[1]-d[1]/3*y])),c.push(f),F.push(c),h=f;return F}},86961:function(t,e,r){\"use strict\";var n=r(80337),i=r(10229),a=r(25829),o=r(80712).descriptionWithDates,s=r(13582).overrideAll,l=r(94850).T,c=r(93049).extendFlat;t.exports={color:{valType:\"color\",editType:\"calc\"},smoothing:{valType:\"number\",dflt:1,min:0,max:1.3,editType:\"calc\"},title:{text:{valType:\"string\",dflt:\"\",editType:\"calc\"},font:n({editType:\"calc\"}),offset:{valType:\"number\",dflt:10,editType:\"calc\"},editType:\"calc\"},type:{valType:\"enumerated\",values:[\"-\",\"linear\",\"date\",\"category\"],dflt:\"-\",editType:\"calc\"},autotypenumbers:a.autotypenumbers,autorange:{valType:\"enumerated\",values:[!0,!1,\"reversed\"],dflt:!0,editType:\"calc\"},rangemode:{valType:\"enumerated\",values:[\"normal\",\"tozero\",\"nonnegative\"],dflt:\"normal\",editType:\"calc\"},range:{valType:\"info_array\",editType:\"calc\",items:[{valType:\"any\",editType:\"calc\"},{valType:\"any\",editType:\"calc\"}]},fixedrange:{valType:\"boolean\",dflt:!1,editType:\"calc\"},cheatertype:{valType:\"enumerated\",values:[\"index\",\"value\"],dflt:\"value\",editType:\"calc\"},tickmode:{valType:\"enumerated\",values:[\"linear\",\"array\"],dflt:\"array\",editType:\"calc\"},nticks:{valType:\"integer\",min:0,dflt:0,editType:\"calc\"},tickvals:{valType:\"data_array\",editType:\"calc\"},ticktext:{valType:\"data_array\",editType:\"calc\"},showticklabels:{valType:\"enumerated\",values:[\"start\",\"end\",\"both\",\"none\"],dflt:\"start\",editType:\"calc\"},labelalias:c({},a.labelalias,{editType:\"calc\"}),tickfont:n({editType:\"calc\"}),tickangle:{valType:\"angle\",dflt:\"auto\",editType:\"calc\"},tickprefix:{valType:\"string\",dflt:\"\",editType:\"calc\"},showtickprefix:{valType:\"enumerated\",values:[\"all\",\"first\",\"last\",\"none\"],dflt:\"all\",editType:\"calc\"},ticksuffix:{valType:\"string\",dflt:\"\",editType:\"calc\"},showticksuffix:{valType:\"enumerated\",values:[\"all\",\"first\",\"last\",\"none\"],dflt:\"all\",editType:\"calc\"},showexponent:{valType:\"enumerated\",values:[\"all\",\"first\",\"last\",\"none\"],dflt:\"all\",editType:\"calc\"},exponentformat:{valType:\"enumerated\",values:[\"none\",\"e\",\"E\",\"power\",\"SI\",\"B\"],dflt:\"B\",editType:\"calc\"},minexponent:{valType:\"number\",dflt:3,min:0,editType:\"calc\"},separatethousands:{valType:\"boolean\",dflt:!1,editType:\"calc\"},tickformat:{valType:\"string\",dflt:\"\",editType:\"calc\",description:o(\"tick label\")},tickformatstops:s(a.tickformatstops,\"calc\",\"from-root\"),categoryorder:{valType:\"enumerated\",values:[\"trace\",\"category ascending\",\"category descending\",\"array\"],dflt:\"trace\",editType:\"calc\"},categoryarray:{valType:\"data_array\",editType:\"calc\"},labelpadding:{valType:\"integer\",dflt:10,editType:\"calc\"},labelprefix:{valType:\"string\",editType:\"calc\"},labelsuffix:{valType:\"string\",dflt:\"\",editType:\"calc\"},showline:{valType:\"boolean\",dflt:!1,editType:\"calc\"},linecolor:{valType:\"color\",dflt:i.defaultLine,editType:\"calc\"},linewidth:{valType:\"number\",min:0,dflt:1,editType:\"calc\"},gridcolor:{valType:\"color\",editType:\"calc\"},gridwidth:{valType:\"number\",min:0,dflt:1,editType:\"calc\"},griddash:c({},l,{editType:\"calc\"}),showgrid:{valType:\"boolean\",dflt:!0,editType:\"calc\"},minorgridcount:{valType:\"integer\",min:0,dflt:0,editType:\"calc\"},minorgridwidth:{valType:\"number\",min:0,dflt:1,editType:\"calc\"},minorgriddash:c({},l,{editType:\"calc\"}),minorgridcolor:{valType:\"color\",dflt:i.lightLine,editType:\"calc\"},startline:{valType:\"boolean\",editType:\"calc\"},startlinecolor:{valType:\"color\",editType:\"calc\"},startlinewidth:{valType:\"number\",dflt:1,editType:\"calc\"},endline:{valType:\"boolean\",editType:\"calc\"},endlinewidth:{valType:\"number\",dflt:1,editType:\"calc\"},endlinecolor:{valType:\"color\",editType:\"calc\"},tick0:{valType:\"number\",min:0,dflt:0,editType:\"calc\"},dtick:{valType:\"number\",min:0,dflt:1,editType:\"calc\"},arraytick0:{valType:\"integer\",min:0,dflt:0,editType:\"calc\"},arraydtick:{valType:\"integer\",min:1,dflt:1,editType:\"calc\"},_deprecated:{title:{valType:\"string\",editType:\"calc\"},titlefont:n({editType:\"calc\"}),titleoffset:{valType:\"number\",dflt:10,editType:\"calc\"}},editType:\"calc\"}},6038:function(t,e,r){\"use strict\";var n=r(43745),i=r(78766).addOpacity,a=r(33626),o=r(34809),s=r(22777),l=r(12036),c=r(54616),u=r(46473),h=r(19091),f=r(9666);t.exports=function(t,e,r){var p=r.letter,d=r.font||{},m=n[p+\"axis\"];function g(r,n){return o.coerce(t,e,m,r,n)}function y(r,n){return o.coerce2(t,e,m,r,n)}r.name&&(e._name=r.name,e._id=r.name),g(\"autotypenumbers\",r.autotypenumbersDflt);var v=g(\"type\");\"-\"===v&&(r.data&&function(t,e){if(\"-\"===t.type){var r=t._id.charAt(0),n=t[r+\"calendar\"];t.type=f(e,n,{autotypenumbers:t.autotypenumbers})}}(e,r.data),\"-\"===e.type?e.type=\"linear\":v=t.type=e.type),g(\"smoothing\"),g(\"cheatertype\"),g(\"showticklabels\"),g(\"labelprefix\",p+\" = \"),g(\"labelsuffix\"),g(\"showtickprefix\"),g(\"showticksuffix\"),g(\"separatethousands\"),g(\"tickformat\"),g(\"exponentformat\"),g(\"minexponent\"),g(\"showexponent\"),g(\"categoryorder\"),g(\"tickmode\"),g(\"tickvals\"),g(\"ticktext\"),g(\"tick0\"),g(\"dtick\"),\"array\"===e.tickmode&&(g(\"arraytick0\"),g(\"arraydtick\")),g(\"labelpadding\"),e._hovertitle=p,\"date\"===v&&a.getComponentMethod(\"calendars\",\"handleDefaults\")(t,e,\"calendar\",r.calendar),h(e,r.fullLayout),e.c2p=o.identity;var x=g(\"color\",r.dfltColor),_=x===t.color?x:d.color;g(\"title.text\")&&(o.coerceFont(g,\"title.font\",d,{overrideDflt:{size:o.bigFont(d.size),color:_}}),g(\"title.offset\")),g(\"tickangle\"),g(\"autorange\",!e.isValidRange(t.range))&&g(\"rangemode\"),g(\"range\"),e.cleanRange(),g(\"fixedrange\"),s(t,e,g,v),c(t,e,g,v,r),l(t,e,g,v,r),u(t,e,g,{data:r.data,dataAttr:p});var b=y(\"gridcolor\",i(x,.3)),w=y(\"gridwidth\"),T=y(\"griddash\"),k=g(\"showgrid\");k||(delete e.gridcolor,delete e.gridwidth,delete e.griddash);var A=y(\"startlinecolor\",x),M=y(\"startlinewidth\",w);g(\"startline\",e.showgrid||!!A||!!M)||(delete e.startlinecolor,delete e.startlinewidth);var S=y(\"endlinecolor\",x),E=y(\"endlinewidth\",w);return g(\"endline\",e.showgrid||!!S||!!E)||(delete e.endlinecolor,delete e.endlinewidth),k?(g(\"minorgridcount\"),g(\"minorgridwidth\",w),g(\"minorgriddash\",T),g(\"minorgridcolor\",i(b,.06)),e.minorgridcount||(delete e.minorgridwidth,delete e.minorgriddash,delete e.minorgridcolor)):(delete e.gridcolor,delete e.gridwidth,delete e.griddash),\"none\"===e.showticklabels&&(delete e.tickfont,delete e.tickangle,delete e.showexponent,delete e.exponentformat,delete e.minexponent,delete e.tickformat,delete e.showticksuffix,delete e.showtickprefix),e.showticksuffix||delete e.ticksuffix,e.showtickprefix||delete e.tickprefix,g(\"tickmode\"),e}},67525:function(t,e,r){\"use strict\";var n=r(29714),i=r(34809).isArray1D,a=r(89992),o=r(97052),s=r(4753),l=r(93923),c=r(39373),u=r(93877),h=r(13007),f=r(87869),p=r(76842);t.exports=function(t,e){var r=n.getFromId(t,e.xaxis),d=n.getFromId(t,e.yaxis),m=e.aaxis,g=e.baxis,y=e.x,v=e.y,x=[];y&&i(y)&&x.push(\"x\"),v&&i(v)&&x.push(\"y\"),x.length&&f(e,m,g,\"a\",\"b\",x);var _=e._a=e._a||e.a,b=e._b=e._b||e.b;y=e._x||e.x,v=e._y||e.y;var w={};if(e._cheater){var T=\"index\"===m.cheatertype?_.length:_,k=\"index\"===g.cheatertype?b.length:b;y=a(T,k,e.cheaterslope)}e._x=y=u(y),e._y=v=u(v),h(y,_,b),h(v,_,b),p(e),e.setScale();var A=o(y),M=o(v),S=.5*(A[1]-A[0]),E=.5*(A[1]+A[0]),C=.5*(M[1]-M[0]),L=.5*(M[1]+M[0]),I=1.3;return A=[E-S*I,E+S*I],M=[L-C*I,L+C*I],e._extremes[r._id]=n.findExtremes(r,A,{padded:!0}),e._extremes[d._id]=n.findExtremes(d,M,{padded:!0}),s(e,\"a\",\"b\"),s(e,\"b\",\"a\"),l(e,m),l(e,g),w.clipsegments=c(e._xctrl,e._yctrl,m,g),w.x=y,w.y=v,w.a=_,w.b=b,[w]}},39373:function(t){\"use strict\";t.exports=function(t,e,r,n){var i,a,o,s=[],l=!!r.smoothing,c=!!n.smoothing,u=t[0].length-1,h=t.length-1;for(i=0,a=[],o=[];i<=u;i++)a[i]=t[0][i],o[i]=e[0][i];for(s.push({x:a,y:o,bicubic:l}),i=0,a=[],o=[];i<=h;i++)a[i]=t[i][u],o[i]=e[i][u];for(s.push({x:a,y:o,bicubic:c}),i=u,a=[],o=[];i>=0;i--)a[u-i]=t[h][i],o[u-i]=e[h][i];for(s.push({x:a,y:o,bicubic:l}),i=h,a=[],o=[];i>=0;i--)a[h-i]=t[i][0],o[h-i]=e[i][0];return s.push({x:a,y:o,bicubic:c}),s}},4753:function(t,e,r){\"use strict\";var n=r(29714),i=r(93049).extendFlat;t.exports=function(t,e,r){var a,o,s,l,c,u,h,f,p,d,m,g,y,v,x=t[\"_\"+e],_=t[e+\"axis\"],b=_._gridlines=[],w=_._minorgridlines=[],T=_._boundarylines=[],k=t[\"_\"+r],A=t[r+\"axis\"];\"array\"===_.tickmode&&(_.tickvals=x.slice());var M=t._xctrl,S=t._yctrl,E=M[0].length,C=M.length,L=t._a.length,I=t._b.length;n.prepTicks(_),\"array\"===_.tickmode&&delete _.tickvals;var P=_.smoothing?3:1;function z(n){var i,a,o,s,l,c,u,h,p,d,m,g,y=[],v=[],x={};if(\"b\"===e)for(a=t.b2j(n),o=Math.floor(Math.max(0,Math.min(I-2,a))),s=a-o,x.length=I,x.crossLength=L,x.xy=function(e){return t.evalxy([],e,a)},x.dxy=function(e,r){return t.dxydi([],e,o,r,s)},i=0;i<L;i++)c=Math.min(L-2,i),u=i-c,h=t.evalxy([],i,a),A.smoothing&&i>0&&(p=t.dxydi([],i-1,o,0,s),y.push(l[0]+p[0]/3),v.push(l[1]+p[1]/3),d=t.dxydi([],i-1,o,1,s),y.push(h[0]-d[0]/3),v.push(h[1]-d[1]/3)),y.push(h[0]),v.push(h[1]),l=h;else for(i=t.a2i(n),c=Math.floor(Math.max(0,Math.min(L-2,i))),u=i-c,x.length=L,x.crossLength=I,x.xy=function(e){return t.evalxy([],i,e)},x.dxy=function(e,r){return t.dxydj([],c,e,u,r)},a=0;a<I;a++)o=Math.min(I-2,a),s=a-o,h=t.evalxy([],i,a),A.smoothing&&a>0&&(m=t.dxydj([],c,a-1,u,0),y.push(l[0]+m[0]/3),v.push(l[1]+m[1]/3),g=t.dxydj([],c,a-1,u,1),y.push(h[0]-g[0]/3),v.push(h[1]-g[1]/3)),y.push(h[0]),v.push(h[1]),l=h;return x.axisLetter=e,x.axis=_,x.crossAxis=A,x.value=n,x.constvar=r,x.index=f,x.x=y,x.y=v,x.smoothing=A.smoothing,x}function O(n){var i,a,o,s,l,c=[],u=[],h={};if(h.length=x.length,h.crossLength=k.length,\"b\"===e)for(o=Math.max(0,Math.min(I-2,n)),l=Math.min(1,Math.max(0,n-o)),h.xy=function(e){return t.evalxy([],e,n)},h.dxy=function(e,r){return t.dxydi([],e,o,r,l)},i=0;i<E;i++)c[i]=M[n*P][i],u[i]=S[n*P][i];else for(a=Math.max(0,Math.min(L-2,n)),s=Math.min(1,Math.max(0,n-a)),h.xy=function(e){return t.evalxy([],n,e)},h.dxy=function(e,r){return t.dxydj([],a,e,s,r)},i=0;i<C;i++)c[i]=M[i][n*P],u[i]=S[i][n*P];return h.axisLetter=e,h.axis=_,h.crossAxis=A,h.value=x[n],h.constvar=r,h.index=n,h.x=c,h.y=u,h.smoothing=A.smoothing,h}if(\"array\"===_.tickmode){for(l=5e-15,u=(c=[Math.floor((x.length-1-_.arraytick0)/_.arraydtick*(1+l)),Math.ceil(-_.arraytick0/_.arraydtick/(1+l))].sort((function(t,e){return t-e})))[0]-1,h=c[1]+1,f=u;f<h;f++)(o=_.arraytick0+_.arraydtick*f)<0||o>x.length-1||b.push(i(O(o),{color:_.gridcolor,width:_.gridwidth,dash:_.griddash}));for(f=u;f<h;f++)if(s=_.arraytick0+_.arraydtick*f,m=Math.min(s+_.arraydtick,x.length-1),!(s<0||s>x.length-1||m<0||m>x.length-1))for(g=x[s],y=x[m],a=0;a<_.minorgridcount;a++)(v=m-s)<=0||(d=g+(y-g)*(a+1)/(_.minorgridcount+1)*(_.arraydtick/v))<x[0]||d>x[x.length-1]||w.push(i(z(d),{color:_.minorgridcolor,width:_.minorgridwidth,dash:_.minorgriddash}));_.startline&&T.push(i(O(0),{color:_.startlinecolor,width:_.startlinewidth})),_.endline&&T.push(i(O(x.length-1),{color:_.endlinecolor,width:_.endlinewidth}))}else{for(l=5e-15,u=(c=[Math.floor((x[x.length-1]-_.tick0)/_.dtick*(1+l)),Math.ceil((x[0]-_.tick0)/_.dtick/(1+l))].sort((function(t,e){return t-e})))[0],h=c[1],f=u;f<=h;f++)p=_.tick0+_.dtick*f,b.push(i(z(p),{color:_.gridcolor,width:_.gridwidth,dash:_.griddash}));for(f=u-1;f<h+1;f++)for(p=_.tick0+_.dtick*f,a=0;a<_.minorgridcount;a++)(d=p+_.dtick*(a+1)/(_.minorgridcount+1))<x[0]||d>x[x.length-1]||w.push(i(z(d),{color:_.minorgridcolor,width:_.minorgridwidth,dash:_.minorgriddash}));_.startline&&T.push(i(z(x[0]),{color:_.startlinecolor,width:_.startlinewidth})),_.endline&&T.push(i(z(x[x.length-1]),{color:_.endlinecolor,width:_.endlinewidth}))}}},93923:function(t,e,r){\"use strict\";var n=r(29714),i=r(93049).extendFlat;t.exports=function(t,e){var r,a,o,s=e._labels=[],l=e._gridlines;for(r=0;r<l.length;r++)o=l[r],-1!==[\"start\",\"both\"].indexOf(e.showticklabels)&&(a=n.tickText(e,o.value),i(a,{prefix:void 0,suffix:void 0,endAnchor:!0,xy:o.xy(0),dxy:o.dxy(0,0),axis:o.axis,length:o.crossAxis.length,font:o.axis.tickfont,isFirst:0===r,isLast:r===l.length-1}),s.push(a)),-1!==[\"end\",\"both\"].indexOf(e.showticklabels)&&(a=n.tickText(e,o.value),i(a,{endAnchor:!1,xy:o.xy(o.crossLength-1),dxy:o.dxy(o.crossLength-2,1),axis:o.axis,length:o.crossAxis.length,font:o.axis.tickfont,isFirst:0===r,isLast:r===l.length-1}),s.push(a))}},49109:function(t){\"use strict\";t.exports=function(t,e,r,n){var i=t[0]-e[0],a=t[1]-e[1],o=r[0]-e[0],s=r[1]-e[1],l=Math.pow(i*i+a*a,.25),c=Math.pow(o*o+s*s,.25),u=(c*c*i-l*l*o)*n,h=(c*c*a-l*l*s)*n,f=c*(l+c)*3,p=l*(l+c)*3;return[[e[0]+(f&&u/f),e[1]+(f&&h/f)],[e[0]-(p&&u/p),e[1]-(p&&h/p)]]}},89992:function(t,e,r){\"use strict\";var n=r(34809).isArrayOrTypedArray;t.exports=function(t,e,r){var i,a,o,s,l,c,u=[],h=n(t)?t.length:t,f=n(e)?e.length:e,p=n(t)?t:null,d=n(e)?e:null;p&&(o=(p.length-1)/(p[p.length-1]-p[0])/(h-1)),d&&(s=(d.length-1)/(d[d.length-1]-d[0])/(f-1));var m=1/0,g=-1/0;for(a=0;a<f;a++)for(u[a]=[],l=d?(d[a]-d[0])*s:a/(f-1),i=0;i<h;i++)c=(p?(p[i]-p[0])*o:i/(h-1))-l*r,m=Math.min(c,m),g=Math.max(c,g),u[a][i]=c;var y=1/(g-m),v=-m*y;for(a=0;a<f;a++)for(i=0;i<h;i++)u[a][i]=y*u[a][i]+v;return u}},57075:function(t,e,r){\"use strict\";var n=r(49109),i=r(34809).ensureArray;function a(t,e,r){var n=-.5*r[0]+1.5*e[0],i=-.5*r[1]+1.5*e[1];return[(2*n+t[0])/3,(2*i+t[1])/3]}t.exports=function(t,e,r,o,s,l){var c,u,h,f,p,d,m,g,y,v,x=r[0].length,_=r.length,b=s?3*x-2:x,w=l?3*_-2:_;for(t=i(t,w),e=i(e,w),h=0;h<w;h++)t[h]=i(t[h],b),e[h]=i(e[h],b);for(u=0,f=0;u<_;u++,f+=l?3:1)for(p=t[f],d=e[f],m=r[u],g=o[u],c=0,h=0;c<x;c++,h+=s?3:1)p[h]=m[c],d[h]=g[c];if(s)for(u=0,f=0;u<_;u++,f+=l?3:1){for(c=1,h=3;c<x-1;c++,h+=3)y=n([r[u][c-1],o[u][c-1]],[r[u][c],o[u][c]],[r[u][c+1],o[u][c+1]],s),t[f][h-1]=y[0][0],e[f][h-1]=y[0][1],t[f][h+1]=y[1][0],e[f][h+1]=y[1][1];v=a([t[f][0],e[f][0]],[t[f][2],e[f][2]],[t[f][3],e[f][3]]),t[f][1]=v[0],e[f][1]=v[1],v=a([t[f][b-1],e[f][b-1]],[t[f][b-3],e[f][b-3]],[t[f][b-4],e[f][b-4]]),t[f][b-2]=v[0],e[f][b-2]=v[1]}if(l)for(h=0;h<b;h++){for(f=3;f<w-3;f+=3)y=n([t[f-3][h],e[f-3][h]],[t[f][h],e[f][h]],[t[f+3][h],e[f+3][h]],l),t[f-1][h]=y[0][0],e[f-1][h]=y[0][1],t[f+1][h]=y[1][0],e[f+1][h]=y[1][1];v=a([t[0][h],e[0][h]],[t[2][h],e[2][h]],[t[3][h],e[3][h]]),t[1][h]=v[0],e[1][h]=v[1],v=a([t[w-1][h],e[w-1][h]],[t[w-3][h],e[w-3][h]],[t[w-4][h],e[w-4][h]]),t[w-2][h]=v[0],e[w-2][h]=v[1]}if(s&&l)for(f=1;f<w;f+=(f+1)%3==0?2:1){for(h=3;h<b-3;h+=3)y=n([t[f][h-3],e[f][h-3]],[t[f][h],e[f][h]],[t[f][h+3],e[f][h+3]],s),t[f][h-1]=.5*(t[f][h-1]+y[0][0]),e[f][h-1]=.5*(e[f][h-1]+y[0][1]),t[f][h+1]=.5*(t[f][h+1]+y[1][0]),e[f][h+1]=.5*(e[f][h+1]+y[1][1]);v=a([t[f][0],e[f][0]],[t[f][2],e[f][2]],[t[f][3],e[f][3]]),t[f][1]=.5*(t[f][1]+v[0]),e[f][1]=.5*(e[f][1]+v[1]),v=a([t[f][b-1],e[f][b-1]],[t[f][b-3],e[f][b-3]],[t[f][b-4],e[f][b-4]]),t[f][b-2]=.5*(t[f][b-2]+v[0]),e[f][b-2]=.5*(e[f][b-2]+v[1])}return[t,e]}},45923:function(t){\"use strict\";t.exports={RELATIVE_CULL_TOLERANCE:1e-6}},39848:function(t){\"use strict\";t.exports=function(t,e,r){return e&&r?function(e,r,n,i,a){var o,s,l,c,u,h;e||(e=[]),r*=3,n*=3;var f=i*i,p=1-i,d=p*p,m=p*i*2,g=-3*d,y=3*(d-m),v=3*(m-f),x=3*f,_=a*a,b=_*a,w=1-a,T=w*w,k=T*w;for(h=0;h<t.length;h++)o=g*(u=t[h])[n][r]+y*u[n][r+1]+v*u[n][r+2]+x*u[n][r+3],s=g*u[n+1][r]+y*u[n+1][r+1]+v*u[n+1][r+2]+x*u[n+1][r+3],l=g*u[n+2][r]+y*u[n+2][r+1]+v*u[n+2][r+2]+x*u[n+2][r+3],c=g*u[n+3][r]+y*u[n+3][r+1]+v*u[n+3][r+2]+x*u[n+3][r+3],e[h]=k*o+3*(T*a*s+w*_*l)+b*c;return e}:e?function(e,r,n,i,a){var o,s,l,c;e||(e=[]),r*=3;var u=i*i,h=1-i,f=h*h,p=h*i*2,d=-3*f,m=3*(f-p),g=3*(p-u),y=3*u,v=1-a;for(l=0;l<t.length;l++)o=d*(c=t[l])[n][r]+m*c[n][r+1]+g*c[n][r+2]+y*c[n][r+3],s=d*c[n+1][r]+m*c[n+1][r+1]+g*c[n+1][r+2]+y*c[n+1][r+3],e[l]=v*o+a*s;return e}:r?function(e,r,n,i,a){var o,s,l,c,u,h;e||(e=[]),n*=3;var f=a*a,p=f*a,d=1-a,m=d*d,g=m*d;for(u=0;u<t.length;u++)o=(h=t[u])[n][r+1]-h[n][r],s=h[n+1][r+1]-h[n+1][r],l=h[n+2][r+1]-h[n+2][r],c=h[n+3][r+1]-h[n+3][r],e[u]=g*o+3*(m*a*s+d*f*l)+p*c;return e}:function(e,r,n,i,a){var o,s,l,c;e||(e=[]);var u=1-a;for(l=0;l<t.length;l++)o=(c=t[l])[n][r+1]-c[n][r],s=c[n+1][r+1]-c[n+1][r],e[l]=u*o+a*s;return e}}},41839:function(t){\"use strict\";t.exports=function(t,e,r){return e&&r?function(e,r,n,i,a){var o,s,l,c,u,h;e||(e=[]),r*=3,n*=3;var f=i*i,p=f*i,d=1-i,m=d*d,g=m*d,y=a*a,v=1-a,x=v*v,_=v*a*2,b=-3*x,w=3*(x-_),T=3*(_-y),k=3*y;for(h=0;h<t.length;h++)o=b*(u=t[h])[n][r]+w*u[n+1][r]+T*u[n+2][r]+k*u[n+3][r],s=b*u[n][r+1]+w*u[n+1][r+1]+T*u[n+2][r+1]+k*u[n+3][r+1],l=b*u[n][r+2]+w*u[n+1][r+2]+T*u[n+2][r+2]+k*u[n+3][r+2],c=b*u[n][r+3]+w*u[n+1][r+3]+T*u[n+2][r+3]+k*u[n+3][r+3],e[h]=g*o+3*(m*i*s+d*f*l)+p*c;return e}:e?function(e,r,n,i,a){var o,s,l,c,u,h;e||(e=[]),r*=3;var f=a*a,p=f*a,d=1-a,m=d*d,g=m*d;for(u=0;u<t.length;u++)o=(h=t[u])[n+1][r]-h[n][r],s=h[n+1][r+1]-h[n][r+1],l=h[n+1][r+2]-h[n][r+2],c=h[n+1][r+3]-h[n][r+3],e[u]=g*o+3*(m*a*s+d*f*l)+p*c;return e}:r?function(e,r,n,i,a){var o,s,l,c;e||(e=[]),n*=3;var u=1-i,h=a*a,f=1-a,p=f*f,d=f*a*2,m=-3*p,g=3*(p-d),y=3*(d-h),v=3*h;for(l=0;l<t.length;l++)o=m*(c=t[l])[n][r]+g*c[n+1][r]+y*c[n+2][r]+v*c[n+3][r],s=m*c[n][r+1]+g*c[n+1][r+1]+y*c[n+2][r+1]+v*c[n+3][r+1],e[l]=u*o+i*s;return e}:function(e,r,n,i,a){var o,s,l,c;e||(e=[]);var u=1-i;for(l=0;l<t.length;l++)o=(c=t[l])[n+1][r]-c[n][r],s=c[n+1][r+1]-c[n][r+1],e[l]=u*o+i*s;return e}}},13828:function(t){\"use strict\";t.exports=function(t,e,r,n,i){var a=e-2,o=r-2;return n&&i?function(e,r,n){var i,s,l,c,u,h;e||(e=[]);var f=Math.max(0,Math.min(Math.floor(r),a)),p=Math.max(0,Math.min(Math.floor(n),o)),d=Math.max(0,Math.min(1,r-f)),m=Math.max(0,Math.min(1,n-p));f*=3,p*=3;var g=d*d,y=g*d,v=1-d,x=v*v,_=x*v,b=m*m,w=b*m,T=1-m,k=T*T,A=k*T;for(h=0;h<t.length;h++)i=_*(u=t[h])[p][f]+3*(x*d*u[p][f+1]+v*g*u[p][f+2])+y*u[p][f+3],s=_*u[p+1][f]+3*(x*d*u[p+1][f+1]+v*g*u[p+1][f+2])+y*u[p+1][f+3],l=_*u[p+2][f]+3*(x*d*u[p+2][f+1]+v*g*u[p+2][f+2])+y*u[p+2][f+3],c=_*u[p+3][f]+3*(x*d*u[p+3][f+1]+v*g*u[p+3][f+2])+y*u[p+3][f+3],e[h]=A*i+3*(k*m*s+T*b*l)+w*c;return e}:n?function(e,r,n){e||(e=[]);var i,s,l,c,u,h,f=Math.max(0,Math.min(Math.floor(r),a)),p=Math.max(0,Math.min(Math.floor(n),o)),d=Math.max(0,Math.min(1,r-f)),m=Math.max(0,Math.min(1,n-p));f*=3;var g=d*d,y=g*d,v=1-d,x=v*v,_=x*v,b=1-m;for(u=0;u<t.length;u++)i=b*(h=t[u])[p][f]+m*h[p+1][f],s=b*h[p][f+1]+m*h[p+1][f+1],l=b*h[p][f+2]+m*h[p+1][f+1],c=b*h[p][f+3]+m*h[p+1][f+1],e[u]=_*i+3*(x*d*s+v*g*l)+y*c;return e}:i?function(e,r,n){e||(e=[]);var i,s,l,c,u,h,f=Math.max(0,Math.min(Math.floor(r),a)),p=Math.max(0,Math.min(Math.floor(n),o)),d=Math.max(0,Math.min(1,r-f)),m=Math.max(0,Math.min(1,n-p));p*=3;var g=m*m,y=g*m,v=1-m,x=v*v,_=x*v,b=1-d;for(u=0;u<t.length;u++)i=b*(h=t[u])[p][f]+d*h[p][f+1],s=b*h[p+1][f]+d*h[p+1][f+1],l=b*h[p+2][f]+d*h[p+2][f+1],c=b*h[p+3][f]+d*h[p+3][f+1],e[u]=_*i+3*(x*m*s+v*g*l)+y*c;return e}:function(e,r,n){e||(e=[]);var i,s,l,c,u=Math.max(0,Math.min(Math.floor(r),a)),h=Math.max(0,Math.min(Math.floor(n),o)),f=Math.max(0,Math.min(1,r-u)),p=Math.max(0,Math.min(1,n-h)),d=1-p,m=1-f;for(l=0;l<t.length;l++)i=m*(c=t[l])[h][u]+f*c[h][u+1],s=m*c[h+1][u]+f*c[h+1][u+1],e[l]=d*i+p*s;return e}}},13254:function(t,e,r){\"use strict\";var n=r(34809),i=r(10820),a=r(8432),o=r(43745),s=r(10229);t.exports=function(t,e,r,l){function c(r,i){return n.coerce(t,e,o,r,i)}e._clipPathId=\"clip\"+e.uid+\"carpet\";var u=c(\"color\",s.defaultLine);n.coerceFont(c,\"font\",l.font),c(\"carpet\"),a(t,e,l,c,u),e.a&&e.b?(e.a.length<3&&(e.aaxis.smoothing=0),e.b.length<3&&(e.baxis.smoothing=0),i(t,e,c)||(e.visible=!1),e._cheater&&c(\"cheaterslope\"),c(\"zorder\")):e.visible=!1}},48050:function(t,e,r){\"use strict\";t.exports={attributes:r(43745),supplyDefaults:r(13254),plot:r(87947),calc:r(67525),animatable:!0,isContainer:!0,moduleType:\"trace\",name:\"carpet\",basePlotModule:r(37703),categories:[\"cartesian\",\"svg\",\"carpet\",\"carpetAxis\",\"notLegendIsolatable\",\"noMultiCategory\",\"noHover\",\"noSortingByValue\"],meta:{}}},26571:function(t){\"use strict\";t.exports=function(t,e){for(var r,n=t._fullData.length,i=0;i<n;i++){var a=t._fullData[i];if(a.index!==e.index&&\"carpet\"===a.type&&(r||(r=a),a.carpet===e.carpet))return a}return r}},3685:function(t){\"use strict\";t.exports=function(t,e,r){if(0===t.length)return\"\";var n,i=[],a=r?3:1;for(n=0;n<t.length;n+=a)i.push(t[n]+\",\"+e[n]),r&&n<t.length-a&&(i.push(\"C\"),i.push([t[n+1]+\",\"+e[n+1],t[n+2]+\",\"+e[n+2]+\" \"].join(\" \")));return i.join(r?\"\":\"L\")}},6720:function(t,e,r){\"use strict\";var n=r(34809).isArrayOrTypedArray;t.exports=function(t,e,r){var i;for(n(t)?t.length>e.length&&(t=t.slice(0,e.length)):t=[],i=0;i<e.length;i++)t[i]=r(e[i]);return t}},33163:function(t){\"use strict\";t.exports=function(t,e,r,n,i,a){var o=i[0]*t.dpdx(e),s=i[1]*t.dpdy(r),l=1,c=1;if(a){var u=Math.sqrt(i[0]*i[0]+i[1]*i[1]),h=Math.sqrt(a[0]*a[0]+a[1]*a[1]),f=(i[0]*a[0]+i[1]*a[1])/u/h;c=Math.max(0,f)}var p=180*Math.atan2(s,o)/Math.PI;return p<-90?(p+=180,l=-l):p>90&&(p-=180,l=-l),{angle:p,flip:l,p:t.c2p(n,e,r),offsetMultplier:c}}},87947:function(t,e,r){\"use strict\";var n=r(45568),i=r(62203),a=r(6720),o=r(3685),s=r(33163),l=r(30635),c=r(34809),u=c.strRotate,h=c.strTranslate,f=r(4530);function p(t,e,r,s,l,c,u){var h=\"const-\"+l+\"-lines\",f=r.selectAll(\".\"+h).data(c);f.enter().append(\"path\").classed(h,!0).style(\"vector-effect\",u?\"none\":\"non-scaling-stroke\"),f.each((function(r){var s=r,l=s.x,c=s.y,u=a([],l,t.c2p),h=a([],c,e.c2p),f=\"M\"+o(u,h,s.smoothing);n.select(this).attr(\"d\",f).style(\"stroke-width\",s.width).style(\"stroke\",s.color).style(\"stroke-dasharray\",i.dashStyle(s.dash,s.width)).style(\"fill\",\"none\")})),f.exit().remove()}function d(t,e,r,a,o,c,f,p){var d=c.selectAll(\"text.\"+p).data(f);d.enter().append(\"text\").classed(p,!0);var m=0,g={};return d.each((function(o,c){var f;if(\"auto\"===o.axis.tickangle)f=s(a,e,r,o.xy,o.dxy);else{var p=(o.axis.tickangle+180)*Math.PI/180;f=s(a,e,r,o.xy,[Math.cos(p),Math.sin(p)])}c||(g={angle:f.angle,flip:f.flip});var d=(o.endAnchor?-1:1)*f.flip,y=n.select(this).attr({\"text-anchor\":d>0?\"start\":\"end\",\"data-notex\":1}).call(i.font,o.font).text(o.text).call(l.convertToTspans,t),v=i.bBox(this);y.attr(\"transform\",h(f.p[0],f.p[1])+u(f.angle)+h(o.axis.labelpadding*d,.3*v.height)),m=Math.max(m,v.width+o.axis.labelpadding)})),d.exit().remove(),g.maxExtent=m,g}t.exports=function(t,e,r,i){var l=t._context.staticPlot,u=e.xaxis,h=e.yaxis,f=t._fullLayout._clips;c.makeTraceGroups(i,r,\"trace\").each((function(e){var r=n.select(this),i=e[0],m=i.trace,g=m.aaxis,v=m.baxis,x=c.ensureSingle(r,\"g\",\"minorlayer\"),_=c.ensureSingle(r,\"g\",\"majorlayer\"),b=c.ensureSingle(r,\"g\",\"boundarylayer\"),w=c.ensureSingle(r,\"g\",\"labellayer\");r.style(\"opacity\",m.opacity),p(u,h,_,0,\"a\",g._gridlines,!0),p(u,h,_,0,\"b\",v._gridlines,!0),p(u,h,x,0,\"a\",g._minorgridlines,!0),p(u,h,x,0,\"b\",v._minorgridlines,!0),p(u,h,b,0,\"a-boundary\",g._boundarylines,l),p(u,h,b,0,\"b-boundary\",v._boundarylines,l);var T=d(t,u,h,m,0,w,g._labels,\"a-label\"),k=d(t,u,h,m,0,w,v._labels,\"b-label\");!function(t,e,r,n,i,a,o,l){var u,h,f,p,d=c.aggNums(Math.min,null,r.a),m=c.aggNums(Math.max,null,r.a),g=c.aggNums(Math.min,null,r.b),v=c.aggNums(Math.max,null,r.b);u=.5*(d+m),h=g,f=r.ab2xy(u,h,!0),p=r.dxyda_rough(u,h),void 0===o.angle&&c.extendFlat(o,s(r,i,a,f,r.dxydb_rough(u,h))),y(t,e,r,0,f,p,r.aaxis,i,a,o,\"a-title\"),u=d,h=.5*(g+v),f=r.ab2xy(u,h,!0),p=r.dxydb_rough(u,h),void 0===l.angle&&c.extendFlat(l,s(r,i,a,f,r.dxyda_rough(u,h))),y(t,e,r,0,f,p,r.baxis,i,a,l,\"b-title\")}(t,w,m,0,u,h,T,k),function(t,e,r,n,i){var s,l,u,h,f=r.select(\"#\"+t._clipPathId);f.size()||(f=r.append(\"clipPath\").classed(\"carpetclip\",!0));var p=c.ensureSingle(f,\"path\",\"carpetboundary\"),d=e.clipsegments,m=[];for(h=0;h<d.length;h++)s=d[h],l=a([],s.x,n.c2p),u=a([],s.y,i.c2p),m.push(o(l,u,s.bicubic));var g=\"M\"+m.join(\"L\")+\"Z\";f.attr(\"id\",t._clipPathId),p.attr(\"d\",g)}(m,i,f,u,h)}))};var m=f.LINE_SPACING,g=(1-f.MID_SHIFT)/m+1;function y(t,e,r,a,o,c,f,p,d,y,v){var x=[];f.title.text&&x.push(f.title.text);var _=e.selectAll(\"text.\"+v).data(x),b=y.maxExtent;_.enter().append(\"text\").classed(v,!0),_.each((function(){var e=s(r,p,d,o,c);-1===[\"start\",\"both\"].indexOf(f.showticklabels)&&(b=0);var a=f.title.font.size;b+=a+f.title.offset;var v=(y.angle+(y.flip<0?180:0)-e.angle+450)%360,x=v>90&&v<270,_=n.select(this);_.text(f.title.text).call(l.convertToTspans,t),x&&(b=(-l.lineCount(_)+g)*m*a-b),_.attr(\"transform\",h(e.p[0],e.p[1])+u(e.angle)+h(0,b)).attr(\"text-anchor\",\"middle\").call(i.font,f.title.font)})),_.exit().remove()}},76842:function(t,e,r){\"use strict\";var n=r(45923),i=r(98813).findBin,a=r(57075),o=r(13828),s=r(39848),l=r(41839);t.exports=function(t){var e=t._a,r=t._b,c=e.length,u=r.length,h=t.aaxis,f=t.baxis,p=e[0],d=e[c-1],m=r[0],g=r[u-1],y=e[e.length-1]-e[0],v=r[r.length-1]-r[0],x=y*n.RELATIVE_CULL_TOLERANCE,_=v*n.RELATIVE_CULL_TOLERANCE;p-=x,d+=x,m-=_,g+=_,t.isVisible=function(t,e){return t>p&&t<d&&e>m&&e<g},t.isOccluded=function(t,e){return t<p||t>d||e<m||e>g},t.setScale=function(){var e=t._x,r=t._y,n=a(t._xctrl,t._yctrl,e,r,h.smoothing,f.smoothing);t._xctrl=n[0],t._yctrl=n[1],t.evalxy=o([t._xctrl,t._yctrl],c,u,h.smoothing,f.smoothing),t.dxydi=s([t._xctrl,t._yctrl],h.smoothing,f.smoothing),t.dxydj=l([t._xctrl,t._yctrl],h.smoothing,f.smoothing)},t.i2a=function(t){var r=Math.max(0,Math.floor(t[0]),c-2),n=t[0]-r;return(1-n)*e[r]+n*e[r+1]},t.j2b=function(t){var e=Math.max(0,Math.floor(t[1]),c-2),n=t[1]-e;return(1-n)*r[e]+n*r[e+1]},t.ij2ab=function(e){return[t.i2a(e[0]),t.j2b(e[1])]},t.a2i=function(t){var r=Math.max(0,Math.min(i(t,e),c-2)),n=e[r],a=e[r+1];return Math.max(0,Math.min(c-1,r+(t-n)/(a-n)))},t.b2j=function(t){var e=Math.max(0,Math.min(i(t,r),u-2)),n=r[e],a=r[e+1];return Math.max(0,Math.min(u-1,e+(t-n)/(a-n)))},t.ab2ij=function(e){return[t.a2i(e[0]),t.b2j(e[1])]},t.i2c=function(e,r){return t.evalxy([],e,r)},t.ab2xy=function(n,i,a){if(!a&&(n<e[0]||n>e[c-1]|i<r[0]||i>r[u-1]))return[!1,!1];var o=t.a2i(n),s=t.b2j(i),l=t.evalxy([],o,s);if(a){var h,f,p,d,m=0,g=0,y=[];n<e[0]?(h=0,f=0,m=(n-e[0])/(e[1]-e[0])):n>e[c-1]?(h=c-2,f=1,m=(n-e[c-1])/(e[c-1]-e[c-2])):f=o-(h=Math.max(0,Math.min(c-2,Math.floor(o)))),i<r[0]?(p=0,d=0,g=(i-r[0])/(r[1]-r[0])):i>r[u-1]?(p=u-2,d=1,g=(i-r[u-1])/(r[u-1]-r[u-2])):d=s-(p=Math.max(0,Math.min(u-2,Math.floor(s)))),m&&(t.dxydi(y,h,p,f,d),l[0]+=y[0]*m,l[1]+=y[1]*m),g&&(t.dxydj(y,h,p,f,d),l[0]+=y[0]*g,l[1]+=y[1]*g)}return l},t.c2p=function(t,e,r){return[e.c2p(t[0]),r.c2p(t[1])]},t.p2x=function(t,e,r){return[e.p2c(t[0]),r.p2c(t[1])]},t.dadi=function(t){var r=Math.max(0,Math.min(e.length-2,t));return e[r+1]-e[r]},t.dbdj=function(t){var e=Math.max(0,Math.min(r.length-2,t));return r[e+1]-r[e]},t.dxyda=function(e,r,n,i){var a=t.dxydi(null,e,r,n,i),o=t.dadi(e,n);return[a[0]/o,a[1]/o]},t.dxydb=function(e,r,n,i){var a=t.dxydj(null,e,r,n,i),o=t.dbdj(r,i);return[a[0]/o,a[1]/o]},t.dxyda_rough=function(e,r,n){var i=y*(n||.1),a=t.ab2xy(e+i,r,!0),o=t.ab2xy(e-i,r,!0);return[.5*(a[0]-o[0])/i,.5*(a[1]-o[1])/i]},t.dxydb_rough=function(e,r,n){var i=v*(n||.1),a=t.ab2xy(e,r+i,!0),o=t.ab2xy(e,r-i,!0);return[.5*(a[0]-o[0])/i,.5*(a[1]-o[1])/i]},t.dpdx=function(t){return t._m},t.dpdy=function(t){return t._m}}},13007:function(t,e,r){\"use strict\";var n=r(34809);t.exports=function(t,e,r){var i,a,o,s=[],l=[],c=t[0].length,u=t.length;function h(e,r){var n,i=0,a=0;return e>0&&void 0!==(n=t[r][e-1])&&(a++,i+=n),e<c-1&&void 0!==(n=t[r][e+1])&&(a++,i+=n),r>0&&void 0!==(n=t[r-1][e])&&(a++,i+=n),r<u-1&&void 0!==(n=t[r+1][e])&&(a++,i+=n),i/Math.max(1,a)}var f,p,d,m,g,y,v,x,_,b,w,T=0;for(i=0;i<c;i++)for(a=0;a<u;a++)void 0===t[a][i]&&(s.push(i),l.push(a),t[a][i]=h(i,a)),T=Math.max(T,Math.abs(t[a][i]));if(!s.length)return t;var k=0,A=0,M=s.length;do{for(k=0,o=0;o<M;o++){i=s[o],a=l[o];var S,E,C,L,I,P,z=0,O=0;0===i?(C=e[I=Math.min(c-1,2)],L=e[1],S=t[a][I],O+=(E=t[a][1])+(E-S)*(e[0]-L)/(L-C),z++):i===c-1&&(C=e[I=Math.max(0,c-3)],L=e[c-2],S=t[a][I],O+=(E=t[a][c-2])+(E-S)*(e[c-1]-L)/(L-C),z++),(0===i||i===c-1)&&a>0&&a<u-1&&(f=r[a+1]-r[a],O+=((p=r[a]-r[a-1])*t[a+1][i]+f*t[a-1][i])/(p+f),z++),0===a?(C=r[P=Math.min(u-1,2)],L=r[1],S=t[P][i],O+=(E=t[1][i])+(E-S)*(r[0]-L)/(L-C),z++):a===u-1&&(C=r[P=Math.max(0,u-3)],L=r[u-2],S=t[P][i],O+=(E=t[u-2][i])+(E-S)*(r[u-1]-L)/(L-C),z++),(0===a||a===u-1)&&i>0&&i<c-1&&(f=e[i+1]-e[i],O+=((p=e[i]-e[i-1])*t[a][i+1]+f*t[a][i-1])/(p+f),z++),z?O/=z:(d=e[i+1]-e[i],m=e[i]-e[i-1],x=(g=r[a+1]-r[a])*(y=r[a]-r[a-1])*(g+y),O=((v=d*m*(d+m))*(y*t[a+1][i]+g*t[a-1][i])+x*(m*t[a][i+1]+d*t[a][i-1]))/(x*(m+d)+v*(y+g))),k+=(b=(_=O-t[a][i])/T)*b,w=z?0:.85,t[a][i]+=_*(1+w)}k=Math.sqrt(k)}while(A++<100&&k>1e-5);return n.log(\"Smoother converged to\",k,\"after\",A,\"iterations\"),t}},10820:function(t,e,r){\"use strict\";var n=r(34809).isArray1D;t.exports=function(t,e,r){var i=r(\"x\"),a=i&&i.length,o=r(\"y\"),s=o&&o.length;if(!a&&!s)return!1;if(e._cheater=!i,a&&!n(i)||s&&!n(o))e._length=null;else{var l=a?i.length:1/0;s&&(l=Math.min(l,o.length)),e.a&&e.a.length&&(l=Math.min(l,e.a.length)),e.b&&e.b.length&&(l=Math.min(l,e.b.length)),e._length=l}return!0}},92802:function(t,e,r){\"use strict\";var n=r(3208).rb,i=r(6893),a=r(87163),o=r(9829),s=r(10229).defaultLine,l=r(93049).extendFlat,c=i.marker.line;t.exports=l({locations:{valType:\"data_array\",editType:\"calc\"},locationmode:i.locationmode,z:{valType:\"data_array\",editType:\"calc\"},geojson:l({},i.geojson,{}),featureidkey:i.featureidkey,text:l({},i.text,{}),hovertext:l({},i.hovertext,{}),marker:{line:{color:l({},c.color,{dflt:s}),width:l({},c.width,{dflt:1}),editType:\"calc\"},opacity:{valType:\"number\",arrayOk:!0,min:0,max:1,dflt:1,editType:\"style\"},editType:\"calc\"},selected:{marker:{opacity:i.selected.marker.opacity,editType:\"plot\"},editType:\"plot\"},unselected:{marker:{opacity:i.unselected.marker.opacity,editType:\"plot\"},editType:\"plot\"},hoverinfo:l({},o.hoverinfo,{editType:\"calc\",flags:[\"location\",\"z\",\"text\",\"name\"]}),hovertemplate:n(),showlegend:l({},o.showlegend,{dflt:!1})},a(\"\",{cLetter:\"z\",editTypeOverride:\"calc\"}))},12702:function(t,e,r){\"use strict\";var n=r(10721),i=r(63821).BADNUM,a=r(28379),o=r(99203),s=r(48861);function l(t){return t&&\"string\"==typeof t}t.exports=function(t,e){var r,c=e._length,u=new Array(c);r=e.geojson?function(t){return l(t)||n(t)}:l;for(var h=0;h<c;h++){var f=u[h]={},p=e.locations[h],d=e.z[h];r(p)&&n(d)?(f.loc=p,f.z=d):(f.loc=null,f.z=i),f.index=h}return o(u,e),a(t,e,{vals:e.z,containerStr:\"\",cLetter:\"z\"}),s(u,e),u}},51893:function(t,e,r){\"use strict\";var n=r(34809),i=r(39356),a=r(92802);t.exports=function(t,e,r,o){function s(r,i){return n.coerce(t,e,a,r,i)}var l=s(\"locations\"),c=s(\"z\");if(l&&l.length&&n.isArrayOrTypedArray(c)&&c.length){e._length=Math.min(l.length,c.length);var u,h=s(\"geojson\");(\"string\"==typeof h&&\"\"!==h||n.isPlainObject(h))&&(u=\"geojson-id\"),\"geojson-id\"===s(\"locationmode\",u)&&s(\"featureidkey\"),s(\"text\"),s(\"hovertext\"),s(\"hovertemplate\"),s(\"marker.line.width\")&&s(\"marker.line.color\"),s(\"marker.opacity\"),i(t,e,o,s,{prefix:\"\",cLetter:\"z\"}),n.coerceSelectionMarkerOpacity(e,s)}else e.visible=!1}},38414:function(t){\"use strict\";t.exports=function(t,e,r,n,i){t.location=e.location,t.z=e.z;var a=n[i];return a.fIn&&a.fIn.properties&&(t.properties=a.fIn.properties),t.ct=a.ct,t}},94125:function(t,e,r){\"use strict\";var n=r(29714),i=r(92802),a=r(34809).fillText;t.exports=function(t,e,r){var o,s,l,c,u=t.cd,h=u[0].trace,f=t.subplot,p=[e,r],d=[e+360,r];for(s=0;s<u.length;s++)if(c=!1,(o=u[s])._polygons){for(l=0;l<o._polygons.length;l++)o._polygons[l].contains(p)&&(c=!c),o._polygons[l].contains(d)&&(c=!c);if(c)break}if(c&&o)return t.x0=t.x1=t.xa.c2p(o.ct),t.y0=t.y1=t.ya.c2p(o.ct),t.index=o.index,t.location=o.loc,t.z=o.z,t.zLabel=n.tickText(f.mockAxis,f.mockAxis.c2l(o.z),\"hover\").text,t.hovertemplate=o.hovertemplate,function(t,e,r){if(!e.hovertemplate){var n=r.hi||e.hoverinfo,o=String(r.loc),s=\"all\"===n?i.hoverinfo.flags:n.split(\"+\"),l=-1!==s.indexOf(\"name\"),c=-1!==s.indexOf(\"location\"),u=-1!==s.indexOf(\"z\"),h=-1!==s.indexOf(\"text\"),f=[];!l&&c?t.nameOverride=o:(l&&(t.nameOverride=e.name),c&&f.push(o)),u&&f.push(t.zLabel),h&&a(r,e,f),t.extraText=f.join(\"<br>\")}}(t,h,o),[t]}},58075:function(t,e,r){\"use strict\";t.exports={attributes:r(92802),supplyDefaults:r(51893),colorbar:r(12431),calc:r(12702),calcGeoJSON:r(4700).calcGeoJSON,plot:r(4700).plot,style:r(59342).style,styleOnSelect:r(59342).styleOnSelect,hoverPoints:r(94125),eventData:r(38414),selectPoints:r(43727),moduleType:\"trace\",name:\"choropleth\",basePlotModule:r(47544),categories:[\"geo\",\"noOpacity\",\"showLegend\"],meta:{}}},4700:function(t,e,r){\"use strict\";var n=r(45568),i=r(34809),a=r(3994),o=r(11577).getTopojsonFeatures,s=r(32919).findExtremes,l=r(59342).style;t.exports={calcGeoJSON:function(t,e){for(var r=t[0].trace,n=e[r.geo],i=n._subplot,l=r.locationmode,c=r._length,u=\"geojson-id\"===l?a.extractTraceFeature(t):o(r,i.topojson),h=[],f=[],p=0;p<c;p++){var d=t[p],m=\"geojson-id\"===l?d.fOut:a.locationToFeature(l,d.loc,u);if(m){d.geojson=m,d.ct=m.properties.ct,d._polygons=a.feature2polygons(m);var g=a.computeBbox(m);h.push(g[0],g[2]),f.push(g[1],g[3])}else d.geojson=null}if(\"geojson\"===n.fitbounds&&\"geojson-id\"===l){var y=a.computeBbox(a.getTraceGeojson(r));h=[y[0],y[2]],f=[y[1],y[3]]}var v={padded:!0};r._extremes.lon=s(n.lonaxis._ax,h,v),r._extremes.lat=s(n.lataxis._ax,f,v)},plot:function(t,e,r){var a=e.layers.backplot.select(\".choroplethlayer\");i.makeTraceGroups(a,r,\"trace choropleth\").each((function(e){var r=n.select(this).selectAll(\"path.choroplethlocation\").data(i.identity);r.enter().append(\"path\").classed(\"choroplethlocation\",!0),r.exit().remove(),l(t,e)}))}}},43727:function(t){\"use strict\";t.exports=function(t,e){var r,n,i,a,o,s=t.cd,l=t.xaxis,c=t.yaxis,u=[];if(!1===e)for(r=0;r<s.length;r++)s[r].selected=0;else for(r=0;r<s.length;r++)(i=(n=s[r]).ct)&&(a=l.c2p(i),o=c.c2p(i),e.contains([a,o],null,r,t)?(u.push({pointNumber:r,lon:i[0],lat:i[1]}),n.selected=1):n.selected=0);return u}},59342:function(t,e,r){\"use strict\";var n=r(45568),i=r(78766),a=r(62203),o=r(88856);function s(t,e){var r=e[0].trace,s=e[0].node3.selectAll(\".choroplethlocation\"),l=r.marker||{},c=l.line||{},u=o.makeColorScaleFuncFromTrace(r);s.each((function(t){n.select(this).attr(\"fill\",u(t.z)).call(i.stroke,t.mlc||c.color).call(a.dashLine,\"\",t.mlw||c.width||0).style(\"opacity\",l.opacity)})),a.selectedPointStyle(s,r)}t.exports={style:function(t,e){e&&s(0,e)},styleOnSelect:function(t,e){var r=e[0].node3,n=e[0].trace;n.selectedpoints?a.selectedPointStyle(r.selectAll(\".choroplethlocation\"),n):s(0,e)}}},34770:function(t,e,r){\"use strict\";var n=r(92802),i=r(87163),a=r(3208).rb,o=r(9829),s=r(93049).extendFlat;t.exports=s({locations:{valType:\"data_array\",editType:\"calc\"},z:{valType:\"data_array\",editType:\"calc\"},geojson:{valType:\"any\",editType:\"calc\"},featureidkey:s({},n.featureidkey,{}),below:{valType:\"string\",editType:\"plot\"},text:n.text,hovertext:n.hovertext,marker:{line:{color:s({},n.marker.line.color,{editType:\"plot\"}),width:s({},n.marker.line.width,{editType:\"plot\"}),editType:\"calc\"},opacity:s({},n.marker.opacity,{editType:\"plot\"}),editType:\"calc\"},selected:{marker:{opacity:s({},n.selected.marker.opacity,{editType:\"plot\"}),editType:\"plot\"},editType:\"plot\"},unselected:{marker:{opacity:s({},n.unselected.marker.opacity,{editType:\"plot\"}),editType:\"plot\"},editType:\"plot\"},hoverinfo:n.hoverinfo,hovertemplate:a({},{keys:[\"properties\"]}),showlegend:s({},o.showlegend,{dflt:!1})},i(\"\",{cLetter:\"z\",editTypeOverride:\"calc\"}))},40980:function(t,e,r){\"use strict\";var n=r(10721),i=r(34809),a=r(88856),o=r(62203),s=r(39532).makeBlank,l=r(3994);function c(t){var e,r=t[0].trace,n=r._opts;if(r.selectedpoints){for(var a=o.makeSelectedPointStyleFns(r),s=0;s<t.length;s++){var l=t[s];l.fOut&&(l.fOut.properties.mo2=a.selectedOpacityFn(l))}e={type:\"identity\",property:\"mo2\"}}else e=i.isArrayOrTypedArray(r.marker.opacity)?{type:\"identity\",property:\"mo\"}:r.marker.opacity;return i.extendFlat(n.fill.paint,{\"fill-opacity\":e}),i.extendFlat(n.line.paint,{\"line-opacity\":e}),n}t.exports={convert:function(t){var e=t[0].trace,r=!0===e.visible&&0!==e._length,o={layout:{visibility:\"none\"},paint:{}},u={layout:{visibility:\"none\"},paint:{}},h=e._opts={fill:o,line:u,geojson:s()};if(!r)return h;var f=l.extractTraceFeature(t);if(!f)return h;var p,d,m,g=a.makeColorScaleFuncFromTrace(e),y=e.marker,v=y.line||{};i.isArrayOrTypedArray(y.opacity)&&(p=function(t){var e=t.mo;return n(e)?+i.constrain(e,0,1):0}),i.isArrayOrTypedArray(v.color)&&(d=function(t){return t.mlc}),i.isArrayOrTypedArray(v.width)&&(m=function(t){return t.mlw});for(var x=0;x<t.length;x++){var _=t[x],b=_.fOut;if(b){var w=b.properties;w.fc=g(_.z),p&&(w.mo=p(_)),d&&(w.mlc=d(_)),m&&(w.mlw=m(_)),_.ct=w.ct,_._polygons=l.feature2polygons(b)}}var T=p?{type:\"identity\",property:\"mo\"}:y.opacity;return i.extendFlat(o.paint,{\"fill-color\":{type:\"identity\",property:\"fc\"},\"fill-opacity\":T}),i.extendFlat(u.paint,{\"line-color\":d?{type:\"identity\",property:\"mlc\"}:v.color,\"line-width\":m?{type:\"identity\",property:\"mlw\"}:v.width,\"line-opacity\":T}),o.layout.visibility=\"visible\",u.layout.visibility=\"visible\",h.geojson={type:\"FeatureCollection\",features:f},c(t),h},convertOnSelect:c}},94149:function(t,e,r){\"use strict\";var n=r(34809),i=r(39356),a=r(34770);t.exports=function(t,e,r,o){function s(r,i){return n.coerce(t,e,a,r,i)}var l=s(\"locations\"),c=s(\"z\"),u=s(\"geojson\");n.isArrayOrTypedArray(l)&&l.length&&n.isArrayOrTypedArray(c)&&c.length&&(\"string\"==typeof u&&\"\"!==u||n.isPlainObject(u))?(s(\"featureidkey\"),e._length=Math.min(l.length,c.length),s(\"below\"),s(\"text\"),s(\"hovertext\"),s(\"hovertemplate\"),s(\"marker.line.width\")&&s(\"marker.line.color\"),s(\"marker.opacity\"),i(t,e,o,s,{prefix:\"\",cLetter:\"z\"}),n.coerceSelectionMarkerOpacity(e,s)):e.visible=!1}},9419:function(t,e,r){\"use strict\";t.exports={attributes:r(34770),supplyDefaults:r(94149),colorbar:r(12431),calc:r(12702),plot:r(30316),hoverPoints:r(94125),eventData:r(38414),selectPoints:r(43727),styleOnSelect:function(t,e){e&&e[0].trace._glTrace.updateOnSelect(e)},getBelow:function(t,e){for(var r=e.getMapLayers(),n=r.length-2;n>=0;n--){var i=r[n].id;if(\"string\"==typeof i&&0===i.indexOf(\"water\"))for(var a=n+1;a<r.length;a++)if(\"string\"==typeof(i=r[a].id)&&-1===i.indexOf(\"plotly-\"))return i}},moduleType:\"trace\",name:\"choroplethmap\",basePlotModule:r(34091),categories:[\"map\",\"gl\",\"noOpacity\",\"showLegend\"],meta:{hr_name:\"choropleth_map\"}}},30316:function(t,e,r){\"use strict\";var n=r(40980).convert,i=r(40980).convertOnSelect,a=r(8814).traceLayerPrefix;function o(t,e){this.type=\"choroplethmap\",this.subplot=t,this.uid=e,this.sourceId=\"source-\"+e,this.layerList=[[\"fill\",a+e+\"-fill\"],[\"line\",a+e+\"-line\"]],this.below=null}var s=o.prototype;s.update=function(t){this._update(n(t)),t[0].trace._glTrace=this},s.updateOnSelect=function(t){this._update(i(t))},s._update=function(t){var e=this.subplot,r=this.layerList,n=e.belowLookup[\"trace-\"+this.uid];e.map.getSource(this.sourceId).setData(t.geojson),n!==this.below&&(this._removeLayers(),this._addLayers(t,n),this.below=n);for(var i=0;i<r.length;i++){var a=r[i],o=a[0],s=a[1],l=t[o];e.setOptions(s,\"setLayoutProperty\",l.layout),\"visible\"===l.layout.visibility&&e.setOptions(s,\"setPaintProperty\",l.paint)}},s._addLayers=function(t,e){for(var r=this.subplot,n=this.layerList,i=this.sourceId,a=0;a<n.length;a++){var o=n[a],s=o[0],l=t[s];r.addLayer({type:s,id:o[1],source:i,layout:l.layout,paint:l.paint},e)}},s._removeLayers=function(){for(var t=this.subplot.map,e=this.layerList,r=e.length-1;r>=0;r--)t.removeLayer(e[r][1])},s.dispose=function(){var t=this.subplot.map;this._removeLayers(),t.removeSource(this.sourceId)},t.exports=function(t,e){var r=e[0].trace,i=new o(t,r.uid),a=i.sourceId,s=n(e),l=i.below=t.belowLookup[\"trace-\"+r.uid];return t.map.addSource(a,{type:\"geojson\",data:s.geojson}),i._addLayers(s,l),e[0].trace._glTrace=i,i}},86227:function(t,e,r){\"use strict\";var n=r(92802),i=r(87163),a=r(3208).rb,o=r(9829),s=r(93049).extendFlat;t.exports=s({locations:{valType:\"data_array\",editType:\"calc\"},z:{valType:\"data_array\",editType:\"calc\"},geojson:{valType:\"any\",editType:\"calc\"},featureidkey:s({},n.featureidkey,{}),below:{valType:\"string\",editType:\"plot\"},text:n.text,hovertext:n.hovertext,marker:{line:{color:s({},n.marker.line.color,{editType:\"plot\"}),width:s({},n.marker.line.width,{editType:\"plot\"}),editType:\"calc\"},opacity:s({},n.marker.opacity,{editType:\"plot\"}),editType:\"calc\"},selected:{marker:{opacity:s({},n.selected.marker.opacity,{editType:\"plot\"}),editType:\"plot\"},editType:\"plot\"},unselected:{marker:{opacity:s({},n.unselected.marker.opacity,{editType:\"plot\"}),editType:\"plot\"},editType:\"plot\"},hoverinfo:n.hoverinfo,hovertemplate:a({},{keys:[\"properties\"]}),showlegend:s({},o.showlegend,{dflt:!1})},i(\"\",{cLetter:\"z\",editTypeOverride:\"calc\"}))},51335:function(t,e,r){\"use strict\";var n=r(10721),i=r(34809),a=r(88856),o=r(62203),s=r(39532).makeBlank,l=r(3994);function c(t){var e,r=t[0].trace,n=r._opts;if(r.selectedpoints){for(var a=o.makeSelectedPointStyleFns(r),s=0;s<t.length;s++){var l=t[s];l.fOut&&(l.fOut.properties.mo2=a.selectedOpacityFn(l))}e={type:\"identity\",property:\"mo2\"}}else e=i.isArrayOrTypedArray(r.marker.opacity)?{type:\"identity\",property:\"mo\"}:r.marker.opacity;return i.extendFlat(n.fill.paint,{\"fill-opacity\":e}),i.extendFlat(n.line.paint,{\"line-opacity\":e}),n}t.exports={convert:function(t){var e=t[0].trace,r=!0===e.visible&&0!==e._length,o={layout:{visibility:\"none\"},paint:{}},u={layout:{visibility:\"none\"},paint:{}},h=e._opts={fill:o,line:u,geojson:s()};if(!r)return h;var f=l.extractTraceFeature(t);if(!f)return h;var p,d,m,g=a.makeColorScaleFuncFromTrace(e),y=e.marker,v=y.line||{};i.isArrayOrTypedArray(y.opacity)&&(p=function(t){var e=t.mo;return n(e)?+i.constrain(e,0,1):0}),i.isArrayOrTypedArray(v.color)&&(d=function(t){return t.mlc}),i.isArrayOrTypedArray(v.width)&&(m=function(t){return t.mlw});for(var x=0;x<t.length;x++){var _=t[x],b=_.fOut;if(b){var w=b.properties;w.fc=g(_.z),p&&(w.mo=p(_)),d&&(w.mlc=d(_)),m&&(w.mlw=m(_)),_.ct=w.ct,_._polygons=l.feature2polygons(b)}}var T=p?{type:\"identity\",property:\"mo\"}:y.opacity;return i.extendFlat(o.paint,{\"fill-color\":{type:\"identity\",property:\"fc\"},\"fill-opacity\":T}),i.extendFlat(u.paint,{\"line-color\":d?{type:\"identity\",property:\"mlc\"}:v.color,\"line-width\":m?{type:\"identity\",property:\"mlw\"}:v.width,\"line-opacity\":T}),o.layout.visibility=\"visible\",u.layout.visibility=\"visible\",h.geojson={type:\"FeatureCollection\",features:f},c(t),h},convertOnSelect:c}},8244:function(t,e,r){\"use strict\";var n=r(34809),i=r(39356),a=r(86227);t.exports=function(t,e,r,o){function s(r,i){return n.coerce(t,e,a,r,i)}var l=s(\"locations\"),c=s(\"z\"),u=s(\"geojson\");n.isArrayOrTypedArray(l)&&l.length&&n.isArrayOrTypedArray(c)&&c.length&&(\"string\"==typeof u&&\"\"!==u||n.isPlainObject(u))?(s(\"featureidkey\"),e._length=Math.min(l.length,c.length),s(\"below\"),s(\"text\"),s(\"hovertext\"),s(\"hovertemplate\"),s(\"marker.line.width\")&&s(\"marker.line.color\"),s(\"marker.opacity\"),i(t,e,o,s,{prefix:\"\",cLetter:\"z\"}),n.coerceSelectionMarkerOpacity(e,s)):e.visible=!1}},28128:function(t,e,r){\"use strict\";[\"*choroplethmapbox* trace is deprecated!\",\"Please consider switching to the *choroplethmap* trace type and `map` subplots.\",\"Learn more at: https://plotly.com/javascript/maplibre-migration/\"].join(\" \"),t.exports={attributes:r(86227),supplyDefaults:r(8244),colorbar:r(12431),calc:r(12702),plot:r(33501),hoverPoints:r(94125),eventData:r(38414),selectPoints:r(43727),styleOnSelect:function(t,e){e&&e[0].trace._glTrace.updateOnSelect(e)},getBelow:function(t,e){for(var r=e.getMapLayers(),n=r.length-2;n>=0;n--){var i=r[n].id;if(\"string\"==typeof i&&0===i.indexOf(\"water\"))for(var a=n+1;a<r.length;a++)if(\"string\"==typeof(i=r[a].id)&&-1===i.indexOf(\"plotly-\"))return i}},moduleType:\"trace\",name:\"choroplethmapbox\",basePlotModule:r(68192),categories:[\"mapbox\",\"gl\",\"noOpacity\",\"showLegend\"],meta:{hr_name:\"choropleth_mapbox\"}}},33501:function(t,e,r){\"use strict\";var n=r(51335).convert,i=r(51335).convertOnSelect,a=r(44245).traceLayerPrefix;function o(t,e){this.type=\"choroplethmapbox\",this.subplot=t,this.uid=e,this.sourceId=\"source-\"+e,this.layerList=[[\"fill\",a+e+\"-fill\"],[\"line\",a+e+\"-line\"]],this.below=null}var s=o.prototype;s.update=function(t){this._update(n(t)),t[0].trace._glTrace=this},s.updateOnSelect=function(t){this._update(i(t))},s._update=function(t){var e=this.subplot,r=this.layerList,n=e.belowLookup[\"trace-\"+this.uid];e.map.getSource(this.sourceId).setData(t.geojson),n!==this.below&&(this._removeLayers(),this._addLayers(t,n),this.below=n);for(var i=0;i<r.length;i++){var a=r[i],o=a[0],s=a[1],l=t[o];e.setOptions(s,\"setLayoutProperty\",l.layout),\"visible\"===l.layout.visibility&&e.setOptions(s,\"setPaintProperty\",l.paint)}},s._addLayers=function(t,e){for(var r=this.subplot,n=this.layerList,i=this.sourceId,a=0;a<n.length;a++){var o=n[a],s=o[0],l=t[s];r.addLayer({type:s,id:o[1],source:i,layout:l.layout,paint:l.paint},e)}},s._removeLayers=function(){for(var t=this.subplot.map,e=this.layerList,r=e.length-1;r>=0;r--)t.removeLayer(e[r][1])},s.dispose=function(){var t=this.subplot.map;this._removeLayers(),t.removeSource(this.sourceId)},t.exports=function(t,e){var r=e[0].trace,i=new o(t,r.uid),a=i.sourceId,s=n(e),l=i.below=t.belowLookup[\"trace-\"+r.uid];return t.map.addSource(a,{type:\"geojson\",data:s.geojson}),i._addLayers(s,l),e[0].trace._glTrace=i,i}},49865:function(t,e,r){\"use strict\";var n=r(87163),i=r(80712).axisHoverFormat,a=r(3208).rb,o=r(42450),s=r(9829),l=r(93049).extendFlat,c={x:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},y:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},z:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},u:{valType:\"data_array\",editType:\"calc\"},v:{valType:\"data_array\",editType:\"calc\"},w:{valType:\"data_array\",editType:\"calc\"},sizemode:{valType:\"enumerated\",values:[\"scaled\",\"absolute\",\"raw\"],editType:\"calc\",dflt:\"scaled\"},sizeref:{valType:\"number\",editType:\"calc\",min:0},anchor:{valType:\"enumerated\",editType:\"calc\",values:[\"tip\",\"tail\",\"cm\",\"center\"],dflt:\"cm\"},text:{valType:\"string\",dflt:\"\",arrayOk:!0,editType:\"calc\"},hovertext:{valType:\"string\",dflt:\"\",arrayOk:!0,editType:\"calc\"},hovertemplate:a({editType:\"calc\"},{keys:[\"norm\"]}),uhoverformat:i(\"u\",1),vhoverformat:i(\"v\",1),whoverformat:i(\"w\",1),xhoverformat:i(\"x\"),yhoverformat:i(\"y\"),zhoverformat:i(\"z\"),showlegend:l({},s.showlegend,{dflt:!1})};l(c,n(\"\",{colorAttr:\"u/v/w norm\",showScaleDflt:!0,editTypeOverride:\"calc\"})),[\"opacity\",\"lightposition\",\"lighting\"].forEach((function(t){c[t]=o[t]})),c.hoverinfo=l({},s.hoverinfo,{editType:\"calc\",flags:[\"x\",\"y\",\"z\",\"u\",\"v\",\"w\",\"norm\",\"text\",\"name\"],dflt:\"x+y+z+norm+text+name\"}),c.transforms=void 0,t.exports=c},93805:function(t,e,r){\"use strict\";var n=r(28379);t.exports=function(t,e){for(var r=e.u,i=e.v,a=e.w,o=Math.min(e.x.length,e.y.length,e.z.length,r.length,i.length,a.length),s=-1/0,l=1/0,c=0;c<o;c++){var u=r[c],h=i[c],f=a[c],p=Math.sqrt(u*u+h*h+f*f);s=Math.max(s,p),l=Math.min(l,p)}e._len=o,e._normMax=s,n(t,e,{vals:[l,s],containerStr:\"\",cLetter:\"c\"})}},49393:function(t,e,r){\"use strict\";var n=r(99098).gl_cone3d,i=r(99098).gl_cone3d.createConeMesh,a=r(34809).simpleMap,o=r(46998).parseColorScale,s=r(88856).extractOpts,l=r(34809).isArrayOrTypedArray,c=r(88239);function u(t,e){this.scene=t,this.uid=e,this.mesh=null,this.data=null}var h=u.prototype;h.handlePick=function(t){if(t.object===this.mesh){var e=t.index=t.data.index,r=this.data.x[e],n=this.data.y[e],i=this.data.z[e],a=this.data.u[e],o=this.data.v[e],s=this.data.w[e];t.traceCoordinate=[r,n,i,a,o,s,Math.sqrt(a*a+o*o+s*s)];var c=this.data.hovertext||this.data.text;return l(c)&&void 0!==c[e]?t.textLabel=c[e]:c&&(t.textLabel=c),!0}};var f={xaxis:0,yaxis:1,zaxis:2},p={tip:1,tail:0,cm:.25,center:.5},d={tip:1,tail:1,cm:.75,center:.5};function m(t,e){var r=t.fullSceneLayout,i=t.dataScale,l={};function u(t,e){var n=r[e],o=i[f[e]];return a(t,(function(t){return n.d2l(t)*o}))}l.vectors=c(u(e.u,\"xaxis\"),u(e.v,\"yaxis\"),u(e.w,\"zaxis\"),e._len),l.positions=c(u(e.x,\"xaxis\"),u(e.y,\"yaxis\"),u(e.z,\"zaxis\"),e._len);var h=s(e);l.colormap=o(e),l.vertexIntensityBounds=[h.min/e._normMax,h.max/e._normMax],l.coneOffset=p[e.anchor];var m=e.sizemode;\"scaled\"===m?l.coneSize=e.sizeref||.5:\"absolute\"===m?l.coneSize=e.sizeref&&e._normMax?e.sizeref/e._normMax:.5:\"raw\"===m&&(l.coneSize=e.sizeref),l.coneSizemode=m;var g=n(l),y=e.lightposition;return g.lightPosition=[y.x,y.y,y.z],g.ambient=e.lighting.ambient,g.diffuse=e.lighting.diffuse,g.specular=e.lighting.specular,g.roughness=e.lighting.roughness,g.fresnel=e.lighting.fresnel,g.opacity=e.opacity,e._pad=d[e.anchor]*g.vectorScale*g.coneScale*e._normMax,g}h.update=function(t){this.data=t;var e=m(this.scene,t);this.mesh.update(e)},h.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()},t.exports=function(t,e){var r=t.glplot.gl,n=m(t,e),a=i(r,n),o=new u(t,e.uid);return o.mesh=a,o.data=e,a._trace=o,t.glplot.add(a),o}},17326:function(t,e,r){\"use strict\";var n=r(34809),i=r(39356),a=r(49865);t.exports=function(t,e,r,o){function s(r,i){return n.coerce(t,e,a,r,i)}var l=s(\"u\"),c=s(\"v\"),u=s(\"w\"),h=s(\"x\"),f=s(\"y\"),p=s(\"z\");if(l&&l.length&&c&&c.length&&u&&u.length&&h&&h.length&&f&&f.length&&p&&p.length){var d=s(\"sizemode\");s(\"sizeref\",\"raw\"===d?1:.5),s(\"anchor\"),s(\"lighting.ambient\"),s(\"lighting.diffuse\"),s(\"lighting.specular\"),s(\"lighting.roughness\"),s(\"lighting.fresnel\"),s(\"lightposition.x\"),s(\"lightposition.y\"),s(\"lightposition.z\"),i(t,e,o,s,{prefix:\"\",cLetter:\"c\"}),s(\"text\"),s(\"hovertext\"),s(\"hovertemplate\"),s(\"uhoverformat\"),s(\"vhoverformat\"),s(\"whoverformat\"),s(\"xhoverformat\"),s(\"yhoverformat\"),s(\"zhoverformat\"),e._length=null}else e.visible=!1}},47050:function(t,e,r){\"use strict\";t.exports={moduleType:\"trace\",name:\"cone\",basePlotModule:r(2487),categories:[\"gl3d\",\"showLegend\"],attributes:r(49865),supplyDefaults:r(17326),colorbar:{min:\"cmin\",max:\"cmax\"},calc:r(93805),plot:r(49393),eventData:function(t,e){return t.norm=e.traceCoordinate[6],t},meta:{}}},52240:function(t,e,r){\"use strict\";var n=r(81658),i=r(36640),a=r(80712),o=a.axisHoverFormat,s=a.descriptionOnlyNumbers,l=r(87163),c=r(94850).T,u=r(80337),h=r(93049).extendFlat,f=r(20726),p=f.COMPARISON_OPS2,d=f.INTERVAL_OPS,m=i.line;t.exports=h({z:n.z,x:n.x,x0:n.x0,dx:n.dx,y:n.y,y0:n.y0,dy:n.dy,xperiod:n.xperiod,yperiod:n.yperiod,xperiod0:i.xperiod0,yperiod0:i.yperiod0,xperiodalignment:n.xperiodalignment,yperiodalignment:n.yperiodalignment,text:n.text,hovertext:n.hovertext,transpose:n.transpose,xtype:n.xtype,ytype:n.ytype,xhoverformat:o(\"x\"),yhoverformat:o(\"y\"),zhoverformat:o(\"z\",1),hovertemplate:n.hovertemplate,texttemplate:h({},n.texttemplate,{}),textfont:h({},n.textfont,{}),hoverongaps:n.hoverongaps,connectgaps:h({},n.connectgaps,{}),fillcolor:{valType:\"color\",editType:\"calc\"},autocontour:{valType:\"boolean\",dflt:!0,editType:\"calc\",impliedEdits:{\"contours.start\":void 0,\"contours.end\":void 0,\"contours.size\":void 0}},ncontours:{valType:\"integer\",dflt:15,min:1,editType:\"calc\"},contours:{type:{valType:\"enumerated\",values:[\"levels\",\"constraint\"],dflt:\"levels\",editType:\"calc\"},start:{valType:\"number\",dflt:null,editType:\"plot\",impliedEdits:{\"^autocontour\":!1}},end:{valType:\"number\",dflt:null,editType:\"plot\",impliedEdits:{\"^autocontour\":!1}},size:{valType:\"number\",dflt:null,min:0,editType:\"plot\",impliedEdits:{\"^autocontour\":!1}},coloring:{valType:\"enumerated\",values:[\"fill\",\"heatmap\",\"lines\",\"none\"],dflt:\"fill\",editType:\"calc\"},showlines:{valType:\"boolean\",dflt:!0,editType:\"plot\"},showlabels:{valType:\"boolean\",dflt:!1,editType:\"plot\"},labelfont:u({editType:\"plot\",colorEditType:\"style\"}),labelformat:{valType:\"string\",dflt:\"\",editType:\"plot\",description:s(\"contour label\")},operation:{valType:\"enumerated\",values:[].concat(p).concat(d),dflt:\"=\",editType:\"calc\"},value:{valType:\"any\",dflt:0,editType:\"calc\"},editType:\"calc\",impliedEdits:{autocontour:!1}},line:{color:h({},m.color,{editType:\"style+colorbars\"}),width:{valType:\"number\",min:0,editType:\"style+colorbars\"},dash:c,smoothing:h({},m.smoothing,{}),editType:\"plot\"},zorder:i.zorder},l(\"\",{cLetter:\"z\",autoColorDflt:!1,editTypeOverride:\"calc\"}))},40352:function(t,e,r){\"use strict\";var n=r(88856),i=r(51670),a=r(62475),o=r(48715);t.exports=function(t,e){var r=i(t,e),s=r[0].z;a(e,s);var l,c=e.contours,u=n.extractOpts(e);if(\"heatmap\"===c.coloring&&u.auto&&!1===e.autocontour){var h=c.start,f=o(c),p=c.size||1,d=Math.floor((f-h)/p)+1;isFinite(p)||(p=1,d=1);var m=h-p/2;l=[m,m+d*p]}else l=s;return n.calc(t,e,{vals:l,cLetter:\"z\"}),r}},49886:function(t){\"use strict\";t.exports=function(t,e){var r,n=t[0],i=n.z;switch(e.type){case\"levels\":var a=Math.min(i[0][0],i[0][1]);for(r=0;r<t.length;r++){var o=t[r];o.prefixBoundary=!o.edgepaths.length&&(a>o.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,c=-1/0,u=1/0;for(r=0;r<l;r++)u=Math.min(u,i[r][0]),u=Math.min(u,i[r][s-1]),c=Math.max(c,i[r][0]),c=Math.max(c,i[r][s-1]);for(r=1;r<s-1;r++)u=Math.min(u,i[0][r]),u=Math.min(u,i[l-1][r]),c=Math.max(c,i[0][r]),c=Math.max(c,i[l-1][r]);var h,f,p=e.value;switch(e._operation){case\">\":p>c&&(n.prefixBoundary=!0);break;case\"<\":(p<u||n.starts.length&&p===u)&&(n.prefixBoundary=!0);break;case\"[]\":h=Math.min(p[0],p[1]),((f=Math.max(p[0],p[1]))<u||h>c||n.starts.length&&f===u)&&(n.prefixBoundary=!0);break;case\"][\":h=Math.min(p[0],p[1]),f=Math.max(p[0],p[1]),h<u&&f>c&&(n.prefixBoundary=!0)}}}},92697:function(t,e,r){\"use strict\";var n=r(88856),i=r(16438),a=r(48715);t.exports={min:\"zmin\",max:\"zmax\",calc:function(t,e,r){var o=e.contours,s=e.line,l=o.size||1,c=o.coloring,u=i(e,{isColorbar:!0});if(\"heatmap\"===c){var h=n.extractOpts(e);r._fillgradient=h.reversescale?n.flipScale(h.colorscale):h.colorscale,r._zrange=[h.min,h.max]}else\"fill\"===c&&(r._fillcolor=u);r._line={color:\"lines\"===c?u:s.color,width:!1!==o.showlines?s.width:0,dash:s.dash},r._levels={start:o.start,end:a(o),size:l}}}},53156:function(t){\"use strict\";t.exports={BOTTOMSTART:[1,9,13,104,713],TOPSTART:[4,6,7,104,713],LEFTSTART:[8,12,14,208,1114],RIGHTSTART:[2,3,11,208,1114],NEWDELTA:[null,[-1,0],[0,-1],[-1,0],[1,0],null,[0,-1],[-1,0],[0,1],[0,1],null,[0,1],[1,0],[1,0],[0,-1]],CHOOSESADDLE:{104:[4,1],208:[2,8],713:[7,13],1114:[11,14]},SADDLEREMAINDER:{1:4,2:8,4:1,7:13,8:2,11:14,13:7,14:11},LABELDISTANCE:2,LABELINCREASE:10,LABELMIN:3,LABELMAX:10,LABELOPTIMIZER:{EDGECOST:1,ANGLECOST:1,NEIGHBORCOST:5,SAMELEVELFACTOR:10,SAMELEVELDISTANCE:5,MAXCOST:100,INITIALSEARCHPOINTS:10,ITERATIONS:5}}},29503:function(t,e,r){\"use strict\";var n=r(10721),i=r(20576),a=r(78766),o=a.addOpacity,s=a.opacity,l=r(20726),c=r(34809).isArrayOrTypedArray,u=l.CONSTRAINT_REDUCTION,h=l.COMPARISON_OPS2;t.exports=function(t,e,r,a,l,f){var p,d,m,g=e.contours,y=r(\"contours.operation\");g._operation=u[y],function(t,e){var r;-1===h.indexOf(e.operation)?(t(\"contours.value\",[0,1]),c(e.value)?e.value.length>2?e.value=e.value.slice(2):0===e.length?e.value=[0,1]:e.length<2?(r=parseFloat(e.value[0]),e.value=[r,r+1]):e.value=[parseFloat(e.value[0]),parseFloat(e.value[1])]:n(e.value)&&(r=parseFloat(e.value),e.value=[r,r+1])):(t(\"contours.value\",0),n(e.value)||(c(e.value)?e.value=parseFloat(e.value[0]):e.value=0))}(r,g),\"=\"===y?p=g.showlines=!0:(p=r(\"contours.showlines\"),m=r(\"fillcolor\",o((t.line||{}).color||l,.5))),p&&(d=r(\"line.color\",m&&s(m)?o(e.fillcolor,1):l),r(\"line.width\",2),r(\"line.dash\")),r(\"line.smoothing\"),i(r,a,d,f)}},22783:function(t,e,r){\"use strict\";var n=r(20726),i=r(10721);function a(t,e){var r,a=Array.isArray(e);function o(t){return i(t)?+t:null}return-1!==n.COMPARISON_OPS2.indexOf(t)?r=o(a?e[0]:e):-1!==n.INTERVAL_OPS.indexOf(t)?r=a?[o(e[0]),o(e[1])]:[o(e),o(e)]:-1!==n.SET_OPS.indexOf(t)&&(r=a?e.map(o):[o(e)]),r}function o(t){return function(e){e=a(t,e);var r=Math.min(e[0],e[1]),n=Math.max(e[0],e[1]);return{start:r,end:n,size:n-r}}}function s(t){return function(e){return{start:e=a(t,e),end:1/0,size:1/0}}}t.exports={\"[]\":o(\"[]\"),\"][\":o(\"][\"),\">\":s(\">\"),\"<\":s(\"<\"),\"=\":s(\"=\")}},47495:function(t){\"use strict\";t.exports=function(t,e,r,n){var i=n(\"contours.start\"),a=n(\"contours.end\"),o=!1===i||!1===a,s=r(\"contours.size\");!(o?e.autocontour=!0:r(\"autocontour\",!1))&&s||r(\"ncontours\")}},1999:function(t,e,r){\"use strict\";var n=r(34809);function i(t){return n.extendFlat({},t,{edgepaths:n.extendDeep([],t.edgepaths),paths:n.extendDeep([],t.paths),starts:n.extendDeep([],t.starts)})}t.exports=function(t,e){var r,a,o,s=function(t){return t.reverse()},l=function(t){return t};switch(e){case\"=\":case\"<\":return t;case\">\":for(1!==t.length&&n.warn(\"Contour data invalid for the specified inequality operation.\"),a=t[0],r=0;r<a.edgepaths.length;r++)a.edgepaths[r]=s(a.edgepaths[r]);for(r=0;r<a.paths.length;r++)a.paths[r]=s(a.paths[r]);for(r=0;r<a.starts.length;r++)a.starts[r]=s(a.starts[r]);return t;case\"][\":var c=s;s=l,l=c;case\"[]\":for(2!==t.length&&n.warn(\"Contour data invalid for the specified inequality range operation.\"),a=i(t[0]),o=i(t[1]),r=0;r<a.edgepaths.length;r++)a.edgepaths[r]=s(a.edgepaths[r]);for(r=0;r<a.paths.length;r++)a.paths[r]=s(a.paths[r]);for(r=0;r<a.starts.length;r++)a.starts[r]=s(a.starts[r]);for(;o.edgepaths.length;)a.edgepaths.push(l(o.edgepaths.shift()));for(;o.paths.length;)a.paths.push(l(o.paths.shift()));for(;o.starts.length;)a.starts.push(l(o.starts.shift()));return[a]}}},57543:function(t,e,r){\"use strict\";var n=r(34809),i=r(86073),a=r(99669),o=r(29503),s=r(47495),l=r(39889),c=r(63814),u=r(52240);t.exports=function(t,e,r,h){function f(r,i){return n.coerce(t,e,u,r,i)}if(i(t,e,f,h)){a(t,e,h,f),f(\"xhoverformat\"),f(\"yhoverformat\"),f(\"text\"),f(\"hovertext\"),f(\"hoverongaps\"),f(\"hovertemplate\");var p=\"constraint\"===f(\"contours.type\");f(\"connectgaps\",n.isArray1D(e.z)),p?o(t,e,f,h,r):(s(t,e,f,(function(r){return n.coerce2(t,e,u,r)})),l(t,e,f,h)),e.contours&&\"heatmap\"===e.contours.coloring&&c(f,h),f(\"zorder\")}else e.visible=!1}},86828:function(t,e,r){\"use strict\";var n=r(34809),i=r(22783),a=r(48715);t.exports=function(t,e,r){for(var o=\"constraint\"===t.type?i[t._operation](t.value):t,s=o.size,l=[],c=a(o),u=r.trace._carpetTrace,h=u?{xaxis:u.aaxis,yaxis:u.baxis,x:r.a,y:r.b}:{xaxis:e.xaxis,yaxis:e.yaxis,x:r.x,y:r.y},f=o.start;f<c;f+=s)if(l.push(n.extendFlat({level:f,crossings:{},starts:[],edgepaths:[],paths:[],z:r.z,smoothing:r.trace.line.smoothing},h)),l.length>1e3){n.warn(\"Too many contours, clipping at 1000\",t);break}return l}},48715:function(t){\"use strict\";t.exports=function(t){return t.end+t.size/1e6}},27657:function(t,e,r){\"use strict\";var n=r(34809),i=r(53156);function a(t,e,r,n){return Math.abs(t[0]-e[0])<r&&Math.abs(t[1]-e[1])<n}function o(t,e,r,o,l){var c,u=e.join(\",\"),h=t.crossings[u],f=function(t,e,r){var n=0,a=0;return t>20&&e?208===t||1114===t?n=0===r[0]?1:-1:a=0===r[1]?1:-1:-1!==i.BOTTOMSTART.indexOf(t)?a=1:-1!==i.LEFTSTART.indexOf(t)?n=1:-1!==i.TOPSTART.indexOf(t)?a=-1:n=-1,[n,a]}(h,r,e),p=[s(t,e,[-f[0],-f[1]])],d=t.z.length,m=t.z[0].length,g=e.slice(),y=f.slice();for(c=0;c<1e4;c++){if(h>20?(h=i.CHOOSESADDLE[h][(f[0]||f[1])<0?0:1],t.crossings[u]=i.SADDLEREMAINDER[h]):delete t.crossings[u],!(f=i.NEWDELTA[h])){n.log(\"Found bad marching index:\",h,e,t.level);break}p.push(s(t,e,f)),e[0]+=f[0],e[1]+=f[1],u=e.join(\",\"),a(p[p.length-1],p[p.length-2],o,l)&&p.pop();var v=f[0]&&(e[0]<0||e[0]>m-2)||f[1]&&(e[1]<0||e[1]>d-2);if(e[0]===g[0]&&e[1]===g[1]&&f[0]===y[0]&&f[1]===y[1]||r&&v)break;h=t.crossings[u]}1e4===c&&n.log(\"Infinite loop in contour?\");var x,_,b,w,T,k,A,M,S,E,C,L,I,P,z,O=a(p[0],p[p.length-1],o,l),D=0,R=.2*t.smoothing,F=[],B=0;for(c=1;c<p.length;c++)L=p[c],I=p[c-1],void 0,void 0,P=L[2]-I[2],z=L[3]-I[3],D+=A=Math.sqrt(P*P+z*z),F.push(A);var N=D/F.length*R;function j(t){return p[t%p.length]}for(c=p.length-2;c>=B;c--)if((x=F[c])<N){for(b=0,_=c-1;_>=B&&x+F[_]<N;_--)x+=F[_];if(O&&c===p.length-2)for(b=0;b<_&&x+F[b]<N;b++)x+=F[b];T=c-_+b+1,k=Math.floor((c+_+b+2)/2),w=O||c!==p.length-2?O||-1!==_?T%2?j(k):[(j(k)[0]+j(k+1)[0])/2,(j(k)[1]+j(k+1)[1])/2]:p[0]:p[p.length-1],p.splice(_+1,c-_+1,w),c=_+1,b&&(B=b),O&&(c===p.length-2?p[b]=p[p.length-1]:0===c&&(p[p.length-1]=p[0]))}for(p.splice(0,B),c=0;c<p.length;c++)p[c].length=2;if(!(p.length<2))if(O)p.pop(),t.paths.push(p);else{r||n.log(\"Unclosed interior contour?\",t.level,g.join(\",\"),p.join(\"L\"));var U=!1;for(M=0;M<t.edgepaths.length;M++)if(E=t.edgepaths[M],!U&&a(E[0],p[p.length-1],o,l)){p.pop(),U=!0;var V=!1;for(S=0;S<t.edgepaths.length;S++)if(a((C=t.edgepaths[S])[C.length-1],p[0],o,l)){V=!0,p.shift(),t.edgepaths.splice(M,1),S===M?t.paths.push(p.concat(C)):(S>M&&S--,t.edgepaths[S]=C.concat(p,E));break}V||(t.edgepaths[M]=p.concat(E))}for(M=0;M<t.edgepaths.length&&!U;M++)a((E=t.edgepaths[M])[E.length-1],p[0],o,l)&&(p.shift(),t.edgepaths[M]=E.concat(p),U=!0);U||t.edgepaths.push(p)}}function s(t,e,r){var n=e[0]+Math.max(r[0],0),i=e[1]+Math.max(r[1],0),a=t.z[i][n],o=t.xaxis,s=t.yaxis;if(r[1]){var l=(t.level-a)/(t.z[i][n+1]-a),c=(1!==l?(1-l)*o.c2l(t.x[n]):0)+(0!==l?l*o.c2l(t.x[n+1]):0);return[o.c2p(o.l2c(c),!0),s.c2p(t.y[i],!0),n+l,i]}var u=(t.level-a)/(t.z[i+1][n]-a),h=(1!==u?(1-u)*s.c2l(t.y[i]):0)+(0!==u?u*s.c2l(t.y[i+1]):0);return[o.c2p(t.x[n],!0),s.c2p(s.l2c(h),!0),n,i+u]}t.exports=function(t,e,r){var i,a,s,l;for(e=e||.01,r=r||.01,a=0;a<t.length;a++){for(s=t[a],l=0;l<s.starts.length;l++)o(s,s.starts[l],\"edge\",e,r);for(i=0;Object.keys(s.crossings).length&&i<1e4;)i++,o(s,Object.keys(s.crossings)[0].split(\",\").map(Number),void 0,e,r);1e4===i&&n.log(\"Infinite loop in contour?\")}}},29815:function(t,e,r){\"use strict\";var n=r(78766),i=r(93125);t.exports=function(t,e,r,a,o){o||(o={}),o.isContour=!0;var s=i(t,e,r,a,o);return s&&s.forEach((function(t){var e=t.trace;\"constraint\"===e.contours.type&&(e.fillcolor&&n.opacity(e.fillcolor)?t.color=n.addOpacity(e.fillcolor,1):e.contours.showlines&&n.opacity(e.line.color)&&(t.color=n.addOpacity(e.line.color,1)))})),s}},91405:function(t,e,r){\"use strict\";t.exports={attributes:r(52240),supplyDefaults:r(57543),calc:r(40352),plot:r(8850).plot,style:r(1328),colorbar:r(92697),hoverPoints:r(29815),moduleType:\"trace\",name:\"contour\",basePlotModule:r(37703),categories:[\"cartesian\",\"svg\",\"2dMap\",\"contour\",\"showLegend\"],meta:{}}},20576:function(t,e,r){\"use strict\";var n=r(34809);t.exports=function(t,e,r,i){if(i||(i={}),t(\"contours.showlabels\")){var a=e.font;n.coerceFont(t,\"contours.labelfont\",a,{overrideDflt:{color:r}}),t(\"contours.labelformat\")}!1!==i.hasHover&&t(\"zhoverformat\")}},16438:function(t,e,r){\"use strict\";var n=r(45568),i=r(88856),a=r(48715);t.exports=function(t){var e=t.contours,r=e.start,o=a(e),s=e.size||1,l=Math.floor((o-r)/s)+1,c=\"lines\"===e.coloring?0:1,u=i.extractOpts(t);isFinite(s)||(s=1,l=1);var h,f,p=u.reversescale?i.flipScale(u.colorscale):u.colorscale,d=p.length,m=new Array(d),g=new Array(d),y=u.min,v=u.max;if(\"heatmap\"===e.coloring){for(f=0;f<d;f++)h=p[f],m[f]=h[0]*(v-y)+y,g[f]=h[1];var x=n.extent([y,v,e.start,e.start+s*(l-1)]),_=x[y<v?0:1],b=x[y<v?1:0];_!==y&&(m.splice(0,0,_),g.splice(0,0,g[0])),b!==v&&(m.push(b),g.push(g[g.length-1]))}else{var w=t._input&&\"number\"==typeof t._input.zmin&&\"number\"==typeof t._input.zmax;for(w&&(r<=y||o>=v)&&(r<=y&&(r=y),o>=v&&(o=v),l=Math.floor((o-r)/s)+1,c=0),f=0;f<d;f++)h=p[f],m[f]=(h[0]*(l+c-1)-c/2)*s+r,g[f]=h[1];(w||t.autocontour)&&(m[0]>y&&(m.unshift(y),g.unshift(g[0])),m[m.length-1]<v&&(m.push(v),g.push(g[g.length-1])))}return i.makeColorScaleFunc({domain:m,range:g},{noNumericCheck:!0})}},83545:function(t,e,r){\"use strict\";var n=r(53156);function i(t,e){var r=(e[0][0]>t?0:1)+(e[0][1]>t?0:2)+(e[1][1]>t?0:4)+(e[1][0]>t?0:8);return 5===r||10===r?t>(e[0][0]+e[0][1]+e[1][0]+e[1][1])/4?5===r?713:1114:5===r?104:208:15===r?0:r}t.exports=function(t){var e,r,a,o,s,l,c,u,h,f=t[0].z,p=f.length,d=f[0].length,m=2===p||2===d;for(r=0;r<p-1;r++)for(o=[],0===r&&(o=o.concat(n.BOTTOMSTART)),r===p-2&&(o=o.concat(n.TOPSTART)),e=0;e<d-1;e++)for(a=o.slice(),0===e&&(a=a.concat(n.LEFTSTART)),e===d-2&&(a=a.concat(n.RIGHTSTART)),s=e+\",\"+r,l=[[f[r][e],f[r][e+1]],[f[r+1][e],f[r+1][e+1]]],h=0;h<t.length;h++)(c=i((u=t[h]).level,l))&&(u.crossings[s]=c,-1!==a.indexOf(c)&&(u.starts.push([e,r]),m&&-1!==a.indexOf(c,a.indexOf(c)+1)&&u.starts.push([e,r])))}},8850:function(t,e,r){\"use strict\";var n=r(45568),i=r(34809),a=r(62203),o=r(88856),s=r(30635),l=r(29714),c=r(19091),u=r(19236),h=r(83545),f=r(27657),p=r(86828),d=r(1999),m=r(49886),g=r(53156),y=g.LABELOPTIMIZER;function v(t,e){var r,n,o,s,l,c,u,h=\"\",f=0,p=t.edgepaths.map((function(t,e){return e})),d=!0;function m(t){return Math.abs(t[1]-e[2][1])<.01}function g(t){return Math.abs(t[0]-e[0][0])<.01}function y(t){return Math.abs(t[0]-e[2][0])<.01}for(;p.length;){for(c=a.smoothopen(t.edgepaths[f],t.smoothing),h+=d?c:c.replace(/^M/,\"L\"),p.splice(p.indexOf(f),1),r=t.edgepaths[f][t.edgepaths[f].length-1],s=-1,o=0;o<4;o++){if(!r){i.log(\"Missing end?\",f,t);break}for(u=r,Math.abs(u[1]-e[0][1])<.01&&!y(r)?n=e[1]:g(r)?n=e[0]:m(r)?n=e[3]:y(r)&&(n=e[2]),l=0;l<t.edgepaths.length;l++){var v=t.edgepaths[l][0];Math.abs(r[0]-n[0])<.01?Math.abs(r[0]-v[0])<.01&&(v[1]-r[1])*(n[1]-v[1])>=0&&(n=v,s=l):Math.abs(r[1]-n[1])<.01?Math.abs(r[1]-v[1])<.01&&(v[0]-r[0])*(n[0]-v[0])>=0&&(n=v,s=l):i.log(\"endpt to newendpt is not vert. or horz.\",r,n,v)}if(r=n,s>=0)break;h+=\"L\"+n}if(s===t.edgepaths.length){i.log(\"unclosed perimeter path\");break}f=s,(d=-1===p.indexOf(f))&&(f=p[0],h+=\"Z\")}for(f=0;f<t.paths.length;f++)h+=a.smoothclosed(t.paths[f],t.smoothing);return h}function x(t,e,r,n){var a=e.width/2,o=e.height/2,s=t.x,l=t.y,c=t.theta,u=Math.cos(c)*a,h=Math.sin(c)*a,f=(s>n.center?n.right-s:s-n.left)/(u+Math.abs(Math.sin(c)*o)),p=(l>n.middle?n.bottom-l:l-n.top)/(Math.abs(h)+Math.cos(c)*o);if(f<1||p<1)return 1/0;var d=y.EDGECOST*(1/(f-1)+1/(p-1));d+=y.ANGLECOST*c*c;for(var m=s-u,g=l-h,v=s+u,x=l+h,_=0;_<r.length;_++){var b=r[_],w=Math.cos(b.theta)*b.width/2,T=Math.sin(b.theta)*b.width/2,k=2*i.segmentDistance(m,g,v,x,b.x-w,b.y-T,b.x+w,b.y+T)/(e.height+b.height),A=b.level===e.level,M=A?y.SAMELEVELDISTANCE:1;if(k<=M)return 1/0;d+=y.NEIGHBORCOST*(A?y.SAMELEVELFACTOR:1)/(k-M)}return d}function _(t){var e,r,n=t.trace._emptypoints,i=[],a=t.z.length,o=t.z[0].length,s=[];for(e=0;e<o;e++)s.push(1);for(e=0;e<a;e++)i.push(s.slice());for(e=0;e<n.length;e++)i[(r=n[e])[0]][r[1]]=0;return t.zmask=i,i}e.plot=function(t,r,o,s){var l=r.xaxis,c=r.yaxis;i.makeTraceGroups(s,o,\"contour\").each((function(o){var s=n.select(this),y=o[0],x=y.trace,b=y.x,w=y.y,T=x.contours,k=p(T,r,y),A=i.ensureSingle(s,\"g\",\"heatmapcoloring\"),M=[];\"heatmap\"===T.coloring&&(M=[o]),u(t,r,M,A),h(k),f(k);var S=l.c2p(b[0],!0),E=l.c2p(b[b.length-1],!0),C=c.c2p(w[0],!0),L=c.c2p(w[w.length-1],!0),I=[[S,L],[E,L],[E,C],[S,C]],P=k;\"constraint\"===T.type&&(P=d(k,T._operation)),function(t,e,r){var n=i.ensureSingle(t,\"g\",\"contourbg\").selectAll(\"path\").data(\"fill\"===r.coloring?[0]:[]);n.enter().append(\"path\"),n.exit().remove(),n.attr(\"d\",\"M\"+e.join(\"L\")+\"Z\").style(\"stroke\",\"none\")}(s,I,T),function(t,e,r,a){var o=\"fill\"===a.coloring||\"constraint\"===a.type&&\"=\"!==a._operation,s=\"M\"+r.join(\"L\")+\"Z\";o&&m(e,a);var l=i.ensureSingle(t,\"g\",\"contourfill\").selectAll(\"path\").data(o?e:[]);l.enter().append(\"path\"),l.exit().remove(),l.each((function(t){var e=(t.prefixBoundary?s:\"\")+v(t,r);e?n.select(this).attr(\"d\",e).style(\"stroke\",\"none\"):n.select(this).remove()}))}(s,P,I,T),function(t,r,o,s,l){var c=o._context.staticPlot,u=i.ensureSingle(t,\"g\",\"contourlines\"),h=!1!==l.showlines,f=l.showlabels,p=h&&f,d=e.createLines(u,h||f,r,c),m=e.createLineClip(u,p,o,s.trace.uid),y=t.selectAll(\"g.contourlabels\").data(f?[0]:[]);if(y.exit().remove(),y.enter().append(\"g\").classed(\"contourlabels\",!0),f){var v=[],x=[];i.clearLocationCache();var _=e.labelFormatter(o,s),b=a.tester.append(\"text\").attr(\"data-notex\",1).call(a.font,l.labelfont),w=r[0].xaxis,T=r[0].yaxis,k=w._length,A=T._length,M=w.range,S=T.range,E=i.aggNums(Math.min,null,s.x),C=i.aggNums(Math.max,null,s.x),L=i.aggNums(Math.min,null,s.y),I=i.aggNums(Math.max,null,s.y),P=Math.max(w.c2p(E,!0),0),z=Math.min(w.c2p(C,!0),k),O=Math.max(T.c2p(I,!0),0),D=Math.min(T.c2p(L,!0),A),R={};M[0]<M[1]?(R.left=P,R.right=z):(R.left=z,R.right=P),S[0]<S[1]?(R.top=O,R.bottom=D):(R.top=D,R.bottom=O),R.middle=(R.top+R.bottom)/2,R.center=(R.left+R.right)/2,v.push([[R.left,R.top],[R.right,R.top],[R.right,R.bottom],[R.left,R.bottom]]);var F=Math.sqrt(k*k+A*A),B=g.LABELDISTANCE*F/Math.max(1,r.length/g.LABELINCREASE);d.each((function(t){var r=e.calcTextOpts(t.level,_,b,o);n.select(this).selectAll(\"path\").each((function(){var t=i.getVisibleSegment(this,R,r.height/2);if(t&&!(t.len<(r.width+r.height)*g.LABELMIN))for(var n=Math.min(Math.ceil(t.len/B),g.LABELMAX),a=0;a<n;a++){var o=e.findBestTextLocation(this,t,r,x,R);if(!o)break;e.addLabelData(o,r,x,v)}}))})),b.remove(),e.drawLabels(y,x,o,m,p?v:null)}f&&!h&&d.remove()}(s,k,t,y,T),function(t,e,r,n,o){var s=n.trace,l=r._fullLayout._clips,c=\"clip\"+s.uid,u=l.selectAll(\"#\"+c).data(s.connectgaps?[]:[0]);if(u.enter().append(\"clipPath\").classed(\"contourclip\",!0).attr(\"id\",c),u.exit().remove(),!1===s.connectgaps){var p={level:.9,crossings:{},starts:[],edgepaths:[],paths:[],xaxis:e.xaxis,yaxis:e.yaxis,x:n.x,y:n.y,z:_(n),smoothing:0};h([p]),f([p]),m([p],{type:\"levels\"}),i.ensureSingle(u,\"path\",\"\").attr(\"d\",(p.prefixBoundary?\"M\"+o.join(\"L\")+\"Z\":\"\")+v(p,o))}else c=null;a.setClipUrl(t,c,r)}(s,r,t,y,I)}))},e.createLines=function(t,e,r,n){var i=r[0].smoothing,o=t.selectAll(\"g.contourlevel\").data(e?r:[]);if(o.exit().remove(),o.enter().append(\"g\").classed(\"contourlevel\",!0),e){var s=o.selectAll(\"path.openline\").data((function(t){return t.pedgepaths||t.edgepaths}));s.exit().remove(),s.enter().append(\"path\").classed(\"openline\",!0),s.attr(\"d\",(function(t){return a.smoothopen(t,i)})).style(\"stroke-miterlimit\",1).style(\"vector-effect\",n?\"none\":\"non-scaling-stroke\");var l=o.selectAll(\"path.closedline\").data((function(t){return t.ppaths||t.paths}));l.exit().remove(),l.enter().append(\"path\").classed(\"closedline\",!0),l.attr(\"d\",(function(t){return a.smoothclosed(t,i)})).style(\"stroke-miterlimit\",1).style(\"vector-effect\",n?\"none\":\"non-scaling-stroke\")}return o},e.createLineClip=function(t,e,r,n){var i=e?\"clipline\"+n:null,o=r._fullLayout._clips.selectAll(\"#\"+i).data(e?[0]:[]);return o.exit().remove(),o.enter().append(\"clipPath\").classed(\"contourlineclip\",!0).attr(\"id\",i),a.setClipUrl(t,i,r),o},e.labelFormatter=function(t,e){var r=t._fullLayout,n=e.trace,a=n.contours,s={type:\"linear\",_id:\"ycontour\",showexponent:\"all\",exponentformat:\"B\"};if(a.labelformat)s.tickformat=a.labelformat,c(s,r);else{var u=o.extractOpts(n);if(u&&u.colorbar&&u.colorbar._axis)s=u.colorbar._axis;else{if(\"constraint\"===a.type){var h=a.value;i.isArrayOrTypedArray(h)?s.range=[h[0],h[h.length-1]]:s.range=[h,h]}else s.range=[a.start,a.end],s.nticks=(a.end-a.start)/a.size;s.range[0]===s.range[1]&&(s.range[1]+=s.range[0]||1),s.nticks||(s.nticks=1e3),c(s,r),l.prepTicks(s),s._tmin=null,s._tmax=null}}return function(t){return l.tickText(s,t).text}},e.calcTextOpts=function(t,e,r,n){var i=e(t);r.text(i).call(s.convertToTspans,n);var o=r.node(),l=a.bBox(o,!0);return{text:i,width:l.width,height:l.height,fontSize:+o.style[\"font-size\"].replace(\"px\",\"\"),level:t,dy:(l.top+l.bottom)/2}},e.findBestTextLocation=function(t,e,r,n,a){var o,s,l,c,u,h=r.width;e.isClosed?(s=e.len/y.INITIALSEARCHPOINTS,o=e.min+s/2,l=e.max):(s=(e.len-h)/(y.INITIALSEARCHPOINTS+1),o=e.min+s+h/2,l=e.max-(s+h)/2);for(var f=1/0,p=0;p<y.ITERATIONS;p++){for(var d=o;d<l;d+=s){var m=i.getTextLocation(t,e.total,d,h),g=x(m,r,n,a);g<f&&(f=g,u=m,c=d)}if(f>2*y.MAXCOST)break;p&&(s/=2),l=(o=c-s/2)+1.5*s}if(f<=y.MAXCOST)return u},e.addLabelData=function(t,e,r,n){var i=e.fontSize,a=e.width+i/3,o=Math.max(0,e.height-i/3),s=t.x,l=t.y,c=t.theta,u=Math.sin(c),h=Math.cos(c),f=function(t,e){return[s+t*h-e*u,l+t*u+e*h]},p=[f(-a/2,-o/2),f(-a/2,o/2),f(a/2,o/2),f(a/2,-o/2)];r.push({text:e.text,x:s,y:l,dy:e.dy,theta:c,level:e.level,width:a,height:o}),n.push(p)},e.drawLabels=function(t,e,r,a,o){var l=t.selectAll(\"text\").data(e,(function(t){return t.text+\",\"+t.x+\",\"+t.y+\",\"+t.theta}));if(l.exit().remove(),l.enter().append(\"text\").attr({\"data-notex\":1,\"text-anchor\":\"middle\"}).each((function(t){var e=t.x+Math.sin(t.theta)*t.dy,i=t.y-Math.cos(t.theta)*t.dy;n.select(this).text(t.text).attr({x:e,y:i,transform:\"rotate(\"+180*t.theta/Math.PI+\" \"+e+\" \"+i+\")\"}).call(s.convertToTspans,r)})),o){for(var c=\"\",u=0;u<o.length;u++)c+=\"M\"+o[u].join(\"L\")+\"Z\";i.ensureSingle(a,\"path\",\"\").attr(\"d\",c)}}},62475:function(t,e,r){\"use strict\";var n=r(29714),i=r(34809);function a(t,e,r){var i={type:\"linear\",range:[t,e]};return n.autoTicks(i,(e-t)/(r||15)),i}t.exports=function(t,e){var r=t.contours;if(t.autocontour){var o=t.zmin,s=t.zmax;(t.zauto||void 0===o)&&(o=i.aggNums(Math.min,null,e)),(t.zauto||void 0===s)&&(s=i.aggNums(Math.max,null,e));var l=a(o,s,t.ncontours);r.size=l.dtick,r.start=n.tickFirst(l),l.range.reverse(),r.end=n.tickFirst(l),r.start===o&&(r.start+=r.size),r.end===s&&(r.end-=r.size),r.start>r.end&&(r.start=r.end=(r.start+r.end)/2),t._input.contours||(t._input.contours={}),i.extendFlat(t._input.contours,{start:r.start,end:r.end,size:r.size}),t._input.autocontour=!0}else if(\"constraint\"!==r.type){var c,u=r.start,h=r.end,f=t._input.contours;u>h&&(r.start=f.start=h,h=r.end=f.end=u,u=r.start),r.size>0||(c=u===h?1:a(u,h,t.ncontours).dtick,f.size=r.size=c)}}},1328:function(t,e,r){\"use strict\";var n=r(45568),i=r(62203),a=r(12774),o=r(16438);t.exports=function(t){var e=n.select(t).selectAll(\"g.contour\");e.style(\"opacity\",(function(t){return t[0].trace.opacity})),e.each((function(t){var e=n.select(this),r=t[0].trace,a=r.contours,s=r.line,l=a.size||1,c=a.start,u=\"constraint\"===a.type,h=!u&&\"lines\"===a.coloring,f=!u&&\"fill\"===a.coloring,p=h||f?o(r):null;e.selectAll(\"g.contourlevel\").each((function(t){n.select(this).selectAll(\"path\").call(i.lineGroupStyle,s.width,h?p(t.level):s.color,s.dash)}));var d=a.labelfont;if(e.selectAll(\"g.contourlabels text\").each((function(t){i.font(n.select(this),{weight:d.weight,style:d.style,variant:d.variant,textcase:d.textcase,lineposition:d.lineposition,shadow:d.shadow,family:d.family,size:d.size,color:d.color||(h?p(t.level):s.color)})})),u)e.selectAll(\"g.contourfill path\").style(\"fill\",r.fillcolor);else if(f){var m;e.selectAll(\"g.contourfill path\").style(\"fill\",(function(t){return void 0===m&&(m=t.level),p(t.level+.5*l)})),void 0===m&&(m=c),e.selectAll(\"g.contourbg path\").style(\"fill\",p(m-.5*l))}})),a(t)}},39889:function(t,e,r){\"use strict\";var n=r(39356),i=r(20576);t.exports=function(t,e,r,a,o){var s,l=r(\"contours.coloring\"),c=\"\";\"fill\"===l&&(s=r(\"contours.showlines\")),!1!==s&&(\"lines\"!==l&&(c=r(\"line.color\",\"#000\")),r(\"line.width\",.5),r(\"line.dash\")),\"none\"!==l&&(!0!==t.showlegend&&(e.showlegend=!1),e._dfltShowLegend=!1,n(t,e,a,r,{prefix:\"\",cLetter:\"z\"})),r(\"line.smoothing\"),i(r,a,c,o)}},66365:function(t,e,r){\"use strict\";var n=r(81658),i=r(52240),a=r(87163),o=r(93049).extendFlat,s=i.contours;t.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\"},zorder:i.zorder,transforms:void 0},a(\"\",{cLetter:\"z\",autoColorDflt:!1}))},80849:function(t,e,r){\"use strict\";var n=r(28379),i=r(34809),a=r(87869),o=r(93877),s=r(69295),l=r(78106),c=r(80924),u=r(50538),h=r(26571),f=r(62475);t.exports=function(t,e){var r=e._carpetTrace=h(t,e);if(r&&r.visible&&\"legendonly\"!==r.visible){if(!e.a||!e.b){var p=t.data[r.index],d=t.data[e.index];d.a||(d.a=p.a),d.b||(d.b=p.b),u(d,e,e._defaultColor,t._fullLayout)}var m=function(t,e){var r,u,h,f,p,d,m,g=e._carpetTrace,y=g.aaxis,v=g.baxis;y._minDtick=0,v._minDtick=0,i.isArray1D(e.z)&&a(e,y,v,\"a\",\"b\",[\"z\"]),r=e._a=e._a||e.a,f=e._b=e._b||e.b,r=r?y.makeCalcdata(e,\"_a\"):[],f=f?v.makeCalcdata(e,\"_b\"):[],u=e.a0||0,h=e.da||1,p=e.b0||0,d=e.db||1,m=e._z=o(e._z||e.z,e.transpose),e._emptypoints=l(m),s(m,e._emptypoints);var x=i.maxRowLength(m),_=\"scaled\"===e.xtype?\"\":r,b=c(e,_,u,h,x,y),w=\"scaled\"===e.ytype?\"\":f,T={a:b,b:c(e,w,p,d,m.length,v),z:m};return\"levels\"===e.contours.type&&\"none\"!==e.contours.coloring&&n(t,e,{vals:m,containerStr:\"\",cLetter:\"z\"}),[T]}(t,e);return f(e,e._z),m}}},50538:function(t,e,r){\"use strict\";var n=r(34809),i=r(86073),a=r(66365),o=r(29503),s=r(47495),l=r(39889);t.exports=function(t,e,r,c){function u(r,i){return n.coerce(t,e,a,r,i)}if(u(\"carpet\"),t.a&&t.b){if(!i(t,e,u,c,\"a\",\"b\"))return void(e.visible=!1);u(\"text\"),\"constraint\"===u(\"contours.type\")?o(t,e,u,c,r,{hasHover:!1}):(s(t,e,u,(function(r){return n.coerce2(t,e,a,r)})),l(t,e,u,c,{hasHover:!1}))}else e._defaultColor=r,e._length=null;u(\"zorder\")}},34406:function(t,e,r){\"use strict\";t.exports={attributes:r(66365),supplyDefaults:r(50538),colorbar:r(92697),calc:r(80849),plot:r(71815),style:r(1328),moduleType:\"trace\",name:\"contourcarpet\",basePlotModule:r(37703),categories:[\"cartesian\",\"svg\",\"carpet\",\"contour\",\"symbols\",\"showLegend\",\"hasLines\",\"carpetDependent\",\"noHover\",\"noSortingByValue\"],meta:{}}},71815:function(t,e,r){\"use strict\";var n=r(45568),i=r(6720),a=r(3685),o=r(62203),s=r(34809),l=r(83545),c=r(27657),u=r(8850),h=r(53156),f=r(1999),p=r(86828),d=r(49886),m=r(26571),g=r(94903);function y(t,e,r){var n=t.getPointAtLength(e),i=t.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 v(t){var e=Math.sqrt(t[0]*t[0]+t[1]*t[1]);return[t[0]/e,t[1]/e]}function x(t,e){var r=Math.abs(t[0]*e[0]+t[1]*e[1]);return Math.sqrt(1-r*r)/r}t.exports=function(t,e,r,_){var b=e.xaxis,w=e.yaxis;s.makeTraceGroups(_,r,\"contour\").each((function(r){var _=n.select(this),T=r[0],k=T.trace,A=k._carpetTrace=m(t,k),M=t.calcdata[A.index][0];if(A.visible&&\"legendonly\"!==A.visible){var S=T.a,E=T.b,C=k.contours,L=p(C,e,T),I=\"constraint\"===C.type,P=C._operation,z=I?\"=\"===P?\"lines\":\"fill\":C.coloring,O=[[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 D=1e-8*(S[S.length-1]-S[0]),R=1e-8*(E[E.length-1]-E[0]);c(L,D,R);var F,B,N,j,U=L;\"constraint\"===C.type&&(U=f(L,P)),function(t,e){var r,n,i,a,o,s,l,c,u;for(r=0;r<t.length;r++){for(o=(a=t[r]).pedgepaths=[],s=a.ppaths=[],n=0;n<a.edgepaths.length;n++){for(u=a.edgepaths[n],l=[],i=0;i<u.length;i++)l[i]=e(u[i]);o.push(l)}for(n=0;n<a.paths.length;n++){for(u=a.paths[n],c=[],i=0;i<u.length;i++)c[i]=e(u[i]);s.push(c)}}}(L,H);var V=[];for(j=M.clipsegments.length-1;j>=0;j--)F=M.clipsegments[j],B=i([],F.x,b.c2p),N=i([],F.y,w.c2p),B.reverse(),N.reverse(),V.push(a(B,N,F.bicubic));var q=\"M\"+V.join(\"L\")+\"Z\";!function(t,e,r,n,o,l){var c,u,h,f,p=s.ensureSingle(t,\"g\",\"contourbg\").selectAll(\"path\").data(\"fill\"!==l||o?[]:[0]);p.enter().append(\"path\"),p.exit().remove();var d=[];for(f=0;f<e.length;f++)c=e[f],u=i([],c.x,r.c2p),h=i([],c.y,n.c2p),d.push(a(u,h,c.bicubic));p.attr(\"d\",\"M\"+d.join(\"L\")+\"Z\").style(\"stroke\",\"none\")}(_,M.clipsegments,b,w,I,z),function(t,e,r,i,a,l,c,u,h,f,p){var m=\"fill\"===f;m&&d(a,t.contours);var y=s.ensureSingle(e,\"g\",\"contourfill\").selectAll(\"path\").data(m?a:[]);y.enter().append(\"path\"),y.exit().remove(),y.each((function(t){var e=(t.prefixBoundary?p:\"\")+function(t,e,r,n,i,a,l,c){var u,h,f,p,d,m,y,v=\"\",x=e.edgepaths.map((function(t,e){return e})),_=!0,b=1e-4*Math.abs(r[0][0]-r[2][0]),w=1e-4*Math.abs(r[0][1]-r[2][1]);function T(t){return Math.abs(t[1]-r[0][1])<w}function k(t){return Math.abs(t[1]-r[2][1])<w}function A(t){return Math.abs(t[0]-r[0][0])<b}function M(t){return Math.abs(t[0]-r[2][0])<b}function S(t,e){var r,n,o,s,u=\"\";for(T(t)&&!M(t)||k(t)&&!A(t)?(s=i.aaxis,o=g(i,a,[t[0],e[0]],.5*(t[1]+e[1]))):(s=i.baxis,o=g(i,a,.5*(t[0]+e[0]),[t[1],e[1]])),r=1;r<o.length;r++)for(u+=s.smoothing?\"C\":\"L\",n=0;n<o[r].length;n++){var h=o[r][n];u+=[l.c2p(h[0]),c.c2p(h[1])]+\" \"}return u}for(u=0,h=null;x.length;){var E=e.edgepaths[u][0];for(h&&(v+=S(h,E)),y=o.smoothopen(e.edgepaths[u].map(n),e.smoothing),v+=_?y:y.replace(/^M/,\"L\"),x.splice(x.indexOf(u),1),h=e.edgepaths[u][e.edgepaths[u].length-1],d=-1,p=0;p<4;p++){if(!h){s.log(\"Missing end?\",u,e);break}for(T(h)&&!M(h)?f=r[1]:A(h)?f=r[0]:k(h)?f=r[3]:M(h)&&(f=r[2]),m=0;m<e.edgepaths.length;m++){var C=e.edgepaths[m][0];Math.abs(h[0]-f[0])<b?Math.abs(h[0]-C[0])<b&&(C[1]-h[1])*(f[1]-C[1])>=0&&(f=C,d=m):Math.abs(h[1]-f[1])<w?Math.abs(h[1]-C[1])<w&&(C[0]-h[0])*(f[0]-C[0])>=0&&(f=C,d=m):s.log(\"endpt to newendpt is not vert. or horz.\",h,f,C)}if(d>=0)break;v+=S(h,f),h=f}if(d===e.edgepaths.length){s.log(\"unclosed perimeter path\");break}u=d,(_=-1===x.indexOf(u))&&(u=x[0],v+=S(h,f)+\"Z\",h=null)}for(u=0;u<e.paths.length;u++)v+=o.smoothclosed(e.paths[u].map(n),e.smoothing);return v}(0,t,l,c,u,h,r,i);e?n.select(this).attr(\"d\",e).style(\"stroke\",\"none\"):n.select(this).remove()}))}(k,_,b,w,U,O,H,A,M,z,q),function(t,e,r,i,a,l,c){var f=r._context.staticPlot,p=s.ensureSingle(t,\"g\",\"contourlines\"),d=!1!==a.showlines,m=a.showlabels,g=d&&m,_=u.createLines(p,d||m,e,f),b=u.createLineClip(p,g,r,i.trace.uid),w=t.selectAll(\"g.contourlabels\").data(m?[0]:[]);if(w.exit().remove(),w.enter().append(\"g\").classed(\"contourlabels\",!0),m){var T=l.xaxis,k=l.yaxis,A=T._length,M=k._length,S=[[[0,0],[A,0],[A,M],[0,M]]],E=[];s.clearLocationCache();var C=u.labelFormatter(r,i),L=o.tester.append(\"text\").attr(\"data-notex\",1).call(o.font,a.labelfont),I={left:0,right:A,center:A/2,top:0,bottom:M,middle:M/2},P=Math.sqrt(A*A+M*M),z=h.LABELDISTANCE*P/Math.max(1,e.length/h.LABELINCREASE);_.each((function(t){var e=u.calcTextOpts(t.level,C,L,r);n.select(this).selectAll(\"path\").each((function(r){var n=this,i=s.getVisibleSegment(n,I,e.height/2);if(i&&(function(t,e,r,n,i,a){for(var o,s=0;s<r.pedgepaths.length;s++)e===r.pedgepaths[s]&&(o=r.edgepaths[s]);if(o){var l=i.a[0],c=i.a[i.a.length-1],u=i.b[0],h=i.b[i.b.length-1],f=y(t,0,1),p=y(t,n.total,n.total-1),d=g(o[0],f),m=n.total-g(o[o.length-1],p);n.min<d&&(n.min=d),n.max>m&&(n.max=m),n.len=n.max-n.min}function g(t,e){var r,n=0,o=.1;return(Math.abs(t[0]-l)<o||Math.abs(t[0]-c)<o)&&(r=v(i.dxydb_rough(t[0],t[1],o)),n=Math.max(n,a*x(e,r)/2)),(Math.abs(t[1]-u)<o||Math.abs(t[1]-h)<o)&&(r=v(i.dxyda_rough(t[0],t[1],o)),n=Math.max(n,a*x(e,r)/2)),n}}(n,r,t,i,c,e.height),!(i.len<(e.width+e.height)*h.LABELMIN)))for(var a=Math.min(Math.ceil(i.len/z),h.LABELMAX),o=0;o<a;o++){var l=u.findBestTextLocation(n,i,e,E,I);if(!l)break;u.addLabelData(l,e,E,S)}}))})),L.remove(),u.drawLabels(w,E,r,b,g?S:null)}m&&!d&&_.remove()}(_,L,t,T,C,e,A),o.setClipUrl(_,A._clipPathId,t)}function H(t){var e=A.ab2xy(t[0],t[1],!0);return[b.c2p(e[0]),w.c2p(e[1])]}}))}},70690:function(t,e,r){\"use strict\";var n=r(87163),i=r(3208).rb,a=r(9829),o=r(71388),s=r(93049).extendFlat;t.exports=s({lon:o.lon,lat:o.lat,z:{valType:\"data_array\",editType:\"calc\"},radius:{valType:\"number\",editType:\"plot\",arrayOk:!0,min:1,dflt:30},below:{valType:\"string\",editType:\"plot\"},text:o.text,hovertext:o.hovertext,hoverinfo:s({},a.hoverinfo,{flags:[\"lon\",\"lat\",\"z\",\"text\",\"name\"]}),hovertemplate:i(),showlegend:s({},a.showlegend,{dflt:!1})},n(\"\",{cLetter:\"z\",editTypeOverride:\"calc\"}))},91582:function(t,e,r){\"use strict\";var n=r(10721),i=r(34809).isArrayOrTypedArray,a=r(63821).BADNUM,o=r(28379),s=r(34809)._;t.exports=function(t,e){for(var r=e._length,l=new Array(r),c=e.z,u=i(c)&&c.length,h=0;h<r;h++){var f=l[h]={},p=e.lon[h],d=e.lat[h];if(f.lonlat=n(p)&&n(d)?[+p,+d]:[a,a],u){var m=c[h];f.z=n(m)?m:a}}return o(t,e,{vals:u?c:[0,1],containerStr:\"\",cLetter:\"z\"}),r&&(l[0].t={labels:{lat:s(t,\"lat:\")+\" \",lon:s(t,\"lon:\")+\" \"}}),l}},95012:function(t,e,r){\"use strict\";var n=r(10721),i=r(34809),a=r(78766),o=r(88856),s=r(63821).BADNUM,l=r(39532).makeBlank;t.exports=function(t){var e=t[0].trace,r=!0===e.visible&&0!==e._length,c=e._opts={heatmap:{layout:{visibility:\"none\"},paint:{}},geojson:l()};if(!r)return c;var u,h=[],f=e.z,p=e.radius,d=i.isArrayOrTypedArray(f)&&f.length,m=i.isArrayOrTypedArray(p);for(u=0;u<t.length;u++){var g=t[u],y=g.lonlat;if(y[0]!==s){var v={};if(d){var x=g.z;v.z=x!==s?x:0}m&&(v.r=n(p[u])&&p[u]>0?+p[u]:0),h.push({type:\"Feature\",geometry:{type:\"Point\",coordinates:y},properties:v})}}var _=o.extractOpts(e),b=_.reversescale?o.flipScale(_.colorscale):_.colorscale,w=b[0][1],T=[\"interpolate\",[\"linear\"],[\"heatmap-density\"],0,a.opacity(w)<1?w:a.addOpacity(w,0)];for(u=1;u<b.length;u++)T.push(b[u][0],b[u][1]);var k=[\"interpolate\",[\"linear\"],[\"get\",\"z\"],_.min,0,_.max,1];return i.extendFlat(c.heatmap.paint,{\"heatmap-weight\":d?k:1/(_.max-_.min),\"heatmap-color\":T,\"heatmap-radius\":m?{type:\"identity\",property:\"r\"}:e.radius,\"heatmap-opacity\":e.opacity}),c.geojson={type:\"FeatureCollection\",features:h},c.heatmap.layout.visibility=\"visible\",c}},9653:function(t,e,r){\"use strict\";var n=r(34809),i=r(39356),a=r(70690);t.exports=function(t,e,r,o){function s(r,i){return n.coerce(t,e,a,r,i)}var l=s(\"lon\")||[],c=s(\"lat\")||[],u=Math.min(l.length,c.length);u?(e._length=u,s(\"z\"),s(\"radius\"),s(\"below\"),s(\"text\"),s(\"hovertext\"),s(\"hovertemplate\"),i(t,e,o,s,{prefix:\"\",cLetter:\"z\"})):e.visible=!1}},16302:function(t){\"use strict\";t.exports=function(t,e){return t.lon=e.lon,t.lat=e.lat,t.z=e.z,t}},28045:function(t,e,r){\"use strict\";var n=r(29714),i=r(67275).hoverPoints,a=r(67275).getExtraText;t.exports=function(t,e,r){var o=i(t,e,r);if(o){var s=o[0],l=s.cd,c=l[0].trace,u=l[s.index];if(delete s.color,\"z\"in u){var h=s.subplot.mockAxis;s.z=u.z,s.zLabel=n.tickText(h,h.c2l(u.z),\"hover\").text}return s.extraText=a(c,u,l[0].t.labels),[s]}}},91995:function(t,e,r){\"use strict\";t.exports={attributes:r(70690),supplyDefaults:r(9653),colorbar:r(12431),formatLabels:r(66762),calc:r(91582),plot:r(99932),hoverPoints:r(28045),eventData:r(16302),getBelow:function(t,e){for(var r=e.getMapLayers(),n=0;n<r.length;n++){var i=r[n],a=i.id;if(\"symbol\"===i.type&&\"string\"==typeof a&&-1===a.indexOf(\"plotly-\"))return a}},moduleType:\"trace\",name:\"densitymap\",basePlotModule:r(34091),categories:[\"map\",\"gl\",\"showLegend\"],meta:{hr_name:\"density_map\"}}},99932:function(t,e,r){\"use strict\";var n=r(95012),i=r(8814).traceLayerPrefix;function a(t,e){this.type=\"densitymap\",this.subplot=t,this.uid=e,this.sourceId=\"source-\"+e,this.layerList=[[\"heatmap\",i+e+\"-heatmap\"]],this.below=null}var o=a.prototype;o.update=function(t){var e=this.subplot,r=this.layerList,i=n(t),a=e.belowLookup[\"trace-\"+this.uid];e.map.getSource(this.sourceId).setData(i.geojson),a!==this.below&&(this._removeLayers(),this._addLayers(i,a),this.below=a);for(var o=0;o<r.length;o++){var s=r[o],l=s[0],c=s[1],u=i[l];e.setOptions(c,\"setLayoutProperty\",u.layout),\"visible\"===u.layout.visibility&&e.setOptions(c,\"setPaintProperty\",u.paint)}},o._addLayers=function(t,e){for(var r=this.subplot,n=this.layerList,i=this.sourceId,a=0;a<n.length;a++){var o=n[a],s=o[0],l=t[s];r.addLayer({type:s,id:o[1],source:i,layout:l.layout,paint:l.paint},e)}},o._removeLayers=function(){for(var t=this.subplot.map,e=this.layerList,r=e.length-1;r>=0;r--)t.removeLayer(e[r][1])},o.dispose=function(){var t=this.subplot.map;this._removeLayers(),t.removeSource(this.sourceId)},t.exports=function(t,e){var r=e[0].trace,i=new a(t,r.uid),o=i.sourceId,s=n(e),l=i.below=t.belowLookup[\"trace-\"+r.uid];return t.map.addSource(o,{type:\"geojson\",data:s.geojson}),i._addLayers(s,l),i}},17347:function(t,e,r){\"use strict\";var n=r(87163),i=r(3208).rb,a=r(9829),o=r(95833),s=r(93049).extendFlat;t.exports=s({lon:o.lon,lat:o.lat,z:{valType:\"data_array\",editType:\"calc\"},radius:{valType:\"number\",editType:\"plot\",arrayOk:!0,min:1,dflt:30},below:{valType:\"string\",editType:\"plot\"},text:o.text,hovertext:o.hovertext,hoverinfo:s({},a.hoverinfo,{flags:[\"lon\",\"lat\",\"z\",\"text\",\"name\"]}),hovertemplate:i(),showlegend:s({},a.showlegend,{dflt:!1})},n(\"\",{cLetter:\"z\",editTypeOverride:\"calc\"}))},60675:function(t,e,r){\"use strict\";var n=r(10721),i=r(34809).isArrayOrTypedArray,a=r(63821).BADNUM,o=r(28379),s=r(34809)._;t.exports=function(t,e){for(var r=e._length,l=new Array(r),c=e.z,u=i(c)&&c.length,h=0;h<r;h++){var f=l[h]={},p=e.lon[h],d=e.lat[h];if(f.lonlat=n(p)&&n(d)?[+p,+d]:[a,a],u){var m=c[h];f.z=n(m)?m:a}}return o(t,e,{vals:u?c:[0,1],containerStr:\"\",cLetter:\"z\"}),r&&(l[0].t={labels:{lat:s(t,\"lat:\")+\" \",lon:s(t,\"lon:\")+\" \"}}),l}},78391:function(t,e,r){\"use strict\";var n=r(10721),i=r(34809),a=r(78766),o=r(88856),s=r(63821).BADNUM,l=r(39532).makeBlank;t.exports=function(t){var e=t[0].trace,r=!0===e.visible&&0!==e._length,c=e._opts={heatmap:{layout:{visibility:\"none\"},paint:{}},geojson:l()};if(!r)return c;var u,h=[],f=e.z,p=e.radius,d=i.isArrayOrTypedArray(f)&&f.length,m=i.isArrayOrTypedArray(p);for(u=0;u<t.length;u++){var g=t[u],y=g.lonlat;if(y[0]!==s){var v={};if(d){var x=g.z;v.z=x!==s?x:0}m&&(v.r=n(p[u])&&p[u]>0?+p[u]:0),h.push({type:\"Feature\",geometry:{type:\"Point\",coordinates:y},properties:v})}}var _=o.extractOpts(e),b=_.reversescale?o.flipScale(_.colorscale):_.colorscale,w=b[0][1],T=[\"interpolate\",[\"linear\"],[\"heatmap-density\"],0,a.opacity(w)<1?w:a.addOpacity(w,0)];for(u=1;u<b.length;u++)T.push(b[u][0],b[u][1]);var k=[\"interpolate\",[\"linear\"],[\"get\",\"z\"],_.min,0,_.max,1];return i.extendFlat(c.heatmap.paint,{\"heatmap-weight\":d?k:1/(_.max-_.min),\"heatmap-color\":T,\"heatmap-radius\":m?{type:\"identity\",property:\"r\"}:e.radius,\"heatmap-opacity\":e.opacity}),c.geojson={type:\"FeatureCollection\",features:h},c.heatmap.layout.visibility=\"visible\",c}},1892:function(t,e,r){\"use strict\";var n=r(34809),i=r(39356),a=r(17347);t.exports=function(t,e,r,o){function s(r,i){return n.coerce(t,e,a,r,i)}var l=s(\"lon\")||[],c=s(\"lat\")||[],u=Math.min(l.length,c.length);u?(e._length=u,s(\"z\"),s(\"radius\"),s(\"below\"),s(\"text\"),s(\"hovertext\"),s(\"hovertemplate\"),i(t,e,o,s,{prefix:\"\",cLetter:\"z\"})):e.visible=!1}},8919:function(t){\"use strict\";t.exports=function(t,e){return t.lon=e.lon,t.lat=e.lat,t.z=e.z,t}},54478:function(t,e,r){\"use strict\";var n=r(29714),i=r(18016).hoverPoints,a=r(18016).getExtraText;t.exports=function(t,e,r){var o=i(t,e,r);if(o){var s=o[0],l=s.cd,c=l[0].trace,u=l[s.index];if(delete s.color,\"z\"in u){var h=s.subplot.mockAxis;s.z=u.z,s.zLabel=n.tickText(h,h.c2l(u.z),\"hover\").text}return s.extraText=a(c,u,l[0].t.labels),[s]}}},81264:function(t,e,r){\"use strict\";[\"*densitymapbox* trace is deprecated!\",\"Please consider switching to the *densitymap* trace type and `map` subplots.\",\"Learn more at: https://plotly.com/javascript/maplibre-migration/\"].join(\" \"),t.exports={attributes:r(17347),supplyDefaults:r(1892),colorbar:r(12431),formatLabels:r(69009),calc:r(60675),plot:r(5165),hoverPoints:r(54478),eventData:r(8919),getBelow:function(t,e){for(var r=e.getMapLayers(),n=0;n<r.length;n++){var i=r[n],a=i.id;if(\"symbol\"===i.type&&\"string\"==typeof a&&-1===a.indexOf(\"plotly-\"))return a}},moduleType:\"trace\",name:\"densitymapbox\",basePlotModule:r(68192),categories:[\"mapbox\",\"gl\",\"showLegend\"],meta:{hr_name:\"density_mapbox\"}}},5165:function(t,e,r){\"use strict\";var n=r(78391),i=r(44245).traceLayerPrefix;function a(t,e){this.type=\"densitymapbox\",this.subplot=t,this.uid=e,this.sourceId=\"source-\"+e,this.layerList=[[\"heatmap\",i+e+\"-heatmap\"]],this.below=null}var o=a.prototype;o.update=function(t){var e=this.subplot,r=this.layerList,i=n(t),a=e.belowLookup[\"trace-\"+this.uid];e.map.getSource(this.sourceId).setData(i.geojson),a!==this.below&&(this._removeLayers(),this._addLayers(i,a),this.below=a);for(var o=0;o<r.length;o++){var s=r[o],l=s[0],c=s[1],u=i[l];e.setOptions(c,\"setLayoutProperty\",u.layout),\"visible\"===u.layout.visibility&&e.setOptions(c,\"setPaintProperty\",u.paint)}},o._addLayers=function(t,e){for(var r=this.subplot,n=this.layerList,i=this.sourceId,a=0;a<n.length;a++){var o=n[a],s=o[0],l=t[s];r.addLayer({type:s,id:o[1],source:i,layout:l.layout,paint:l.paint},e)}},o._removeLayers=function(){for(var t=this.subplot.map,e=this.layerList,r=e.length-1;r>=0;r--)t.removeLayer(e[r][1])},o.dispose=function(){var t=this.subplot.map;this._removeLayers(),t.removeSource(this.sourceId)},t.exports=function(t,e){var r=e[0].trace,i=new a(t,r.uid),o=i.sourceId,s=n(e),l=i.below=t.belowLookup[\"trace-\"+r.uid];return t.map.addSource(o,{type:\"geojson\",data:s.geojson}),i._addLayers(s,l),i}},43179:function(t,e,r){\"use strict\";var n=r(34809);t.exports=function(t,e){for(var r=0;r<t.length;r++)t[r].i=r;n.mergeArray(e.text,t,\"tx\"),n.mergeArray(e.hovertext,t,\"htx\");var i=e.marker;if(i){n.mergeArray(i.opacity,t,\"mo\"),n.mergeArray(i.color,t,\"mc\");var a=i.line;a&&(n.mergeArray(a.color,t,\"mlc\"),n.mergeArrayCastPositive(a.width,t,\"mlw\"))}}},62824:function(t,e,r){\"use strict\";var n,i=r(81481),a=r(36640).line,o=r(9829),s=r(80712).axisHoverFormat,l=r(3208).rb,c=r(3208).ay,u=r(87948),h=r(93049).extendFlat,f=r(78766);t.exports={x:i.x,x0:i.x0,dx:i.dx,y:i.y,y0:i.y0,dy:i.dy,xperiod:i.xperiod,yperiod:i.yperiod,xperiod0:i.xperiod0,yperiod0:i.yperiod0,xperiodalignment:i.xperiodalignment,yperiodalignment:i.yperiodalignment,xhoverformat:s(\"x\"),yhoverformat:s(\"y\"),hovertext:i.hovertext,hovertemplate:l({},{keys:u.eventDataKeys}),hoverinfo:h({},o.hoverinfo,{flags:[\"name\",\"x\",\"y\",\"text\",\"percent initial\",\"percent previous\",\"percent total\"]}),textinfo:{valType:\"flaglist\",flags:[\"label\",\"text\",\"percent initial\",\"percent previous\",\"percent total\",\"value\"],extras:[\"none\"],editType:\"plot\",arrayOk:!1},texttemplate:c({editType:\"plot\"},{keys:u.eventDataKeys.concat([\"label\",\"value\"])}),text:i.text,textposition:i.textposition,insidetextanchor:h({},i.insidetextanchor,{dflt:\"middle\"}),textangle:h({},i.textangle,{dflt:0}),textfont:i.textfont,insidetextfont:i.insidetextfont,outsidetextfont:i.outsidetextfont,constraintext:i.constraintext,cliponaxis:i.cliponaxis,orientation:h({},i.orientation,{}),offset:h({},i.offset,{arrayOk:!1}),width:h({},i.width,{arrayOk:!1}),marker:(n=h({},i.marker),delete n.pattern,delete n.cornerradius,n),connector:{fillcolor:{valType:\"color\",editType:\"style\"},line:{color:h({},a.color,{dflt:f.defaultLine}),width:h({},a.width,{dflt:0,editType:\"plot\"}),dash:a.dash,editType:\"style\"},visible:{valType:\"boolean\",dflt:!0,editType:\"plot\"},editType:\"plot\"},offsetgroup:i.offsetgroup,alignmentgroup:i.alignmentgroup,zorder:i.zorder}},28152:function(t,e,r){\"use strict\";var n=r(29714),i=r(40528),a=r(43179),o=r(48861),s=r(63821).BADNUM;function l(t){return t===s?0:t}t.exports=function(t,e){var r,c,u,h,f,p,d,m,g=n.getFromId(t,e.xaxis||\"x\"),y=n.getFromId(t,e.yaxis||\"y\");\"h\"===e.orientation?(r=g.makeCalcdata(e,\"x\"),u=y.makeCalcdata(e,\"y\"),h=i(e,y,\"y\",u),f=!!e.yperiodalignment,p=\"y\"):(r=y.makeCalcdata(e,\"y\"),u=g.makeCalcdata(e,\"x\"),h=i(e,g,\"x\",u),f=!!e.xperiodalignment,p=\"x\"),c=h.vals;var v,x=Math.min(c.length,r.length),_=new Array(x);for(e._base=[],d=0;d<x;d++){r[d]<0&&(r[d]=s);var b=!1;r[d]!==s&&d+1<x&&r[d+1]!==s&&(b=!0),m=_[d]={p:c[d],s:r[d],cNext:b},e._base[d]=-.5*m.s,f&&(_[d].orig_p=u[d],_[d][p+\"End\"]=h.ends[d],_[d][p+\"Start\"]=h.starts[d]),e.ids&&(m.id=String(e.ids[d])),0===d&&(_[0].vTotal=0),_[0].vTotal+=l(m.s),m.begR=l(m.s)/l(_[0].s)}for(d=0;d<x;d++)(m=_[d]).s!==s&&(m.sumR=m.s/_[0].vTotal,m.difR=void 0!==v?m.s/v:1,v=m.s);return a(_,e),o(_,e),_}},87948:function(t){\"use strict\";t.exports={eventDataKeys:[\"percentInitial\",\"percentPrevious\",\"percentTotal\"]}},82539:function(t,e,r){\"use strict\";var n=r(24782).setGroupPositions;t.exports=function(t,e){var r,i,a=t._fullLayout,o=t._fullData,s=t.calcdata,l=e.xaxis,c=e.yaxis,u=[],h=[],f=[];for(i=0;i<o.length;i++){var p=o[i],d=\"h\"===p.orientation;!0===p.visible&&p.xaxis===l._id&&p.yaxis===c._id&&\"funnel\"===p.type&&(r=s[i],d?f.push(r):h.push(r),u.push(r))}var m={mode:a.funnelmode,norm:a.funnelnorm,gap:a.funnelgap,groupgap:a.funnelgroupgap};for(n(t,l,c,h,m),n(t,c,l,f,m),i=0;i<u.length;i++){r=u[i];for(var g=0;g<r.length;g++)g+1<r.length&&(r[g].nextP0=r[g+1].p0,r[g].nextS0=r[g+1].s0,r[g].nextP1=r[g+1].p1,r[g].nextS1=r[g+1].s1)}}},30495:function(t,e,r){\"use strict\";var n=r(34809),i=r(36301),a=r(17550).handleText,o=r(99867),s=r(99669),l=r(62824),c=r(78766);t.exports={supplyDefaults:function(t,e,r,i){function u(r,i){return n.coerce(t,e,l,r,i)}if(o(t,e,i,u)){s(t,e,i,u),u(\"xhoverformat\"),u(\"yhoverformat\"),u(\"orientation\",e.y&&!e.x?\"v\":\"h\"),u(\"offset\"),u(\"width\");var h=u(\"text\");u(\"hovertext\"),u(\"hovertemplate\");var f=u(\"textposition\");a(t,e,i,u,f,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),\"none\"===e.textposition||e.texttemplate||u(\"textinfo\",n.isArrayOrTypedArray(h)?\"text+value\":\"value\");var p=u(\"marker.color\",r);u(\"marker.line.color\",c.defaultLine),u(\"marker.line.width\"),u(\"connector.visible\")&&(u(\"connector.fillcolor\",function(t){var e=n.isArrayOrTypedArray(t)?\"#000\":t;return c.addOpacity(e,.5*c.opacity(e))}(p)),u(\"connector.line.width\")&&(u(\"connector.line.color\"),u(\"connector.line.dash\"))),u(\"zorder\")}else e.visible=!1},crossTraceDefaults:function(t,e){var r,a;function o(t){return n.coerce(a._input,a,l,t)}if(\"group\"===e.funnelmode)for(var s=0;s<t.length;s++)r=(a=t[s])._input,i(r,a,e,o)}}},29412:function(t){\"use strict\";t.exports=function(t,e){return t.x=\"xVal\"in e?e.xVal:e.x,t.y=\"yVal\"in e?e.yVal:e.y,\"percentInitial\"in e&&(t.percentInitial=e.percentInitial),\"percentPrevious\"in e&&(t.percentPrevious=e.percentPrevious),\"percentTotal\"in e&&(t.percentTotal=e.percentTotal),e.xa&&(t.xaxis=e.xa),e.ya&&(t.yaxis=e.ya),t}},27759:function(t,e,r){\"use strict\";var n=r(78766).opacity,i=r(91664).hoverOnBars,a=r(34809).formatPercent;t.exports=function(t,e,r,o,s){var l=i(t,e,r,o,s);if(l){var c=l.cd,u=c[0].trace,h=\"h\"===u.orientation,f=c[l.index];l[(h?\"x\":\"y\")+\"LabelVal\"]=f.s,l.percentInitial=f.begR,l.percentInitialLabel=a(f.begR,1),l.percentPrevious=f.difR,l.percentPreviousLabel=a(f.difR,1),l.percentTotal=f.sumR,l.percentTotalLabel=a(f.sumR,1);var p=f.hi||u.hoverinfo,d=[];if(p&&\"none\"!==p&&\"skip\"!==p){var m=\"all\"===p,g=p.split(\"+\"),y=function(t){return m||-1!==g.indexOf(t)};y(\"percent initial\")&&d.push(l.percentInitialLabel+\" of initial\"),y(\"percent previous\")&&d.push(l.percentPreviousLabel+\" of previous\"),y(\"percent total\")&&d.push(l.percentTotalLabel+\" of total\")}return l.extraText=d.join(\"<br>\"),l.color=function(t,e){var r=t.marker,i=e.mc||r.color,a=e.mlc||r.line.color,o=e.mlw||r.line.width;return n(i)?i:n(a)&&o?a:void 0}(u,f),[l]}}},52213:function(t,e,r){\"use strict\";t.exports={attributes:r(62824),layoutAttributes:r(93795),supplyDefaults:r(30495).supplyDefaults,crossTraceDefaults:r(30495).crossTraceDefaults,supplyLayoutDefaults:r(34980),calc:r(28152),crossTraceCalc:r(82539),plot:r(83482),style:r(7240).style,hoverPoints:r(27759),eventData:r(29412),selectPoints:r(88384),moduleType:\"trace\",name:\"funnel\",basePlotModule:r(37703),categories:[\"bar-like\",\"cartesian\",\"svg\",\"oriented\",\"showLegend\",\"zoomScale\"],meta:{}}},93795:function(t){\"use strict\";t.exports={funnelmode:{valType:\"enumerated\",values:[\"stack\",\"group\",\"overlay\"],dflt:\"stack\",editType:\"calc\"},funnelgap:{valType:\"number\",min:0,max:1,editType:\"calc\"},funnelgroupgap:{valType:\"number\",min:0,max:1,dflt:0,editType:\"calc\"}}},34980:function(t,e,r){\"use strict\";var n=r(34809),i=r(93795);t.exports=function(t,e,r){var a=!1;function o(r,a){return n.coerce(t,e,i,r,a)}for(var s=0;s<r.length;s++){var l=r[s];if(l.visible&&\"funnel\"===l.type){a=!0;break}}a&&(o(\"funnelmode\"),o(\"funnelgap\",.2),o(\"funnelgroupgap\"))}},83482:function(t,e,r){\"use strict\";var n=r(45568),i=r(34809),a=r(62203),o=r(63821).BADNUM,s=r(32995),l=r(84102).clearMinTextSize;function c(t,e,r,n){var i=[],a=[],o=n?e:r,s=n?r:e;return i[0]=o.c2p(t.s0,!0),a[0]=s.c2p(t.p0,!0),i[1]=o.c2p(t.s1,!0),a[1]=s.c2p(t.p1,!0),i[2]=o.c2p(t.nextS0,!0),a[2]=s.c2p(t.nextP0,!0),i[3]=o.c2p(t.nextS1,!0),a[3]=s.c2p(t.nextP1,!0),n?[i,a]:[a,i]}t.exports=function(t,e,r,u){var h=t._fullLayout;l(\"funnel\",h),function(t,e,r,s){var l=e.xaxis,u=e.yaxis;i.makeTraceGroups(s,r,\"trace bars\").each((function(r){var s=n.select(this),h=r[0].trace,f=i.ensureSingle(s,\"g\",\"regions\");if(h.connector&&h.connector.visible){var p=\"h\"===h.orientation,d=f.selectAll(\"g.region\").data(i.identity);d.enter().append(\"g\").classed(\"region\",!0),d.exit().remove();var m=d.size();d.each((function(r,s){if(s===m-1||r.cNext){var h=c(r,l,u,p),f=h[0],d=h[1],g=\"\";f[0]!==o&&d[0]!==o&&f[1]!==o&&d[1]!==o&&f[2]!==o&&d[2]!==o&&f[3]!==o&&d[3]!==o&&(g+=p?\"M\"+f[0]+\",\"+d[1]+\"L\"+f[2]+\",\"+d[2]+\"H\"+f[3]+\"L\"+f[1]+\",\"+d[1]+\"Z\":\"M\"+f[1]+\",\"+d[1]+\"L\"+f[2]+\",\"+d[3]+\"V\"+d[2]+\"L\"+f[1]+\",\"+d[0]+\"Z\"),\"\"===g&&(g=\"M0,0Z\"),i.ensureSingle(n.select(this),\"path\").attr(\"d\",g).call(a.setClipUrl,e.layerClipId,t)}}))}else f.remove()}))}(t,e,r,u),function(t,e,r,o){var s=e.xaxis,l=e.yaxis;i.makeTraceGroups(o,r,\"trace bars\").each((function(r){var o=n.select(this),u=r[0].trace,h=i.ensureSingle(o,\"g\",\"lines\");if(u.connector&&u.connector.visible&&u.connector.line.width){var f=\"h\"===u.orientation,p=h.selectAll(\"g.line\").data(i.identity);p.enter().append(\"g\").classed(\"line\",!0),p.exit().remove();var d=p.size();p.each((function(r,o){if(o===d-1||r.cNext){var u=c(r,s,l,f),h=u[0],p=u[1],m=\"\";void 0!==h[3]&&void 0!==p[3]&&(f?(m+=\"M\"+h[0]+\",\"+p[1]+\"L\"+h[2]+\",\"+p[2],m+=\"M\"+h[1]+\",\"+p[1]+\"L\"+h[3]+\",\"+p[2]):(m+=\"M\"+h[1]+\",\"+p[1]+\"L\"+h[2]+\",\"+p[3],m+=\"M\"+h[1]+\",\"+p[0]+\"L\"+h[2]+\",\"+p[2])),\"\"===m&&(m=\"M0,0Z\"),i.ensureSingle(n.select(this),\"path\").attr(\"d\",m).call(a.setClipUrl,e.layerClipId,t)}}))}else h.remove()}))}(t,e,r,u),s.plot(t,e,r,u,{mode:h.funnelmode,norm:h.funnelmode,gap:h.funnelgap,groupgap:h.funnelgroupgap})}},7240:function(t,e,r){\"use strict\";var n=r(45568),i=r(62203),a=r(78766),o=r(20438).DESELECTDIM,s=r(6851),l=r(84102).resizeText,c=s.styleTextPoints;t.exports={style:function(t,e,r){var s=r||n.select(t).selectAll('g[class^=\"funnellayer\"]').selectAll(\"g.trace\");l(t,s,\"funnel\"),s.style(\"opacity\",(function(t){return t[0].trace.opacity})),s.each((function(e){var r=n.select(this),s=e[0].trace;r.selectAll(\".point > path\").each((function(t){if(!t.isBlank){var e=s.marker;n.select(this).call(a.fill,t.mc||e.color).call(a.stroke,t.mlc||e.line.color).call(i.dashLine,e.line.dash,t.mlw||e.line.width).style(\"opacity\",s.selectedpoints&&!t.selected?o:1)}})),c(r,s,t),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 t=s.connector.line;i.lineGroupStyle(n.select(this).selectAll(\"path\"),t.width,t.color,t.dash)}))}))}}},63447:function(t,e,r){\"use strict\";var n=r(55412),i=r(9829),a=r(13792).u,o=r(3208).rb,s=r(3208).ay,l=r(93049).extendFlat;t.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\"},pattern:n.marker.pattern,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\"}}},86817:function(t,e,r){\"use strict\";var n=r(44122);e.name=\"funnelarea\",e.plot=function(t,r,i,a){n.plotBasePlot(e.name,t,r,i,a)},e.clean=function(t,r,i,a){n.cleanBasePlot(e.name,t,r,i,a)}},2807:function(t,e,r){\"use strict\";var n=r(44148);t.exports={calc:function(t,e){return n.calc(t,e)},crossTraceCalc:function(t){n.crossTraceCalc(t,{type:\"funnelarea\"})}}},79824:function(t,e,r){\"use strict\";var n=r(34809),i=r(63447),a=r(13792).N,o=r(17550).handleText,s=r(46979).handleLabelsAndValues,l=r(46979).handleMarkerDefaults;t.exports=function(t,e,r,c){function u(r,a){return n.coerce(t,e,i,r,a)}var h=u(\"labels\"),f=u(\"values\"),p=s(h,f),d=p.len;if(e._hasLabels=p.hasLabels,e._hasValues=p.hasValues,!e._hasLabels&&e._hasValues&&(u(\"label0\"),u(\"dlabel\")),d){e._length=d,l(t,e,c,u),u(\"scalegroup\");var m,g=u(\"text\"),y=u(\"texttemplate\");if(y||(m=u(\"textinfo\",Array.isArray(g)?\"text+percent\":\"percent\")),u(\"hovertext\"),u(\"hovertemplate\"),y||m&&\"none\"!==m){var v=u(\"textposition\");o(t,e,c,u,v,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1})}else\"none\"===m&&u(\"textposition\",\"none\");a(e,c,u),u(\"title.text\")&&(u(\"title.position\"),n.coerceFont(u,\"title.font\",c.font)),u(\"aspectratio\"),u(\"baseratio\")}else e.visible=!1}},91132:function(t,e,r){\"use strict\";t.exports={moduleType:\"trace\",name:\"funnelarea\",basePlotModule:r(86817),categories:[\"pie-like\",\"funnelarea\",\"showLegend\"],attributes:r(63447),layoutAttributes:r(10270),supplyDefaults:r(79824),supplyLayoutDefaults:r(69161),calc:r(2807).calc,crossTraceCalc:r(2807).crossTraceCalc,plot:r(96673),style:r(13757),styleOne:r(32891),meta:{}}},10270:function(t,e,r){\"use strict\";var n=r(4031).hiddenlabels;t.exports={hiddenlabels:n,funnelareacolorway:{valType:\"colorlist\",editType:\"calc\"},extendfunnelareacolors:{valType:\"boolean\",dflt:!0,editType:\"calc\"}}},69161:function(t,e,r){\"use strict\";var n=r(34809),i=r(10270);t.exports=function(t,e){function r(r,a){return n.coerce(t,e,i,r,a)}r(\"hiddenlabels\"),r(\"funnelareacolorway\",e.colorway),r(\"extendfunnelareacolors\")}},96673:function(t,e,r){\"use strict\";var n=r(45568),i=r(62203),a=r(34809),o=a.strScale,s=a.strTranslate,l=r(30635),c=r(32995).toMoveInsideBar,u=r(84102),h=u.recordMinTextSize,f=u.clearMinTextSize,p=r(37252),d=r(35734),m=d.attachFxHandlers,g=d.determineInsideTextFont,y=d.layoutAreas,v=d.prerenderTitles,x=d.positionTitleOutside,_=d.formatSliceLabel;function b(t,e){return\"l\"+(e[0]-t[0])+\",\"+(e[1]-t[1])}t.exports=function(t,e){var r=t._context.staticPlot,u=t._fullLayout;f(\"funnelarea\",u),v(e,t),y(e,u._size),a.makeTraceGroups(u._funnelarealayer,e,\"trace\").each((function(e){var f=n.select(this),d=e[0],y=d.trace;!function(t){if(t.length){var e=t[0],r=e.trace,n=r.aspectratio,i=r.baseratio;i>.999&&(i=.999);var a,o,s,l=Math.pow(i,2),c=e.vTotal,u=c,h=c*l/(1-l)/c,f=[];for(f.push(E()),o=t.length-1;o>-1;o--)if(!(s=t[o]).hidden){var p=s.v/u;h+=p,f.push(E())}var d=1/0,m=-1/0;for(o=0;o<f.length;o++)a=f[o],d=Math.min(d,a[1]),m=Math.max(m,a[1]);for(o=0;o<f.length;o++)f[o][1]-=(m+d)/2;var g=f[f.length-1][0],y=e.r,v=(m-d)/2,x=y/g,_=y/v*n;for(e.r=_*v,o=0;o<f.length;o++)f[o][0]*=x,f[o][1]*=_;var b,w,T=[-(a=f[0])[0],a[1]],k=[a[0],a[1]],A=0;for(o=t.length-1;o>-1;o--)if(!(s=t[o]).hidden){var M=f[A+=1][0],S=f[A][1];s.TL=[-M,S],s.TR=[M,S],s.BL=T,s.BR=k,s.pxmid=(b=s.TR,w=s.BR,[.5*(b[0]+w[0]),.5*(b[1]+w[1])]),T=s.TL,k=s.TR}}function E(){var t,e={x:t=Math.sqrt(h),y:-t};return[e.x,e.y]}}(e),f.each((function(){var f=n.select(this).selectAll(\"g.slice\").data(e);f.enter().append(\"g\").classed(\"slice\",!0),f.exit().remove(),f.each((function(o,s){if(o.hidden)n.select(this).selectAll(\"path,g\").remove();else{o.pointNumber=o.i,o.curveNumber=y.index;var f=d.cx,v=d.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(m,t,e);var T=\"M\"+(f+o.TR[0])+\",\"+(v+o.TR[1])+b(o.TR,o.BR)+b(o.BR,o.BL)+b(o.BL,o.TL)+\"Z\";w.attr(\"d\",T),_(t,o,d);var k=p.castOption(y.textposition,o.pts),A=x.selectAll(\"g.slicetext\").data(o.text&&\"none\"!==k?[0]:[]);A.enter().append(\"g\").classed(\"slicetext\",!0),A.exit().remove(),A.each((function(){var r=a.ensureSingle(n.select(this),\"text\",\"\",(function(t){t.attr(\"data-notex\",1)})),p=a.ensureUniformFontSize(t,g(y,o,u.font));r.text(o.text).attr({class:\"slicetext\",transform:\"\",\"text-anchor\":\"middle\"}).call(i.font,p).call(l.convertToTspans,t);var d,m,x,_=i.bBox(r.node()),b=Math.min(o.BL[1],o.BR[1])+v,w=Math.max(o.TL[1],o.TR[1])+v;m=Math.max(o.TL[0],o.BL[0])+f,x=Math.min(o.TR[0],o.BR[0])+f,(d=c(m,x,b,w,_,{isHorizontal:!0,constrained:!0,angle:0,anchor:\"middle\"})).fontSize=p.size,h(y.type,d,u),e[s].transform=d,a.setTransormAndDisplay(r,d)}))}}));var v=n.select(this).selectAll(\"g.titletext\").data(y.title.text?[0]:[]);v.enter().append(\"g\").classed(\"titletext\",!0),v.exit().remove(),v.each((function(){var e=a.ensureSingle(n.select(this),\"text\",\"\",(function(t){t.attr(\"data-notex\",1)})),r=y.title.text;y._meta&&(r=a.templateString(r,y._meta)),e.text(r).attr({class:\"titletext\",transform:\"\",\"text-anchor\":\"middle\"}).call(i.font,y.title.font).call(l.convertToTspans,t);var c=x(d,u._size);e.attr(\"transform\",s(c.x,c.y)+o(Math.min(1,c.scale))+s(c.tx,c.ty))}))}))}))}},13757:function(t,e,r){\"use strict\";var n=r(45568),i=r(32891),a=r(84102).resizeText;t.exports=function(t){var e=t._fullLayout._funnelarealayer.selectAll(\".trace\");a(t,e,\"funnelarea\"),e.each((function(e){var r=e[0].trace,a=n.select(this);a.style({opacity:r.opacity}),a.selectAll(\"path.surface\").each((function(e){n.select(this).call(i,e,r,t)}))}))}},81658:function(t,e,r){\"use strict\";var n=r(36640),i=r(9829),a=r(80337),o=r(80712).axisHoverFormat,s=r(3208).rb,l=r(3208).ay,c=r(87163),u=r(93049).extendFlat;t.exports=u({z:{valType:\"data_array\",editType:\"calc\"},x:u({},n.x,{impliedEdits:{xtype:\"array\"}}),x0:u({},n.x0,{impliedEdits:{xtype:\"scaled\"}}),dx:u({},n.dx,{impliedEdits:{xtype:\"scaled\"}}),y:u({},n.y,{impliedEdits:{ytype:\"array\"}}),y0:u({},n.y0,{impliedEdits:{ytype:\"scaled\"}}),dy:u({},n.dy,{impliedEdits:{ytype:\"scaled\"}}),xperiod:u({},n.xperiod,{impliedEdits:{xtype:\"scaled\"}}),yperiod:u({},n.yperiod,{impliedEdits:{ytype:\"scaled\"}}),xperiod0:u({},n.xperiod0,{impliedEdits:{xtype:\"scaled\"}}),yperiod0:u({},n.yperiod0,{impliedEdits:{ytype:\"scaled\"}}),xperiodalignment:u({},n.xperiodalignment,{impliedEdits:{xtype:\"scaled\"}}),yperiodalignment:u({},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:u({},i.showlegend,{dflt:!1}),zorder:n.zorder},{transforms:void 0},c(\"\",{cLetter:\"z\",autoColorDflt:!1}))},51670:function(t,e,r){\"use strict\";var n=r(33626),i=r(34809),a=r(29714),o=r(40528),s=r(19226),l=r(28379),c=r(87869),u=r(93877),h=r(69295),f=r(78106),p=r(80924),d=r(63821).BADNUM;function m(t){for(var e=[],r=t.length,n=0;n<r;n++){var i=t[n];i!==d&&e.push(i)}return e}t.exports=function(t,e){var r,g,y,v,x,_,b,w,T,k,A,M=a.getFromId(t,e.xaxis||\"x\"),S=a.getFromId(t,e.yaxis||\"y\"),E=n.traceIs(e,\"contour\"),C=n.traceIs(e,\"histogram\"),L=n.traceIs(e,\"gl2d\"),I=E?\"best\":e.zsmooth;if(M._minDtick=0,S._minDtick=0,C)v=(A=s(t,e)).orig_x,r=A.x,g=A.x0,y=A.dx,w=A.orig_y,x=A.y,_=A.y0,b=A.dy,T=A.z;else{var P=e.z;i.isArray1D(P)?(c(e,M,S,\"x\",\"y\",[\"z\"]),r=e._x,x=e._y,P=e._z):(v=e.x?M.makeCalcdata(e,\"x\"):[],w=e.y?S.makeCalcdata(e,\"y\"):[],r=o(e,M,\"x\",v).vals,x=o(e,S,\"y\",w).vals,e._x=r,e._y=x),g=e.x0,y=e.dx,_=e.y0,b=e.dy,T=u(P,e,M,S)}function z(t){I=e._input.zsmooth=e.zsmooth=!1,i.warn('cannot use zsmooth: \"fast\": '+t)}function O(t){if(t.length>1){var e=(t[t.length-1]-t[0])/(t.length-1),r=Math.abs(e/100);for(k=0;k<t.length-1;k++)if(Math.abs(t[k+1]-t[k]-e)>r)return!1}return!0}(M.rangebreaks||S.rangebreaks)&&(T=function(t,e,r){for(var n=[],i=-1,a=0;a<r.length;a++)if(e[a]!==d){n[++i]=[];for(var o=0;o<r[a].length;o++)t[o]!==d&&n[i].push(r[a][o])}return n}(r,x,T),C||(r=m(r),x=m(x),e._x=r,e._y=x)),C||!E&&!e.connectgaps||(e._emptypoints=f(T),h(T,e._emptypoints)),e._islinear=!1,\"log\"===M.type||\"log\"===S.type?\"fast\"===I&&z(\"log axis found\"):O(r)?O(x)?e._islinear=!0:\"fast\"===I&&z(\"y scale is not linear\"):\"fast\"===I&&z(\"x scale is not linear\");var D=i.maxRowLength(T),R=\"scaled\"===e.xtype?\"\":r,F=p(e,R,g,y,D,M),B=\"scaled\"===e.ytype?\"\":x,N=p(e,B,_,b,T.length,S);L||(e._extremes[M._id]=a.findExtremes(M,F),e._extremes[S._id]=a.findExtremes(S,N));var j={x:F,y:N,z:T,text:e._text||e.text,hovertext:e._hovertext||e.hovertext};if(e.xperiodalignment&&v&&(j.orig_x=v),e.yperiodalignment&&w&&(j.orig_y=w),R&&R.length===F.length-1&&(j.xCenter=R),B&&B.length===N.length-1&&(j.yCenter=B),C&&(j.xRanges=A.xRanges,j.yRanges=A.yRanges,j.pts=A.pts),E||l(t,e,{vals:T,cLetter:\"z\"}),E&&e.contours&&\"heatmap\"===e.contours.coloring){var U={type:\"contour\"===e.type?\"heatmap\":\"histogram2d\",xcalendar:e.xcalendar,ycalendar:e.ycalendar};j.xfill=p(U,R,g,y,D,M),j.yfill=p(U,B,_,b,T.length,S)}return[j]}},93877:function(t,e,r){\"use strict\";var n=r(10721),i=r(34809),a=r(63821).BADNUM;t.exports=function(t,e,r,o){var s,l,c,u,h,f;function p(t){if(n(t))return+t}if(e&&e.transpose){for(s=0,h=0;h<t.length;h++)s=Math.max(s,t[h].length);if(0===s)return!1;c=function(t){return t.length},u=function(t,e,r){return(t[r]||[])[e]}}else s=t.length,c=function(t,e){return t[e].length},u=function(t,e,r){return(t[e]||[])[r]};var d=function(t,e,r){return e===a||r===a?a:u(t,e,r)};function m(t){if(e&&\"carpet\"!==e.type&&\"contourcarpet\"!==e.type&&t&&\"category\"===t.type&&e[\"_\"+t._id.charAt(0)].length){var r=t._id.charAt(0),n={},o=e[\"_\"+r+\"CategoryMap\"]||e[r];for(h=0;h<o.length;h++)n[o[h]]=h;return function(e){var r=n[t._categories[e]];return r+1?r:a}}return i.identity}var g=m(r),y=m(o);o&&\"category\"===o.type&&(s=o._categories.length);var v=new Array(s);for(h=0;h<s;h++)for(l=r&&\"category\"===r.type?r._categories.length:c(t,h),v[h]=new Array(l),f=0;f<l;f++)v[h][f]=p(d(t,y(h),g(f)));return v}},12431:function(t){\"use strict\";t.exports={min:\"zmin\",max:\"zmax\"}},87869:function(t,e,r){\"use strict\";var n=r(34809),i=r(63821).BADNUM,a=r(40528);t.exports=function(t,e,r,o,s,l){var c=t._length,u=e.makeCalcdata(t,o),h=r.makeCalcdata(t,s);u=a(t,e,o,u).vals,h=a(t,r,s,h).vals;var f,p,d,m,g=t.text,y=void 0!==g&&n.isArray1D(g),v=t.hovertext,x=void 0!==v&&n.isArray1D(v),_=n.distinctVals(u),b=_.vals,w=n.distinctVals(h),T=w.vals,k=[],A=T.length,M=b.length;for(f=0;f<l.length;f++)k[f]=n.init2dArray(A,M);y&&(d=n.init2dArray(A,M)),x&&(m=n.init2dArray(A,M));var S=n.init2dArray(A,M);for(f=0;f<c;f++)if(u[f]!==i&&h[f]!==i){var E=n.findBin(u[f]+_.minDiff/2,b),C=n.findBin(h[f]+w.minDiff/2,T);for(p=0;p<l.length;p++){var L=t[l[p]];k[p][C][E]=L[f],S[C][E]=f}y&&(d[C][E]=g[f]),x&&(m[C][E]=v[f])}for(t[\"_\"+o]=b,t[\"_\"+s]=T,p=0;p<l.length;p++)t[\"_\"+l[p]]=k[p];y&&(t._text=d),x&&(t._hovertext=m),e&&\"category\"===e.type&&(t[\"_\"+o+\"CategoryMap\"]=b.map((function(t){return e._categories[t]}))),r&&\"category\"===r.type&&(t[\"_\"+s+\"CategoryMap\"]=T.map((function(t){return r._categories[t]}))),t._after2before=S}},52813:function(t,e,r){\"use strict\";var n=r(34809),i=r(86073),a=r(63814),o=r(99669),s=r(44143),l=r(39356),c=r(81658);t.exports=function(t,e,r,u){function h(r,i){return n.coerce(t,e,c,r,i)}i(t,e,h,u)?(o(t,e,u,h),h(\"xhoverformat\"),h(\"yhoverformat\"),h(\"text\"),h(\"hovertext\"),h(\"hovertemplate\"),a(h,u),s(t,e,h,u),h(\"hoverongaps\"),h(\"connectgaps\",n.isArray1D(e.z)&&!1!==e.zsmooth),l(t,e,u,h,{prefix:\"\",cLetter:\"z\"}),h(\"zorder\")):e.visible=!1}},78106:function(t,e,r){\"use strict\";var n=r(34809).maxRowLength;t.exports=function(t){var e,r,i,a,o,s,l,c,u=[],h={},f=[],p=t[0],d=[],m=[0,0,0],g=n(t);for(r=0;r<t.length;r++)for(e=d,d=p,p=t[r+1]||[],i=0;i<g;i++)void 0===d[i]&&((s=(void 0!==d[i-1]?1:0)+(void 0!==d[i+1]?1:0)+(void 0!==e[i]?1:0)+(void 0!==p[i]?1:0))?(0===r&&s++,0===i&&s++,r===t.length-1&&s++,i===d.length-1&&s++,s<4&&(h[[r,i]]=[r,i,s]),u.push([r,i,s])):f.push([r,i]));for(;f.length;){for(l={},c=!1,o=f.length-1;o>=0;o--)(s=((h[[(r=(a=f[o])[0])-1,i=a[1]]]||m)[2]+(h[[r+1,i]]||m)[2]+(h[[r,i-1]]||m)[2]+(h[[r,i+1]]||m)[2])/20)&&(l[a]=[r,i,s],f.splice(o,1),c=!0);if(!c)throw\"findEmpties iterated with no new neighbors\";for(a in l)h[a]=l[a],u.push(l[a])}return u.sort((function(t,e){return e[2]-t[2]}))}},93125:function(t,e,r){\"use strict\";var n=r(32141),i=r(34809),a=i.isArrayOrTypedArray,o=r(29714),s=r(88856).extractOpts;t.exports=function(t,e,r,l,c){c||(c={});var u,h,f,p,d=c.isContour,m=t.cd[0],g=m.trace,y=t.xa,v=t.ya,x=m.x,_=m.y,b=m.z,w=m.xCenter,T=m.yCenter,k=m.zmask,A=g.zhoverformat,M=x,S=_;if(!1!==t.index){try{f=Math.round(t.index[1]),p=Math.round(t.index[0])}catch(e){return void i.error(\"Error hovering on heatmap, pointNumber must be [row,col], found:\",t.index)}if(f<0||f>=b[0].length||p<0||p>b.length)return}else{if(n.inbox(e-x[0],e-x[x.length-1],0)>0||n.inbox(r-_[0],r-_[_.length-1],0)>0)return;if(d){var E;for(M=[2*x[0]-x[1]],E=1;E<x.length;E++)M.push((x[E]+x[E-1])/2);for(M.push([2*x[x.length-1]-x[x.length-2]]),S=[2*_[0]-_[1]],E=1;E<_.length;E++)S.push((_[E]+_[E-1])/2);S.push([2*_[_.length-1]-_[_.length-2]])}f=Math.max(0,Math.min(M.length-2,i.findBin(e,M))),p=Math.max(0,Math.min(S.length-2,i.findBin(r,S)))}var C,L,I=y.c2p(x[f]),P=y.c2p(x[f+1]),z=v.c2p(_[p]),O=v.c2p(_[p+1]);d?(C=m.orig_x||x,L=m.orig_y||_,P=I,u=C[f],O=z,h=L[p]):(C=m.orig_x||w||x,L=m.orig_y||T||_,u=w?C[f]:(C[f]+C[f+1])/2,h=T?L[p]:(L[p]+L[p+1])/2,y&&\"category\"===y.type&&(u=x[f]),v&&\"category\"===v.type&&(h=_[p]),g.zsmooth&&(I=P=y.c2p(u),z=O=v.c2p(h)));var D=b[p][f];if(k&&!k[p][f]&&(D=void 0),void 0!==D||g.hoverongaps){var R;a(m.hovertext)&&a(m.hovertext[p])?R=m.hovertext[p][f]:a(m.text)&&a(m.text[p])&&(R=m.text[p][f]);var F=s(g),B={type:\"linear\",range:[F.min,F.max],hoverformat:A,_separators:y._separators,_numFormat:y._numFormat},N=o.tickText(B,D,\"hover\").text;return[i.extendFlat(t,{index:g._after2before?g._after2before[p][f]:[p,f],distance:t.maxHoverDistance,spikeDistance:t.maxSpikeDistance,x0:I,x1:P,y0:z,y1:O,xLabelVal:u,yLabelVal:h,zLabelVal:D,zLabel:N,text:R})]}}},29251:function(t,e,r){\"use strict\";t.exports={attributes:r(81658),supplyDefaults:r(52813),calc:r(51670),plot:r(19236),colorbar:r(12431),style:r(12774),hoverPoints:r(93125),moduleType:\"trace\",name:\"heatmap\",basePlotModule:r(37703),categories:[\"cartesian\",\"svg\",\"2dMap\",\"showLegend\"],meta:{}}},69295:function(t,e,r){\"use strict\";var n=r(34809),i=[[-1,0],[1,0],[0,-1],[0,1]];function a(t){return.5-.25*Math.min(1,.5*t)}function o(t,e,r){var n,a,o,s,l,c,u,h,f,p,d,m,g,y=0;for(s=0;s<e.length;s++){for(a=(n=e[s])[0],o=n[1],d=t[a][o],p=0,f=0,l=0;l<4;l++)(u=t[a+(c=i[l])[0]])&&void 0!==(h=u[o+c[1]])&&(0===p?m=g=h:(m=Math.min(m,h),g=Math.max(g,h)),f++,p+=h);if(0===f)throw\"iterateInterp2d order is wrong: no defined neighbors\";t[a][o]=p/f,void 0===d?f<4&&(y=1):(t[a][o]=(1+r)*t[a][o]-r*d,g>m&&(y=Math.max(y,Math.abs(t[a][o]-d)/(g-m))))}return y}t.exports=function(t,e){var r,i=1;for(o(t,e),r=0;r<e.length&&!(e[r][2]<4);r++);for(e=e.slice(r),r=0;r<100&&i>.01;r++)i=o(t,e,a(i));return i>.01&&n.log(\"interp2d didn't converge quickly\",i),t}},63814:function(t,e,r){\"use strict\";var n=r(34809);t.exports=function(t,e){t(\"texttemplate\");var r=n.extendFlat({},e.font,{color:\"auto\",size:\"auto\"});n.coerceFont(t,\"textfont\",r)}},80924:function(t,e,r){\"use strict\";var n=r(33626),i=r(34809).isArrayOrTypedArray;t.exports=function(t,e,r,a,o,s){var l,c,u,h=[],f=n.traceIs(t,\"contour\"),p=n.traceIs(t,\"histogram\"),d=n.traceIs(t,\"gl2d\");if(i(e)&&e.length>1&&!p&&\"category\"!==s.type){var m=e.length;if(!(m<=o))return f?e.slice(0,o):e.slice(0,o+1);if(f||d)h=Array.from(e).slice(0,o);else if(1===o)h=\"log\"===s.type?[.5*e[0],2*e[0]]:[e[0]-.5,e[0]+.5];else if(\"log\"===s.type){for(h=[Math.pow(e[0],1.5)/Math.pow(e[1],.5)],u=1;u<m;u++)h.push(Math.sqrt(e[u-1]*e[u]));h.push(Math.pow(e[m-1],1.5)/Math.pow(e[m-2],.5))}else{for(h=[1.5*e[0]-.5*e[1]],u=1;u<m;u++)h.push(.5*(e[u-1]+e[u]));h.push(1.5*e[m-1]-.5*e[m-2])}if(m<o){var g,y=h[h.length-1];if(\"log\"===s.type)for(g=y/h[h.length-2],u=m;u<o;u++)y*=g,h.push(y);else for(g=y-h[h.length-2],u=m;u<o;u++)y+=g,h.push(y)}}else{var v=t[s._id.charAt(0)+\"calendar\"];for(l=p?s.r2c(r,0,v):i(e)&&1===e.length?e[0]:void 0===r?0:(\"log\"===s.type?s.d2c:s.r2c)(r,0,v),c=a||1,u=f||d?0:-.5;u<o;u++)h.push(l+c*u)}return h}},19236:function(t,e,r){\"use strict\";var n=r(45568),i=r(65657),a=r(33626),o=r(62203),s=r(29714),l=r(34809),c=r(30635),u=r(15294),h=r(78766),f=r(88856).extractOpts,p=r(88856).makeColorScaleFuncFromTrace,d=r(62972),m=r(4530).LINE_SPACING,g=r(95544),y=r(1837).STYLE,v=\"heatmap-label\";function x(t){return t.selectAll(\"g.\"+v)}function _(t){x(t).remove()}function b(t,e){var r=e.length-2,n=l.constrain(l.findBin(t,e),0,r),i=e[n],a=e[n+1],o=l.constrain(n+(t-i)/(a-i)-.5,0,r),s=Math.round(o),c=Math.abs(o-s);return o&&o!==r&&c?{bin0:s,frac:c,bin1:Math.round(s+c/(o-s))}:{bin0:s,bin1:s,frac:0}}function w(t,e){var r=e.length-1,n=l.constrain(l.findBin(t,e),0,r),i=e[n],a=(t-i)/(e[n+1]-i)||0;return a<=0?{bin0:n,bin1:n,frac:0}:a<.5?{bin0:n,bin1:n+1,frac:a}:{bin0:n+1,bin1:n,frac:1-a}}function T(t,e,r){t[e]=r[0],t[e+1]=r[1],t[e+2]=r[2],t[e+3]=Math.round(255*r[3])}t.exports=function(t,e,r,k){var A=e.xaxis,M=e.yaxis;l.makeTraceGroups(k,r,\"hm\").each((function(e){var r,k,S,E,C,L,I,P,z=n.select(this),O=e[0],D=O.trace,R=D.xgap||0,F=D.ygap||0,B=O.z,N=O.x,j=O.y,U=O.xCenter,V=O.yCenter,q=a.traceIs(D,\"contour\"),H=q?\"best\":D.zsmooth,G=B.length,Z=l.maxRowLength(B),W=!1,Y=!1;for(L=0;void 0===r&&L<N.length-1;)r=A.c2p(N[L]),L++;for(L=N.length-1;void 0===k&&L>0;)k=A.c2p(N[L]),L--;for(k<r&&(S=k,k=r,r=S,W=!0),L=0;void 0===E&&L<j.length-1;)E=M.c2p(j[L]),L++;for(L=j.length-1;void 0===C&&L>0;)C=M.c2p(j[L]),L--;C<E&&(S=E,E=C,C=S,Y=!0),q&&(U=N,V=j,N=O.xfill,j=O.yfill);var X=\"default\";if(H?X=\"best\"===H?\"smooth\":\"fast\":D._islinear&&0===R&&0===F&&g()&&(X=\"fast\"),\"fast\"!==X){var $=\"best\"===H?0:.5;r=Math.max(-$*A._length,r),k=Math.min((1+$)*A._length,k),E=Math.max(-$*M._length,E),C=Math.min((1+$)*M._length,C)}var J,K,Q=Math.round(k-r),tt=Math.round(C-E);if(r>=A._length||k<=0||E>=M._length||C<=0)return z.selectAll(\"image\").data([]).exit().remove(),void _(z);\"fast\"===X?(J=Z,K=G):(J=Q,K=tt);var et=document.createElement(\"canvas\");et.width=J,et.height=K;var rt,nt,it=et.getContext(\"2d\",{willReadFrequently:!0}),at=p(D,{noNumericCheck:!0,returnArray:!0});\"fast\"===X?(rt=W?function(t){return Z-1-t}:l.identity,nt=Y?function(t){return G-1-t}:l.identity):(rt=function(t){return l.constrain(Math.round(A.c2p(N[t])-r),0,Q)},nt=function(t){return l.constrain(Math.round(M.c2p(j[t])-E),0,tt)});var ot,st,lt,ct,ut=nt(0),ht=[ut,ut],ft=W?0:1,pt=Y?0:1,dt=0,mt=0,gt=0,yt=0;function vt(t,e){if(void 0!==t){var r=at(t);return r[0]=Math.round(r[0]),r[1]=Math.round(r[1]),r[2]=Math.round(r[2]),dt+=e,mt+=r[0]*e,gt+=r[1]*e,yt+=r[2]*e,r}return[0,0,0,0]}function xt(t,e,r,n){var i=t[r.bin0];if(void 0===i)return vt(void 0,1);var a,o=t[r.bin1],s=e[r.bin0],l=e[r.bin1],c=o-i||0,u=s-i||0;return a=void 0===o?void 0===l?0:void 0===s?2*(l-i):2*(2*l-s-i)/3:void 0===l?void 0===s?0:2*(2*i-o-s)/3:void 0===s?2*(2*l-o-i)/3:l+i-o-s,vt(i+r.frac*c+n.frac*(u+r.frac*a))}if(\"default\"!==X){var _t,bt=0;try{_t=new Uint8Array(J*K*4)}catch(t){_t=new Array(J*K*4)}if(\"smooth\"===X){var wt,Tt,kt,At=U||N,Mt=V||j,St=new Array(At.length),Et=new Array(Mt.length),Ct=new Array(Q),Lt=U?w:b,It=V?w:b;for(L=0;L<At.length;L++)St[L]=Math.round(A.c2p(At[L])-r);for(L=0;L<Mt.length;L++)Et[L]=Math.round(M.c2p(Mt[L])-E);for(L=0;L<Q;L++)Ct[L]=Lt(L,St);for(I=0;I<tt;I++)for(Tt=B[(wt=It(I,Et)).bin0],kt=B[wt.bin1],L=0;L<Q;L++,bt+=4)T(_t,bt,ct=xt(Tt,kt,Ct[L],wt))}else for(I=0;I<G;I++)for(lt=B[I],ht=nt(I),L=0;L<Z;L++)ct=vt(lt[L],1),T(_t,bt=4*(ht*Z+rt(L)),ct);var Pt=it.createImageData(J,K);try{Pt.data.set(_t)}catch(t){var zt=Pt.data,Ot=zt.length;for(I=0;I<Ot;I++)zt[I]=_t[I]}it.putImageData(Pt,0,0)}else{var Dt=Math.floor(R/2),Rt=Math.floor(F/2);for(I=0;I<G;I++)if(lt=B[I],ht.reverse(),ht[pt]=nt(I+1),ht[0]!==ht[1]&&void 0!==ht[0]&&void 0!==ht[1])for(ot=[st=rt(0),st],L=0;L<Z;L++)ot.reverse(),ot[ft]=rt(L+1),ot[0]!==ot[1]&&void 0!==ot[0]&&void 0!==ot[1]&&(ct=vt(lt[L],(ot[1]-ot[0])*(ht[1]-ht[0])),it.fillStyle=\"rgba(\"+ct.join(\",\")+\")\",it.fillRect(ot[0]+Dt,ht[0]+Rt,ot[1]-ot[0]-R,ht[1]-ht[0]-F))}mt=Math.round(mt/dt),gt=Math.round(gt/dt),yt=Math.round(yt/dt);var Ft=i(\"rgb(\"+mt+\",\"+gt+\",\"+yt+\")\");t._hmpixcount=(t._hmpixcount||0)+dt,t._hmlumcount=(t._hmlumcount||0)+dt*Ft.getLuminance();var Bt=z.selectAll(\"image\").data(e);Bt.enter().append(\"svg:image\").attr({xmlns:d.svg,preserveAspectRatio:\"none\"}),Bt.attr({height:tt,width:Q,x:r,y:E,\"xlink:href\":et.toDataURL(\"image/png\")}),\"fast\"!==X||H||Bt.attr(\"style\",y),_(z);var Nt=D.texttemplate;if(Nt){var jt=f(D),Ut={type:\"linear\",range:[jt.min,jt.max],_separators:A._separators,_numFormat:A._numFormat},Vt=\"histogram2dcontour\"===D.type,qt=\"contour\"===D.type,Ht=qt?G-1:G,Gt=qt?1:0,Zt=qt?Z-1:Z,Wt=[];for(L=qt?1:0;L<Ht;L++){var Yt;if(qt)Yt=O.y[L];else if(Vt){if(0===L||L===G-1)continue;Yt=O.y[L]}else if(O.yCenter)Yt=O.yCenter[L];else{if(L+1===G&&void 0===O.y[L+1])continue;Yt=(O.y[L]+O.y[L+1])/2}var Xt=Math.round(M.c2p(Yt));if(!(0>Xt||Xt>M._length))for(I=Gt;I<Zt;I++){var $t;if(qt)$t=O.x[I];else if(Vt){if(0===I||I===Z-1)continue;$t=O.x[I]}else if(O.xCenter)$t=O.xCenter[I];else{if(I+1===Z&&void 0===O.x[I+1])continue;$t=(O.x[I]+O.x[I+1])/2}var Jt=Math.round(A.c2p($t));if(!(0>Jt||Jt>A._length)){var Kt=u({x:$t,y:Yt},D,t._fullLayout);Kt.x=$t,Kt.y=Yt;var Qt=O.z[L][I];void 0===Qt?(Kt.z=\"\",Kt.zLabel=\"\"):(Kt.z=Qt,Kt.zLabel=s.tickText(Ut,Qt,\"hover\").text);var te=O.text&&O.text[L]&&O.text[L][I];void 0!==te&&!1!==te||(te=\"\"),Kt.text=te;var ee=l.texttemplateString(Nt,Kt,t._fullLayout._d3locale,Kt,D._meta||{});if(ee){var re=ee.split(\"<br>\"),ne=re.length,ie=0;for(P=0;P<ne;P++)ie=Math.max(ie,re[P].length);Wt.push({l:ne,c:ie,t:ee,x:Jt,y:Xt,z:Qt})}}}}var ae=D.textfont,oe=ae.size,se=t._fullLayout.font.size;if(!oe||\"auto\"===oe){var le=1/0,ce=1/0,ue=0,he=0;for(P=0;P<Wt.length;P++){var fe=Wt[P];if(ue=Math.max(ue,fe.l),he=Math.max(he,fe.c),P<Wt.length-1){var pe=Wt[P+1],de=Math.abs(pe.x-fe.x),me=Math.abs(pe.y-fe.y);de&&(le=Math.min(le,de)),me&&(ce=Math.min(ce,me))}}isFinite(le)&&isFinite(ce)?(le-=R,ce-=F,le/=he,ce/=ue,le/=m/2,ce/=m,oe=Math.min(Math.floor(le),Math.floor(ce),se)):oe=se}if(oe<=0||!isFinite(oe))return;x(z).data(Wt).enter().append(\"g\").classed(v,1).append(\"text\").attr(\"text-anchor\",\"middle\").each((function(e){var r=n.select(this),i=ae.color;i&&\"auto\"!==i||(i=h.contrast(void 0===e.z?t._fullLayout.plot_bgcolor:\"rgba(\"+at(e.z).join()+\")\")),r.attr(\"data-notex\",1).call(c.positionText,function(t){return t.x}(e),function(t){return t.y-oe*(t.l*m/2-1)}(e)).call(o.font,{family:ae.family,size:oe,color:i,weight:ae.weight,style:ae.style,variant:ae.variant,textcase:ae.textcase,lineposition:ae.lineposition,shadow:ae.shadow}).text(e.t).call(c.convertToTspans,t)}))}}))}},12774:function(t,e,r){\"use strict\";var n=r(45568);t.exports=function(t){n.select(t).selectAll(\".hm image\").style(\"opacity\",(function(t){return t.trace.opacity}))}},44143:function(t){\"use strict\";t.exports=function(t,e,r){!1===r(\"zsmooth\")&&(r(\"xgap\"),r(\"ygap\")),r(\"zhoverformat\")}},86073:function(t,e,r){\"use strict\";var n=r(10721),i=r(34809),a=r(33626);function o(t,e){var r=e(t);return\"scaled\"===(r?e(t+\"type\",\"array\"):\"scaled\")&&(e(t+\"0\"),e(\"d\"+t)),r}t.exports=function(t,e,r,s,l,c){var u,h,f=r(\"z\");if(l=l||\"x\",c=c||\"y\",void 0===f||!f.length)return 0;if(i.isArray1D(f)){u=r(l),h=r(c);var p=i.minRowLength(u),d=i.minRowLength(h);if(0===p||0===d)return 0;e._length=Math.min(p,d,f.length)}else{if(u=o(l,r),h=o(c,r),!function(t){for(var e,r=!0,a=!1,o=!1,s=0;s<t.length;s++){if(e=t[s],!i.isArrayOrTypedArray(e)){r=!1;break}e.length>0&&(a=!0);for(var l=0;l<e.length;l++)if(n(e[l])){o=!0;break}}return r&&a&&o}(f))return 0;r(\"transpose\"),e._length=null}return\"heatmapgl\"===t.type||a.getComponentMethod(\"calendars\",\"handleTraceDefaults\")(t,e,[l,c],s),!0}},29751:function(t,e,r){\"use strict\";for(var n=r(81658),i=r(87163),a=r(93049).extendFlat,o=r(13582).overrideAll,s=[\"z\",\"x\",\"x0\",\"dx\",\"y\",\"y0\",\"dy\",\"text\",\"transpose\",\"xtype\",\"ytype\"],l={},c=0;c<s.length;c++){var u=s[c];l[u]=n[u]}l.zsmooth={valType:\"enumerated\",values:[\"fast\",!1],dflt:\"fast\",editType:\"calc\"},a(l,i(\"\",{cLetter:\"z\",autoColorDflt:!1})),t.exports=o(l,\"calc\",\"nested\")},89987:function(t,e,r){\"use strict\";var n=r(99098).gl_heatmap2d,i=r(29714),a=r(55010);function o(t,e){this.scene=t,this.uid=e,this.type=\"heatmapgl\",this.name=\"\",this.hoverinfo=\"all\",this.xData=[],this.yData=[],this.zData=[],this.textLabels=[],this.idToIndex=[],this.bounds=[0,0,0,0],this.options={zsmooth:\"fast\",z:[],x:[],y:[],shape:[0,0],colorLevels:[0],colorValues:[0,0,0,1]},this.heatmap=n(t.glplot,this.options),this.heatmap._trace=this}var s=o.prototype;s.handlePick=function(t){var e=this.options,r=e.shape,n=t.pointId,i=n%r[0],a=Math.floor(n/r[0]),o=n;return{trace:this,dataCoord:t.dataCoord,traceCoord:[e.x[i],e.y[a],e.z[o]],textLabel:this.textLabels[n],name:this.name,pointIndex:[a,i],hoverinfo:this.hoverinfo}},s.update=function(t,e){var r=e[0];this.index=t.index,this.name=t.name,this.hoverinfo=t.hoverinfo;var n=r.z;this.options.z=[].concat.apply([],n);var o=n[0].length,s=n.length;this.options.shape=[o,s],this.options.x=r.x,this.options.y=r.y,this.options.zsmooth=t.zsmooth;var l=function(t){for(var e=t.colorscale,r=t.zmin,n=t.zmax,i=e.length,o=new Array(i),s=new Array(4*i),l=0;l<i;l++){var c=e[l],u=a(c[1]);o[l]=r+c[0]*(n-r);for(var h=0;h<4;h++)s[4*l+h]=u[h]}return{colorLevels:o,colorValues:s}}(t);this.options.colorLevels=l.colorLevels,this.options.colorValues=l.colorValues,this.textLabels=[].concat.apply([],t.text),this.heatmap.update(this.options);var c,u,h=this.scene.xaxis,f=this.scene.yaxis;!1===t.zsmooth&&(c={ppad:r.x[1]-r.x[0]},u={ppad:r.y[1]-r.y[0]}),t._extremes[h._id]=i.findExtremes(h,r.x,c),t._extremes[f._id]=i.findExtremes(f,r.y,u)},s.dispose=function(){this.heatmap.dispose()},t.exports=function(t,e,r){var n=new o(t,e.uid);return n.update(e,r),n}},51312:function(t,e,r){\"use strict\";var n=r(34809),i=r(86073),a=r(39356),o=r(29751);t.exports=function(t,e,r,s){function l(r,i){return n.coerce(t,e,o,r,i)}i(t,e,l,s)?(l(\"text\"),l(\"zsmooth\"),a(t,e,s,l,{prefix:\"\",cLetter:\"z\"})):e.visible=!1}},72892:function(t,e,r){\"use strict\";[\"*heatmapgl* trace is deprecated!\",\"Please consider switching to the *heatmap* or *image* trace types.\",\"Alternatively you could contribute/sponsor rewriting this trace type\",\"based on cartesian features and using regl framework.\"].join(\" \"),t.exports={attributes:r(29751),supplyDefaults:r(51312),colorbar:r(12431),calc:r(51670),plot:r(89987),moduleType:\"trace\",name:\"heatmapgl\",basePlotModule:r(24585),categories:[\"gl\",\"gl2d\",\"2dMap\"],meta:{}}},16160:function(t,e,r){\"use strict\";var n=r(81481),i=r(80712).axisHoverFormat,a=r(3208).rb,o=r(3208).ay,s=r(80337),l=r(64766),c=r(39732),u=r(93049).extendFlat;t.exports={x:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},y:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},xhoverformat:i(\"x\"),yhoverformat:i(\"y\"),text:u({},n.text,{}),hovertext:u({},n.hovertext,{}),orientation:n.orientation,histfunc:{valType:\"enumerated\",values:[\"count\",\"sum\",\"avg\",\"min\",\"max\"],dflt:\"count\",editType:\"calc\"},histnorm:{valType:\"enumerated\",values:[\"\",\"percent\",\"probability\",\"density\",\"probability density\"],dflt:\"\",editType:\"calc\"},cumulative:{enabled:{valType:\"boolean\",dflt:!1,editType:\"calc\"},direction:{valType:\"enumerated\",values:[\"increasing\",\"decreasing\"],dflt:\"increasing\",editType:\"calc\"},currentbin:{valType:\"enumerated\",values:[\"include\",\"exclude\",\"half\"],dflt:\"include\",editType:\"calc\"},editType:\"calc\"},nbinsx:{valType:\"integer\",min:0,dflt:0,editType:\"calc\"},xbins:l(\"x\",!0),nbinsy:{valType:\"integer\",min:0,dflt:0,editType:\"calc\"},ybins:l(\"y\",!0),autobinx:{valType:\"boolean\",dflt:null,editType:\"calc\"},autobiny:{valType:\"boolean\",dflt:null,editType:\"calc\"},bingroup:{valType:\"string\",dflt:\"\",editType:\"calc\"},hovertemplate:a({},{keys:c.eventDataKeys}),texttemplate:o({arrayOk:!1,editType:\"plot\"},{keys:[\"label\",\"value\"]}),textposition:u({},n.textposition,{arrayOk:!1}),textfont:s({arrayOk:!1,editType:\"plot\",colorEditType:\"style\"}),outsidetextfont:s({arrayOk:!1,editType:\"plot\",colorEditType:\"style\"}),insidetextfont:s({arrayOk:!1,editType:\"plot\",colorEditType:\"style\"}),insidetextanchor:n.insidetextanchor,textangle:n.textangle,cliponaxis:n.cliponaxis,constraintext:n.constraintext,marker:n.marker,offsetgroup:n.offsetgroup,alignmentgroup:n.alignmentgroup,selected:n.selected,unselected:n.unselected,_deprecated:{bardir:n._deprecated.bardir},zorder:n.zorder}},48198:function(t){\"use strict\";t.exports=function(t,e){for(var r=t.length,n=0,i=0;i<r;i++)e[i]?(t[i]/=e[i],n+=t[i]):t[i]=null;return n}},64766:function(t){\"use strict\";t.exports=function(t,e){return{start:{valType:\"any\",editType:\"calc\"},end:{valType:\"any\",editType:\"calc\"},size:{valType:\"any\",editType:\"calc\"},editType:\"calc\"}}},34870:function(t,e,r){\"use strict\";var n=r(10721);t.exports={count:function(t,e,r){return r[t]++,1},sum:function(t,e,r,i){var a=i[e];return n(a)?(a=Number(a),r[t]+=a,a):0},avg:function(t,e,r,i,a){var o=i[e];return n(o)&&(o=Number(o),r[t]+=o,a[t]++),0},min:function(t,e,r,i){var a=i[e];if(n(a)){if(a=Number(a),!n(r[t]))return r[t]=a,a;if(r[t]>a){var o=a-r[t];return r[t]=a,o}}return 0},max:function(t,e,r,i){var a=i[e];if(n(a)){if(a=Number(a),!n(r[t]))return r[t]=a,a;if(r[t]<a){var o=a-r[t];return r[t]=a,o}}return 0}}},64852:function(t,e,r){\"use strict\";var n=r(63821),i=n.ONEAVGYEAR,a=n.ONEAVGMONTH,o=n.ONEDAY,s=n.ONEHOUR,l=n.ONEMIN,c=n.ONESEC,u=r(29714).tickIncrement;function h(t,e,r,n){if(t*e<=0)return 1/0;for(var i=Math.abs(e-t),a=\"date\"===r.type,o=f(i,a),s=0;s<10;s++){var l=f(80*o,a);if(o===l)break;if(!p(l,t,e,a,r,n))break;o=l}return o}function f(t,e){return e&&t>c?t>o?t>1.1*i?i:t>1.1*a?a:o:t>s?s:t>l?l:c:Math.pow(10,Math.floor(Math.log(t)/Math.LN10))}function p(t,e,r,n,a,s){if(n&&t>o){var l=d(e,a,s),c=d(r,a,s),u=t===i?0:1;return l[u]!==c[u]}return Math.floor(r/t)-Math.floor(e/t)>.1}function d(t,e,r){var n=e.c2d(t,i,r).split(\"-\");return\"\"===n[0]&&(n.unshift(),n[0]=\"-\"+n[0]),n}t.exports=function(t,e,r,n,a){var s,l,c=-1.1*e,f=-.1*e,p=t-f,d=r[0],m=r[1],g=Math.min(h(d+f,d+p,n,a),h(m+f,m+p,n,a)),y=Math.min(h(d+c,d+f,n,a),h(m+c,m+f,n,a));if(g>y&&y<Math.abs(m-d)/4e3?(s=g,l=!1):(s=Math.min(g,y),l=!0),\"date\"===n.type&&s>o){var v=s===i?1:6,x=s===i?\"M12\":\"M1\";return function(e,r){var o=n.c2d(e,i,a),s=o.indexOf(\"-\",v);s>0&&(o=o.substr(0,s));var c=n.d2c(o,0,a);if(c<e){var h=u(c,x,!1,a);(c+h)/2<e+t&&(c=h)}return r&&l?u(c,x,!0,a):c}}return function(e,r){var n=s*Math.round(e/s);return n+s/10<e&&n+.9*s<e+t&&(n+=s),r&&l&&(n-=s),n}}},53616:function(t,e,r){\"use strict\";var n=r(10721),i=r(34809),a=r(33626),o=r(29714),s=r(35374),l=r(34870),c=r(58665),u=r(48198),h=r(64852);function f(t,e,r,s,l){var c,u,h,p,d,m,g,y=s+\"bins\",v=t._fullLayout,x=e[\"_\"+s+\"bingroup\"],_=v._histogramBinOpts[x],b=\"overlay\"===v.barmode,w=function(t){return r.r2c(t,0,p)},T=function(t){return r.c2r(t,0,p)},k=\"date\"===r.type?function(t){return t||0===t?i.cleanDate(t,null,p):null}:function(t){return n(t)?Number(t):null};function A(t,e,r){e[t+\"Found\"]?(e[t]=k(e[t]),null===e[t]&&(e[t]=r[t])):(m[t]=e[t]=r[t],i.nestedProperty(u[0],y+\".\"+t).set(r[t]))}if(e[\"_\"+s+\"autoBinFinished\"])delete e[\"_\"+s+\"autoBinFinished\"];else{u=_.traces;var M=[],S=!0,E=!1,C=!1;for(c=0;c<u.length;c++)if((h=u[c]).visible){var L=_.dirs[c];d=h[\"_\"+L+\"pos0\"]=r.makeCalcdata(h,L),M=i.concat(M,d),delete h[\"_\"+s+\"autoBinFinished\"],!0===e.visible&&(S?S=!1:(delete h._autoBin,h[\"_\"+s+\"autoBinFinished\"]=1),a.traceIs(h,\"2dMap\")&&(E=!0),\"histogram2dcontour\"===h.type&&(C=!0))}p=u[0][s+\"calendar\"];var I=o.autoBin(M,r,_.nbins,E,p,_.sizeFound&&_.size),P=u[0]._autoBin={};if(m=P[_.dirs[0]]={},C&&(_.size||(I.start=T(o.tickIncrement(w(I.start),I.size,!0,p))),void 0===_.end&&(I.end=T(o.tickIncrement(w(I.end),I.size,!1,p)))),b&&!a.traceIs(e,\"2dMap\")&&0===I._dataSpan&&\"category\"!==r.type&&\"multicategory\"!==r.type&&\"\"===e.bingroup&&void 0===e.xbins){if(l)return[I,d,!0];I=function(t,e,r,n,a){var o,s,l,c=t._fullLayout,u=function(t,e){for(var r=e.xaxis,n=e.yaxis,i=e.orientation,a=[],o=t._fullData,s=0;s<o.length;s++){var l=o[s];\"histogram\"===l.type&&!0===l.visible&&l.orientation===i&&l.xaxis===r&&l.yaxis===n&&a.push(l)}return a}(t,e),h=!1,p=1/0,d=[e];for(o=0;o<u.length;o++)if((s=u[o])===e)h=!0;else if(h){var m=f(t,s,r,n,!0),g=m[0],y=m[2];s[\"_\"+n+\"autoBinFinished\"]=1,s[\"_\"+n+\"pos0\"]=m[1],y?d.push(s):p=Math.min(p,g.size)}else l=c._histogramBinOpts[s[\"_\"+n+\"bingroup\"]],p=Math.min(p,l.size||s[a].size);var v=new Array(d.length);for(o=0;o<d.length;o++)for(var x=d[o][\"_\"+n+\"pos0\"],_=0;_<x.length;_++)if(void 0!==x[_]){v[o]=x[_];break}for(isFinite(p)||(p=i.distinctVals(v).minDiff),o=0;o<d.length;o++){var b=(s=d[o])[n+\"calendar\"],w={start:r.c2r(v[o]-p/2,0,b),end:r.c2r(v[o]+p/2,0,b),size:p};s._input[a]=s[a]=w,(l=c._histogramBinOpts[s[\"_\"+n+\"bingroup\"]])&&i.extendFlat(l,w)}return e[a]}(t,e,r,s,y)}(g=h.cumulative||{}).enabled&&\"include\"!==g.currentbin&&(\"decreasing\"===g.direction?I.start=T(o.tickIncrement(w(I.start),I.size,!0,p)):I.end=T(o.tickIncrement(w(I.end),I.size,!1,p))),_.size=I.size,_.sizeFound||(m.size=I.size,i.nestedProperty(u[0],y+\".size\").set(I.size)),A(\"start\",_,I),A(\"end\",_,I)}d=e[\"_\"+s+\"pos0\"],delete e[\"_\"+s+\"pos0\"];var z=e._input[y]||{},O=i.extendFlat({},_),D=_.start,R=r.r2l(z.start),F=void 0!==R;if((_.startFound||F)&&R!==r.r2l(D)){var B=F?R:i.aggNums(Math.min,null,d),N={type:\"category\"===r.type||\"multicategory\"===r.type?\"linear\":r.type,r2l:r.r2l,dtick:_.size,tick0:D,calendar:p,range:[B,o.tickIncrement(B,_.size,!1,p)].map(r.l2r)},j=o.tickFirst(N);j>r.r2l(B)&&(j=o.tickIncrement(j,_.size,!0,p)),O.start=r.l2r(j),F||i.nestedProperty(e,y+\".start\").set(O.start)}var U=_.end,V=r.r2l(z.end),q=void 0!==V;if((_.endFound||q)&&V!==r.r2l(U)){var H=q?V:i.aggNums(Math.max,null,d);O.end=r.l2r(H),q||i.nestedProperty(e,y+\".start\").set(O.end)}var G=\"autobin\"+s;return!1===e._input[G]&&(e._input[y]=i.extendFlat({},e[y]||{}),delete e._input[G],delete e[G]),[O,d]}t.exports={calc:function(t,e){var r,a,p,d,m=[],g=[],y=\"h\"===e.orientation,v=o.getFromId(t,y?e.yaxis:e.xaxis),x=y?\"y\":\"x\",_={x:\"y\",y:\"x\"}[x],b=e[x+\"calendar\"],w=e.cumulative,T=f(t,e,v,x),k=T[0],A=T[1],M=\"string\"==typeof k.size,S=[],E=M?S:k,C=[],L=[],I=[],P=0,z=e.histnorm,O=e.histfunc,D=-1!==z.indexOf(\"density\");w.enabled&&D&&(z=z.replace(/ ?density$/,\"\"),D=!1);var R,F=\"max\"===O||\"min\"===O?null:0,B=l.count,N=c[z],j=!1,U=function(t){return v.r2c(t,0,b)};for(i.isArrayOrTypedArray(e[_])&&\"count\"!==O&&(R=e[_],j=\"avg\"===O,B=l[O]),r=U(k.start),p=U(k.end)+(r-o.tickIncrement(r,k.size,!1,b))/1e6;r<p&&m.length<1e6&&(a=o.tickIncrement(r,k.size,!1,b),m.push((r+a)/2),g.push(F),I.push([]),S.push(r),D&&C.push(1/(a-r)),j&&L.push(0),!(a<=r));)r=a;S.push(r),M||\"date\"!==v.type||(E={start:U(E.start),end:U(E.end),size:E.size}),t._fullLayout._roundFnOpts||(t._fullLayout._roundFnOpts={});var V=e[\"_\"+x+\"bingroup\"],q={leftGap:1/0,rightGap:1/0};V&&(t._fullLayout._roundFnOpts[V]||(t._fullLayout._roundFnOpts[V]=q),q=t._fullLayout._roundFnOpts[V]);var H,G=g.length,Z=!0,W=q.leftGap,Y=q.rightGap,X={};for(r=0;r<A.length;r++){var $=A[r];(d=i.findBin($,E))>=0&&d<G&&(P+=B(d,r,g,R,L),Z&&I[d].length&&$!==A[I[d][0]]&&(Z=!1),I[d].push(r),X[r]=d,W=Math.min(W,$-S[d]),Y=Math.min(Y,S[d+1]-$))}q.leftGap=W,q.rightGap=Y,Z||(H=function(e,r){return function(){var n=t._fullLayout._roundFnOpts[V];return h(n.leftGap,n.rightGap,S,v,b)(e,r)}}),j&&(P=u(g,L)),N&&N(g,P,C),w.enabled&&function(t,e,r){var n,i,a;function o(e){a=t[e],t[e]/=2}function s(e){i=t[e],t[e]=a+i/2,a+=i}if(\"half\"===r)if(\"increasing\"===e)for(o(0),n=1;n<t.length;n++)s(n);else for(o(t.length-1),n=t.length-2;n>=0;n--)s(n);else if(\"increasing\"===e){for(n=1;n<t.length;n++)t[n]+=t[n-1];\"exclude\"===r&&(t.unshift(0),t.pop())}else{for(n=t.length-2;n>=0;n--)t[n]+=t[n+1];\"exclude\"===r&&(t.push(0),t.shift())}}(g,w.direction,w.currentbin);var J=Math.min(m.length,g.length),K=[],Q=0,tt=J-1;for(r=0;r<J;r++)if(g[r]){Q=r;break}for(r=J-1;r>=Q;r--)if(g[r]){tt=r;break}for(r=Q;r<=tt;r++)if(n(m[r])&&n(g[r])){var et={p:m[r],s:g[r],b:0};w.enabled||(et.pts=I[r],Z?et.ph0=et.ph1=I[r].length?A[I[r][0]]:m[r]:(e._computePh=!0,et.ph0=H(S[r]),et.ph1=H(S[r+1],!0))),K.push(et)}return 1===K.length&&(K[0].width1=o.tickIncrement(K[0].p,k.size,!1,b)-K[0].p),s(K,e),i.isArrayOrTypedArray(e.selectedpoints)&&i.tagSelected(K,e,X),K},calcAllAutoBins:f}},39732:function(t){\"use strict\";t.exports={eventDataKeys:[\"binNumber\"]}},83380:function(t,e,r){\"use strict\";var n=r(34809),i=r(5975),a=r(33626).traceIs,o=r(36301),s=r(17550).validateCornerradius,l=n.nestedProperty,c=r(84391).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\"}],h=[\"x\",\"y\"];t.exports=function(t,e){var r,f,p,d,m,g,y,v=e._histogramBinOpts={},x=[],_={},b=[];function w(t,e){return n.coerce(r._input,r,r._module.attributes,t,e)}function T(t){return\"v\"===t.orientation?\"x\":\"y\"}function k(t,r,a){var o=t.uid+\"__\"+a;r||(r=o);var s=function(t,r){return i.getFromTrace({_fullLayout:e},t,r).type}(t,a),l=t[a+\"calendar\"]||\"\",c=v[r],u=!0;c&&(s===c.axType&&l===c.calendar?(u=!1,c.traces.push(t),c.dirs.push(a)):(r=o,s!==c.axType&&n.warn([\"Attempted to group the bins of trace\",t.index,\"set on a\",\"type:\"+s,\"axis\",\"with bins on\",\"type:\"+c.axType,\"axis.\"].join(\" \")),l!==c.calendar&&n.warn([\"Attempted to group the bins of trace\",t.index,\"set with a\",l,\"calendar\",\"with bins\",c.calendar?\"on a \"+c.calendar+\" calendar\":\"w/o a set calendar\"].join(\" \")))),u&&(v[r]={traces:[t],dirs:[a],axType:s,calendar:t[a+\"calendar\"]||\"\"}),t[\"_\"+a+\"bingroup\"]=r}for(m=0;m<t.length;m++)if(r=t[m],a(r,\"histogram\")){if(x.push(r),delete r._xautoBinFinished,delete r._yautoBinFinished,\"histogram\"===r.type){var A=w(\"marker.cornerradius\",e.barcornerradius);r.marker&&(r.marker.cornerradius=s(A))}a(r,\"2dMap\")||o(r._input,r,e,w)}var M=e._alignmentOpts||{};for(m=0;m<x.length;m++){if(r=x[m],p=\"\",!a(r,\"2dMap\")){if(d=T(r),\"group\"===e.barmode&&r.alignmentgroup){var S=r[d+\"axis\"],E=c(e,S)+r.orientation;(M[E]||{})[r.alignmentgroup]&&(p=E)}p||\"overlay\"===e.barmode||(p=c(e,r.xaxis)+c(e,r.yaxis)+T(r))}p?(_[p]||(_[p]=[]),_[p].push(r)):b.push(r)}for(p in _)if(1!==(f=_[p]).length){var C=!1;for(f.length&&(r=f[0],C=w(\"bingroup\")),p=C||p,m=0;m<f.length;m++){var L=(r=f[m])._input.bingroup;L&&L!==p&&n.warn([\"Trace\",r.index,\"must match\",\"within bingroup\",p+\".\",\"Ignoring its bingroup:\",L,\"setting.\"].join(\" \")),r.bingroup=p,k(r,p,T(r))}}else b.push(f[0]);for(m=0;m<b.length;m++){r=b[m];var I=w(\"bingroup\");if(a(r,\"2dMap\"))for(y=0;y<2;y++){var P=w((d=h[y])+\"bingroup\",I?I+\"__\"+d:null);k(r,P,d)}else k(r,I,T(r))}for(p in v){var z=v[p];for(f=z.traces,g=0;g<u.length;g++){var O,D,R=u[g],F=R.name;if(\"nbins\"!==F||!z.sizeFound){for(m=0;m<f.length;m++){if(r=f[m],d=z.dirs[m],O=R.aStr[d],void 0!==l(r._input,O).get()){z[F]=w(O),z[F+\"Found\"]=!0;break}(D=(r._autoBin||{})[d]||{})[F]&&l(r,O).set(D[F])}if(\"start\"===F||\"end\"===F)for(;m<f.length;m++)(r=f[m])[\"_\"+d+\"bingroup\"]&&w(O,(D=(r._autoBin||{})[d]||{})[F]);\"nbins\"!==F||z.sizeFound||z.nbinsFound||(r=f[0],z[F]=w(O))}}}}},85079:function(t,e,r){\"use strict\";var n=r(33626),i=r(34809),a=r(78766),o=r(17550).handleText,s=r(59760),l=r(16160);t.exports=function(t,e,r,c){function u(r,n){return i.coerce(t,e,l,r,n)}var h=u(\"x\"),f=u(\"y\");u(\"cumulative.enabled\")&&(u(\"cumulative.direction\"),u(\"cumulative.currentbin\")),u(\"text\");var p=u(\"textposition\");o(t,e,c,u,p,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),u(\"hovertext\"),u(\"hovertemplate\"),u(\"xhoverformat\"),u(\"yhoverformat\");var d=u(\"orientation\",f&&!h?\"h\":\"v\"),m=\"v\"===d?\"x\":\"y\",g=\"v\"===d?\"y\":\"x\",y=h&&f?Math.min(i.minRowLength(h)&&i.minRowLength(f)):i.minRowLength(e[m]||[]);if(y){e._length=y,n.getComponentMethod(\"calendars\",\"handleTraceDefaults\")(t,e,[\"x\",\"y\"],c),e[g]&&u(\"histfunc\"),u(\"histnorm\"),u(\"autobin\"+m),s(t,e,u,r,c),i.coerceSelectionMarkerOpacity(e,u);var v=(e.marker.line||{}).color,x=n.getComponentMethod(\"errorbars\",\"supplyDefaults\");x(t,e,v||a.defaultLine,{axis:\"y\"}),x(t,e,v||a.defaultLine,{axis:\"x\",inherit:\"y\"}),u(\"zorder\")}else e.visible=!1}},82604:function(t){\"use strict\";t.exports=function(t,e,r,n,i){if(t.x=\"xVal\"in e?e.xVal:e.x,t.y=\"yVal\"in e?e.yVal:e.y,\"zLabelVal\"in e&&(t.z=e.zLabelVal),e.xa&&(t.xaxis=e.xa),e.ya&&(t.yaxis=e.ya),!(r.cumulative||{}).enabled){var a,o=Array.isArray(i)?n[0].pts[i[0]][i[1]]:n[i].pts;if(t.pointNumbers=o,t.binNumber=t.pointNumber,delete t.pointNumber,delete t.pointIndex,r._indexToPoints){a=[];for(var s=0;s<o.length;s++)a=a.concat(r._indexToPoints[o[s]])}else a=o;t.pointIndices=a}return t}},20487:function(t,e,r){\"use strict\";var n=r(91664).hoverPoints,i=r(29714).hoverLabelText;t.exports=function(t,e,r,a,o){var s=n(t,e,r,a,o);if(s){var l=(t=s[0]).cd[t.index],c=t.cd[0].trace;if(!c.cumulative.enabled){var u=\"h\"===c.orientation?\"y\":\"x\";t[u+\"Label\"]=i(t[u+\"a\"],[l.ph0,l.ph1],c[u+\"hoverformat\"])}return s}}},74461:function(t,e,r){\"use strict\";t.exports={attributes:r(16160),layoutAttributes:r(25412),supplyDefaults:r(85079),crossTraceDefaults:r(83380),supplyLayoutDefaults:r(78931),calc:r(53616).calc,crossTraceCalc:r(24782).crossTraceCalc,plot:r(32995).plot,layerName:\"barlayer\",style:r(6851).style,styleOnSelect:r(6851).styleOnSelect,colorbar:r(21146),hoverPoints:r(20487),selectPoints:r(88384),eventData:r(82604),moduleType:\"trace\",name:\"histogram\",basePlotModule:r(37703),categories:[\"bar-like\",\"cartesian\",\"svg\",\"bar\",\"histogram\",\"oriented\",\"errorBarsOK\",\"showLegend\"],meta:{}}},58665:function(t){\"use strict\";t.exports={percent:function(t,e){for(var r=t.length,n=100/e,i=0;i<r;i++)t[i]*=n},probability:function(t,e){for(var r=t.length,n=0;n<r;n++)t[n]/=e},density:function(t,e,r,n){var i=t.length;n=n||1;for(var a=0;a<i;a++)t[a]*=r[a]*n},\"probability density\":function(t,e,r,n){var i=t.length;n&&(e/=n);for(var a=0;a<i;a++)t[a]*=r[a]/e}}},9310:function(t,e,r){\"use strict\";var n=r(16160),i=r(64766),a=r(81658),o=r(9829),s=r(80712).axisHoverFormat,l=r(3208).rb,c=r(3208).ay,u=r(87163),h=r(93049).extendFlat;t.exports=h({x:n.x,y:n.y,z:{valType:\"data_array\",editType:\"calc\"},marker:{color:{valType:\"data_array\",editType:\"calc\"},editType:\"calc\"},histnorm:n.histnorm,histfunc:n.histfunc,nbinsx:n.nbinsx,xbins:i(\"x\"),nbinsy:n.nbinsy,ybins:i(\"y\"),autobinx:n.autobinx,autobiny:n.autobiny,bingroup:h({},n.bingroup,{}),xbingroup:h({},n.bingroup,{}),ybingroup:h({},n.bingroup,{}),xgap:a.xgap,ygap:a.ygap,zsmooth:a.zsmooth,xhoverformat:s(\"x\"),yhoverformat:s(\"y\"),zhoverformat:s(\"z\",1),hovertemplate:l({},{keys:\"z\"}),texttemplate:c({arrayOk:!1,editType:\"plot\"},{keys:\"z\"}),textfont:a.textfont,showlegend:h({},o.showlegend,{dflt:!1})},u(\"\",{cLetter:\"z\",autoColorDflt:!1}))},19226:function(t,e,r){\"use strict\";var n=r(34809),i=r(29714),a=r(34870),o=r(58665),s=r(48198),l=r(64852),c=r(53616).calcAllAutoBins;function u(t,e,r,n){var i,a=new Array(t);if(n)for(i=0;i<t;i++)a[i]=1/(e[i+1]-e[i]);else{var o=1/r;for(i=0;i<t;i++)a[i]=o}return a}function h(t,e){return{start:t(e.start),end:t(e.end),size:e.size}}function f(t,e,r,n,i,a){var o,s=t.length-1,c=new Array(s),u=l(r,n,t,i,a);for(o=0;o<s;o++){var h=(e||[])[o];c[o]=void 0===h?[u(t[o]),u(t[o+1],!0)]:[h,h]}return c}t.exports=function(t,e){var r,l,p,d,m=i.getFromId(t,e.xaxis),g=i.getFromId(t,e.yaxis),y=e.xcalendar,v=e.ycalendar,x=function(t){return m.r2c(t,0,y)},_=function(t){return g.r2c(t,0,v)},b=c(t,e,m,\"x\"),w=b[0],T=b[1],k=c(t,e,g,\"y\"),A=k[0],M=k[1],S=e._length;T.length>S&&T.splice(S,T.length-S),M.length>S&&M.splice(S,M.length-S);var E=[],C=[],L=[],I=\"string\"==typeof w.size,P=\"string\"==typeof A.size,z=[],O=[],D=I?z:w,R=P?O:A,F=0,B=[],N=[],j=e.histnorm,U=e.histfunc,V=-1!==j.indexOf(\"density\"),q=\"max\"===U||\"min\"===U?null:0,H=a.count,G=o[j],Z=!1,W=[],Y=[],X=\"z\"in e?e.z:\"marker\"in e&&Array.isArray(e.marker.color)?e.marker.color:\"\";X&&\"count\"!==U&&(Z=\"avg\"===U,H=a[U]);var $=w.size,J=x(w.start),K=x(w.end)+(J-i.tickIncrement(J,$,!1,y))/1e6;for(r=J;r<K;r=i.tickIncrement(r,$,!1,y))C.push(q),z.push(r),Z&&L.push(0);z.push(r);var Q,tt=C.length,et=(r-J)/tt,rt=(Q=J+et/2,m.c2r(Q,0,y)),nt=A.size,it=_(A.start),at=_(A.end)+(it-i.tickIncrement(it,nt,!1,v))/1e6;for(r=it;r<at;r=i.tickIncrement(r,nt,!1,v)){E.push(C.slice()),O.push(r);var ot=new Array(tt);for(l=0;l<tt;l++)ot[l]=[];N.push(ot),Z&&B.push(L.slice())}O.push(r);var st=E.length,lt=(r-it)/st,ct=function(t){return g.c2r(t,0,v)}(it+lt/2);V&&(W=u(C.length,D,et,I),Y=u(E.length,R,lt,P)),I||\"date\"!==m.type||(D=h(x,D)),P||\"date\"!==g.type||(R=h(_,R));var ut=!0,ht=!0,ft=new Array(tt),pt=new Array(st),dt=1/0,mt=1/0,gt=1/0,yt=1/0;for(r=0;r<S;r++){var vt=T[r],xt=M[r];p=n.findBin(vt,D),d=n.findBin(xt,R),p>=0&&p<tt&&d>=0&&d<st&&(F+=H(p,r,E[d],X,B[d]),N[d][p].push(r),ut&&(void 0===ft[p]?ft[p]=vt:ft[p]!==vt&&(ut=!1)),ht&&(void 0===pt[d]?pt[d]=xt:pt[d]!==xt&&(ht=!1)),dt=Math.min(dt,vt-z[p]),mt=Math.min(mt,z[p+1]-vt),gt=Math.min(gt,xt-O[d]),yt=Math.min(yt,O[d+1]-xt))}if(Z)for(d=0;d<st;d++)F+=s(E[d],B[d]);if(G)for(d=0;d<st;d++)G(E[d],F,W,Y[d]);return{x:T,xRanges:f(z,ut&&ft,dt,mt,m,y),x0:rt,dx:et,y:M,yRanges:f(O,ht&&pt,gt,yt,g,v),y0:ct,dy:lt,z:E,pts:N}}},29097:function(t,e,r){\"use strict\";var n=r(34809),i=r(77134),a=r(44143),o=r(39356),s=r(63814),l=r(9310);t.exports=function(t,e,r,c){function u(r,i){return n.coerce(t,e,l,r,i)}i(t,e,u,c),!1!==e.visible&&(a(t,e,u,c),o(t,e,c,u,{prefix:\"\",cLetter:\"z\"}),u(\"hovertemplate\"),s(u,c),u(\"xhoverformat\"),u(\"yhoverformat\"))}},1873:function(t,e,r){\"use strict\";var n=r(93125),i=r(29714).hoverLabelText;t.exports=function(t,e,r,a,o){var s=n(t,e,r,a,o);if(s){var l=(t=s[0]).index,c=l[0],u=l[1],h=t.cd[0],f=h.trace,p=h.xRanges[u],d=h.yRanges[c];return t.xLabel=i(t.xa,[p[0],p[1]],f.xhoverformat),t.yLabel=i(t.ya,[d[0],d[1]],f.yhoverformat),s}}},66143:function(t,e,r){\"use strict\";t.exports={attributes:r(9310),supplyDefaults:r(29097),crossTraceDefaults:r(83380),calc:r(51670),plot:r(19236),layerName:\"heatmaplayer\",colorbar:r(12431),style:r(12774),hoverPoints:r(1873),eventData:r(82604),moduleType:\"trace\",name:\"histogram2d\",basePlotModule:r(37703),categories:[\"cartesian\",\"svg\",\"2dMap\",\"histogram\",\"showLegend\"],meta:{}}},77134:function(t,e,r){\"use strict\";var n=r(33626),i=r(34809);t.exports=function(t,e,r,a){var o=r(\"x\"),s=r(\"y\"),l=i.minRowLength(o),c=i.minRowLength(s);l&&c?(e._length=Math.min(l,c),n.getComponentMethod(\"calendars\",\"handleTraceDefaults\")(t,e,[\"x\",\"y\"],a),(r(\"z\")||r(\"marker.color\"))&&r(\"histfunc\"),r(\"histnorm\"),r(\"autobinx\"),r(\"autobiny\")):e.visible=!1}},85018:function(t,e,r){\"use strict\";var n=r(9310),i=r(52240),a=r(87163),o=r(80712).axisHoverFormat,s=r(93049).extendFlat;t.exports=s({x:n.x,y:n.y,z:n.z,marker:n.marker,histnorm:n.histnorm,histfunc:n.histfunc,nbinsx:n.nbinsx,xbins:n.xbins,nbinsy:n.nbinsy,ybins:n.ybins,autobinx:n.autobinx,autobiny:n.autobiny,bingroup:n.bingroup,xbingroup:n.xbingroup,ybingroup:n.ybingroup,autocontour:i.autocontour,ncontours:i.ncontours,contours:i.contours,line:{color:i.line.color,width:s({},i.line.width,{dflt:.5}),dash:i.line.dash,smoothing:i.line.smoothing,editType:\"plot\"},xhoverformat:o(\"x\"),yhoverformat:o(\"y\"),zhoverformat:o(\"z\",1),hovertemplate:n.hovertemplate,texttemplate:i.texttemplate,textfont:i.textfont},a(\"\",{cLetter:\"z\",editTypeOverride:\"calc\"}))},49389:function(t,e,r){\"use strict\";var n=r(34809),i=r(77134),a=r(47495),o=r(39889),s=r(63814),l=r(85018);t.exports=function(t,e,r,c){function u(r,i){return n.coerce(t,e,l,r,i)}i(t,e,u,c),!1!==e.visible&&(a(t,e,u,(function(r){return n.coerce2(t,e,l,r)})),o(t,e,u,c),u(\"xhoverformat\"),u(\"yhoverformat\"),u(\"hovertemplate\"),e.contours&&\"heatmap\"===e.contours.coloring&&s(u,c))}},81955:function(t,e,r){\"use strict\";t.exports={attributes:r(85018),supplyDefaults:r(49389),crossTraceDefaults:r(83380),calc:r(40352),plot:r(8850).plot,layerName:\"contourlayer\",style:r(1328),colorbar:r(92697),hoverPoints:r(29815),moduleType:\"trace\",name:\"histogram2dcontour\",basePlotModule:r(37703),categories:[\"cartesian\",\"svg\",\"2dMap\",\"contour\",\"histogram\",\"showLegend\"],meta:{}}},12505:function(t,e,r){\"use strict\";var n=r(3208).rb,i=r(3208).ay,a=r(87163),o=r(13792).u,s=r(55412),l=r(56708),c=r(71856),u=r(43236),h=r(93049).extendFlat,f=r(94850).k;t.exports={labels:l.labels,parents:l.parents,values:l.values,branchvalues:l.branchvalues,count:l.count,level:l.level,maxdepth:l.maxdepth,tiling:{orientation:{valType:\"enumerated\",values:[\"v\",\"h\"],dflt:\"h\",editType:\"plot\"},flip:c.tiling.flip,pad:{valType:\"number\",min:0,dflt:0,editType:\"plot\"},editType:\"calc\"},marker:h({colors:l.marker.colors,line:l.marker.line,pattern:f,editType:\"calc\"},a(\"marker\",{colorAttr:\"colors\",anim:!1})),leaf:l.leaf,pathbar:c.pathbar,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.outsidetextfont,textposition:c.textposition,sort:s.sort,root:l.root,domain:o({name:\"icicle\",trace:!0,editType:\"calc\"})}},63387:function(t,e,r){\"use strict\";var n=r(44122);e.name=\"icicle\",e.plot=function(t,r,i,a){n.plotBasePlot(e.name,t,r,i,a)},e.clean=function(t,r,i,a){n.cleanBasePlot(e.name,t,r,i,a)}},36349:function(t,e,r){\"use strict\";var n=r(14852);e._=function(t,e){return n.calc(t,e)},e.t=function(t){return n._runCrossTraceCalc(\"icicle\",t)}},17918:function(t,e,r){\"use strict\";var n=r(34809),i=r(12505),a=r(78766),o=r(13792).N,s=r(17550).handleText,l=r(56155).TEXTPAD,c=r(46979).handleMarkerDefaults,u=r(88856),h=u.hasColorscale,f=u.handleDefaults;t.exports=function(t,e,r,u){function p(r,a){return n.coerce(t,e,i,r,a)}var d=p(\"labels\"),m=p(\"parents\");if(d&&d.length&&m&&m.length){var g=p(\"values\");g&&g.length?p(\"branchvalues\"):p(\"count\"),p(\"level\"),p(\"maxdepth\"),p(\"tiling.orientation\"),p(\"tiling.flip\"),p(\"tiling.pad\");var y=p(\"text\");p(\"texttemplate\"),e.texttemplate||p(\"textinfo\",n.isArrayOrTypedArray(y)?\"text+label\":\"label\"),p(\"hovertext\"),p(\"hovertemplate\");var v=p(\"pathbar.visible\");s(t,e,u,p,\"auto\",{hasPathbar:v,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),p(\"textposition\"),c(t,e,u,p);var x=e._hasColorscale=h(t,\"marker\",\"colors\")||(t.marker||{}).coloraxis;x&&f(t,e,u,p,{prefix:\"marker.\",cLetter:\"c\"}),p(\"leaf.opacity\",x?1:.7),e._hovered={marker:{line:{width:2,color:a.contrast(u.paper_bgcolor)}}},v&&(p(\"pathbar.thickness\",e.pathbar.textfont.size+2*l),p(\"pathbar.side\"),p(\"pathbar.edgeshape\")),p(\"sort\"),p(\"root.color\"),o(e,u,p),e._length=null}else e.visible=!1}},23593:function(t,e,r){\"use strict\";var n=r(45568),i=r(34809),a=r(62203),o=r(30635),s=r(29316),l=r(50579).styleOne,c=r(43236),u=r(33108),h=r(44691),f=r(19718).formatSliceLabel,p=!1;t.exports=function(t,e,r,d,m){var g=m.width,y=m.height,v=m.viewX,x=m.viewY,_=m.pathSlice,b=m.toMoveInsideSlice,w=m.strTransform,T=m.hasTransition,k=m.handleSlicesExit,A=m.makeUpdateSliceInterpolator,M=m.makeUpdateTextInterpolator,S=m.prevEntry,E=t._context.staticPlot,C=t._fullLayout,L=e[0].trace,I=-1!==L.textposition.indexOf(\"left\"),P=-1!==L.textposition.indexOf(\"right\"),z=-1!==L.textposition.indexOf(\"bottom\"),O=s(r,[g,y],{flipX:L.tiling.flip.indexOf(\"x\")>-1,flipY:L.tiling.flip.indexOf(\"y\")>-1,orientation:L.tiling.orientation,pad:{inner:L.tiling.pad},maxDepth:L._maxDepth}).descendants(),D=1/0,R=-1/0;O.forEach((function(t){var e=t.depth;e>=L._maxDepth?(t.x0=t.x1=(t.x0+t.x1)/2,t.y0=t.y1=(t.y0+t.y1)/2):(D=Math.min(D,e),R=Math.max(R,e))})),d=d.data(O,u.getPtId),L._maxVisibleLayers=isFinite(R)?R-D+1:0,d.enter().append(\"g\").classed(\"slice\",!0),k(d,p,{},[g,y],_),d.order();var F=null;if(T&&S){var B=u.getPtId(S);d.each((function(t){null===F&&u.getPtId(t)===B&&(F={x0:t.x0,x1:t.x1,y0:t.y0,y1:t.y1})}))}var N=function(){return F||{x0:0,x1:g,y0:0,y1:y}},j=d;return T&&(j=j.transition().each(\"end\",(function(){var e=n.select(this);u.setSliceCursor(e,t,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})}))),j.each((function(s){s._x0=v(s.x0),s._x1=v(s.x1),s._y0=x(s.y0),s._y1=x(s.y1),s._hoverX=v(s.x1-L.tiling.pad),s._hoverY=x(z?s.y1-L.tiling.pad/2:s.y0+L.tiling.pad/2);var d=n.select(this),m=i.ensureSingle(d,\"path\",\"surface\",(function(t){t.style(\"pointer-events\",E?\"none\":\"all\")}));T?m.transition().attrTween(\"d\",(function(t){var e=A(t,p,N(),[g,y],{orientation:L.tiling.orientation,flipX:L.tiling.flip.indexOf(\"x\")>-1,flipY:L.tiling.flip.indexOf(\"y\")>-1});return function(t){return _(e(t))}})):m.attr(\"d\",_),d.call(h,r,t,e,{styleOne:l,eventDataKeys:c.eventDataKeys,transitionTime:c.CLICK_TRANSITION_TIME,transitionEasing:c.CLICK_TRANSITION_EASING}).call(u.setSliceCursor,t,{isTransitioning:t._transitioning}),m.call(l,s,L,t,{hovered:!1}),s.x0===s.x1||s.y0===s.y1?s._text=\"\":s._text=f(s,r,L,e,C)||\"\";var k=i.ensureSingle(d,\"g\",\"slicetext\"),S=i.ensureSingle(k,\"text\",\"\",(function(t){t.attr(\"data-notex\",1)})),O=i.ensureUniformFontSize(t,u.determineTextFont(L,s,C.font));S.text(s._text||\" \").classed(\"slicetext\",!0).attr(\"text-anchor\",P?\"end\":I?\"start\":\"middle\").call(a.font,O).call(o.convertToTspans,t),s.textBB=a.bBox(S.node()),s.transform=b(s,{fontSize:O.size}),s.transform.fontSize=O.size,T?S.transition().attrTween(\"transform\",(function(t){var e=M(t,p,N(),[g,y]);return function(t){return w(e(t))}})):S.attr(\"transform\",w(s))})),F}},36858:function(t,e,r){\"use strict\";t.exports={moduleType:\"trace\",name:\"icicle\",basePlotModule:r(63387),categories:[],animatable:!0,attributes:r(12505),layoutAttributes:r(60052),supplyDefaults:r(17918),supplyLayoutDefaults:r(11747),calc:r(36349)._,crossTraceCalc:r(36349).t,plot:r(1395),style:r(50579).style,colorbar:r(21146),meta:{}}},60052:function(t){\"use strict\";t.exports={iciclecolorway:{valType:\"colorlist\",editType:\"calc\"},extendiciclecolors:{valType:\"boolean\",dflt:!0,editType:\"calc\"}}},11747:function(t,e,r){\"use strict\";var n=r(34809),i=r(60052);t.exports=function(t,e){function r(r,a){return n.coerce(t,e,i,r,a)}r(\"iciclecolorway\",e.colorway),r(\"extendiciclecolors\")}},29316:function(t,e,r){\"use strict\";var n=r(92264),i=r(36141);t.exports=function(t,e,r){var a=r.flipX,o=r.flipY,s=\"h\"===r.orientation,l=r.maxDepth,c=e[0],u=e[1];l&&(c=(t.height+1)*e[0]/Math.min(t.height+1,l),u=(t.height+1)*e[1]/Math.min(t.height+1,l));var h=n.partition().padding(r.pad.inner).size(s?[e[1],c]:[e[0],u])(t);return(s||a||o)&&i(h,e,{swapXY:s,flipX:a,flipY:o}),h}},1395:function(t,e,r){\"use strict\";var n=r(41567),i=r(23593);t.exports=function(t,e,r,a){return n(t,e,r,a,{type:\"icicle\",drawDescendants:i})}},50579:function(t,e,r){\"use strict\";var n=r(45568),i=r(78766),a=r(34809),o=r(84102).resizeText,s=r(72043);function l(t,e,r,n){var o=e.data.data,l=!e.children,c=o.i,u=a.castOption(r,c,\"marker.line.color\")||i.defaultLine,h=a.castOption(r,c,\"marker.line.width\")||0;t.call(s,e,r,n).style(\"stroke-width\",h).call(i.stroke,u).style(\"opacity\",l?r.leaf.opacity:null)}t.exports={style:function(t){var e=t._fullLayout._iciclelayer.selectAll(\".trace\");o(t,e,\"icicle\"),e.each((function(e){var r=n.select(this),i=e[0].trace;r.style(\"opacity\",i.opacity),r.selectAll(\"path.surface\").each((function(e){n.select(this).call(l,e,i,t)}))}))},styleOne:l}},22153:function(t,e,r){\"use strict\";for(var n=r(9829),i=r(36640).zorder,a=r(3208).rb,o=r(93049).extendFlat,s=r(42939).colormodel,l=[\"rgb\",\"rgba\",\"rgba256\",\"hsl\",\"hsla\"],c=[],u=[],h=0;h<l.length;h++){var f=s[l[h]];c.push(\"For the `\"+l[h]+\"` colormodel, it is [\"+(f.zminDflt||f.min).join(\", \")+\"].\"),u.push(\"For the `\"+l[h]+\"` colormodel, it is [\"+(f.zmaxDflt||f.max).join(\", \")+\"].\")}t.exports=o({source:{valType:\"string\",editType:\"calc\"},z:{valType:\"data_array\",editType:\"calc\"},colormodel:{valType:\"enumerated\",values:l,editType:\"calc\"},zsmooth:{valType:\"enumerated\",values:[\"fast\",!1],dflt:!1,editType:\"plot\"},zmin:{valType:\"info_array\",items:[{valType:\"number\",editType:\"calc\"},{valType:\"number\",editType:\"calc\"},{valType:\"number\",editType:\"calc\"},{valType:\"number\",editType:\"calc\"}],editType:\"calc\"},zmax:{valType:\"info_array\",items:[{valType:\"number\",editType:\"calc\"},{valType:\"number\",editType:\"calc\"},{valType:\"number\",editType:\"calc\"},{valType:\"number\",editType:\"calc\"}],editType:\"calc\"},x0:{valType:\"any\",dflt:0,editType:\"calc+clearAxisTypes\"},y0:{valType:\"any\",dflt:0,editType:\"calc+clearAxisTypes\"},dx:{valType:\"number\",dflt:1,editType:\"calc\"},dy:{valType:\"number\",dflt:1,editType:\"calc\"},text:{valType:\"data_array\",editType:\"plot\"},hovertext:{valType:\"data_array\",editType:\"plot\"},hoverinfo:o({},n.hoverinfo,{flags:[\"x\",\"y\",\"z\",\"color\",\"name\",\"text\"],dflt:\"x+y+z+text+name\"}),hovertemplate:a({},{keys:[\"z\",\"color\",\"colormodel\"]}),zorder:i,transforms:void 0})},31181:function(t,e,r){\"use strict\";var n=r(34809),i=r(42939),a=r(10721),o=r(29714),s=r(34809).maxRowLength,l=r(96315).p;function c(t,e,r,i){return function(a){return n.constrain((a-t)*e,r,i)}}function u(t,e){return function(r){return n.constrain(r,t,e)}}t.exports=function(t,e){var r,n;if(e._hasZ)r=e.z.length,n=s(e.z);else if(e._hasSource){var h=l(e.source);r=h.height,n=h.width}var f,p=o.getFromId(t,e.xaxis||\"x\"),d=o.getFromId(t,e.yaxis||\"y\"),m=p.d2c(e.x0)-e.dx/2,g=d.d2c(e.y0)-e.dy/2,y=[m,m+n*e.dx],v=[g,g+r*e.dy];if(p&&\"log\"===p.type)for(f=0;f<n;f++)y.push(m+f*e.dx);if(d&&\"log\"===d.type)for(f=0;f<r;f++)v.push(g+f*e.dy);return e._extremes[p._id]=o.findExtremes(p,y),e._extremes[d._id]=o.findExtremes(d,v),e._scaler=function(t){var e=i.colormodel[t.colormodel],r=(e.colormodel||t.colormodel).length;t._sArray=[];for(var n=0;n<r;n++)e.min[n]!==t.zmin[n]||e.max[n]!==t.zmax[n]?t._sArray.push(c(t.zmin[n],(e.max[n]-e.min[n])/(t.zmax[n]-t.zmin[n]),e.min[n],e.max[n])):t._sArray.push(u(e.min[n],e.max[n]));return function(e){for(var n=e.slice(0,r),i=0;i<r;i++){var o=n[i];if(!a(o))return!1;n[i]=t._sArray[i](o)}return n}}(e),[{x0:m,y0:g,z:e.z,w:n,h:r}]}},42939:function(t){\"use strict\";t.exports={colormodel:{rgb:{min:[0,0,0],max:[255,255,255],fmt:function(t){return t.slice(0,3)},suffix:[\"\",\"\",\"\"]},rgba:{min:[0,0,0,0],max:[255,255,255,1],fmt:function(t){return t.slice(0,4)},suffix:[\"\",\"\",\"\",\"\"]},rgba256:{colormodel:\"rgba\",zminDflt:[0,0,0,0],zmaxDflt:[255,255,255,255],min:[0,0,0,0],max:[255,255,255,1],fmt:function(t){return t.slice(0,4)},suffix:[\"\",\"\",\"\",\"\"]},hsl:{min:[0,0,0],max:[360,100,100],fmt:function(t){var e=t.slice(0,3);return e[1]=e[1]+\"%\",e[2]=e[2]+\"%\",e},suffix:[\"°\",\"%\",\"%\"]},hsla:{min:[0,0,0,0],max:[360,100,100,1],fmt:function(t){var e=t.slice(0,4);return e[1]=e[1]+\"%\",e[2]=e[2]+\"%\",e},suffix:[\"°\",\"%\",\"%\",\"\"]}}}},82766:function(t,e,r){\"use strict\";var n=r(34809),i=r(22153),a=r(42939),o=r(84619).IMAGE_URL_PREFIX;t.exports=function(t,e){function r(r,a){return n.coerce(t,e,i,r,a)}r(\"source\"),e.source&&!e.source.match(o)&&delete e.source,e._hasSource=!!e.source;var s,l=r(\"z\");e._hasZ=!(void 0===l||!l.length||!l[0]||!l[0].length),e._hasZ||e._hasSource?(r(\"x0\"),r(\"y0\"),r(\"dx\"),r(\"dy\"),e._hasZ?(r(\"colormodel\",\"rgb\"),r(\"zmin\",(s=a.colormodel[e.colormodel]).zminDflt||s.min),r(\"zmax\",s.zmaxDflt||s.max)):e._hasSource&&(e.colormodel=\"rgba256\",s=a.colormodel[e.colormodel],e.zmin=s.zminDflt,e.zmax=s.zmaxDflt),r(\"zsmooth\"),r(\"text\"),r(\"hovertext\"),r(\"hovertemplate\"),e._length=null,r(\"zorder\")):e.visible=!1}},45461:function(t){\"use strict\";t.exports=function(t,e){return\"xVal\"in e&&(t.x=e.xVal),\"yVal\"in e&&(t.y=e.yVal),e.xa&&(t.xaxis=e.xa),e.ya&&(t.yaxis=e.ya),t.color=e.color,t.colormodel=e.trace.colormodel,t.z||(t.z=e.color),t}},96315:function(t,e,r){\"use strict\";var n=r(19490),i=r(84619).IMAGE_URL_PREFIX,a=r(45708).Buffer;e.p=function(t){var e=t.replace(i,\"\"),r=new a(e,\"base64\");return n(r)}},57328:function(t,e,r){\"use strict\";var n=r(32141),i=r(34809),a=i.isArrayOrTypedArray,o=r(42939);t.exports=function(t,e,r){var s=t.cd[0],l=s.trace,c=t.xa,u=t.ya;if(!(n.inbox(e-s.x0,e-(s.x0+s.w*l.dx),0)>0||n.inbox(r-s.y0,r-(s.y0+s.h*l.dy),0)>0)){var h,f=Math.floor((e-s.x0)/l.dx),p=Math.floor(Math.abs(r-s.y0)/l.dy);if(l._hasZ?h=s.z[p][f]:l._hasSource&&(h=l._canvas.el.getContext(\"2d\",{willReadFrequently:!0}).getImageData(f,p,1,1).data),h){var d,m=s.hi||l.hoverinfo;if(m){var g=m.split(\"+\");-1!==g.indexOf(\"all\")&&(g=[\"color\"]),-1!==g.indexOf(\"color\")&&(d=!0)}var y,v=o.colormodel[l.colormodel],x=v.colormodel||l.colormodel,_=x.length,b=l._scaler(h),w=v.suffix,T=[];(l.hovertemplate||d)&&(T.push(\"[\"+[b[0]+w[0],b[1]+w[1],b[2]+w[2]].join(\", \")),4===_&&T.push(\", \"+b[3]+w[3]),T.push(\"]\"),T=T.join(\"\"),t.extraText=x.toUpperCase()+\": \"+T),a(l.hovertext)&&a(l.hovertext[p])?y=l.hovertext[p][f]:a(l.text)&&a(l.text[p])&&(y=l.text[p][f]);var k=u.c2p(s.y0+(p+.5)*l.dy),A=s.x0+(f+.5)*l.dx,M=s.y0+(p+.5)*l.dy,S=\"[\"+h.slice(0,l.colormodel.length).join(\", \")+\"]\";return[i.extendFlat(t,{index:[p,f],x0:c.c2p(s.x0+f*l.dx),x1:c.c2p(s.x0+(f+1)*l.dx),y0:k,y1:k,color:b,xVal:A,xLabelVal:A,yVal:M,yLabelVal:M,zLabelVal:S,text:y,hovertemplateLabels:{zLabel:S,colorLabel:T,\"color[0]Label\":b[0]+w[0],\"color[1]Label\":b[1]+w[1],\"color[2]Label\":b[2]+w[2],\"color[3]Label\":b[3]+w[3]}})]}}}},92106:function(t,e,r){\"use strict\";t.exports={attributes:r(22153),supplyDefaults:r(82766),calc:r(31181),plot:r(36899),style:r(67555),hoverPoints:r(57328),eventData:r(45461),moduleType:\"trace\",name:\"image\",basePlotModule:r(37703),categories:[\"cartesian\",\"svg\",\"2dMap\",\"noSortingByValue\"],animatable:!1,meta:{}}},36899:function(t,e,r){\"use strict\";var n=r(45568),i=r(34809),a=i.strTranslate,o=r(62972),s=r(42939),l=r(95544),c=r(1837).STYLE;t.exports=function(t,e,r,u){var h=e.xaxis,f=e.yaxis,p=!t._context._exportedPlot&&l();i.makeTraceGroups(u,r,\"im\").each((function(e){var r=n.select(this),l=e[0],u=l.trace,d=(\"fast\"===u.zsmooth||!1===u.zsmooth&&p)&&!u._hasZ&&u._hasSource&&\"linear\"===h.type&&\"linear\"===f.type;u._realImage=d;var m,g,y,v,x,_,b=l.z,w=l.x0,T=l.y0,k=l.w,A=l.h,M=u.dx,S=u.dy;for(_=0;void 0===m&&_<k;)m=h.c2p(w+_*M),_++;for(_=k;void 0===g&&_>0;)g=h.c2p(w+_*M),_--;for(_=0;void 0===v&&_<A;)v=f.c2p(T+_*S),_++;for(_=A;void 0===x&&_>0;)x=f.c2p(T+_*S),_--;g<m&&(y=g,g=m,m=y),x<v&&(y=v,v=x,x=y),d||(m=Math.max(-.5*h._length,m),g=Math.min(1.5*h._length,g),v=Math.max(-.5*f._length,v),x=Math.min(1.5*f._length,x));var E=Math.round(g-m),C=Math.round(x-v);if(E<=0||C<=0)r.selectAll(\"image\").data([]).exit().remove();else{var L=r.selectAll(\"image\").data([e]);L.enter().append(\"svg:image\").attr({xmlns:o.svg,preserveAspectRatio:\"none\"}),L.exit().remove();var I=!1===u.zsmooth?c:\"\";if(d){var P=i.simpleMap(h.range,h.r2l),z=i.simpleMap(f.range,f.r2l),O=P[1]<P[0],D=z[1]>z[0];if(O||D){var R=m+E/2,F=v+C/2;I+=\"transform:\"+a(R+\"px\",F+\"px\")+\"scale(\"+(O?-1:1)+\",\"+(D?-1:1)+\")\"+a(-R+\"px\",-F+\"px\")+\";\"}}L.attr(\"style\",I);var B=new Promise((function(t){if(u._hasZ)t();else if(u._hasSource)if(u._canvas&&u._canvas.el.width===k&&u._canvas.el.height===A&&u._canvas.source===u.source)t();else{var e=document.createElement(\"canvas\");e.width=k,e.height=A;var r=e.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:e,source:u.source},t()},n.setAttribute(\"src\",u.source)}})).then((function(){var t,e;if(u._hasZ)e=N((function(t,e){var r=b[e][t];return i.isTypedArray(r)&&(r=Array.from(r)),r})),t=e.toDataURL(\"image/png\");else if(u._hasSource)if(d)t=u.source;else{var r=u._canvas.el.getContext(\"2d\",{willReadFrequently:!0}).getImageData(0,0,k,A).data;e=N((function(t,e){var n=4*(e*k+t);return[r[n],r[n+1],r[n+2],r[n+3]]})),t=e.toDataURL(\"image/png\")}L.attr({\"xlink:href\":t,height:C,width:E,x:m,y:v})}));t._promises.push(B)}function N(t){var e=document.createElement(\"canvas\");e.width=E,e.height=C;var r,n=e.getContext(\"2d\",{willReadFrequently:!0}),a=function(t){return i.constrain(Math.round(h.c2p(w+t*M)-m),0,E)},o=function(t){return i.constrain(Math.round(f.c2p(T+t*S)-v),0,C)},c=s.colormodel[u.colormodel],p=c.colormodel||u.colormodel,d=c.fmt;for(_=0;_<l.w;_++){var g=a(_),y=a(_+1);if(y!==g&&!isNaN(y)&&!isNaN(g))for(var x=0;x<l.h;x++){var b=o(x),k=o(x+1);k===b||isNaN(k)||isNaN(b)||!t(_,x)||(r=u._scaler(t(_,x)),n.fillStyle=r?p+\"(\"+d(r).join(\",\")+\")\":\"rgba(0,0,0,0)\",n.fillRect(g,b,y-g,k-b))}}return e}}))}},67555:function(t,e,r){\"use strict\";var n=r(45568);t.exports=function(t){n.select(t).selectAll(\".im image\").style(\"opacity\",(function(t){return t[0].trace.opacity}))}},95485:function(t,e,r){\"use strict\";var n=r(93049).extendFlat,i=r(93049).extendDeep,a=r(13582).overrideAll,o=r(80337),s=r(10229),l=r(13792).u,c=r(25829),u=r(78032).templatedArray,h=r(20909),f=r(80712).descriptionOnlyNumbers,p=o({editType:\"plot\",colorEditType:\"plot\"}),d={color:{valType:\"color\",editType:\"plot\"},line:{color:{valType:\"color\",dflt:s.defaultLine,editType:\"plot\"},width:{valType:\"number\",min:0,dflt:0,editType:\"plot\"},editType:\"calc\"},thickness:{valType:\"number\",min:0,max:1,dflt:1,editType:\"plot\"},editType:\"calc\"},m={valType:\"info_array\",items:[{valType:\"number\",editType:\"plot\"},{valType:\"number\",editType:\"plot\"}],editType:\"plot\"},g=u(\"step\",i({},d,{range:m}));t.exports={mode:{valType:\"flaglist\",editType:\"calc\",flags:[\"number\",\"delta\",\"gauge\"],dflt:\"number\"},value:{valType:\"number\",editType:\"calc\",anim:!0},align:{valType:\"enumerated\",values:[\"left\",\"center\",\"right\"],editType:\"plot\"},domain:l({name:\"indicator\",trace:!0,editType:\"calc\"}),title:{text:{valType:\"string\",editType:\"plot\"},align:{valType:\"enumerated\",values:[\"left\",\"center\",\"right\"],editType:\"plot\"},font:n({},p,{}),editType:\"plot\"},number:{valueformat:{valType:\"string\",dflt:\"\",editType:\"plot\",description:f(\"value\")},font:n({},p,{}),prefix:{valType:\"string\",dflt:\"\",editType:\"plot\"},suffix:{valType:\"string\",dflt:\"\",editType:\"plot\"},editType:\"plot\"},delta:{reference:{valType:\"number\",editType:\"calc\"},position:{valType:\"enumerated\",values:[\"top\",\"bottom\",\"left\",\"right\"],dflt:\"bottom\",editType:\"plot\"},relative:{valType:\"boolean\",editType:\"plot\",dflt:!1},valueformat:{valType:\"string\",editType:\"plot\",description:f(\"value\")},increasing:{symbol:{valType:\"string\",dflt:h.INCREASING.SYMBOL,editType:\"plot\"},color:{valType:\"color\",dflt:h.INCREASING.COLOR,editType:\"plot\"},editType:\"plot\"},decreasing:{symbol:{valType:\"string\",dflt:h.DECREASING.SYMBOL,editType:\"plot\"},color:{valType:\"color\",dflt:h.DECREASING.COLOR,editType:\"plot\"},editType:\"plot\"},font:n({},p,{}),prefix:{valType:\"string\",dflt:\"\",editType:\"plot\"},suffix:{valType:\"string\",dflt:\"\",editType:\"plot\"},editType:\"calc\"},gauge:{shape:{valType:\"enumerated\",editType:\"plot\",dflt:\"angular\",values:[\"angular\",\"bullet\"]},bar:i({},d,{color:{dflt:\"green\"}}),bgcolor:{valType:\"color\",editType:\"plot\"},bordercolor:{valType:\"color\",dflt:s.defaultLine,editType:\"plot\"},borderwidth:{valType:\"number\",min:0,dflt:1,editType:\"plot\"},axis:a({range:m,visible:n({},c.visible,{dflt:!0}),tickmode:c.minor.tickmode,nticks:c.nticks,tick0:c.tick0,dtick:c.dtick,tickvals:c.tickvals,ticktext:c.ticktext,ticks:n({},c.ticks,{dflt:\"outside\"}),ticklen:c.ticklen,tickwidth:c.tickwidth,tickcolor:c.tickcolor,ticklabelstep:c.ticklabelstep,showticklabels:c.showticklabels,labelalias:c.labelalias,tickfont:o({}),tickangle:c.tickangle,tickformat:c.tickformat,tickformatstops:c.tickformatstops,tickprefix:c.tickprefix,showtickprefix:c.showtickprefix,ticksuffix:c.ticksuffix,showticksuffix:c.showticksuffix,separatethousands:c.separatethousands,exponentformat:c.exponentformat,minexponent:c.minexponent,showexponent:c.showexponent,editType:\"plot\"},\"plot\"),steps:g,threshold:{line:{color:n({},d.line.color,{}),width:n({},d.line.width,{dflt:1}),editType:\"plot\"},thickness:n({},d.thickness,{dflt:.85}),value:{valType:\"number\",editType:\"calc\",dflt:!1},editType:\"plot\"},editType:\"plot\"}}},47751:function(t,e,r){\"use strict\";var n=r(44122);e.name=\"indicator\",e.plot=function(t,r,i,a){n.plotBasePlot(e.name,t,r,i,a)},e.clean=function(t,r,i,a){n.cleanBasePlot(e.name,t,r,i,a)}},98385:function(t){\"use strict\";t.exports={calc:function(t,e){var r=[],n=e.value;\"number\"!=typeof e._lastValue&&(e._lastValue=e.value);var i=e._lastValue,a=i;return e._hasDelta&&\"number\"==typeof e.delta.reference&&(a=e.delta.reference),r[0]={y:n,lastY:i,delta:n-a,relativeDelta:(n-a)/a},r}}},74807:function(t){\"use strict\";t.exports={defaultNumberFontSize:80,bulletNumberDomainSize:.25,bulletPadding:.025,innerRadius:.75,valueThickness:.5,titlePadding:5,horizontalPadding:10}},79306:function(t,e,r){\"use strict\";var n=r(34809),i=r(95485),a=r(13792).N,o=r(78032),s=r(59008),l=r(74807),c=r(22777),u=r(87433),h=r(12036),f=r(54616);function p(t,e){function r(r,a){return n.coerce(t,e,i.gauge.steps,r,a)}r(\"color\"),r(\"line.color\"),r(\"line.width\"),r(\"range\"),r(\"thickness\")}t.exports={supplyDefaults:function(t,e,r,d){function m(r,a){return n.coerce(t,e,i,r,a)}a(e,d,m),m(\"mode\"),e._hasNumber=-1!==e.mode.indexOf(\"number\"),e._hasDelta=-1!==e.mode.indexOf(\"delta\"),e._hasGauge=-1!==e.mode.indexOf(\"gauge\");var g=m(\"value\");e._range=[0,\"number\"==typeof g?1.5*g:1];var y,v,x=new Array(2);if(e._hasNumber){m(\"number.valueformat\");var _=n.extendFlat({},d.font);_.size=void 0,n.coerceFont(m,\"number.font\",_),void 0===e.number.font.size&&(e.number.font.size=l.defaultNumberFontSize,x[0]=!0),m(\"number.prefix\"),m(\"number.suffix\"),y=e.number.font.size}if(e._hasDelta){var b=n.extendFlat({},d.font);b.size=void 0,n.coerceFont(m,\"delta.font\",b),void 0===e.delta.font.size&&(e.delta.font.size=(e._hasNumber?.5:1)*(y||l.defaultNumberFontSize),x[1]=!0),m(\"delta.reference\",e.value),m(\"delta.relative\"),m(\"delta.valueformat\",e.delta.relative?\"2%\":\"\"),m(\"delta.increasing.symbol\"),m(\"delta.increasing.color\"),m(\"delta.decreasing.symbol\"),m(\"delta.decreasing.color\"),m(\"delta.position\"),m(\"delta.prefix\"),m(\"delta.suffix\"),v=e.delta.font.size}e._scaleNumbers=(!e._hasNumber||x[0])&&(!e._hasDelta||x[1])||!1;var w,T,k,A,M=n.extendFlat({},d.font);function S(t,e){return n.coerce(w,T,i.gauge,t,e)}function E(t,e){return n.coerce(k,A,i.gauge.axis,t,e)}if(M.size=.25*(y||v||l.defaultNumberFontSize),n.coerceFont(m,\"title.font\",M),m(\"title.text\"),e._hasGauge){(w=t.gauge)||(w={}),T=o.newContainer(e,\"gauge\"),S(\"shape\"),(e._isBullet=\"bullet\"===e.gauge.shape)||m(\"title.align\",\"center\"),(e._isAngular=\"angular\"===e.gauge.shape)||m(\"align\",\"center\"),S(\"bgcolor\",d.paper_bgcolor),S(\"borderwidth\"),S(\"bordercolor\"),S(\"bar.color\"),S(\"bar.line.color\"),S(\"bar.line.width\"),S(\"bar.thickness\",l.valueThickness*(\"bullet\"===e.gauge.shape?.5:1)),s(w,T,{name:\"steps\",handleItemDefaults:p}),S(\"threshold.value\"),S(\"threshold.thickness\"),S(\"threshold.line.width\"),S(\"threshold.line.color\"),k={},w&&(k=w.axis||{}),A=o.newContainer(T,\"axis\"),E(\"visible\"),e._range=E(\"range\",e._range);var C={font:d.font,noAutotickangles:!0,outerTicks:!0,noTicklabelshift:!0,noTicklabelstandoff:!0};c(k,A,E,\"linear\"),f(k,A,E,\"linear\",C),h(k,A,E,\"linear\",C),u(k,A,E,C)}else m(\"title.align\",\"center\"),m(\"align\",\"center\"),e._isAngular=e._isBullet=!1;e._length=null}}},25638:function(t,e,r){\"use strict\";t.exports={moduleType:\"trace\",name:\"indicator\",basePlotModule:r(47751),categories:[\"svg\",\"noOpacity\",\"noHover\"],animatable:!0,attributes:r(95485),supplyDefaults:r(79306).supplyDefaults,calc:r(98385).calc,plot:r(37095),meta:{}}},37095:function(t,e,r){\"use strict\";var n=r(45568),i=r(88640).GW,a=r(88640).Dj,o=r(34809),s=o.strScale,l=o.strTranslate,c=o.rad2deg,u=r(4530).MID_SHIFT,h=r(62203),f=r(74807),p=r(30635),d=r(29714),m=r(97655),g=r(40957),y=r(25829),v=r(78766),x={left:\"start\",center:\"middle\",right:\"end\"},_={left:0,center:.5,right:1},b=/[yzafpnµmkMGTPEZY]/;function w(t){return t&&t.duration>0}function T(t){t.each((function(t){v.stroke(n.select(this),t.line.color)})).each((function(t){v.fill(n.select(this),t.color)})).style(\"stroke-width\",(function(t){return t.line.width}))}function k(t,e,r){var n=t._fullLayout,i=o.extendFlat({type:\"linear\",ticks:\"outside\",range:r,showline:!0},e),a={type:\"linear\",_id:\"x\"+e._id},s={letter:\"x\",font:n.font,noAutotickangles:!0,noHover:!0,noTickson:!0};function l(t,e){return o.coerce(i,a,y,t,e)}return m(i,a,l,s,n),g(i,a,l,s),a}function A(t,e,r){return[Math.min(e/t.width,r/t.height),t,e+\"x\"+r]}function M(t,e,r,i){var a=document.createElementNS(\"http://www.w3.org/2000/svg\",\"text\"),o=n.select(a);return o.text(t).attr(\"x\",0).attr(\"y\",0).attr(\"text-anchor\",r).attr(\"data-unformatted\",t).call(p.convertToTspans,i).call(h.font,e),h.bBox(o.node())}function S(t,e,r,n,i,a){var s=\"_cache\"+e;t[s]&&t[s].key===i||(t[s]={key:i,value:r});var l=o.aggNums(a,null,[t[s].value,n],2);return t[s].value=l,l}t.exports=function(t,e,r,m){var g,y=t._fullLayout;w(r)&&m&&(g=m()),o.makeTraceGroups(y._indicatorlayer,e,\"trace\").each((function(e){var m,E,C,L,I,P=e[0].trace,z=n.select(this),O=P._hasGauge,D=P._isAngular,R=P._isBullet,F=P.domain,B={w:y._size.w*(F.x[1]-F.x[0]),h:y._size.h*(F.y[1]-F.y[0]),l:y._size.l+y._size.w*F.x[0],r:y._size.r+y._size.w*(1-F.x[1]),t:y._size.t+y._size.h*(1-F.y[1]),b:y._size.b+y._size.h*F.y[0]},N=B.l+B.w/2,j=B.t+B.h/2,U=Math.min(B.w/2,B.h),V=f.innerRadius*U,q=P.align||\"center\";if(E=j,O){if(D&&(m=N,E=j+U/2,C=function(t){return function(t,e){return[e/Math.sqrt(t.width/2*(t.width/2)+t.height*t.height),t,e]}(t,.9*V)}),R){var H=f.bulletPadding,G=1-f.bulletNumberDomainSize+H;m=B.l+(G+(1-G)*_[q])*B.w,C=function(t){return A(t,(f.bulletNumberDomainSize-H)*B.w,B.h)}}}else m=B.l+_[q]*B.w,C=function(t){return A(t,B.w,B.h)};!function(t,e,r,i){var c,u,f,m=r[0].trace,g=i.numbersX,y=i.numbersY,T=m.align||\"center\",A=x[T],E=i.transitionOpts,C=i.onComplete,L=o.ensureSingle(e,\"g\",\"numbers\"),I=[];m._hasNumber&&I.push(\"number\"),m._hasDelta&&(I.push(\"delta\"),\"left\"===m.delta.position&&I.reverse());var P=L.selectAll(\"text\").data(I);function z(e,r,n,i){if(!e.match(\"s\")||n>=0==i>=0||r(n).slice(-1).match(b)||r(i).slice(-1).match(b))return r;var a=e.slice().replace(\"s\",\"f\").replace(/\\d+/,(function(t){return parseInt(t)-1})),o=k(t,{tickformat:a});return function(t){return Math.abs(t)<1?d.tickText(o,t).text:r(t)}}P.enter().append(\"text\"),P.attr(\"text-anchor\",(function(){return A})).attr(\"class\",(function(t){return t})).attr(\"x\",null).attr(\"y\",null).attr(\"dx\",null).attr(\"dy\",null),P.exit().remove();var O,D=m.mode+m.align;if(m._hasDelta&&(O=function(){var e=k(t,{tickformat:m.delta.valueformat},m._range);e.setScale(),d.prepTicks(e);var i=function(t){return d.tickText(e,t).text},o=m.delta.suffix,s=m.delta.prefix,l=function(t){return m.delta.relative?t.relativeDelta:t.delta},c=function(t,e){return 0===t||\"number\"!=typeof t||isNaN(t)?\"-\":(t>0?m.delta.increasing.symbol:m.delta.decreasing.symbol)+s+e(t)+o},f=function(t){return t.delta>=0?m.delta.increasing.color:m.delta.decreasing.color};void 0===m._deltaLastValue&&(m._deltaLastValue=l(r[0]));var g=L.select(\"text.delta\");function y(){g.text(c(l(r[0]),i)).call(v.fill,f(r[0])).call(p.convertToTspans,t)}return g.call(h.font,m.delta.font).call(v.fill,f({delta:m._deltaLastValue})),w(E)?g.transition().duration(E.duration).ease(E.easing).tween(\"text\",(function(){var t=n.select(this),e=l(r[0]),o=m._deltaLastValue,s=z(m.delta.valueformat,i,o,e),u=a(o,e);return m._deltaLastValue=e,function(e){t.text(c(u(e),s)),t.call(v.fill,f({delta:u(e)}))}})).each(\"end\",(function(){y(),C&&C()})).each(\"interrupt\",(function(){y(),C&&C()})):y(),u=M(c(l(r[0]),i),m.delta.font,A,t),g}(),D+=m.delta.position+m.delta.font.size+m.delta.font.family+m.delta.valueformat,D+=m.delta.increasing.symbol+m.delta.decreasing.symbol,f=u),m._hasNumber&&(function(){var e=k(t,{tickformat:m.number.valueformat},m._range);e.setScale(),d.prepTicks(e);var i=function(t){return d.tickText(e,t).text},o=m.number.suffix,s=m.number.prefix,l=L.select(\"text.number\");function u(){var e=\"number\"==typeof r[0].y?s+i(r[0].y)+o:\"-\";l.text(e).call(h.font,m.number.font).call(p.convertToTspans,t)}w(E)?l.transition().duration(E.duration).ease(E.easing).each(\"end\",(function(){u(),C&&C()})).each(\"interrupt\",(function(){u(),C&&C()})).attrTween(\"text\",(function(){var t=n.select(this),e=a(r[0].lastY,r[0].y);m._lastValue=r[0].y;var l=z(m.number.valueformat,i,r[0].lastY,r[0].y);return function(r){t.text(s+l(e(r))+o)}})):u(),c=M(s+i(r[0].y)+o,m.number.font,A,t)}(),D+=m.number.font.size+m.number.font.family+m.number.valueformat+m.number.suffix+m.number.prefix,f=c),m._hasDelta&&m._hasNumber){var R,F,B=[(c.left+c.right)/2,(c.top+c.bottom)/2],N=[(u.left+u.right)/2,(u.top+u.bottom)/2],j=.75*m.delta.font.size;\"left\"===m.delta.position&&(R=S(m,\"deltaPos\",0,-1*(c.width*_[m.align]+u.width*(1-_[m.align])+j),D,Math.min),F=B[1]-N[1],f={width:c.width+u.width+j,height:Math.max(c.height,u.height),left:u.left+R,right:c.right,top:Math.min(c.top,u.top+F),bottom:Math.max(c.bottom,u.bottom+F)}),\"right\"===m.delta.position&&(R=S(m,\"deltaPos\",0,c.width*(1-_[m.align])+u.width*_[m.align]+j,D,Math.max),F=B[1]-N[1],f={width:c.width+u.width+j,height:Math.max(c.height,u.height),left:c.left,right:u.right+R,top:Math.min(c.top,u.top+F),bottom:Math.max(c.bottom,u.bottom+F)}),\"bottom\"===m.delta.position&&(R=null,F=u.height,f={width:Math.max(c.width,u.width),height:c.height+u.height,left:Math.min(c.left,u.left),right:Math.max(c.right,u.right),top:c.bottom-c.height,bottom:c.bottom+u.height}),\"top\"===m.delta.position&&(R=null,F=c.top,f={width:Math.max(c.width,u.width),height:c.height+u.height,left:Math.min(c.left,u.left),right:Math.max(c.right,u.right),top:c.bottom-c.height-u.height,bottom:c.bottom}),O.attr({dx:R,dy:F})}(m._hasNumber||m._hasDelta)&&L.attr(\"transform\",(function(){var t=i.numbersScaler(f);D+=t[2];var e,r=S(m,\"numbersScale\",1,t[0],D,Math.min);m._scaleNumbers||(r=1),e=m._isAngular?y-r*f.bottom:y-r*(f.top+f.bottom)/2,m._numbersTop=r*f.top+e;var n=f[T];\"center\"===T&&(n=(f.left+f.right)/2);var a=g-r*n;return a=S(m,\"numbersTranslate\",0,a,D,Math.max),l(a,e)+s(r)}))}(t,z,e,{numbersX:m,numbersY:E,numbersScaler:C,transitionOpts:r,onComplete:g}),O&&(L={range:P.gauge.axis.range,color:P.gauge.bgcolor,line:{color:P.gauge.bordercolor,width:0},thickness:1},I={range:P.gauge.axis.range,color:\"rgba(0, 0, 0, 0)\",line:{color:P.gauge.bordercolor,width:P.gauge.borderwidth},thickness:1});var Z=z.selectAll(\"g.angular\").data(D?e:[]);Z.exit().remove();var W=z.selectAll(\"g.angularaxis\").data(D?e:[]);W.exit().remove(),D&&function(t,e,r,a){var o,s,h,f,p=r[0].trace,m=a.size,g=a.radius,y=a.innerRadius,v=a.gaugeBg,x=a.gaugeOutline,_=[m.l+m.w/2,m.t+m.h/2+g/2],b=a.gauge,A=a.layer,M=a.transitionOpts,S=a.onComplete,E=Math.PI/2;function C(t){var e=p.gauge.axis.range[0],r=(t-e)/(p.gauge.axis.range[1]-e)*Math.PI-E;return r<-E?-E:r>E?E:r}function L(t){return n.svg.arc().innerRadius((y+g)/2-t/2*(g-y)).outerRadius((y+g)/2+t/2*(g-y)).startAngle(-E)}function I(t){t.attr(\"d\",(function(t){return L(t.thickness).startAngle(C(t.range[0])).endAngle(C(t.range[1]))()}))}b.enter().append(\"g\").classed(\"angular\",!0),b.attr(\"transform\",l(_[0],_[1])),A.enter().append(\"g\").classed(\"angularaxis\",!0).classed(\"crisp\",!0),A.selectAll(\"g.xangularaxistick,path,text\").remove(),(o=k(t,p.gauge.axis)).type=\"linear\",o.range=p.gauge.axis.range,o._id=\"xangularaxis\",o.ticklabeloverflow=\"allow\",o.setScale();var P=function(t){return(o.range[0]-t.x)/(o.range[1]-o.range[0])*Math.PI+Math.PI},z={},O=d.makeLabelFns(o,0).labelStandoff;z.xFn=function(t){var e=P(t);return Math.cos(e)*O},z.yFn=function(t){var e=P(t),r=Math.sin(e)>0?.2:1;return-Math.sin(e)*(O+t.fontSize*r)+Math.abs(Math.cos(e))*(t.fontSize*u)},z.anchorFn=function(t){var e=P(t),r=Math.cos(e);return Math.abs(r)<.1?\"middle\":r>0?\"start\":\"end\"},z.heightFn=function(t,e,r){var n=P(t);return-.5*(1+Math.sin(n))*r};var D=function(t){return l(_[0]+g*Math.cos(t),_[1]-g*Math.sin(t))};h=function(t){return D(P(t))};if(s=d.calcTicks(o),f=d.getTickSigns(o)[2],o.visible){f=\"inside\"===o.ticks?-1:1;var R=(o.linewidth||1)/2;d.drawTicks(t,o,{vals:s,layer:A,path:\"M\"+f*R+\",0h\"+f*o.ticklen,transFn:function(t){var e=P(t);return D(e)+\"rotate(\"+-c(e)+\")\"}}),d.drawLabels(t,o,{vals:s,layer:A,transFn:h,labelFns:z})}var F=[v].concat(p.gauge.steps),B=b.selectAll(\"g.bg-arc\").data(F);B.enter().append(\"g\").classed(\"bg-arc\",!0).append(\"path\"),B.select(\"path\").call(I).call(T),B.exit().remove();var N=L(p.gauge.bar.thickness),j=b.selectAll(\"g.value-arc\").data([p.gauge.bar]);j.enter().append(\"g\").classed(\"value-arc\",!0).append(\"path\");var U,V,q,H=j.select(\"path\");w(M)?(H.transition().duration(M.duration).ease(M.easing).each(\"end\",(function(){S&&S()})).each(\"interrupt\",(function(){S&&S()})).attrTween(\"d\",(U=N,V=C(r[0].lastY),q=C(r[0].y),function(){var t=i(V,q);return function(e){return U.endAngle(t(e))()}})),p._lastValue=r[0].y):H.attr(\"d\",\"number\"==typeof r[0].y?N.endAngle(C(r[0].y)):\"M0,0Z\"),H.call(T),j.exit().remove(),F=[];var G=p.gauge.threshold.value;(G||0===G)&&F.push({range:[G,G],color:p.gauge.threshold.color,line:{color:p.gauge.threshold.line.color,width:p.gauge.threshold.line.width},thickness:p.gauge.threshold.thickness});var Z=b.selectAll(\"g.threshold-arc\").data(F);Z.enter().append(\"g\").classed(\"threshold-arc\",!0).append(\"path\"),Z.select(\"path\").call(I).call(T),Z.exit().remove();var W=b.selectAll(\"g.gauge-outline\").data([x]);W.enter().append(\"g\").classed(\"gauge-outline\",!0).append(\"path\"),W.select(\"path\").call(I).call(T),W.exit().remove()}(t,0,e,{radius:U,innerRadius:V,gauge:Z,layer:W,size:B,gaugeBg:L,gaugeOutline:I,transitionOpts:r,onComplete:g});var Y=z.selectAll(\"g.bullet\").data(R?e:[]);Y.exit().remove();var X=z.selectAll(\"g.bulletaxis\").data(R?e:[]);X.exit().remove(),R&&function(t,e,r,n){var i,a,o,s,c,u=r[0].trace,h=n.gauge,p=n.layer,m=n.gaugeBg,g=n.gaugeOutline,y=n.size,x=u.domain,_=n.transitionOpts,b=n.onComplete;h.enter().append(\"g\").classed(\"bullet\",!0),h.attr(\"transform\",l(y.l,y.t)),p.enter().append(\"g\").classed(\"bulletaxis\",!0).classed(\"crisp\",!0),p.selectAll(\"g.xbulletaxistick,path,text\").remove();var A=y.h,M=u.gauge.bar.thickness*A,S=x.x[0],E=x.x[0]+(x.x[1]-x.x[0])*(u._hasNumber||u._hasDelta?1-f.bulletNumberDomainSize:1);function C(t){t.attr(\"width\",(function(t){return Math.max(0,i.c2p(t.range[1])-i.c2p(t.range[0]))})).attr(\"x\",(function(t){return i.c2p(t.range[0])})).attr(\"y\",(function(t){return.5*(1-t.thickness)*A})).attr(\"height\",(function(t){return t.thickness*A}))}(i=k(t,u.gauge.axis))._id=\"xbulletaxis\",i.domain=[S,E],i.setScale(),a=d.calcTicks(i),o=d.makeTransTickFn(i),s=d.getTickSigns(i)[2],c=y.t+y.h,i.visible&&(d.drawTicks(t,i,{vals:\"inside\"===i.ticks?d.clipEnds(i,a):a,layer:p,path:d.makeTickPath(i,c,s),transFn:o}),d.drawLabels(t,i,{vals:a,layer:p,transFn:o,labelFns:d.makeLabelFns(i,c)}));var L=[m].concat(u.gauge.steps),I=h.selectAll(\"g.bg-bullet\").data(L);I.enter().append(\"g\").classed(\"bg-bullet\",!0).append(\"rect\"),I.select(\"rect\").call(C).call(T),I.exit().remove();var P=h.selectAll(\"g.value-bullet\").data([u.gauge.bar]);P.enter().append(\"g\").classed(\"value-bullet\",!0).append(\"rect\"),P.select(\"rect\").attr(\"height\",M).attr(\"y\",(A-M)/2).call(T),w(_)?P.select(\"rect\").transition().duration(_.duration).ease(_.easing).each(\"end\",(function(){b&&b()})).each(\"interrupt\",(function(){b&&b()})).attr(\"width\",Math.max(0,i.c2p(Math.min(u.gauge.axis.range[1],r[0].y)))):P.select(\"rect\").attr(\"width\",\"number\"==typeof r[0].y?Math.max(0,i.c2p(Math.min(u.gauge.axis.range[1],r[0].y))):0),P.exit().remove();var z=r.filter((function(){return u.gauge.threshold.value||0===u.gauge.threshold.value})),O=h.selectAll(\"g.threshold-bullet\").data(z);O.enter().append(\"g\").classed(\"threshold-bullet\",!0).append(\"line\"),O.select(\"line\").attr(\"x1\",i.c2p(u.gauge.threshold.value)).attr(\"x2\",i.c2p(u.gauge.threshold.value)).attr(\"y1\",(1-u.gauge.threshold.thickness)/2*A).attr(\"y2\",(1-(1-u.gauge.threshold.thickness)/2)*A).call(v.stroke,u.gauge.threshold.line.color).style(\"stroke-width\",u.gauge.threshold.line.width),O.exit().remove();var D=h.selectAll(\"g.gauge-outline\").data([g]);D.enter().append(\"g\").classed(\"gauge-outline\",!0).append(\"rect\"),D.select(\"rect\").call(C).call(T),D.exit().remove()}(t,0,e,{gauge:Y,layer:X,size:B,gaugeBg:L,gaugeOutline:I,transitionOpts:r,onComplete:g});var $=z.selectAll(\"text.title\").data(e);$.exit().remove(),$.enter().append(\"text\").classed(\"title\",!0),$.attr(\"text-anchor\",(function(){return R?x.right:x[P.title.align]})).text(P.title.text).call(h.font,P.title.font).call(p.convertToTspans,t),$.attr(\"transform\",(function(){var t,e=B.l+B.w*_[P.title.align],r=f.titlePadding,n=h.bBox($.node());return O?(D&&(t=P.gauge.axis.visible?h.bBox(W.node()).top-r-n.bottom:B.t+B.h/2-U/2-n.bottom-r),R&&(t=E-(n.top+n.bottom)/2,e=B.l-f.bulletPadding*B.w)):t=P._numbersTop-r-n.bottom,l(e,t)}))}))}},70252:function(t,e,r){\"use strict\";var n=r(87163),i=r(80712).axisHoverFormat,a=r(3208).rb,o=r(42450),s=r(9829),l=r(93049).extendFlat,c=r(13582).overrideAll,u=t.exports=c(l({x:{valType:\"data_array\"},y:{valType:\"data_array\"},z:{valType:\"data_array\"},value:{valType:\"data_array\"},isomin:{valType:\"number\"},isomax:{valType:\"number\"},surface:{show:{valType:\"boolean\",dflt:!0},count:{valType:\"integer\",dflt:2,min:1},fill:{valType:\"number\",min:0,max:1,dflt:1},pattern:{valType:\"flaglist\",flags:[\"A\",\"B\",\"C\",\"D\",\"E\"],extras:[\"all\",\"odd\",\"even\"],dflt:\"all\"}},spaceframe:{show:{valType:\"boolean\",dflt:!1},fill:{valType:\"number\",min:0,max:1,dflt:.15}},slices:{x:{show:{valType:\"boolean\",dflt:!1},locations:{valType:\"data_array\",dflt:[]},fill:{valType:\"number\",min:0,max:1,dflt:1}},y:{show:{valType:\"boolean\",dflt:!1},locations:{valType:\"data_array\",dflt:[]},fill:{valType:\"number\",min:0,max:1,dflt:1}},z:{show:{valType:\"boolean\",dflt:!1},locations:{valType:\"data_array\",dflt:[]},fill:{valType:\"number\",min:0,max:1,dflt:1}}},caps:{x:{show:{valType:\"boolean\",dflt:!0},fill:{valType:\"number\",min:0,max:1,dflt:1}},y:{show:{valType:\"boolean\",dflt:!0},fill:{valType:\"number\",min:0,max:1,dflt:1}},z:{show:{valType:\"boolean\",dflt:!0},fill:{valType:\"number\",min:0,max:1,dflt:1}}},text:{valType:\"string\",dflt:\"\",arrayOk:!0},hovertext:{valType:\"string\",dflt:\"\",arrayOk:!0},hovertemplate:a(),xhoverformat:i(\"x\"),yhoverformat:i(\"y\"),zhoverformat:i(\"z\"),valuehoverformat:i(\"value\",1),showlegend:l({},s.showlegend,{dflt:!1})},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\");u.flatshading.dflt=!0,u.lighting.facenormalsepsilon.dflt=0,u.x.editType=u.y.editType=u.z.editType=u.value.editType=\"calc+clearAxisTypes\",u.transforms=void 0},58988:function(t,e,r){\"use strict\";var n=r(28379),i=r(36402).processGrid,a=r(36402).filter;t.exports=function(t,e){e._len=Math.min(e.x.length,e.y.length,e.z.length,e.value.length),e._x=a(e.x,e._len),e._y=a(e.y,e._len),e._z=a(e.z,e._len),e._value=a(e.value,e._len);var r=i(e);e._gridFill=r.fill,e._Xs=r.Xs,e._Ys=r.Ys,e._Zs=r.Zs,e._len=r.len;for(var o=1/0,s=-1/0,l=0;l<e._len;l++){var c=e._value[l];o=Math.min(o,c),s=Math.max(s,c)}e._minValues=o,e._maxValues=s,e._vMin=void 0===e.isomin||null===e.isomin?o:e.isomin,e._vMax=void 0===e.isomax||null===e.isomax?s:e.isomax,n(t,e,{vals:[e._vMin,e._vMax],containerStr:\"\",cLetter:\"c\"})}},91370:function(t,e,r){\"use strict\";var n=r(99098).gl_mesh3d,i=r(46998).parseColorScale,a=r(34809).isArrayOrTypedArray,o=r(55010),s=r(88856).extractOpts,l=r(88239),c=function(t,e){for(var r=e.length-1;r>0;r--){var n=Math.min(e[r],e[r-1]),i=Math.max(e[r],e[r-1]);if(i>n&&n<t&&t<=i)return{id:r,distRatio:(i-t)/(i-n)}}return{id:0,distRatio:0}};function u(t,e,r){this.scene=t,this.uid=r,this.mesh=e,this.name=\"\",this.data=null,this.showContour=!1}var h=u.prototype;h.handlePick=function(t){if(t.object===this.mesh){var e=t.data.index,r=this.data._meshX[e],n=this.data._meshY[e],i=this.data._meshZ[e],o=this.data._Ys.length,s=this.data._Zs.length,l=c(r,this.data._Xs).id,u=c(n,this.data._Ys).id,h=c(i,this.data._Zs).id,f=t.index=h+s*u+s*o*l;t.traceCoordinate=[this.data._meshX[f],this.data._meshY[f],this.data._meshZ[f],this.data._value[f]];var p=this.data.hovertext||this.data.text;return a(p)&&void 0!==p[f]?t.textLabel=p[f]:p&&(t.textLabel=p),!0}},h.update=function(t){var e=this.scene,r=e.fullSceneLayout;function n(t,e,r,n){return e.map((function(e){return t.d2l(e,0,n)*r}))}this.data=p(t);var a={positions:l(n(r.xaxis,t._meshX,e.dataScale[0],t.xcalendar),n(r.yaxis,t._meshY,e.dataScale[1],t.ycalendar),n(r.zaxis,t._meshZ,e.dataScale[2],t.zcalendar)),cells:l(t._meshI,t._meshJ,t._meshK),lightPosition:[t.lightposition.x,t.lightposition.y,t.lightposition.z],ambient:t.lighting.ambient,diffuse:t.lighting.diffuse,specular:t.lighting.specular,roughness:t.lighting.roughness,fresnel:t.lighting.fresnel,vertexNormalsEpsilon:t.lighting.vertexnormalsepsilon,faceNormalsEpsilon:t.lighting.facenormalsepsilon,opacity:t.opacity,contourEnable:t.contour.show,contourColor:o(t.contour.color).slice(0,3),contourWidth:t.contour.width,useFacetNormals:t.flatshading},c=s(t);a.vertexIntensity=t._meshIntensity,a.vertexIntensityBounds=[c.min,c.max],a.colormap=i(t),this.mesh.update(a)},h.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};var f=[\"xyz\",\"xzy\",\"yxz\",\"yzx\",\"zxy\",\"zyx\"];function p(t){t._meshI=[],t._meshJ=[],t._meshK=[];var e,r,n,i,a,o,s,l=t.surface.show,u=t.spaceframe.show,h=t.surface.fill,p=t.spaceframe.fill,d=!1,m=!1,g=0,y=t._Xs,v=t._Ys,x=t._Zs,_=y.length,b=v.length,w=x.length,T=f.indexOf(t._gridFill.replace(/-/g,\"\").replace(/\\+/g,\"\")),k=function(t,e,r){switch(T){case 5:return r+w*e+w*b*t;case 4:return r+w*t+w*_*e;case 3:return e+b*r+b*w*t;case 2:return e+b*t+b*_*r;case 1:return t+_*r+_*w*e;default:return t+_*e+_*b*r}},A=t._minValues,M=t._maxValues,S=t._vMin,E=t._vMax;function C(t,e,s){for(var l=o.length,c=r;c<l;c++)if(t===n[c]&&e===i[c]&&s===a[c])return c;return-1}function L(){r=e}function I(){n=[],i=[],a=[],o=[],e=0,L()}function P(t,r,s,l){return n.push(t),i.push(r),a.push(s),o.push(l),++e-1}function z(t,e,r){for(var n=[],i=0;i<t.length;i++)n[i]=t[i]*(1-r)+r*e[i];return n}function O(t){s=t}function D(t,e){return\"all\"===t||null===t||t.indexOf(e)>-1}function R(t,e){return null===t?e:t}function F(e,r,n){L();var i,a,o,l=[r],c=[n];if(s>=1)l=[r],c=[n];else if(s>0){var u=function(t,e){var r=t[0],n=t[1],i=t[2],a=function(t,e,r){for(var n=[],i=0;i<t.length;i++)n[i]=(t[i]+e[i]+r[i])/3;return n}(r,n,i),o=Math.sqrt(1-s),l=z(a,r,o),c=z(a,n,o),u=z(a,i,o),h=e[0],f=e[1],p=e[2];return{xyzv:[[r,n,c],[c,l,r],[n,i,u],[u,c,n],[i,r,l],[l,u,i]],abc:[[h,f,-1],[-1,-1,h],[f,p,-1],[-1,-1,f],[p,h,-1],[-1,-1,p]]}}(r,n);l=u.xyzv,c=u.abc}for(var h=0;h<l.length;h++){r=l[h],n=c[h];for(var f=[],p=0;p<3;p++){var d=r[p][0],m=r[p][1],y=r[p][2],v=r[p][3],x=n[p]>-1?n[p]:C(d,m,y);f[p]=x>-1?x:P(d,m,y,R(e,v))}i=f[0],a=f[1],o=f[2],t._meshI.push(i),t._meshJ.push(a),t._meshK.push(o),++g}}function B(t,e,r,n){var i=t[3];i<r&&(i=r),i>n&&(i=n);for(var a=(t[3]-i)/(t[3]-e[3]+1e-9),o=[],s=0;s<4;s++)o[s]=(1-a)*t[s]+a*e[s];return o}function N(t,e,r){return t>=e&&t<=r}function j(t){var e=.001*(E-S);return t>=S-e&&t<=E+e}function U(e){for(var r=[],n=0;n<4;n++){var i=e[n];r.push([t._x[i],t._y[i],t._z[i],t._value[i]])}return r}var V=3;function q(t,e,r,n,i,a){a||(a=1),r=[-1,-1,-1];var o=!1,s=[N(e[0][3],n,i),N(e[1][3],n,i),N(e[2][3],n,i)];if(!s[0]&&!s[1]&&!s[2])return!1;var l=function(t,e,r){return j(e[0][3])&&j(e[1][3])&&j(e[2][3])?(F(t,e,r),!0):a<V&&q(t,e,r,S,E,++a)};if(s[0]&&s[1]&&s[2])return l(t,e,r)||o;var c=!1;return[[0,1,2],[2,0,1],[1,2,0]].forEach((function(a){if(s[a[0]]&&s[a[1]]&&!s[a[2]]){var u=e[a[0]],h=e[a[1]],f=e[a[2]],p=B(f,u,n,i),d=B(f,h,n,i);o=l(t,[d,p,u],[-1,-1,r[a[0]]])||o,o=l(t,[u,h,d],[r[a[0]],r[a[1]],-1])||o,c=!0}})),c||[[0,1,2],[1,2,0],[2,0,1]].forEach((function(a){if(s[a[0]]&&!s[a[1]]&&!s[a[2]]){var u=e[a[0]],h=e[a[1]],f=e[a[2]],p=B(h,u,n,i),d=B(f,u,n,i);o=l(t,[d,p,u],[-1,-1,r[a[0]]])||o,c=!0}})),o}function H(t,e,r,n){var i=!1,a=U(e),o=[N(a[0][3],r,n),N(a[1][3],r,n),N(a[2][3],r,n),N(a[3][3],r,n)];if(!(o[0]||o[1]||o[2]||o[3]))return i;if(o[0]&&o[1]&&o[2]&&o[3])return m&&(i=function(t,e,r){var n=function(n,i,a){F(t,[e[n],e[i],e[a]],[r[n],r[i],r[a]])};n(0,1,2),n(3,0,1),n(2,3,0),n(1,2,3)}(t,a,e)||i),i;var s=!1;return[[0,1,2,3],[3,0,1,2],[2,3,0,1],[1,2,3,0]].forEach((function(l){if(o[l[0]]&&o[l[1]]&&o[l[2]]&&!o[l[3]]){var c=a[l[0]],u=a[l[1]],h=a[l[2]],f=a[l[3]];if(m)i=F(t,[c,u,h],[e[l[0]],e[l[1]],e[l[2]]])||i;else{var p=B(f,c,r,n),d=B(f,u,r,n),g=B(f,h,r,n);i=F(null,[p,d,g],[-1,-1,-1])||i}s=!0}})),s||([[0,1,2,3],[1,2,3,0],[2,3,0,1],[3,0,1,2],[0,2,3,1],[1,3,2,0]].forEach((function(l){if(o[l[0]]&&o[l[1]]&&!o[l[2]]&&!o[l[3]]){var c=a[l[0]],u=a[l[1]],h=a[l[2]],f=a[l[3]],p=B(h,c,r,n),d=B(h,u,r,n),g=B(f,u,r,n),y=B(f,c,r,n);m?(i=F(t,[c,y,p],[e[l[0]],-1,-1])||i,i=F(t,[u,d,g],[e[l[1]],-1,-1])||i):i=function(t,e,r){var n=function(t,n,i){F(null,[e[t],e[n],e[i]],[r[t],r[n],r[i]])};n(0,1,2),n(2,3,0)}(0,[p,d,g,y],[-1,-1,-1,-1])||i,s=!0}})),s||[[0,1,2,3],[1,2,3,0],[2,3,0,1],[3,0,1,2]].forEach((function(l){if(o[l[0]]&&!o[l[1]]&&!o[l[2]]&&!o[l[3]]){var c=a[l[0]],u=a[l[1]],h=a[l[2]],f=a[l[3]],p=B(u,c,r,n),d=B(h,c,r,n),g=B(f,c,r,n);m?(i=F(t,[c,p,d],[e[l[0]],-1,-1])||i,i=F(t,[c,d,g],[e[l[0]],-1,-1])||i,i=F(t,[c,g,p],[e[l[0]],-1,-1])||i):i=F(null,[p,d,g],[-1,-1,-1])||i,s=!0}}))),i}function G(t,e,r,n,i,a,o,s,l,c,u){var h=!1;return d&&(D(t,\"A\")&&(h=H(null,[e,r,n,a],c,u)||h),D(t,\"B\")&&(h=H(null,[r,n,i,l],c,u)||h),D(t,\"C\")&&(h=H(null,[r,a,o,l],c,u)||h),D(t,\"D\")&&(h=H(null,[n,a,s,l],c,u)||h),D(t,\"E\")&&(h=H(null,[r,n,a,l],c,u)||h)),m&&(h=H(t,[r,n,a,l],c,u)||h),h}function Z(t,e,r,n,i,a,o,s){return[!0===s[0]||q(t,U([e,r,n]),[e,r,n],a,o),!0===s[1]||q(t,U([n,i,e]),[n,i,e],a,o)]}function W(t,e,r,n,i,a,o,s,l){return s?Z(t,e,r,i,n,a,o,l):Z(t,r,i,n,e,a,o,l)}function Y(t,e,r,n,i,a,o){var s,l,c,u,h=!1,f=function(){h=q(t,[s,l,c],[-1,-1,-1],i,a)||h,h=q(t,[c,u,s],[-1,-1,-1],i,a)||h},p=o[0],d=o[1],m=o[2];return p&&(s=z(U([k(e,r-0,n-0)])[0],U([k(e-1,r-0,n-0)])[0],p),l=z(U([k(e,r-0,n-1)])[0],U([k(e-1,r-0,n-1)])[0],p),c=z(U([k(e,r-1,n-1)])[0],U([k(e-1,r-1,n-1)])[0],p),u=z(U([k(e,r-1,n-0)])[0],U([k(e-1,r-1,n-0)])[0],p),f()),d&&(s=z(U([k(e-0,r,n-0)])[0],U([k(e-0,r-1,n-0)])[0],d),l=z(U([k(e-0,r,n-1)])[0],U([k(e-0,r-1,n-1)])[0],d),c=z(U([k(e-1,r,n-1)])[0],U([k(e-1,r-1,n-1)])[0],d),u=z(U([k(e-1,r,n-0)])[0],U([k(e-1,r-1,n-0)])[0],d),f()),m&&(s=z(U([k(e-0,r-0,n)])[0],U([k(e-0,r-0,n-1)])[0],m),l=z(U([k(e-0,r-1,n)])[0],U([k(e-0,r-1,n-1)])[0],m),c=z(U([k(e-1,r-1,n)])[0],U([k(e-1,r-1,n-1)])[0],m),u=z(U([k(e-1,r-0,n)])[0],U([k(e-1,r-0,n-1)])[0],m),f()),h}function X(t,e,r,n,i,a,o,s,l,c,u,h){var f=t;return h?(d&&\"even\"===t&&(f=null),G(f,e,r,n,i,a,o,s,l,c,u)):(d&&\"odd\"===t&&(f=null),G(f,l,s,o,a,i,n,r,e,c,u))}function $(t,e,r,n,i){for(var a=[],o=0,s=0;s<e.length;s++)for(var l=e[s],c=1;c<w;c++)for(var u=1;u<b;u++)a.push(W(t,k(l,u-1,c-1),k(l,u-1,c),k(l,u,c-1),k(l,u,c),r,n,(l+u+c)%2,i&&i[o]?i[o]:[])),o++;return a}function J(t,e,r,n,i){for(var a=[],o=0,s=0;s<e.length;s++)for(var l=e[s],c=1;c<_;c++)for(var u=1;u<w;u++)a.push(W(t,k(c-1,l,u-1),k(c,l,u-1),k(c-1,l,u),k(c,l,u),r,n,(c+l+u)%2,i&&i[o]?i[o]:[])),o++;return a}function K(t,e,r,n,i){for(var a=[],o=0,s=0;s<e.length;s++)for(var l=e[s],c=1;c<b;c++)for(var u=1;u<_;u++)a.push(W(t,k(u-1,c-1,l),k(u-1,c,l),k(u,c-1,l),k(u,c,l),r,n,(u+c+l)%2,i&&i[o]?i[o]:[])),o++;return a}function Q(t,e,r){for(var n=1;n<w;n++)for(var i=1;i<b;i++)for(var a=1;a<_;a++)X(t,k(a-1,i-1,n-1),k(a-1,i-1,n),k(a-1,i,n-1),k(a-1,i,n),k(a,i-1,n-1),k(a,i-1,n),k(a,i,n-1),k(a,i,n),e,r,(a+i+n)%2)}function tt(t,e,r,n,i,a){for(var o=[],s=0,l=0;l<e.length;l++)for(var c=e[l],u=1;u<w;u++)for(var h=1;h<b;h++)o.push(Y(t,c,h,u,r,n,i[l],a&&a[s]&&a[s])),s++;return o}function et(t,e,r,n,i,a){for(var o=[],s=0,l=0;l<e.length;l++)for(var c=e[l],u=1;u<_;u++)for(var h=1;h<w;h++)o.push(Y(t,u,c,h,r,n,i[l],a&&a[s]&&a[s])),s++;return o}function rt(t,e,r,n,i,a){for(var o=[],s=0,l=0;l<e.length;l++)for(var c=e[l],u=1;u<b;u++)for(var h=1;h<_;h++)o.push(Y(t,h,u,c,r,n,i[l],a&&a[s]&&a[s])),s++;return o}function nt(t,e){for(var r=[],n=t;n<e;n++)r.push(n);return r}return function(){I(),function(){for(var e=0;e<_;e++)for(var r=0;r<b;r++)for(var n=0;n<w;n++){var i=k(e,r,n);P(t._x[i],t._y[i],t._z[i],t._value[i])}}();var e=null;if(u&&p&&(O(p),m=!0,Q(e,S,E),m=!1),l&&h){O(h);for(var r=t.surface.pattern,s=t.surface.count,f=0;f<s;f++){var T=1===s?.5:f/(s-1),C=(1-T)*S+T*E,L=Math.abs(C-A)>Math.abs(C-M)?[A,C]:[C,M];d=!0,Q(r,L[0],L[1]),d=!1}}var z=[[Math.min(S,M),Math.max(S,M)],[Math.min(A,E),Math.max(A,E)]];[\"x\",\"y\",\"z\"].forEach((function(r){for(var n=[],i=0;i<z.length;i++){var a=0,o=z[i][0],s=z[i][1],l=t.slices[r];if(l.show&&l.fill){O(l.fill);var u=[],h=[],f=[];if(l.locations.length)for(var p=0;p<l.locations.length;p++){var d=c(l.locations[p],\"x\"===r?y:\"y\"===r?v:x);0===d.distRatio?u.push(d.id):d.id>0&&(h.push(d.id),\"x\"===r?f.push([d.distRatio,0,0]):\"y\"===r?f.push([0,d.distRatio,0]):f.push([0,0,d.distRatio]))}else u=nt(1,\"x\"===r?_-1:\"y\"===r?b-1:w-1);h.length>0&&(n[a]=\"x\"===r?tt(e,h,o,s,f,n[a]):\"y\"===r?et(e,h,o,s,f,n[a]):rt(e,h,o,s,f,n[a]),a++),u.length>0&&(n[a]=\"x\"===r?$(e,u,o,s,n[a]):\"y\"===r?J(e,u,o,s,n[a]):K(e,u,o,s,n[a]),a++)}var m=t.caps[r];m.show&&m.fill&&(O(m.fill),n[a]=\"x\"===r?$(e,[0,_-1],o,s,n[a]):\"y\"===r?J(e,[0,b-1],o,s,n[a]):K(e,[0,w-1],o,s,n[a]),a++)}})),0===g&&I(),t._meshX=n,t._meshY=i,t._meshZ=a,t._meshIntensity=o,t._Xs=y,t._Ys=v,t._Zs=x}(),t}t.exports={findNearestOnAxis:c,generateIsoMeshes:p,createIsosurfaceTrace:function(t,e){var r=t.glplot.gl,i=n({gl:r}),a=new u(t,i,e.uid);return i._trace=a,a.update(e),t.glplot.add(i),a}}},44731:function(t,e,r){\"use strict\";var n=r(34809),i=r(33626),a=r(70252),o=r(39356);function s(t,e,r,n,a){var s=a(\"isomin\"),l=a(\"isomax\");null!=l&&null!=s&&s>l&&(e.isomin=null,e.isomax=null);var c=a(\"x\"),u=a(\"y\"),h=a(\"z\"),f=a(\"value\");c&&c.length&&u&&u.length&&h&&h.length&&f&&f.length?(i.getComponentMethod(\"calendars\",\"handleTraceDefaults\")(t,e,[\"x\",\"y\",\"z\"],n),a(\"valuehoverformat\"),[\"x\",\"y\",\"z\"].forEach((function(t){a(t+\"hoverformat\");var e=\"caps.\"+t;a(e+\".show\")&&a(e+\".fill\");var r=\"slices.\"+t;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(t){a(t)})),o(t,e,n,a,{prefix:\"\",cLetter:\"c\"}),e._length=null):e.visible=!1}t.exports={supplyDefaults:function(t,e,r,i){s(t,e,0,i,(function(r,i){return n.coerce(t,e,a,r,i)}))},supplyIsoDefaults:s}},75297:function(t,e,r){\"use strict\";t.exports={attributes:r(70252),supplyDefaults:r(44731).supplyDefaults,calc:r(58988),colorbar:{min:\"cmin\",max:\"cmax\"},plot:r(91370).createIsosurfaceTrace,moduleType:\"trace\",name:\"isosurface\",basePlotModule:r(2487),categories:[\"gl3d\",\"showLegend\"],meta:{}}},42450:function(t,e,r){\"use strict\";var n=r(87163),i=r(80712).axisHoverFormat,a=r(3208).rb,o=r(16131),s=r(9829),l=r(93049).extendFlat;t.exports=l({x:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},y:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},z:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},i:{valType:\"data_array\",editType:\"calc\"},j:{valType:\"data_array\",editType:\"calc\"},k:{valType:\"data_array\",editType:\"calc\"},text:{valType:\"string\",dflt:\"\",arrayOk:!0,editType:\"calc\"},hovertext:{valType:\"string\",dflt:\"\",arrayOk:!0,editType:\"calc\"},hovertemplate:a({editType:\"calc\"}),xhoverformat:i(\"x\"),yhoverformat:i(\"y\"),zhoverformat:i(\"z\"),delaunayaxis:{valType:\"enumerated\",values:[\"x\",\"y\",\"z\"],dflt:\"z\",editType:\"calc\"},alphahull:{valType:\"number\",dflt:-1,editType:\"calc\"},intensity:{valType:\"data_array\",editType:\"calc\"},intensitymode:{valType:\"enumerated\",values:[\"vertex\",\"cell\"],dflt:\"vertex\",editType:\"calc\"},color:{valType:\"color\",editType:\"calc\"},vertexcolor:{valType:\"data_array\",editType:\"calc\"},facecolor:{valType:\"data_array\",editType:\"calc\"},transforms:void 0},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})})},44878:function(t,e,r){\"use strict\";var n=r(28379);t.exports=function(t,e){e.intensity&&n(t,e,{vals:e.intensity,containerStr:\"\",cLetter:\"c\"})}},82836:function(t,e,r){\"use strict\";var n=r(99098).gl_mesh3d,i=r(99098).delaunay_triangulate,a=r(99098).alpha_shape,o=r(99098).convex_hull,s=r(46998).parseColorScale,l=r(34809).isArrayOrTypedArray,c=r(55010),u=r(88856).extractOpts,h=r(88239);function f(t,e,r){this.scene=t,this.uid=r,this.mesh=e,this.name=\"\",this.color=\"#fff\",this.data=null,this.showContour=!1}var p=f.prototype;function d(t){for(var e=[],r=t.length,n=0;n<r;n++)e[n]=c(t[n]);return e}function m(t,e,r,n){for(var i=[],a=e.length,o=0;o<a;o++)i[o]=t.d2l(e[o],0,n)*r;return i}function g(t){for(var e=[],r=t.length,n=0;n<r;n++)e[n]=Math.round(t[n]);return e}function y(t,e){for(var r=t.length,n=0;n<r;n++)if(t[n]<=-.5||t[n]>=e-.5)return!1;return!0}p.handlePick=function(t){if(t.object===this.mesh){var e=t.index=t.data.index;t.data._cellCenter?t.traceCoordinate=t.data.dataCoordinate:t.traceCoordinate=[this.data.x[e],this.data.y[e],this.data.z[e]];var r=this.data.hovertext||this.data.text;return l(r)&&void 0!==r[e]?t.textLabel=r[e]:r&&(t.textLabel=r),!0}},p.update=function(t){var e=this.scene,r=e.fullSceneLayout;this.data=t;var n,l=t.x.length,f=h(m(r.xaxis,t.x,e.dataScale[0],t.xcalendar),m(r.yaxis,t.y,e.dataScale[1],t.ycalendar),m(r.zaxis,t.z,e.dataScale[2],t.zcalendar));if(t.i&&t.j&&t.k){if(t.i.length!==t.j.length||t.j.length!==t.k.length||!y(t.i,l)||!y(t.j,l)||!y(t.k,l))return;n=h(g(t.i),g(t.j),g(t.k))}else n=0===t.alphahull?o(f):t.alphahull>0?a(t.alphahull,f):function(t,e){for(var r=[\"x\",\"y\",\"z\"].indexOf(t),n=[],a=e.length,o=0;o<a;o++)n[o]=[e[o][(r+1)%3],e[o][(r+2)%3]];return i(n)}(t.delaunayaxis,f);var p={positions:f,cells:n,lightPosition:[t.lightposition.x,t.lightposition.y,t.lightposition.z],ambient:t.lighting.ambient,diffuse:t.lighting.diffuse,specular:t.lighting.specular,roughness:t.lighting.roughness,fresnel:t.lighting.fresnel,vertexNormalsEpsilon:t.lighting.vertexnormalsepsilon,faceNormalsEpsilon:t.lighting.facenormalsepsilon,opacity:t.opacity,contourEnable:t.contour.show,contourColor:c(t.contour.color).slice(0,3),contourWidth:t.contour.width,useFacetNormals:t.flatshading};if(t.intensity){var v=u(t);this.color=\"#fff\";var x=t.intensitymode;p[x+\"Intensity\"]=t.intensity,p[x+\"IntensityBounds\"]=[v.min,v.max],p.colormap=s(t)}else t.vertexcolor?(this.color=t.vertexcolor[0],p.vertexColors=d(t.vertexcolor)):t.facecolor?(this.color=t.facecolor[0],p.cellColors=d(t.facecolor)):(this.color=t.color,p.meshColor=c(t.color));this.mesh.update(p)},p.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()},t.exports=function(t,e){var r=t.glplot.gl,i=n({gl:r}),a=new f(t,i,e.uid);return i._trace=a,a.update(e),t.glplot.add(i),a}},13573:function(t,e,r){\"use strict\";var n=r(33626),i=r(34809),a=r(39356),o=r(42450);t.exports=function(t,e,r,s){function l(r,n){return i.coerce(t,e,o,r,n)}function c(t){var e=t.map((function(t){var e=l(t);return e&&i.isArrayOrTypedArray(e)?e:null}));return e.every((function(t){return t&&t.length===e[0].length}))&&e}c([\"x\",\"y\",\"z\"])?(c([\"i\",\"j\",\"k\"]),(!e.i||e.j&&e.k)&&(!e.j||e.k&&e.i)&&(!e.k||e.i&&e.j)?(n.getComponentMethod(\"calendars\",\"handleTraceDefaults\")(t,e,[\"x\",\"y\",\"z\"],s),[\"lighting.ambient\",\"lighting.diffuse\",\"lighting.specular\",\"lighting.roughness\",\"lighting.fresnel\",\"lighting.vertexnormalsepsilon\",\"lighting.facenormalsepsilon\",\"lightposition.x\",\"lightposition.y\",\"lightposition.z\",\"flatshading\",\"alphahull\",\"delaunayaxis\",\"opacity\"].forEach((function(t){l(t)})),l(\"contour.show\")&&(l(\"contour.color\"),l(\"contour.width\")),\"intensity\"in t?(l(\"intensity\"),l(\"intensitymode\"),a(t,e,s,l,{prefix:\"\",cLetter:\"c\"})):(e.showscale=!1,\"facecolor\"in t?l(\"facecolor\"):\"vertexcolor\"in t?l(\"vertexcolor\"):l(\"color\",r)),l(\"text\"),l(\"hovertext\"),l(\"hovertemplate\"),l(\"xhoverformat\"),l(\"yhoverformat\"),l(\"zhoverformat\"),e._length=null):e.visible=!1):e.visible=!1}},58859:function(t,e,r){\"use strict\";t.exports={attributes:r(42450),supplyDefaults:r(13573),calc:r(44878),colorbar:{min:\"cmin\",max:\"cmax\"},plot:r(82836),moduleType:\"trace\",name:\"mesh3d\",basePlotModule:r(2487),categories:[\"gl3d\",\"showLegend\"],meta:{}}},86706:function(t,e,r){\"use strict\";var n=r(34809).extendFlat,i=r(36640),a=r(80712).axisHoverFormat,o=r(94850).T,s=r(70192),l=r(20909),c=l.INCREASING.COLOR,u=l.DECREASING.COLOR,h=i.line;function f(t){return{line:{color:n({},h.color,{dflt:t}),width:h.width,dash:o,editType:\"style\"},editType:\"style\"}}t.exports={xperiod:i.xperiod,xperiod0:i.xperiod0,xperiodalignment:i.xperiodalignment,xhoverformat:a(\"x\"),yhoverformat:a(\"y\"),x:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},open:{valType:\"data_array\",editType:\"calc\"},high:{valType:\"data_array\",editType:\"calc\"},low:{valType:\"data_array\",editType:\"calc\"},close:{valType:\"data_array\",editType:\"calc\"},line:{width:n({},h.width,{}),dash:n({},o,{}),editType:\"style\"},increasing:f(c),decreasing:f(u),text:{valType:\"string\",dflt:\"\",arrayOk:!0,editType:\"calc\"},hovertext:{valType:\"string\",dflt:\"\",arrayOk:!0,editType:\"calc\"},tickwidth:{valType:\"number\",min:0,max:.5,dflt:.3,editType:\"calc\"},hoverlabel:n({},s.hoverlabel,{split:{valType:\"boolean\",dflt:!1,editType:\"style\"}}),zorder:i.zorder}},95694:function(t,e,r){\"use strict\";var n=r(34809),i=n._,a=r(29714),o=r(40528),s=r(63821).BADNUM;function l(t,e,r,n){return{o:t,h:e,l:r,c:n}}function c(t,e,r,o,l,c){for(var u=l.makeCalcdata(e,\"open\"),h=l.makeCalcdata(e,\"high\"),f=l.makeCalcdata(e,\"low\"),p=l.makeCalcdata(e,\"close\"),d=n.isArrayOrTypedArray(e.text),m=n.isArrayOrTypedArray(e.hovertext),g=!0,y=null,v=!!e.xperiodalignment,x=[],_=0;_<o.length;_++){var b=o[_],w=u[_],T=h[_],k=f[_],A=p[_];if(b!==s&&w!==s&&T!==s&&k!==s&&A!==s){A===w?null!==y&&A!==y&&(g=A>y):g=A>w,y=A;var M=c(w,T,k,A);M.pos=b,M.yc=(w+A)/2,M.i=_,M.dir=g?\"increasing\":\"decreasing\",M.x=M.pos,M.y=[k,T],v&&(M.orig_p=r[_]),d&&(M.tx=e.text[_]),m&&(M.htx=e.hovertext[_]),x.push(M)}else x.push({pos:b,empty:!0})}return e._extremes[l._id]=a.findExtremes(l,n.concat(f,h),{padded:!0}),x.length&&(x[0].t={labels:{open:i(t,\"open:\")+\" \",high:i(t,\"high:\")+\" \",low:i(t,\"low:\")+\" \",close:i(t,\"close:\")+\" \"}}),x}t.exports={calc:function(t,e){var r=a.getFromId(t,e.xaxis),i=a.getFromId(t,e.yaxis),s=function(t,e,r){var i=r._minDiff;if(!i){var a,s=t._fullData,l=[];for(i=1/0,a=0;a<s.length;a++){var c=s[a];if(\"ohlc\"===c.type&&!0===c.visible&&c.xaxis===e._id){l.push(c);var u=e.makeCalcdata(c,\"x\");c._origX=u;var h=o(r,e,\"x\",u).vals;c._xcalc=h;var f=n.distinctVals(h).minDiff;f&&isFinite(f)&&(i=Math.min(i,f))}}for(i===1/0&&(i=1),a=0;a<l.length;a++)l[a]._minDiff=i}return i*r.tickwidth}(t,r,e),u=e._minDiff;e._minDiff=null;var h=e._origX;e._origX=null;var f=e._xcalc;e._xcalc=null;var p=c(t,e,h,f,i,l);return e._extremes[r._id]=a.findExtremes(r,f,{vpad:u/2}),p.length?(n.extendFlat(p[0].t,{wHover:u/2,tickLen:s}),p):[{t:{empty:!0}}]},calcCommon:c}},22629:function(t,e,r){\"use strict\";var n=r(34809),i=r(28270),a=r(99669),o=r(86706);function s(t,e,r,n){r(n+\".line.color\"),r(n+\".line.width\",e.line.width),r(n+\".line.dash\",e.line.dash)}t.exports=function(t,e,r,l){function c(r,i){return n.coerce(t,e,o,r,i)}i(t,e,c,l)?(a(t,e,l,c,{x:!0}),c(\"xhoverformat\"),c(\"yhoverformat\"),c(\"line.width\"),c(\"line.dash\"),s(0,e,c,\"increasing\"),s(0,e,c,\"decreasing\"),c(\"text\"),c(\"hovertext\"),c(\"tickwidth\"),l._requestRangeslider[e.xaxis]=!0,c(\"zorder\")):e.visible=!1}},93245:function(t,e,r){\"use strict\";var n=r(29714),i=r(34809),a=r(32141),o=r(78766),s=r(34809).fillText,l=r(20909),c={increasing:l.INCREASING.SYMBOL,decreasing:l.DECREASING.SYMBOL};function u(t,e,r,n){var i,s,l=t.cd,c=t.xa,u=l[0].trace,h=l[0].t,f=u.type,p=\"ohlc\"===f?\"l\":\"min\",d=\"ohlc\"===f?\"h\":\"max\",m=h.bPos||0,g=function(t){return t.pos+m-e},y=h.bdPos||h.tickLen,v=h.wHover,x=Math.min(1,y/Math.abs(c.r2c(c.range[1])-c.r2c(c.range[0])));function _(t){var e=g(t);return a.inbox(e-v,e+v,i)}function b(t){var e=t[p],n=t[d];return e===n||a.inbox(e-r,n-r,i)}function w(t){return(_(t)+b(t))/2}i=t.maxHoverDistance-x,s=t.maxSpikeDistance-x;var T=a.getDistanceFunction(n,_,b,w);if(a.getClosest(l,T,t),!1===t.index)return null;var k=l[t.index];if(k.empty)return null;var A=u[k.dir],M=A.line.color;return o.opacity(M)&&A.line.width?t.color=M:t.color=A.fillcolor,t.x0=c.c2p(k.pos+m-y,!0),t.x1=c.c2p(k.pos+m+y,!0),t.xLabelVal=void 0!==k.orig_p?k.orig_p:k.pos,t.spikeDistance=w(k)*s/i,t.xSpike=c.c2p(k.pos,!0),t}function h(t,e,r,a){var o=t.cd,s=t.ya,l=o[0].trace,c=o[0].t,h=[],f=u(t,e,r,a);if(!f)return[];var p=o[f.index].hi||l.hoverinfo,d=p.split(\"+\");if(\"all\"!==p&&-1===d.indexOf(\"y\"))return[];for(var m=[\"high\",\"open\",\"close\",\"low\"],g={},y=0;y<m.length;y++){var v,x=m[y],_=l[x][f.index],b=s.c2p(_,!0);_ in g?(v=g[_]).yLabel+=\"<br>\"+c.labels[x]+n.hoverLabelText(s,_,l.yhoverformat):((v=i.extendFlat({},f)).y0=v.y1=b,v.yLabelVal=_,v.yLabel=c.labels[x]+n.hoverLabelText(s,_,l.yhoverformat),v.name=\"\",h.push(v),g[_]=v)}return h}function f(t,e,r,i){var a=t.cd,o=t.ya,l=a[0].trace,h=a[0].t,f=u(t,e,r,i);if(!f)return[];var p=a[f.index],d=f.index=p.i,m=p.dir;function g(t){return h.labels[t]+n.hoverLabelText(o,l[t][d],l.yhoverformat)}var y=p.hi||l.hoverinfo,v=y.split(\"+\"),x=\"all\"===y,_=x||-1!==v.indexOf(\"y\"),b=x||-1!==v.indexOf(\"text\"),w=_?[g(\"open\"),g(\"high\"),g(\"low\"),g(\"close\")+\" \"+c[m]]:[];return b&&s(p,l,w),f.extraText=w.join(\"<br>\"),f.y0=f.y1=o.c2p(p.yc,!0),[f]}t.exports={hoverPoints:function(t,e,r,n){return t.cd[0].trace.hoverlabel.split?h(t,e,r,n):f(t,e,r,n)},hoverSplit:h,hoverOnPoints:f}},12683:function(t,e,r){\"use strict\";t.exports={moduleType:\"trace\",name:\"ohlc\",basePlotModule:r(37703),categories:[\"cartesian\",\"svg\",\"showLegend\"],meta:{},attributes:r(86706),supplyDefaults:r(22629),calc:r(95694).calc,plot:r(38956),style:r(57406),hoverPoints:r(93245).hoverPoints,selectPoints:r(49343)}},28270:function(t,e,r){\"use strict\";var n=r(33626),i=r(34809);t.exports=function(t,e,r,a){var o=r(\"x\"),s=r(\"open\"),l=r(\"high\"),c=r(\"low\"),u=r(\"close\");if(r(\"hoverlabel.split\"),n.getComponentMethod(\"calendars\",\"handleTraceDefaults\")(t,e,[\"x\"],a),s&&l&&c&&u){var h=Math.min(s.length,l.length,c.length,u.length);return o&&(h=Math.min(h,i.minRowLength(o))),e._length=h,h}}},38956:function(t,e,r){\"use strict\";var n=r(45568),i=r(34809);t.exports=function(t,e,r,a){var o=e.yaxis,s=e.xaxis,l=!!s.rangebreaks;i.makeTraceGroups(a,r,\"trace ohlc\").each((function(t){var e=n.select(this),r=t[0],a=r.t;if(!0!==r.trace.visible||a.empty)e.remove();else{var c=a.tickLen,u=e.selectAll(\"path\").data(i.identity);u.enter().append(\"path\"),u.exit().remove(),u.attr(\"d\",(function(t){if(t.empty)return\"M0,0Z\";var e=s.c2p(t.pos-c,!0),r=s.c2p(t.pos+c,!0),n=l?(e+r)/2:s.c2p(t.pos,!0);return\"M\"+e+\",\"+o.c2p(t.o,!0)+\"H\"+n+\"M\"+n+\",\"+o.c2p(t.h,!0)+\"V\"+o.c2p(t.l,!0)+\"M\"+r+\",\"+o.c2p(t.c,!0)+\"H\"+n}))}}))}},49343:function(t){\"use strict\";t.exports=function(t,e){var r,n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].t.bPos||0;if(!1===e)for(r=0;r<n.length;r++)n[r].selected=0;else for(r=0;r<n.length;r++){var l=n[r];e.contains([i.c2p(l.pos+s),a.c2p(l.yc)],null,l.i,t)?(o.push({pointNumber:l.i,x:i.c2d(l.pos),y:a.c2d(l.yc)}),l.selected=1):l.selected=0}return o}},57406:function(t,e,r){\"use strict\";var n=r(45568),i=r(62203),a=r(78766);t.exports=function(t,e,r){var o=r||n.select(t).selectAll(\"g.ohlclayer\").selectAll(\"g.trace\");o.style(\"opacity\",(function(t){return t[0].trace.opacity})),o.each((function(t){var e=t[0].trace;n.select(this).selectAll(\"path\").each((function(t){if(!t.empty){var r=e[t.dir].line;n.select(this).style(\"fill\",\"none\").call(a.stroke,r.color).call(i.dashLine,r.dash,r.width).style(\"opacity\",e.selectedpoints&&!t.selected?.3:1)}}))}))}},11660:function(t,e,r){\"use strict\";var n=r(93049).extendFlat,i=r(9829),a=r(80337),o=r(87163),s=r(3208).rb,l=r(13792).u,c=n({editType:\"calc\"},o(\"line\",{editTypeOverride:\"calc\"}),{shape:{valType:\"enumerated\",values:[\"linear\",\"hspline\"],dflt:\"linear\",editType:\"plot\"},hovertemplate:s({editType:\"plot\",arrayOk:!1},{keys:[\"count\",\"probability\"]})});t.exports={domain:l({name:\"parcats\",trace:!0,editType:\"calc\"}),hoverinfo:n({},i.hoverinfo,{flags:[\"count\",\"probability\"],editType:\"plot\",arrayOk:!1}),hoveron:{valType:\"enumerated\",values:[\"category\",\"color\",\"dimension\"],dflt:\"category\",editType:\"plot\"},hovertemplate:s({editType:\"plot\",arrayOk:!1},{keys:[\"count\",\"probability\",\"category\",\"categorycount\",\"colorcount\",\"bandcolorcount\"]}),arrangement:{valType:\"enumerated\",values:[\"perpendicular\",\"freeform\",\"fixed\"],dflt:\"perpendicular\",editType:\"plot\"},bundlecolors:{valType:\"boolean\",dflt:!0,editType:\"plot\"},sortpaths:{valType:\"enumerated\",values:[\"forward\",\"backward\"],dflt:\"forward\",editType:\"plot\"},labelfont:a({editType:\"calc\"}),tickfont:a({autoShadowDflt:!0,editType:\"calc\"}),dimensions:{_isLinkedToArray:\"dimension\",label:{valType:\"string\",editType:\"calc\"},categoryorder:{valType:\"enumerated\",values:[\"trace\",\"category ascending\",\"category descending\",\"array\"],dflt:\"trace\",editType:\"calc\"},categoryarray:{valType:\"data_array\",editType:\"calc\"},ticktext:{valType:\"data_array\",editType:\"calc\"},values:{valType:\"data_array\",dflt:[],editType:\"calc\"},displayindex:{valType:\"integer\",editType:\"calc\"},editType:\"calc\",visible:{valType:\"boolean\",dflt:!0,editType:\"calc\"}},line:c,counts:{valType:\"number\",min:0,dflt:1,arrayOk:!0,editType:\"calc\"},customdata:void 0,hoverlabel:void 0,ids:void 0,legend:void 0,legendgroup:void 0,legendrank:void 0,opacity:void 0,selectedpoints:void 0,showlegend:void 0}},83260:function(t,e,r){\"use strict\";var n=r(4173).eV,i=r(37822),a=\"parcats\";e.name=a,e.plot=function(t,e,r,o){var s=n(t.calcdata,a);if(s.length){var l=s[0];i(t,l,r,o)}},e.clean=function(t,e,r,n){var i=n._has&&n._has(\"parcats\"),a=e._has&&e._has(\"parcats\");i&&!a&&n._paperdiv.selectAll(\".parcats\").remove()}},95564:function(t,e,r){\"use strict\";var n=r(71293).wrap,i=r(65477).hasColorscale,a=r(28379),o=r(48965),s=r(62203),l=r(34809),c=r(10721);function u(t,e,r){t.valueInds.push(e),t.count+=r}function h(t,e,r){return{categoryInds:t,color:e,rawColor:r,valueInds:[],count:0}}function f(t,e,r){t.valueInds.push(e),t.count+=r}t.exports=function(t,e){var r=l.filterVisible(e.dimensions);if(0===r.length)return[];var p,d,m,g=r.map((function(t){var e;if(\"trace\"===t.categoryorder)e=null;else if(\"array\"===t.categoryorder)e=t.categoryarray;else{e=o(t.values);for(var r=!0,n=0;n<e.length;n++)if(!c(e[n])){r=!1;break}e.sort(r?l.sorterAsc:void 0),\"category descending\"===t.categoryorder&&(e=e.reverse())}return function(t,e){e=null==e?[]:e.map((function(t){return t}));var r={},n={},i=[];e.forEach((function(t,e){r[t]=0,n[t]=e}));for(var a=0;a<t.length;a++){var o,s=t[a];void 0===r[s]?(r[s]=1,o=e.push(s)-1,n[s]=o):(r[s]++,o=n[s]),i.push(o)}var l=e.map((function(t){return r[t]}));return{uniqueValues:e,uniqueCounts:l,inds:i}}(t.values,e)}));p=l.isArrayOrTypedArray(e.counts)?e.counts:[e.counts],function(t){var e,r=t.map((function(t){return t.displayindex}));if(function(t){for(var e=new Array(t.length),r=0;r<t.length;r++){if(t[r]<0||t[r]>=t.length)return!1;if(void 0!==e[t[r]])return!1;e[t[r]]=!0}return!0}(r))for(e=0;e<t.length;e++)t[e]._displayindex=t[e].displayindex;else for(e=0;e<t.length;e++)t[e]._displayindex=e}(r),r.forEach((function(t,e){!function(t,e){t._categoryarray=e.uniqueValues,null===t.ticktext||void 0===t.ticktext?t._ticktext=[]:t._ticktext=t.ticktext.slice();for(var r=t._ticktext.length;r<e.uniqueValues.length;r++)t._ticktext.push(e.uniqueValues[r])}(t,g[e])}));var y,v=e.line;v?(i(e,\"line\")&&a(t,e,{vals:e.line.color,containerStr:\"line\",cLetter:\"c\"}),y=s.tryColorscale(v)):y=l.identity;var x,_,b,w,T,k=r[0].values.length,A={},M=g.map((function(t){return t.inds}));for(m=0,x=0;x<k;x++){var S=[];for(_=0;_<M.length;_++)S.push(M[_][x]);d=p[x%p.length],m+=d;var E=(b=x,w=void 0,T=void 0,l.isArrayOrTypedArray(v.color)?T=w=v.color[b%v.color.length]:w=v.color,{color:y(w),rawColor:T}),C=S+\"-\"+E.rawColor;void 0===A[C]&&(A[C]=h(S,E.color,E.rawColor)),f(A[C],x,d)}var L,I=r.map((function(t,e){return function(t,e,r,n,i){return{dimensionInd:t,containerInd:e,displayInd:r,dimensionLabel:n,count:i,categories:[],dragX:null}}(e,t._index,t._displayindex,t.label,m)}));for(x=0;x<k;x++)for(d=p[x%p.length],_=0;_<I.length;_++){var P=I[_].containerInd,z=g[_].inds[x],O=I[_].categories;if(void 0===O[z]){var D=e.dimensions[P]._categoryarray[z],R=e.dimensions[P]._ticktext[z];O[z]={dimensionInd:_,categoryInd:L=z,categoryValue:D,displayInd:L,categoryLabel:R,valueInds:[],count:0,dragY:null}}u(O[z],x,d)}return n(function(t,e,r){var n=t.map((function(t){return t.categories.length})).reduce((function(t,e){return Math.max(t,e)}));return{dimensions:t,paths:e,trace:void 0,maxCats:n,count:r}}(I,A,m))}},62651:function(t,e,r){\"use strict\";var n=r(34809),i=r(65477).hasColorscale,a=r(39356),o=r(13792).N,s=r(59008),l=r(11660),c=r(63197),u=r(87800).isTypedArraySpec;function h(t,e){function r(r,i){return n.coerce(t,e,l.dimensions,r,i)}var i=r(\"values\"),a=r(\"visible\");if(i&&i.length||(a=e.visible=!1),a){r(\"label\"),r(\"displayindex\",e._index);var o,s=t.categoryarray,c=n.isArrayOrTypedArray(s)&&s.length>0||u(s);c&&(o=\"array\");var h=r(\"categoryorder\",o);\"array\"===h?(r(\"categoryarray\"),r(\"ticktext\")):(delete t.categoryarray,delete t.ticktext),c||\"array\"!==h||(e.categoryorder=\"trace\")}}t.exports=function(t,e,r,u){function f(r,i){return n.coerce(t,e,l,r,i)}var p=s(t,e,{name:\"dimensions\",handleItemDefaults:h}),d=function(t,e,r,o,s){s(\"line.shape\"),s(\"line.hovertemplate\");var l=s(\"line.color\",o.colorway[0]);if(i(t,\"line\")&&n.isArrayOrTypedArray(l)){if(l.length)return s(\"line.colorscale\"),a(t,e,o,s,{prefix:\"line.\",cLetter:\"c\"}),l.length;e.line.color=r}return 1/0}(t,e,r,u,f);o(e,u,f),Array.isArray(p)&&p.length||(e.visible=!1),c(e,p,\"values\",d),f(\"hoveron\"),f(\"hovertemplate\"),f(\"arrangement\"),f(\"bundlecolors\"),f(\"sortpaths\"),f(\"counts\");var m=u.font;n.coerceFont(f,\"labelfont\",m,{overrideDflt:{size:Math.round(m.size)}}),n.coerceFont(f,\"tickfont\",m,{autoShadowDflt:!0,overrideDflt:{size:Math.round(m.size/1.2)}})}},6305:function(t,e,r){\"use strict\";t.exports={attributes:r(11660),supplyDefaults:r(62651),calc:r(95564),plot:r(37822),colorbar:{container:\"line\",min:\"cmin\",max:\"cmax\"},moduleType:\"trace\",name:\"parcats\",basePlotModule:r(83260),categories:[\"noOpacity\"],meta:{}}},27219:function(t,e,r){\"use strict\";var n=r(45568),i=r(88640).Dj,a=r(31420),o=r(32141),s=r(34809),l=s.strTranslate,c=r(62203),u=r(65657),h=r(30635);function f(t,e,r,i){var a=e._context.staticPlot,o=t.map(F.bind(0,e,r)),u=i.selectAll(\"g.parcatslayer\").data([null]);u.enter().append(\"g\").attr(\"class\",\"parcatslayer\").style(\"pointer-events\",a?\"none\":\"all\");var f=u.selectAll(\"g.trace.parcats\").data(o,p),v=f.enter().append(\"g\").attr(\"class\",\"trace parcats\");f.attr(\"transform\",(function(t){return l(t.x,t.y)})),v.append(\"g\").attr(\"class\",\"paths\");var x=f.select(\"g.paths\").selectAll(\"path.path\").data((function(t){return t.paths}),p);x.attr(\"fill\",(function(t){return t.model.color}));var w=x.enter().append(\"path\").attr(\"class\",\"path\").attr(\"stroke-opacity\",0).attr(\"fill\",(function(t){return t.model.color})).attr(\"fill-opacity\",0);b(w),x.attr(\"d\",(function(t){return t.svgD})),w.empty()||x.sort(m),x.exit().remove(),x.on(\"mouseover\",g).on(\"mouseout\",y).on(\"click\",_),v.append(\"g\").attr(\"class\",\"dimensions\");var A=f.select(\"g.dimensions\").selectAll(\"g.dimension\").data((function(t){return t.dimensions}),p);A.enter().append(\"g\").attr(\"class\",\"dimension\"),A.attr(\"transform\",(function(t){return l(t.x,0)})),A.exit().remove();var M=A.selectAll(\"g.category\").data((function(t){return t.categories}),p),S=M.enter().append(\"g\").attr(\"class\",\"category\");M.attr(\"transform\",(function(t){return l(0,t.y)})),S.append(\"rect\").attr(\"class\",\"catrect\").attr(\"pointer-events\",\"none\"),M.select(\"rect.catrect\").attr(\"fill\",\"none\").attr(\"width\",(function(t){return t.width})).attr(\"height\",(function(t){return t.height})),T(S);var E=M.selectAll(\"rect.bandrect\").data((function(t){return t.bands}),p);E.each((function(){s.raiseToTop(this)})),E.attr(\"fill\",(function(t){return t.color}));var O=E.enter().append(\"rect\").attr(\"class\",\"bandrect\").attr(\"stroke-opacity\",0).attr(\"fill\",(function(t){return t.color})).attr(\"fill-opacity\",0);E.attr(\"fill\",(function(t){return t.color})).attr(\"width\",(function(t){return t.width})).attr(\"height\",(function(t){return t.height})).attr(\"y\",(function(t){return t.y})).attr(\"cursor\",(function(t){return\"fixed\"===t.parcatsViewModel.arrangement?\"default\":\"perpendicular\"===t.parcatsViewModel.arrangement?\"ns-resize\":\"move\"})),k(O),E.exit().remove(),S.append(\"text\").attr(\"class\",\"catlabel\").attr(\"pointer-events\",\"none\"),M.select(\"text.catlabel\").attr(\"text-anchor\",(function(t){return d(t)?\"start\":\"end\"})).attr(\"alignment-baseline\",\"middle\").style(\"fill\",\"rgb(0, 0, 0)\").attr(\"x\",(function(t){return d(t)?t.width+5:-5})).attr(\"y\",(function(t){return t.height/2})).text((function(t){return t.model.categoryLabel})).each((function(t){c.font(n.select(this),t.parcatsViewModel.categorylabelfont),h.convertToTspans(n.select(this),e)})),S.append(\"text\").attr(\"class\",\"dimlabel\"),M.select(\"text.dimlabel\").attr(\"text-anchor\",\"middle\").attr(\"alignment-baseline\",\"baseline\").attr(\"cursor\",(function(t){return\"fixed\"===t.parcatsViewModel.arrangement?\"default\":\"ew-resize\"})).attr(\"x\",(function(t){return t.width/2})).attr(\"y\",-5).text((function(t,e){return 0===e?t.parcatsViewModel.model.dimensions[t.model.dimensionInd].dimensionLabel:null})).each((function(t){c.font(n.select(this),t.parcatsViewModel.labelfont)})),M.selectAll(\"rect.bandrect\").on(\"mouseover\",C).on(\"mouseout\",L),M.exit().remove(),A.call(n.behavior.drag().origin((function(t){return{x:t.x,y:0}})).on(\"dragstart\",I).on(\"drag\",P).on(\"dragend\",z)),f.each((function(t){t.traceSelection=n.select(this),t.pathSelection=n.select(this).selectAll(\"g.paths\").selectAll(\"path.path\"),t.dimensionSelection=n.select(this).selectAll(\"g.dimensions\").selectAll(\"g.dimension\")})),f.exit().remove()}function p(t){return t.key}function d(t){var e=t.parcatsViewModel.dimensions.length,r=t.parcatsViewModel.dimensions[e-1].model.dimensionInd;return t.model.dimensionInd===r}function m(t,e){return t.model.rawColor>e.model.rawColor?1:t.model.rawColor<e.model.rawColor?-1:0}function g(t){if(!t.parcatsViewModel.dragDimension&&-1===t.parcatsViewModel.hoverinfoItems.indexOf(\"skip\")){s.raiseToTop(this),w(n.select(this));var e=v(t),r=x(t);if(t.parcatsViewModel.graphDiv.emit(\"plotly_hover\",{points:e,event:n.event,constraints:r}),-1===t.parcatsViewModel.hoverinfoItems.indexOf(\"none\")){var i,a,l,c=n.mouse(this)[0],h=t.parcatsViewModel.graphDiv,f=t.parcatsViewModel.trace,p=h._fullLayout,d=p._paperdiv.node().getBoundingClientRect(),m=t.parcatsViewModel.graphDiv.getBoundingClientRect();for(l=0;l<t.leftXs.length-1;l++)if(t.leftXs[l]+t.dimWidths[l]-2<=c&&c<=t.leftXs[l+1]+2){var g=t.parcatsViewModel.dimensions[l],y=t.parcatsViewModel.dimensions[l+1];i=(g.x+g.width+y.x)/2,a=(t.topYs[l]+t.topYs[l+1]+t.height)/2;break}var _=t.parcatsViewModel.x+i,b=t.parcatsViewModel.y+a,T=u.mostReadable(t.model.color,[\"black\",\"white\"]),k=t.model.count,A=k/t.parcatsViewModel.model.count,M={countLabel:k,probabilityLabel:A.toFixed(3)},S=[];-1!==t.parcatsViewModel.hoverinfoItems.indexOf(\"count\")&&S.push([\"Count:\",M.countLabel].join(\" \")),-1!==t.parcatsViewModel.hoverinfoItems.indexOf(\"probability\")&&S.push([\"P:\",M.probabilityLabel].join(\" \"));var E=S.join(\"<br>\"),C=n.mouse(h)[0];o.loneHover({trace:f,x:_-d.left+m.left,y:b-d.top+m.top,text:E,color:t.model.color,borderColor:\"black\",fontFamily:'Monaco, \"Courier New\", monospace',fontSize:10,fontColor:T,idealAlign:C<_?\"right\":\"left\",hovertemplate:(f.line||{}).hovertemplate,hovertemplateLabels:M,eventData:[{data:f._input,fullData:f,count:k,probability:A}]},{container:p._hoverlayer.node(),outerContainer:p._paper.node(),gd:h})}}}function y(t){if(!t.parcatsViewModel.dragDimension&&(b(n.select(this)),o.loneUnhover(t.parcatsViewModel.graphDiv._fullLayout._hoverlayer.node()),t.parcatsViewModel.pathSelection.sort(m),-1===t.parcatsViewModel.hoverinfoItems.indexOf(\"skip\"))){var e=v(t),r=x(t);t.parcatsViewModel.graphDiv.emit(\"plotly_unhover\",{points:e,event:n.event,constraints:r})}}function v(t){for(var e=[],r=O(t.parcatsViewModel),n=0;n<t.model.valueInds.length;n++){var i=t.model.valueInds[n];e.push({curveNumber:r,pointNumber:i})}return e}function x(t){for(var e={},r=t.parcatsViewModel.model.dimensions,n=0;n<r.length;n++){var i=r[n],a=i.categories[t.model.categoryInds[n]];e[i.containerInd]=a.categoryValue}return void 0!==t.model.rawColor&&(e.color=t.model.rawColor),e}function _(t){if(-1===t.parcatsViewModel.hoverinfoItems.indexOf(\"skip\")){var e=v(t),r=x(t);t.parcatsViewModel.graphDiv.emit(\"plotly_click\",{points:e,event:n.event,constraints:r})}}function b(t){t.attr(\"fill\",(function(t){return t.model.color})).attr(\"fill-opacity\",.6).attr(\"stroke\",\"lightgray\").attr(\"stroke-width\",.2).attr(\"stroke-opacity\",1)}function w(t){t.attr(\"fill-opacity\",.8).attr(\"stroke\",(function(t){return u.mostReadable(t.model.color,[\"black\",\"white\"])})).attr(\"stroke-width\",.3)}function T(t){t.select(\"rect.catrect\").attr(\"stroke\",\"black\").attr(\"stroke-width\",1).attr(\"stroke-opacity\",1)}function k(t){t.attr(\"stroke\",\"black\").attr(\"stroke-width\",.2).attr(\"stroke-opacity\",1).attr(\"fill-opacity\",1)}function A(t){var e=t.parcatsViewModel.pathSelection,r=t.categoryViewModel.model.dimensionInd,n=t.categoryViewModel.model.categoryInd;return e.filter((function(e){return e.model.categoryInds[r]===n&&e.model.color===t.color}))}function M(t,e,r){var i=n.select(t).datum(),a=i.categoryViewModel.model,o=i.parcatsViewModel.graphDiv,s=n.select(t.parentNode).selectAll(\"rect.bandrect\"),l=[];s.each((function(t){A(t).each((function(t){Array.prototype.push.apply(l,v(t))}))}));var c={};c[a.dimensionInd]=a.categoryValue,o.emit(e,{points:l,event:r,constraints:c})}function S(t,e,r){var i=n.select(t).datum(),a=i.categoryViewModel.model,o=i.parcatsViewModel.graphDiv,s=A(i),l=[];s.each((function(t){Array.prototype.push.apply(l,v(t))}));var c={};c[a.dimensionInd]=a.categoryValue,void 0!==i.rawColor&&(c.color=i.rawColor),o.emit(e,{points:l,event:r,constraints:c})}function E(t,e,r){t._fullLayout._calcInverseTransform(t);var i,a,o=t._fullLayout._invScaleX,s=t._fullLayout._invScaleY,l=n.select(r.parentNode).select(\"rect.catrect\"),c=l.node().getBoundingClientRect(),u=l.datum(),h=u.parcatsViewModel,f=h.model.dimensions[u.model.dimensionInd],p=h.trace,d=c.top+c.height/2;h.dimensions.length>1&&f.displayInd===h.dimensions.length-1?(i=c.left,a=\"left\"):(i=c.left+c.width,a=\"right\");var m=u.model.count,g=u.model.categoryLabel,y=m/u.parcatsViewModel.model.count,v={countLabel:m,categoryLabel:g,probabilityLabel:y.toFixed(3)},x=[];-1!==u.parcatsViewModel.hoverinfoItems.indexOf(\"count\")&&x.push([\"Count:\",v.countLabel].join(\" \")),-1!==u.parcatsViewModel.hoverinfoItems.indexOf(\"probability\")&&x.push([\"P(\"+v.categoryLabel+\"):\",v.probabilityLabel].join(\" \"));var _=x.join(\"<br>\");return{trace:p,x:o*(i-e.left),y:s*(d-e.top),text:_,color:\"lightgray\",borderColor:\"black\",fontFamily:'Monaco, \"Courier New\", monospace',fontSize:12,fontColor:\"black\",idealAlign:a,hovertemplate:p.hovertemplate,hovertemplateLabels:v,eventData:[{data:p._input,fullData:p,count:m,category:g,probability:y}]}}function C(t){if(!t.parcatsViewModel.dragDimension&&-1===t.parcatsViewModel.hoverinfoItems.indexOf(\"skip\")){if(n.mouse(this)[1]<-1)return;var e,r=t.parcatsViewModel.graphDiv,i=r._fullLayout,a=i._paperdiv.node().getBoundingClientRect(),l=t.parcatsViewModel.hoveron,c=this;\"color\"===l?(function(t){var e=n.select(t).datum(),r=A(e);w(r),r.each((function(){s.raiseToTop(this)})),n.select(t.parentNode).selectAll(\"rect.bandrect\").filter((function(t){return t.color===e.color})).each((function(){s.raiseToTop(this),n.select(this).attr(\"stroke\",\"black\").attr(\"stroke-width\",1.5)}))}(c),S(c,\"plotly_hover\",n.event)):(function(t){n.select(t.parentNode).selectAll(\"rect.bandrect\").each((function(t){var e=A(t);w(e),e.each((function(){s.raiseToTop(this)}))})),n.select(t.parentNode).select(\"rect.catrect\").attr(\"stroke\",\"black\").attr(\"stroke-width\",2.5)}(c),M(c,\"plotly_hover\",n.event)),-1===t.parcatsViewModel.hoverinfoItems.indexOf(\"none\")&&(\"category\"===l?e=E(r,a,c):\"color\"===l?e=function(t,e,r){t._fullLayout._calcInverseTransform(t);var i,a,o=t._fullLayout._invScaleX,s=t._fullLayout._invScaleY,l=r.getBoundingClientRect(),c=n.select(r).datum(),h=c.categoryViewModel,f=h.parcatsViewModel,p=f.model.dimensions[h.model.dimensionInd],d=f.trace,m=l.y+l.height/2;f.dimensions.length>1&&p.displayInd===f.dimensions.length-1?(i=l.left,a=\"left\"):(i=l.left+l.width,a=\"right\");var g=h.model.categoryLabel,y=c.parcatsViewModel.model.count,v=0;c.categoryViewModel.bands.forEach((function(t){t.color===c.color&&(v+=t.count)}));var x=h.model.count,_=0;f.pathSelection.each((function(t){t.model.color===c.color&&(_+=t.model.count)}));var b=v/y,w=v/_,T=v/x,k={countLabel:v,categoryLabel:g,probabilityLabel:b.toFixed(3)},A=[];-1!==h.parcatsViewModel.hoverinfoItems.indexOf(\"count\")&&A.push([\"Count:\",k.countLabel].join(\" \")),-1!==h.parcatsViewModel.hoverinfoItems.indexOf(\"probability\")&&(A.push(\"P(color ∩ \"+g+\"): \"+k.probabilityLabel),A.push(\"P(\"+g+\" | color): \"+w.toFixed(3)),A.push(\"P(color | \"+g+\"): \"+T.toFixed(3)));var M=A.join(\"<br>\"),S=u.mostReadable(c.color,[\"black\",\"white\"]);return{trace:d,x:o*(i-e.left),y:s*(m-e.top),text:M,color:c.color,borderColor:\"black\",fontFamily:'Monaco, \"Courier New\", monospace',fontColor:S,fontSize:10,idealAlign:a,hovertemplate:d.hovertemplate,hovertemplateLabels:k,eventData:[{data:d._input,fullData:d,category:g,count:y,probability:b,categorycount:x,colorcount:_,bandcolorcount:v}]}}(r,a,c):\"dimension\"===l&&(e=function(t,e,r){var i=[];return n.select(r.parentNode.parentNode).selectAll(\"g.category\").select(\"rect.catrect\").each((function(){i.push(E(t,e,this))})),i}(r,a,c)),e&&o.loneHover(e,{container:i._hoverlayer.node(),outerContainer:i._paper.node(),gd:r}))}}function L(t){var e=t.parcatsViewModel;e.dragDimension||(b(e.pathSelection),T(e.dimensionSelection.selectAll(\"g.category\")),k(e.dimensionSelection.selectAll(\"g.category\").selectAll(\"rect.bandrect\")),o.loneUnhover(e.graphDiv._fullLayout._hoverlayer.node()),e.pathSelection.sort(m),-1!==e.hoverinfoItems.indexOf(\"skip\"))||(\"color\"===t.parcatsViewModel.hoveron?S(this,\"plotly_unhover\",n.event):M(this,\"plotly_unhover\",n.event))}function I(t){\"fixed\"!==t.parcatsViewModel.arrangement&&(t.dragDimensionDisplayInd=t.model.displayInd,t.initialDragDimensionDisplayInds=t.parcatsViewModel.model.dimensions.map((function(t){return t.displayInd})),t.dragHasMoved=!1,t.dragCategoryDisplayInd=null,n.select(this).selectAll(\"g.category\").select(\"rect.catrect\").each((function(e){var r=n.mouse(this)[0],i=n.mouse(this)[1];-2<=r&&r<=e.width+2&&-2<=i&&i<=e.height+2&&(t.dragCategoryDisplayInd=e.model.displayInd,t.initialDragCategoryDisplayInds=t.model.categories.map((function(t){return t.displayInd})),e.model.dragY=e.y,s.raiseToTop(this.parentNode),n.select(this.parentNode).selectAll(\"rect.bandrect\").each((function(e){e.y<i&&i<=e.y+e.height&&(t.potentialClickBand=this)})))})),t.parcatsViewModel.dragDimension=t,o.loneUnhover(t.parcatsViewModel.graphDiv._fullLayout._hoverlayer.node()))}function P(t){if(\"fixed\"!==t.parcatsViewModel.arrangement&&(t.dragHasMoved=!0,null!==t.dragDimensionDisplayInd)){var e=t.dragDimensionDisplayInd,r=e-1,i=e+1,a=t.parcatsViewModel.dimensions[e];if(null!==t.dragCategoryDisplayInd){var o=a.categories[t.dragCategoryDisplayInd];o.model.dragY+=n.event.dy;var s=o.model.dragY,l=o.model.displayInd,c=a.categories,u=c[l-1],h=c[l+1];void 0!==u&&s<u.y+u.height/2&&(o.model.displayInd=u.model.displayInd,u.model.displayInd=l),void 0!==h&&s+o.height>h.y+h.height/2&&(o.model.displayInd=h.model.displayInd,h.model.displayInd=l),t.dragCategoryDisplayInd=o.model.displayInd}if(null===t.dragCategoryDisplayInd||\"freeform\"===t.parcatsViewModel.arrangement){a.model.dragX=n.event.x;var f=t.parcatsViewModel.dimensions[r],p=t.parcatsViewModel.dimensions[i];void 0!==f&&a.model.dragX<f.x+f.width&&(a.model.displayInd=f.model.displayInd,f.model.displayInd=e),void 0!==p&&a.model.dragX+a.width>p.x&&(a.model.displayInd=p.model.displayInd,p.model.displayInd=t.dragDimensionDisplayInd),t.dragDimensionDisplayInd=a.model.displayInd}j(t.parcatsViewModel),N(t.parcatsViewModel),R(t.parcatsViewModel),D(t.parcatsViewModel)}}function z(t){if(\"fixed\"!==t.parcatsViewModel.arrangement&&null!==t.dragDimensionDisplayInd){n.select(this).selectAll(\"text\").attr(\"font-weight\",\"normal\");var e={},r=O(t.parcatsViewModel),i=t.parcatsViewModel.model.dimensions.map((function(t){return t.displayInd})),o=t.initialDragDimensionDisplayInds.some((function(t,e){return t!==i[e]}));o&&i.forEach((function(r,n){var i=t.parcatsViewModel.model.dimensions[n].containerInd;e[\"dimensions[\"+i+\"].displayindex\"]=r}));var s=!1;if(null!==t.dragCategoryDisplayInd){var l=t.model.categories.map((function(t){return t.displayInd}));if(s=t.initialDragCategoryDisplayInds.some((function(t,e){return t!==l[e]}))){var c=t.model.categories.slice().sort((function(t,e){return t.displayInd-e.displayInd})),u=c.map((function(t){return t.categoryValue})),h=c.map((function(t){return t.categoryLabel}));e[\"dimensions[\"+t.model.containerInd+\"].categoryarray\"]=[u],e[\"dimensions[\"+t.model.containerInd+\"].ticktext\"]=[h],e[\"dimensions[\"+t.model.containerInd+\"].categoryorder\"]=\"array\"}}-1===t.parcatsViewModel.hoverinfoItems.indexOf(\"skip\")&&!t.dragHasMoved&&t.potentialClickBand&&(\"color\"===t.parcatsViewModel.hoveron?S(t.potentialClickBand,\"plotly_click\",n.event.sourceEvent):M(t.potentialClickBand,\"plotly_click\",n.event.sourceEvent)),t.model.dragX=null,null!==t.dragCategoryDisplayInd&&(t.parcatsViewModel.dimensions[t.dragDimensionDisplayInd].categories[t.dragCategoryDisplayInd].model.dragY=null,t.dragCategoryDisplayInd=null),t.dragDimensionDisplayInd=null,t.parcatsViewModel.dragDimension=null,t.dragHasMoved=null,t.potentialClickBand=null,j(t.parcatsViewModel),N(t.parcatsViewModel),n.transition().duration(300).ease(\"cubic-in-out\").each((function(){R(t.parcatsViewModel,!0),D(t.parcatsViewModel,!0)})).each(\"end\",(function(){(o||s)&&a.restyle(t.parcatsViewModel.graphDiv,e,[r])}))}}function O(t){for(var e,r=t.graphDiv._fullData,n=0;n<r.length;n++)if(t.key===r[n].uid){e=n;break}return e}function D(t,e){var r;void 0===e&&(e=!1),t.pathSelection.data((function(t){return t.paths}),p),(r=t.pathSelection,e?r.transition():r).attr(\"d\",(function(t){return t.svgD}))}function R(t,e){function r(t){return e?t.transition():t}void 0===e&&(e=!1),t.dimensionSelection.data((function(t){return t.dimensions}),p);var i=t.dimensionSelection.selectAll(\"g.category\").data((function(t){return t.categories}),p);r(t.dimensionSelection).attr(\"transform\",(function(t){return l(t.x,0)})),r(i).attr(\"transform\",(function(t){return l(0,t.y)})),i.select(\".dimlabel\").text((function(t,e){return 0===e?t.parcatsViewModel.model.dimensions[t.model.dimensionInd].dimensionLabel:null})),i.select(\".catlabel\").attr(\"text-anchor\",(function(t){return d(t)?\"start\":\"end\"})).attr(\"x\",(function(t){return d(t)?t.width+5:-5})).each((function(t){var e,r;d(t)?(e=t.width+5,r=\"start\"):(e=-5,r=\"end\"),n.select(this).selectAll(\"tspan\").attr(\"x\",e).attr(\"text-anchor\",r)}));var a=i.selectAll(\"rect.bandrect\").data((function(t){return t.bands}),p),o=a.enter().append(\"rect\").attr(\"class\",\"bandrect\").attr(\"cursor\",\"move\").attr(\"stroke-opacity\",0).attr(\"fill\",(function(t){return t.color})).attr(\"fill-opacity\",0);a.attr(\"fill\",(function(t){return t.color})).attr(\"width\",(function(t){return t.width})).attr(\"height\",(function(t){return t.height})).attr(\"y\",(function(t){return t.y})),k(o),a.each((function(){s.raiseToTop(this)})),a.exit().remove()}function F(t,e,r){var n,i=r[0],a=e.margin||{l:80,r:80,t:100,b:80},o=i.trace,s=o.domain,l=e.width,c=e.height,u=Math.floor(l*(s.x[1]-s.x[0])),h=Math.floor(c*(s.y[1]-s.y[0])),f=s.x[0]*l+a.l,p=e.height-s.y[1]*e.height+a.t,d=o.line.shape;n=\"all\"===o.hoverinfo?[\"count\",\"probability\"]:(o.hoverinfo||\"\").split(\"+\");var m={trace:o,key:o.uid,model:i,x:f,y:p,width:u,height:h,hoveron:o.hoveron,hoverinfoItems:n,arrangement:o.arrangement,bundlecolors:o.bundlecolors,sortpaths:o.sortpaths,labelfont:o.labelfont,categorylabelfont:o.tickfont,pathShape:d,dragDimension:null,margin:a,paths:[],dimensions:[],graphDiv:t,traceSelection:null,pathSelection:null,dimensionSelection:null};return i.dimensions&&(j(m),N(m)),m}function B(t,e,r,n,a){var o,s,l=[],c=[];for(s=0;s<r.length-1;s++)o=i(r[s]+t[s],t[s+1]),l.push(o(a)),c.push(o(1-a));var u=\"M \"+t[0]+\",\"+e[0];for(u+=\"l\"+r[0]+\",0 \",s=1;s<r.length;s++)u+=\"C\"+l[s-1]+\",\"+e[s-1]+\" \"+c[s-1]+\",\"+e[s]+\" \"+t[s]+\",\"+e[s],u+=\"l\"+r[s]+\",0 \";for(u+=\"l0,\"+n+\" \",u+=\"l -\"+r[r.length-1]+\",0 \",s=r.length-2;s>=0;s--)u+=\"C\"+c[s]+\",\"+(e[s+1]+n)+\" \"+l[s]+\",\"+(e[s]+n)+\" \"+(t[s]+r[s])+\",\"+(e[s]+n),u+=\"l-\"+r[s]+\",0 \";return u+\"Z\"}function N(t){var e=t.dimensions,r=t.model,n=e.map((function(t){return t.categories.map((function(t){return t.y}))})),i=t.model.dimensions.map((function(t){return t.categories.map((function(t){return t.displayInd}))})),a=t.model.dimensions.map((function(t){return t.displayInd})),o=t.dimensions.map((function(t){return t.model.dimensionInd})),s=e.map((function(t){return t.x})),l=e.map((function(t){return t.width})),c=[];for(var u in r.paths)r.paths.hasOwnProperty(u)&&c.push(r.paths[u]);function h(t){var e=t.categoryInds.map((function(t,e){return i[e][t]}));return o.map((function(t){return e[t]}))}c.sort((function(e,r){var n=h(e),i=h(r);return\"backward\"===t.sortpaths&&(n.reverse(),i.reverse()),n.push(e.valueInds[0]),i.push(r.valueInds[0]),t.bundlecolors&&(n.unshift(e.rawColor),i.unshift(r.rawColor)),n<i?-1:n>i?1:0}));for(var f=new Array(c.length),p=e[0].model.count,d=e[0].categories.map((function(t){return t.height})).reduce((function(t,e){return t+e})),m=0;m<c.length;m++){var g,y=c[m];g=p>0?d*(y.count/p):0;for(var v,x=new Array(n.length),_=0;_<y.categoryInds.length;_++){var b=y.categoryInds[_],w=i[_][b],T=a[_];x[T]=n[T][w],n[T][w]+=g;var k=t.dimensions[T].categories[w],A=k.bands.length,M=k.bands[A-1];if(void 0===M||y.rawColor!==M.rawColor){var S=void 0===M?0:M.y+M.height;k.bands.push({key:S,color:y.color,rawColor:y.rawColor,height:g,width:k.width,count:y.count,y:S,categoryViewModel:k,parcatsViewModel:t})}else{var E=k.bands[A-1];E.height+=g,E.count+=y.count}}v=\"hspline\"===t.pathShape?B(s,x,l,g,.5):B(s,x,l,g,0),f[m]={key:y.valueInds[0],model:y,height:g,leftXs:s,topYs:x,dimWidths:l,svgD:v,parcatsViewModel:t}}t.paths=f}function j(t){var e=t.model.dimensions.map((function(t){return{displayInd:t.displayInd,dimensionInd:t.dimensionInd}}));e.sort((function(t,e){return t.displayInd-e.displayInd}));var r=[];for(var n in e){var i=e[n].dimensionInd,a=t.model.dimensions[i];r.push(U(t,a))}t.dimensions=r}function U(t,e){var r,n=t.model.dimensions.length,i=e.displayInd;r=40+(n>1?(t.width-80-16)/(n-1):0)*i;var a,o,s,l,c,u=[],h=t.model.maxCats,f=e.categories.length,p=e.count,d=t.height-8*(h-1),m=8*(h-f)/2,g=e.categories.map((function(t){return{displayInd:t.displayInd,categoryInd:t.categoryInd}}));for(g.sort((function(t,e){return t.displayInd-e.displayInd})),c=0;c<f;c++)l=g[c].categoryInd,o=e.categories[l],a=p>0?o.count/p*d:0,s={key:o.valueInds[0],model:o,width:16,height:a,y:null!==o.dragY?o.dragY:m,bands:[],parcatsViewModel:t},m=m+a+8,u.push(s);return{key:e.dimensionInd,x:null!==e.dragX?e.dragX:r,y:0,width:16,model:e,categories:u,parcatsViewModel:t,dragCategoryDisplayInd:null,dragDimensionDisplayInd:null,initialDragDimensionDisplayInds:null,initialDragCategoryDisplayInds:null,dragHasMoved:null,potentialClickBand:null}}t.exports=function(t,e,r,n){f(r,t,n,e)}},37822:function(t,e,r){\"use strict\";var n=r(27219);t.exports=function(t,e,r,i){var a=t._fullLayout,o=a._paper,s=a._size;n(t,o,e,{width:s.w,height:s.h,margin:{t:s.t,r:s.r,b:s.b,l:s.l}},r,i)}},59549:function(t,e,r){\"use strict\";var n=r(87163),i=r(25829),a=r(80337),o=r(13792).u,s=r(93049).extendFlat,l=r(78032).templatedArray;t.exports={domain:o({name:\"parcoords\",trace:!0,editType:\"plot\"}),labelangle:{valType:\"angle\",dflt:0,editType:\"plot\"},labelside:{valType:\"enumerated\",values:[\"top\",\"bottom\"],dflt:\"top\",editType:\"plot\"},labelfont:a({editType:\"plot\"}),tickfont:a({autoShadowDflt:!0,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\"}}},23245:function(t,e,r){\"use strict\";var n=r(77911),i=r(45568),a=r(71293).keyFun,o=r(71293).repeat,s=r(34809).sorterAsc,l=r(34809).strTranslate,c=n.bar.snapRatio;function u(t,e){return t*(1-c)+e*c}var h=n.bar.snapClose;function f(t,e){return t*(1-h)+e*h}function p(t,e,r,n){if(function(t,e){for(var r=0;r<e.length;r++)if(t>=e[r][0]&&t<=e[r][1])return!0;return!1}(r,n))return r;var i=t?-1:1,a=0,o=e.length-1;if(i<0){var s=a;a=o,o=s}for(var l=e[a],c=l,h=a;i*h<i*o;h+=i){var p=h+i,d=e[p];if(i*r<i*f(l,d))return u(l,c);if(i*r<i*d||p===o)return u(d,l);c=l,l=d}}function d(t){t.attr(\"x\",-n.bar.captureWidth/2).attr(\"width\",n.bar.captureWidth)}function m(t){t.attr(\"visibility\",\"visible\").style(\"visibility\",\"visible\").attr(\"fill\",\"yellow\").attr(\"opacity\",0)}function g(t){if(!t.brush.filterSpecified)return\"0,\"+t.height;for(var e,r,n,i=y(t.brush.filter.getConsolidated(),t.height),a=[0],o=i.length?i[0][0]:null,s=0;s<i.length;s++)r=(e=i[s])[1]-e[0],a.push(o),a.push(r),(n=s+1)<i.length&&(o=i[n][0]-e[1]);return a.push(t.height),a}function y(t,e){return t.map((function(t){return t.map((function(t){return Math.max(0,t*e)})).sort(s)}))}function v(){i.select(document.body).style(\"cursor\",null)}function x(t){t.attr(\"stroke-dasharray\",g)}function _(t,e){var r=i.select(t).selectAll(\".highlight, .highlight-shadow\");x(e?r.transition().duration(n.bar.snapDuration).each(\"end\",e):r)}function b(t,e){var r,i=t.brush,a=NaN,o={};if(i.filterSpecified){var s=t.height,l=i.filter.getConsolidated(),c=y(l,s),u=NaN,h=NaN,f=NaN;for(r=0;r<=c.length;r++){var p=c[r];if(p&&p[0]<=e&&e<=p[1]){u=r;break}if(h=r?r-1:NaN,p&&p[0]>e){f=r;break}}if(a=u,isNaN(a)&&(a=isNaN(h)||isNaN(f)?isNaN(h)?f:h:e-c[h][1]<c[f][0]-e?h:f),!isNaN(a)){var d=c[a],m=function(t,e){var r=n.bar.handleHeight;if(!(e>t[1]+r||e<t[0]-r))return e>=.9*t[1]+.1*t[0]?\"n\":e<=.9*t[0]+.1*t[1]?\"s\":\"ns\"}(d,e);m&&(o.interval=l[a],o.intervalPix=d,o.region=m)}}if(t.ordinal&&!o.region){var g=t.unitTickvals,v=t.unitToPaddedPx.invert(e);for(r=0;r<g.length;r++){var x=[.25*g[Math.max(r-1,0)]+.75*g[r],.25*g[Math.min(r+1,g.length-1)]+.75*g[r]];if(v>=x[0]&&v<=x[1]){o.clickableOrdinalRange=x;break}}}return o}function w(t,e){i.event.sourceEvent.stopPropagation();var r=e.height-i.mouse(t)[1]-2*n.verticalPadding,a=e.brush.svgBrush;a.wasDragged=!0,a._dragging=!0,a.grabbingBar?a.newExtent=[r-a.grabPoint,r+a.barLength-a.grabPoint].map(e.unitToPaddedPx.invert):a.newExtent=[a.startExtent,e.unitToPaddedPx.invert(r)].sort(s),e.brush.filterSpecified=!0,a.extent=a.stayingIntervals.concat([a.newExtent]),a.brushCallback(e),_(t.parentNode)}function T(t,e){var r=b(e,e.height-i.mouse(t)[1]-2*n.verticalPadding),a=\"crosshair\";r.clickableOrdinalRange?a=\"pointer\":r.region&&(a=r.region+\"-resize\"),i.select(document.body).style(\"cursor\",a)}function k(t){t.on(\"mousemove\",(function(t){i.event.preventDefault(),t.parent.inBrushDrag||T(this,t)})).on(\"mouseleave\",(function(t){t.parent.inBrushDrag||v()})).call(i.behavior.drag().on(\"dragstart\",(function(t){!function(t,e){i.event.sourceEvent.stopPropagation();var r=e.height-i.mouse(t)[1]-2*n.verticalPadding,a=e.unitToPaddedPx.invert(r),o=e.brush,s=b(e,r),l=s.interval,c=o.svgBrush;if(c.wasDragged=!1,c.grabbingBar=\"ns\"===s.region,c.grabbingBar){var u=l.map(e.unitToPaddedPx);c.grabPoint=r-u[0]-n.verticalPadding,c.barLength=u[1]-u[0]}c.clickableOrdinalRange=s.clickableOrdinalRange,c.stayingIntervals=e.multiselect&&o.filterSpecified?o.filter.getConsolidated():[],l&&(c.stayingIntervals=c.stayingIntervals.filter((function(t){return t[0]!==l[0]&&t[1]!==l[1]}))),c.startExtent=s.region?l[\"s\"===s.region?1:0]:a,e.parent.inBrushDrag=!0,c.brushStartCallback()}(this,t)})).on(\"drag\",(function(t){w(this,t)})).on(\"dragend\",(function(t){!function(t,e){var r=e.brush,n=r.filter,a=r.svgBrush;a._dragging||(T(t,e),w(t,e),e.brush.svgBrush.wasDragged=!1),a._dragging=!1,i.event.sourceEvent.stopPropagation();var o=a.grabbingBar;if(a.grabbingBar=!1,a.grabLocation=void 0,e.parent.inBrushDrag=!1,v(),!a.wasDragged)return a.wasDragged=void 0,a.clickableOrdinalRange?r.filterSpecified&&e.multiselect?a.extent.push(a.clickableOrdinalRange):(a.extent=[a.clickableOrdinalRange],r.filterSpecified=!0):o?(a.extent=a.stayingIntervals,0===a.extent.length&&M(r)):M(r),a.brushCallback(e),_(t.parentNode),void a.brushEndCallback(r.filterSpecified?n.getConsolidated():[]);var s=function(){n.set(n.getConsolidated())};if(e.ordinal){var l=e.unitTickvals;l[l.length-1]<l[0]&&l.reverse(),a.newExtent=[p(0,l,a.newExtent[0],a.stayingIntervals),p(1,l,a.newExtent[1],a.stayingIntervals)];var c=a.newExtent[1]>a.newExtent[0];a.extent=a.stayingIntervals.concat(c?[a.newExtent]:[]),a.extent.length||M(r),a.brushCallback(e),c?_(t.parentNode,s):(s(),_(t.parentNode))}else s();a.brushEndCallback(r.filterSpecified?n.getConsolidated():[])}(this,t)})))}function A(t,e){return t[0]-e[0]}function M(t){t.filterSpecified=!1,t.svgBrush.extent=[[-1/0,1/0]]}function S(t){for(var e,r=t.slice(),n=[],i=r.shift();i;){for(e=i.slice();(i=r.shift())&&i[0]<=e[1];)e[1]=Math.max(e[1],i[1]);n.push(e)}return 1===n.length&&n[0][0]>n[0][1]&&(n=[]),n}t.exports={makeBrush:function(t,e,r,n,i,a){var o,l=function(){var t,e,r=[];return{set:function(n){1===(r=n.map((function(t){return t.slice().sort(s)})).sort(A)).length&&r[0][0]===-1/0&&r[0][1]===1/0&&(r=[[0,-1]]),t=S(r),e=r.reduce((function(t,e){return[Math.min(t[0],e[0]),Math.max(t[1],e[1])]}),[1/0,-1/0])},get:function(){return r.slice()},getConsolidated:function(){return t},getBounds:function(){return e}}}();return l.set(r),{filter:l,filterSpecified:e,svgBrush:{extent:[],brushStartCallback:n,brushCallback:(o=i,function(t){var e=t.brush,r=function(t){return t.svgBrush.extent.map((function(t){return t.slice()}))}(e),n=r.slice();e.filter.set(n),o()}),brushEndCallback:a}}},ensureAxisBrush:function(t,e,r){var i=t.selectAll(\".\"+n.cn.axisBrush).data(o,a);i.enter().append(\"g\").classed(n.cn.axisBrush,!0),function(t,e,r){var i=r._context.staticPlot,a=t.selectAll(\".background\").data(o);a.enter().append(\"rect\").classed(\"background\",!0).call(d).call(m).style(\"pointer-events\",i?\"none\":\"auto\").attr(\"transform\",l(0,n.verticalPadding)),a.call(k).attr(\"height\",(function(t){return t.height-n.verticalPadding}));var s=t.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\",e).attr(\"opacity\",n.bar.strokeOpacity).attr(\"stroke-linecap\",\"butt\"),s.attr(\"y1\",(function(t){return t.height})).call(x);var c=t.selectAll(\".highlight\").data(o);c.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\"),c.attr(\"y1\",(function(t){return t.height})).call(x)}(i,e,r)},cleanRanges:function(t,e){if(Array.isArray(t[0])?(t=t.map((function(t){return t.sort(s)})),t=e.multiselect?S(t.sort(A)):[t[0]]):t=[t.sort(s)],e.tickvals){var r=e.tickvals.slice().sort(s);if(!(t=t.map((function(t){var e=[p(0,r,t[0],[]),p(1,r,t[1],[])];if(e[1]>e[0])return e})).filter((function(t){return t}))).length)return}return t.length>1?t:t[0]}}},79846:function(t,e,r){\"use strict\";t.exports={attributes:r(59549),supplyDefaults:r(12842),calc:r(20113),colorbar:{container:\"line\",min:\"cmin\",max:\"cmax\"},moduleType:\"trace\",name:\"parcoords\",basePlotModule:r(67207),categories:[\"gl\",\"regl\",\"noOpacity\",\"noHover\"],meta:{}}},67207:function(t,e,r){\"use strict\";var n=r(45568),i=r(4173).eV,a=r(58823),o=r(62972);e.name=\"parcoords\",e.plot=function(t){var e=i(t.calcdata,\"parcoords\")[0];e.length&&a(t,e)},e.clean=function(t,e,r,n){var i=n._has&&n._has(\"parcoords\"),a=e._has&&e._has(\"parcoords\");i&&!a&&(n._paperdiv.selectAll(\".parcoords\").remove(),n._glimages.selectAll(\"*\").remove())},e.toSVG=function(t){var e=t._fullLayout._glimages,r=n.select(t).selectAll(\".svg-container\");r.filter((function(t,e){return e===r.size()-1})).selectAll(\".gl-canvas-context, .gl-canvas-focus\").each((function(){var t=this,r=t.toDataURL(\"image/png\");e.append(\"svg:image\").attr({xmlns:o.svg,\"xlink:href\":r,preserveAspectRatio:\"none\",x:0,y:0,width:t.style.width,height:t.style.height})})),window.setTimeout((function(){n.selectAll(\"#filterBarPattern\").attr(\"id\",\"filterBarPattern\")}),60)}},20113:function(t,e,r){\"use strict\";var n=r(34809).isArrayOrTypedArray,i=r(88856),a=r(71293).wrap;t.exports=function(t,e){var r,o;return i.hasColorscale(e,\"line\")&&n(e.line.color)?(r=e.line.color,o=i.extractOpts(e.line).colorscale,i.calc(t,e,{vals:r,containerStr:\"line\",cLetter:\"c\"})):(r=function(t){for(var e=new Array(t),r=0;r<t;r++)e[r]=.5;return e}(e._length),o=[[0,e.line.color],[1,e.line.color]]),a({lineColor:r,cscale:o})}},77911:function(t){\"use strict\";t.exports={maxDimensionCount:60,overdrag:45,verticalPadding:2,tickDistance:50,canvasPixelRatio:1,blockLineCount:5e3,layers:[\"contextLineLayer\",\"focusLineLayer\",\"pickLineLayer\"],axisTitleOffset:28,axisExtentOffset:10,bar:{width:4,captureWidth:10,fillColor:\"magenta\",fillOpacity:1,snapDuration:150,snapRatio:.25,snapClose:.01,strokeOpacity:1,strokeWidth:1,handleHeight:8,handleOpacity:1,handleOverlap:0},cn:{axisExtentText:\"axis-extent-text\",parcoordsLineLayers:\"parcoords-line-layers\",parcoordsLineLayer:\"parcoords-lines\",parcoords:\"parcoords\",parcoordsControlView:\"parcoords-control-view\",yAxis:\"y-axis\",axisOverlays:\"axis-overlays\",axis:\"axis\",axisHeading:\"axis-heading\",axisTitle:\"axis-title\",axisExtent:\"axis-extent\",axisExtentTop:\"axis-extent-top\",axisExtentTopText:\"axis-extent-top-text\",axisExtentBottom:\"axis-extent-bottom\",axisExtentBottomText:\"axis-extent-bottom-text\",axisBrush:\"axis-brush\"},id:{filterBarPattern:\"filter-bar-pattern\"}}},12842:function(t,e,r){\"use strict\";var n=r(34809),i=r(65477).hasColorscale,a=r(39356),o=r(13792).N,s=r(59008),l=r(29714),c=r(59549),u=r(23245),h=r(77911).maxDimensionCount,f=r(63197);function p(t,e,r,i){function a(r,i){return n.coerce(t,e,c.dimensions,r,i)}var o=a(\"values\"),s=a(\"visible\");if(o&&o.length||(s=e.visible=!1),s){a(\"label\"),a(\"tickvals\"),a(\"ticktext\"),a(\"tickformat\");var h=a(\"range\");e._ax={_id:\"y\",type:\"linear\",showexponent:\"all\",exponentformat:\"B\",range:h},l.setConvert(e._ax,i.layout),a(\"multiselect\");var f=a(\"constraintrange\");f&&(e.constraintrange=u.cleanRanges(f,e))}}t.exports=function(t,e,r,l){function u(r,i){return n.coerce(t,e,c,r,i)}var d=t.dimensions;Array.isArray(d)&&d.length>h&&(n.log(\"parcoords traces support up to \"+h+\" dimensions at the moment\"),d.splice(h));var m=s(t,e,{name:\"dimensions\",layout:l,handleItemDefaults:p}),g=function(t,e,r,o,s){var l=s(\"line.color\",r);if(i(t,\"line\")&&n.isArrayOrTypedArray(l)){if(l.length)return s(\"line.colorscale\"),a(t,e,o,s,{prefix:\"line.\",cLetter:\"c\"}),l.length;e.line.color=r}return 1/0}(t,e,r,l,u);o(e,l,u),Array.isArray(m)&&m.length||(e.visible=!1),f(e,m,\"values\",g);var y=n.extendFlat({},l.font,{size:Math.round(l.font.size/1.2)});n.coerceFont(u,\"labelfont\",y),n.coerceFont(u,\"tickfont\",y,{autoShadowDflt:!0}),n.coerceFont(u,\"rangefont\",y),u(\"labelangle\"),u(\"labelside\"),u(\"unselected.line.color\"),u(\"unselected.line.opacity\")}},62935:function(t,e,r){\"use strict\";var n=r(34809).isTypedArray;e.convertTypedArray=function(t){return n(t)?Array.prototype.slice.call(t):t},e.isOrdinal=function(t){return!!t.tickvals},e.isVisible=function(t){return t.visible||!(\"visible\"in t)}},83910:function(t,e,r){\"use strict\";var n=r(79846);n.plot=r(58823),t.exports=n},1293:function(t,e,r){\"use strict\";var n=[\"precision highp float;\",\"\",\"varying vec4 fragColor;\",\"\",\"attribute vec4 p01_04, p05_08, p09_12, p13_16,\",\" p17_20, p21_24, p25_28, p29_32,\",\" p33_36, p37_40, p41_44, p45_48,\",\" p49_52, p53_56, p57_60, colors;\",\"\",\"uniform mat4 dim0A, dim1A, dim0B, dim1B, dim0C, dim1C, dim0D, dim1D,\",\" loA, hiA, loB, hiB, loC, hiC, loD, hiD;\",\"\",\"uniform vec2 resolution, viewBoxPos, viewBoxSize;\",\"uniform float maskHeight;\",\"uniform float drwLayer; // 0: context, 1: focus, 2: pick\",\"uniform vec4 contextColor;\",\"uniform sampler2D maskTexture, palette;\",\"\",\"bool isPick = (drwLayer > 1.5);\",\"bool isContext = (drwLayer < 0.5);\",\"\",\"const vec4 ZEROS = vec4(0.0, 0.0, 0.0, 0.0);\",\"const vec4 UNITS = vec4(1.0, 1.0, 1.0, 1.0);\",\"\",\"float val(mat4 p, mat4 v) {\",\" return dot(matrixCompMult(p, v) * UNITS, UNITS);\",\"}\",\"\",\"float axisY(float ratio, mat4 A, mat4 B, mat4 C, mat4 D) {\",\" float y1 = val(A, dim0A) + val(B, dim0B) + val(C, dim0C) + val(D, dim0D);\",\" float y2 = val(A, dim1A) + val(B, dim1B) + val(C, dim1C) + val(D, dim1D);\",\" return y1 * (1.0 - ratio) + y2 * ratio;\",\"}\",\"\",\"int iMod(int a, int b) {\",\" return a - b * (a / b);\",\"}\",\"\",\"bool fOutside(float p, float lo, float hi) {\",\" return (lo < hi) && (lo > p || p > hi);\",\"}\",\"\",\"bool vOutside(vec4 p, vec4 lo, vec4 hi) {\",\" return (\",\" fOutside(p[0], lo[0], hi[0]) ||\",\" fOutside(p[1], lo[1], hi[1]) ||\",\" fOutside(p[2], lo[2], hi[2]) ||\",\" fOutside(p[3], lo[3], hi[3])\",\" );\",\"}\",\"\",\"bool mOutside(mat4 p, mat4 lo, mat4 hi) {\",\" return (\",\" vOutside(p[0], lo[0], hi[0]) ||\",\" vOutside(p[1], lo[1], hi[1]) ||\",\" vOutside(p[2], lo[2], hi[2]) ||\",\" vOutside(p[3], lo[3], hi[3])\",\" );\",\"}\",\"\",\"bool outsideBoundingBox(mat4 A, mat4 B, mat4 C, mat4 D) {\",\" return mOutside(A, loA, hiA) ||\",\" mOutside(B, loB, hiB) ||\",\" mOutside(C, loC, hiC) ||\",\" mOutside(D, loD, hiD);\",\"}\",\"\",\"bool outsideRasterMask(mat4 A, mat4 B, mat4 C, mat4 D) {\",\" mat4 pnts[4];\",\" pnts[0] = A;\",\" pnts[1] = B;\",\" pnts[2] = C;\",\" pnts[3] = D;\",\"\",\" for(int i = 0; i < 4; ++i) {\",\" for(int j = 0; j < 4; ++j) {\",\" for(int k = 0; k < 4; ++k) {\",\" if(0 == iMod(\",\" int(255.0 * texture2D(maskTexture,\",\" vec2(\",\" (float(i * 2 + j / 2) + 0.5) / 8.0,\",\" (pnts[i][j][k] * (maskHeight - 1.0) + 1.0) / maskHeight\",\" ))[3]\",\" ) / int(pow(2.0, float(iMod(j * 4 + k, 8)))),\",\" 2\",\" )) return true;\",\" }\",\" }\",\" }\",\" return false;\",\"}\",\"\",\"vec4 position(bool isContext, float v, mat4 A, mat4 B, mat4 C, mat4 D) {\",\" float x = 0.5 * sign(v) + 0.5;\",\" float y = axisY(x, A, B, C, D);\",\" float z = 1.0 - abs(v);\",\"\",\" z += isContext ? 0.0 : 2.0 * float(\",\" outsideBoundingBox(A, B, C, D) ||\",\" outsideRasterMask(A, B, C, D)\",\" );\",\"\",\" return vec4(\",\" 2.0 * (vec2(x, y) * viewBoxSize + viewBoxPos) / resolution - 1.0,\",\" z,\",\" 1.0\",\" );\",\"}\",\"\",\"void main() {\",\" mat4 A = mat4(p01_04, p05_08, p09_12, p13_16);\",\" mat4 B = mat4(p17_20, p21_24, p25_28, p29_32);\",\" mat4 C = mat4(p33_36, p37_40, p41_44, p45_48);\",\" mat4 D = mat4(p49_52, p53_56, p57_60, ZEROS);\",\"\",\" float v = colors[3];\",\"\",\" gl_Position = position(isContext, v, A, B, C, D);\",\"\",\" fragColor =\",\" isContext ? vec4(contextColor) :\",\" isPick ? vec4(colors.rgb, 1.0) : texture2D(palette, vec2(abs(v), 0.5));\",\"}\"].join(\"\\n\"),i=[\"precision highp float;\",\"\",\"varying vec4 fragColor;\",\"\",\"void main() {\",\" gl_FragColor = fragColor;\",\"}\"].join(\"\\n\"),a=r(77911).maxDimensionCount,o=r(34809),s=1e-6,l=new Uint8Array(4),c=new Uint8Array(4),u={shape:[256,1],format:\"rgba\",type:\"uint8\",mag:\"nearest\",min:\"nearest\"};function h(t,e,r,n,i){var a=t._gl;a.enable(a.SCISSOR_TEST),a.scissor(e,r,n,i),t.clear({color:[0,0,0,0],depth:1})}function f(t,e,r,n,i,a){var o=a.key;r.drawCompleted||(function(t){t.read({x:0,y:0,width:1,height:1,data:l})}(t),r.drawCompleted=!0),function s(l){var c=Math.min(n,i-l*n);0===l&&(window.cancelAnimationFrame(r.currentRafs[o]),delete r.currentRafs[o],h(t,a.scissorX,a.scissorY,a.scissorWidth,a.viewBoxSize[1])),r.clearOnly||(a.count=2*c,a.offset=2*l*n,e(a),l*n+c<i&&(r.currentRafs[o]=window.requestAnimationFrame((function(){s(l+1)}))),r.drawCompleted=!1)}(0)}function p(t,e){for(var r=new Array(256),n=0;n<256;n++)r[n]=t(n/255).concat(e);return r}function d(t,e){return(t>>>8*e)%256/255}function m(t,e,r){for(var n=new Array(8*e),i=0,a=0;a<e;a++)for(var o=0;o<2;o++)for(var s=0;s<4;s++){var l=4*t+s,c=r[64*a+l];63===l&&0===o&&(c*=-1),n[i++]=c}return n}function g(t){var e=\"0\"+t;return e.substr(e.length-2)}function y(t){return t<a?\"p\"+g(t+1)+\"_\"+g(t+4):\"colors\"}function v(t,e,r,n,i,a,s,l,c,u,h,f,p,d){for(var m=[[],[]],g=0;g<64;g++)m[0][g]=g===i?1:0,m[1][g]=g===a?1:0;s*=d,l*=d,c*=d,u*=d;var y=t.lines.canvasOverdrag*d,v=t.domain,x=t.canvasWidth*d,_=t.canvasHeight*d,b=t.pad.l*d,w=t.pad.b*d,T=t.layoutHeight*d,k=t.layoutWidth*d,A=t.deselectedLines.color,M=t.deselectedLines.opacity;return o.extendFlat({key:h,resolution:[x,_],viewBoxPos:[s+y,l],viewBoxSize:[c,u],i0:i,i1:a,dim0A:m[0].slice(0,16),dim0B:m[0].slice(16,32),dim0C:m[0].slice(32,48),dim0D:m[0].slice(48,64),dim1A:m[1].slice(0,16),dim1B:m[1].slice(16,32),dim1C:m[1].slice(32,48),dim1D:m[1].slice(48,64),drwLayer:f,contextColor:[A[0]/255,A[1]/255,A[2]/255,\"auto\"!==M?A[3]*M:Math.max(1/255,Math.pow(1/t.lines.color.length,1/3))],scissorX:(n===e?0:s+y)+(b-y)+k*v.x[0],scissorWidth:(n===r?x-s+y:c+.5)+(n===e?s+y:0),scissorY:l+w+T*v.y[0],scissorHeight:u,viewportX:b-y+k*v.x[0],viewportY:w+T*v.y[0],viewportWidth:x,viewportHeight:_},p)}function x(t){var e=2047,r=Math.max(0,Math.floor(t[0]*e),0),n=Math.min(e,Math.ceil(t[1]*e),e);return[Math.min(r,n),Math.max(r,n)]}t.exports=function(t,e){var r,l,g,_,b,w=e.context,T=e.pick,k=e.regl,A=k._gl,M=A.getParameter(A.ALIASED_LINE_WIDTH_RANGE),S=Math.max(M[0],Math.min(M[1],e.viewModel.plotGlPixelRatio)),E={currentRafs:{},drawCompleted:!0,clearOnly:!1},C=function(t){for(var e={},r=0;r<=a;r+=4)e[y(r)]=t.buffer({usage:\"dynamic\",type:\"float\",data:new Uint8Array(0)});return e}(k),L=k.texture(u),I=[];z(e);var P=k({profile:!1,blend:{enable:w,func:{srcRGB:\"src alpha\",dstRGB:\"one minus src alpha\",srcAlpha:1,dstAlpha:1},equation:{rgb:\"add\",alpha:\"add\"},color:[0,0,0,0]},depth:{enable:!w,mask:!0,func:\"less\",range:[0,1]},cull:{enable:!0,face:\"back\"},scissor:{enable:!0,box:{x:k.prop(\"scissorX\"),y:k.prop(\"scissorY\"),width:k.prop(\"scissorWidth\"),height:k.prop(\"scissorHeight\")}},viewport:{x:k.prop(\"viewportX\"),y:k.prop(\"viewportY\"),width:k.prop(\"viewportWidth\"),height:k.prop(\"viewportHeight\")},dither:!1,vert:n,frag:i,primitive:\"lines\",lineWidth:S,attributes:C,uniforms:{resolution:k.prop(\"resolution\"),viewBoxPos:k.prop(\"viewBoxPos\"),viewBoxSize:k.prop(\"viewBoxSize\"),dim0A:k.prop(\"dim0A\"),dim1A:k.prop(\"dim1A\"),dim0B:k.prop(\"dim0B\"),dim1B:k.prop(\"dim1B\"),dim0C:k.prop(\"dim0C\"),dim1C:k.prop(\"dim1C\"),dim0D:k.prop(\"dim0D\"),dim1D:k.prop(\"dim1D\"),loA:k.prop(\"loA\"),hiA:k.prop(\"hiA\"),loB:k.prop(\"loB\"),hiB:k.prop(\"hiB\"),loC:k.prop(\"loC\"),hiC:k.prop(\"hiC\"),loD:k.prop(\"loD\"),hiD:k.prop(\"hiD\"),palette:L,contextColor:k.prop(\"contextColor\"),maskTexture:k.prop(\"maskTexture\"),drwLayer:k.prop(\"drwLayer\"),maskHeight:k.prop(\"maskHeight\")},offset:k.prop(\"offset\"),count:k.prop(\"count\")});function z(t){r=t.model,l=t.viewModel,g=l.dimensions.slice(),_=g[0]?g[0].values.length:0;var e=r.lines,n=T?e.color.map((function(t,r){return r/e.color.length})):e.color,i=function(t,e,r){for(var n,i=new Array(t*(a+4)),o=0,l=0;l<t;l++){for(var c=0;c<a;c++)i[o++]=c<e.length?e[c].paddedUnitValues[l]:.5;i[o++]=d(l,2),i[o++]=d(l,1),i[o++]=d(l,0),i[o++]=(n=r[l],Math.max(s,Math.min(.999999,n)))}return i}(_,g,n);!function(t,e,r){for(var n=0;n<=a;n+=4)t[y(n)](m(n/4,e,r))}(C,_,i),w||T||(L=k.texture(o.extendFlat({data:p(r.unitToColor,255)},u)))}return{render:function(t,e,n){var i,a,o,s=t.length,l=1/0,c=-1/0;for(i=0;i<s;i++)t[i].dim0.canvasX<l&&(l=t[i].dim0.canvasX,a=i),t[i].dim1.canvasX>c&&(c=t[i].dim1.canvasX,o=i);0===s&&h(k,0,0,r.canvasWidth,r.canvasHeight);var u=function(t){var e,r,n,i=[[],[]];for(n=0;n<64;n++){var a=!t&&n<g.length?g[n].brush.filter.getBounds():[-1/0,1/0];i[0][n]=a[0],i[1][n]=a[1]}var o=new Array(16384);for(e=0;e<16384;e++)o[e]=255;if(!t)for(e=0;e<g.length;e++){var s=e%8,l=(e-s)/8,c=Math.pow(2,s),u=g[e].brush.filter.get();if(!(u.length<2)){var h=x(u[0])[1];for(r=1;r<u.length;r++){var f=x(u[r]);for(n=h+1;n<f[0];n++)o[8*n+l]&=~c;h=Math.max(h,f[1])}}}var p={shape:[8,2048],format:\"alpha\",type:\"uint8\",mag:\"nearest\",min:\"nearest\",data:o};return b?b(p):b=k.texture(p),{maskTexture:b,maskHeight:2048,loA:i[0].slice(0,16),loB:i[0].slice(16,32),loC:i[0].slice(32,48),loD:i[0].slice(48,64),hiA:i[1].slice(0,16),hiB:i[1].slice(16,32),hiC:i[1].slice(32,48),hiD:i[1].slice(48,64)}}(w);for(i=0;i<s;i++){var p=t[i],d=p.dim0.crossfilterDimensionIndex,m=p.dim1.crossfilterDimensionIndex,y=p.canvasX,A=p.canvasY,M=y+p.panelSizeX,S=p.plotGlPixelRatio;if(e||!I[d]||I[d][0]!==y||I[d][1]!==M){I[d]=[y,M];var C=v(r,a,o,i,d,m,y,A,p.panelSizeX,p.panelSizeY,p.dim0.crossfilterDimensionIndex,w?0:T?2:1,u,S);E.clearOnly=n;var L=e?r.lines.blockLineCount:_;f(k,P,E,L,_,C)}}},readPixel:function(t,e){return k.read({x:t,y:e,width:1,height:1,data:c}),c},readPixels:function(t,e,r,n){var i=new Uint8Array(4*r*n);return k.read({x:t,y:e,width:r,height:n,data:i}),i},destroy:function(){for(var e in t.style[\"pointer-events\"]=\"none\",L.destroy(),b&&b.destroy(),C)C[e].destroy()},update:z}}},63197:function(t){\"use strict\";t.exports=function(t,e,r,n){var i,a;for(n||(n=1/0),i=0;i<e.length;i++)(a=e[i]).visible&&(n=Math.min(n,a[r].length));for(n===1/0&&(n=0),t._length=n,i=0;i<e.length;i++)(a=e[i]).visible&&(a._length=n);return n}},16019:function(t,e,r){\"use strict\";var n=r(45568),i=r(34809),a=i.isArrayOrTypedArray,o=i.numberFormat,s=r(16401),l=r(29714),c=i.strRotate,u=i.strTranslate,h=r(30635),f=r(62203),p=r(88856),d=r(71293),m=d.keyFun,g=d.repeat,y=d.unwrap,v=r(62935),x=r(77911),_=r(23245),b=r(1293);function w(t,e,r){return i.aggNums(t,null,e,r)}function T(t,e){return A(w(Math.min,t,e),w(Math.max,t,e))}function k(t){var e=t.range;return e?A(e[0],e[1]):T(t.values,t._length)}function A(t,e){return!isNaN(t)&&isFinite(t)||(t=0),!isNaN(e)&&isFinite(e)||(e=0),t===e&&(0===t?(t-=1,e+=1):(t*=.9,e*=1.1)),[t,e]}function M(t,e,r,i,a){var s,l,c=k(r);return i?n.scale.ordinal().domain(i.map((s=o(r.tickformat),l=a,l?function(t,e){var r=l[e];return null==r?s(t):r}:s))).range(i.map((function(r){var n=(r-c[0])/(c[1]-c[0]);return t-e+n*(2*e-t)}))):n.scale.linear().domain(c).range([t-e,e])}function S(t){if(t.tickvals){var e=k(t);return n.scale.ordinal().domain(t.tickvals).range(t.tickvals.map((function(t){return(t-e[0])/(e[1]-e[0])})))}}function E(t){var e=t.map((function(t){return t[0]})),r=t.map((function(t){var e=s(t[1]);return n.rgb(\"rgb(\"+e[0]+\",\"+e[1]+\",\"+e[2]+\")\")})),i=\"rgb\".split(\"\").map((function(t){return n.scale.linear().clamp(!0).domain(e).range(r.map((i=t,function(t){return t[i]})));var i}));return function(t){return i.map((function(e){return e(t)}))}}function C(t){return t.dimensions.some((function(t){return t.brush.filterSpecified}))}function L(t,e,r){var a=y(e),o=a.trace,l=v.convertTypedArray(a.lineColor),c=o.line,u={color:s(o.unselected.line.color),opacity:o.unselected.line.opacity},h=p.extractOpts(c),f=h.reversescale?p.flipScale(a.cscale):a.cscale,d=o.domain,m=o.dimensions,g=t.width,_=o.labelangle,b=o.labelside,w=o.labelfont,T=o.tickfont,A=o.rangefont,M=i.extendDeepNoArrays({},c,{color:l.map(n.scale.linear().domain(k({values:l,range:[h.min,h.max],_length:o._length}))),blockLineCount:x.blockLineCount,canvasOverdrag:x.overdrag*x.canvasPixelRatio}),S=Math.floor(g*(d.x[1]-d.x[0])),C=Math.floor(t.height*(d.y[1]-d.y[0])),L=t.margin||{l:80,r:80,t:100,b:80},I=S,P=C;return{key:r,colCount:m.filter(v.isVisible).length,dimensions:m,tickDistance:x.tickDistance,unitToColor:E(f),lines:M,deselectedLines:u,labelAngle:_,labelSide:b,labelFont:w,tickFont:T,rangeFont:A,layoutWidth:g,layoutHeight:t.height,domain:d,translateX:d.x[0]*g,translateY:t.height-d.y[1]*t.height,pad:L,canvasWidth:I*x.canvasPixelRatio+2*M.canvasOverdrag,canvasHeight:P*x.canvasPixelRatio,width:I,height:P,canvasPixelRatio:x.canvasPixelRatio}}function I(t,e,r){var s=r.width,l=r.height,c=r.dimensions,u=r.canvasPixelRatio,h=function(t){return s*t/Math.max(1,r.colCount-1)},f=x.verticalPadding/l,p=function(t,e){return n.scale.linear().range([e,t-e])}(l,x.verticalPadding),d={key:r.key,xScale:h,model:r,inBrushDrag:!1},m={};return d.dimensions=c.filter(v.isVisible).map((function(s,c){var g=function(t,e){return n.scale.linear().domain(k(t)).range([e,1-e])}(s,f),y=m[s.label];m[s.label]=(y||0)+1;var b=s.label+(y?\"__\"+y:\"\"),w=s.constraintrange,T=w&&w.length;T&&!a(w[0])&&(w=[w]);var A=T?w.map((function(t){return t.map(g)})):[[-1/0,1/0]],E=s.values;E.length>s._length&&(E=E.slice(0,s._length));var L,I=s.tickvals;function P(t,e){return{val:t,text:L[e]}}function z(t,e){return t.val-e.val}if(a(I)&&I.length){i.isTypedArray(I)&&(I=Array.from(I)),L=s.ticktext,a(L)&&L.length?L.length>I.length?L=L.slice(0,I.length):I.length>L.length&&(I=I.slice(0,L.length)):L=I.map(o(s.tickformat));for(var O=1;O<I.length;O++)if(I[O]<I[O-1]){for(var D=I.map(P).sort(z),R=0;R<I.length;R++)I[R]=D[R].val,L[R]=D[R].text;break}}else I=void 0;return E=v.convertTypedArray(E),{key:b,label:s.label,tickFormat:s.tickformat,tickvals:I,ticktext:L,ordinal:v.isOrdinal(s),multiselect:s.multiselect,xIndex:c,crossfilterDimensionIndex:c,visibleIndex:s._index,height:l,values:E,paddedUnitValues:E.map(g),unitTickvals:I&&I.map(g),xScale:h,x:h(c),canvasX:h(c)*u,unitToPaddedPx:p,domainScale:M(l,x.verticalPadding,s,I,L),ordinalScale:S(s),parent:d,model:r,brush:_.makeBrush(t,T,A,(function(){t.linePickActive(!1)}),(function(){var e=d;e.focusLayer&&e.focusLayer.render(e.panels,!0);var r=C(e);!t.contextShown()&&r?(e.contextLayer&&e.contextLayer.render(e.panels,!0),t.contextShown(!0)):t.contextShown()&&!r&&(e.contextLayer&&e.contextLayer.render(e.panels,!0,!0),t.contextShown(!1))}),(function(r){if(d.focusLayer.render(d.panels,!0),d.pickLayer&&d.pickLayer.render(d.panels,!0),t.linePickActive(!0),e&&e.filterChanged){var n=g.invert,a=r.map((function(t){return t.map(n).sort(i.sorterAsc)})).sort((function(t,e){return t[0]-e[0]}));e.filterChanged(d.key,s._index,a)}}))}})),d}function P(t){t.classed(x.cn.axisExtentText,!0).attr(\"text-anchor\",\"middle\").style(\"cursor\",\"default\")}function z(t,e){var r=\"top\"===e?1:-1,n=t*Math.PI/180;return{dir:r,dx:Math.sin(n),dy:Math.cos(n),degrees:t}}function O(t,e,r){for(var n=e.panels||(e.panels=[]),i=t.data(),a=0;a<i.length-1;a++){var o=n[a]||(n[a]={}),s=i[a],l=i[a+1];o.dim0=s,o.dim1=l,o.canvasX=s.canvasX,o.panelSizeX=l.canvasX-s.canvasX,o.panelSizeY=e.model.canvasHeight,o.y=0,o.canvasY=0,o.plotGlPixelRatio=r}}function D(t,e){return l.tickText(t._ax,e,!1).text}function R(t,e){if(t.ordinal)return\"\";var r=t.domainScale.domain(),n=r[e?r.length-1:0];return D(t.model.dimensions[t.visibleIndex],n)}t.exports=function(t,e,r,a){var o=t._context.staticPlot,s=t._fullLayout,p=s._toppaper,d=s._glcontainer,w=t._context.plotGlPixelRatio,k=t._fullLayout.paper_bgcolor;!function(t){for(var e=0;e<t.length;e++)for(var r=0;r<t[e].length;r++)for(var n=t[e][r].trace,i=n.dimensions,a=0;a<i.length;a++){var o=i[a].values,s=i[a]._ax;s&&(s.range?s.range=A(s.range[0],s.range[1]):s.range=T(o,n._length),s.dtick||(s.dtick=.01*(Math.abs(s.range[1]-s.range[0])||1)),s.tickformat=i[a].tickformat,l.calcTicks(s),s.cleanRange())}}(e);var M,S,E=(M=!0,S=!1,{linePickActive:function(t){return arguments.length?M=!!t:M},contextShown:function(t){return arguments.length?S=!!t:S}}),F=e.filter((function(t){return y(t).trace.visible})).map(L.bind(0,r)).map(I.bind(0,E,a));d.each((function(t,e){return i.extendFlat(t,F[e])}));var B=d.selectAll(\".gl-canvas\").each((function(t){t.viewModel=F[0],t.viewModel.plotGlPixelRatio=w,t.viewModel.paperColor=k,t.model=t.viewModel?t.viewModel.model:null})),N=null;B.filter((function(t){return t.pick})).style(\"pointer-events\",o?\"none\":\"auto\").on(\"mousemove\",(function(t){if(E.linePickActive()&&t.lineLayer&&a&&a.hover){var e=n.event,r=this.width,i=this.height,o=n.mouse(this),s=o[0],l=o[1];if(s<0||l<0||s>=r||l>=i)return;var c=t.lineLayer.readPixel(s,i-1-l),u=0!==c[3],h=u?c[2]+256*(c[1]+256*c[0]):null,f={x:s,y:l,clientX:e.clientX,clientY:e.clientY,dataIndex:t.model.key,curveNumber:h};h!==N&&(u?a.hover(f):a.unhover&&a.unhover(f),N=h)}})),B.style(\"opacity\",(function(t){return t.pick?0:1})),p.style(\"background\",\"rgba(255, 255, 255, 0)\");var j=p.selectAll(\".\"+x.cn.parcoords).data(F,m);j.exit().remove(),j.enter().append(\"g\").classed(x.cn.parcoords,!0).style(\"shape-rendering\",\"crispEdges\").style(\"pointer-events\",\"none\"),j.attr(\"transform\",(function(t){return u(t.model.translateX,t.model.translateY)}));var U=j.selectAll(\".\"+x.cn.parcoordsControlView).data(g,m);U.enter().append(\"g\").classed(x.cn.parcoordsControlView,!0),U.attr(\"transform\",(function(t){return u(t.model.pad.l,t.model.pad.t)}));var V=U.selectAll(\".\"+x.cn.yAxis).data((function(t){return t.dimensions}),m);V.enter().append(\"g\").classed(x.cn.yAxis,!0),U.each((function(t){O(V,t,w)})),B.each((function(t){if(t.viewModel){!t.lineLayer||a?t.lineLayer=b(this,t):t.lineLayer.update(t),(t.key||0===t.key)&&(t.viewModel[t.key]=t.lineLayer);var e=!t.context||a;t.lineLayer.render(t.viewModel.panels,e)}})),V.attr(\"transform\",(function(t){return u(t.xScale(t.xIndex),0)})),V.call(n.behavior.drag().origin((function(t){return t})).on(\"drag\",(function(t){var e=t.parent;E.linePickActive(!1),t.x=Math.max(-x.overdrag,Math.min(t.model.width+x.overdrag,n.event.x)),t.canvasX=t.x*t.model.canvasPixelRatio,V.sort((function(t,e){return t.x-e.x})).each((function(e,r){e.xIndex=r,e.x=t===e?e.x:e.xScale(e.xIndex),e.canvasX=e.x*e.model.canvasPixelRatio})),O(V,e,w),V.filter((function(e){return 0!==Math.abs(t.xIndex-e.xIndex)})).attr(\"transform\",(function(t){return u(t.xScale(t.xIndex),0)})),n.select(this).attr(\"transform\",u(t.x,0)),V.each((function(r,n,i){i===t.parent.key&&(e.dimensions[n]=r)})),e.contextLayer&&e.contextLayer.render(e.panels,!1,!C(e)),e.focusLayer.render&&e.focusLayer.render(e.panels)})).on(\"dragend\",(function(t){var e=t.parent;t.x=t.xScale(t.xIndex),t.canvasX=t.x*t.model.canvasPixelRatio,O(V,e,w),n.select(this).attr(\"transform\",(function(t){return u(t.x,0)})),e.contextLayer&&e.contextLayer.render(e.panels,!1,!C(e)),e.focusLayer&&e.focusLayer.render(e.panels),e.pickLayer&&e.pickLayer.render(e.panels,!0),E.linePickActive(!0),a&&a.axesMoved&&a.axesMoved(e.key,e.dimensions.map((function(t){return t.crossfilterDimensionIndex})))}))),V.exit().remove();var q=V.selectAll(\".\"+x.cn.axisOverlays).data(g,m);q.enter().append(\"g\").classed(x.cn.axisOverlays,!0),q.selectAll(\".\"+x.cn.axis).remove();var H=q.selectAll(\".\"+x.cn.axis).data(g,m);H.enter().append(\"g\").classed(x.cn.axis,!0),H.each((function(t){var e=t.model.height/t.model.tickDistance,r=t.domainScale,i=r.domain();n.select(this).call(n.svg.axis().orient(\"left\").tickSize(4).outerTickSize(2).ticks(e,t.tickFormat).tickValues(t.ordinal?i:null).tickFormat((function(e){return v.isOrdinal(t)?e:D(t.model.dimensions[t.visibleIndex],e)})).scale(r)),f.font(H.selectAll(\"text\"),t.model.tickFont)})),H.selectAll(\".domain, .tick>line\").attr(\"fill\",\"none\").attr(\"stroke\",\"black\").attr(\"stroke-opacity\",.25).attr(\"stroke-width\",\"1px\"),H.selectAll(\"text\").style(\"cursor\",\"default\");var G=q.selectAll(\".\"+x.cn.axisHeading).data(g,m);G.enter().append(\"g\").classed(x.cn.axisHeading,!0);var Z=G.selectAll(\".\"+x.cn.axisTitle).data(g,m);Z.enter().append(\"text\").classed(x.cn.axisTitle,!0).attr(\"text-anchor\",\"middle\").style(\"cursor\",\"ew-resize\").style(\"pointer-events\",o?\"none\":\"auto\"),Z.text((function(t){return t.label})).each((function(e){var r=n.select(this);f.font(r,e.model.labelFont),h.convertToTspans(r,t)})).attr(\"transform\",(function(t){var e=z(t.model.labelAngle,t.model.labelSide),r=x.axisTitleOffset;return(e.dir>0?\"\":u(0,2*r+t.model.height))+c(e.degrees)+u(-r*e.dx,-r*e.dy)})).attr(\"text-anchor\",(function(t){var e=z(t.model.labelAngle,t.model.labelSide);return 2*Math.abs(e.dx)>Math.abs(e.dy)?e.dir*e.dx<0?\"start\":\"end\":\"middle\"}));var W=q.selectAll(\".\"+x.cn.axisExtent).data(g,m);W.enter().append(\"g\").classed(x.cn.axisExtent,!0);var Y=W.selectAll(\".\"+x.cn.axisExtentTop).data(g,m);Y.enter().append(\"g\").classed(x.cn.axisExtentTop,!0),Y.attr(\"transform\",u(0,-x.axisExtentOffset));var X=Y.selectAll(\".\"+x.cn.axisExtentTopText).data(g,m);X.enter().append(\"text\").classed(x.cn.axisExtentTopText,!0).call(P),X.text((function(t){return R(t,!0)})).each((function(t){f.font(n.select(this),t.model.rangeFont)}));var $=W.selectAll(\".\"+x.cn.axisExtentBottom).data(g,m);$.enter().append(\"g\").classed(x.cn.axisExtentBottom,!0),$.attr(\"transform\",(function(t){return u(0,t.model.height+x.axisExtentOffset)}));var J=$.selectAll(\".\"+x.cn.axisExtentBottomText).data(g,m);J.enter().append(\"text\").classed(x.cn.axisExtentBottomText,!0).attr(\"dy\",\"0.75em\").call(P),J.text((function(t){return R(t,!1)})).each((function(t){f.font(n.select(this),t.model.rangeFont)})),_.ensureAxisBrush(q,k,t)}},58823:function(t,e,r){\"use strict\";var n=r(16019),i=r(22459),a=r(62935).isVisible,o={};function s(t,e,r){var n=e.indexOf(r),i=t.indexOf(n);return-1===i&&(i+=e.length),i}(t.exports=function(t,e){var r=t._fullLayout;if(i(t,[],o)){var l={},c={},u={},h={},f=r._size;e.forEach((function(e,r){var n=e[0].trace;u[r]=n.index;var i=h[r]=n._fullInput.index;l[r]=t.data[i].dimensions,c[r]=t.data[i].dimensions.slice()})),n(t,e,{width:f.w,height:f.h,margin:{t:f.t,r:f.r,b:f.b,l:f.l}},{filterChanged:function(e,n,i){var a=c[e][n],o=i.map((function(t){return t.slice()})),s=\"dimensions[\"+n+\"].constraintrange\",l=r._tracePreGUI[t._fullData[u[e]]._fullInput.uid];if(void 0===l[s]){var f=a.constraintrange;l[s]=f||null}var p=t._fullData[u[e]].dimensions[n];o.length?(1===o.length&&(o=o[0]),a.constraintrange=o,p.constraintrange=o.slice(),o=[o]):(delete a.constraintrange,delete p.constraintrange,o=null);var d={};d[s]=o,t.emit(\"plotly_restyle\",[d,[h[e]]])},hover:function(e){t.emit(\"plotly_hover\",e)},unhover:function(e){t.emit(\"plotly_unhover\",e)},axesMoved:function(e,r){var n=function(t,e){return function(r,n){return s(t,e,r)-s(t,e,n)}}(r,c[e].filter(a));l[e].sort(n),c[e].filter((function(t){return!a(t)})).sort((function(t){return c[e].indexOf(t)})).forEach((function(t){l[e].splice(l[e].indexOf(t),1),l[e].splice(c[e].indexOf(t),0,t)})),t.emit(\"plotly_restyle\",[{dimensions:[l[e]]},[h[e]]])}})}}).reglPrecompiled=o},55412:function(t,e,r){\"use strict\";var n=r(9829),i=r(13792).u,a=r(80337),o=r(10229),s=r(3208).rb,l=r(3208).ay,c=r(93049).extendFlat,u=r(94850).k,h=a({editType:\"plot\",arrayOk:!0,colorEditType:\"plot\"});t.exports={labels:{valType:\"data_array\",editType:\"calc\"},label0:{valType:\"number\",dflt:0,editType:\"calc\"},dlabel:{valType:\"number\",dflt:1,editType:\"calc\"},values:{valType:\"data_array\",editType:\"calc\"},marker:{colors:{valType:\"data_array\",editType:\"calc\"},line:{color:{valType:\"color\",dflt:o.defaultLine,arrayOk:!0,editType:\"style\"},width:{valType:\"number\",min:0,dflt:0,arrayOk:!0,editType:\"style\"},editType:\"calc\"},pattern:u,editType:\"calc\"},text:{valType:\"data_array\",editType:\"plot\"},hovertext:{valType:\"string\",dflt:\"\",arrayOk:!0,editType:\"style\"},scalegroup:{valType:\"string\",dflt:\"\",editType:\"calc\"},textinfo:{valType:\"flaglist\",flags:[\"label\",\"text\",\"value\",\"percent\"],extras:[\"none\"],editType:\"calc\"},hoverinfo:c({},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:c({},h,{}),insidetextorientation:{valType:\"enumerated\",values:[\"horizontal\",\"radial\",\"tangential\",\"auto\"],dflt:\"auto\",editType:\"plot\"},insidetextfont:c({},h,{}),outsidetextfont:c({},h,{}),automargin:{valType:\"boolean\",dflt:!1,editType:\"plot\"},title:{text:{valType:\"string\",dflt:\"\",editType:\"plot\"},font:c({},h,{}),position:{valType:\"enumerated\",values:[\"top left\",\"top center\",\"top right\",\"middle center\",\"bottom left\",\"bottom center\",\"bottom right\"],editType:\"plot\"},editType:\"plot\"},domain:i({name:\"pie\",trace:!0,editType:\"calc\"}),hole:{valType:\"number\",min:0,max:1,dflt:0,editType:\"calc\"},sort:{valType:\"boolean\",dflt:!0,editType:\"calc\"},direction:{valType:\"enumerated\",values:[\"clockwise\",\"counterclockwise\"],dflt:\"counterclockwise\",editType:\"calc\"},rotation:{valType:\"angle\",dflt:0,editType:\"calc\"},pull:{valType:\"number\",min:0,max:1,dflt:0,arrayOk:!0,editType:\"calc\"},_deprecated:{title:{valType:\"string\",dflt:\"\",editType:\"calc\"},titlefont:c({},h,{}),titleposition:{valType:\"enumerated\",values:[\"top left\",\"top center\",\"top right\",\"middle center\",\"bottom left\",\"bottom center\",\"bottom right\"],editType:\"calc\"}}}},96052:function(t,e,r){\"use strict\";var n=r(44122);e.name=\"pie\",e.plot=function(t,r,i,a){n.plotBasePlot(e.name,t,r,i,a)},e.clean=function(t,r,i,a){n.cleanBasePlot(e.name,t,r,i,a)}},44148:function(t,e,r){\"use strict\";var n=r(10721),i=r(65657),a=r(78766),o={};function s(t){return function(e,r){return!!e&&!!(e=i(e)).isValid()&&(e=a.addOpacity(e,e.getAlpha()),t[r]||(t[r]=e),e)}}function l(t,e){var r,n=JSON.stringify(t),a=e[n];if(!a){for(a=t.slice(),r=0;r<t.length;r++)a.push(i(t[r]).lighten(20).toHexString());for(r=0;r<t.length;r++)a.push(i(t[r]).darken(20).toHexString());e[n]=a}return a}t.exports={calc:function(t,e){var r,i,a=[],o=t._fullLayout,l=o.hiddenlabels||[],c=e.labels,u=e.marker.colors||[],h=e.values,f=e._length,p=e._hasValues&&f;if(e.dlabel)for(c=new Array(f),r=0;r<f;r++)c[r]=String(e.label0+r*e.dlabel);var d={},m=s(o[\"_\"+e.type+\"colormap\"]),g=0,y=!1;for(r=0;r<f;r++){var v,x,_;if(p){if(v=h[r],!n(v))continue;v=+v}else v=1;void 0!==(x=c[r])&&\"\"!==x||(x=r);var b=d[x=String(x)];void 0===b?(d[x]=a.length,(_=-1!==l.indexOf(x))||(g+=v),a.push({v:v,label:x,color:m(u[r],x),i:r,pts:[r],hidden:_})):(y=!0,(i=a[b]).v+=v,i.pts.push(r),i.hidden||(g+=v),!1===i.color&&u[r]&&(i.color=m(u[r],x)))}return a=a.filter((function(t){return t.v>=0})),(\"funnelarea\"===e.type?y:e.sort)&&a.sort((function(t,e){return e.v-t.v})),a[0]&&(a[0].vTotal=g),a},crossTraceCalc:function(t,e){var r=(e||{}).type;r||(r=\"pie\");var n=t._fullLayout,i=t.calcdata,a=n[r+\"colorway\"],s=n[\"_\"+r+\"colormap\"];n[\"extend\"+r+\"colors\"]&&(a=l(a,o));for(var c=0,u=0;u<i.length;u++){var h=i[u];if(h[0].trace.type===r)for(var f=0;f<h.length;f++){var p=h[f];!1===p.color&&(s[p.label]?p.color=s[p.label]:(s[p.label]=p.color=a[c%a.length],c++))}}},makePullColorFn:s,generateExtendedColors:l}},46979:function(t,e,r){\"use strict\";var n=r(10721),i=r(34809),a=r(55412),o=r(13792).N,s=r(17550).handleText,l=r(34809).coercePattern;function c(t,e){var r=i.isArrayOrTypedArray(t),a=i.isArrayOrTypedArray(e),o=Math.min(r?t.length:1/0,a?e.length:1/0);if(isFinite(o)||(o=0),o&&a){for(var s,l=0;l<o;l++){var c=e[l];if(n(c)&&c>0){s=!0;break}}s||(o=0)}return{hasLabels:r,hasValues:a,len:o}}function u(t,e,r,n,i){n(\"marker.line.width\")&&n(\"marker.line.color\",i?void 0:r.paper_bgcolor);var a=n(\"marker.colors\");l(n,\"marker.pattern\",a),t.marker&&!e.marker.pattern.fgcolor&&(e.marker.pattern.fgcolor=t.marker.colors),e.marker.pattern.bgcolor||(e.marker.pattern.bgcolor=r.paper_bgcolor)}t.exports={handleLabelsAndValues:c,handleMarkerDefaults:u,supplyDefaults:function(t,e,r,n){function l(r,n){return i.coerce(t,e,a,r,n)}var h=c(l(\"labels\"),l(\"values\")),f=h.len;if(e._hasLabels=h.hasLabels,e._hasValues=h.hasValues,!e._hasLabels&&e._hasValues&&(l(\"label0\"),l(\"dlabel\")),f){e._length=f,u(t,e,n,l,!0),l(\"scalegroup\");var p,d=l(\"text\"),m=l(\"texttemplate\");if(m||(p=l(\"textinfo\",i.isArrayOrTypedArray(d)?\"text+percent\":\"percent\")),l(\"hovertext\"),l(\"hovertemplate\"),m||p&&\"none\"!==p){var g=l(\"textposition\");s(t,e,n,l,g,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),(Array.isArray(g)||\"auto\"===g||\"outside\"===g)&&l(\"automargin\"),(\"inside\"===g||\"auto\"===g||Array.isArray(g))&&l(\"insidetextorientation\")}else\"none\"===p&&l(\"textposition\",\"none\");o(e,n,l);var y=l(\"hole\");if(l(\"title.text\")){var v=l(\"title.position\",y?\"middle center\":\"top center\");y||\"middle center\"!==v||(e.title.position=\"top center\"),i.coerceFont(l,\"title.font\",n.font)}l(\"sort\"),l(\"direction\"),l(\"rotation\"),l(\"pull\")}else e.visible=!1}}},50568:function(t,e,r){\"use strict\";var n=r(36040).appendArrayMultiPointValues;t.exports=function(t,e){var r={curveNumber:e.index,pointNumbers:t.pts,data:e._input,fullData:e,label:t.label,color:t.color,value:t.v,percent:t.percent,text:t.text,bbox:t.bbox,v:t.v};return 1===t.pts.length&&(r.pointNumber=r.i=t.pts[0]),n(r,e,t.pts),\"funnelarea\"===e.type&&(delete r.v,delete r.i),r}},75067:function(t,e,r){\"use strict\";var n=r(62203),i=r(78766);t.exports=function(t,e,r,a){var o=r.marker.pattern;o&&o.shape?n.pointStyle(t,r,a,e):i.fill(t,e.color)}},37252:function(t,e,r){\"use strict\";var n=r(34809);function i(t){return-1!==t.indexOf(\"e\")?t.replace(/[.]?0+e/,\"e\"):-1!==t.indexOf(\".\")?t.replace(/[.]?0+$/,\"\"):t}e.formatPiePercent=function(t,e){var r=i((100*t).toPrecision(3));return n.numSeparate(r,e)+\"%\"},e.formatPieValue=function(t,e){var r=i(t.toPrecision(10));return n.numSeparate(r,e)},e.getFirstFilled=function(t,e){if(n.isArrayOrTypedArray(t))for(var r=0;r<e.length;r++){var i=t[e[r]];if(i||0===i||\"\"===i)return i}},e.castOption=function(t,r){return n.isArrayOrTypedArray(t)?e.getFirstFilled(t,r):t||void 0},e.getRotationAngle=function(t){return(\"auto\"===t?0:t)*Math.PI/180}},49913:function(t,e,r){\"use strict\";t.exports={attributes:r(55412),supplyDefaults:r(46979).supplyDefaults,supplyLayoutDefaults:r(13464),layoutAttributes:r(4031),calc:r(44148).calc,crossTraceCalc:r(44148).crossTraceCalc,plot:r(35734).plot,style:r(140),styleOne:r(32891),moduleType:\"trace\",name:\"pie\",basePlotModule:r(96052),categories:[\"pie-like\",\"pie\",\"showLegend\"],meta:{}}},4031:function(t){\"use strict\";t.exports={hiddenlabels:{valType:\"data_array\",editType:\"calc\"},piecolorway:{valType:\"colorlist\",editType:\"calc\"},extendpiecolors:{valType:\"boolean\",dflt:!0,editType:\"calc\"}}},13464:function(t,e,r){\"use strict\";var n=r(34809),i=r(4031);t.exports=function(t,e){function r(r,a){return n.coerce(t,e,i,r,a)}r(\"hiddenlabels\"),r(\"piecolorway\",e.colorway),r(\"extendpiecolors\")}},35734:function(t,e,r){\"use strict\";var n=r(45568),i=r(44122),a=r(32141),o=r(78766),s=r(62203),l=r(34809),c=l.strScale,u=l.strTranslate,h=r(30635),f=r(84102),p=f.recordMinTextSize,d=f.clearMinTextSize,m=r(56155).TEXTPAD,g=r(37252),y=r(50568),v=r(34809).isValidTextValue;function x(t,e,r){var i=r[0],o=i.cx,s=i.cy,c=i.trace,u=\"funnelarea\"===c.type;\"_hasHoverLabel\"in c||(c._hasHoverLabel=!1),\"_hasHoverEvent\"in c||(c._hasHoverEvent=!1),t.on(\"mouseover\",(function(t){var r=e._fullLayout,h=e._fullData[c.index];if(!e._dragging&&!1!==r.hovermode){var f=h.hoverinfo;if(Array.isArray(f)&&(f=a.castHoverinfo({hoverinfo:[g.castOption(f,t.pts)],_module:c._module},r,0)),\"all\"===f&&(f=\"label+text+value+percent+name\"),h.hovertemplate||\"none\"!==f&&\"skip\"!==f&&f){var p=t.rInscribed||0,d=o+t.pxmid[0]*(1-p),m=s+t.pxmid[1]*(1-p),v=r.separators,x=[];if(f&&-1!==f.indexOf(\"label\")&&x.push(t.label),t.text=g.castOption(h.hovertext||h.text,t.pts),f&&-1!==f.indexOf(\"text\")){var _=t.text;l.isValidTextValue(_)&&x.push(_)}t.value=t.v,t.valueLabel=g.formatPieValue(t.v,v),f&&-1!==f.indexOf(\"value\")&&x.push(t.valueLabel),t.percent=t.v/i.vTotal,t.percentLabel=g.formatPiePercent(t.percent,v),f&&-1!==f.indexOf(\"percent\")&&x.push(t.percentLabel);var b=h.hoverlabel,w=b.font,T=[];a.loneHover({trace:c,x0:d-p*i.r,x1:d+p*i.r,y:m,_x0:u?o+t.TL[0]:d-p*i.r,_x1:u?o+t.TR[0]:d+p*i.r,_y0:u?s+t.TL[1]:m-p*i.r,_y1:u?s+t.BL[1]:m+p*i.r,text:x.join(\"<br>\"),name:h.hovertemplate||-1!==f.indexOf(\"name\")?h.name:void 0,idealAlign:t.pxmid[0]<0?\"left\":\"right\",color:g.castOption(b.bgcolor,t.pts)||t.color,borderColor:g.castOption(b.bordercolor,t.pts),fontFamily:g.castOption(w.family,t.pts),fontSize:g.castOption(w.size,t.pts),fontColor:g.castOption(w.color,t.pts),nameLength:g.castOption(b.namelength,t.pts),textAlign:g.castOption(b.align,t.pts),hovertemplate:g.castOption(h.hovertemplate,t.pts),hovertemplateLabels:t,eventData:[y(t,h)]},{container:r._hoverlayer.node(),outerContainer:r._paper.node(),gd:e,inOut_bbox:T}),t.bbox=T[0],c._hasHoverLabel=!0}c._hasHoverEvent=!0,e.emit(\"plotly_hover\",{points:[y(t,h)],event:n.event})}})),t.on(\"mouseout\",(function(t){var r=e._fullLayout,i=e._fullData[c.index],o=n.select(this).datum();c._hasHoverEvent&&(t.originalEvent=n.event,e.emit(\"plotly_unhover\",{points:[y(o,i)],event:n.event}),c._hasHoverEvent=!1),c._hasHoverLabel&&(a.loneUnhover(r._hoverlayer.node()),c._hasHoverLabel=!1)})),t.on(\"click\",(function(t){var r=e._fullLayout,i=e._fullData[c.index];e._dragging||!1===r.hovermode||(e._hoverdata=[y(t,i)],a.click(e,n.event))}))}function _(t,e,r){var n=g.castOption(t.insidetextfont.color,e.pts);!n&&t._input.textfont&&(n=g.castOption(t._input.textfont.color,e.pts));var i=g.castOption(t.insidetextfont.family,e.pts)||g.castOption(t.textfont.family,e.pts)||r.family,a=g.castOption(t.insidetextfont.size,e.pts)||g.castOption(t.textfont.size,e.pts)||r.size,s=g.castOption(t.insidetextfont.weight,e.pts)||g.castOption(t.textfont.weight,e.pts)||r.weight,l=g.castOption(t.insidetextfont.style,e.pts)||g.castOption(t.textfont.style,e.pts)||r.style,c=g.castOption(t.insidetextfont.variant,e.pts)||g.castOption(t.textfont.variant,e.pts)||r.variant,u=g.castOption(t.insidetextfont.textcase,e.pts)||g.castOption(t.textfont.textcase,e.pts)||r.textcase,h=g.castOption(t.insidetextfont.lineposition,e.pts)||g.castOption(t.textfont.lineposition,e.pts)||r.lineposition,f=g.castOption(t.insidetextfont.shadow,e.pts)||g.castOption(t.textfont.shadow,e.pts)||r.shadow;return{color:n||o.contrast(e.color),family:i,size:a,weight:s,style:l,variant:c,textcase:u,lineposition:h,shadow:f}}function b(t,e){for(var r,n,i=0;i<t.length;i++)if((n=(r=t[i][0]).trace).title.text){var a=n.title.text;n._meta&&(a=l.templateString(a,n._meta));var o=s.tester.append(\"text\").attr(\"data-notex\",1).text(a).call(s.font,n.title.font).call(h.convertToTspans,e),c=s.bBox(o.node(),!0);r.titleBox={width:c.width,height:c.height},o.remove()}}function w(t,e,r){var n=r.r||e.rpx1,i=e.rInscribed;if(e.startangle===e.stopangle)return{rCenter:1-i,scale:0,rotate:0,textPosAngle:0};var a,o=e.ring,s=1===o&&Math.abs(e.startangle-e.stopangle)===2*Math.PI,l=e.halfangle,c=e.midangle,u=r.trace.insidetextorientation,h=\"horizontal\"===u,f=\"tangential\"===u,p=\"radial\"===u,d=\"auto\"===u,m=[];if(!d){var g,y=function(r,i){if(function(t,e){var r=t.startangle,n=t.stopangle;return r>e&&e>n||r<e&&e<n}(e,r)){var s=Math.abs(r-e.startangle),l=Math.abs(r-e.stopangle),c=s<l?s:l;(a=\"tan\"===i?k(t,n,o,c,0):T(t,n,o,c,Math.PI/2)).textPosAngle=r,m.push(a)}};if(h||f){for(g=4;g>=-4;g-=2)y(Math.PI*g,\"tan\");for(g=4;g>=-4;g-=2)y(Math.PI*(g+1),\"tan\")}if(h||p){for(g=4;g>=-4;g-=2)y(Math.PI*(g+1.5),\"rad\");for(g=4;g>=-4;g-=2)y(Math.PI*(g+.5),\"rad\")}}if(s||d||h){var v=Math.sqrt(t.width*t.width+t.height*t.height);if((a={scale:i*n*2/v,rCenter:1-i,rotate:0}).textPosAngle=(e.startangle+e.stopangle)/2,a.scale>=1)return a;m.push(a)}(d||p)&&((a=T(t,n,o,l,c)).textPosAngle=(e.startangle+e.stopangle)/2,m.push(a)),(d||f)&&((a=k(t,n,o,l,c)).textPosAngle=(e.startangle+e.stopangle)/2,m.push(a));for(var x=0,_=0,b=0;b<m.length;b++){var w=m[b].scale;if(_<w&&(_=w,x=b),!d&&_>=1)break}return m[x]}function T(t,e,r,n,i){e=Math.max(0,e-2*m);var a=t.width/t.height,o=S(a,n,e,r);return{scale:2*o/t.height,rCenter:A(a,o/e),rotate:M(i)}}function k(t,e,r,n,i){e=Math.max(0,e-2*m);var a=t.height/t.width,o=S(a,n,e,r);return{scale:2*o/t.width,rCenter:A(a,o/e),rotate:M(i+Math.PI/2)}}function A(t,e){return Math.cos(e)-t*e}function M(t){return(180/Math.PI*t+720)%180-90}function S(t,e,r,n){var i=t+1/(2*Math.tan(e));return r*Math.min(1/(Math.sqrt(i*i+.5)+i),n/(Math.sqrt(t*t+n/2)+t))}function E(t,e){return t.v!==e.vTotal||e.trace.hole?Math.min(1/(1+1/Math.sin(t.halfangle)),t.ring/2):1}function C(t,e){var r=e.pxmid[0],n=e.pxmid[1],i=t.width/2,a=t.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(t,e){var r,n,i,a=t.trace,o={x:t.cx,y:t.cy},s={tx:0,ty:0};s.ty+=a.title.font.size,i=P(a),-1!==a.title.position.indexOf(\"top\")?(o.y-=(1+i)*t.r,s.ty-=t.titleBox.height):-1!==a.title.position.indexOf(\"bottom\")&&(o.y+=(1+i)*t.r);var l,c=t.r/(void 0===(l=t.trace.aspectratio)?1:l),u=e.w*(a.domain.x[1]-a.domain.x[0])/2;return-1!==a.title.position.indexOf(\"left\")?(u+=c,o.x-=(1+i)*c,s.tx+=t.titleBox.width/2):-1!==a.title.position.indexOf(\"center\")?u*=2:-1!==a.title.position.indexOf(\"right\")&&(u+=c,o.x+=(1+i)*c,s.tx-=t.titleBox.width/2),r=u/t.titleBox.width,n=I(t,e)/t.titleBox.height,{x:o.x,y:o.y,scale:Math.min(r,n),tx:s.tx,ty:s.ty}}function I(t,e){var r=t.trace,n=e.h*(r.domain.y[1]-r.domain.y[0]);return Math.min(t.titleBox.height,n/2)}function P(t){var e,r=t.pull;if(!r)return 0;if(l.isArrayOrTypedArray(r))for(r=0,e=0;e<t.pull.length;e++)t.pull[e]>r&&(r=t.pull[e]);return r}function z(t,e){for(var r=[],n=0;n<t.length;n++){var i=t[n][0],a=i.trace,o=a.domain,s=e.w*(o.x[1]-o.x[0]),l=e.h*(o.y[1]-o.y[0]);a.title.text&&\"middle center\"!==a.title.position&&(l-=I(i,e));var c=s/2,u=l/2;\"funnelarea\"!==a.type||a.scalegroup||(u/=a.aspectratio),i.r=Math.min(c,u)/(1+P(a)),i.cx=e.l+e.w*(a.domain.x[1]+a.domain.x[0])/2,i.cy=e.t+e.h*(1-a.domain.y[0])-l/2,a.title.text&&-1!==a.title.position.indexOf(\"bottom\")&&(i.cy-=I(i,e)),a.scalegroup&&-1===r.indexOf(a.scalegroup)&&r.push(a.scalegroup)}!function(t,e){for(var r,n,i,a=0;a<e.length;a++){var o=1/0,s=e[a];for(n=0;n<t.length;n++)if((i=(r=t[n][0]).trace).scalegroup===s){var l;if(\"pie\"===i.type)l=r.r*r.r;else if(\"funnelarea\"===i.type){var c,u;i.aspectratio>1?u=(c=r.r)/i.aspectratio:c=(u=r.r)*i.aspectratio,l=(c*=(1+i.baseratio)/2)*u}o=Math.min(o,l/r.vTotal)}for(n=0;n<t.length;n++)if((i=(r=t[n][0]).trace).scalegroup===s){var h=o*r.vTotal;\"funnelarea\"===i.type&&(h/=(1+i.baseratio)/2,h/=i.aspectratio),r.r=Math.sqrt(h)}}}(t,r)}function O(t,e){return[t*Math.sin(e),-t*Math.cos(e)]}function D(t,e,r){var n=t._fullLayout,i=r.trace,a=i.texttemplate,o=i.textinfo;if(!a&&o&&\"none\"!==o){var s,c=o.split(\"+\"),u=function(t){return-1!==c.indexOf(t)},h=u(\"label\"),f=u(\"text\"),p=u(\"value\"),d=u(\"percent\"),m=n.separators;if(s=h?[e.label]:[],f){var y=g.getFirstFilled(i.text,e.pts);v(y)&&s.push(y)}p&&s.push(g.formatPieValue(e.v,m)),d&&s.push(g.formatPiePercent(e.v/r.vTotal,m)),e.text=s.join(\"<br>\")}if(a){var x=l.castOption(i,e.i,\"texttemplate\");if(x){var _=function(t){return{label:t.label,value:t.v,valueLabel:g.formatPieValue(t.v,n.separators),percent:t.v/r.vTotal,percentLabel:g.formatPiePercent(t.v/r.vTotal,n.separators),color:t.color,text:t.text,customdata:l.castOption(i,t.i,\"customdata\")}}(e),b=g.getFirstFilled(i.text,e.pts);(v(b)||\"\"===b)&&(_.text=b),e.text=l.texttemplateString(x,_,t._fullLayout._d3locale,_,i._meta||{})}else e.text=\"\"}}function R(t,e){var r=t.rotate*Math.PI/180,n=Math.cos(r),i=Math.sin(r),a=(e.left+e.right)/2,o=(e.top+e.bottom)/2;t.textX=a*n-o*i,t.textY=a*i+o*n,t.noCenter=!0}t.exports={plot:function(t,e){var r=t._context.staticPlot,a=t._fullLayout,f=a._size;d(\"pie\",a),b(e,t),z(e,f);var m=l.makeTraceGroups(a._pielayer,e,\"trace\").each((function(e){var d=n.select(this),m=e[0],y=m.trace;!function(t){var e,r,n,i=t[0],a=i.r,o=i.trace,s=g.getRotationAngle(o.rotation),l=2*Math.PI/i.vTotal,c=\"px0\",u=\"px1\";if(\"counterclockwise\"===o.direction){for(e=0;e<t.length&&t[e].hidden;e++);if(e===t.length)return;s+=l*t[e].v,l*=-1,c=\"px1\",u=\"px0\"}for(n=O(a,s),e=0;e<t.length;e++)(r=t[e]).hidden||(r[c]=n,r.startangle=s,s+=l*r.v/2,r.pxmid=O(a,s),r.midangle=s,n=O(a,s+=l*r.v/2),r.stopangle=s,r[u]=n,r.largeArc=r.v>i.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))}(e),d.attr(\"stroke-linejoin\",\"round\"),d.each((function(){var v=n.select(this).selectAll(\"g.slice\").data(e);v.enter().append(\"g\").classed(\"slice\",!0),v.exit().remove();var b=[[[],[]],[[],[]]],T=!1;v.each((function(i,o){if(i.hidden)n.select(this).selectAll(\"path,g\").remove();else{i.pointNumber=i.i,i.curveNumber=y.index,b[i.pxmid[1]<0?0:1][i.pxmid[0]<0?0:1].push(i);var c=m.cx,u=m.cy,f=n.select(this),d=f.selectAll(\"path.surface\").data([i]);if(d.enter().append(\"path\").classed(\"surface\",!0).style({\"pointer-events\":r?\"none\":\"all\"}),f.call(x,t,e),y.pull){var v=+g.castOption(y.pull,i.pts)||0;v>0&&(c+=v*i.pxmid[0],u+=v*i.pxmid[1])}i.cxFinal=c,i.cyFinal=u;var k=y.hole;if(i.v===m.vTotal){var A=\"M\"+(c+i.px0[0])+\",\"+(u+i.px0[1])+I(i.px0,i.pxmid,!0,1)+I(i.pxmid,i.px0,!0,1)+\"Z\";k?d.attr(\"d\",\"M\"+(c+k*i.px0[0])+\",\"+(u+k*i.px0[1])+I(i.px0,i.pxmid,!1,k)+I(i.pxmid,i.px0,!1,k)+\"Z\"+A):d.attr(\"d\",A)}else{var M=I(i.px0,i.px1,!0,1);if(k){var S=1-k;d.attr(\"d\",\"M\"+(c+k*i.px1[0])+\",\"+(u+k*i.px1[1])+I(i.px1,i.px0,!1,k)+\"l\"+S*i.px0[0]+\",\"+S*i.px0[1]+M+\"Z\")}else d.attr(\"d\",\"M\"+c+\",\"+u+\"l\"+i.px0[0]+\",\"+i.px0[1]+M+\"Z\")}D(t,i,m);var E=g.castOption(y.textposition,i.pts),L=f.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(t){t.attr(\"data-notex\",1)})),f=l.ensureUniformFontSize(t,\"outside\"===E?function(t,e,r){return{color:g.castOption(t.outsidetextfont.color,e.pts)||g.castOption(t.textfont.color,e.pts)||r.color,family:g.castOption(t.outsidetextfont.family,e.pts)||g.castOption(t.textfont.family,e.pts)||r.family,size:g.castOption(t.outsidetextfont.size,e.pts)||g.castOption(t.textfont.size,e.pts)||r.size,weight:g.castOption(t.outsidetextfont.weight,e.pts)||g.castOption(t.textfont.weight,e.pts)||r.weight,style:g.castOption(t.outsidetextfont.style,e.pts)||g.castOption(t.textfont.style,e.pts)||r.style,variant:g.castOption(t.outsidetextfont.variant,e.pts)||g.castOption(t.textfont.variant,e.pts)||r.variant,textcase:g.castOption(t.outsidetextfont.textcase,e.pts)||g.castOption(t.textfont.textcase,e.pts)||r.textcase,lineposition:g.castOption(t.outsidetextfont.lineposition,e.pts)||g.castOption(t.textfont.lineposition,e.pts)||r.lineposition,shadow:g.castOption(t.outsidetextfont.shadow,e.pts)||g.castOption(t.textfont.shadow,e.pts)||r.shadow}}(y,i,a.font):_(y,i,a.font));r.text(i.text).attr({class:\"slicetext\",transform:\"\",\"text-anchor\":\"middle\"}).call(s.font,f).call(h.convertToTspans,t);var d,v=s.bBox(r.node());if(\"outside\"===E)d=C(v,i);else if(d=w(v,i,m),\"auto\"===E&&d.scale<1){var x=l.ensureUniformFontSize(t,y.outsidetextfont);r.call(s.font,x),d=C(v=s.bBox(r.node()),i)}var b=d.textPosAngle,k=void 0===b?i.pxmid:O(m.r,b);if(d.targetX=c+k[0]*d.rCenter+(d.x||0),d.targetY=u+k[1]*d.rCenter+(d.y||0),R(d,v),d.outside){var A=d.targetY;i.yLabelMin=A-v.height/2,i.yLabelMid=A,i.yLabelMax=A+v.height/2,i.labelExtraX=0,i.labelExtraY=0,T=!0}d.fontSize=f.size,p(y.type,d,a),e[o].transform=d,l.setTransormAndDisplay(r,d)}))}function I(t,e,r,n){var a=n*(e[0]-t[0]),o=n*(e[1]-t[1]);return\"a\"+n*m.r+\",\"+n*m.r+\" 0 \"+i.largeArc+(r?\" 1 \":\" 0 \")+a+\",\"+o}}));var k=n.select(this).selectAll(\"g.titletext\").data(y.title.text?[0]:[]);if(k.enter().append(\"g\").classed(\"titletext\",!0),k.exit().remove(),k.each((function(){var e,r=l.ensureSingle(n.select(this),\"text\",\"\",(function(t){t.attr(\"data-notex\",1)})),i=y.title.text;y._meta&&(i=l.templateString(i,y._meta)),r.text(i).attr({class:\"titletext\",transform:\"\",\"text-anchor\":\"middle\"}).call(s.font,y.title.font).call(h.convertToTspans,t),e=\"middle center\"===y.title.position?function(t){var e=Math.sqrt(t.titleBox.width*t.titleBox.width+t.titleBox.height*t.titleBox.height);return{x:t.cx,y:t.cy,scale:t.trace.hole*t.r*2/e,tx:0,ty:-t.titleBox.height/2+t.trace.title.font.size}}(m):L(m,f),r.attr(\"transform\",u(e.x,e.y)+c(Math.min(1,e.scale))+u(e.tx,e.ty))})),T&&function(t,e){var r,n,i,a,o,s,c,u,h,f,p,d,m;function y(t,e){return t.pxmid[1]-e.pxmid[1]}function v(t,e){return e.pxmid[1]-t.pxmid[1]}function x(t,r){r||(r={});var i,u,h,p,d=r.labelExtraY+(n?r.yLabelMax:r.yLabelMin),m=n?t.yLabelMin:t.yLabelMax,y=n?t.yLabelMax:t.yLabelMin,v=t.cyFinal+o(t.px0[1],t.px1[1]),x=d-m;if(x*c>0&&(t.labelExtraY=x),l.isArrayOrTypedArray(e.pull))for(u=0;u<f.length;u++)(h=f[u])===t||(g.castOption(e.pull,t.pts)||0)>=(g.castOption(e.pull,h.pts)||0)||((t.pxmid[1]-h.pxmid[1])*c>0?(x=h.cyFinal+o(h.px0[1],h.px1[1])-m-t.labelExtraY)*c>0&&(t.labelExtraY+=x):(y+t.labelExtraY-v)*c>0&&(i=3*s*Math.abs(u-f.indexOf(t)),(p=h.cxFinal+a(h.px0[0],h.px1[0])+i-(t.cxFinal+t.pxmid[0])-t.labelExtraX)*s>0&&(t.labelExtraX+=p)))}for(n=0;n<2;n++)for(i=n?y:v,o=n?Math.max:Math.min,c=n?1:-1,r=0;r<2;r++){for(a=r?Math.max:Math.min,s=r?1:-1,(u=t[n][r]).sort(i),h=t[1-n][r],f=h.concat(u),d=[],p=0;p<u.length;p++)void 0!==u[p].yLabelMid&&d.push(u[p]);for(m=!1,p=0;n&&p<h.length;p++)if(void 0!==h[p].yLabelMid){m=h[p];break}for(p=0;p<d.length;p++){var _=p&&d[p-1];m&&!p&&(_=m),x(d[p],_)}}}(b,y),function(t,e){t.each((function(t){var r=n.select(this);if(t.labelExtraX||t.labelExtraY){var i=r.select(\"g.slicetext text\");t.transform.targetX+=t.labelExtraX,t.transform.targetY+=t.labelExtraY,l.setTransormAndDisplay(i,t.transform);var a=t.cxFinal+t.pxmid[0],s=\"M\"+a+\",\"+(t.cyFinal+t.pxmid[1]),c=(t.yLabelMax-t.yLabelMin)*(t.pxmid[0]<0?-1:1)/4;if(t.labelExtraX){var u=t.labelExtraX*t.pxmid[1]/t.pxmid[0],h=t.yLabelMid+t.labelExtraY-(t.cyFinal+t.pxmid[1]);Math.abs(u)>Math.abs(h)?s+=\"l\"+h*t.pxmid[0]/t.pxmid[1]+\",\"+h+\"H\"+(a+t.labelExtraX+c):s+=\"l\"+t.labelExtraX+\",\"+u+\"v\"+(h-u)+\"h\"+c}else s+=\"V\"+(t.yLabelMid+t.labelExtraY)+\"h\"+c;l.ensureSingle(r,\"path\",\"textline\").call(o.stroke,e.outsidetextfont.color).attr({\"stroke-width\":Math.min(2,e.outsidetextfont.size/8),d:s,fill:\"none\"})}else r.select(\"path.textline\").remove()}))}(v,y),T&&y.automargin){var A=s.bBox(d.node()),M=y.domain,S=f.w*(M.x[1]-M.x[0]),E=f.h*(M.y[1]-M.y[0]),I=(.5*S-m.r)/f.w,P=(.5*E-m.r)/f.h;i.autoMargin(t,\"pie.\"+y.uid+\".automargin\",{xl:M.x[0]-I,xr:M.x[1]+I,yb:M.y[0]-P,yt:M.y[1]+P,l:Math.max(m.cx-m.r-A.left,0),r:Math.max(A.right-(m.cx+m.r),0),b:Math.max(A.bottom-(m.cy+m.r),0),t:Math.max(m.cy-m.r-A.top,0),pad:5})}}))}));setTimeout((function(){m.selectAll(\"tspan\").each((function(){var t=n.select(this);t.attr(\"dy\")&&t.attr(\"dy\",t.attr(\"dy\"))}))}),0)},formatSliceLabel:D,transformInsideText:w,determineInsideTextFont:_,positionTitleOutside:L,prerenderTitles:b,layoutAreas:z,attachFxHandlers:x,computeTransform:R}},140:function(t,e,r){\"use strict\";var n=r(45568),i=r(32891),a=r(84102).resizeText;t.exports=function(t){var e=t._fullLayout._pielayer.selectAll(\".trace\");a(t,e,\"pie\"),e.each((function(e){var r=e[0].trace,a=n.select(this);a.style({opacity:r.opacity}),a.selectAll(\"path.surface\").each((function(e){n.select(this).call(i,e,r,t)}))}))}},32891:function(t,e,r){\"use strict\";var n=r(78766),i=r(37252).castOption,a=r(75067);t.exports=function(t,e,r,o){var s=r.marker.line,l=i(s.color,e.pts)||n.defaultLine,c=i(s.width,e.pts)||0;t.call(a,e,r,o).style(\"stroke-width\",c).call(n.stroke,l)}},36961:function(t,e,r){\"use strict\";var n=r(36640);t.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}},71593:function(t,e,r){\"use strict\";var n=r(99098).gl_pointcloud2d,i=r(34809).isArrayOrTypedArray,a=r(55010),o=r(32919).findExtremes,s=r(11539);function l(t,e){this.scene=t,this.uid=e,this.type=\"pointcloud\",this.pickXData=[],this.pickYData=[],this.xData=[],this.yData=[],this.textLabels=[],this.color=\"rgb(0, 0, 0)\",this.name=\"\",this.hoverinfo=\"all\",this.idToIndex=new Int32Array(0),this.bounds=[0,0,0,0],this.pointcloudOptions={positions:new Float32Array(0),idToIndex:this.idToIndex,sizemin:.5,sizemax:12,color:[0,0,0,1],areaRatio:1,borderColor:[0,0,0,1]},this.pointcloud=n(t.glplot,this.pointcloudOptions),this.pointcloud._trace=this}var c=l.prototype;c.handlePick=function(t){var e=this.idToIndex[t.pointId];return{trace:this,dataCoord:t.dataCoord,traceCoord:this.pickXYData?[this.pickXYData[2*e],this.pickXYData[2*e+1]]:[this.pickXData[e],this.pickYData[e]],textLabel:i(this.textLabels)?this.textLabels[e]:this.textLabels,color:this.color,name:this.name,pointIndex:e,hoverinfo:this.hoverinfo}},c.update=function(t){this.index=t.index,this.textLabels=t.text,this.name=t.name,this.hoverinfo=t.hoverinfo,this.bounds=[1/0,1/0,-1/0,-1/0],this.updateFast(t),this.color=s(t,{})},c.updateFast=function(t){var e,r,n,i,s,l,c=this.xData=this.pickXData=t.x,u=this.yData=this.pickYData=t.y,h=this.pickXYData=t.xy,f=t.xbounds&&t.ybounds,p=t.indices,d=this.bounds;if(h){if(n=h,e=h.length>>>1,f)d[0]=t.xbounds[0],d[2]=t.xbounds[1],d[1]=t.ybounds[0],d[3]=t.ybounds[1];else for(l=0;l<e;l++)i=n[2*l],s=n[2*l+1],i<d[0]&&(d[0]=i),i>d[2]&&(d[2]=i),s<d[1]&&(d[1]=s),s>d[3]&&(d[3]=s);if(p)r=p;else for(r=new Int32Array(e),l=0;l<e;l++)r[l]=l}else for(e=c.length,n=new Float32Array(2*e),r=new Int32Array(e),l=0;l<e;l++)i=c[l],s=u[l],r[l]=l,n[2*l]=i,n[2*l+1]=s,i<d[0]&&(d[0]=i),i>d[2]&&(d[2]=i),s<d[1]&&(d[1]=s),s>d[3]&&(d[3]=s);this.idToIndex=r,this.pointcloudOptions.idToIndex=r,this.pointcloudOptions.positions=n;var m=a(t.marker.color),g=a(t.marker.border.color),y=t.opacity*t.marker.opacity;m[3]*=y,this.pointcloudOptions.color=m;var v=t.marker.blend;null===v&&(v=c.length<100||u.length<100),this.pointcloudOptions.blend=v,g[3]*=y,this.pointcloudOptions.borderColor=g;var x=t.marker.sizemin,_=Math.max(t.marker.sizemax,t.marker.sizemin);this.pointcloudOptions.sizeMin=x,this.pointcloudOptions.sizeMax=_,this.pointcloudOptions.areaRatio=t.marker.border.arearatio,this.pointcloud.update(this.pointcloudOptions);var b=this.scene.xaxis,w=this.scene.yaxis,T=_/2||.5;t._extremes[b._id]=o(b,[d[0],d[2]],{ppad:T}),t._extremes[w._id]=o(w,[d[1],d[3]],{ppad:T})},c.dispose=function(){this.pointcloud.dispose()},t.exports=function(t,e){var r=new l(t,e.uid);return r.update(e),r}},75526:function(t,e,r){\"use strict\";var n=r(34809),i=r(36961);t.exports=function(t,e,r){function a(r,a){return n.coerce(t,e,i,r,a)}a(\"x\"),a(\"y\"),a(\"xbounds\"),a(\"ybounds\"),t.xy&&t.xy instanceof Float32Array&&(e.xy=t.xy),t.indices&&t.indices instanceof Int32Array&&(e.indices=t.indices),a(\"text\"),a(\"marker.color\",r),a(\"marker.opacity\"),a(\"marker.blend\"),a(\"marker.sizemin\"),a(\"marker.sizemax\"),a(\"marker.border.color\",r),a(\"marker.border.arearatio\"),e._length=null}},15186:function(t,e,r){\"use strict\";[\"*pointcloud* trace is deprecated!\",\"Please consider switching to the *scattergl* trace type.\"].join(\" \"),t.exports={attributes:r(36961),supplyDefaults:r(75526),calc:r(37593),plot:r(71593),moduleType:\"trace\",name:\"pointcloud\",basePlotModule:r(24585),categories:[\"gl\",\"gl2d\",\"showLegend\"],meta:{}}},33795:function(t,e,r){\"use strict\";var n=r(80337),i=r(9829),a=r(10229),o=r(70192),s=r(13792).u,l=r(3208).rb,c=r(87163),u=r(78032).templatedArray,h=r(80712).descriptionOnlyNumbers,f=r(93049).extendFlat,p=r(13582).overrideAll;(t.exports=p({hoverinfo:f({},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:h(\"value\")},valuesuffix:{valType:\"string\",dflt:\"\"},arrangement:{valType:\"enumerated\",values:[\"snap\",\"perpendicular\",\"freeform\",\"fixed\"],dflt:\"snap\"},textfont:n({autoShadowDflt:!0}),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\"]}),align:{valType:\"enumerated\",values:[\"justify\",\"left\",\"right\",\"center\"],dflt:\"justify\"}},link:{arrowlen:{valType:\"number\",min:0,dflt:0},label:{valType:\"data_array\",dflt:[]},color:{valType:\"color\",arrayOk:!0},hovercolor:{valType:\"color\",arrayOk:!0},customdata:{valType:\"data_array\",editType:\"calc\"},line:{color:{valType:\"color\",dflt:a.defaultLine,arrayOk:!0},width:{valType:\"number\",min:0,dflt:0,arrayOk:!0}},source:{valType:\"data_array\",dflt:[]},target:{valType:\"data_array\",dflt:[]},value:{valType:\"data_array\",dflt:[]},hoverinfo:{valType:\"enumerated\",values:[\"all\",\"none\",\"skip\"],dflt:\"all\"},hoverlabel:o.hoverlabel,hovertemplate:l({},{keys:[\"value\",\"label\"]}),colorscales:u(\"concentrationscales\",{editType:\"calc\",label:{valType:\"string\",editType:\"calc\",dflt:\"\"},cmax:{valType:\"number\",editType:\"calc\",dflt:1},cmin:{valType:\"number\",editType:\"calc\",dflt:0},colorscale:f(c().colorscale,{dflt:[[0,\"white\"],[1,\"black\"]]})})}},\"calc\",\"nested\")).transforms=void 0},42229:function(t,e,r){\"use strict\";var n=r(13582).overrideAll,i=r(4173).eV,a=r(16506),o=r(6811),s=r(27983),l=r(14751),c=r(44844).prepSelect,u=r(34809),h=r(33626),f=\"sankey\";function p(t,e){var r=t._fullData[e],n=t._fullLayout,i=n.dragmode,a=\"pan\"===n.dragmode?\"move\":\"crosshair\",o=r._bgRect;if(o&&\"pan\"!==i&&\"zoom\"!==i){s(o,a);var f={_id:\"x\",c2p:u.identity,_offset:r._sankey.translateX,_length:r._sankey.width},p={_id:\"y\",c2p:u.identity,_offset:r._sankey.translateY,_length:r._sankey.height},d={gd:t,element:o.node(),plotinfo:{id:e,xaxis:f,yaxis:p,fillRangeItems:u.noop},subplot:e,xaxes:[f],yaxes:[p],doneFnCompleted:function(r){var n,i=t._fullData[e],a=i.node.groups.slice(),o=[];function s(t){for(var e=i._sankey.graph.nodes,r=0;r<e.length;r++)if(e[r].pointNumber===t)return e[r]}for(var l=0;l<r.length;l++){var c=s(r[l].pointNumber);if(c)if(c.group){for(var u=0;u<c.childrenNodes.length;u++)o.push(c.childrenNodes[u].pointNumber);a[c.pointNumber-i.node._count]=!1}else o.push(c.pointNumber)}n=a.filter(Boolean).concat([o]),h.call(\"_guiRestyle\",t,{\"node.groups\":[n]},e)},prepFn:function(t,e,r){c(t,e,r,d,i)}};l.init(d)}}e.name=f,e.baseLayoutAttrOverrides=n({hoverlabel:o.hoverlabel},\"plot\",\"nested\"),e.plot=function(t){var r=i(t.calcdata,f)[0];a(t,r),e.updateFx(t)},e.clean=function(t,e,r,n){var i=n._has&&n._has(f),a=e._has&&e._has(f);i&&!a&&(n._paperdiv.selectAll(\".sankey\").remove(),n._paperdiv.selectAll(\".bgsankey\").remove())},e.updateFx=function(t){for(var e=0;e<t._fullData.length;e++)p(t,e)}},22915:function(t,e,r){\"use strict\";var n=r(26381),i=r(34809),a=r(71293).wrap,o=i.isArrayOrTypedArray,s=i.isIndex,l=r(88856);t.exports=function(t,e){var r=function(t){var e,r=t.node,a=t.link,c=[],u=o(a.color),h=o(a.hovercolor),f=o(a.customdata),p={},d={},m=a.colorscales.length;for(e=0;e<m;e++){var g=a.colorscales[e],y=l.extractScale(g,{cLetter:\"c\"}),v=l.makeColorScaleFunc(y);d[g.label]=v}var x=0;for(e=0;e<a.value.length;e++)a.source[e]>x&&(x=a.source[e]),a.target[e]>x&&(x=a.target[e]);var _,b=x+1;t.node._count=b;var w=t.node.groups,T={};for(e=0;e<w.length;e++){var k=w[e];for(_=0;_<k.length;_++){var A=k[_],M=b+e;T.hasOwnProperty(A)?i.warn(\"Node \"+A+\" is already part of a group.\"):T[A]=M}}var S={source:[],target:[]};for(e=0;e<a.value.length;e++){var E=a.value[e],C=a.source[e],L=a.target[e];if(E>0&&s(C,b)&&s(L,b)&&(!T.hasOwnProperty(C)||!T.hasOwnProperty(L)||T[C]!==T[L])){T.hasOwnProperty(L)&&(L=T[L]),T.hasOwnProperty(C)&&(C=T[C]),L=+L,p[C=+C]=p[L]=!0;var I=\"\";a.label&&a.label[e]&&(I=a.label[e]);var P=null;I&&d.hasOwnProperty(I)&&(P=d[I]),c.push({pointNumber:e,label:I,color:u?a.color[e]:a.color,hovercolor:h?a.hovercolor[e]:a.hovercolor,customdata:f?a.customdata[e]:a.customdata,concentrationscale:P,source:C,target:L,value:+E}),S.source.push(C),S.target.push(L)}}var z=b+w.length,O=o(r.color),D=o(r.customdata),R=[];for(e=0;e<z;e++)if(p[e]){var F=r.label[e];R.push({group:e>b-1,childrenNodes:[],pointNumber:e,label:F,color:O?r.color[e]:r.color,customdata:D?r.customdata[e]:r.customdata})}var B=!1;return function(t,e,r){for(var a=i.init2dArray(t,0),o=0;o<Math.min(e.length,r.length);o++)if(i.isIndex(e[o],t)&&i.isIndex(r[o],t)){if(e[o]===r[o])return!0;a[e[o]].push(r[o])}return n(a).components.some((function(t){return t.length>1}))}(z,S.source,S.target)&&(B=!0),{circular:B,links:c,nodes:R,groups:w,groupLookup:T}}(e);return a({circular:r.circular,_nodes:r.nodes,_links:r.links,_groups:r.groups,_groupLookup:r.groupLookup})}},21541:function(t){\"use strict\";t.exports={nodeTextOffsetHorizontal:4,nodeTextOffsetVertical:3,nodePadAcross:10,sankeyIterations:50,forceIterations:5,forceTicksPerFrame:10,duration:500,ease:\"linear\",cn:{sankey:\"sankey\",sankeyLinks:\"sankey-links\",sankeyLink:\"sankey-link\",sankeyNodeSet:\"sankey-node-set\",sankeyNode:\"sankey-node\",nodeRect:\"node-rect\",nodeLabel:\"node-label\"}}},67940:function(t,e,r){\"use strict\";var n=r(34809),i=r(33795),a=r(78766),o=r(65657),s=r(13792).N,l=r(26430),c=r(78032),u=r(59008);function h(t,e){function r(r,a){return n.coerce(t,e,i.link.colorscales,r,a)}r(\"label\"),r(\"cmin\"),r(\"cmax\"),r(\"colorscale\")}t.exports=function(t,e,r,f){function p(r,a){return n.coerce(t,e,i,r,a)}var d=n.extendDeep(f.hoverlabel,t.hoverlabel),m=t.node,g=c.newContainer(e,\"node\");function y(t,e){return n.coerce(m,g,i.node,t,e)}y(\"label\"),y(\"groups\"),y(\"x\"),y(\"y\"),y(\"pad\"),y(\"thickness\"),y(\"line.color\"),y(\"line.width\"),y(\"hoverinfo\",t.hoverinfo),l(m,g,y,d),y(\"hovertemplate\"),y(\"align\");var v=f.colorway;y(\"color\",g.label.map((function(t,e){return a.addOpacity(function(t){return v[t%v.length]}(e),.8)}))),y(\"customdata\");var x=t.link||{},_=c.newContainer(e,\"link\");function b(t,e){return n.coerce(x,_,i.link,t,e)}b(\"label\"),b(\"arrowlen\"),b(\"source\"),b(\"target\"),b(\"value\"),b(\"line.color\"),b(\"line.width\"),b(\"hoverinfo\",t.hoverinfo),l(x,_,b,d),b(\"hovertemplate\");var w,T=o(f.paper_bgcolor).getLuminance()<.333,k=b(\"color\",T?\"rgba(255, 255, 255, 0.6)\":\"rgba(0, 0, 0, 0.2)\");function A(t){var e=o(t);if(!e.isValid())return t;var r=e.getAlpha();return r<=.8?e.setAlpha(r+.2):e=T?e.brighten():e.darken(),e.toRgbString()}b(\"hovercolor\",Array.isArray(k)?k.map(A):A(k)),b(\"customdata\"),u(x,_,{name:\"colorscales\",handleItemDefaults:h}),s(e,f,p),p(\"orientation\"),p(\"valueformat\"),p(\"valuesuffix\"),g.x.length&&g.y.length&&(w=\"freeform\"),p(\"arrangement\",w),n.coerceFont(p,\"textfont\",f.font,{autoShadowDflt:!0}),e._length=null}},71760:function(t,e,r){\"use strict\";t.exports={attributes:r(33795),supplyDefaults:r(67940),calc:r(22915),plot:r(16506),moduleType:\"trace\",name:\"sankey\",basePlotModule:r(42229),selectPoints:r(74670),categories:[\"noOpacity\"],meta:{}}},16506:function(t,e,r){\"use strict\";var n=r(45568),i=r(34809),a=i.numberFormat,o=r(90958),s=r(32141),l=r(78766),c=r(21541).cn,u=i._;function h(t){return\"\"!==t}function f(t,e){return t.filter((function(t){return t.key===e.traceId}))}function p(t,e){n.select(t).select(\"path\").style(\"fill-opacity\",e),n.select(t).select(\"rect\").style(\"fill-opacity\",e)}function d(t){n.select(t).select(\"text.name\").style(\"fill\",\"black\")}function m(t){return function(e){return-1!==t.node.sourceLinks.indexOf(e.link)||-1!==t.node.targetLinks.indexOf(e.link)}}function g(t){return function(e){return-1!==e.node.sourceLinks.indexOf(t.link)||-1!==e.node.targetLinks.indexOf(t.link)}}function y(t,e,r){e&&r&&f(r,e).selectAll(\".\"+c.sankeyLink).filter(m(e)).call(x.bind(0,e,r,!1))}function v(t,e,r){e&&r&&f(r,e).selectAll(\".\"+c.sankeyLink).filter(m(e)).call(_.bind(0,e,r,!1))}function x(t,e,r,n){n.style(\"fill\",(function(t){if(!t.link.concentrationscale)return t.tinyColorHoverHue})).style(\"fill-opacity\",(function(t){if(!t.link.concentrationscale)return t.tinyColorHoverAlpha})),n.each((function(r){var n=r.link.label;\"\"!==n&&f(e,t).selectAll(\".\"+c.sankeyLink).filter((function(t){return t.link.label===n})).style(\"fill\",(function(t){if(!t.link.concentrationscale)return t.tinyColorHoverHue})).style(\"fill-opacity\",(function(t){if(!t.link.concentrationscale)return t.tinyColorHoverAlpha}))})),r&&f(e,t).selectAll(\".\"+c.sankeyNode).filter(g(t)).call(y)}function _(t,e,r,n){n.style(\"fill\",(function(t){return t.tinyColorHue})).style(\"fill-opacity\",(function(t){return t.tinyColorAlpha})),n.each((function(r){var n=r.link.label;\"\"!==n&&f(e,t).selectAll(\".\"+c.sankeyLink).filter((function(t){return t.link.label===n})).style(\"fill\",(function(t){return t.tinyColorHue})).style(\"fill-opacity\",(function(t){return t.tinyColorAlpha}))})),r&&f(e,t).selectAll(c.sankeyNode).filter(g(t)).call(v)}function b(t,e){var r=t.hoverlabel||{},n=i.nestedProperty(r,e).get();return!Array.isArray(n)&&n}t.exports=function(t,e){for(var r=t._fullLayout,i=r._paper,f=r._size,m=0;m<t._fullData.length;m++)if(t._fullData[m].visible&&t._fullData[m].type===c.sankey&&!t._fullData[m]._viewInitial){var g=t._fullData[m].node;t._fullData[m]._viewInitial={node:{groups:g.groups.slice(),x:g.x.slice(),y:g.y.slice()}}}var w=u(t,\"source:\")+\" \",T=u(t,\"target:\")+\" \",k=u(t,\"concentration:\")+\" \",A=u(t,\"incoming flow count:\")+\" \",M=u(t,\"outgoing flow count:\")+\" \";o(t,i,e,{width:f.w,height:f.h,margin:{t:f.t,r:f.r,b:f.b,l:f.l}},{linkEvents:{hover:function(e,r,i){!1!==t._fullLayout.hovermode&&(n.select(e).call(x.bind(0,r,i,!0)),\"skip\"!==r.link.trace.link.hoverinfo&&(r.link.fullData=r.link.trace,t.emit(\"plotly_hover\",{event:n.event,points:[r.link]})))},follow:function(e,i){if(!1!==t._fullLayout.hovermode){var o=i.link.trace.link;if(\"none\"!==o.hoverinfo&&\"skip\"!==o.hoverinfo){for(var c=[],u=0,f=0;f<i.flow.links.length;f++){var m=i.flow.links[f];if(\"closest\"!==t._fullLayout.hovermode||i.link.pointNumber===m.pointNumber){i.link.pointNumber===m.pointNumber&&(u=f),m.fullData=m.trace,o=i.link.trace.link;var g=v(m),y={valueLabel:a(i.valueFormat)(m.value)+i.valueSuffix};c.push({x:g[0],y:g[1],name:y.valueLabel,text:[m.label||\"\",w+m.source.label,T+m.target.label,m.concentrationscale?k+a(\"%0.2f\")(m.flow.labelConcentration):\"\"].filter(h).join(\"<br>\"),color:b(o,\"bgcolor\")||l.addOpacity(m.color,1),borderColor:b(o,\"bordercolor\"),fontFamily:b(o,\"font.family\"),fontSize:b(o,\"font.size\"),fontColor:b(o,\"font.color\"),fontWeight:b(o,\"font.weight\"),fontStyle:b(o,\"font.style\"),fontVariant:b(o,\"font.variant\"),fontTextcase:b(o,\"font.textcase\"),fontLineposition:b(o,\"font.lineposition\"),fontShadow:b(o,\"font.shadow\"),nameLength:b(o,\"namelength\"),textAlign:b(o,\"align\"),idealAlign:n.event.x<g[0]?\"right\":\"left\",hovertemplate:o.hovertemplate,hovertemplateLabels:y,eventData:[m]})}}s.loneHover(c,{container:r._hoverlayer.node(),outerContainer:r._paper.node(),gd:t,anchorIndex:u}).each((function(){i.link.concentrationscale||p(this,.65),d(this)}))}}function v(t){var e,r;t.circular?(e=(t.circularPathData.leftInnerExtent+t.circularPathData.rightInnerExtent)/2,r=t.circularPathData.verticalFullExtent):(e=(t.source.x1+t.target.x0)/2,r=(t.y0+t.y1)/2);var n=[e,r];return\"v\"===t.trace.orientation&&n.reverse(),n[0]+=i.parent.translateX,n[1]+=i.parent.translateY,n}},unhover:function(e,i,a){!1!==t._fullLayout.hovermode&&(n.select(e).call(_.bind(0,i,a,!0)),\"skip\"!==i.link.trace.link.hoverinfo&&(i.link.fullData=i.link.trace,t.emit(\"plotly_unhover\",{event:n.event,points:[i.link]})),s.loneUnhover(r._hoverlayer.node()))},select:function(e,r){var i=r.link;i.originalEvent=n.event,t._hoverdata=[i],s.click(t,{target:!0})}},nodeEvents:{hover:function(e,r,i){!1!==t._fullLayout.hovermode&&(n.select(e).call(y,r,i),\"skip\"!==r.node.trace.node.hoverinfo&&(r.node.fullData=r.node.trace,t.emit(\"plotly_hover\",{event:n.event,points:[r.node]})))},follow:function(e,i){if(!1!==t._fullLayout.hovermode){var o=i.node.trace.node;if(\"none\"!==o.hoverinfo&&\"skip\"!==o.hoverinfo){var l=n.select(e).select(\".\"+c.nodeRect),u=t._fullLayout._paperdiv.node().getBoundingClientRect(),f=l.node().getBoundingClientRect(),m=f.left-2-u.left,g=f.right+2-u.left,y=f.top+f.height/4-u.top,v={valueLabel:a(i.valueFormat)(i.node.value)+i.valueSuffix};i.node.fullData=i.node.trace,t._fullLayout._calcInverseTransform(t);var x=t._fullLayout._invScaleX,_=t._fullLayout._invScaleY,w=s.loneHover({x0:x*m,x1:x*g,y:_*y,name:a(i.valueFormat)(i.node.value)+i.valueSuffix,text:[i.node.label,A+i.node.targetLinks.length,M+i.node.sourceLinks.length].filter(h).join(\"<br>\"),color:b(o,\"bgcolor\")||i.tinyColorHue,borderColor:b(o,\"bordercolor\"),fontFamily:b(o,\"font.family\"),fontSize:b(o,\"font.size\"),fontColor:b(o,\"font.color\"),fontWeight:b(o,\"font.weight\"),fontStyle:b(o,\"font.style\"),fontVariant:b(o,\"font.variant\"),fontTextcase:b(o,\"font.textcase\"),fontLineposition:b(o,\"font.lineposition\"),fontShadow:b(o,\"font.shadow\"),nameLength:b(o,\"namelength\"),textAlign:b(o,\"align\"),idealAlign:\"left\",hovertemplate:o.hovertemplate,hovertemplateLabels:v,eventData:[i.node]},{container:r._hoverlayer.node(),outerContainer:r._paper.node(),gd:t});p(w,.85),d(w)}}},unhover:function(e,i,a){!1!==t._fullLayout.hovermode&&(n.select(e).call(v,i,a),\"skip\"!==i.node.trace.node.hoverinfo&&(i.node.fullData=i.node.trace,t.emit(\"plotly_unhover\",{event:n.event,points:[i.node]})),s.loneUnhover(r._hoverlayer.node()))},select:function(e,r,i){var a=r.node;a.originalEvent=n.event,t._hoverdata=[a],n.select(e).call(v,r,i),s.click(t,{target:!0})}}})}},90958:function(t,e,r){\"use strict\";var n=r(32702),i=r(88640).Dj,a=r(45568),o=r(62369),s=r(68735),l=r(21541),c=r(65657),u=r(78766),h=r(62203),f=r(34809),p=f.strTranslate,d=f.strRotate,m=r(71293),g=m.keyFun,y=m.repeat,v=m.unwrap,x=r(30635),_=r(33626),b=r(4530),w=b.CAP_SHIFT,T=b.LINE_SPACING;function k(t,e,r){var n,i=v(e),a=i.trace,u=a.domain,h=\"h\"===a.orientation,p=a.node.pad,d=a.node.thickness,m={justify:o.sankeyJustify,left:o.sankeyLeft,right:o.sankeyRight,center:o.sankeyCenter}[a.node.align],g=t.width*(u.x[1]-u.x[0]),y=t.height*(u.y[1]-u.y[0]),x=i._nodes,_=i._links,b=i.circular;(n=b?s.sankeyCircular().circularLinkGap(0):o.sankey()).iterations(l.sankeyIterations).size(h?[g,y]:[y,g]).nodeWidth(d).nodePadding(p).nodeId((function(t){return t.pointNumber})).nodeAlign(m).nodes(x).links(_);var w,T,k,A=n();for(var M in n.nodePadding()<p&&f.warn(\"node.pad was reduced to \",n.nodePadding(),\" to fit within the figure.\"),i._groupLookup){var S,E=parseInt(i._groupLookup[M]);for(w=0;w<A.nodes.length;w++)if(A.nodes[w].pointNumber===E){S=A.nodes[w];break}if(S){var C={pointNumber:parseInt(M),x0:S.x0,x1:S.x1,y0:S.y0,y1:S.y1,partOfGroup:!0,sourceLinks:[],targetLinks:[]};A.nodes.unshift(C),S.childrenNodes.unshift(C)}}if(function(){for(w=0;w<A.nodes.length;w++){var t,e,r=A.nodes[w],n={};for(T=0;T<r.targetLinks.length;T++)t=(e=r.targetLinks[T]).source.pointNumber+\":\"+e.target.pointNumber,n.hasOwnProperty(t)||(n[t]=[]),n[t].push(e);var i=Object.keys(n);for(T=0;T<i.length;T++){var a=n[t=i[T]],o=0,s={};for(k=0;k<a.length;k++)s[(e=a[k]).label]||(s[e.label]=0),s[e.label]+=e.value,o+=e.value;for(k=0;k<a.length;k++)(e=a[k]).flow={value:o,labelConcentration:s[e.label]/o,concentration:e.value/o,links:a},e.concentrationscale&&(e.color=c(e.concentrationscale(e.flow.labelConcentration)))}var l=0;for(T=0;T<r.sourceLinks.length;T++)l+=r.sourceLinks[T].value;for(T=0;T<r.sourceLinks.length;T++)(e=r.sourceLinks[T]).concentrationOut=e.value/l;var u=0;for(T=0;T<r.targetLinks.length;T++)u+=r.targetLinks[T].value;for(T=0;T<r.targetLinks.length;T++)(e=r.targetLinks[T]).concenrationIn=e.value/u}}(),a.node.x.length&&a.node.y.length){for(w=0;w<Math.min(a.node.x.length,a.node.y.length,A.nodes.length);w++)if(a.node.x[w]&&a.node.y[w]){var L=[a.node.x[w]*g,a.node.y[w]*y];A.nodes[w].x0=L[0]-d/2,A.nodes[w].x1=L[0]+d/2;var I=A.nodes[w].y1-A.nodes[w].y0;A.nodes[w].y0=L[1]-I/2,A.nodes[w].y1=L[1]+I/2}\"snap\"===a.arrangement&&function(t){var e,r,n=t.map((function(t,e){return{x0:t.x0,index:e}})).sort((function(t,e){return t.x0-e.x0})),i=[],a=-1,o=-1/0;for(w=0;w<n.length;w++){var s=t[n[w].index];s.x0>o+d&&(a+=1,e=s.x0),o=s.x0,i[a]||(i[a]=[]),i[a].push(s),r=e-s.x0,s.x0+=r,s.x1+=r}return i}(x=A.nodes).forEach((function(t){var e,r,n,i=0,a=t.length;for(t.sort((function(t,e){return t.y0-e.y0})),n=0;n<a;++n)(e=t[n]).y0>=i||(r=i-e.y0)>1e-6&&(e.y0+=r,e.y1+=r),i=e.y1+p})),n.update(A)}return{circular:b,key:r,trace:a,guid:f.randstr(),horizontal:h,width:g,height:y,nodePad:a.node.pad,nodeLineColor:a.node.line.color,nodeLineWidth:a.node.line.width,linkLineColor:a.link.line.color,linkLineWidth:a.link.line.width,linkArrowLength:a.link.arrowlen,valueFormat:a.valueformat,valueSuffix:a.valuesuffix,textFont:a.textfont,translateX:u.x[0]*t.width+t.margin.l,translateY:t.height-u.y[1]*t.height+t.margin.t,dragParallel:h?y:g,dragPerpendicular:h?g:y,arrangement:a.arrangement,sankey:n,graph:A,forceLayouts:{},interactionState:{dragInProgress:!1,hovered:!1}}}function A(t,e,r){var n=c(e.color),i=c(e.hovercolor),a=e.source.label+\"|\"+e.target.label+\"__\"+r;return e.trace=t.trace,e.curveNumber=t.trace.index,{circular:t.circular,key:a,traceId:t.key,pointNumber:e.pointNumber,link:e,tinyColorHue:u.tinyRGB(n),tinyColorAlpha:n.getAlpha(),tinyColorHoverHue:u.tinyRGB(i),tinyColorHoverAlpha:i.getAlpha(),linkPath:M,linkLineColor:t.linkLineColor,linkLineWidth:t.linkLineWidth,linkArrowLength:t.linkArrowLength,valueFormat:t.valueFormat,valueSuffix:t.valueSuffix,sankey:t.sankey,parent:t,interactionState:t.interactionState,flow:e.flow}}function M(){return function(t){var e=t.linkArrowLength;if(t.link.circular)return function(t,e){var r=t.width/2,n=t.circularPathData;return\"top\"===t.circularLinkType?\"M \"+(n.targetX-e)+\" \"+(n.targetY+r)+\" L\"+(n.rightInnerExtent-e)+\" \"+(n.targetY+r)+\"A\"+(n.rightLargeArcRadius+r)+\" \"+(n.rightSmallArcRadius+r)+\" 0 0 1 \"+(n.rightFullExtent-r-e)+\" \"+(n.targetY-n.rightSmallArcRadius)+\"L\"+(n.rightFullExtent-r-e)+\" \"+n.verticalRightInnerExtent+\"A\"+(n.rightLargeArcRadius+r)+\" \"+(n.rightLargeArcRadius+r)+\" 0 0 1 \"+(n.rightInnerExtent-e)+\" \"+(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-e)+\" \"+(n.verticalFullExtent+r)+\"A\"+(n.rightLargeArcRadius-r)+\" \"+(n.rightLargeArcRadius-r)+\" 0 0 0 \"+(n.rightFullExtent+r-e)+\" \"+n.verticalRightInnerExtent+\"L\"+(n.rightFullExtent+r-e)+\" \"+(n.targetY-n.rightSmallArcRadius)+\"A\"+(n.rightLargeArcRadius-r)+\" \"+(n.rightSmallArcRadius-r)+\" 0 0 0 \"+(n.rightInnerExtent-e)+\" \"+(n.targetY-r)+\"L\"+(n.targetX-e)+\" \"+(n.targetY-r)+(e>0?\"L\"+n.targetX+\" \"+n.targetY:\"\")+\"Z\":\"M \"+(n.targetX-e)+\" \"+(n.targetY-r)+\" L\"+(n.rightInnerExtent-e)+\" \"+(n.targetY-r)+\"A\"+(n.rightLargeArcRadius+r)+\" \"+(n.rightSmallArcRadius+r)+\" 0 0 0 \"+(n.rightFullExtent-r-e)+\" \"+(n.targetY+n.rightSmallArcRadius)+\"L\"+(n.rightFullExtent-r-e)+\" \"+n.verticalRightInnerExtent+\"A\"+(n.rightLargeArcRadius+r)+\" \"+(n.rightLargeArcRadius+r)+\" 0 0 0 \"+(n.rightInnerExtent-e)+\" \"+(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-e)+\" \"+(n.verticalFullExtent-r)+\"A\"+(n.rightLargeArcRadius-r)+\" \"+(n.rightLargeArcRadius-r)+\" 0 0 1 \"+(n.rightFullExtent+r-e)+\" \"+n.verticalRightInnerExtent+\"L\"+(n.rightFullExtent+r-e)+\" \"+(n.targetY+n.rightSmallArcRadius)+\"A\"+(n.rightLargeArcRadius-r)+\" \"+(n.rightSmallArcRadius-r)+\" 0 0 1 \"+(n.rightInnerExtent-e)+\" \"+(n.targetY+r)+\"L\"+(n.targetX-e)+\" \"+(n.targetY+r)+(e>0?\"L\"+n.targetX+\" \"+n.targetY:\"\")+\"Z\"}(t.link,e);var r=Math.abs((t.link.target.x0-t.link.source.x1)/2);e>r&&(e=r);var n=t.link.source.x1,a=t.link.target.x0-e,o=i(n,a),s=o(.5),l=o(.5),c=t.link.y0-t.link.width/2,u=t.link.y0+t.link.width/2,h=t.link.y1-t.link.width/2,f=t.link.y1+t.link.width/2,p=\"M\"+n+\",\"+c,d=\"C\"+s+\",\"+c+\" \"+l+\",\"+h+\" \"+a+\",\"+h,m=\"C\"+l+\",\"+f+\" \"+s+\",\"+u+\" \"+n+\",\"+u,g=e>0?\"L\"+(a+e)+\",\"+(h+t.link.width/2):\"\";return p+d+(g+=\"L\"+a+\",\"+f)+m+\"Z\"}}function S(t,e){var r=c(e.color),n=l.nodePadAcross,i=t.nodePad/2;e.dx=e.x1-e.x0,e.dy=e.y1-e.y0;var a=e.dx,o=Math.max(.5,e.dy),s=\"node_\"+e.pointNumber;return e.group&&(s=f.randstr()),e.trace=t.trace,e.curveNumber=t.trace.index,{index:e.pointNumber,key:s,partOfGroup:e.partOfGroup||!1,group:e.group,traceId:t.key,trace:t.trace,node:e,nodePad:t.nodePad,nodeLineColor:t.nodeLineColor,nodeLineWidth:t.nodeLineWidth,textFont:t.textFont,size:t.horizontal?t.height:t.width,visibleWidth:Math.ceil(a),visibleHeight:o,zoneX:-n,zoneY:-i,zoneWidth:a+2*n,zoneHeight:o+2*i,labelY:t.horizontal?e.dy/2+1:e.dx/2+1,left:1===e.originalLayer,sizeAcross:t.width,forceLayouts:t.forceLayouts,horizontal:t.horizontal,darkBackground:r.getBrightness()<=128,tinyColorHue:u.tinyRGB(r),tinyColorAlpha:r.getAlpha(),valueFormat:t.valueFormat,valueSuffix:t.valueSuffix,sankey:t.sankey,graph:t.graph,arrangement:t.arrangement,uniqueNodeLabelPathId:[t.guid,t.key,s].join(\"_\"),interactionState:t.interactionState,figure:t}}function E(t){t.attr(\"transform\",(function(t){return p(t.node.x0.toFixed(3),t.node.y0.toFixed(3))}))}function C(t){t.call(E)}function L(t,e){t.call(C),e.attr(\"d\",M())}function I(t){t.attr(\"width\",(function(t){return t.node.x1-t.node.x0})).attr(\"height\",(function(t){return t.visibleHeight}))}function P(t){return t.link.width>1||t.linkLineWidth>0}function z(t){return p(t.translateX,t.translateY)+(t.horizontal?\"matrix(1 0 0 1 0 0)\":\"matrix(0 1 1 0 0 0)\")}function O(t,e,r){t.on(\".basic\",null).on(\"mouseover.basic\",(function(t){t.interactionState.dragInProgress||t.partOfGroup||(r.hover(this,t,e),t.interactionState.hovered=[this,t])})).on(\"mousemove.basic\",(function(t){t.interactionState.dragInProgress||t.partOfGroup||(r.follow(this,t),t.interactionState.hovered=[this,t])})).on(\"mouseout.basic\",(function(t){t.interactionState.dragInProgress||t.partOfGroup||(r.unhover(this,t,e),t.interactionState.hovered=!1)})).on(\"click.basic\",(function(t){t.interactionState.hovered&&(r.unhover(this,t,e),t.interactionState.hovered=!1),t.interactionState.dragInProgress||t.partOfGroup||r.select(this,t,e)}))}function D(t,e,r,i){var o=a.behavior.drag().origin((function(t){return{x:t.node.x0+t.visibleWidth/2,y:t.node.y0+t.visibleHeight/2}})).on(\"dragstart\",(function(a){if(\"fixed\"!==a.arrangement&&(f.ensureSingle(i._fullLayout._infolayer,\"g\",\"dragcover\",(function(t){i._fullLayout._dragCover=t})),f.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(t,e,r,i){!function(t){for(var e=0;e<t.length;e++)t[e].y=(t[e].y0+t[e].y1)/2,t[e].x=(t[e].x0+t[e].x1)/2}(r.graph.nodes);var a=r.graph.nodes.filter((function(t){return t.originalX===r.node.originalX})).filter((function(t){return!t.partOfGroup}));r.forceLayouts[e]=n.forceSimulation(a).alphaDecay(0).force(\"collide\",n.forceCollide().radius((function(t){return t.dy/2+r.nodePad/2})).strength(1).iterations(l.forceIterations)).force(\"constrain\",function(t,e,r,n){return function(){for(var t=0,i=0;i<r.length;i++){var a=r[i];a===n.interactionState.dragInProgress?(a.x=a.lastDraggedX,a.y=a.lastDraggedY):(a.vx=(a.originalX-a.x)/l.forceTicksPerFrame,a.y=Math.min(n.size-a.dy/2,Math.max(a.dy/2,a.y))),t=Math.max(t,Math.abs(a.vx),Math.abs(a.vy))}!n.interactionState.dragInProgress&&t<.1&&n.forceLayouts[e].alpha()>0&&n.forceLayouts[e].alpha(0)}}(0,e,a,r)).stop()}(0,o,a),function(t,e,r,n,i){window.requestAnimationFrame((function a(){var o;for(o=0;o<l.forceTicksPerFrame;o++)r.forceLayouts[n].tick();if(function(t){for(var e=0;e<t.length;e++)t[e].y0=t[e].y-t[e].dy/2,t[e].y1=t[e].y0+t[e].dy,t[e].x0=t[e].x-t[e].dx/2,t[e].x1=t[e].x0+t[e].dx}(r.graph.nodes),r.sankey.update(r.graph),L(t.filter(B(r)),e),r.forceLayouts[n].alpha()>0)window.requestAnimationFrame(a);else{var s=r.node.originalX;r.node.x0=s-r.visibleWidth/2,r.node.x1=s+r.visibleWidth/2,R(r,i)}}))}(t,e,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(t.filter(B(r)),e))}})).on(\"dragend\",(function(t){if(\"fixed\"!==t.arrangement){t.interactionState.dragInProgress=!1;for(var e=0;e<t.node.childrenNodes.length;e++)t.node.childrenNodes[e].x=t.node.x,t.node.childrenNodes[e].y=t.node.y;\"snap\"!==t.arrangement&&R(t,i)}}));t.on(\".drag\",null).call(o)}function R(t,e){for(var r=[],n=[],i=0;i<t.graph.nodes.length;i++){var a=(t.graph.nodes[i].x0+t.graph.nodes[i].x1)/2,o=(t.graph.nodes[i].y0+t.graph.nodes[i].y1)/2;r.push(a/t.figure.width),n.push(o/t.figure.height)}_.call(\"_guiRestyle\",e,{\"node.x\":[r],\"node.y\":[n]},t.trace.index).then((function(){e._fullLayout._dragCover&&e._fullLayout._dragCover.remove()}))}function F(t){t.lastDraggedX=t.x0+t.dx/2,t.lastDraggedY=t.y0+t.dy/2}function B(t){return function(e){return e.node.originalX===t.node.originalX}}t.exports=function(t,e,r,n,i){var o=t._context.staticPlot,s=!1;f.ensureSingle(t._fullLayout._infolayer,\"g\",\"first-render\",(function(){s=!0}));var m=t._fullLayout._dragCover,_=r.filter((function(t){return v(t).trace.visible})).map(k.bind(null,n)),b=e.selectAll(\".\"+l.cn.sankey).data(_,g);b.exit().remove(),b.enter().append(\"g\").classed(l.cn.sankey,!0).style(\"box-sizing\",\"content-box\").style(\"position\",\"absolute\").style(\"left\",0).style(\"shape-rendering\",\"geometricPrecision\").style(\"pointer-events\",o?\"none\":\"auto\").attr(\"transform\",z),b.each((function(e,r){t._fullData[r]._sankey=e;var n=\"bgsankey-\"+e.trace.uid+\"-\"+r;f.ensureSingle(t._fullLayout._draggers,\"rect\",n),t._fullData[r]._bgRect=a.select(\".\"+n),t._fullData[r]._bgRect.style(\"pointer-events\",o?\"none\":\"all\").attr(\"width\",e.width).attr(\"height\",e.height).attr(\"x\",e.translateX).attr(\"y\",e.translateY).classed(\"bgsankey\",!0).style({fill:\"transparent\",\"stroke-width\":0})})),b.transition().ease(l.ease).duration(l.duration).attr(\"transform\",z);var C=b.selectAll(\".\"+l.cn.sankeyLinks).data(y,g);C.enter().append(\"g\").classed(l.cn.sankeyLinks,!0).style(\"fill\",\"none\");var L=C.selectAll(\".\"+l.cn.sankeyLink).data((function(t){return t.graph.links.filter((function(t){return t.value})).map(A.bind(null,t))}),g);L.enter().append(\"path\").classed(l.cn.sankeyLink,!0).call(O,b,i.linkEvents),L.style(\"stroke\",(function(t){return P(t)?u.tinyRGB(c(t.linkLineColor)):t.tinyColorHue})).style(\"stroke-opacity\",(function(t){return P(t)?u.opacity(t.linkLineColor):t.tinyColorAlpha})).style(\"fill\",(function(t){return t.tinyColorHue})).style(\"fill-opacity\",(function(t){return t.tinyColorAlpha})).style(\"stroke-width\",(function(t){return P(t)?t.linkLineWidth:1})).attr(\"d\",M()),L.style(\"opacity\",(function(){return t._context.staticPlot||s||m?1:0})).transition().ease(l.ease).duration(l.duration).style(\"opacity\",1),L.exit().transition().ease(l.ease).duration(l.duration).style(\"opacity\",0).remove();var R=b.selectAll(\".\"+l.cn.sankeyNodeSet).data(y,g);R.enter().append(\"g\").classed(l.cn.sankeyNodeSet,!0),R.style(\"cursor\",(function(t){switch(t.arrangement){case\"fixed\":return\"default\";case\"perpendicular\":return\"ns-resize\";default:return\"move\"}}));var F=R.selectAll(\".\"+l.cn.sankeyNode).data((function(t){var e=t.graph.nodes;return function(t){var e,r=[];for(e=0;e<t.length;e++)t[e].originalX=(t[e].x0+t[e].x1)/2,t[e].originalY=(t[e].y0+t[e].y1)/2,-1===r.indexOf(t[e].originalX)&&r.push(t[e].originalX);for(r.sort((function(t,e){return t-e})),e=0;e<t.length;e++)t[e].originalLayerIndex=r.indexOf(t[e].originalX),t[e].originalLayer=t[e].originalLayerIndex/(r.length-1)}(e),e.map(S.bind(null,t))}),g);F.enter().append(\"g\").classed(l.cn.sankeyNode,!0).call(E).style(\"opacity\",(function(e){return!t._context.staticPlot&&!s||e.partOfGroup?0:1})),F.call(O,b,i.nodeEvents).call(D,L,i,t),F.transition().ease(l.ease).duration(l.duration).call(E).style(\"opacity\",(function(t){return t.partOfGroup?0:1})),F.exit().transition().ease(l.ease).duration(l.duration).style(\"opacity\",0).remove();var B=F.selectAll(\".\"+l.cn.nodeRect).data(y);B.enter().append(\"rect\").classed(l.cn.nodeRect,!0).call(I),B.style(\"stroke-width\",(function(t){return t.nodeLineWidth})).style(\"stroke\",(function(t){return u.tinyRGB(c(t.nodeLineColor))})).style(\"stroke-opacity\",(function(t){return u.opacity(t.nodeLineColor)})).style(\"fill\",(function(t){return t.tinyColorHue})).style(\"fill-opacity\",(function(t){return t.tinyColorAlpha})),B.transition().ease(l.ease).duration(l.duration).call(I);var N=F.selectAll(\".\"+l.cn.nodeLabel).data(y);N.enter().append(\"text\").classed(l.cn.nodeLabel,!0).style(\"cursor\",\"default\"),N.attr(\"data-notex\",1).text((function(t){return t.node.label})).each((function(e){var r=a.select(this);h.font(r,e.textFont),x.convertToTspans(r,t)})).attr(\"text-anchor\",(function(t){return t.horizontal&&t.left?\"end\":\"start\"})).attr(\"transform\",(function(t){var e=a.select(this),r=x.lineCount(e),n=t.textFont.size*((r-1)*T-w),i=t.nodeLineWidth/2+3,o=((t.horizontal?t.visibleHeight:t.visibleWidth)-n)/2;t.horizontal&&(t.left?i=-i:i+=t.visibleWidth);var s=t.horizontal?\"\":\"scale(-1,1)\"+d(90);return p(t.horizontal?i:o,t.horizontal?o:i)+s})),N.transition().ease(l.ease).duration(l.duration)}},74670:function(t){\"use strict\";t.exports=function(t,e){for(var r=[],n=t.cd[0].trace,i=n._sankey.graph.nodes,a=0;a<i.length;a++){var o=i[a];if(!o.partOfGroup){var s=[(o.x0+o.x1)/2,(o.y0+o.y1)/2];\"v\"===n.orientation&&s.reverse(),e&&e.contains(s,!1,a,t)&&r.push({pointNumber:o.pointNumber})}}return r}},99203:function(t,e,r){\"use strict\";var n=r(34809);t.exports=function(t,e){for(var r=0;r<t.length;r++)t[r].i=r;n.mergeArray(e.text,t,\"tx\"),n.mergeArray(e.texttemplate,t,\"txt\"),n.mergeArray(e.hovertext,t,\"htx\"),n.mergeArray(e.customdata,t,\"data\"),n.mergeArray(e.textposition,t,\"tp\"),e.textfont&&(n.mergeArrayCastPositive(e.textfont.size,t,\"ts\"),n.mergeArray(e.textfont.color,t,\"tc\"),n.mergeArray(e.textfont.family,t,\"tf\"),n.mergeArray(e.textfont.weight,t,\"tw\"),n.mergeArray(e.textfont.style,t,\"ty\"),n.mergeArray(e.textfont.variant,t,\"tv\"),n.mergeArray(e.textfont.textcase,t,\"tC\"),n.mergeArray(e.textfont.lineposition,t,\"tE\"),n.mergeArray(e.textfont.shadow,t,\"tS\"));var i=e.marker;if(i){n.mergeArrayCastPositive(i.size,t,\"ms\"),n.mergeArrayCastPositive(i.opacity,t,\"mo\"),n.mergeArray(i.symbol,t,\"mx\"),n.mergeArray(i.angle,t,\"ma\"),n.mergeArray(i.standoff,t,\"mf\"),n.mergeArray(i.color,t,\"mc\");var a=i.line;i.line&&(n.mergeArray(a.color,t,\"mlc\"),n.mergeArrayCastPositive(a.width,t,\"mlw\"));var o=i.gradient;o&&\"none\"!==o.type&&(n.mergeArray(o.type,t,\"mgt\"),n.mergeArray(o.color,t,\"mgc\"))}}},36640:function(t,e,r){\"use strict\";var n=r(80712).axisHoverFormat,i=r(3208).ay,a=r(3208).rb,o=r(87163),s=r(80337),l=r(94850).T,c=r(94850).k,u=r(62203),h=r(32660),f=r(93049).extendFlat,p=r(19326);t.exports={x:{valType:\"data_array\",editType:\"calc+clearAxisTypes\",anim:!0},x0:{valType:\"any\",dflt:0,editType:\"calc+clearAxisTypes\",anim:!0},dx:{valType:\"number\",dflt:1,editType:\"calc\",anim:!0},y:{valType:\"data_array\",editType:\"calc+clearAxisTypes\",anim:!0},y0:{valType:\"any\",dflt:0,editType:\"calc+clearAxisTypes\",anim:!0},dy:{valType:\"number\",dflt:1,editType:\"calc\",anim:!0},xperiod:{valType:\"any\",dflt:0,editType:\"calc\"},yperiod:{valType:\"any\",dflt:0,editType:\"calc\"},xperiod0:{valType:\"any\",editType:\"calc\"},yperiod0:{valType:\"any\",editType:\"calc\"},xperiodalignment:{valType:\"enumerated\",values:[\"start\",\"middle\",\"end\"],dflt:\"middle\",editType:\"calc\"},yperiodalignment:{valType:\"enumerated\",values:[\"start\",\"middle\",\"end\"],dflt:\"middle\",editType:\"calc\"},xhoverformat:n(\"x\"),yhoverformat:n(\"y\"),offsetgroup:{valType:\"string\",dflt:\"\",editType:\"calc\"},alignmentgroup:{valType:\"string\",dflt:\"\",editType:\"calc\"},stackgroup:{valType:\"string\",dflt:\"\",editType:\"calc\"},orientation:{valType:\"enumerated\",values:[\"v\",\"h\"],editType:\"calc\"},groupnorm:{valType:\"enumerated\",values:[\"\",\"fraction\",\"percent\"],dflt:\"\",editType:\"calc\"},stackgaps:{valType:\"enumerated\",values:[\"infer zero\",\"interpolate\"],dflt:\"infer zero\",editType:\"calc\"},text:{valType:\"string\",dflt:\"\",arrayOk:!0,editType:\"calc\"},texttemplate:i({},{}),hovertext:{valType:\"string\",dflt:\"\",arrayOk:!0,editType:\"style\"},mode:{valType:\"flaglist\",flags:[\"lines\",\"markers\",\"text\"],extras:[\"none\"],editType:\"calc\"},hoveron:{valType:\"flaglist\",flags:[\"points\",\"fills\"],editType:\"style\"},hovertemplate:a({},{keys:h.eventDataKeys}),line:{color:{valType:\"color\",editType:\"style\",anim:!0},width:{valType:\"number\",min:0,dflt:2,editType:\"style\",anim:!0},shape:{valType:\"enumerated\",values:[\"linear\",\"spline\",\"hv\",\"vh\",\"hvh\",\"vhv\"],dflt:\"linear\",editType:\"plot\"},smoothing:{valType:\"number\",min:0,max:1.3,dflt:1,editType:\"plot\"},dash:f({},l,{editType:\"style\"}),backoff:{valType:\"number\",min:0,dflt:\"auto\",arrayOk:!0,editType:\"plot\"},simplify:{valType:\"boolean\",dflt:!0,editType:\"plot\"},editType:\"plot\"},connectgaps:{valType:\"boolean\",dflt:!1,editType:\"calc\"},cliponaxis:{valType:\"boolean\",dflt:!0,editType:\"plot\"},fill:{valType:\"enumerated\",values:[\"none\",\"tozeroy\",\"tozerox\",\"tonexty\",\"tonextx\",\"toself\",\"tonext\"],editType:\"calc\"},fillcolor:p(!0),fillgradient:f({type:{valType:\"enumerated\",values:[\"radial\",\"horizontal\",\"vertical\",\"none\"],dflt:\"none\",editType:\"calc\"},start:{valType:\"number\",editType:\"calc\"},stop:{valType:\"number\",editType:\"calc\"},colorscale:{valType:\"colorscale\",editType:\"style\"},editType:\"calc\"}),fillpattern:c,marker:f({symbol:{valType:\"enumerated\",values:u.symbolList,dflt:\"circle\",arrayOk:!0,editType:\"style\"},opacity:{valType:\"number\",min:0,max:1,arrayOk:!0,editType:\"style\",anim:!0},angle:{valType:\"angle\",dflt:0,arrayOk:!0,editType:\"plot\",anim:!1},angleref:{valType:\"enumerated\",values:[\"previous\",\"up\"],dflt:\"up\",editType:\"plot\",anim:!1},standoff:{valType:\"number\",min:0,dflt:0,arrayOk:!0,editType:\"plot\",anim:!0},size:{valType:\"number\",min:0,dflt:6,arrayOk:!0,editType:\"calc\",anim:!0},maxdisplayed:{valType:\"number\",min:0,dflt:0,editType:\"plot\"},sizeref:{valType:\"number\",dflt:1,editType:\"calc\"},sizemin:{valType:\"number\",min:0,dflt:0,editType:\"calc\"},sizemode:{valType:\"enumerated\",values:[\"diameter\",\"area\"],dflt:\"diameter\",editType:\"calc\"},line:f({width:{valType:\"number\",min:0,arrayOk:!0,editType:\"style\",anim:!0},editType:\"calc\"},o(\"marker.line\",{anim:!0})),gradient:{type:{valType:\"enumerated\",values:[\"radial\",\"horizontal\",\"vertical\",\"none\"],arrayOk:!0,dflt:\"none\",editType:\"calc\"},color:{valType:\"color\",arrayOk:!0,editType:\"calc\"},editType:\"calc\"},editType:\"calc\"},o(\"marker\",{anim:!0})),selected:{marker:{opacity:{valType:\"number\",min:0,max:1,editType:\"style\"},color:{valType:\"color\",editType:\"style\"},size:{valType:\"number\",min:0,editType:\"style\"},editType:\"style\"},textfont:{color:{valType:\"color\",editType:\"style\"},editType:\"style\"},editType:\"style\"},unselected:{marker:{opacity:{valType:\"number\",min:0,max:1,editType:\"style\"},color:{valType:\"color\",editType:\"style\"},size:{valType:\"number\",min:0,editType:\"style\"},editType:\"style\"},textfont:{color:{valType:\"color\",editType:\"style\"},editType:\"style\"},editType:\"style\"},textposition:{valType:\"enumerated\",values:[\"top left\",\"top center\",\"top right\",\"middle left\",\"middle center\",\"middle right\",\"bottom left\",\"bottom center\",\"bottom right\"],dflt:\"middle center\",arrayOk:!0,editType:\"calc\"},textfont:s({editType:\"calc\",colorEditType:\"style\",arrayOk:!0}),zorder:{valType:\"integer\",dflt:0,editType:\"plot\"}}},26544:function(t,e,r){\"use strict\";var n=r(10721),i=r(34809),a=r(29714),o=r(40528),s=r(63821).BADNUM,l=r(64726),c=r(77272),u=r(99203),h=r(48861);function f(t,e,r,n,i,o,s){var c=e._length,u=t._fullLayout,h=r._id,f=n._id,p=u._firstScatter[m(e)]===e.uid,d=(g(e,u,r,n)||{}).orientation,y=e.fill;r._minDtick=0,n._minDtick=0;var v={padded:!0},x={padded:!0};s&&(v.ppad=x.ppad=s);var _=c<2||i[0]!==i[c-1]||o[0]!==o[c-1];_&&(\"tozerox\"===y||\"tonextx\"===y&&(p||\"h\"===d))?v.tozero=!0:(e.error_y||{}).visible||\"tonexty\"!==y&&\"tozeroy\"!==y&&(l.hasMarkers(e)||l.hasText(e))||(v.padded=!1,v.ppad=0),_&&(\"tozeroy\"===y||\"tonexty\"===y&&(p||\"v\"===d))?x.tozero=!0:\"tonextx\"!==y&&\"tozerox\"!==y||(x.padded=!1),h&&(e._extremes[h]=a.findExtremes(r,i,v)),f&&(e._extremes[f]=a.findExtremes(n,o,x))}function p(t,e){if(l.hasMarkers(t)){var r,n=t.marker,o=1.6*(t.marker.sizeref||1);if(r=\"area\"===t.marker.sizemode?function(t){return Math.max(Math.sqrt((t||0)/o),3)}:function(t){return Math.max((t||0)/o,3)},i.isArrayOrTypedArray(n.size)){var s={type:\"linear\"};a.setConvert(s);for(var c=s.makeCalcdata(t.marker,\"size\"),u=new Array(e),h=0;h<e;h++)u[h]=r(c[h]);return u}return r(n.size)}}function d(t,e){var r=m(e),n=t._firstScatter;n[r]||(n[r]=e.uid)}function m(t){var e=t.stackgroup;return t.xaxis+t.yaxis+t.type+(e?\"-\"+e:\"\")}function g(t,e,r,n){var i=t.stackgroup;if(i){var a=e._scatterStackOpts[r._id+n._id][i],o=\"v\"===a.orientation?n:r;return\"linear\"===o.type||\"log\"===o.type?a:void 0}}t.exports={calc:function(t,e){var r,l,m,y,v,x,_=t._fullLayout,b=e._xA=a.getFromId(t,e.xaxis||\"x\",\"x\"),w=e._yA=a.getFromId(t,e.yaxis||\"y\",\"y\"),T=b.makeCalcdata(e,\"x\"),k=w.makeCalcdata(e,\"y\"),A=o(e,b,\"x\",T),M=o(e,w,\"y\",k),S=A.vals,E=M.vals,C=e._length,L=new Array(C),I=e.ids,P=g(e,_,b,w),z=!1;d(_,e);var O,D=\"x\",R=\"y\";P?(i.pushUnique(P.traceIndices,e._expandedIndex),(r=\"v\"===P.orientation)?(R=\"s\",O=\"x\"):(D=\"s\",O=\"y\"),v=\"interpolate\"===P.stackgaps):f(t,e,b,w,S,E,p(e,C));var F=!!e.xperiodalignment,B=!!e.yperiodalignment;for(l=0;l<C;l++){var N=L[l]={},j=n(S[l]),U=n(E[l]);j&&U?(N[D]=S[l],N[R]=E[l],F&&(N.orig_x=T[l],N.xEnd=A.ends[l],N.xStart=A.starts[l]),B&&(N.orig_y=k[l],N.yEnd=M.ends[l],N.yStart=M.starts[l])):P&&(r?j:U)?(N[O]=r?S[l]:E[l],N.gap=!0,v?(N.s=s,z=!0):N.s=0):N[D]=N[R]=s,I&&(N.id=String(I[l]))}if(u(L,e),c(t,e),h(L,e),P){for(l=0;l<L.length;)L[l][O]===s?L.splice(l,1):l++;if(i.sort(L,(function(t,e){return t[O]-e[O]||t.i-e.i})),z){for(l=0;l<L.length-1&&L[l].gap;)l++;for((x=L[l].s)||(x=L[l].s=0),m=0;m<l;m++)L[m].s=x;for(y=L.length-1;y>l&&L[y].gap;)y--;for(x=L[y].s,m=L.length-1;m>y;m--)L[m].s=x;for(;l<y;)if(L[++l].gap){for(m=l+1;L[m].gap;)m++;for(var V=L[l-1][O],q=L[l-1].s,H=(L[m].s-q)/(L[m][O]-V);l<m;)L[l].s=q+(L[l][O]-V)*H,l++}}}return L},calcMarkerSize:p,calcAxisExpansion:f,setFirstScatter:d,getStackOpts:g}},48861:function(t,e,r){\"use strict\";var n=r(34809);t.exports=function(t,e){n.isArrayOrTypedArray(e.selectedpoints)&&n.tagSelected(t,e)}},77272:function(t,e,r){\"use strict\";var n=r(65477).hasColorscale,i=r(28379),a=r(64726);t.exports=function(t,e){a.hasLines(e)&&n(e,\"line\")&&i(t,e,{vals:e.line.color,containerStr:\"line\",cLetter:\"c\"}),a.hasMarkers(e)&&(n(e,\"marker\")&&i(t,e,{vals:e.marker.color,containerStr:\"marker\",cLetter:\"c\"}),n(e,\"marker.line\")&&i(t,e,{vals:e.marker.line.color,containerStr:\"marker.line\",cLetter:\"c\"}))}},32660:function(t){\"use strict\";t.exports={PTS_LINESONLY:20,minTolerance:.2,toleranceGrowth:10,maxScreensAway:20,eventDataKeys:[]}},75603:function(t,e,r){\"use strict\";var n=r(26544),i=r(24782).setGroupPositions;function a(t,e,r,n,i,a,o){i[n]=!0;var s={i:null,gap:!0,s:0};if(s[o]=r,t.splice(e,0,s),e&&r===t[e-1][o]){var l=t[e-1];s.s=l.s,s.i=l.i,s.gap=l.gap}else a&&(s.s=function(t,e,r,n){var i=t[e-1],a=t[e+1];return a?i?i.s+(a.s-i.s)*(r-i[n])/(a[n]-i[n]):a.s:i.s}(t,e,r,o));e||(t[0].t=t[1].t,t[0].trace=t[1].trace,delete t[1].t,delete t[1].trace)}t.exports=function(t,e){\"group\"===t._fullLayout.scattermode&&function(t,e){for(var r=e.xaxis,n=e.yaxis,a=t._fullLayout,o=t._fullData,s=t.calcdata,l=[],c=[],u=0;u<o.length;u++){var h=o[u];!0===h.visible&&\"scatter\"===h.type&&h.xaxis===r._id&&h.yaxis===n._id&&(\"h\"===h.orientation?l.push(s[u]):\"v\"===h.orientation&&c.push(s[u]))}var f={mode:a.scattermode,gap:a.scattergap};i(t,r,n,c,f),i(t,n,r,l,f)}(t,e);var r=e.xaxis,o=e.yaxis,s=r._id+o._id,l=t._fullLayout._scatterStackOpts[s];if(l){var c,u,h,f,p,d,m,g,y,v,x,_,b,w,T,k=t.calcdata;for(var A in l){var M=(v=l[A]).traceIndices;if(M.length){for(x=\"interpolate\"===v.stackgaps,_=v.groupnorm,\"v\"===v.orientation?(b=\"x\",w=\"y\"):(b=\"y\",w=\"x\"),T=new Array(M.length),c=0;c<T.length;c++)T[c]=!1;d=k[M[0]];var S=new Array(d.length);for(c=0;c<d.length;c++)S[c]=d[c][b];for(c=1;c<M.length;c++){for(p=k[M[c]],u=h=0;u<p.length;u++){for(m=p[u][b];m>S[h]&&h<S.length;h++)a(p,u,S[h],c,T,x,b),u++;if(m!==S[h]){for(f=0;f<c;f++)a(k[M[f]],h,m,f,T,x,b);S.splice(h,0,m)}h++}for(;h<S.length;h++)a(p,u,S[h],c,T,x,b),u++}var E=S.length;for(u=0;u<d.length;u++){for(g=d[u][w]=d[u].s,c=1;c<M.length;c++)(p=k[M[c]])[0].trace._rawLength=p[0].trace._length,p[0].trace._length=E,g+=p[u].s,p[u][w]=g;if(_)for(y=(\"fraction\"===_?g:g/100)||1,c=0;c<M.length;c++){var C=k[M[c]][u];C[w]/=y,C.sNorm=C.s/y}}for(c=0;c<M.length;c++){var L=(p=k[M[c]])[0].trace,I=n.calcMarkerSize(L,L._rawLength),P=Array.isArray(I);if(I&&T[c]||P){var z=I;for(I=new Array(E),u=0;u<E;u++)I[u]=p[u].gap?0:P?z[p[u].i]:z}var O=new Array(E),D=new Array(E);for(u=0;u<E;u++)O[u]=p[u].x,D[u]=p[u].y;n.calcAxisExpansion(t,L,r,o,O,D,I),p[0].t.orientation=v.orientation}}}}}},53044:function(t,e,r){\"use strict\";var n=r(34809),i=r(36301),a=r(36640);t.exports=function(t,e){var r,o,s;function l(t){return n.coerce(o._input,o,a,t)}if(\"group\"===e.scattermode)for(s=0;s<t.length;s++)\"scatter\"===(o=t[s]).type&&(r=o._input,i(r,o,e,l));for(s=0;s<t.length;s++){var c=t[s];if(\"scatter\"===c.type){var u=c.fill;if(\"none\"!==u&&\"toself\"!==u&&(c.opacity=void 0,\"tonexty\"===u||\"tonextx\"===u))for(var h=s-1;h>=0;h--){var f=t[h];if(\"scatter\"===f.type&&f.xaxis===c.xaxis&&f.yaxis===c.yaxis){f.opacity=void 0;break}}}}}},40247:function(t,e,r){\"use strict\";var n=r(34809),i=r(33626),a=r(36640),o=r(32660),s=r(64726),l=r(99867),c=r(99669),u=r(382),h=r(24272),f=r(98168),p=r(91602),d=r(663),m=r(54114),g=r(34809).coercePattern;t.exports=function(t,e,r,y){function v(r,i){return n.coerce(t,e,a,r,i)}var x=l(t,e,y,v);if(x||(e.visible=!1),e.visible){c(t,e,y,v),v(\"xhoverformat\"),v(\"yhoverformat\"),v(\"zorder\");var _=u(t,e,y,v);\"group\"===y.scattermode&&void 0===e.orientation&&v(\"orientation\",\"v\");var b=!_&&x<o.PTS_LINESONLY?\"lines+markers\":\"lines\";v(\"text\"),v(\"hovertext\"),v(\"mode\",b),s.hasMarkers(e)&&h(t,e,r,y,v,{gradient:!0}),s.hasLines(e)&&(f(t,e,r,y,v,{backoff:!0}),p(t,e,v),v(\"connectgaps\"),v(\"line.simplify\")),s.hasText(e)&&(v(\"texttemplate\"),d(t,e,y,v));var w=[];(s.hasMarkers(e)||s.hasText(e))&&(v(\"cliponaxis\"),v(\"marker.maxdisplayed\"),w.push(\"points\")),v(\"fill\",_?_.fillDflt:\"none\"),\"none\"!==e.fill&&(m(t,e,r,v,{moduleHasFillgradient:!0}),s.hasLines(e)||p(t,e,v),g(v,\"fillpattern\",e.fillcolor,!1));var T=(e.line||{}).color,k=(e.marker||{}).color;\"tonext\"!==e.fill&&\"toself\"!==e.fill||w.push(\"fills\"),v(\"hoveron\",w.join(\"+\")||\"points\"),\"fills\"!==e.hoveron&&v(\"hovertemplate\");var A=i.getComponentMethod(\"errorbars\",\"supplyDefaults\");A(t,e,T||k||r,{axis:\"y\"}),A(t,e,T||k||r,{axis:\"x\",inherit:\"y\"}),n.coerceSelectionMarkerOpacity(e,v)}}},19326:function(t){\"use strict\";t.exports=function(t){return{valType:\"color\",editType:\"style\",anim:!0}}},54114:function(t,e,r){\"use strict\";var n=r(78766),i=r(34809).isArrayOrTypedArray;t.exports=function(t,e,r,a,o){o||(o={});var s,l=!1;if(e.marker){var c=e.marker.color,u=(e.marker.line||{}).color;c&&!i(c)?l=c:u&&!i(u)&&(l=u)}if(o.moduleHasFillgradient&&\"none\"!==a(\"fillgradient.type\")){a(\"fillgradient.start\"),a(\"fillgradient.stop\");var h=a(\"fillgradient.colorscale\");h&&(s=function(t){for(var e=n.interpolate(t[0][1],t[1][1],.5),r=2;r<t.length;r++){var i=n.interpolate(t[r-1][1],t[r][1],.5);e=n.interpolate(e,i,t[r-1][0]/t[r][0])}return e}(h))}a(\"fillcolor\",n.addOpacity((e.line||{}).color||l||s||r,.5))}},15294:function(t,e,r){\"use strict\";var n=r(29714);t.exports=function(t,e,r){var i={},a={_fullLayout:r},o=n.getFromTrace(a,e,\"x\"),s=n.getFromTrace(a,e,\"y\"),l=t.orig_x;void 0===l&&(l=t.x);var c=t.orig_y;return void 0===c&&(c=t.y),i.xLabel=n.tickText(o,o.c2l(l),!0).text,i.yLabel=n.tickText(s,s.c2l(c),!0).text,i}},11539:function(t,e,r){\"use strict\";var n=r(78766),i=r(64726);t.exports=function(t,e){var r,a;if(\"lines\"===t.mode)return(r=t.line.color)&&n.opacity(r)?r:t.fillcolor;if(\"none\"===t.mode)return t.fill?t.fillcolor:\"\";var o=e.mcc||(t.marker||{}).color,s=e.mlcc||((t.marker||{}).line||{}).color;return(a=o&&n.opacity(o)?o:s&&n.opacity(s)&&(e.mlw||((t.marker||{}).line||{}).width)?s:\"\")?n.opacity(a)<.3?n.addOpacity(a,.3):a:(r=(t.line||{}).color)&&n.opacity(r)&&i.hasLines(t)&&t.line.width?r:t.fillcolor}},36301:function(t,e,r){\"use strict\";var n=r(84391).getAxisGroup;t.exports=function(t,e,r,i){var a=e.orientation,o=e[{v:\"x\",h:\"y\"}[a]+\"axis\"],s=n(r,o)+a,l=r._alignmentOpts||{},c=i(\"alignmentgroup\"),u=l[s];u||(u=l[s]={});var h=u[c];h?h.traces.push(e):h=u[c]={traces:[e],alignmentIndex:Object.keys(u).length,offsetGroups:{}};var f=i(\"offsetgroup\"),p=h.offsetGroups,d=p[f];f&&(d||(d=p[f]={offsetIndex:Object.keys(p).length}),e._offsetIndex=d.offsetIndex)}},37255:function(t,e,r){\"use strict\";var n=r(34809),i=r(32141),a=r(33626),o=r(11539),s=r(78766),l=n.fillText;t.exports=function(t,e,r,c){var u=t.cd,h=u[0].trace,f=t.xa,p=t.ya,d=f.c2p(e),m=p.c2p(r),g=[d,m],y=h.hoveron||\"\",v=-1!==h.mode.indexOf(\"markers\")?3:.5,x=!!h.xperiodalignment,_=!!h.yperiodalignment;if(-1!==y.indexOf(\"points\")){var b=function(t){var e=Math.max(v,t.mrc||0),r=f.c2p(t.x)-d,n=p.c2p(t.y)-m;return Math.max(Math.sqrt(r*r+n*n)-e,1-v/e)},w=i.getDistanceFunction(c,(function(t){if(x){var e=f.c2p(t.xStart),r=f.c2p(t.xEnd);return d>=Math.min(e,r)&&d<=Math.max(e,r)?0:1/0}var n=Math.max(3,t.mrc||0),i=1-1/n,a=Math.abs(f.c2p(t.x)-d);return a<n?i*a/n:a-n+i}),(function(t){if(_){var e=p.c2p(t.yStart),r=p.c2p(t.yEnd);return m>=Math.min(e,r)&&m<=Math.max(e,r)?0:1/0}var n=Math.max(3,t.mrc||0),i=1-1/n,a=Math.abs(p.c2p(t.y)-m);return a<n?i*a/n:a-n+i}),b);if(i.getClosest(u,w,t),!1!==t.index){var T=u[t.index],k=f.c2p(T.x,!0),A=p.c2p(T.y,!0),M=T.mrc||1;t.index=T.i;var S=u[0].t.orientation,E=S&&(T.sNorm||T.s),C=\"h\"===S?E:void 0!==T.orig_x?T.orig_x:T.x,L=\"v\"===S?E:void 0!==T.orig_y?T.orig_y:T.y;return n.extendFlat(t,{color:o(h,T),x0:k-M,x1:k+M,xLabelVal:C,y0:A-M,y1:A+M,yLabelVal:L,spikeDistance:b(T),hovertemplate:h.hovertemplate}),l(T,h,t),a.getComponentMethod(\"errorbars\",\"hoverInfo\")(T,h,t),[t]}}function I(t){if(!t)return!1;var e=t.node();try{var r=new DOMPoint(g[0],g[1]);return e.isPointInFill(r)}catch(t){var n=e.ownerSVGElement.createSVGPoint();return n.x=g[0],n.y=g[1],e.isPointInFill(n)}}if(-1!==y.indexOf(\"fills\")&&h._fillElement&&I(h._fillElement)&&!I(h._fillExclusionElement)){var P=function(t){var e,r,n,i,a,o,s,l,c,u=[],h=1/0,d=-1/0,m=1/0,y=-1/0;for(e=0;e<t.length;e++){var v=t[e];v.contains(g)&&(u.push(v),m=Math.min(m,v.ymin),y=Math.max(y,v.ymax))}if(0===u.length)return null;for(r=((m=Math.max(m,0))+(y=Math.min(y,p._length)))/2,e=0;e<u.length;e++)for(i=u[e].pts,n=1;n<i.length;n++)(l=i[n-1][1])>r!=(c=i[n][1])>=r&&(o=i[n-1][0],s=i[n][0],c-l&&(a=o+(s-o)*(r-l)/(c-l),h=Math.min(h,a),d=Math.max(d,a)));return{x0:h=Math.max(h,0),x1:d=Math.min(d,f._length),y0:r,y1:r}}(h._polygons);null===P&&(P={x0:g[0],x1:g[0],y0:g[1],y1:g[1]});var z=s.defaultLine;return s.opacity(h.fillcolor)?z=h.fillcolor:s.opacity((h.line||{}).color)&&(z=h.line.color),n.extendFlat(t,{distance:t.maxHoverDistance,x0:P.x0,x1:P.x1,y0:P.y0,y1:P.y1,color:z,hovertemplate:!1}),delete t.index,h.text&&!n.isArrayOrTypedArray(h.text)?t.text=String(h.text):t.text=h.name,[t]}}},69693:function(t,e,r){\"use strict\";var n=r(64726);t.exports={hasLines:n.hasLines,hasMarkers:n.hasMarkers,hasText:n.hasText,isBubble:n.isBubble,attributes:r(36640),layoutAttributes:r(26667),supplyDefaults:r(40247),crossTraceDefaults:r(53044),supplyLayoutDefaults:r(12332),calc:r(26544).calc,crossTraceCalc:r(75603),arraysToCalcdata:r(99203),plot:r(36098),colorbar:r(21146),formatLabels:r(15294),style:r(9408).style,styleOnSelect:r(9408).styleOnSelect,hoverPoints:r(37255),selectPoints:r(32665),animatable:!0,moduleType:\"trace\",name:\"scatter\",basePlotModule:r(37703),categories:[\"cartesian\",\"svg\",\"symbols\",\"errorBarsOK\",\"showLegend\",\"scatter-like\",\"zoomScale\"],meta:{}}},26667:function(t){\"use strict\";t.exports={scattermode:{valType:\"enumerated\",values:[\"group\",\"overlay\"],dflt:\"overlay\",editType:\"calc\"},scattergap:{valType:\"number\",min:0,max:1,editType:\"calc\"}}},12332:function(t,e,r){\"use strict\";var n=r(34809),i=r(26667);t.exports=function(t,e){var r,a=\"group\"===e.barmode;\"group\"===e.scattermode&&(\"scattergap\",r=a?e.bargap:.2,n.coerce(t,e,i,\"scattergap\",r))}},98168:function(t,e,r){\"use strict\";var n=r(34809).isArrayOrTypedArray,i=r(65477).hasColorscale,a=r(39356);t.exports=function(t,e,r,o,s,l){l||(l={});var c=(t.marker||{}).color;c&&c._inputArray&&(c=c._inputArray),s(\"line.color\",r),i(t,\"line\")?a(t,e,o,s,{prefix:\"line.\",cLetter:\"c\"}):s(\"line.color\",!n(c)&&c||r),s(\"line.width\"),l.noDash||s(\"line.dash\"),l.backoff&&s(\"line.backoff\")}},5525:function(t,e,r){\"use strict\";var n=r(62203),i=r(63821),a=i.BADNUM,o=i.LOG_CLIP,s=o+.5,l=o-.5,c=r(34809),u=c.segmentsIntersect,h=c.constrain,f=r(32660);t.exports=function(t,e){var r,i,o,p,d,m,g,y,v,x,_,b,w,T,k,A,M,S,E=e.trace||{},C=e.xaxis,L=e.yaxis,I=\"log\"===C.type,P=\"log\"===L.type,z=C._length,O=L._length,D=e.backoff,R=E.marker,F=e.connectGaps,B=e.baseTolerance,N=e.shape,j=\"linear\"===N,U=E.fill&&\"none\"!==E.fill,V=[],q=f.minTolerance,H=t.length,G=new Array(H),Z=0;function W(r){var n=t[r];if(!n)return!1;var i=e.linearized?C.l2p(n.x):C.c2p(n.x),o=e.linearized?L.l2p(n.y):L.c2p(n.y);if(i===a){if(I&&(i=C.c2p(n.x,!0)),i===a)return!1;P&&o===a&&(i*=Math.abs(C._m*O*(C._m>0?s:l)/(L._m*z*(L._m>0?s:l)))),i*=1e3}if(o===a){if(P&&(o=L.c2p(n.y,!0)),o===a)return!1;o*=1e3}return[i,o]}function Y(t,e,r,n){var i=r-t,a=n-e,o=.5-t,s=.5-e,l=i*i+a*a,c=i*o+a*s;if(c>0&&c<l){var u=o*a-s*i;if(u*u<l)return!0}}function X(t,e){var r=t[0]/z,n=t[1]/O,i=Math.max(0,-r,r-1,-n,n-1);return i&&void 0!==M&&Y(r,n,M,S)&&(i=0),i&&e&&Y(r,n,e[0]/z,e[1]/O)&&(i=0),(1+f.toleranceGrowth*i)*B}function $(t,e){var r=t[0]-e[0],n=t[1]-e[1];return Math.sqrt(r*r+n*n)}var J,K,Q,tt,et,rt,nt,it=f.maxScreensAway,at=-z*it,ot=z*(1+it),st=-O*it,lt=O*(1+it),ct=[[at,st,ot,st],[ot,st,ot,lt],[ot,lt,at,lt],[at,lt,at,st]];function ut(t){if(t[0]<at||t[0]>ot||t[1]<st||t[1]>lt)return[h(t[0],at,ot),h(t[1],st,lt)]}function ht(t,e){return t[0]===e[0]&&(t[0]===at||t[0]===ot)||t[1]===e[1]&&(t[1]===st||t[1]===lt)||void 0}function ft(t,e,r){return function(n,i){var a=ut(n),o=ut(i),s=[];if(a&&o&&ht(a,o))return s;a&&s.push(a),o&&s.push(o);var l=2*c.constrain((n[t]+i[t])/2,e,r)-((a||n)[t]+(o||i)[t]);return l&&((a&&o?l>0==a[t]>o[t]?a:o:a||o)[t]+=l),s}}function pt(t){var e=t[0],r=t[1],n=e===G[Z-1][0],i=r===G[Z-1][1];if(!n||!i)if(Z>1){var a=e===G[Z-2][0],o=r===G[Z-2][1];n&&(e===at||e===ot)&&a?o?Z--:G[Z-1]=t:i&&(r===st||r===lt)&&o?a?Z--:G[Z-1]=t:G[Z++]=t}else G[Z++]=t}function dt(t){G[Z-1][0]!==t[0]&&G[Z-1][1]!==t[1]&&pt([Q,tt]),pt(t),et=null,Q=tt=0}\"linear\"===N||\"spline\"===N?nt=function(t,e){for(var r=[],n=0,i=0;i<4;i++){var a=ct[i],o=u(t[0],t[1],e[0],e[1],a[0],a[1],a[2],a[3]);o&&(!n||Math.abs(o.x-r[0][0])>1||Math.abs(o.y-r[0][1])>1)&&(o=[o.x,o.y],n&&$(o,t)<$(r[0],t)?r.unshift(o):r.push(o),n++)}return r}:\"hv\"===N||\"vh\"===N?nt=function(t,e){var r=[],n=ut(t),i=ut(e);return n&&i&&ht(n,i)||(n&&r.push(n),i&&r.push(i)),r}:\"hvh\"===N?nt=ft(0,at,ot):\"vhv\"===N&&(nt=ft(1,st,lt));var mt=c.isArrayOrTypedArray(R);function gt(e){if(e&&D&&(e.i=r,e.d=t,e.trace=E,e.marker=mt?R[e.i]:R,e.backoff=D),M=e[0]/z,S=e[1]/O,J=e[0]<at?at:e[0]>ot?ot:0,K=e[1]<st?st:e[1]>lt?lt:0,J||K){if(Z)if(et){var n=nt(et,e);n.length>1&&(dt(n[0]),G[Z++]=n[1])}else rt=nt(G[Z-1],e)[0],G[Z++]=rt;else G[Z++]=[J||e[0],K||e[1]];var i=G[Z-1];J&&K&&(i[0]!==J||i[1]!==K)?(et&&(Q!==J&&tt!==K?pt(Q&&tt?(a=et,s=(o=e)[0]-a[0],l=(o[1]-a[1])/s,(a[1]*o[0]-o[1]*a[0])/s>0?[l>0?at:ot,lt]:[l>0?ot:at,st]):[Q||J,tt||K]):Q&&tt&&pt([Q,tt])),pt([J,K])):Q-J&&tt-K&&pt([J||Q,K||tt]),et=e,Q=J,tt=K}else et&&dt(nt(et,e)[0]),G[Z++]=e;var a,o,s,l}for(r=0;r<H;r++)if(i=W(r)){for(Z=0,et=null,gt(i),r++;r<H;r++){if(!(p=W(r))){if(F)continue;break}if(j&&e.simplify){var yt=W(r+1);if(x=$(p,i),U&&(0===Z||Z===H-1)||!(x<X(p,yt)*q)){for(y=[(p[0]-i[0])/x,(p[1]-i[1])/x],d=i,_=x,b=T=k=0,g=!1,o=p,r++;r<t.length;r++){if(m=yt,yt=W(r+1),!m){if(F)continue;break}if(A=(v=[m[0]-i[0],m[1]-i[1]])[0]*y[1]-v[1]*y[0],T=Math.min(T,A),(k=Math.max(k,A))-T>X(m,yt))break;o=m,(w=v[0]*y[0]+v[1]*y[1])>_?(_=w,p=m,g=!1):w<b&&(b=w,d=m,g=!0)}if(g?(gt(p),o!==d&&gt(d)):(d!==i&&gt(d),o!==p&&gt(p)),gt(o),r>=t.length||!m)break;gt(m),i=m}}else gt(p)}et&&pt([Q||et[0],tt||et[1]]),V.push(G.slice(0,Z))}var vt=N.slice(N.length-1);if(D&&\"h\"!==vt&&\"v\"!==vt){for(var xt=!1,_t=-1,bt=[],wt=0;wt<V.length;wt++)for(var Tt=0;Tt<V[wt].length-1;Tt++){var kt=V[wt][Tt],At=V[wt][Tt+1],Mt=n.applyBackoff(At,kt);Mt[0]===At[0]&&Mt[1]===At[1]||(xt=!0),bt[_t+1]||(bt[++_t]=[kt,[Mt[0],Mt[1]]])}return xt?bt:V}return V}},91602:function(t){\"use strict\";t.exports=function(t,e,r){\"spline\"===r(\"line.shape\")&&r(\"line.smoothing\")}},17210:function(t){\"use strict\";var e={tonextx:1,tonexty:1,tonext:1};t.exports=function(t,r,n){var i,a,o,s,l,c={},u=!1,h=-1,f=0,p=-1;for(a=0;a<n.length;a++)(o=(i=n[a][0].trace).stackgroup||\"\")?o in c?l=c[o]:(l=c[o]=f,f++):i.fill in e&&p>=0?l=p:(l=p=f,f++),l<h&&(u=!0),i._groupIndex=h=l;var d=n.slice();u&&d.sort((function(t,e){var r=t[0].trace,n=e[0].trace;return r._groupIndex-n._groupIndex||r.index-n.index}));var m={};for(a=0;a<d.length;a++)o=(i=d[a][0].trace).stackgroup||\"\",!0===i.visible?(i._nexttrace=null,i.fill in e&&(s=m[o],i._prevtrace=s||null,s&&(s._nexttrace=i)),i._ownfill=i.fill&&(\"tozero\"===i.fill.substr(0,6)||\"toself\"===i.fill||\"to\"===i.fill.substr(0,2)&&!i._prevtrace),m[o]=i):i._prevtrace=i._nexttrace=i._ownfill=null;return d}},92527:function(t,e,r){\"use strict\";var n=r(10721);t.exports=function(t,e){e||(e=2);var r=t.marker,i=r.sizeref||1,a=r.sizemin||0,o=\"area\"===r.sizemode?function(t){return Math.sqrt(t/i)}:function(t){return t/i};return function(t){var r=o(t/e);return n(r)&&r>0?Math.max(r,a):0}}},21146:function(t){\"use strict\";t.exports={container:\"marker\",min:\"cmin\",max:\"cmax\"}},24272:function(t,e,r){\"use strict\";var n=r(78766),i=r(65477).hasColorscale,a=r(39356),o=r(64726);t.exports=function(t,e,r,s,l,c){var u=o.isBubble(t),h=(t.line||{}).color;c=c||{},h&&(r=h),l(\"marker.symbol\"),l(\"marker.opacity\",u?.7:1),l(\"marker.size\"),c.noAngle||(l(\"marker.angle\"),c.noAngleRef||l(\"marker.angleref\"),c.noStandOff||l(\"marker.standoff\")),l(\"marker.color\",r),i(t,\"marker\")&&a(t,e,s,l,{prefix:\"marker.\",cLetter:\"c\"}),c.noSelect||(l(\"selected.marker.color\"),l(\"unselected.marker.color\"),l(\"selected.marker.size\"),l(\"unselected.marker.size\")),c.noLine||(l(\"marker.line.color\",h&&!Array.isArray(h)&&e.marker.color!==h?h:u?n.background:n.defaultLine),i(t,\"marker.line\")&&a(t,e,s,l,{prefix:\"marker.line.\",cLetter:\"c\"}),l(\"marker.line.width\",u?1:0)),u&&(l(\"marker.sizeref\"),l(\"marker.sizemin\"),l(\"marker.sizemode\")),c.gradient&&\"none\"!==l(\"marker.gradient.type\")&&l(\"marker.gradient.color\")}},99669:function(t,e,r){\"use strict\";var n=r(34809).dateTick0,i=r(63821).ONEWEEK;function a(t,e){return n(e,t%i==0?1:0)}t.exports=function(t,e,r,n,i){if(i||(i={x:!0,y:!0}),i.x){var o=n(\"xperiod\");o&&(n(\"xperiod0\",a(o,e.xcalendar)),n(\"xperiodalignment\"))}if(i.y){var s=n(\"yperiod\");s&&(n(\"yperiod0\",a(s,e.ycalendar)),n(\"yperiodalignment\"))}}},36098:function(t,e,r){\"use strict\";var n=r(45568),i=r(33626),a=r(34809),o=a.ensureSingle,s=a.identity,l=r(62203),c=r(64726),u=r(5525),h=r(17210),f=r(80899).tester;function p(t,e,r,h,p,d,m){var g,y=t._context.staticPlot;!function(t,e,r,i,o){var s=r.xaxis,l=r.yaxis,u=n.extent(a.simpleMap(s.range,s.r2c)),h=n.extent(a.simpleMap(l.range,l.r2c)),f=i[0].trace;if(c.hasMarkers(f)){var p=f.marker.maxdisplayed;if(0!==p){var d=i.filter((function(t){return t.x>=u[0]&&t.x<=u[1]&&t.y>=h[0]&&t.y<=h[1]})),m=Math.ceil(d.length/p),g=0;o.forEach((function(t,r){var n=t[0].trace;c.hasMarkers(n)&&n.marker.maxdisplayed>0&&r<e&&g++}));var y=Math.round(g*m/3+Math.floor(g/3)*m/7.1);i.forEach((function(t){delete t.vis})),d.forEach((function(t,e){0===Math.round((e+y)%m)&&(t.vis=!0)}))}}}(0,e,r,h,p);var v=!!m&&m.duration>0;function x(t){return v?t.transition():t}var _=r.xaxis,b=r.yaxis,w=h[0].trace,T=w.line,k=n.select(d),A=o(k,\"g\",\"errorbars\"),M=o(k,\"g\",\"lines\"),S=o(k,\"g\",\"points\"),E=o(k,\"g\",\"text\");if(i.getComponentMethod(\"errorbars\",\"plot\")(t,A,r,m),!0===w.visible){var C,L;x(k).style(\"opacity\",w.opacity);var I,P,z=w.fill.charAt(w.fill.length-1);\"x\"!==z&&\"y\"!==z&&(z=\"\"),\"y\"===z?(I=1,P=b.c2p(0,!0)):\"x\"===z&&(I=0,P=_.c2p(0,!0)),h[0][r.isRangePlot?\"nodeRangePlot3\":\"node3\"]=k;var O,D,R=\"\",F=[],B=w._prevtrace,N=null,j=null;B&&(R=B._prevRevpath||\"\",L=B._nextFill,F=B._ownPolygons,N=B._fillsegments,j=B._fillElement);var U,V,q,H,G,Z,W=\"\",Y=\"\",X=[];w._polygons=[];var $=[],J=[],K=a.noop;if(C=w._ownFill,c.hasLines(w)||\"none\"!==w.fill){L&&L.datum(h),-1!==[\"hv\",\"vh\",\"hvh\",\"vhv\"].indexOf(T.shape)?(U=l.steps(T.shape),V=l.steps(T.shape.split(\"\").reverse().join(\"\"))):U=V=\"spline\"===T.shape?function(t){var e=t[t.length-1];return t.length>1&&t[0][0]===e[0]&&t[0][1]===e[1]?l.smoothclosed(t.slice(1),T.smoothing):l.smoothopen(t,T.smoothing)}:function(t){return\"M\"+t.join(\"L\")},q=function(t){return V(t.reverse())},J=u(h,{xaxis:_,yaxis:b,trace:w,connectGaps:w.connectgaps,baseTolerance:Math.max(T.width||1,3)/4,shape:T.shape,backoff:T.backoff,simplify:T.simplify,fill:w.fill}),$=new Array(J.length);var Q=0;for(g=0;g<J.length;g++){var tt,et=J[g];tt&&z?tt.push.apply(tt,et):(tt=et.slice(),$[Q]=tt,Q++)}w._fillElement=null,w._fillExclusionElement=j,w._fillsegments=$.slice(0,Q),$=w._fillsegments,J.length&&(H=J[0][0].slice(),Z=(G=J[J.length-1])[G.length-1].slice()),K=function(t){return function(e){if(O=U(e),D=q(e),W?z?(W+=\"L\"+O.substr(1),Y=D+\"L\"+Y.substr(1)):(W+=\"Z\"+O,Y=D+\"Z\"+Y):(W=O,Y=D),c.hasLines(w)){var r=n.select(this);if(r.datum(h),t)x(r.style(\"opacity\",0).attr(\"d\",O).call(l.lineGroupStyle)).style(\"opacity\",1);else{var i=x(r);i.attr(\"d\",O),l.singleLineStyle(h,i)}}}}}var rt=M.selectAll(\".js-line\").data(J);x(rt.exit()).style(\"opacity\",0).remove(),rt.each(K(!1)),rt.enter().append(\"path\").classed(\"js-line\",!0).style(\"vector-effect\",y?\"none\":\"non-scaling-stroke\").call(l.lineGroupStyle).each(K(!0)),l.setClipUrl(rt,r.layerClipId,t);var nt=function(){var t=new Array($.length);for(g=0;g<$.length;g++)t[g]=f($[g]);return t},it=function(t){var e,r;if(t&&0!==t.length){for(e=new Array(t.length-1+$.length),r=0;r<t.length-1;r++)e[r]=f(t[r]);var n=t[t.length-1].slice();for(n.reverse(),r=0;r<$.length;r++)e[t.length-1+r]=f($[r].concat(n))}else for(e=new Array($.length),r=0;r<$.length;r++){var i=$[r][0].slice(),a=$[r][$[r].length-1].slice();i[I]=a[I]=P;var o=[a,i].concat($[r]);e[r]=f(o)}return e};J.length?(C?(C.datum(h),H&&Z&&(z?(H[I]=Z[I]=P,x(C).attr(\"d\",\"M\"+Z+\"L\"+H+\"L\"+W.substr(1)).call(l.singleFillStyle,t),X=it(null)):(x(C).attr(\"d\",W+\"Z\").call(l.singleFillStyle,t),X=nt())),w._polygons=X,w._fillElement=C):L&&(\"tonext\"===w.fill.substr(0,6)&&W&&R?(\"tonext\"===w.fill?(x(L).attr(\"d\",W+\"Z\"+R+\"Z\").call(l.singleFillStyle,t),X=nt(),w._polygons=X.concat(F)):(x(L).attr(\"d\",W+\"L\"+R.substr(1)+\"Z\").call(l.singleFillStyle,t),X=it(N),w._polygons=X),w._fillElement=L):ot(L)),w._prevRevpath=Y):(C?ot(C):L&&ot(L),w._prevRevpath=null),w._ownPolygons=X,S.datum(h),E.datum(h),function(e,i,a){var o,u=a[0].trace,h=c.hasMarkers(u),f=c.hasText(u),p=ht(u),d=ft,m=ft;if(h||f){var g=s,y=u.stackgroup,w=y&&\"infer zero\"===t._fullLayout._scatterStackOpts[_._id+b._id][y].stackgaps;u.marker.maxdisplayed||u._needsCull?g=w?lt:st:y&&!w&&(g=ct),h&&(d=g),f&&(m=g)}var T,k=(o=e.selectAll(\"path.point\").data(d,p)).enter().append(\"path\").classed(\"point\",!0);v&&k.call(l.pointStyle,u,t).call(l.translatePoints,_,b).style(\"opacity\",0).transition().style(\"opacity\",1),o.order(),h&&(T=l.makePointStyleFns(u)),o.each((function(e){var i=n.select(this),a=x(i);l.translatePoint(e,a,_,b)?(l.singlePointStyle(e,a,u,T,t),r.layerClipId&&l.hideOutsideRangePoint(e,a,_,b,u.xcalendar,u.ycalendar),u.customdata&&i.classed(\"plotly-customdata\",null!==e.data&&void 0!==e.data)):a.remove()})),v?o.exit().transition().style(\"opacity\",0).remove():o.exit().remove(),(o=i.selectAll(\"g\").data(m,p)).enter().append(\"g\").classed(\"textpoint\",!0).append(\"text\"),o.order(),o.each((function(t){var e=n.select(this),i=x(e.select(\"text\"));l.translatePoint(t,i,_,b)?r.layerClipId&&l.hideOutsideRangePoint(t,e,_,b,u.xcalendar,u.ycalendar):e.remove()})),o.selectAll(\"text\").call(l.textPointStyle,u,t).each((function(t){var e=_.c2p(t.x),r=b.c2p(t.y);n.select(this).selectAll(\"tspan.line\").each((function(){x(n.select(this)).attr({x:e,y:r})}))})),o.exit().remove()}(S,E,h);var at=!1===w.cliponaxis?null:r.layerClipId;l.setClipUrl(S,at,t),l.setClipUrl(E,at,t)}function ot(t){x(t).attr(\"d\",\"M0,0Z\")}function st(t){return t.filter((function(t){return!t.gap&&t.vis}))}function lt(t){return t.filter((function(t){return t.vis}))}function ct(t){return t.filter((function(t){return!t.gap}))}function ut(t){return t.id}function ht(t){if(t.ids)return ut}function ft(){return!1}}t.exports=function(t,e,r,i,a,c){var u,f,d=!a,m=!!a&&a.duration>0,g=h(t,e,r);(u=i.selectAll(\"g.trace\").data(g,(function(t){return t[0].trace.uid}))).enter().append(\"g\").attr(\"class\",(function(t){return\"trace scatter trace\"+t[0].trace.uid})).style(\"stroke-miterlimit\",2),u.order(),function(t,e,r){e.each((function(e){var i=o(n.select(this),\"g\",\"fills\");l.setClipUrl(i,r.layerClipId,t);var a=e[0].trace,c=[];a._ownfill&&c.push(\"_ownFill\"),a._nexttrace&&c.push(\"_nextFill\");var u=i.selectAll(\"g\").data(c,s);u.enter().append(\"g\"),u.exit().each((function(t){a[t]=null})).remove(),u.order().each((function(t){a[t]=o(n.select(this),\"path\",\"js-fill\")}))}))}(t,u,e),m?(c&&(f=c()),n.transition().duration(a.duration).ease(a.easing).each(\"end\",(function(){f&&f()})).each(\"interrupt\",(function(){f&&f()})).each((function(){i.selectAll(\"g.trace\").each((function(r,n){p(t,n,e,r,g,this,a)}))}))):u.each((function(r,n){p(t,n,e,r,g,this,a)})),d&&u.exit().remove(),i.selectAll(\"path:not([d])\").remove()}},32665:function(t,e,r){\"use strict\";var n=r(64726);t.exports=function(t,e){var r,i,a,o,s=t.cd,l=t.xaxis,c=t.yaxis,u=[],h=s[0].trace;if(!n.hasMarkers(h)&&!n.hasText(h))return[];if(!1===e)for(r=0;r<s.length;r++)s[r].selected=0;else for(r=0;r<s.length;r++)i=s[r],a=l.c2p(i.x),o=c.c2p(i.y),null!==i.i&&e.contains([a,o],!1,r,t)?(u.push({pointNumber:i.i,x:l.c2d(i.x),y:c.c2d(i.y)}),i.selected=1):i.selected=0;return u}},382:function(t){\"use strict\";var e=[\"orientation\",\"groupnorm\",\"stackgaps\"];t.exports=function(t,r,n,i){var a=n._scatterStackOpts,o=i(\"stackgroup\");if(o){var s=r.xaxis+r.yaxis,l=a[s];l||(l=a[s]={});var c=l[o],u=!1;c?c.traces.push(r):(c=l[o]={traceIndices:[],traces:[r]},u=!0);for(var h={orientation:r.x&&!r.y?\"h\":\"v\"},f=0;f<e.length;f++){var p=e[f],d=p+\"Found\";if(!c[d]){var m=void 0!==t[p],g=\"orientation\"===p;if((m||u)&&(c[p]=i(p,h[p]),g&&(c.fillDflt=\"h\"===c[p]?\"tonextx\":\"tonexty\"),m&&(c[d]=!0,!u&&(delete c.traces[0][p],g))))for(var y=0;y<c.traces.length-1;y++){var v=c.traces[y];v._input.fill!==v.fill&&(v.fill=c.fillDflt)}}}return c}}},9408:function(t,e,r){\"use strict\";var n=r(45568),i=r(62203),a=r(33626);function o(t,e,r){i.pointStyle(t.selectAll(\"path.point\"),e,r)}function s(t,e,r){i.textPointStyle(t.selectAll(\"text\"),e,r)}t.exports={style:function(t){var e=n.select(t).selectAll(\"g.trace.scatter\");e.style(\"opacity\",(function(t){return t[0].trace.opacity})),e.selectAll(\"g.points\").each((function(e){o(n.select(this),e.trace||e[0].trace,t)})),e.selectAll(\"g.text\").each((function(e){s(n.select(this),e.trace||e[0].trace,t)})),e.selectAll(\"g.trace path.js-line\").call(i.lineGroupStyle),e.selectAll(\"g.trace path.js-fill\").call(i.fillGroupStyle,t,!1),a.getComponentMethod(\"errorbars\",\"style\")(e)},stylePoints:o,styleText:s,styleOnSelect:function(t,e,r){var n=e[0].trace;n.selectedpoints?(i.selectedPointStyle(r.selectAll(\"path.point\"),n),i.selectedTextStyle(r.selectAll(\"text\"),n)):(o(r,n,t),s(r,n,t))}}},64726:function(t,e,r){\"use strict\";var n=r(34809),i=r(87800).isTypedArraySpec;t.exports={hasLines:function(t){return t.visible&&t.mode&&-1!==t.mode.indexOf(\"lines\")},hasMarkers:function(t){return t.visible&&(t.mode&&-1!==t.mode.indexOf(\"markers\")||\"splom\"===t.type)},hasText:function(t){return t.visible&&t.mode&&-1!==t.mode.indexOf(\"text\")},isBubble:function(t){var e=t.marker;return n.isPlainObject(e)&&(n.isArrayOrTypedArray(e.size)||i(e.size))}}},663:function(t,e,r){\"use strict\";var n=r(34809);t.exports=function(t,e,r,i,a){a=a||{},i(\"textposition\"),n.coerceFont(i,\"textfont\",a.font||r.font,a),a.noSelect||(i(\"selected.textfont.color\"),i(\"unselected.textfont.color\"))}},99867:function(t,e,r){\"use strict\";var n=r(34809),i=r(33626);t.exports=function(t,e,r,a){var o,s=a(\"x\"),l=a(\"y\");if(i.getComponentMethod(\"calendars\",\"handleTraceDefaults\")(t,e,[\"x\",\"y\"],r),s){var c=n.minRowLength(s);l?o=Math.min(c,n.minRowLength(l)):(o=c,a(\"y0\"),a(\"dy\"))}else{if(!l)return 0;o=n.minRowLength(l),a(\"x0\"),a(\"dx\")}return e._length=o,o}},14117:function(t,e,r){\"use strict\";var n=r(36640),i=r(80337),a=r(87163),o=r(80712).axisHoverFormat,s=r(3208).rb,l=r(3208).ay,c=r(9829),u=r(84770),h=r(49467),f=r(93049).extendFlat,p=r(13582).overrideAll,d=r(62994),m=n.line,g=n.marker,y=g.line,v=f({width:m.width,dash:{valType:\"enumerated\",values:d(u),dflt:\"solid\"}},a(\"line\")),x=t.exports=p({x:n.x,y:n.y,z:{valType:\"data_array\"},text:f({},n.text,{}),texttemplate:l({},{}),hovertext:f({},n.hovertext,{}),hovertemplate:s(),xhoverformat:o(\"x\"),yhoverformat:o(\"y\"),zhoverformat:o(\"z\"),mode:f({},n.mode,{dflt:\"lines+markers\"}),surfaceaxis:{valType:\"enumerated\",values:[-1,0,1,2],dflt:-1},surfacecolor:{valType:\"color\"},projection:{x:{show:{valType:\"boolean\",dflt:!1},opacity:{valType:\"number\",min:0,max:1,dflt:1},scale:{valType:\"number\",min:0,max:10,dflt:2/3}},y:{show:{valType:\"boolean\",dflt:!1},opacity:{valType:\"number\",min:0,max:1,dflt:1},scale:{valType:\"number\",min:0,max:10,dflt:2/3}},z:{show:{valType:\"boolean\",dflt:!1},opacity:{valType:\"number\",min:0,max:1,dflt:1},scale:{valType:\"number\",min:0,max:10,dflt:2/3}}},connectgaps:n.connectgaps,line:v,marker:f({symbol:{valType:\"enumerated\",values:d(h),dflt:\"circle\",arrayOk:!0},size:f({},g.size,{dflt:8}),sizeref:g.sizeref,sizemin:g.sizemin,sizemode:g.sizemode,opacity:f({},g.opacity,{arrayOk:!1}),colorbar:g.colorbar,line:f({width:f({},y.width,{arrayOk:!1})},a(\"marker.line\"))},a(\"marker\")),textposition:f({},n.textposition,{dflt:\"top center\"}),textfont:i({noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,editType:\"calc\",colorEditType:\"style\",arrayOk:!0,variantValues:[\"normal\",\"small-caps\"]}),opacity:c.opacity,hoverinfo:f({},c.hoverinfo)},\"calc\",\"nested\");x.x.editType=x.y.editType=x.z.editType=\"calc+clearAxisTypes\"},37593:function(t,e,r){\"use strict\";var n=r(99203),i=r(77272);t.exports=function(t,e){var r=[{x:!1,y:!1,trace:e,t:{}}];return n(r,e),i(t,e),r}},95447:function(t,e,r){\"use strict\";var n=r(33626);function i(t,e,r,i){if(!e||!e.visible)return null;for(var a=n.getComponentMethod(\"errorbars\",\"makeComputeError\")(e),o=new Array(t.length),s=0;s<t.length;s++){var l=a(+t[s],s);if(\"log\"===i.type){var c=i.c2l(t[s]),u=t[s]-l[0],h=t[s]+l[1];if(o[s]=[(i.c2l(u,!0)-c)*r,(i.c2l(h,!0)-c)*r],u>0){var f=i.c2l(u);i._lowerLogErrorBound||(i._lowerLogErrorBound=f),i._lowerErrorBound=Math.min(i._lowerLogErrorBound,f)}}else o[s]=[-l[0]*r,l[1]*r]}return o}t.exports=function(t,e,r){var n=[i(t.x,t.error_x,e[0],r.xaxis),i(t.y,t.error_y,e[1],r.yaxis),i(t.z,t.error_z,e[2],r.zaxis)],a=function(t){for(var e=0;e<t.length;e++)if(t[e])return t[e].length;return 0}(n);if(0===a)return null;for(var o=new Array(a),s=0;s<a;s++){for(var l=[[0,0,0],[0,0,0]],c=0;c<3;c++)if(n[c])for(var u=0;u<2;u++)l[u][c]=n[c][s][u];o[s]=l}return o}},16533:function(t,e,r){\"use strict\";var n=r(99098).gl_line3d,i=r(99098).gl_scatter3d,a=r(99098).gl_error3d,o=r(99098).gl_mesh3d,s=r(99098).delaunay_triangulate,l=r(34809),c=r(55010),u=r(46998).formatColor,h=r(92527),f=r(84770),p=r(49467),d=r(29714),m=r(36040).appendArrayPointValue,g=r(95447);function y(t,e){this.scene=t,this.uid=e,this.linePlot=null,this.scatterPlot=null,this.errorBars=null,this.textMarkers=null,this.delaunayMesh=null,this.color=null,this.mode=\"\",this.dataPoints=[],this.axesBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.textLabels=null,this.data=null}var v=y.prototype;function x(t){return null==t?0:t.indexOf(\"left\")>-1?-1:t.indexOf(\"right\")>-1?1:0}function _(t){return null==t?0:t.indexOf(\"top\")>-1?-1:t.indexOf(\"bottom\")>-1?1:0}function b(t,e){return e(4*t)}function w(t){return p[t]}function T(t,e,r,n,i){var a=null;if(l.isArrayOrTypedArray(t)){a=[];for(var o=0;o<e;o++)void 0===t[o]?a[o]=n:a[o]=r(t[o],i)}else a=r(t,l.identity);return a}function k(t){if(l.isArrayOrTypedArray(t)){var e=t[0];return l.isArrayOrTypedArray(e)&&(t=e),\"rgb(\"+t.slice(0,3).map((function(t){return Math.round(255*t)}))+\")\"}return null}function A(t){return l.isArrayOrTypedArray(t)?4===t.length&&\"number\"==typeof t[0]?k(t):t.map(k):null}v.handlePick=function(t){if(t.object&&(t.object===this.linePlot||t.object===this.delaunayMesh||t.object===this.textMarkers||t.object===this.scatterPlot)){var e=t.index=t.data.index;return t.object.highlight&&t.object.highlight(null),this.scatterPlot&&(t.object=this.scatterPlot,this.scatterPlot.highlight(t.data)),t.textLabel=\"\",this.textLabels&&(l.isArrayOrTypedArray(this.textLabels)?(this.textLabels[e]||0===this.textLabels[e])&&(t.textLabel=this.textLabels[e]):t.textLabel=this.textLabels),t.traceCoordinate=[this.data.x[e],this.data.y[e],this.data.z[e]],!0}},v.update=function(t){var e,r,p,y,v=this.scene.glplot.gl,k=f.solid;this.data=t;var M=function(t,e){var r,n,i,a,o,s,f=[],p=t.fullSceneLayout,y=t.dataScale,v=p.xaxis,k=p.yaxis,A=p.zaxis,M=e.marker,S=e.line,E=e.x||[],C=e.y||[],L=e.z||[],I=E.length,P=e.xcalendar,z=e.ycalendar,O=e.zcalendar;for(o=0;o<I;o++)r=v.d2l(E[o],0,P)*y[0],n=k.d2l(C[o],0,z)*y[1],i=A.d2l(L[o],0,O)*y[2],f[o]=[r,n,i];if(Array.isArray(e.text))s=e.text;else if(l.isTypedArray(e.text))s=Array.from(e.text);else if(void 0!==e.text)for(s=new Array(I),o=0;o<I;o++)s[o]=e.text;function D(t,e){var r=p[t];return d.tickText(r,r.d2l(e),!0).text}var R=e.texttemplate;if(R){var F=t.fullLayout._d3locale,B=Array.isArray(R),N=B?Math.min(R.length,I):I,j=B?function(t){return R[t]}:function(){return R};for(s=new Array(N),o=0;o<N;o++){var U={x:E[o],y:C[o],z:L[o]},V={xLabel:D(\"xaxis\",E[o]),yLabel:D(\"yaxis\",C[o]),zLabel:D(\"zaxis\",L[o])},q={};m(q,e,o);var H=e._meta||{};s[o]=l.texttemplateString(j(o),V,F,q,U,H)}}if(a={position:f,mode:e.mode,text:s},\"line\"in e&&(a.lineColor=u(S,1,I),a.lineWidth=S.width,a.lineDashes=S.dash),\"marker\"in e){var G=h(e);a.scatterColor=u(M,1,I),a.scatterSize=T(M.size,I,b,20,G),a.scatterMarker=T(M.symbol,I,w,\"●\"),a.scatterLineWidth=M.line.width,a.scatterLineColor=u(M.line,1,I),a.scatterAngle=0}\"textposition\"in e&&(a.textOffset=function(t){var e=[0,0];if(Array.isArray(t))for(var r=0;r<t.length;r++)e[r]=[0,0],t[r]&&(e[r][0]=x(t[r]),e[r][1]=_(t[r]));else e[0]=x(t),e[1]=_(t);return e}(e.textposition),a.textColor=u(e.textfont,1,I),a.textSize=T(e.textfont.size,I,l.identity,12),a.textFontFamily=e.textfont.family,a.textFontWeight=e.textfont.weight,a.textFontStyle=e.textfont.style,a.textFontVariant=e.textfont.variant,a.textAngle=0);var Z=[\"x\",\"y\",\"z\"];for(a.project=[!1,!1,!1],a.projectScale=[1,1,1],a.projectOpacity=[1,1,1],o=0;o<3;++o){var W=e.projection[Z[o]];(a.project[o]=W.show)&&(a.projectOpacity[o]=W.opacity,a.projectScale[o]=W.scale)}a.errorBounds=g(e,y,p);var Y=function(t){for(var e=[0,0,0],r=[[0,0,0],[0,0,0],[0,0,0]],n=[1,1,1],i=0;i<3;i++){var a=t[i];a&&!1!==a.copy_zstyle&&!1!==t[2].visible&&(a=t[2]),a&&a.visible&&(e[i]=a.width/2,r[i]=c(a.color),n[i]=a.thickness)}return{capSize:e,color:r,lineWidth:n}}([e.error_x,e.error_y,e.error_z]);return a.errorColor=Y.color,a.errorLineWidth=Y.lineWidth,a.errorCapSize=Y.capSize,a.delaunayAxis=e.surfaceaxis,a.delaunayColor=c(e.surfacecolor),a}(this.scene,t);\"mode\"in M&&(this.mode=M.mode),\"lineDashes\"in M&&M.lineDashes in f&&(k=f[M.lineDashes]),this.color=A(M.scatterColor)||A(M.lineColor),this.dataPoints=M.position,e={gl:this.scene.glplot.gl,position:M.position,color:M.lineColor,lineWidth:M.lineWidth||1,dashes:k[0],dashScale:k[1],opacity:t.opacity,connectGaps:t.connectgaps},-1!==this.mode.indexOf(\"lines\")?this.linePlot?this.linePlot.update(e):(this.linePlot=n(e),this.linePlot._trace=this,this.scene.glplot.add(this.linePlot)):this.linePlot&&(this.scene.glplot.remove(this.linePlot),this.linePlot.dispose(),this.linePlot=null);var S=t.opacity;if(t.marker&&void 0!==t.marker.opacity&&(S*=t.marker.opacity),r={gl:this.scene.glplot.gl,position:M.position,color:M.scatterColor,size:M.scatterSize,glyph:M.scatterMarker,opacity:S,orthographic:!0,lineWidth:M.scatterLineWidth,lineColor:M.scatterLineColor,project:M.project,projectScale:M.projectScale,projectOpacity:M.projectOpacity},-1!==this.mode.indexOf(\"markers\")?this.scatterPlot?this.scatterPlot.update(r):(this.scatterPlot=i(r),this.scatterPlot._trace=this,this.scatterPlot.highlightScale=1,this.scene.glplot.add(this.scatterPlot)):this.scatterPlot&&(this.scene.glplot.remove(this.scatterPlot),this.scatterPlot.dispose(),this.scatterPlot=null),y={gl:this.scene.glplot.gl,position:M.position,glyph:M.text,color:M.textColor,size:M.textSize,angle:M.textAngle,alignment:M.textOffset,font:M.textFontFamily,fontWeight:M.textFontWeight,fontStyle:M.textFontStyle,fontVariant:M.textFontVariant,orthographic:!0,lineWidth:0,project:!1,opacity:t.opacity},this.textLabels=t.hovertext||t.text,-1!==this.mode.indexOf(\"text\")?this.textMarkers?this.textMarkers.update(y):(this.textMarkers=i(y),this.textMarkers._trace=this,this.textMarkers.highlightScale=1,this.scene.glplot.add(this.textMarkers)):this.textMarkers&&(this.scene.glplot.remove(this.textMarkers),this.textMarkers.dispose(),this.textMarkers=null),p={gl:this.scene.glplot.gl,position:M.position,color:M.errorColor,error:M.errorBounds,lineWidth:M.errorLineWidth,capSize:M.errorCapSize,opacity:t.opacity},this.errorBars?M.errorBounds?this.errorBars.update(p):(this.scene.glplot.remove(this.errorBars),this.errorBars.dispose(),this.errorBars=null):M.errorBounds&&(this.errorBars=a(p),this.errorBars._trace=this,this.scene.glplot.add(this.errorBars)),M.delaunayAxis>=0){var E=function(t,e,r){var n,i=(r+1)%3,a=(r+2)%3,o=[],l=[];for(n=0;n<t.length;++n){var c=t[n];!isNaN(c[i])&&isFinite(c[i])&&!isNaN(c[a])&&isFinite(c[a])&&(o.push([c[i],c[a]]),l.push(n))}var u=s(o);for(n=0;n<u.length;++n)for(var h=u[n],f=0;f<h.length;++f)h[f]=l[h[f]];return{positions:t,cells:u,meshColor:e}}(M.position,M.delaunayColor,M.delaunayAxis);E.opacity=t.opacity,this.delaunayMesh?this.delaunayMesh.update(E):(E.gl=v,this.delaunayMesh=o(E),this.delaunayMesh._trace=this,this.scene.glplot.add(this.delaunayMesh))}else this.delaunayMesh&&(this.scene.glplot.remove(this.delaunayMesh),this.delaunayMesh.dispose(),this.delaunayMesh=null)},v.dispose=function(){this.linePlot&&(this.scene.glplot.remove(this.linePlot),this.linePlot.dispose()),this.scatterPlot&&(this.scene.glplot.remove(this.scatterPlot),this.scatterPlot.dispose()),this.errorBars&&(this.scene.glplot.remove(this.errorBars),this.errorBars.dispose()),this.textMarkers&&(this.scene.glplot.remove(this.textMarkers),this.textMarkers.dispose()),this.delaunayMesh&&(this.scene.glplot.remove(this.delaunayMesh),this.delaunayMesh.dispose())},t.exports=function(t,e){var r=new y(t,e.uid);return r.update(e),r}},82418:function(t,e,r){\"use strict\";var n=r(33626),i=r(34809),a=r(64726),o=r(24272),s=r(98168),l=r(663),c=r(14117);t.exports=function(t,e,r,u){function h(r,n){return i.coerce(t,e,c,r,n)}var f=function(t,e,r,i){var a=0,o=r(\"x\"),s=r(\"y\"),l=r(\"z\");return n.getComponentMethod(\"calendars\",\"handleTraceDefaults\")(t,e,[\"x\",\"y\",\"z\"],i),o&&s&&l&&(a=Math.min(o.length,s.length,l.length),e._length=e._xlength=e._ylength=e._zlength=a),a}(t,e,h,u);if(f){h(\"text\"),h(\"hovertext\"),h(\"hovertemplate\"),h(\"xhoverformat\"),h(\"yhoverformat\"),h(\"zhoverformat\"),h(\"mode\"),a.hasMarkers(e)&&o(t,e,r,u,h,{noSelect:!0,noAngle:!0}),a.hasLines(e)&&(h(\"connectgaps\"),s(t,e,r,u,h)),a.hasText(e)&&(h(\"texttemplate\"),l(t,e,u,h,{noSelect:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}));var p=(e.line||{}).color,d=(e.marker||{}).color;h(\"surfaceaxis\")>=0&&h(\"surfacecolor\",p||d);for(var m=[\"x\",\"y\",\"z\"],g=0;g<3;++g){var y=\"projection.\"+m[g];h(y+\".show\")&&(h(y+\".opacity\"),h(y+\".scale\"))}var v=n.getComponentMethod(\"errorbars\",\"supplyDefaults\");v(t,e,p||d||r,{axis:\"z\"}),v(t,e,p||d||r,{axis:\"y\",inherit:\"z\"}),v(t,e,p||d||r,{axis:\"x\",inherit:\"z\"})}else e.visible=!1}},17822:function(t,e,r){\"use strict\";t.exports={plot:r(16533),attributes:r(14117),markerSymbols:r(49467),supplyDefaults:r(82418),colorbar:[{container:\"marker\",min:\"cmin\",max:\"cmax\"},{container:\"line\",min:\"cmin\",max:\"cmax\"}],calc:r(37593),moduleType:\"trace\",name:\"scatter3d\",basePlotModule:r(2487),categories:[\"gl3d\",\"symbols\",\"showLegend\",\"scatter-like\"],meta:{}}},54637:function(t,e,r){\"use strict\";var n=r(19326),i=r(36640),a=r(9829),o=r(3208).rb,s=r(3208).ay,l=r(87163),c=r(93049).extendFlat,u=i.marker,h=i.line,f=u.line;t.exports={carpet:{valType:\"string\",editType:\"calc\"},a:{valType:\"data_array\",editType:\"calc\"},b:{valType:\"data_array\",editType:\"calc\"},mode:c({},i.mode,{dflt:\"markers\"}),text:c({},i.text,{}),texttemplate:s({editType:\"plot\"},{keys:[\"a\",\"b\",\"text\"]}),hovertext:c({},i.hovertext,{}),line:{color:h.color,width:h.width,dash:h.dash,backoff:h.backoff,shape:c({},h.shape,{values:[\"linear\",\"spline\"]}),smoothing:h.smoothing,editType:\"calc\"},connectgaps:i.connectgaps,fill:c({},i.fill,{values:[\"none\",\"toself\",\"tonext\"],dflt:\"none\"}),fillcolor:n(),marker:c({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:c({width:f.width,editType:\"calc\"},l(\"marker.line\")),gradient:u.gradient,editType:\"calc\"},l(\"marker\")),textfont:i.textfont,textposition:i.textposition,selected:i.selected,unselected:i.unselected,hoverinfo:c({},a.hoverinfo,{flags:[\"a\",\"b\",\"text\",\"name\"]}),hoveron:i.hoveron,hovertemplate:o(),zorder:i.zorder}},68001:function(t,e,r){\"use strict\";var n=r(10721),i=r(77272),a=r(99203),o=r(48861),s=r(26544).calcMarkerSize,l=r(26571);t.exports=function(t,e){var r=e._carpetTrace=l(t,e);if(r&&r.visible&&\"legendonly\"!==r.visible){var c;e.xaxis=r.xaxis,e.yaxis=r.yaxis;var u,h,f=e._length,p=new Array(f),d=!1;for(c=0;c<f;c++)if(u=e.a[c],h=e.b[c],n(u)&&n(h)){var m=r.ab2xy(+u,+h,!0),g=r.isVisible(+u,+h);g||(d=!0),p[c]={x:m[0],y:m[1],a:u,b:h,vis:g}}else p[c]={x:!1,y:!1};return e._needsCull=d,p[0].carpet=r,p[0].trace=e,s(e,f),i(t,e),a(p,e),o(p,e),p}}},16986:function(t,e,r){\"use strict\";var n=r(34809),i=r(32660),a=r(64726),o=r(24272),s=r(98168),l=r(91602),c=r(663),u=r(54114),h=r(54637);t.exports=function(t,e,r,f){function p(r,i){return n.coerce(t,e,h,r,i)}p(\"carpet\"),e.xaxis=\"x\",e.yaxis=\"y\";var d=p(\"a\"),m=p(\"b\"),g=Math.min(d.length,m.length);if(g){e._length=g,p(\"text\"),p(\"texttemplate\"),p(\"hovertext\"),p(\"mode\",g<i.PTS_LINESONLY?\"lines+markers\":\"lines\"),a.hasMarkers(e)&&o(t,e,r,f,p,{gradient:!0}),a.hasLines(e)&&(s(t,e,r,f,p,{backoff:!0}),l(t,e,p),p(\"connectgaps\")),a.hasText(e)&&c(t,e,f,p);var y=[];(a.hasMarkers(e)||a.hasText(e))&&(p(\"marker.maxdisplayed\"),y.push(\"points\")),p(\"fill\"),\"none\"!==e.fill&&(u(t,e,r,p),a.hasLines(e)||l(t,e,p)),\"tonext\"!==e.fill&&\"toself\"!==e.fill||y.push(\"fills\"),\"fills\"!==p(\"hoveron\",y.join(\"+\")||\"points\")&&p(\"hovertemplate\"),p(\"zorder\"),n.coerceSelectionMarkerOpacity(e,p)}else e.visible=!1}},68289:function(t){\"use strict\";t.exports=function(t,e,r,n,i){var a=n[i];return t.a=a.a,t.b=a.b,t.y=a.y,t}},32709:function(t){\"use strict\";t.exports=function(t,e){var r={},n=e._carpet,i=n.ab2ij([t.a,t.b]),a=Math.floor(i[0]),o=i[0]-a,s=Math.floor(i[1]),l=i[1]-s,c=n.evalxy([],a,s,o,l);return r.yLabel=c[1].toFixed(3),r}},59420:function(t,e,r){\"use strict\";var n=r(37255),i=r(34809).fillText;t.exports=function(t,e,r,a){var o=n(t,e,r,a);if(o&&!1!==o[0].index){var s=o[0];if(void 0===s.index){var l=1-s.y0/t.ya._length,c=t.xa._length,u=c*l/2,h=c-u;return s.x0=Math.max(Math.min(s.x0,h),u),s.x1=Math.max(Math.min(s.x1,h),u),o}var f=s.cd[s.index];s.a=f.a,s.b=f.b,s.xLabelVal=void 0,s.yLabelVal=void 0;var p=s.trace,d=p._carpet,m=p._module.formatLabels(f,p);s.yLabel=m.yLabel,delete s.text;var g=[];if(!p.hovertemplate){var y=(f.hi||p.hoverinfo).split(\"+\");-1!==y.indexOf(\"all\")&&(y=[\"a\",\"b\",\"text\"]),-1!==y.indexOf(\"a\")&&v(d.aaxis,f.a),-1!==y.indexOf(\"b\")&&v(d.baxis,f.b),g.push(\"y: \"+s.yLabel),-1!==y.indexOf(\"text\")&&i(f,p,g),s.extraText=g.join(\"<br>\")}return o}function v(t,e){var r;r=t.labelprefix&&t.labelprefix.length>0?t.labelprefix.replace(/ = $/,\"\"):t._hovertitle,g.push(r+\": \"+e.toFixed(3)+t.labelsuffix)}}},56534:function(t,e,r){\"use strict\";t.exports={attributes:r(54637),supplyDefaults:r(16986),colorbar:r(21146),formatLabels:r(32709),calc:r(68001),plot:r(64535),style:r(9408).style,styleOnSelect:r(9408).styleOnSelect,hoverPoints:r(59420),selectPoints:r(32665),eventData:r(68289),moduleType:\"trace\",name:\"scattercarpet\",basePlotModule:r(37703),categories:[\"svg\",\"carpet\",\"symbols\",\"showLegend\",\"carpetDependent\",\"zoomScale\"],meta:{}}},64535:function(t,e,r){\"use strict\";var n=r(36098),i=r(29714),a=r(62203);t.exports=function(t,e,r,o){var s,l,c,u=r[0][0].carpet,h=i.getFromId(t,u.xaxis||\"x\"),f=i.getFromId(t,u.yaxis||\"y\"),p={xaxis:h,yaxis:f,plot:e.plot};for(s=0;s<r.length;s++)(l=r[s][0].trace)._xA=h,l._yA=f;for(n(t,p,r,o),s=0;s<r.length;s++)l=r[s][0].trace,c=o.selectAll(\"g.trace\"+l.uid+\" .js-line\"),a.setClipUrl(c,r[s][0].carpet._clipPathId,t)}},6893:function(t,e,r){\"use strict\";var n=r(3208).rb,i=r(3208).ay,a=r(19326),o=r(36640),s=r(9829),l=r(87163),c=r(94850).T,u=r(93049).extendFlat,h=r(13582).overrideAll,f=o.marker,p=o.line,d=f.line;t.exports=h({lon:{valType:\"data_array\"},lat:{valType:\"data_array\"},locations:{valType:\"data_array\"},locationmode:{valType:\"enumerated\",values:[\"ISO-3\",\"USA-states\",\"country names\",\"geojson-id\"],dflt:\"ISO-3\"},geojson:{valType:\"any\",editType:\"calc\"},featureidkey:{valType:\"string\",editType:\"calc\",dflt:\"id\"},mode:u({},o.mode,{dflt:\"markers\"}),text:u({},o.text,{}),texttemplate:i({editType:\"plot\"},{keys:[\"lat\",\"lon\",\"location\",\"text\"]}),hovertext:u({},o.hovertext,{}),textfont:o.textfont,textposition:o.textposition,line:{color:p.color,width:p.width,dash:c},connectgaps:o.connectgaps,marker:u({symbol:f.symbol,opacity:f.opacity,angle:f.angle,angleref:u({},f.angleref,{values:[\"previous\",\"up\",\"north\"]}),standoff:f.standoff,size:f.size,sizeref:f.sizeref,sizemin:f.sizemin,sizemode:f.sizemode,colorbar:f.colorbar,line:u({width:d.width},l(\"marker.line\")),gradient:f.gradient},l(\"marker\")),fill:{valType:\"enumerated\",values:[\"none\",\"toself\"],dflt:\"none\"},fillcolor:a(),selected:o.selected,unselected:o.unselected,hoverinfo:u({},s.hoverinfo,{flags:[\"lon\",\"lat\",\"location\",\"text\",\"name\"]}),hovertemplate:n()},\"calc\",\"nested\")},75649:function(t,e,r){\"use strict\";var n=r(10721),i=r(63821).BADNUM,a=r(77272),o=r(99203),s=r(48861),l=r(34809).isArrayOrTypedArray,c=r(34809)._;function u(t){return t&&\"string\"==typeof t}t.exports=function(t,e){var r,h=l(e.locations),f=h?e.locations.length:e._length,p=new Array(f);r=e.geojson?function(t){return u(t)||n(t)}:u;for(var d=0;d<f;d++){var m=p[d]={};if(h){var g=e.locations[d];m.loc=r(g)?g:null}else{var y=e.lon[d],v=e.lat[d];n(y)&&n(v)?m.lonlat=[+y,+v]:m.lonlat=[i,i]}}return o(p,e),a(t,e),s(p,e),f&&(p[0].t={labels:{lat:c(t,\"lat:\")+\" \",lon:c(t,\"lon:\")+\" \"}}),p}},27386:function(t,e,r){\"use strict\";var n=r(34809),i=r(64726),a=r(24272),o=r(98168),s=r(663),l=r(54114),c=r(6893);t.exports=function(t,e,r,u){function h(r,i){return n.coerce(t,e,c,r,i)}var f,p=h(\"locations\");if(p&&p.length){var d,m=h(\"geojson\");(\"string\"==typeof m&&\"\"!==m||n.isPlainObject(m))&&(d=\"geojson-id\"),\"geojson-id\"===h(\"locationmode\",d)&&h(\"featureidkey\"),f=p.length}else{var g=h(\"lon\")||[],y=h(\"lat\")||[];f=Math.min(g.length,y.length)}f?(e._length=f,h(\"text\"),h(\"hovertext\"),h(\"hovertemplate\"),h(\"mode\"),i.hasMarkers(e)&&a(t,e,r,u,h,{gradient:!0}),i.hasLines(e)&&(o(t,e,r,u,h),h(\"connectgaps\")),i.hasText(e)&&(h(\"texttemplate\"),s(t,e,u,h)),h(\"fill\"),\"none\"!==e.fill&&l(t,e,r,h),n.coerceSelectionMarkerOpacity(e,h)):e.visible=!1}},71873:function(t){\"use strict\";t.exports=function(t,e,r,n,i){t.lon=e.lon,t.lat=e.lat,t.location=e.loc?e.loc:null;var a=n[i];return a.fIn&&a.fIn.properties&&(t.properties=a.fIn.properties),t}},57413:function(t,e,r){\"use strict\";var n=r(29714);t.exports=function(t,e,r){var i={},a=r[e.geo]._subplot.mockAxis,o=t.lonlat;return i.lonLabel=n.tickText(a,a.c2l(o[0]),!0).text,i.latLabel=n.tickText(a,a.c2l(o[1]),!0).text,i}},40636:function(t,e,r){\"use strict\";var n=r(32141),i=r(63821).BADNUM,a=r(11539),o=r(34809).fillText,s=r(6893);t.exports=function(t,e,r){var l=t.cd,c=l[0].trace,u=t.xa,h=t.ya,f=t.subplot,p=f.projection.isLonLatOverEdges,d=f.project;if(n.getClosest(l,(function(t){var n=t.lonlat;if(n[0]===i)return 1/0;if(p(n))return 1/0;var a=d(n),o=d([e,r]),s=Math.abs(a[0]-o[0]),l=Math.abs(a[1]-o[1]),c=Math.max(3,t.mrc||0);return Math.max(Math.sqrt(s*s+l*l)-c,1-3/c)}),t),!1!==t.index){var m=l[t.index],g=m.lonlat,y=[u.c2p(g),h.c2p(g)],v=m.mrc||1;t.x0=y[0]-v,t.x1=y[0]+v,t.y0=y[1]-v,t.y1=y[1]+v,t.loc=m.loc,t.lon=g[0],t.lat=g[1];var x={};x[c.geo]={_subplot:f};var _=c._module.formatLabels(m,c,x);return t.lonLabel=_.lonLabel,t.latLabel=_.latLabel,t.color=a(c,m),t.extraText=function(t,e,r,n){if(!t.hovertemplate){var i=e.hi||t.hoverinfo,a=\"all\"===i?s.hoverinfo.flags:i.split(\"+\"),l=-1!==a.indexOf(\"location\")&&Array.isArray(t.locations),c=-1!==a.indexOf(\"lon\"),u=-1!==a.indexOf(\"lat\"),h=-1!==a.indexOf(\"text\"),f=[];return l?f.push(e.loc):c&&u?f.push(\"(\"+p(r.latLabel)+\", \"+p(r.lonLabel)+\")\"):c?f.push(n.lon+p(r.lonLabel)):u&&f.push(n.lat+p(r.latLabel)),h&&o(e,t,f),f.join(\"<br>\")}function p(t){return t+\"°\"}}(c,m,t,l[0].t.labels),t.hovertemplate=c.hovertemplate,[t]}}},18070:function(t,e,r){\"use strict\";t.exports={attributes:r(6893),supplyDefaults:r(27386),colorbar:r(21146),formatLabels:r(57413),calc:r(75649),calcGeoJSON:r(48887).calcGeoJSON,plot:r(48887).plot,style:r(60367),styleOnSelect:r(9408).styleOnSelect,hoverPoints:r(40636),eventData:r(71873),selectPoints:r(45852),moduleType:\"trace\",name:\"scattergeo\",basePlotModule:r(47544),categories:[\"geo\",\"symbols\",\"showLegend\",\"scatter-like\"],meta:{}}},48887:function(t,e,r){\"use strict\";var n=r(45568),i=r(34809),a=r(11577).getTopojsonFeatures,o=r(39532),s=r(3994),l=r(32919).findExtremes,c=r(63821).BADNUM,u=r(26544).calcMarkerSize,h=r(64726),f=r(60367);t.exports={calcGeoJSON:function(t,e){var r,n,o=t[0].trace,h=e[o.geo],f=h._subplot,p=o._length;if(i.isArrayOrTypedArray(o.locations)){var d=o.locationmode,m=\"geojson-id\"===d?s.extractTraceFeature(t):a(o,f.topojson);for(r=0;r<p;r++){n=t[r];var g=\"geojson-id\"===d?n.fOut:s.locationToFeature(d,n.loc,m);n.lonlat=g?g.properties.ct:[c,c]}}var y,v,x={padded:!0};if(\"geojson\"===h.fitbounds&&\"geojson-id\"===o.locationmode){var _=s.computeBbox(s.getTraceGeojson(o));y=[_[0],_[2]],v=[_[1],_[3]]}else{for(y=new Array(p),v=new Array(p),r=0;r<p;r++)n=t[r],y[r]=n.lonlat[0],v[r]=n.lonlat[1];x.ppad=u(o,p)}o._extremes.lon=l(h.lonaxis._ax,y,x),o._extremes.lat=l(h.lataxis._ax,v,x)},plot:function(t,e,r){var a=e.layers.frontplot.select(\".scatterlayer\"),s=i.makeTraceGroups(a,r,\"trace scattergeo\");function l(t,e){t.lonlat[0]===c&&n.select(e).remove()}s.selectAll(\"*\").remove(),s.each((function(e){var r=n.select(this),a=e[0].trace;if(h.hasLines(a)||\"none\"!==a.fill){var s=o.calcTraceToLineCoords(e),c=\"none\"!==a.fill?o.makePolygon(s):o.makeLine(s);r.selectAll(\"path.js-line\").data([{geojson:c,trace:a}]).enter().append(\"path\").classed(\"js-line\",!0).style(\"stroke-miterlimit\",2)}h.hasMarkers(a)&&r.selectAll(\"path.point\").data(i.identity).enter().append(\"path\").classed(\"point\",!0).each((function(t){l(t,this)})),h.hasText(a)&&r.selectAll(\"g\").data(i.identity).enter().append(\"g\").append(\"text\").each((function(t){l(t,this)})),f(t,e)}))}}},45852:function(t,e,r){\"use strict\";var n=r(64726),i=r(63821).BADNUM;t.exports=function(t,e){var r,a,o,s,l,c=t.cd,u=t.xaxis,h=t.yaxis,f=[],p=c[0].trace;if(!n.hasMarkers(p)&&!n.hasText(p))return[];if(!1===e)for(l=0;l<c.length;l++)c[l].selected=0;else for(l=0;l<c.length;l++)(a=(r=c[l]).lonlat)[0]!==i&&(o=u.c2p(a),s=h.c2p(a),e.contains([o,s],null,l,t)?(f.push({pointNumber:l,lon:a[0],lat:a[1]}),r.selected=1):r.selected=0);return f}},60367:function(t,e,r){\"use strict\";var n=r(45568),i=r(62203),a=r(78766),o=r(9408),s=o.stylePoints,l=o.styleText;t.exports=function(t,e){e&&function(t,e){var r=e[0].trace,o=e[0].node3;o.style(\"opacity\",e[0].trace.opacity),s(o,r,t),l(o,r,t),o.selectAll(\"path.js-line\").style(\"fill\",\"none\").each((function(t){var e=n.select(this),r=t.trace,o=r.line||{};e.call(a.stroke,o.color).call(i.dashLine,o.dash||\"\",o.width||0),\"none\"!==r.fill&&e.call(a.fill,r.fillcolor)}))}(t,e)}},92089:function(t,e,r){\"use strict\";var n=r(9829),i=r(80337),a=r(19326),o=r(36640),s=r(80712).axisHoverFormat,l=r(87163),c=r(62994),u=r(93049).extendFlat,h=r(13582).overrideAll,f=r(29483).DASHES,p=o.line,d=o.marker,m=d.line,g=t.exports=h({x:o.x,x0:o.x0,dx:o.dx,y:o.y,y0:o.y0,dy:o.dy,xperiod:o.xperiod,yperiod:o.yperiod,xperiod0:o.xperiod0,yperiod0:o.yperiod0,xperiodalignment:o.xperiodalignment,yperiodalignment:o.yperiodalignment,xhoverformat:s(\"x\"),yhoverformat:s(\"y\"),text:o.text,hovertext:o.hovertext,textposition:o.textposition,textfont:i({noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,editType:\"calc\",colorEditType:\"style\",arrayOk:!0,noNumericWeightValues:!0,variantValues:[\"normal\",\"small-caps\"]}),mode:{valType:\"flaglist\",flags:[\"lines\",\"markers\",\"text\"],extras:[\"none\"]},line:{color:p.color,width:p.width,shape:{valType:\"enumerated\",values:[\"linear\",\"hv\",\"vh\",\"hvh\",\"vhv\"],dflt:\"linear\",editType:\"plot\"},dash:{valType:\"enumerated\",values:c(f),dflt:\"solid\"}},marker:u({},l(\"marker\"),{symbol:d.symbol,angle:d.angle,size:d.size,sizeref:d.sizeref,sizemin:d.sizemin,sizemode:d.sizemode,opacity:d.opacity,colorbar:d.colorbar,line:u({},l(\"marker.line\"),{width:m.width})}),connectgaps:o.connectgaps,fill:u({},o.fill,{dflt:\"none\"}),fillcolor:a(),selected:{marker:o.selected.marker,textfont:o.selected.textfont},unselected:{marker:o.unselected.marker,textfont:o.unselected.textfont},opacity:n.opacity},\"calc\",\"nested\");g.x.editType=g.y.editType=g.x0.editType=g.y0.editType=\"calc+clearAxisTypes\",g.hovertemplate=o.hovertemplate,g.texttemplate=o.texttemplate},68258:function(t,e,r){\"use strict\";var n=r(36544);t.exports={moduleType:\"trace\",name:\"scattergl\",basePlotModule:r(37703),categories:[\"gl\",\"regl\",\"cartesian\",\"symbols\",\"errorBarsOK\",\"showLegend\",\"scatter-like\"],attributes:r(92089),supplyDefaults:r(86590),crossTraceDefaults:r(53044),colorbar:r(21146),formatLabels:r(99185),calc:r(15293),hoverPoints:n.hoverPoints,selectPoints:r(17168),meta:{}}},15293:function(t,e,r){\"use strict\";var n=r(27549),i=r(34809),a=r(5975),o=r(32919).findExtremes,s=r(40528),l=r(26544),c=l.calcMarkerSize,u=l.calcAxisExpansion,h=l.setFirstScatter,f=r(77272),p=r(19937),d=r(62336),m=r(63821).BADNUM,g=r(29483).TOO_MANY_POINTS;function y(t,e,r){var n=t._extremes[e._id],i=o(e,r._bnds,{padded:!0});n.min=n.min.concat(i.min),n.max=n.max.concat(i.max)}t.exports=function(t,e){var r,o=t._fullLayout,l=e._xA=a.getFromId(t,e.xaxis,\"x\"),v=e._yA=a.getFromId(t,e.yaxis,\"y\"),x=o._plots[e.xaxis+e.yaxis],_=e._length,b=_>=g,w=2*_,T={},k=l.makeCalcdata(e,\"x\"),A=v.makeCalcdata(e,\"y\"),M=s(e,l,\"x\",k),S=s(e,v,\"y\",A),E=M.vals,C=S.vals;e._x=E,e._y=C,e.xperiodalignment&&(e._origX=k,e._xStarts=M.starts,e._xEnds=M.ends),e.yperiodalignment&&(e._origY=A,e._yStarts=S.starts,e._yEnds=S.ends);var L=new Array(w),I=new Array(_);for(r=0;r<_;r++)L[2*r]=E[r]===m?NaN:E[r],L[2*r+1]=C[r]===m?NaN:C[r],I[r]=r;if(\"log\"===l.type)for(r=0;r<w;r+=2)L[r]=l.c2l(L[r]);if(\"log\"===v.type)for(r=1;r<w;r+=2)L[r]=v.c2l(L[r]);b&&\"log\"!==l.type&&\"log\"!==v.type?T.tree=n(L):T.ids=I,f(t,e);var P,z=function(t,e,r,n,a,o){var s=p.style(t,r);if(s.marker&&(s.marker.positions=n),s.line&&n.length>1&&i.extendFlat(s.line,p.linePositions(t,r,n)),s.errorX||s.errorY){var l=p.errorBarPositions(t,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},p.textPosition(t,r,s.text,s.marker)),i.extendFlat(s.textSel,{positions:n},p.textPosition(t,r,s.text,s.markerSel)),i.extendFlat(s.textUnsel,{positions:n},p.textPosition(t,r,s.text,s.markerUnsel))),s}(t,0,e,L,E,C),O=d(t,x);return h(o,e),b?z.marker&&(P=z.marker.sizeAvg||Math.max(z.marker.size,3)):P=c(e,_),u(t,e,l,v,E,C,P),z.errorX&&y(e,l,z.errorX),z.errorY&&y(e,v,z.errorY),z.fill&&!O.fill2d&&(O.fill2d=!0),z.marker&&!O.scatter2d&&(O.scatter2d=!0),z.line&&!O.line2d&&(O.line2d=!0),!z.errorX&&!z.errorY||O.error2d||(O.error2d=!0),z.text&&!O.glText&&(O.glText=!0),z.marker&&(z.marker.snap=_),O.lineOptions.push(z.line),O.errorXOptions.push(z.errorX),O.errorYOptions.push(z.errorY),O.fillOptions.push(z.fill),O.markerOptions.push(z.marker),O.markerSelectedOptions.push(z.markerSel),O.markerUnselectedOptions.push(z.markerUnsel),O.textOptions.push(z.text),O.textSelectedOptions.push(z.textSel),O.textUnselectedOptions.push(z.textUnsel),O.selectBatch.push([]),O.unselectBatch.push([]),T._scene=O,T.index=O.count,T.x=E,T.y=C,T.positions=L,O.count++,[{x:!1,y:!1,t:T,trace:e}]}},29483:function(t){\"use strict\";t.exports={TOO_MANY_POINTS:1e5,SYMBOL_SDF_SIZE:200,SYMBOL_SIZE:20,SYMBOL_STROKE:1,DOT_RE:/-dot/,OPEN_RE:/-open/,DASHES:{solid:[1],dot:[1,1],dash:[4,1],longdash:[8,1],dashdot:[4,1,1,1],longdashdot:[8,1,1,1]}}},19937:function(t,e,r){\"use strict\";var n=r(10721),i=r(96021),a=r(162),o=r(33626),s=r(34809),l=s.isArrayOrTypedArray,c=r(62203),u=r(5975),h=r(46998).formatColor,f=r(64726),p=r(92527),d=r(4075),m=r(29483),g=r(20438).DESELECTDIM,y={start:1,left:1,end:-1,right:-1,middle:0,center:0,bottom:1,top:-1},v=r(36040).appendArrayPointValue;function x(t,e){var r,i=t._fullLayout,a=e._length,o=e.textfont,c=e.textposition,u=l(c)?c:[c],h=o.color,f=o.size,p=o.family,d=o.weight,m=o.style,g=o.variant,y={},x=t._context.plotGlPixelRatio,b=e.texttemplate;if(b){y.text=[];var w=i._d3locale,T=Array.isArray(b),k=T?Math.min(b.length,a):a,A=T?function(t){return b[t]}:function(){return b};for(r=0;r<k;r++){var M={i:r},S=e._module.formatLabels(M,e,i),E={};v(E,e,r);var C=e._meta||{};y.text.push(s.texttemplateString(A(r),S,w,E,M,C))}}else l(e.text)&&e.text.length<a?y.text=e.text.slice():y.text=e.text;if(l(y.text))for(r=y.text.length;r<a;r++)y.text[r]=\"\";for(y.opacity=e.opacity,y.font={},y.align=[],y.baseline=[],r=0;r<u.length;r++){var L=u[r].split(/\\s+/);switch(L[1]){case\"left\":y.align.push(\"right\");break;case\"right\":y.align.push(\"left\");break;default:y.align.push(L[1])}switch(L[0]){case\"top\":y.baseline.push(\"bottom\");break;case\"bottom\":y.baseline.push(\"top\");break;default:y.baseline.push(L[0])}}if(l(h))for(y.color=new Array(a),r=0;r<a;r++)y.color[r]=h[r];else y.color=h;if(l(f)||Array.isArray(p)||l(d)||Array.isArray(m)||Array.isArray(g))for(y.font=new Array(a),r=0;r<a;r++){var I=y.font[r]={};I.size=(s.isTypedArray(f)?f[r]:l(f)?n(f[r])?f[r]:0:f)*x,I.family=Array.isArray(p)?p[r]:p,I.weight=_(l(d)?d[r]:d),I.style=Array.isArray(m)?m[r]:m,I.variant=Array.isArray(g)?g[r]:g}else y.font={size:f*x,family:p,weight:_(d),style:m,variant:g};return y}function _(t){return t<=1e3?t>500?\"bold\":\"normal\":t}function b(t,e){var r,n,i=e._length,o=e.marker,s={},c=l(o.symbol),u=l(o.angle),f=l(o.color),m=l(o.line.color),g=l(o.opacity),y=l(o.size),v=l(o.line.width);if(c||(n=d.isOpenSymbol(o.symbol)),c||f||m||g||u){s.symbols=new Array(i),s.angles=new Array(i),s.colors=new Array(i),s.borderColors=new Array(i);var x=o.symbol,_=o.angle,b=h(o,o.opacity,i),w=h(o.line,o.opacity,i);if(!l(w[0])){var T=w;for(w=Array(i),r=0;r<i;r++)w[r]=T}if(!l(b[0])){var k=b;for(b=Array(i),r=0;r<i;r++)b[r]=k}if(!l(x)){var A=x;for(x=Array(i),r=0;r<i;r++)x[r]=A}if(!l(_)){var M=_;for(_=Array(i),r=0;r<i;r++)_[r]=M}for(s.symbols=x,s.angles=_,s.colors=b,s.borderColors=w,r=0;r<i;r++)c&&(n=d.isOpenSymbol(o.symbol[r])),n&&(w[r]=b[r].slice(),b[r]=b[r].slice(),b[r][3]=0);for(s.opacity=e.opacity,s.markers=new Array(i),r=0;r<i;r++)s.markers[r]=L({mx:s.symbols[r],ma:s.angles[r]},e)}else n?(s.color=a(o.color,\"uint8\"),s.color[3]=0,s.borderColor=a(o.color,\"uint8\")):(s.color=a(o.color,\"uint8\"),s.borderColor=a(o.line.color,\"uint8\")),s.opacity=e.opacity*o.opacity,s.marker=L({mx:o.symbol,ma:o.angle},e);var S,E=p(e,1);if(y||v){var C,I=s.sizes=new Array(i),P=s.borderSizes=new Array(i),z=0;if(y){for(r=0;r<i;r++)I[r]=E(o.size[r]),z+=I[r];C=z/i}else for(S=E(o.size),r=0;r<i;r++)I[r]=S;if(v)for(r=0;r<i;r++)P[r]=o.line.width[r];else for(S=o.line.width,r=0;r<i;r++)P[r]=S;s.sizeAvg=C}else s.size=E(o&&o.size||10),s.borderSizes=E(o.line.width);return s}function w(t,e,r){var n=e.marker,i={};return r?(r.marker&&r.marker.symbol?i=b(0,s.extendFlat({},n,r.marker)):r.marker&&(r.marker.size&&(i.size=r.marker.size),r.marker.color&&(i.colors=r.marker.color),void 0!==r.marker.opacity&&(i.opacity=r.marker.opacity)),i):i}function T(t,e,r){var n={};if(!r)return n;if(r.textfont){var i={opacity:1,text:e.text,texttemplate:e.texttemplate,textposition:e.textposition,textfont:s.extendFlat({},e.textfont)};r.textfont&&s.extendFlat(i.textfont,r.textfont),n=x(t,i)}return n}function k(t,e,r){var n={capSize:2*e.width*r,lineWidth:e.thickness*r,color:e.color};return e.copy_ystyle&&(n=t.error_y),n}var A=m.SYMBOL_SDF_SIZE,M=m.SYMBOL_SIZE,S=m.SYMBOL_STROKE,E={},C=c.symbolFuncs[0](.05*M);function L(t,e){var r,n,a=t.mx;if(\"circle\"===a)return null;var o=c.symbolNumber(a),s=c.symbolFuncs[o%100],l=!!c.symbolNoDot[o%100],u=!!c.symbolNoFill[o%100],h=d.isDotSymbol(a);if(t.ma&&(a+=\"_\"+t.ma),E[a])return E[a];var f=c.getMarkerAngle(t,e);return r=h&&!l?s(1.1*M,f)+C:s(M,f),n=i(r,{w:A,h:A,viewBox:[-M,-M,M,M],stroke:u?S:-S}),E[a]=n,n||null}t.exports={style:function(t,e){var r,n={marker:void 0,markerSel:void 0,markerUnsel:void 0,line:void 0,fill:void 0,errorX:void 0,errorY:void 0,text:void 0,textSel:void 0,textUnsel:void 0},i=t._context.plotGlPixelRatio;if(!0!==e.visible)return n;if(f.hasText(e)&&(n.text=x(t,e),n.textSel=T(t,e,e.selected),n.textUnsel=T(t,e,e.unselected)),f.hasMarkers(e)&&(n.marker=b(0,e),n.markerSel=w(0,e,e.selected),n.markerUnsel=w(0,e,e.unselected),!e.unselected&&l(e.marker.opacity))){var a=e.marker.opacity;for(n.markerUnsel.opacity=new Array(a.length),r=0;r<a.length;r++)n.markerUnsel.opacity[r]=g*a[r]}if(f.hasLines(e)){n.line={overlay:!0,thickness:e.line.width*i,color:e.line.color,opacity:e.opacity};var o=(m.DASHES[e.line.dash]||[1]).slice();for(r=0;r<o.length;++r)o[r]*=e.line.width*i;n.line.dashes=o}return e.error_x&&e.error_x.visible&&(n.errorX=k(e,e.error_x,i)),e.error_y&&e.error_y.visible&&(n.errorY=k(e,e.error_y,i)),e.fill&&\"none\"!==e.fill&&(n.fill={closed:!0,fill:e.fillcolor,thickness:0}),n},markerStyle:b,markerSelection:w,linePositions:function(t,e,r){var n,i,a=r.length,o=a/2;if(f.hasLines(e)&&o)if(\"hv\"===e.line.shape){for(n=[],i=0;i<o-1;i++)isNaN(r[2*i])||isNaN(r[2*i+1])?n.push(NaN,NaN,NaN,NaN):(n.push(r[2*i],r[2*i+1]),isNaN(r[2*i+2])||isNaN(r[2*i+3])?n.push(NaN,NaN):n.push(r[2*i+2],r[2*i+1]));n.push(r[a-2],r[a-1])}else if(\"hvh\"===e.line.shape){for(n=[],i=0;i<o-1;i++)if(isNaN(r[2*i])||isNaN(r[2*i+1])||isNaN(r[2*i+2])||isNaN(r[2*i+3]))isNaN(r[2*i])||isNaN(r[2*i+1])?n.push(NaN,NaN):n.push(r[2*i],r[2*i+1]),n.push(NaN,NaN);else{var s=(r[2*i]+r[2*i+2])/2;n.push(r[2*i],r[2*i+1],s,r[2*i+1],s,r[2*i+3])}n.push(r[a-2],r[a-1])}else if(\"vhv\"===e.line.shape){for(n=[],i=0;i<o-1;i++)if(isNaN(r[2*i])||isNaN(r[2*i+1])||isNaN(r[2*i+2])||isNaN(r[2*i+3]))isNaN(r[2*i])||isNaN(r[2*i+1])?n.push(NaN,NaN):n.push(r[2*i],r[2*i+1]),n.push(NaN,NaN);else{var l=(r[2*i+1]+r[2*i+3])/2;n.push(r[2*i],r[2*i+1],r[2*i],l,r[2*i+2],l)}n.push(r[a-2],r[a-1])}else if(\"vh\"===e.line.shape){for(n=[],i=0;i<o-1;i++)isNaN(r[2*i])||isNaN(r[2*i+1])?n.push(NaN,NaN,NaN,NaN):(n.push(r[2*i],r[2*i+1]),isNaN(r[2*i+2])||isNaN(r[2*i+3])?n.push(NaN,NaN):n.push(r[2*i],r[2*i+3]));n.push(r[a-2],r[a-1])}else n=r;var c=!1;for(i=0;i<n.length;i++)if(isNaN(n[i])){c=!0;break}var u=c||n.length>m.TOO_MANY_POINTS||f.hasMarkers(e)?\"rect\":\"round\";if(c&&e.connectgaps){var h=n[0],p=n[1];for(i=0;i<n.length;i+=2)isNaN(n[i])||isNaN(n[i+1])?(n[i]=h,n[i+1]=p):(h=n[i],p=n[i+1])}return{join:u,positions:n}},errorBarPositions:function(t,e,r,i,a){var s=o.getComponentMethod(\"errorbars\",\"makeComputeError\"),l=u.getFromId(t,e.xaxis,\"x\"),c=u.getFromId(t,e.yaxis,\"y\"),h=r.length/2,f={};function p(t,i){var a=i._id.charAt(0),o=e[\"error_\"+a];if(o&&o.visible&&(\"linear\"===i.type||\"log\"===i.type)){for(var l=s(o),c={x:0,y:1}[a],u={x:[0,1,2,3],y:[2,3,0,1]}[a],p=new Float64Array(4*h),d=1/0,m=-1/0,g=0,y=0;g<h;g++,y+=4){var v=t[g];if(n(v)){var x=r[2*g+c],_=l(v,g),b=_[0],w=_[1];if(n(b)&&n(w)){var T=v-b,k=v+w;p[y+u[0]]=x-i.c2l(T),p[y+u[1]]=i.c2l(k)-x,p[y+u[2]]=0,p[y+u[3]]=0,d=Math.min(d,v-b),m=Math.max(m,v+w)}}}f[a]={positions:r,errors:p,_bnds:[d,m]}}}return p(i,l),p(a,c),f},textPosition:function(t,e,r,n){var i,a=e._length,o={};if(f.hasMarkers(e)){var s=r.font,c=r.align,u=r.baseline;for(o.offset=new Array(a),i=0;i<a;i++){var h=n.sizes?n.sizes[i]:n.size,p=l(s)?s[i].size:s.size,d=l(c)?c.length>1?c[i]:c[0]:c,m=l(u)?u.length>1?u[i]:u[0]:u,g=y[d],v=y[m],x=h?h/.8+1:0,_=-v*x-.5*v;o.offset[i]=[g*x/p,_/p]}}return o}}},86590:function(t,e,r){\"use strict\";var n=r(34809),i=r(33626),a=r(4075),o=r(92089),s=r(32660),l=r(64726),c=r(99867),u=r(99669),h=r(24272),f=r(98168),p=r(54114),d=r(663);t.exports=function(t,e,r,m){function g(r,i){return n.coerce(t,e,o,r,i)}var y=!!t.marker&&a.isOpenSymbol(t.marker.symbol),v=l.isBubble(t),x=c(t,e,m,g);if(x){u(t,e,m,g),g(\"xhoverformat\"),g(\"yhoverformat\");var _=x<s.PTS_LINESONLY?\"lines+markers\":\"lines\";g(\"text\"),g(\"hovertext\"),g(\"hovertemplate\"),g(\"mode\",_),l.hasMarkers(e)&&(h(t,e,r,m,g,{noAngleRef:!0,noStandOff:!0}),g(\"marker.line.width\",y||v?1:0)),l.hasLines(e)&&(g(\"connectgaps\"),f(t,e,r,m,g),g(\"line.shape\")),l.hasText(e)&&(g(\"texttemplate\"),d(t,e,m,g,{noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}));var b=(e.line||{}).color,w=(e.marker||{}).color;g(\"fill\"),\"none\"!==e.fill&&p(t,e,r,g);var T=i.getComponentMethod(\"errorbars\",\"supplyDefaults\");T(t,e,b||w||r,{axis:\"y\"}),T(t,e,b||w||r,{axis:\"x\",inherit:\"y\"}),n.coerceSelectionMarkerOpacity(e,g)}else e.visible=!1}},85686:function(t,e,r){\"use strict\";var n=r(34809),i=r(78766),a=r(20438).DESELECTDIM;t.exports={styleTextSelection:function(t){var e,r,o=t[0],s=o.trace,l=o.t,c=l._scene,u=l.index,h=c.selectBatch[u],f=c.unselectBatch[u],p=c.textOptions[u],d=c.textSelectedOptions[u]||{},m=c.textUnselectedOptions[u]||{},g=n.extendFlat({},p);if(h.length||f.length){var y=d.color,v=m.color,x=p.color,_=n.isArrayOrTypedArray(x);for(g.color=new Array(s._length),e=0;e<h.length;e++)r=h[e],g.color[r]=y||(_?x[r]:x);for(e=0;e<f.length;e++){r=f[e];var b=_?x[r]:x;g.color[r]=v||(y?b:i.addOpacity(b,a))}}c.glText[u].update(g)}}},99185:function(t,e,r){\"use strict\";var n=r(15294);t.exports=function(t,e,r){var i=t.i;return\"x\"in t||(t.x=e._x[i]),\"y\"in t||(t.y=e._y[i]),n(t,e,r)}},4075:function(t,e,r){\"use strict\";var n=r(29483);e.isOpenSymbol=function(t){return\"string\"==typeof t?n.OPEN_RE.test(t):t%200>100},e.isDotSymbol=function(t){return\"string\"==typeof t?n.DOT_RE.test(t):t>200}},36544:function(t,e,r){\"use strict\";var n=r(33626),i=r(34809),a=r(11539);function o(t,e,r,o){var s=t.xa,l=t.ya,c=t.distance,u=t.dxy,h=t.index,f={pointNumber:h,x:e[h],y:r[h]};f.tx=i.isArrayOrTypedArray(o.text)?o.text[h]:o.text,f.htx=Array.isArray(o.hovertext)?o.hovertext[h]:o.hovertext,f.data=Array.isArray(o.customdata)?o.customdata[h]:o.customdata,f.tp=Array.isArray(o.textposition)?o.textposition[h]:o.textposition;var p=o.textfont;p&&(f.ts=i.isArrayOrTypedArray(p.size)?p.size[h]:p.size,f.tc=i.isArrayOrTypedArray(p.color)?p.color[h]:p.color,f.tf=Array.isArray(p.family)?p.family[h]:p.family,f.tw=Array.isArray(p.weight)?p.weight[h]:p.weight,f.ty=Array.isArray(p.style)?p.style[h]:p.style,f.tv=Array.isArray(p.variant)?p.variant[h]:p.variant);var d=o.marker;d&&(f.ms=i.isArrayOrTypedArray(d.size)?d.size[h]:d.size,f.mo=i.isArrayOrTypedArray(d.opacity)?d.opacity[h]:d.opacity,f.mx=i.isArrayOrTypedArray(d.symbol)?d.symbol[h]:d.symbol,f.ma=i.isArrayOrTypedArray(d.angle)?d.angle[h]:d.angle,f.mc=i.isArrayOrTypedArray(d.color)?d.color[h]:d.color);var m=d&&d.line;m&&(f.mlc=Array.isArray(m.color)?m.color[h]:m.color,f.mlw=i.isArrayOrTypedArray(m.width)?m.width[h]:m.width);var g=d&&d.gradient;g&&\"none\"!==g.type&&(f.mgt=Array.isArray(g.type)?g.type[h]:g.type,f.mgc=Array.isArray(g.color)?g.color[h]:g.color);var y=s.c2p(f.x,!0),v=l.c2p(f.y,!0),x=f.mrc||1,_=o.hoverlabel;_&&(f.hbg=Array.isArray(_.bgcolor)?_.bgcolor[h]:_.bgcolor,f.hbc=Array.isArray(_.bordercolor)?_.bordercolor[h]:_.bordercolor,f.hts=i.isArrayOrTypedArray(_.font.size)?_.font.size[h]:_.font.size,f.htc=Array.isArray(_.font.color)?_.font.color[h]:_.font.color,f.htf=Array.isArray(_.font.family)?_.font.family[h]:_.font.family,f.hnl=i.isArrayOrTypedArray(_.namelength)?_.namelength[h]:_.namelength);var b=o.hoverinfo;b&&(f.hi=Array.isArray(b)?b[h]:b);var w=o.hovertemplate;w&&(f.ht=Array.isArray(w)?w[h]:w);var T={};T[t.index]=f;var k=o._origX,A=o._origY,M=i.extendFlat({},t,{color:a(o,f),x0:y-x,x1:y+x,xLabelVal:k?k[h]:f.x,y0:v-x,y1:v+x,yLabelVal:A?A[h]:f.y,cd:T,distance:c,spikeDistance:u,hovertemplate:f.ht});return f.htx?M.text=f.htx:f.tx?M.text=f.tx:o.text&&(M.text=o.text),i.fillText(f,o,M),n.getComponentMethod(\"errorbars\",\"hoverInfo\")(f,o,M),M}t.exports={hoverPoints:function(t,e,r,n){var i,a,s,l,c,u,h,f,p,d,m=t.cd,g=m[0].t,y=m[0].trace,v=t.xa,x=t.ya,_=g.x,b=g.y,w=v.c2p(e),T=x.c2p(r),k=t.distance;if(g.tree){var A=v.p2c(w-k),M=v.p2c(w+k),S=x.p2c(T-k),E=x.p2c(T+k);i=\"x\"===n?g.tree.range(Math.min(A,M),Math.min(x._rl[0],x._rl[1]),Math.max(A,M),Math.max(x._rl[0],x._rl[1])):g.tree.range(Math.min(A,M),Math.min(S,E),Math.max(A,M),Math.max(S,E))}else i=g.ids;var C=k;if(\"x\"===n){var L=!!y.xperiodalignment,I=!!y.yperiodalignment;for(u=0;u<i.length;u++){if(l=_[a=i[u]],h=Math.abs(v.c2p(l)-w),L){var P=v.c2p(y._xStarts[a]),z=v.c2p(y._xEnds[a]);h=w>=Math.min(P,z)&&w<=Math.max(P,z)?0:1/0}if(h<C){if(C=h,c=b[a],f=x.c2p(c)-T,I){var O=x.c2p(y._yStarts[a]),D=x.c2p(y._yEnds[a]);f=T>=Math.min(O,D)&&T<=Math.max(O,D)?0:1/0}d=Math.sqrt(h*h+f*f),s=i[u]}}}else for(u=i.length-1;u>-1;u--)l=_[a=i[u]],c=b[a],h=v.c2p(l)-w,f=x.c2p(c)-T,(p=Math.sqrt(h*h+f*f))<C&&(C=d=p,s=a);return t.index=s,t.distance=C,t.dxy=d,void 0===s?[t]:[o(t,_,b,y)]},calcHover:o}},52378:function(t,e,r){\"use strict\";var n=r(68258);n.plot=r(47731),t.exports=n},47731:function(t,e,r){\"use strict\";var n=r(62172),i=r(49478),a=r(29978),o=r(74024),s=r(34809),l=r(70414).selectMode,c=r(22459),u=r(64726),h=r(17210),f=r(85686).styleTextSelection,p={};function d(t,e,r,n){var i=t._size,a=t.width*n,o=t.height*n,s=i.l*n,l=i.b*n,c=i.r*n,u=i.t*n,h=i.w*n,f=i.h*n;return[s+e.domain[0]*h,l+r.domain[0]*f,a-c-(1-e.domain[1])*h,o-u-(1-r.domain[1])*f]}(t.exports=function(t,e,r){if(r.length){var m,g,y=t._fullLayout,v=e._scene,x=e.xaxis,_=e.yaxis;if(v)if(c(t,[\"ANGLE_instanced_arrays\",\"OES_element_index_uint\"],p)){var b=v.count,w=y._glcanvas.data()[0].regl;if(h(t,e,r),v.dirty){if(!v.line2d&&!v.error2d||v.scatter2d||v.fill2d||v.glText||w.clear({}),!0===v.error2d&&(v.error2d=a(w)),!0===v.line2d&&(v.line2d=i(w)),!0===v.scatter2d&&(v.scatter2d=n(w)),!0===v.fill2d&&(v.fill2d=i(w)),!0===v.glText)for(v.glText=new Array(b),m=0;m<b;m++)v.glText[m]=new o(w);if(v.glText){if(b>v.glText.length){var T=b-v.glText.length;for(m=0;m<T;m++)v.glText.push(new o(w))}else if(b<v.glText.length){var k=v.glText.length-b;v.glText.splice(b,k).forEach((function(t){t.destroy()}))}for(m=0;m<b;m++)v.glText[m].update(v.textOptions[m])}if(v.line2d&&(v.line2d.update(v.lineOptions),v.lineOptions=v.lineOptions.map((function(t){if(t&&t.positions){for(var e=t.positions,r=0;r<e.length&&(isNaN(e[r])||isNaN(e[r+1]));)r+=2;for(var n=e.length-2;n>r&&(isNaN(e[n])||isNaN(e[n+1]));)n-=2;t.positions=e.slice(r,n+2)}return t})),v.line2d.update(v.lineOptions)),v.error2d){var A=(v.errorXOptions||[]).concat(v.errorYOptions||[]);v.error2d.update(A)}v.scatter2d&&v.scatter2d.update(v.markerOptions),v.fillOrder=s.repeat(null,b),v.fill2d&&(v.fillOptions=v.fillOptions.map((function(t,e){var n=r[e];if(t&&n&&n[0]&&n[0].trace){var i,a,o=n[0],s=o.trace,l=o.t,c=v.lineOptions[e],u=[];s._ownfill&&u.push(e),s._nexttrace&&u.push(e+1),u.length&&(v.fillOrder[e]=u);var h,f,p=[],d=c&&c.positions||l.positions;if(\"tozeroy\"===s.fill){for(h=0;h<d.length&&isNaN(d[h+1]);)h+=2;for(f=d.length-2;f>h&&isNaN(d[f+1]);)f-=2;0!==d[h+1]&&(p=[d[h],0]),p=p.concat(d.slice(h,f+2)),0!==d[f+1]&&(p=p.concat([d[f],0]))}else if(\"tozerox\"===s.fill){for(h=0;h<d.length&&isNaN(d[h]);)h+=2;for(f=d.length-2;f>h&&isNaN(d[f]);)f-=2;0!==d[h]&&(p=[0,d[h+1]]),p=p.concat(d.slice(h,f+2)),0!==d[f]&&(p=p.concat([0,d[f+1]]))}else if(\"toself\"===s.fill||\"tonext\"===s.fill){for(p=[],i=0,t.splitNull=!0,a=0;a<d.length;a+=2)(isNaN(d[a])||isNaN(d[a+1]))&&((p=p.concat(d.slice(i,a))).push(d[i],d[i+1]),p.push(null,null),i=a+2);p=p.concat(d.slice(i)),i&&p.push(d[i],d[i+1])}else{var m=s._nexttrace;if(m){var g=v.lineOptions[e+1];if(g){var y=g.positions;if(\"tonexty\"===s.fill){for(p=d.slice(),e=Math.floor(y.length/2);e--;){var x=y[2*e],_=y[2*e+1];isNaN(x)||isNaN(_)||p.push(x,_)}t.fill=m.fillcolor}}}}if(s._prevtrace&&\"tonext\"===s._prevtrace.fill){var b=v.lineOptions[e-1].positions,w=p.length/2,T=[i=w];for(a=0;a<b.length;a+=2)(isNaN(b[a])||isNaN(b[a+1]))&&(T.push(a/2+w+1),i=a+2);p=p.concat(b),t.hole=T}return t.fillmode=s.fill,t.opacity=s.opacity,t.positions=p,t}})),v.fill2d.update(v.fillOptions))}var M=y.dragmode,S=l(M),E=y.clickmode.indexOf(\"select\")>-1;for(m=0;m<b;m++){var C=r[m][0],L=C.trace,I=C.t,P=I.index,z=L._length,O=I.x,D=I.y;if(L.selectedpoints||S||E){if(S||(S=!0),L.selectedpoints){var R=v.selectBatch[P]=s.selIndices2selPoints(L),F={};for(g=0;g<R.length;g++)F[R[g]]=1;var B=[];for(g=0;g<z;g++)F[g]||B.push(g);v.unselectBatch[P]=B}var N=I.xpx=new Array(z),j=I.ypx=new Array(z);for(g=0;g<z;g++)N[g]=x.c2p(O[g]),j[g]=_.c2p(D[g])}else I.xpx=I.ypx=null}if(S){if(v.select2d||(v.select2d=n(y._glcanvas.data()[1].regl)),v.scatter2d){var U=new Array(b);for(m=0;m<b;m++)U[m]=v.selectBatch[m].length||v.unselectBatch[m].length?v.markerUnselectedOptions[m]:{};v.scatter2d.update(U)}v.select2d&&(v.select2d.update(v.markerOptions),v.select2d.update(v.markerSelectedOptions)),v.glText&&r.forEach((function(t){var e=((t||[])[0]||{}).trace||{};u.hasText(e)&&f(t)}))}else v.scatter2d&&v.scatter2d.update(v.markerOptions);var V={viewport:d(y,x,_,t._context.plotGlPixelRatio),range:[(x._rl||x.range)[0],(_._rl||_.range)[0],(x._rl||x.range)[1],(_._rl||_.range)[1]]},q=s.repeat(V,v.count);v.fill2d&&v.fill2d.update(q),v.line2d&&v.line2d.update(q),v.error2d&&v.error2d.update(q.concat(q)),v.scatter2d&&v.scatter2d.update(q),v.select2d&&v.select2d.update(q),v.glText&&v.glText.forEach((function(t){t.update(V)}))}else v.init()}}).reglPrecompiled=p},62336:function(t,e,r){\"use strict\";var n=r(34809);t.exports=function(t,e){var r=e._scene,i={count:0,dirty:!0,lineOptions:[],fillOptions:[],markerOptions:[],markerSelectedOptions:[],markerUnselectedOptions:[],errorXOptions:[],errorYOptions:[],textOptions:[],textSelectedOptions:[],textUnselectedOptions:[],selectBatch:[],unselectBatch:[]},a={fill2d:!1,scatter2d:!1,error2d:!1,line2d:!1,glText:!1,select2d:!1};return e._scene||((r=e._scene={}).init=function(){n.extendFlat(r,a,i)},r.init(),r.update=function(t){var e=n.repeat(t,r.count);if(r.fill2d&&r.fill2d.update(e),r.scatter2d&&r.scatter2d.update(e),r.line2d&&r.line2d.update(e),r.error2d&&r.error2d.update(e.concat(e)),r.select2d&&r.select2d.update(e),r.glText)for(var i=0;i<r.count;i++)r.glText[i].update(t)},r.draw=function(){for(var t=r.count,e=r.fill2d,i=r.error2d,a=r.line2d,o=r.scatter2d,s=r.glText,l=r.select2d,c=r.selectBatch,u=r.unselectBatch,h=0;h<t;h++){if(e&&r.fillOrder[h]&&e.draw(r.fillOrder[h]),a&&r.lineOptions[h]&&a.draw(h),i&&(r.errorXOptions[h]&&i.draw(h),r.errorYOptions[h]&&i.draw(h+t)),o&&r.markerOptions[h])if(u[h].length){var f=n.repeat([],r.count);f[h]=u[h],o.draw(f)}else c[h].length||o.draw(h);s[h]&&r.textOptions[h]&&s[h].render()}l&&l.draw(c),r.dirty=!1},r.destroy=function(){r.fill2d&&r.fill2d.destroy&&r.fill2d.destroy(),r.scatter2d&&r.scatter2d.destroy&&r.scatter2d.destroy(),r.error2d&&r.error2d.destroy&&r.error2d.destroy(),r.line2d&&r.line2d.destroy&&r.line2d.destroy(),r.select2d&&r.select2d.destroy&&r.select2d.destroy(),r.glText&&r.glText.forEach((function(t){t.destroy&&t.destroy()})),r.lineOptions=null,r.fillOptions=null,r.markerOptions=null,r.markerSelectedOptions=null,r.markerUnselectedOptions=null,r.errorXOptions=null,r.errorYOptions=null,r.textOptions=null,r.textSelectedOptions=null,r.textUnselectedOptions=null,r.selectBatch=null,r.unselectBatch=null,e._scene=null}),r.dirty||n.extendFlat(r,i),r}},17168:function(t,e,r){\"use strict\";var n=r(64726),i=r(85686).styleTextSelection;t.exports=function(t,e){var r=t.cd,a=t.xaxis,o=t.yaxis,s=[],l=r[0].trace,c=r[0].t,u=l._length,h=c.x,f=c.y,p=c._scene,d=c.index;if(!p)return s;var m=n.hasText(l),g=n.hasMarkers(l),y=!g&&!m;if(!0!==l.visible||y)return s;var v=[],x=[];if(!1!==e&&!e.degenerate)for(var _=0;_<u;_++)e.contains([c.xpx[_],c.ypx[_]],!1,_,t)?(v.push(_),s.push({pointNumber:_,x:a.c2d(h[_]),y:o.c2d(f[_])})):x.push(_);if(g){var b=p.scatter2d;if(v.length||x.length){if(!p.selectBatch[d].length&&!p.unselectBatch[d].length){var w=new Array(p.count);w[d]=p.markerUnselectedOptions[d],b.update.apply(b,w)}}else{var T=new Array(p.count);T[d]=p.markerOptions[d],b.update.apply(b,T)}}return p.selectBatch[d]=v,p.unselectBatch[d]=x,m&&i(r),s}},71388:function(t,e,r){\"use strict\";var n=r(3208).rb,i=r(3208).ay,a=r(19326),o=r(6893),s=r(36640),l=r(8257),c=r(9829),u=r(87163),h=r(93049).extendFlat,f=r(13582).overrideAll,p=r(8257),d=o.line,m=o.marker;t.exports=f({lon:o.lon,lat:o.lat,cluster:{enabled:{valType:\"boolean\"},maxzoom:h({},p.layers.maxzoom,{}),step:{valType:\"number\",arrayOk:!0,dflt:-1,min:-1},size:{valType:\"number\",arrayOk:!0,dflt:20,min:0},color:{valType:\"color\",arrayOk:!0},opacity:h({},m.opacity,{dflt:1})},mode:h({},s.mode,{dflt:\"markers\"}),text:h({},s.text,{}),texttemplate:i({editType:\"plot\"},{keys:[\"lat\",\"lon\",\"text\"]}),hovertext:h({},s.hovertext,{}),line:{color:d.color,width:d.width},connectgaps:s.connectgaps,marker:h({symbol:{valType:\"string\",dflt:\"circle\",arrayOk:!0},angle:{valType:\"number\",dflt:\"auto\",arrayOk:!0},allowoverlap:{valType:\"boolean\",dflt:!1},opacity:m.opacity,size:m.size,sizeref:m.sizeref,sizemin:m.sizemin,sizemode:m.sizemode},u(\"marker\")),fill:o.fill,fillcolor:a(),textfont:l.layers.symbol.textfont,textposition:l.layers.symbol.textposition,below:{valType:\"string\"},selected:{marker:s.selected.marker},unselected:{marker:s.unselected.marker},hoverinfo:h({},c.hoverinfo,{flags:[\"lon\",\"lat\",\"text\",\"name\"]}),hovertemplate:n()},\"calc\",\"nested\")},13624:function(t){\"use strict\";var e=[\"Metropolis Black Italic\",\"Metropolis Black\",\"Metropolis Bold Italic\",\"Metropolis Bold\",\"Metropolis Extra Bold Italic\",\"Metropolis Extra Bold\",\"Metropolis Extra Light Italic\",\"Metropolis Extra Light\",\"Metropolis Light Italic\",\"Metropolis Light\",\"Metropolis Medium Italic\",\"Metropolis Medium\",\"Metropolis Regular Italic\",\"Metropolis Regular\",\"Metropolis Semi Bold Italic\",\"Metropolis Semi Bold\",\"Metropolis Thin Italic\",\"Metropolis Thin\",\"Open Sans Bold Italic\",\"Open Sans Bold\",\"Open Sans Extrabold Italic\",\"Open Sans Extrabold\",\"Open Sans Italic\",\"Open Sans Light Italic\",\"Open Sans Light\",\"Open Sans Regular\",\"Open Sans Semibold Italic\",\"Open Sans Semibold\",\"Klokantech Noto Sans Bold\",\"Klokantech Noto Sans CJK Bold\",\"Klokantech Noto Sans CJK Regular\",\"Klokantech Noto Sans Italic\",\"Klokantech Noto Sans Regular\"];t.exports={isSupportedFont:function(t){return-1!==e.indexOf(t)}}},76717:function(t,e,r){\"use strict\";var n=r(10721),i=r(34809),a=r(63821).BADNUM,o=r(39532),s=r(88856),l=r(62203),c=r(92527),u=r(64726),h=r(13624).isSupportedFont,f=r(4657),p=r(36040).appendArrayPointValue,d=r(30635).NEWLINES,m=r(30635).BR_TAG_ALL;function g(t){return{type:t,geojson:o.makeBlank(),layout:{visibility:\"none\"},filter:null,paint:{}}}function y(t,e){return i.isArrayOrTypedArray(t)?e?function(e){return n(t[e])?+t[e]:0}:function(e){return t[e]}:t?function(){return t}:v}function v(){return\"\"}function x(t){return t[0]===a}function _(t,e){var r;if(i.isArrayOrTypedArray(t)&&i.isArrayOrTypedArray(e)){r=[\"step\",[\"get\",\"point_count\"],t[0]];for(var n=1;n<t.length;n++)r.push(e[n-1],t[n])}else r=t;return r}function b(t){var e=t.textfont,r=e.family,n=e.style,i=e.weight,a=r.split(\" \"),o=\"Italic\"===a[a.length-1];o&&a.pop(),o=o||\"italic\"===n;var s=a.join(\" \");return\"bold\"===i&&-1===a.indexOf(\"Bold\")?s+=\" Bold\":i<=1e3&&(\"Metropolis\"===a[0]?(s=\"Metropolis\",s+=i>850?\" Black\":i>750?\" Extra Bold\":i>650?\" Bold\":i>550?\" Semi Bold\":i>450?\" Medium\":i>350?\" Regular\":i>250?\" Light\":i>150?\" Extra Light\":\" Thin\"):\"Open Sans\"===a.slice(0,2).join(\" \")?(s=\"Open Sans\",s+=i>750?\" Extrabold\":i>650?\" Bold\":i>550?\" Semibold\":i>350?\" Regular\":\" Light\"):\"Klokantech Noto Sans\"===a.slice(0,3).join(\" \")&&(s=\"Klokantech Noto Sans\",\"CJK\"===a[3]&&(s+=\" CJK\"),s+=i>500?\" Bold\":\" Regular\")),o&&(s+=\" Italic\"),\"Open Sans Regular Italic\"===s?s=\"Open Sans Italic\":\"Open Sans Regular Bold\"===s?s=\"Open Sans Bold\":\"Open Sans Regular Bold Italic\"===s?s=\"Open Sans Bold Italic\":\"Klokantech Noto Sans Regular Italic\"===s&&(s=\"Klokantech Noto Sans Italic\"),h(s)||(s=r),s.split(\", \")}t.exports=function(t,e){var r,a=e[0].trace,h=!0===a.visible&&0!==a._length,w=\"none\"!==a.fill,T=u.hasLines(a),k=u.hasMarkers(a),A=u.hasText(a),M=k&&\"circle\"===a.marker.symbol,S=k&&\"circle\"!==a.marker.symbol,E=a.cluster&&a.cluster.enabled,C=g(\"fill\"),L=g(\"line\"),I=g(\"circle\"),P=g(\"symbol\"),z={fill:C,line:L,circle:I,symbol:P};if(!h)return z;if((w||T)&&(r=o.calcTraceToLineCoords(e)),w&&(C.geojson=o.makePolygon(r),C.layout.visibility=\"visible\",i.extendFlat(C.paint,{\"fill-color\":a.fillcolor})),T&&(L.geojson=o.makeLine(r),L.layout.visibility=\"visible\",i.extendFlat(L.paint,{\"line-width\":a.line.width,\"line-color\":a.line.color,\"line-opacity\":a.opacity})),M){var O=function(t){var e,r,a,o,u=t[0].trace,h=u.marker,f=u.selectedpoints,p=i.isArrayOrTypedArray(h.color),d=i.isArrayOrTypedArray(h.size),m=i.isArrayOrTypedArray(h.opacity);function g(t){return u.opacity*t}p&&(r=s.hasColorscale(u,\"marker\")?s.makeColorScaleFuncFromTrace(h):i.identity),d&&(a=c(u)),m&&(o=function(t){return g(n(t)?+i.constrain(t,0,1):0)});var y,v,_=[];for(e=0;e<t.length;e++){var b=t[e],w=b.lonlat;if(!x(w)){var T={};r&&(T.mcc=b.mcc=r(b.mc)),a&&(T.mrc=b.mrc=a(b.ms)),o&&(T.mo=o(b.mo)),f&&(T.selected=b.selected||0),_.push({type:\"Feature\",id:e+1,geometry:{type:\"Point\",coordinates:w},properties:T})}}if(f)for(y=l.makeSelectedPointStyleFns(u),e=0;e<_.length;e++){var k=_[e].properties;y.selectedOpacityFn&&(k.mo=g(y.selectedOpacityFn(k))),y.selectedColorFn&&(k.mcc=y.selectedColorFn(k)),y.selectedSizeFn&&(k.mrc=y.selectedSizeFn(k))}return{geojson:{type:\"FeatureCollection\",features:_},mcc:p||y&&y.selectedColorFn?{type:\"identity\",property:\"mcc\"}:h.color,mrc:d||y&&y.selectedSizeFn?{type:\"identity\",property:\"mrc\"}:(v=h.size,v/2),mo:m||y&&y.selectedOpacityFn?{type:\"identity\",property:\"mo\"}:g(h.opacity)}}(e);I.geojson=O.geojson,I.layout.visibility=\"visible\",E&&(I.filter=[\"!\",[\"has\",\"point_count\"]],z.cluster={type:\"circle\",filter:[\"has\",\"point_count\"],layout:{visibility:\"visible\"},paint:{\"circle-color\":_(a.cluster.color,a.cluster.step),\"circle-radius\":_(a.cluster.size,a.cluster.step),\"circle-opacity\":_(a.cluster.opacity,a.cluster.step)}},z.clusterCount={type:\"symbol\",filter:[\"has\",\"point_count\"],paint:{},layout:{\"text-field\":\"{point_count_abbreviated}\",\"text-font\":b(a),\"text-size\":12}}),i.extendFlat(I.paint,{\"circle-color\":O.mcc,\"circle-radius\":O.mrc,\"circle-opacity\":O.mo})}if(M&&E&&(I.filter=[\"!\",[\"has\",\"point_count\"]]),(S||A)&&(P.geojson=function(t,e){for(var r=e._fullLayout,n=t[0].trace,a=n.marker||{},o=a.symbol,s=a.angle,l=\"circle\"!==o?y(o):v,c=\"auto\"!==s?y(s,!0):v,h=u.hasText(n)?y(n.text):v,f=[],g=0;g<t.length;g++){var _=t[g];if(!x(_.lonlat)){var b,w=n.texttemplate;if(w){var T=Array.isArray(w)?w[g]||\"\":w,k=n._module.formatLabels(_,n,r),A={};p(A,n,_.i);var M=n._meta||{};b=i.texttemplateString(T,k,r._d3locale,A,_,M)}else b=h(g);b&&(b=b.replace(d,\"\").replace(m,\"\\n\")),f.push({type:\"Feature\",geometry:{type:\"Point\",coordinates:_.lonlat},properties:{symbol:l(g),angle:c(g),text:b}})}}return{type:\"FeatureCollection\",features:f}}(e,t),i.extendFlat(P.layout,{visibility:\"visible\",\"icon-image\":\"{symbol}-15\",\"text-field\":\"{text}\"}),S&&(i.extendFlat(P.layout,{\"icon-size\":a.marker.size/10}),\"angle\"in a.marker&&\"auto\"!==a.marker.angle&&i.extendFlat(P.layout,{\"icon-rotate\":{type:\"identity\",property:\"angle\"},\"icon-rotation-alignment\":\"map\"}),P.layout[\"icon-allow-overlap\"]=a.marker.allowoverlap,i.extendFlat(P.paint,{\"icon-opacity\":a.opacity*a.marker.opacity,\"icon-color\":a.marker.color})),A)){var D=(a.marker||{}).size,R=f(a.textposition,D);i.extendFlat(P.layout,{\"text-size\":a.textfont.size,\"text-anchor\":R.anchor,\"text-offset\":R.offset,\"text-font\":b(a)}),i.extendFlat(P.paint,{\"text-color\":a.textfont.color,\"text-opacity\":a.opacity})}return z}},57387:function(t,e,r){\"use strict\";var n=r(34809),i=r(64726),a=r(24272),o=r(98168),s=r(663),l=r(54114),c=r(71388),u=r(13624).isSupportedFont;t.exports=function(t,e,r,h){function f(r,i){return n.coerce(t,e,c,r,i)}function p(r,i){return n.coerce2(t,e,c,r,i)}var d=function(t,e,r){var n=r(\"lon\")||[],i=r(\"lat\")||[],a=Math.min(n.length,i.length);return e._length=a,a}(0,e,f);if(d){if(f(\"text\"),f(\"texttemplate\"),f(\"hovertext\"),f(\"hovertemplate\"),f(\"mode\"),f(\"below\"),i.hasMarkers(e)){a(t,e,r,h,f,{noLine:!0,noAngle:!0}),f(\"marker.allowoverlap\"),f(\"marker.angle\");var m=e.marker;\"circle\"!==m.symbol&&(n.isArrayOrTypedArray(m.size)&&(m.size=m.size[0]),n.isArrayOrTypedArray(m.color)&&(m.color=m.color[0]))}i.hasLines(e)&&(o(t,e,r,h,f,{noDash:!0}),f(\"connectgaps\"));var g=p(\"cluster.maxzoom\"),y=p(\"cluster.step\"),v=p(\"cluster.color\",e.marker&&e.marker.color||r),x=p(\"cluster.size\"),_=p(\"cluster.opacity\");if(f(\"cluster.enabled\",!1!==g||!1!==y||!1!==v||!1!==x||!1!==_)||i.hasText(e)){var b=h.font.family;s(t,e,h,f,{noSelect:!0,noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,font:{family:u(b)?b:\"Open Sans Regular\",weight:h.font.weight,style:h.font.style,size:h.font.size,color:h.font.color}})}f(\"fill\"),\"none\"!==e.fill&&l(t,e,r,f),n.coerceSelectionMarkerOpacity(e,f)}else e.visible=!1}},58240:function(t){\"use strict\";t.exports=function(t,e){return t.lon=e.lon,t.lat=e.lat,t}},66762:function(t,e,r){\"use strict\";var n=r(29714);t.exports=function(t,e,r){var i={},a=r[e.subplot]._subplot.mockAxis,o=t.lonlat;return i.lonLabel=n.tickText(a,a.c2l(o[0]),!0).text,i.latLabel=n.tickText(a,a.c2l(o[1]),!0).text,i}},67275:function(t,e,r){\"use strict\";var n=r(32141),i=r(34809),a=r(11539),o=i.fillText,s=r(63821).BADNUM,l=r(8814).traceLayerPrefix;function c(t,e,r){if(!t.hovertemplate){var n=(e.hi||t.hoverinfo).split(\"+\"),i=-1!==n.indexOf(\"all\"),a=-1!==n.indexOf(\"lon\"),s=-1!==n.indexOf(\"lat\"),l=e.lonlat,c=[];return i||a&&s?c.push(\"(\"+u(l[1])+\", \"+u(l[0])+\")\"):a?c.push(r.lon+u(l[0])):s&&c.push(r.lat+u(l[1])),(i||-1!==n.indexOf(\"text\"))&&o(e,t,c),c.join(\"<br>\")}function u(t){return t+\"°\"}}t.exports={hoverPoints:function(t,e,r){var o=t.cd,u=o[0].trace,h=t.xa,f=t.ya,p=t.subplot,d=[],m=l+u.uid+\"-circle\",g=u.cluster&&u.cluster.enabled;if(g){var y=p.map.queryRenderedFeatures(null,{layers:[m]});d=y.map((function(t){return t.id}))}var v=360*(e>=0?Math.floor((e+180)/360):Math.ceil((e-180)/360)),x=e-v;if(n.getClosest(o,(function(t){var e=t.lonlat;if(e[0]===s)return 1/0;if(g&&-1===d.indexOf(t.i+1))return 1/0;var n=i.modHalf(e[0],360),a=e[1],o=p.project([n,a]),l=o.x-h.c2p([x,a]),c=o.y-f.c2p([n,r]),u=Math.max(3,t.mrc||0);return Math.max(Math.sqrt(l*l+c*c)-u,1-3/u)}),t),!1!==t.index){var _=o[t.index],b=_.lonlat,w=[i.modHalf(b[0],360)+v,b[1]],T=h.c2p(w),k=f.c2p(w),A=_.mrc||1;t.x0=T-A,t.x1=T+A,t.y0=k-A,t.y1=k+A;var M={};M[u.subplot]={_subplot:p};var S=u._module.formatLabels(_,u,M);return t.lonLabel=S.lonLabel,t.latLabel=S.latLabel,t.color=a(u,_),t.extraText=c(u,_,o[0].t.labels),t.hovertemplate=u.hovertemplate,[t]}},getExtraText:c}},30929:function(t,e,r){\"use strict\";t.exports={attributes:r(71388),supplyDefaults:r(57387),colorbar:r(21146),formatLabels:r(66762),calc:r(75649),plot:r(26126),hoverPoints:r(67275).hoverPoints,eventData:r(58240),selectPoints:r(21501),styleOnSelect:function(t,e){e&&e[0].trace._glTrace.update(e)},moduleType:\"trace\",name:\"scattermap\",basePlotModule:r(34091),categories:[\"map\",\"gl\",\"symbols\",\"showLegend\",\"scatter-like\"],meta:{}}},26126:function(t,e,r){\"use strict\";var n=r(34809),i=r(76717),a=r(8814).traceLayerPrefix,o={cluster:[\"cluster\",\"clusterCount\",\"circle\"],nonCluster:[\"fill\",\"line\",\"circle\",\"symbol\"]};function s(t,e,r,n){this.type=\"scattermap\",this.subplot=t,this.uid=e,this.clusterEnabled=r,this.isHidden=n,this.sourceIds={fill:\"source-\"+e+\"-fill\",line:\"source-\"+e+\"-line\",circle:\"source-\"+e+\"-circle\",symbol:\"source-\"+e+\"-symbol\",cluster:\"source-\"+e+\"-circle\",clusterCount:\"source-\"+e+\"-circle\"},this.layerIds={fill:a+e+\"-fill\",line:a+e+\"-line\",circle:a+e+\"-circle\",symbol:a+e+\"-symbol\",cluster:a+e+\"-cluster\",clusterCount:a+e+\"-cluster-count\"},this.below=null}var l=s.prototype;l.addSource=function(t,e,r){var i={type:\"geojson\",data:e.geojson};r&&r.enabled&&n.extendFlat(i,{cluster:!0,clusterMaxZoom:r.maxzoom});var a=this.subplot.map.getSource(this.sourceIds[t]);a?a.setData(e.geojson):this.subplot.map.addSource(this.sourceIds[t],i)},l.setSourceData=function(t,e){this.subplot.map.getSource(this.sourceIds[t]).setData(e.geojson)},l.addLayer=function(t,e,r){var n={type:e.type,id:this.layerIds[t],source:this.sourceIds[t],layout:e.layout,paint:e.paint};e.filter&&(n.filter=e.filter);for(var i,a=this.layerIds[t],o=this.subplot.getMapLayers(),s=0;s<o.length;s++)if(o[s].id===a){i=!0;break}i?(this.subplot.setOptions(a,\"setLayoutProperty\",n.layout),\"visible\"===n.layout.visibility&&this.subplot.setOptions(a,\"setPaintProperty\",n.paint)):this.subplot.addLayer(n,r)},l.update=function(t){var e=t[0].trace,r=this.subplot,n=r.map,a=i(r.gd,t),s=r.belowLookup[\"trace-\"+this.uid],l=!(!e.cluster||!e.cluster.enabled),c=!!this.clusterEnabled,u=this;function h(t){c?function(t){for(var e=o.cluster,r=e.length-1;r>=0;r--){var i=e[r];n.removeLayer(u.layerIds[i])}t||n.removeSource(u.sourceIds.circle)}(t):function(t){for(var e=o.nonCluster,r=e.length-1;r>=0;r--){var i=e[r];n.removeLayer(u.layerIds[i]),t||n.removeSource(u.sourceIds[i])}}(t)}function f(t){l?function(t){t||u.addSource(\"circle\",a.circle,e.cluster);for(var r=o.cluster,n=0;n<r.length;n++){var i=r[n],l=a[i];u.addLayer(i,l,s)}}(t):function(t){for(var e=o.nonCluster,r=0;r<e.length;r++){var n=e[r],i=a[n];t||u.addSource(n,i),u.addLayer(n,i,s)}}(t)}function p(){for(var t=l?o.cluster:o.nonCluster,e=0;e<t.length;e++){var n=t[e],i=a[n];i&&(r.setOptions(u.layerIds[n],\"setLayoutProperty\",i.layout),\"visible\"===i.layout.visibility&&(\"cluster\"!==n&&u.setSourceData(n,i),r.setOptions(u.layerIds[n],\"setPaintProperty\",i.paint)))}}var d=this.isHidden,m=!0!==e.visible;m?d||h():d?m||f():c!==l?(h(),f()):this.below!==s?(h(!0),f(!0),p()):p(),this.clusterEnabled=l,this.isHidden=m,this.below=s,t[0].trace._glTrace=this},l.dispose=function(){for(var t=this.subplot.map,e=this.clusterEnabled?o.cluster:o.nonCluster,r=e.length-1;r>=0;r--){var n=e[r];t.removeLayer(this.layerIds[n]),t.removeSource(this.sourceIds[n])}},t.exports=function(t,e){var r,n,a,l=e[0].trace,c=l.cluster&&l.cluster.enabled,u=!0!==l.visible,h=new s(t,l.uid,c,u),f=i(t.gd,e),p=h.below=t.belowLookup[\"trace-\"+l.uid];if(c)for(h.addSource(\"circle\",f.circle,l.cluster),r=0;r<o.cluster.length;r++)a=f[n=o.cluster[r]],h.addLayer(n,a,p);else for(r=0;r<o.nonCluster.length;r++)a=f[n=o.nonCluster[r]],h.addSource(n,a,l.cluster),h.addLayer(n,a,p);return e[0].trace._glTrace=h,h}},21501:function(t,e,r){\"use strict\";var n=r(34809),i=r(64726),a=r(63821).BADNUM;t.exports=function(t,e){var r,o=t.cd,s=t.xaxis,l=t.yaxis,c=[],u=o[0].trace;if(!i.hasMarkers(u))return[];if(!1===e)for(r=0;r<o.length;r++)o[r].selected=0;else for(r=0;r<o.length;r++){var h=o[r],f=h.lonlat;if(f[0]!==a){var p=[n.modHalf(f[0],360),f[1]],d=[s.c2p(p),l.c2p(p)];e.contains(d,null,r,t)?(c.push({pointNumber:r,lon:f[0],lat:f[1]}),h.selected=1):h.selected=0}}return c}},95833:function(t,e,r){\"use strict\";var n=r(3208).rb,i=r(3208).ay,a=r(19326),o=r(6893),s=r(36640),l=r(67514),c=r(9829),u=r(87163),h=r(93049).extendFlat,f=r(13582).overrideAll,p=r(67514),d=o.line,m=o.marker;t.exports=f({lon:o.lon,lat:o.lat,cluster:{enabled:{valType:\"boolean\"},maxzoom:h({},p.layers.maxzoom,{}),step:{valType:\"number\",arrayOk:!0,dflt:-1,min:-1},size:{valType:\"number\",arrayOk:!0,dflt:20,min:0},color:{valType:\"color\",arrayOk:!0},opacity:h({},m.opacity,{dflt:1})},mode:h({},s.mode,{dflt:\"markers\"}),text:h({},s.text,{}),texttemplate:i({editType:\"plot\"},{keys:[\"lat\",\"lon\",\"text\"]}),hovertext:h({},s.hovertext,{}),line:{color:d.color,width:d.width},connectgaps:s.connectgaps,marker:h({symbol:{valType:\"string\",dflt:\"circle\",arrayOk:!0},angle:{valType:\"number\",dflt:\"auto\",arrayOk:!0},allowoverlap:{valType:\"boolean\",dflt:!1},opacity:m.opacity,size:m.size,sizeref:m.sizeref,sizemin:m.sizemin,sizemode:m.sizemode},u(\"marker\")),fill:o.fill,fillcolor:a(),textfont:l.layers.symbol.textfont,textposition:l.layers.symbol.textposition,below:{valType:\"string\"},selected:{marker:s.selected.marker},unselected:{marker:s.unselected.marker},hoverinfo:h({},c.hoverinfo,{flags:[\"lon\",\"lat\",\"text\",\"name\"]}),hovertemplate:n()},\"calc\",\"nested\")},2795:function(t){\"use strict\";var e=[\"Metropolis Black Italic\",\"Metropolis Black\",\"Metropolis Bold Italic\",\"Metropolis Bold\",\"Metropolis Extra Bold Italic\",\"Metropolis Extra Bold\",\"Metropolis Extra Light Italic\",\"Metropolis Extra Light\",\"Metropolis Light Italic\",\"Metropolis Light\",\"Metropolis Medium Italic\",\"Metropolis Medium\",\"Metropolis Regular Italic\",\"Metropolis Regular\",\"Metropolis Semi Bold Italic\",\"Metropolis Semi Bold\",\"Metropolis Thin Italic\",\"Metropolis Thin\",\"Open Sans Bold Italic\",\"Open Sans Bold\",\"Open Sans Extrabold Italic\",\"Open Sans Extrabold\",\"Open Sans Italic\",\"Open Sans Light Italic\",\"Open Sans Light\",\"Open Sans Regular\",\"Open Sans Semibold Italic\",\"Open Sans Semibold\",\"Klokantech Noto Sans Bold\",\"Klokantech Noto Sans CJK Bold\",\"Klokantech Noto Sans CJK Regular\",\"Klokantech Noto Sans Italic\",\"Klokantech Noto Sans Regular\"];t.exports={isSupportedFont:function(t){return-1!==e.indexOf(t)}}},27009:function(t,e,r){\"use strict\";var n=r(10721),i=r(34809),a=r(63821).BADNUM,o=r(39532),s=r(88856),l=r(62203),c=r(92527),u=r(64726),h=r(2795).isSupportedFont,f=r(2178),p=r(36040).appendArrayPointValue,d=r(30635).NEWLINES,m=r(30635).BR_TAG_ALL;function g(t){return{type:t,geojson:o.makeBlank(),layout:{visibility:\"none\"},filter:null,paint:{}}}function y(t,e){return i.isArrayOrTypedArray(t)?e?function(e){return n(t[e])?+t[e]:0}:function(e){return t[e]}:t?function(){return t}:v}function v(){return\"\"}function x(t){return t[0]===a}function _(t,e){var r;if(i.isArrayOrTypedArray(t)&&i.isArrayOrTypedArray(e)){r=[\"step\",[\"get\",\"point_count\"],t[0]];for(var n=1;n<t.length;n++)r.push(e[n-1],t[n])}else r=t;return r}function b(t){var e=t.textfont,r=e.family,n=e.style,i=e.weight,a=r.split(\" \"),o=\"Italic\"===a[a.length-1];o&&a.pop(),o=o||\"italic\"===n;var s=a.join(\" \");return\"bold\"===i&&-1===a.indexOf(\"Bold\")?s+=\" Bold\":i<=1e3&&(\"Metropolis\"===a[0]?(s=\"Metropolis\",s+=i>850?\" Black\":i>750?\" Extra Bold\":i>650?\" Bold\":i>550?\" Semi Bold\":i>450?\" Medium\":i>350?\" Regular\":i>250?\" Light\":i>150?\" Extra Light\":\" Thin\"):\"Open Sans\"===a.slice(0,2).join(\" \")?(s=\"Open Sans\",s+=i>750?\" Extrabold\":i>650?\" Bold\":i>550?\" Semibold\":i>350?\" Regular\":\" Light\"):\"Klokantech Noto Sans\"===a.slice(0,3).join(\" \")&&(s=\"Klokantech Noto Sans\",\"CJK\"===a[3]&&(s+=\" CJK\"),s+=i>500?\" Bold\":\" Regular\")),o&&(s+=\" Italic\"),\"Open Sans Regular Italic\"===s?s=\"Open Sans Italic\":\"Open Sans Regular Bold\"===s?s=\"Open Sans Bold\":\"Open Sans Regular Bold Italic\"===s?s=\"Open Sans Bold Italic\":\"Klokantech Noto Sans Regular Italic\"===s&&(s=\"Klokantech Noto Sans Italic\"),h(s)||(s=r),s.split(\", \")}t.exports=function(t,e){var r,a=e[0].trace,h=!0===a.visible&&0!==a._length,w=\"none\"!==a.fill,T=u.hasLines(a),k=u.hasMarkers(a),A=u.hasText(a),M=k&&\"circle\"===a.marker.symbol,S=k&&\"circle\"!==a.marker.symbol,E=a.cluster&&a.cluster.enabled,C=g(\"fill\"),L=g(\"line\"),I=g(\"circle\"),P=g(\"symbol\"),z={fill:C,line:L,circle:I,symbol:P};if(!h)return z;if((w||T)&&(r=o.calcTraceToLineCoords(e)),w&&(C.geojson=o.makePolygon(r),C.layout.visibility=\"visible\",i.extendFlat(C.paint,{\"fill-color\":a.fillcolor})),T&&(L.geojson=o.makeLine(r),L.layout.visibility=\"visible\",i.extendFlat(L.paint,{\"line-width\":a.line.width,\"line-color\":a.line.color,\"line-opacity\":a.opacity})),M){var O=function(t){var e,r,a,o,u=t[0].trace,h=u.marker,f=u.selectedpoints,p=i.isArrayOrTypedArray(h.color),d=i.isArrayOrTypedArray(h.size),m=i.isArrayOrTypedArray(h.opacity);function g(t){return u.opacity*t}p&&(r=s.hasColorscale(u,\"marker\")?s.makeColorScaleFuncFromTrace(h):i.identity),d&&(a=c(u)),m&&(o=function(t){return g(n(t)?+i.constrain(t,0,1):0)});var y,v,_=[];for(e=0;e<t.length;e++){var b=t[e],w=b.lonlat;if(!x(w)){var T={};r&&(T.mcc=b.mcc=r(b.mc)),a&&(T.mrc=b.mrc=a(b.ms)),o&&(T.mo=o(b.mo)),f&&(T.selected=b.selected||0),_.push({type:\"Feature\",id:e+1,geometry:{type:\"Point\",coordinates:w},properties:T})}}if(f)for(y=l.makeSelectedPointStyleFns(u),e=0;e<_.length;e++){var k=_[e].properties;y.selectedOpacityFn&&(k.mo=g(y.selectedOpacityFn(k))),y.selectedColorFn&&(k.mcc=y.selectedColorFn(k)),y.selectedSizeFn&&(k.mrc=y.selectedSizeFn(k))}return{geojson:{type:\"FeatureCollection\",features:_},mcc:p||y&&y.selectedColorFn?{type:\"identity\",property:\"mcc\"}:h.color,mrc:d||y&&y.selectedSizeFn?{type:\"identity\",property:\"mrc\"}:(v=h.size,v/2),mo:m||y&&y.selectedOpacityFn?{type:\"identity\",property:\"mo\"}:g(h.opacity)}}(e);I.geojson=O.geojson,I.layout.visibility=\"visible\",E&&(I.filter=[\"!\",[\"has\",\"point_count\"]],z.cluster={type:\"circle\",filter:[\"has\",\"point_count\"],layout:{visibility:\"visible\"},paint:{\"circle-color\":_(a.cluster.color,a.cluster.step),\"circle-radius\":_(a.cluster.size,a.cluster.step),\"circle-opacity\":_(a.cluster.opacity,a.cluster.step)}},z.clusterCount={type:\"symbol\",filter:[\"has\",\"point_count\"],paint:{},layout:{\"text-field\":\"{point_count_abbreviated}\",\"text-font\":b(a),\"text-size\":12}}),i.extendFlat(I.paint,{\"circle-color\":O.mcc,\"circle-radius\":O.mrc,\"circle-opacity\":O.mo})}if(M&&E&&(I.filter=[\"!\",[\"has\",\"point_count\"]]),(S||A)&&(P.geojson=function(t,e){for(var r=e._fullLayout,n=t[0].trace,a=n.marker||{},o=a.symbol,s=a.angle,l=\"circle\"!==o?y(o):v,c=\"auto\"!==s?y(s,!0):v,h=u.hasText(n)?y(n.text):v,f=[],g=0;g<t.length;g++){var _=t[g];if(!x(_.lonlat)){var b,w=n.texttemplate;if(w){var T=Array.isArray(w)?w[g]||\"\":w,k=n._module.formatLabels(_,n,r),A={};p(A,n,_.i);var M=n._meta||{};b=i.texttemplateString(T,k,r._d3locale,A,_,M)}else b=h(g);b&&(b=b.replace(d,\"\").replace(m,\"\\n\")),f.push({type:\"Feature\",geometry:{type:\"Point\",coordinates:_.lonlat},properties:{symbol:l(g),angle:c(g),text:b}})}}return{type:\"FeatureCollection\",features:f}}(e,t),i.extendFlat(P.layout,{visibility:\"visible\",\"icon-image\":\"{symbol}-15\",\"text-field\":\"{text}\"}),S&&(i.extendFlat(P.layout,{\"icon-size\":a.marker.size/10}),\"angle\"in a.marker&&\"auto\"!==a.marker.angle&&i.extendFlat(P.layout,{\"icon-rotate\":{type:\"identity\",property:\"angle\"},\"icon-rotation-alignment\":\"map\"}),P.layout[\"icon-allow-overlap\"]=a.marker.allowoverlap,i.extendFlat(P.paint,{\"icon-opacity\":a.opacity*a.marker.opacity,\"icon-color\":a.marker.color})),A)){var D=(a.marker||{}).size,R=f(a.textposition,D);i.extendFlat(P.layout,{\"text-size\":a.textfont.size,\"text-anchor\":R.anchor,\"text-offset\":R.offset,\"text-font\":b(a)}),i.extendFlat(P.paint,{\"text-color\":a.textfont.color,\"text-opacity\":a.opacity})}return z}},38302:function(t,e,r){\"use strict\";var n=r(34809),i=r(64726),a=r(24272),o=r(98168),s=r(663),l=r(54114),c=r(95833),u=r(2795).isSupportedFont;t.exports=function(t,e,r,h){function f(r,i){return n.coerce(t,e,c,r,i)}function p(r,i){return n.coerce2(t,e,c,r,i)}var d=function(t,e,r){var n=r(\"lon\")||[],i=r(\"lat\")||[],a=Math.min(n.length,i.length);return e._length=a,a}(0,e,f);if(d){if(f(\"text\"),f(\"texttemplate\"),f(\"hovertext\"),f(\"hovertemplate\"),f(\"mode\"),f(\"below\"),i.hasMarkers(e)){a(t,e,r,h,f,{noLine:!0,noAngle:!0}),f(\"marker.allowoverlap\"),f(\"marker.angle\");var m=e.marker;\"circle\"!==m.symbol&&(n.isArrayOrTypedArray(m.size)&&(m.size=m.size[0]),n.isArrayOrTypedArray(m.color)&&(m.color=m.color[0]))}i.hasLines(e)&&(o(t,e,r,h,f,{noDash:!0}),f(\"connectgaps\"));var g=p(\"cluster.maxzoom\"),y=p(\"cluster.step\"),v=p(\"cluster.color\",e.marker&&e.marker.color||r),x=p(\"cluster.size\"),_=p(\"cluster.opacity\");if(f(\"cluster.enabled\",!1!==g||!1!==y||!1!==v||!1!==x||!1!==_)||i.hasText(e)){var b=h.font.family;s(t,e,h,f,{noSelect:!0,noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,font:{family:u(b)?b:\"Open Sans Regular\",weight:h.font.weight,style:h.font.style,size:h.font.size,color:h.font.color}})}f(\"fill\"),\"none\"!==e.fill&&l(t,e,r,f),n.coerceSelectionMarkerOpacity(e,f)}else e.visible=!1}},68197:function(t){\"use strict\";t.exports=function(t,e){return t.lon=e.lon,t.lat=e.lat,t}},69009:function(t,e,r){\"use strict\";var n=r(29714);t.exports=function(t,e,r){var i={},a=r[e.subplot]._subplot.mockAxis,o=t.lonlat;return i.lonLabel=n.tickText(a,a.c2l(o[0]),!0).text,i.latLabel=n.tickText(a,a.c2l(o[1]),!0).text,i}},18016:function(t,e,r){\"use strict\";var n=r(32141),i=r(34809),a=r(11539),o=i.fillText,s=r(63821).BADNUM,l=r(44245).traceLayerPrefix;function c(t,e,r){if(!t.hovertemplate){var n=(e.hi||t.hoverinfo).split(\"+\"),i=-1!==n.indexOf(\"all\"),a=-1!==n.indexOf(\"lon\"),s=-1!==n.indexOf(\"lat\"),l=e.lonlat,c=[];return i||a&&s?c.push(\"(\"+u(l[1])+\", \"+u(l[0])+\")\"):a?c.push(r.lon+u(l[0])):s&&c.push(r.lat+u(l[1])),(i||-1!==n.indexOf(\"text\"))&&o(e,t,c),c.join(\"<br>\")}function u(t){return t+\"°\"}}t.exports={hoverPoints:function(t,e,r){var o=t.cd,u=o[0].trace,h=t.xa,f=t.ya,p=t.subplot,d=[],m=l+u.uid+\"-circle\",g=u.cluster&&u.cluster.enabled;if(g){var y=p.map.queryRenderedFeatures(null,{layers:[m]});d=y.map((function(t){return t.id}))}var v=360*(e>=0?Math.floor((e+180)/360):Math.ceil((e-180)/360)),x=e-v;if(n.getClosest(o,(function(t){var e=t.lonlat;if(e[0]===s)return 1/0;if(g&&-1===d.indexOf(t.i+1))return 1/0;var n=i.modHalf(e[0],360),a=e[1],o=p.project([n,a]),l=o.x-h.c2p([x,a]),c=o.y-f.c2p([n,r]),u=Math.max(3,t.mrc||0);return Math.max(Math.sqrt(l*l+c*c)-u,1-3/u)}),t),!1!==t.index){var _=o[t.index],b=_.lonlat,w=[i.modHalf(b[0],360)+v,b[1]],T=h.c2p(w),k=f.c2p(w),A=_.mrc||1;t.x0=T-A,t.x1=T+A,t.y0=k-A,t.y1=k+A;var M={};M[u.subplot]={_subplot:p};var S=u._module.formatLabels(_,u,M);return t.lonLabel=S.lonLabel,t.latLabel=S.latLabel,t.color=a(u,_),t.extraText=c(u,_,o[0].t.labels),t.hovertemplate=u.hovertemplate,[t]}},getExtraText:c}},83866:function(t,e,r){\"use strict\";[\"*scattermapbox* trace is deprecated!\",\"Please consider switching to the *scattermap* trace type and `map` subplots.\",\"Learn more at: https://plotly.com/javascript/maplibre-migration/\"].join(\" \"),t.exports={attributes:r(95833),supplyDefaults:r(38302),colorbar:r(21146),formatLabels:r(69009),calc:r(75649),plot:r(20691),hoverPoints:r(18016).hoverPoints,eventData:r(68197),selectPoints:r(60784),styleOnSelect:function(t,e){e&&e[0].trace._glTrace.update(e)},moduleType:\"trace\",name:\"scattermapbox\",basePlotModule:r(68192),categories:[\"mapbox\",\"gl\",\"symbols\",\"showLegend\",\"scatter-like\"],meta:{}}},20691:function(t,e,r){\"use strict\";var n=r(34809),i=r(27009),a=r(44245).traceLayerPrefix,o={cluster:[\"cluster\",\"clusterCount\",\"circle\"],nonCluster:[\"fill\",\"line\",\"circle\",\"symbol\"]};function s(t,e,r,n){this.type=\"scattermapbox\",this.subplot=t,this.uid=e,this.clusterEnabled=r,this.isHidden=n,this.sourceIds={fill:\"source-\"+e+\"-fill\",line:\"source-\"+e+\"-line\",circle:\"source-\"+e+\"-circle\",symbol:\"source-\"+e+\"-symbol\",cluster:\"source-\"+e+\"-circle\",clusterCount:\"source-\"+e+\"-circle\"},this.layerIds={fill:a+e+\"-fill\",line:a+e+\"-line\",circle:a+e+\"-circle\",symbol:a+e+\"-symbol\",cluster:a+e+\"-cluster\",clusterCount:a+e+\"-cluster-count\"},this.below=null}var l=s.prototype;l.addSource=function(t,e,r){var i={type:\"geojson\",data:e.geojson};r&&r.enabled&&n.extendFlat(i,{cluster:!0,clusterMaxZoom:r.maxzoom});var a=this.subplot.map.getSource(this.sourceIds[t]);a?a.setData(e.geojson):this.subplot.map.addSource(this.sourceIds[t],i)},l.setSourceData=function(t,e){this.subplot.map.getSource(this.sourceIds[t]).setData(e.geojson)},l.addLayer=function(t,e,r){var n={type:e.type,id:this.layerIds[t],source:this.sourceIds[t],layout:e.layout,paint:e.paint};e.filter&&(n.filter=e.filter);for(var i,a=this.layerIds[t],o=this.subplot.getMapLayers(),s=0;s<o.length;s++)if(o[s].id===a){i=!0;break}i?(this.subplot.setOptions(a,\"setLayoutProperty\",n.layout),\"visible\"===n.layout.visibility&&this.subplot.setOptions(a,\"setPaintProperty\",n.paint)):this.subplot.addLayer(n,r)},l.update=function(t){var e=t[0].trace,r=this.subplot,n=r.map,a=i(r.gd,t),s=r.belowLookup[\"trace-\"+this.uid],l=!(!e.cluster||!e.cluster.enabled),c=!!this.clusterEnabled,u=this;function h(t){c?function(t){for(var e=o.cluster,r=e.length-1;r>=0;r--){var i=e[r];n.removeLayer(u.layerIds[i])}t||n.removeSource(u.sourceIds.circle)}(t):function(t){for(var e=o.nonCluster,r=e.length-1;r>=0;r--){var i=e[r];n.removeLayer(u.layerIds[i]),t||n.removeSource(u.sourceIds[i])}}(t)}function f(t){l?function(t){t||u.addSource(\"circle\",a.circle,e.cluster);for(var r=o.cluster,n=0;n<r.length;n++){var i=r[n],l=a[i];u.addLayer(i,l,s)}}(t):function(t){for(var e=o.nonCluster,r=0;r<e.length;r++){var n=e[r],i=a[n];t||u.addSource(n,i),u.addLayer(n,i,s)}}(t)}function p(){for(var t=l?o.cluster:o.nonCluster,e=0;e<t.length;e++){var n=t[e],i=a[n];i&&(r.setOptions(u.layerIds[n],\"setLayoutProperty\",i.layout),\"visible\"===i.layout.visibility&&(\"cluster\"!==n&&u.setSourceData(n,i),r.setOptions(u.layerIds[n],\"setPaintProperty\",i.paint)))}}var d=this.isHidden,m=!0!==e.visible;m?d||h():d?m||f():c!==l?(h(),f()):this.below!==s?(h(!0),f(!0),p()):p(),this.clusterEnabled=l,this.isHidden=m,this.below=s,t[0].trace._glTrace=this},l.dispose=function(){for(var t=this.subplot.map,e=this.clusterEnabled?o.cluster:o.nonCluster,r=e.length-1;r>=0;r--){var n=e[r];t.removeLayer(this.layerIds[n]),t.removeSource(this.sourceIds[n])}},t.exports=function(t,e){var r,n,a,l=e[0].trace,c=l.cluster&&l.cluster.enabled,u=!0!==l.visible,h=new s(t,l.uid,c,u),f=i(t.gd,e),p=h.below=t.belowLookup[\"trace-\"+l.uid];if(c)for(h.addSource(\"circle\",f.circle,l.cluster),r=0;r<o.cluster.length;r++)a=f[n=o.cluster[r]],h.addLayer(n,a,p);else for(r=0;r<o.nonCluster.length;r++)a=f[n=o.nonCluster[r]],h.addSource(n,a,l.cluster),h.addLayer(n,a,p);return e[0].trace._glTrace=h,h}},60784:function(t,e,r){\"use strict\";var n=r(34809),i=r(64726),a=r(63821).BADNUM;t.exports=function(t,e){var r,o=t.cd,s=t.xaxis,l=t.yaxis,c=[],u=o[0].trace;if(!i.hasMarkers(u))return[];if(!1===e)for(r=0;r<o.length;r++)o[r].selected=0;else for(r=0;r<o.length;r++){var h=o[r],f=h.lonlat;if(f[0]!==a){var p=[n.modHalf(f[0],360),f[1]],d=[s.c2p(p),l.c2p(p)];e.contains(d,null,r,t)?(c.push({pointNumber:r,lon:f[0],lat:f[1]}),h.selected=1):h.selected=0}}return c}},8738:function(t,e,r){\"use strict\";var n=r(3208).rb,i=r(3208).ay,a=r(93049).extendFlat,o=r(19326),s=r(36640),l=r(9829),c=s.line;t.exports={mode:s.mode,r:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},theta:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},r0:{valType:\"any\",dflt:0,editType:\"calc+clearAxisTypes\"},dr:{valType:\"number\",dflt:1,editType:\"calc\"},theta0:{valType:\"any\",dflt:0,editType:\"calc+clearAxisTypes\"},dtheta:{valType:\"number\",editType:\"calc\"},thetaunit:{valType:\"enumerated\",values:[\"radians\",\"degrees\",\"gradians\"],dflt:\"degrees\",editType:\"calc+clearAxisTypes\"},text:s.text,texttemplate:i({editType:\"plot\"},{keys:[\"r\",\"theta\",\"text\"]}),hovertext:s.hovertext,line:{color:c.color,width:c.width,dash:c.dash,backoff:c.backoff,shape:a({},c.shape,{values:[\"linear\",\"spline\"]}),smoothing:c.smoothing,editType:\"calc\"},connectgaps:s.connectgaps,marker:s.marker,cliponaxis:a({},s.cliponaxis,{dflt:!1}),textposition:s.textposition,textfont:s.textfont,fill:a({},s.fill,{values:[\"none\",\"toself\",\"tonext\"],dflt:\"none\"}),fillcolor:o(),hoverinfo:a({},l.hoverinfo,{flags:[\"r\",\"theta\",\"text\",\"name\"]}),hoveron:s.hoveron,hovertemplate:n(),selected:s.selected,unselected:s.unselected}},13246:function(t,e,r){\"use strict\";var n=r(10721),i=r(63821).BADNUM,a=r(29714),o=r(77272),s=r(99203),l=r(48861),c=r(26544).calcMarkerSize;t.exports=function(t,e){for(var r=t._fullLayout,u=e.subplot,h=r[u].radialaxis,f=r[u].angularaxis,p=h.makeCalcdata(e,\"r\"),d=f.makeCalcdata(e,\"theta\"),m=e._length,g=new Array(m),y=0;y<m;y++){var v=p[y],x=d[y],_=g[y]={};n(v)&&n(x)?(_.r=v,_.theta=x):_.r=i}var b=c(e,m);return e._extremes.x=a.findExtremes(h,p,{ppad:b}),o(t,e),s(g,e),l(g,e),g}},73749:function(t,e,r){\"use strict\";var n=r(34809),i=r(64726),a=r(24272),o=r(98168),s=r(91602),l=r(663),c=r(54114),u=r(32660).PTS_LINESONLY,h=r(8738);function f(t,e,r,i){var a,o=i(\"r\"),s=i(\"theta\");if(n.isTypedArray(o)&&(e.r=o=Array.from(o)),n.isTypedArray(s)&&(e.theta=s=Array.from(s)),o)s?a=Math.min(o.length,s.length):(a=o.length,i(\"theta0\"),i(\"dtheta\"));else{if(!s)return 0;a=e.theta.length,i(\"r0\"),i(\"dr\")}return e._length=a,a}t.exports={handleRThetaDefaults:f,supplyDefaults:function(t,e,r,p){function d(r,i){return n.coerce(t,e,h,r,i)}var m=f(0,e,0,d);if(m){d(\"thetaunit\"),d(\"mode\",m<u?\"lines+markers\":\"lines\"),d(\"text\"),d(\"hovertext\"),\"fills\"!==e.hoveron&&d(\"hovertemplate\"),i.hasMarkers(e)&&a(t,e,r,p,d,{gradient:!0}),i.hasLines(e)&&(o(t,e,r,p,d,{backoff:!0}),s(t,e,d),d(\"connectgaps\")),i.hasText(e)&&(d(\"texttemplate\"),l(t,e,p,d));var g=[];(i.hasMarkers(e)||i.hasText(e))&&(d(\"cliponaxis\"),d(\"marker.maxdisplayed\"),g.push(\"points\")),d(\"fill\"),\"none\"!==e.fill&&(c(t,e,r,d),i.hasLines(e)||s(t,e,d)),\"tonext\"!==e.fill&&\"toself\"!==e.fill||g.push(\"fills\"),d(\"hoveron\",g.join(\"+\")||\"points\"),n.coerceSelectionMarkerOpacity(e,d)}else e.visible=!1}}},33368:function(t,e,r){\"use strict\";var n=r(34809),i=r(29714);t.exports=function(t,e,r){var a,o,s={},l=r[e.subplot]._subplot;l?(a=l.radialAxis,o=l.angularAxis):(a=(l=r[e.subplot]).radialaxis,o=l.angularaxis);var c=a.c2l(t.r);s.rLabel=i.tickText(a,c,!0).text;var u=\"degrees\"===o.thetaunit?n.rad2deg(t.theta):t.theta;return s.thetaLabel=i.tickText(o,u,!0).text,s}},29709:function(t,e,r){\"use strict\";var n=r(37255);function i(t,e,r,n){var i=r.radialAxis,a=r.angularAxis;i._hovertitle=\"r\",a._hovertitle=\"θ\";var o={};o[e.subplot]={_subplot:r};var s=e._module.formatLabels(t,e,o);n.rLabel=s.rLabel,n.thetaLabel=s.thetaLabel;var l=t.hi||e.hoverinfo,c=[];function u(t,e){c.push(t._hovertitle+\": \"+e)}if(!e.hovertemplate){var h=l.split(\"+\");-1!==h.indexOf(\"all\")&&(h=[\"r\",\"theta\",\"text\"]),-1!==h.indexOf(\"r\")&&u(i,n.rLabel),-1!==h.indexOf(\"theta\")&&u(a,n.thetaLabel),-1!==h.indexOf(\"text\")&&n.text&&(c.push(n.text),delete n.text),n.extraText=c.join(\"<br>\")}}t.exports={hoverPoints:function(t,e,r,a){var o=n(t,e,r,a);if(o&&!1!==o[0].index){var s=o[0];if(void 0===s.index)return o;var l=t.subplot,c=s.cd[s.index],u=s.trace;if(l.isPtInside(c))return s.xLabelVal=void 0,s.yLabelVal=void 0,i(c,u,l,s),s.hovertemplate=u.hovertemplate,o}},makeHoverPointText:i}},66939:function(t,e,r){\"use strict\";t.exports={moduleType:\"trace\",name:\"scatterpolar\",basePlotModule:r(31645),categories:[\"polar\",\"symbols\",\"showLegend\",\"scatter-like\"],attributes:r(8738),supplyDefaults:r(73749).supplyDefaults,colorbar:r(21146),formatLabels:r(33368),calc:r(13246),plot:r(43836),style:r(9408).style,styleOnSelect:r(9408).styleOnSelect,hoverPoints:r(29709).hoverPoints,selectPoints:r(32665),meta:{}}},43836:function(t,e,r){\"use strict\";var n=r(36098),i=r(63821).BADNUM;t.exports=function(t,e,r){for(var a=e.layers.frontplot.select(\"g.scatterlayer\"),o=e.xaxis,s=e.yaxis,l={xaxis:o,yaxis:s,plot:e.framework,layerClipId:e._hasClipOnAxisFalse?e.clipIds.forTraces:null},c=e.radialAxis,u=e.angularAxis,h=0;h<r.length;h++)for(var f=r[h],p=0;p<f.length;p++){0===p&&(f[0].trace._xA=o,f[0].trace._yA=s);var d=f[p],m=d.r;if(m===i)d.x=d.y=i;else{var g=c.c2g(m),y=u.c2g(d.theta);d.x=g*Math.cos(y),d.y=g*Math.sin(y)}}n(t,l,r,a)}},58319:function(t,e,r){\"use strict\";var n=r(8738),i=r(92089),a=r(3208).ay;t.exports={mode:n.mode,r:n.r,theta:n.theta,r0:n.r0,dr:n.dr,theta0:n.theta0,dtheta:n.dtheta,thetaunit:n.thetaunit,text:n.text,texttemplate:a({editType:\"plot\"},{keys:[\"r\",\"theta\",\"text\"]}),hovertext:n.hovertext,hovertemplate:n.hovertemplate,line:{color:i.line.color,width:i.line.width,dash:i.line.dash,editType:\"calc\"},connectgaps:i.connectgaps,marker:i.marker,fill:i.fill,fillcolor:i.fillcolor,textposition:i.textposition,textfont:i.textfont,hoverinfo:n.hoverinfo,selected:n.selected,unselected:n.unselected}},25796:function(t,e,r){\"use strict\";t.exports={moduleType:\"trace\",name:\"scatterpolargl\",basePlotModule:r(31645),categories:[\"gl\",\"regl\",\"polar\",\"symbols\",\"showLegend\",\"scatter-like\"],attributes:r(58319),supplyDefaults:r(14952),colorbar:r(21146),formatLabels:r(94015),calc:r(71535),hoverPoints:r(47522).hoverPoints,selectPoints:r(17168),meta:{}}},71535:function(t,e,r){\"use strict\";var n=r(77272),i=r(26544).calcMarkerSize,a=r(19937),o=r(29714),s=r(29483).TOO_MANY_POINTS;t.exports=function(t,e){var r=t._fullLayout,l=e.subplot,c=r[l].radialaxis,u=r[l].angularaxis,h=e._r=c.makeCalcdata(e,\"r\"),f=e._theta=u.makeCalcdata(e,\"theta\"),p=e._length,d={};p<h.length&&(h=h.slice(0,p)),p<f.length&&(f=f.slice(0,p)),d.r=h,d.theta=f,n(t,e);var m,g=d.opts=a.style(t,e);return p<s?m=i(e,p):g.marker&&(m=2*(g.marker.sizeAvg||Math.max(g.marker.size,3))),e._extremes.x=o.findExtremes(c,h,{ppad:m}),[{x:!1,y:!1,t:d,trace:e}]}},14952:function(t,e,r){\"use strict\";var n=r(34809),i=r(64726),a=r(73749).handleRThetaDefaults,o=r(24272),s=r(98168),l=r(663),c=r(54114),u=r(32660).PTS_LINESONLY,h=r(58319);t.exports=function(t,e,r,f){function p(r,i){return n.coerce(t,e,h,r,i)}var d=a(t,e,f,p);d?(p(\"thetaunit\"),p(\"mode\",d<u?\"lines+markers\":\"lines\"),p(\"text\"),p(\"hovertext\"),\"fills\"!==e.hoveron&&p(\"hovertemplate\"),i.hasMarkers(e)&&o(t,e,r,f,p,{noAngleRef:!0,noStandOff:!0}),i.hasLines(e)&&(s(t,e,r,f,p),p(\"connectgaps\")),i.hasText(e)&&(p(\"texttemplate\"),l(t,e,f,p,{noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0})),p(\"fill\"),\"none\"!==e.fill&&c(t,e,r,p),n.coerceSelectionMarkerOpacity(e,p)):e.visible=!1}},94015:function(t,e,r){\"use strict\";var n=r(33368);t.exports=function(t,e,r){var i=t.i;return\"r\"in t||(t.r=e._r[i]),\"theta\"in t||(t.theta=e._theta[i]),n(t,e,r)}},47522:function(t,e,r){\"use strict\";var n=r(36544),i=r(29709).makeHoverPointText;t.exports={hoverPoints:function(t,e,r,a){var o=t.cd[0].t,s=o.r,l=o.theta,c=n.hoverPoints(t,e,r,a);if(c&&!1!==c[0].index){var u=c[0];if(void 0===u.index)return c;var h=t.subplot,f=u.cd[u.index],p=u.trace;if(f.r=s[u.index],f.theta=l[u.index],h.isPtInside(f))return u.xLabelVal=void 0,u.yLabelVal=void 0,i(f,p,h,u),c}}}},23748:function(t,e,r){\"use strict\";var n=r(25796);n.plot=r(54121),t.exports=n},54121:function(t,e,r){\"use strict\";var n=r(27549),i=r(10721),a=r(47731),o=r(62336),s=r(19937),l=r(34809),c=r(29483).TOO_MANY_POINTS;t.exports=function(t,e,r){if(r.length){var u=e.radialAxis,h=e.angularAxis,f=o(t,e);return r.forEach((function(r){if(r&&r[0]&&r[0].trace){var a,o=r[0],p=o.trace,d=o.t,m=p._length,g=d.r,y=d.theta,v=d.opts,x=g.slice(),_=y.slice();for(a=0;a<g.length;a++)e.isPtInside({r:g[a],theta:y[a]})||(x[a]=NaN,_[a]=NaN);var b=new Array(2*m),w=Array(m),T=Array(m);for(a=0;a<m;a++){var k,A,M=x[a];if(i(M)){var S=u.c2g(M),E=h.c2g(_[a],p.thetaunit);k=S*Math.cos(E),A=S*Math.sin(E)}else k=A=NaN;w[a]=b[2*a]=k,T[a]=b[2*a+1]=A}d.tree=n(b),v.marker&&m>=c&&(v.marker.cluster=d.tree),v.marker&&(v.markerSel.positions=v.markerUnsel.positions=v.marker.positions=b),v.line&&b.length>1&&l.extendFlat(v.line,s.linePositions(t,p,b)),v.text&&(l.extendFlat(v.text,{positions:b},s.textPosition(t,p,v.text,v.marker)),l.extendFlat(v.textSel,{positions:b},s.textPosition(t,p,v.text,v.markerSel)),l.extendFlat(v.textUnsel,{positions:b},s.textPosition(t,p,v.text,v.markerUnsel))),v.fill&&!f.fill2d&&(f.fill2d=!0),v.marker&&!f.scatter2d&&(f.scatter2d=!0),v.line&&!f.line2d&&(f.line2d=!0),v.text&&!f.glText&&(f.glText=!0),f.lineOptions.push(v.line),f.fillOptions.push(v.fill),f.markerOptions.push(v.marker),f.markerSelectedOptions.push(v.markerSel),f.markerUnselectedOptions.push(v.markerUnsel),f.textOptions.push(v.text),f.textSelectedOptions.push(v.textSel),f.textUnselectedOptions.push(v.textUnsel),f.selectBatch.push([]),f.unselectBatch.push([]),d.x=w,d.y=T,d.rawx=w,d.rawy=T,d.r=g,d.theta=y,d.positions=b,d._scene=f,d.index=f.count,f.count++}})),a(t,e,r)}},t.exports.reglPrecompiled={}},69595:function(t,e,r){\"use strict\";var n=r(3208).rb,i=r(3208).ay,a=r(93049).extendFlat,o=r(19326),s=r(36640),l=r(9829),c=s.line;t.exports={mode:s.mode,real:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},imag:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},text:s.text,texttemplate:i({editType:\"plot\"},{keys:[\"real\",\"imag\",\"text\"]}),hovertext:s.hovertext,line:{color:c.color,width:c.width,dash:c.dash,backoff:c.backoff,shape:a({},c.shape,{values:[\"linear\",\"spline\"]}),smoothing:c.smoothing,editType:\"calc\"},connectgaps:s.connectgaps,marker:s.marker,cliponaxis:a({},s.cliponaxis,{dflt:!1}),textposition:s.textposition,textfont:s.textfont,fill:a({},s.fill,{values:[\"none\",\"toself\",\"tonext\"],dflt:\"none\"}),fillcolor:o(),hoverinfo:a({},l.hoverinfo,{flags:[\"real\",\"imag\",\"text\",\"name\"]}),hoveron:s.hoveron,hovertemplate:n(),selected:s.selected,unselected:s.unselected}},44315:function(t,e,r){\"use strict\";var n=r(10721),i=r(63821).BADNUM,a=r(77272),o=r(99203),s=r(48861),l=r(26544).calcMarkerSize;t.exports=function(t,e){for(var r=t._fullLayout,c=e.subplot,u=r[c].realaxis,h=r[c].imaginaryaxis,f=u.makeCalcdata(e,\"real\"),p=h.makeCalcdata(e,\"imag\"),d=e._length,m=new Array(d),g=0;g<d;g++){var y=f[g],v=p[g],x=m[g]={};n(y)&&n(v)?(x.real=y,x.imag=v):x.real=i}return l(e,d),a(t,e),o(m,e),s(m,e),m}},93788:function(t,e,r){\"use strict\";var n=r(34809),i=r(64726),a=r(24272),o=r(98168),s=r(91602),l=r(663),c=r(54114),u=r(32660).PTS_LINESONLY,h=r(69595);t.exports=function(t,e,r,f){function p(r,i){return n.coerce(t,e,h,r,i)}var d=function(t,e,r,i){var a,o=i(\"real\"),s=i(\"imag\");return o&&s&&(a=Math.min(o.length,s.length)),n.isTypedArray(o)&&(e.real=o=Array.from(o)),n.isTypedArray(s)&&(e.imag=s=Array.from(s)),e._length=a,a}(0,e,0,p);if(d){p(\"mode\",d<u?\"lines+markers\":\"lines\"),p(\"text\"),p(\"hovertext\"),\"fills\"!==e.hoveron&&p(\"hovertemplate\"),i.hasMarkers(e)&&a(t,e,r,f,p,{gradient:!0}),i.hasLines(e)&&(o(t,e,r,f,p,{backoff:!0}),s(t,e,p),p(\"connectgaps\")),i.hasText(e)&&(p(\"texttemplate\"),l(t,e,f,p));var m=[];(i.hasMarkers(e)||i.hasText(e))&&(p(\"cliponaxis\"),p(\"marker.maxdisplayed\"),m.push(\"points\")),p(\"fill\"),\"none\"!==e.fill&&(c(t,e,r,p),i.hasLines(e)||s(t,e,p)),\"tonext\"!==e.fill&&\"toself\"!==e.fill||m.push(\"fills\"),p(\"hoveron\",m.join(\"+\")||\"points\"),n.coerceSelectionMarkerOpacity(e,p)}else e.visible=!1}},89419:function(t,e,r){\"use strict\";var n=r(29714);t.exports=function(t,e,r){var i={},a=r[e.subplot]._subplot;return i.realLabel=n.tickText(a.radialAxis,t.real,!0).text,i.imagLabel=n.tickText(a.angularAxis,t.imag,!0).text,i}},64422:function(t,e,r){\"use strict\";var n=r(37255);function i(t,e,r,n){var i=r.radialAxis,a=r.angularAxis;i._hovertitle=\"real\",a._hovertitle=\"imag\";var o={};o[e.subplot]={_subplot:r};var s=e._module.formatLabels(t,e,o);n.realLabel=s.realLabel,n.imagLabel=s.imagLabel;var l=t.hi||e.hoverinfo,c=[];function u(t,e){c.push(t._hovertitle+\": \"+e)}if(!e.hovertemplate){var h=l.split(\"+\");-1!==h.indexOf(\"all\")&&(h=[\"real\",\"imag\",\"text\"]),-1!==h.indexOf(\"real\")&&u(i,n.realLabel),-1!==h.indexOf(\"imag\")&&u(a,n.imagLabel),-1!==h.indexOf(\"text\")&&n.text&&(c.push(n.text),delete n.text),n.extraText=c.join(\"<br>\")}}t.exports={hoverPoints:function(t,e,r,a){var o=n(t,e,r,a);if(o&&!1!==o[0].index){var s=o[0];if(void 0===s.index)return o;var l=t.subplot,c=s.cd[s.index],u=s.trace;if(l.isPtInside(c))return s.xLabelVal=void 0,s.yLabelVal=void 0,i(c,u,l,s),s.hovertemplate=u.hovertemplate,o}},makeHoverPointText:i}},73304:function(t,e,r){\"use strict\";t.exports={moduleType:\"trace\",name:\"scattersmith\",basePlotModule:r(50358),categories:[\"smith\",\"symbols\",\"showLegend\",\"scatter-like\"],attributes:r(69595),supplyDefaults:r(93788),colorbar:r(21146),formatLabels:r(89419),calc:r(44315),plot:r(6229),style:r(9408).style,styleOnSelect:r(9408).styleOnSelect,hoverPoints:r(64422).hoverPoints,selectPoints:r(32665),meta:{}}},6229:function(t,e,r){\"use strict\";var n=r(36098),i=r(63821).BADNUM,a=r(52007).smith;t.exports=function(t,e,r){for(var o=e.layers.frontplot.select(\"g.scatterlayer\"),s=e.xaxis,l=e.yaxis,c={xaxis:s,yaxis:l,plot:e.framework,layerClipId:e._hasClipOnAxisFalse?e.clipIds.forTraces:null},u=0;u<r.length;u++)for(var h=r[u],f=0;f<h.length;f++){0===f&&(h[0].trace._xA=s,h[0].trace._yA=l);var p=h[f],d=p.real;if(d===i)p.x=p.y=i;else{var m=a([d,p.imag]);p.x=m[0],p.y=m[1]}}n(t,c,r,o)}},18483:function(t,e,r){\"use strict\";var n=r(3208).rb,i=r(3208).ay,a=r(19326),o=r(36640),s=r(9829),l=r(87163),c=r(94850).T,u=r(93049).extendFlat,h=o.marker,f=o.line,p=h.line;t.exports={a:{valType:\"data_array\",editType:\"calc\"},b:{valType:\"data_array\",editType:\"calc\"},c:{valType:\"data_array\",editType:\"calc\"},sum:{valType:\"number\",dflt:0,min:0,editType:\"calc\"},mode:u({},o.mode,{dflt:\"markers\"}),text:u({},o.text,{}),texttemplate:i({editType:\"plot\"},{keys:[\"a\",\"b\",\"c\",\"text\"]}),hovertext:u({},o.hovertext,{}),line:{color:f.color,width:f.width,dash:c,backoff:f.backoff,shape:u({},f.shape,{values:[\"linear\",\"spline\"]}),smoothing:f.smoothing,editType:\"calc\"},connectgaps:o.connectgaps,cliponaxis:o.cliponaxis,fill:u({},o.fill,{values:[\"none\",\"toself\",\"tonext\"],dflt:\"none\"}),fillcolor:a(),marker:u({symbol:h.symbol,opacity:h.opacity,angle:h.angle,angleref:h.angleref,standoff:h.standoff,maxdisplayed:h.maxdisplayed,size:h.size,sizeref:h.sizeref,sizemin:h.sizemin,sizemode:h.sizemode,line:u({width:p.width,editType:\"calc\"},l(\"marker.line\")),gradient:h.gradient,editType:\"calc\"},l(\"marker\")),textfont:o.textfont,textposition:o.textposition,selected:o.selected,unselected:o.unselected,hoverinfo:u({},s.hoverinfo,{flags:[\"a\",\"b\",\"c\",\"text\",\"name\"]}),hoveron:o.hoveron,hovertemplate:n()}},67091:function(t,e,r){\"use strict\";var n=r(10721),i=r(77272),a=r(99203),o=r(48861),s=r(26544).calcMarkerSize,l=[\"a\",\"b\",\"c\"],c={a:[\"b\",\"c\"],b:[\"a\",\"c\"],c:[\"a\",\"b\"]};t.exports=function(t,e){var r,u,h,f,p,d,m=t._fullLayout[e.subplot].sum,g=e.sum||m,y={a:e.a,b:e.b,c:e.c};for(r=0;r<l.length;r++)if(!y[h=l[r]]){for(p=y[c[h][0]],d=y[c[h][1]],f=new Array(p.length),u=0;u<p.length;u++)f[u]=g-p[u]-d[u];y[h]=f}var v,x,_,b,w,T,k=e._length,A=new Array(k);for(r=0;r<k;r++)v=y.a[r],x=y.b[r],_=y.c[r],n(v)&&n(x)&&n(_)?(1!=(b=m/((v=+v)+(x=+x)+(_=+_)))&&(v*=b,x*=b,_*=b),T=v,w=_-x,A[r]={x:w,y:T,a:v,b:x,c:_}):A[r]={x:!1,y:!1};return s(e,k),i(t,e),a(A,e),o(A,e),A}},79028:function(t,e,r){\"use strict\";var n=r(34809),i=r(32660),a=r(64726),o=r(24272),s=r(98168),l=r(91602),c=r(663),u=r(54114),h=r(18483);t.exports=function(t,e,r,f){function p(r,i){return n.coerce(t,e,h,r,i)}var d,m=p(\"a\"),g=p(\"b\"),y=p(\"c\");if(m?(d=m.length,g?(d=Math.min(d,g.length),y&&(d=Math.min(d,y.length))):d=y?Math.min(d,y.length):0):g&&y&&(d=Math.min(g.length,y.length)),d){e._length=d,p(\"sum\"),p(\"text\"),p(\"hovertext\"),\"fills\"!==e.hoveron&&p(\"hovertemplate\"),p(\"mode\",d<i.PTS_LINESONLY?\"lines+markers\":\"lines\"),a.hasMarkers(e)&&o(t,e,r,f,p,{gradient:!0}),a.hasLines(e)&&(s(t,e,r,f,p,{backoff:!0}),l(t,e,p),p(\"connectgaps\")),a.hasText(e)&&(p(\"texttemplate\"),c(t,e,f,p));var v=[];(a.hasMarkers(e)||a.hasText(e))&&(p(\"cliponaxis\"),p(\"marker.maxdisplayed\"),v.push(\"points\")),p(\"fill\"),\"none\"!==e.fill&&(u(t,e,r,p),a.hasLines(e)||l(t,e,p)),\"tonext\"!==e.fill&&\"toself\"!==e.fill||v.push(\"fills\"),p(\"hoveron\",v.join(\"+\")||\"points\"),n.coerceSelectionMarkerOpacity(e,p)}else e.visible=!1}},94343:function(t){\"use strict\";t.exports=function(t,e,r,n,i){if(e.xa&&(t.xaxis=e.xa),e.ya&&(t.yaxis=e.ya),n[i]){var a=n[i];t.a=a.a,t.b=a.b,t.c=a.c}else t.a=e.a,t.b=e.b,t.c=e.c;return t}},78995:function(t,e,r){\"use strict\";var n=r(29714);t.exports=function(t,e,r){var i={},a=r[e.subplot]._subplot;return i.aLabel=n.tickText(a.aaxis,t.a,!0).text,i.bLabel=n.tickText(a.baxis,t.b,!0).text,i.cLabel=n.tickText(a.caxis,t.c,!0).text,i}},26558:function(t,e,r){\"use strict\";var n=r(37255);t.exports=function(t,e,r,i){var a=n(t,e,r,i);if(a&&!1!==a[0].index){var o=a[0];if(void 0===o.index){var s=1-o.y0/t.ya._length,l=t.xa._length,c=l*s/2,u=l-c;return o.x0=Math.max(Math.min(o.x0,u),c),o.x1=Math.max(Math.min(o.x1,u),c),a}var h=o.cd[o.index],f=o.trace,p=o.subplot;o.a=h.a,o.b=h.b,o.c=h.c,o.xLabelVal=void 0,o.yLabelVal=void 0;var d={};d[f.subplot]={_subplot:p};var m=f._module.formatLabels(h,f,d);o.aLabel=m.aLabel,o.bLabel=m.bLabel,o.cLabel=m.cLabel;var g=h.hi||f.hoverinfo,y=[];if(!f.hovertemplate){var v=g.split(\"+\");-1!==v.indexOf(\"all\")&&(v=[\"a\",\"b\",\"c\"]),-1!==v.indexOf(\"a\")&&x(p.aaxis,o.aLabel),-1!==v.indexOf(\"b\")&&x(p.baxis,o.bLabel),-1!==v.indexOf(\"c\")&&x(p.caxis,o.cLabel)}return o.extraText=y.join(\"<br>\"),o.hovertemplate=f.hovertemplate,a}function x(t,e){y.push(t._hovertitle+\": \"+e)}}},12864:function(t,e,r){\"use strict\";t.exports={attributes:r(18483),supplyDefaults:r(79028),colorbar:r(21146),formatLabels:r(78995),calc:r(67091),plot:r(79005),style:r(9408).style,styleOnSelect:r(9408).styleOnSelect,hoverPoints:r(26558),selectPoints:r(32665),eventData:r(94343),moduleType:\"trace\",name:\"scatterternary\",basePlotModule:r(7638),categories:[\"ternary\",\"symbols\",\"showLegend\",\"scatter-like\"],meta:{}}},79005:function(t,e,r){\"use strict\";var n=r(36098);t.exports=function(t,e,r){var i=e.plotContainer;i.select(\".scatterlayer\").selectAll(\"*\").remove();for(var a=e.xaxis,o=e.yaxis,s={xaxis:a,yaxis:o,plot:i,layerClipId:e._hasClipOnAxisFalse?e.clipIdRelative:null},l=e.layers.frontplot.select(\"g.scatterlayer\"),c=0;c<r.length;c++){var u=r[c];u.length&&(u[0].trace._xA=a,u[0].trace._yA=o)}n(t,s,r,l)}},68697:function(t,e,r){\"use strict\";var n=r(36640),i=r(87163),a=r(80712).axisHoverFormat,o=r(3208).rb,s=r(92089),l=r(54826).idRegex,c=r(78032).templatedArray,u=r(93049).extendFlat,h=n.marker,f=h.line,p=u(i(\"marker.line\",{editTypeOverride:\"calc\"}),{width:u({},f.width,{editType:\"calc\"}),editType:\"calc\"}),d=u(i(\"marker\"),{symbol:h.symbol,angle:h.angle,size:u({},h.size,{editType:\"markerSize\"}),sizeref:h.sizeref,sizemin:h.sizemin,sizemode:h.sizemode,opacity:h.opacity,colorbar:h.colorbar,line:p,editType:\"calc\"});function m(t){return{valType:\"info_array\",freeLength:!0,editType:\"calc\",items:{valType:\"subplotid\",regex:l[t],editType:\"plot\"}}}d.color.editType=d.cmin.editType=d.cmax.editType=\"style\",t.exports={dimensions:c(\"dimension\",{visible:{valType:\"boolean\",dflt:!0,editType:\"calc\"},label:{valType:\"string\",editType:\"calc\"},values:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},axis:{type:{valType:\"enumerated\",values:[\"linear\",\"log\",\"date\",\"category\"],editType:\"calc+clearAxisTypes\"},matches:{valType:\"boolean\",dflt:!1,editType:\"calc\"},editType:\"calc+clearAxisTypes\"},editType:\"calc+clearAxisTypes\"}),text:u({},s.text,{}),hovertext:u({},s.hovertext,{}),hovertemplate:o(),xhoverformat:a(\"x\"),yhoverformat:a(\"y\"),marker:d,xaxes:m(\"x\"),yaxes:m(\"y\"),diagonal:{visible:{valType:\"boolean\",dflt:!0,editType:\"calc\"},editType:\"calc\"},showupperhalf:{valType:\"boolean\",dflt:!0,editType:\"calc\"},showlowerhalf:{valType:\"boolean\",dflt:!0,editType:\"calc\"},selected:{marker:s.selected.marker,editType:\"calc\"},unselected:{marker:s.unselected.marker,editType:\"calc\"},opacity:s.opacity}},86690:function(t,e,r){\"use strict\";var n=r(33626),i=r(83595);t.exports={moduleType:\"trace\",name:\"splom\",categories:[\"gl\",\"regl\",\"cartesian\",\"symbols\",\"showLegend\",\"scatter-like\"],attributes:r(68697),supplyDefaults:r(52542),colorbar:r(21146),calc:r(55325),plot:r(83027),hoverPoints:r(25600).hoverPoints,selectPoints:r(13392),editStyle:r(27926),meta:{}},n.register(i)},571:function(t,e,r){\"use strict\";var n=r(49478),i=r(33626),a=r(22459),o=r(4173).eV,s=r(37703),l=r(5975).getFromId,c=r(29714).shouldShowZeroLine,u=\"splom\",h={};function f(t,e,r){for(var n=r.matrixOptions.data.length,i=e._visibleDims,a=r.viewOpts.ranges=new Array(n),o=0;o<i.length;o++){var s=i[o],c=a[o]=new Array(4),u=l(t,e._diag[s][0]);u&&(c[0]=u.r2l(u.range[0]),c[2]=u.r2l(u.range[1]));var h=l(t,e._diag[s][1]);h&&(c[1]=h.r2l(h.range[0]),c[3]=h.r2l(h.range[1]))}r.selectBatch.length||r.unselectBatch.length?r.matrix.update({ranges:a},{ranges:a}):r.matrix.update({ranges:a})}function p(t){var e=t._fullLayout,r=e._glcanvas.data()[0].regl,i=e._splomGrid;i||(i=e._splomGrid=n(r)),i.update(function(t){var e,r=t._context.plotGlPixelRatio,n=t._fullLayout,i=n._size,a=[0,0,n.width*r,n.height*r],o={};function s(t,e,n,i,s,l){n*=r,i*=r,s*=r,l*=r;var c=e[t+\"color\"],u=e[t+\"width\"],h=String(c+u);h in o?o[h].data.push(NaN,NaN,n,i,s,l):o[h]={data:[n,i,s,l],join:\"rect\",thickness:u*r,color:c,viewport:a,range:a,overlay:!1}}for(e in n._splomSubplots){var l,u,h=n._plots[e],f=h.xaxis,p=h.yaxis,d=f._gridVals,m=p._gridVals,g=f._offset,y=f._length,v=p._length,x=i.b+p.domain[0]*i.h,_=-p._m,b=-_*p.r2l(p.range[0],p.calendar);if(f.showgrid)for(e=0;e<d.length;e++)l=g+f.l2p(d[e].x),s(\"grid\",f,l,x,l,x+v);if(p.showgrid)for(e=0;e<m.length;e++)s(\"grid\",p,g,u=x+b+_*m[e].x,g+y,u);c(t,f,p)&&(l=g+f.l2p(0),s(\"zeroline\",f,l,x,l,x+v)),c(t,p,f)&&s(\"zeroline\",p,g,u=x+b+0,g+y,u)}var w=[];for(e in o)w.push(o[e]);return w}(t))}t.exports={name:u,attr:s.attr,attrRegex:s.attrRegex,layoutAttributes:s.layoutAttributes,supplyLayoutDefaults:s.supplyLayoutDefaults,drawFramework:s.drawFramework,plot:function(t){var e=t._fullLayout,r=i.getModule(u),n=o(t.calcdata,r)[0];a(t,[\"ANGLE_instanced_arrays\",\"OES_element_index_uint\"],h)&&(e._hasOnlyLargeSploms&&p(t),r.plot(t,{},n))},drag:function(t){var e=t.calcdata,r=t._fullLayout;r._hasOnlyLargeSploms&&p(t);for(var n=0;n<e.length;n++){var i=e[n][0].trace,a=r._splomScenes[i.uid];\"splom\"===i.type&&a&&a.matrix&&f(t,i,a)}},updateGrid:p,clean:function(t,e,r,n){var i,a={};if(n._splomScenes){for(i=0;i<t.length;i++){var o=t[i];\"splom\"===o.type&&(a[o.uid]=1)}for(i=0;i<r.length;i++){var l=r[i];if(!a[l.uid]){var c=n._splomScenes[l.uid];c&&c.destroy&&c.destroy(),n._splomScenes[l.uid]=null,delete n._splomScenes[l.uid]}}}0===Object.keys(n._splomScenes||{}).length&&delete n._splomScenes,n._splomGrid&&!e._hasOnlyLargeSploms&&n._hasOnlyLargeSploms&&(n._splomGrid.destroy(),n._splomGrid=null,delete n._splomGrid),s.clean(t,e,r,n)},updateFx:s.updateFx,toSVG:s.toSVG,reglPrecompiled:h}},55325:function(t,e,r){\"use strict\";var n=r(34809),i=r(5975),a=r(26544).calcMarkerSize,o=r(26544).calcAxisExpansion,s=r(77272),l=r(19937).markerSelection,c=r(19937).markerStyle,u=r(78880),h=r(63821).BADNUM,f=r(29483).TOO_MANY_POINTS;t.exports=function(t,e){var r,p,d,m,g,y,v=e.dimensions,x=e._length,_={},b=_.cdata=[],w=_.data=[],T=e._visibleDims=[];function k(t,r){for(var i=t.makeCalcdata({v:r.values,vcalendar:e.calendar},\"v\"),a=0;a<i.length;a++)i[a]=i[a]===h?NaN:i[a];b.push(i),w.push(\"log\"===t.type?n.simpleMap(i,t.c2l):i)}for(r=0;r<v.length;r++)if((d=v[r]).visible){if(m=i.getFromId(t,e._diag[r][0]),g=i.getFromId(t,e._diag[r][1]),m&&g&&m.type!==g.type){n.log(\"Skipping splom dimension \"+r+\" with conflicting axis types\");continue}m?(k(m,d),g&&\"category\"===g.type&&(g._categories=m._categories.slice())):k(g,d),T.push(r)}for(s(t,e),n.extendFlat(_,c(t,e)),y=b.length*x>f?_.sizeAvg||Math.max(_.size,3):a(e,x),p=0;p<T.length;p++)d=v[r=T[p]],m=i.getFromId(t,e._diag[r][0])||{},g=i.getFromId(t,e._diag[r][1])||{},o(t,e,m,g,b[p],b[p],y);var A=u(t,e);return A.matrix||(A.matrix=!0),A.matrixOptions=_,A.selectedOptions=l(t,e,e.selected),A.unselectedOptions=l(t,e,e.unselected),[{x:!1,y:!1,t:{},trace:e}]}},52542:function(t,e,r){\"use strict\";var n=r(34809),i=r(59008),a=r(68697),o=r(64726),s=r(24272),l=r(63197),c=r(4075).isOpenSymbol;function u(t,e){function r(r,i){return n.coerce(t,e,a.dimensions,r,i)}r(\"label\");var i=r(\"values\");i&&i.length?r(\"visible\"):e.visible=!1,r(\"axis.type\"),r(\"axis.matches\")}t.exports=function(t,e,r,h){function f(r,i){return n.coerce(t,e,a,r,i)}var p=i(t,e,{name:\"dimensions\",handleItemDefaults:u}),d=f(\"diagonal.visible\"),m=f(\"showupperhalf\"),g=f(\"showlowerhalf\");if(l(e,p,\"values\")&&(d||m||g)){f(\"text\"),f(\"hovertext\"),f(\"hovertemplate\"),f(\"xhoverformat\"),f(\"yhoverformat\"),s(t,e,r,h,f,{noAngleRef:!0,noStandOff:!0});var y=c(e.marker.symbol),v=o.isBubble(e);f(\"marker.line.width\",y||v?1:0),function(t,e,r,n){var i,a,o=e.dimensions,s=o.length,l=e.showupperhalf,c=e.showlowerhalf,u=e.diagonal.visible,h=new Array(s),f=new Array(s);for(i=0;i<s;i++){var p=i?i+1:\"\";h[i]=\"x\"+p,f[i]=\"y\"+p}var d=n(\"xaxes\",h),m=n(\"yaxes\",f),g=e._diag=new Array(s);e._xaxes={},e._yaxes={};var y=[],v=[];function x(t,n,i,a){if(t){var o=t.charAt(0),s=r._splomAxes[o];if(e[\"_\"+o+\"axes\"][t]=1,a.push(t),!(t in s)){var l=s[t]={};i&&(l.label=i.label||\"\",i.visible&&i.axis&&(i.axis.type&&(l.type=i.axis.type),i.axis.matches&&(l.matches=n)))}}}var _=!u&&!c,b=!u&&!l;for(e._axesDim={},i=0;i<s;i++){var w=o[i],T=0===i,k=i===s-1,A=T&&_||k&&b?void 0:d[i],M=T&&b||k&&_?void 0:m[i];x(A,M,w,y),x(M,A,w,v),g[i]=[A,M],e._axesDim[A]=i,e._axesDim[M]=i}for(i=0;i<y.length;i++)for(a=0;a<v.length;a++){var S=y[i]+v[a];i>a&&l||i<a&&c?r._splomSubplots[S]=1:i!==a||!u&&c&&l||(r._splomSubplots[S]=1)}(!c||!u&&l&&c)&&(r._splomGridDflt.xside=\"bottom\",r._splomGridDflt.yside=\"left\")}(0,e,h,f),n.coerceSelectionMarkerOpacity(e,f)}else e.visible=!1}},27926:function(t,e,r){\"use strict\";var n=r(34809),i=r(77272),a=r(19937).markerStyle;t.exports=function(t,e){var r=e.trace,o=t._fullLayout._splomScenes[r.uid];if(o){i(t,r),n.extendFlat(o.matrixOptions,a(t,r));var s=n.extendFlat({},o.matrixOptions,o.viewOpts);o.matrix.update(s,null)}}},52875:function(t,e){\"use strict\";e.getDimIndex=function(t,e){for(var r=e._id,n={x:0,y:1}[r.charAt(0)],i=t._visibleDims,a=0;a<i.length;a++){var o=i[a];if(t._diag[o][n]===r)return a}return!1}},25600:function(t,e,r){\"use strict\";var n=r(52875),i=r(36544).calcHover,a=r(29714).getFromId,o=r(93049).extendFlat;function s(t,e,r,a){var o=t.cd[0].trace,s=t.scene.matrixOptions.cdata,l=t.xa,c=t.ya,u=l.c2p(e),h=c.c2p(r),f=t.distance,p=n.getDimIndex(o,l),d=n.getDimIndex(o,c);if(!1===p||!1===d)return[t];for(var m,g,y=s[p],v=s[d],x=f,_=0;_<y.length;_++)if(!a||_===t.index){var b=y[_],w=v[_],T=l.c2p(b)-u,k=c.c2p(w)-h,A=Math.sqrt(T*T+k*k);(a||A<x)&&(x=g=A,m=_)}return t.index=m,t.distance=x,t.dxy=g,void 0===m?[t]:[i(t,y,v,o)]}t.exports={hoverPoints:function(t,e,r,n,i){i||(i={});var l=\"x\"===(n||\"\").charAt(0),c=\"y\"===(n||\"\").charAt(0),u=s(t,e,r);if((l||c)&&\"axis\"===i.hoversubplots&&u[0])for(var h=(l?t.xa:t.ya)._subplotsWith,f=i.gd,p=o({},t),d=0;d<h.length;d++){var m=h[d];if(m!==t.xa._id+t.ya._id){c?p.xa=a(f,m,\"x\"):p.ya=a(f,m,\"y\");var g=s(p,e,r,l||c);u=u.concat(g)}}return u}}},91450:function(t,e,r){\"use strict\";var n=r(86690);n.basePlotModule=r(571),t.exports=n},83027:function(t,e,r){\"use strict\";var n=r(31239),i=r(34809),a=r(5975),o=r(70414).selectMode;function s(t,e){var r,s,l,c,u,h=t._fullLayout,f=h._size,p=e.trace,d=e.t,m=h._splomScenes[p.uid],g=m.matrixOptions,y=g.cdata,v=h._glcanvas.data()[0].regl,x=h.dragmode;if(0!==y.length){g.lower=p.showupperhalf,g.upper=p.showlowerhalf,g.diagonal=p.diagonal.visible;var _=p._visibleDims,b=y.length,w=m.viewOpts={};for(w.ranges=new Array(b),w.domains=new Array(b),u=0;u<_.length;u++){l=_[u];var T=w.ranges[u]=new Array(4),k=w.domains[u]=new Array(4);(r=a.getFromId(t,p._diag[l][0]))&&(T[0]=r._rl[0],T[2]=r._rl[1],k[0]=r.domain[0],k[2]=r.domain[1]),(s=a.getFromId(t,p._diag[l][1]))&&(T[1]=s._rl[0],T[3]=s._rl[1],k[1]=s.domain[0],k[3]=s.domain[1])}var A=t._context.plotGlPixelRatio,M=f.l*A,S=f.b*A,E=f.w*A,C=f.h*A;w.viewport=[M,S,E+M,C+S],!0===m.matrix&&(m.matrix=n(v));var L=h.clickmode.indexOf(\"select\")>-1,I=!0;if(o(x)||p.selectedpoints||L){var P=p._length;if(p.selectedpoints){m.selectBatch=p.selectedpoints;var z=p.selectedpoints,O={};for(l=0;l<z.length;l++)O[z[l]]=!0;var D=[];for(l=0;l<P;l++)O[l]||D.push(l);m.unselectBatch=D}var R=d.xpx=new Array(b),F=d.ypx=new Array(b);for(u=0;u<_.length;u++){if(l=_[u],r=a.getFromId(t,p._diag[l][0]))for(R[u]=new Array(P),c=0;c<P;c++)R[u][c]=r.c2p(y[u][c]);if(s=a.getFromId(t,p._diag[l][1]))for(F[u]=new Array(P),c=0;c<P;c++)F[u][c]=s.c2p(y[u][c])}if(m.selectBatch.length||m.unselectBatch.length){var B=i.extendFlat({},g,m.unselectedOptions,w),N=i.extendFlat({},g,m.selectedOptions,w);m.matrix.update(B,N),I=!1}}else d.xpx=d.ypx=null;if(I){var j=i.extendFlat({},g,w);m.matrix.update(j,null)}}}t.exports=function(t,e,r){if(r.length)for(var n=0;n<r.length;n++)s(t,r[n][0])}},78880:function(t,e,r){\"use strict\";var n=r(34809);t.exports=function(t,e){var r=t._fullLayout,i=e.uid,a=r._splomScenes;a||(a=r._splomScenes={});var o={dirty:!0,selectBatch:[],unselectBatch:[]},s=a[e.uid];return s||((s=a[i]=n.extendFlat({},o,{matrix:!1,selectBatch:[],unselectBatch:[]})).draw=function(){s.matrix&&s.matrix.draw&&(s.selectBatch.length||s.unselectBatch.length?s.matrix.draw(s.unselectBatch,s.selectBatch):s.matrix.draw()),s.dirty=!1},s.destroy=function(){s.matrix&&s.matrix.destroy&&s.matrix.destroy(),s.matrixOptions=null,s.selectBatch=null,s.unselectBatch=null,s=null}),s.dirty||n.extendFlat(s,o),s}},13392:function(t,e,r){\"use strict\";var n=r(34809),i=n.pushUnique,a=r(64726),o=r(52875);t.exports=function(t,e){var r=t.cd,s=r[0].trace,l=r[0].t,c=t.scene,u=c.matrixOptions.cdata,h=t.xaxis,f=t.yaxis,p=[];if(!c)return p;var d=!a.hasMarkers(s)&&!a.hasText(s);if(!0!==s.visible||d)return p;var m=o.getDimIndex(s,h),g=o.getDimIndex(s,f);if(!1===m||!1===g)return p;var y=l.xpx[m],v=l.ypx[g],x=u[m],_=u[g],b=(t.scene.selectBatch||[]).slice(),w=[];if(!1!==e&&!e.degenerate)for(var T=0;T<x.length;T++)e.contains([y[T],v[T]],null,T,t)?(p.push({pointNumber:T,x:x[T],y:_[T]}),i(b,T)):-1!==b.indexOf(T)?i(b,T):w.push(T);var k=c.matrixOptions;return b.length||w.length?c.selectBatch.length||c.unselectBatch.length||c.matrix.update(c.unselectedOptions,n.extendFlat({},k,c.selectedOptions,c.viewOpts)):c.matrix.update(k,null),c.selectBatch=b,c.unselectBatch=w,p}},14774:function(t,e,r){\"use strict\";var n=r(87163),i=r(80712).axisHoverFormat,a=r(3208).rb,o=r(42450),s=r(9829),l=r(93049).extendFlat,c={x:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},y:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},z:{valType:\"data_array\",editType:\"calc+clearAxisTypes\"},u:{valType:\"data_array\",editType:\"calc\"},v:{valType:\"data_array\",editType:\"calc\"},w:{valType:\"data_array\",editType:\"calc\"},starts:{x:{valType:\"data_array\",editType:\"calc\"},y:{valType:\"data_array\",editType:\"calc\"},z:{valType:\"data_array\",editType:\"calc\"},editType:\"calc\"},maxdisplayed:{valType:\"integer\",min:0,dflt:1e3,editType:\"calc\"},sizeref:{valType:\"number\",editType:\"calc\",min:0,dflt:1},text:{valType:\"string\",dflt:\"\",editType:\"calc\"},hovertext:{valType:\"string\",dflt:\"\",editType:\"calc\"},hovertemplate:a({editType:\"calc\"},{keys:[\"tubex\",\"tubey\",\"tubez\",\"tubeu\",\"tubev\",\"tubew\",\"norm\",\"divergence\"]}),uhoverformat:i(\"u\",1),vhoverformat:i(\"v\",1),whoverformat:i(\"w\",1),xhoverformat:i(\"x\"),yhoverformat:i(\"y\"),zhoverformat:i(\"z\"),showlegend:l({},s.showlegend,{dflt:!1})};l(c,n(\"\",{colorAttr:\"u/v/w norm\",showScaleDflt:!0,editTypeOverride:\"calc\"})),[\"opacity\",\"lightposition\",\"lighting\"].forEach((function(t){c[t]=o[t]})),c.hoverinfo=l({},s.hoverinfo,{editType:\"calc\",flags:[\"x\",\"y\",\"z\",\"u\",\"v\",\"w\",\"norm\",\"divergence\",\"text\",\"name\"],dflt:\"x+y+z+norm+text+name\"}),c.transforms=void 0,t.exports=c},36402:function(t,e,r){\"use strict\";var n=r(34809),i=r(28379);function a(t){var e,r,i,a,s,l,c,u,h,f,p,d,m=t._x,g=t._y,y=t._z,v=t._len,x=-1/0,_=1/0,b=-1/0,w=1/0,T=-1/0,k=1/0,A=\"\";for(v&&(c=m[0],h=g[0],p=y[0]),v>1&&(u=m[v-1],f=g[v-1],d=y[v-1]),e=0;e<v;e++)x=Math.max(x,m[e]),_=Math.min(_,m[e]),b=Math.max(b,g[e]),w=Math.min(w,g[e]),T=Math.max(T,y[e]),k=Math.min(k,y[e]),a||m[e]===c||(a=!0,A+=\"x\"),s||g[e]===h||(s=!0,A+=\"y\"),l||y[e]===p||(l=!0,A+=\"z\");a||(A+=\"x\"),s||(A+=\"y\"),l||(A+=\"z\");var M=o(t._x),S=o(t._y),E=o(t._z);A=(A=(A=A.replace(\"x\",(c>u?\"-\":\"+\")+\"x\")).replace(\"y\",(h>f?\"-\":\"+\")+\"y\")).replace(\"z\",(p>d?\"-\":\"+\")+\"z\");var C=function(){v=0,M=[],S=[],E=[]};(!v||v<M.length*S.length*E.length)&&C();var L=function(t){return\"x\"===t?m:\"y\"===t?g:y},I=function(t){return\"x\"===t?M:\"y\"===t?S:E},P=function(t){return t[v-1]<t[0]?-1:1},z=L(A[1]),O=L(A[3]),D=L(A[5]),R=I(A[1]).length,F=I(A[3]).length,B=I(A[5]).length,N=!1,j=function(t,e,r){return R*(F*t+e)+r},U=P(L(A[1])),V=P(L(A[3])),q=P(L(A[5]));for(e=0;e<B-1;e++){for(r=0;r<F-1;r++){for(i=0;i<R-1;i++){var H=j(e,r,i),G=j(e,r,i+1),Z=j(e,r+1,i),W=j(e+1,r,i);if(z[H]*U<z[G]*U&&O[H]*V<O[Z]*V&&D[H]*q<D[W]*q||(N=!0),N)break}if(N)break}if(N)break}return N&&(n.warn(\"Encountered arbitrary coordinates! Unable to input data grid.\"),C()),{xMin:_,yMin:w,zMin:k,xMax:x,yMax:b,zMax:T,Xs:M,Ys:S,Zs:E,len:v,fill:A}}function o(t){return n.distinctVals(t).vals}function s(t,e){if(void 0===e&&(e=t.length),n.isTypedArray(t))return t.subarray(0,e);for(var r=[],i=0;i<e;i++)r[i]=+t[i];return r}t.exports={calc:function(t,e){e._len=Math.min(e.u.length,e.v.length,e.w.length,e.x.length,e.y.length,e.z.length),e._u=s(e.u,e._len),e._v=s(e.v,e._len),e._w=s(e.w,e._len),e._x=s(e.x,e._len),e._y=s(e.y,e._len),e._z=s(e.z,e._len);var r=a(e);e._gridFill=r.fill,e._Xs=r.Xs,e._Ys=r.Ys,e._Zs=r.Zs,e._len=r.len;var n,o,l,c=0;e.starts&&(n=s(e.starts.x||[]),o=s(e.starts.y||[]),l=s(e.starts.z||[]),c=Math.min(n.length,o.length,l.length)),e._startsX=n||[],e._startsY=o||[],e._startsZ=l||[];var u,h=0,f=1/0;for(u=0;u<e._len;u++){var p=e._u[u],d=e._v[u],m=e._w[u],g=Math.sqrt(p*p+d*d+m*m);h=Math.max(h,g),f=Math.min(f,g)}for(i(t,e,{vals:[f,h],containerStr:\"\",cLetter:\"c\"}),u=0;u<c;u++){var y=n[u];r.xMax=Math.max(r.xMax,y),r.xMin=Math.min(r.xMin,y);var v=o[u];r.yMax=Math.max(r.yMax,v),r.yMin=Math.min(r.yMin,v);var x=l[u];r.zMax=Math.max(r.zMax,x),r.zMin=Math.min(r.zMin,x)}e._slen=c,e._normMax=h,e._xbnds=[r.xMin,r.xMax],e._ybnds=[r.yMin,r.yMax],e._zbnds=[r.zMin,r.zMax]},filter:s,processGrid:a}},49280:function(t,e,r){\"use strict\";var n=r(99098).gl_streamtube3d,i=n.createTubeMesh,a=r(34809),o=r(46998).parseColorScale,s=r(88856).extractOpts,l=r(88239),c={xaxis:0,yaxis:1,zaxis:2};function u(t,e){this.scene=t,this.uid=e,this.mesh=null,this.data=null}var h=u.prototype;function f(t){var e=t.length;return e>2?t.slice(1,e-1):2===e?[(t[0]+t[1])/2]:t}function p(t){var e=t.length;return 1===e?[.5,.5]:[t[1]-t[0],t[e-1]-t[e-2]]}function d(t,e){var r=t.fullSceneLayout,i=t.dataScale,u=e._len,h={};function d(t,e){var n=r[e],o=i[c[e]];return a.simpleMap(t,(function(t){return n.d2l(t)*o}))}if(h.vectors=l(d(e._u,\"xaxis\"),d(e._v,\"yaxis\"),d(e._w,\"zaxis\"),u),!u)return{positions:[],cells:[]};var m=d(e._Xs,\"xaxis\"),g=d(e._Ys,\"yaxis\"),y=d(e._Zs,\"zaxis\");if(h.meshgrid=[m,g,y],h.gridFill=e._gridFill,e._slen)h.startingPositions=l(d(e._startsX,\"xaxis\"),d(e._startsY,\"yaxis\"),d(e._startsZ,\"zaxis\"));else{for(var v=g[0],x=f(m),_=f(y),b=new Array(x.length*_.length),w=0,T=0;T<x.length;T++)for(var k=0;k<_.length;k++)b[w++]=[x[T],v,_[k]];h.startingPositions=b}h.colormap=o(e),h.tubeSize=e.sizeref,h.maxLength=e.maxdisplayed;var A=d(e._xbnds,\"xaxis\"),M=d(e._ybnds,\"yaxis\"),S=d(e._zbnds,\"zaxis\"),E=p(m),C=p(g),L=p(y),I=[[A[0]-E[0],M[0]-C[0],S[0]-L[0]],[A[1]+E[1],M[1]+C[1],S[1]+L[1]]],P=n(h,I),z=s(e);P.vertexIntensityBounds=[z.min/e._normMax,z.max/e._normMax];var O=e.lightposition;return P.lightPosition=[O.x,O.y,O.z],P.ambient=e.lighting.ambient,P.diffuse=e.lighting.diffuse,P.specular=e.lighting.specular,P.roughness=e.lighting.roughness,P.fresnel=e.lighting.fresnel,P.opacity=e.opacity,e._pad=P.tubeScale*e.sizeref*2,P}h.handlePick=function(t){var e=this.scene.fullSceneLayout,r=this.scene.dataScale;function n(t,n){var i=e[n],a=r[c[n]];return i.l2c(t)/a}if(t.object===this.mesh){var i=t.data.position,a=t.data.velocity;return t.traceCoordinate=[n(i[0],\"xaxis\"),n(i[1],\"yaxis\"),n(i[2],\"zaxis\"),n(a[0],\"xaxis\"),n(a[1],\"yaxis\"),n(a[2],\"zaxis\"),t.data.intensity*this.data._normMax,t.data.divergence],t.textLabel=this.data.hovertext||this.data.text,!0}},h.update=function(t){this.data=t;var e=d(this.scene,t);this.mesh.update(e)},h.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()},t.exports=function(t,e){var r=t.glplot.gl,n=d(t,e),a=i(r,n),o=new u(t,e.uid);return o.mesh=a,o.data=e,a._trace=o,t.glplot.add(a),o}},52737:function(t,e,r){\"use strict\";var n=r(34809),i=r(39356),a=r(14774);t.exports=function(t,e,r,o){function s(r,i){return n.coerce(t,e,a,r,i)}var l=s(\"u\"),c=s(\"v\"),u=s(\"w\"),h=s(\"x\"),f=s(\"y\"),p=s(\"z\");l&&l.length&&c&&c.length&&u&&u.length&&h&&h.length&&f&&f.length&&p&&p.length?(s(\"starts.x\"),s(\"starts.y\"),s(\"starts.z\"),s(\"maxdisplayed\"),s(\"sizeref\"),s(\"lighting.ambient\"),s(\"lighting.diffuse\"),s(\"lighting.specular\"),s(\"lighting.roughness\"),s(\"lighting.fresnel\"),s(\"lightposition.x\"),s(\"lightposition.y\"),s(\"lightposition.z\"),i(t,e,o,s,{prefix:\"\",cLetter:\"c\"}),s(\"text\"),s(\"hovertext\"),s(\"hovertemplate\"),s(\"uhoverformat\"),s(\"vhoverformat\"),s(\"whoverformat\"),s(\"xhoverformat\"),s(\"yhoverformat\"),s(\"zhoverformat\"),e._length=null):e.visible=!1}},51943:function(t,e,r){\"use strict\";t.exports={moduleType:\"trace\",name:\"streamtube\",basePlotModule:r(2487),categories:[\"gl3d\",\"showLegend\"],attributes:r(14774),supplyDefaults:r(52737),colorbar:{min:\"cmin\",max:\"cmax\"},calc:r(36402).calc,plot:r(49280),eventData:function(t,e){return t.tubex=t.x,t.tubey=t.y,t.tubez=t.z,t.tubeu=e.traceCoordinate[3],t.tubev=e.traceCoordinate[4],t.tubew=e.traceCoordinate[5],t.norm=e.traceCoordinate[6],t.divergence=e.traceCoordinate[7],delete t.x,delete t.y,delete t.z,t},meta:{}}},56708:function(t,e,r){\"use strict\";var n=r(9829),i=r(3208).rb,a=r(3208).ay,o=r(87163),s=r(13792).u,l=r(55412),c=r(2032),u=r(93049).extendFlat,h=r(94850).k;t.exports={labels:{valType:\"data_array\",editType:\"calc\"},parents:{valType:\"data_array\",editType:\"calc\"},values:{valType:\"data_array\",editType:\"calc\"},branchvalues:{valType:\"enumerated\",values:[\"remainder\",\"total\"],dflt:\"remainder\",editType:\"calc\"},count:{valType:\"flaglist\",flags:[\"branches\",\"leaves\"],dflt:\"leaves\",editType:\"calc\"},level:{valType:\"any\",editType:\"plot\",anim:!0},maxdepth:{valType:\"integer\",editType:\"plot\",dflt:-1},marker:u({colors:{valType:\"data_array\",editType:\"calc\"},line:{color:u({},l.marker.line.color,{dflt:null}),width:u({},l.marker.line.width,{dflt:1}),editType:\"calc\"},pattern:h,editType:\"calc\"},o(\"marker\",{colorAttr:\"colors\",anim:!1})),leaf:{opacity:{valType:\"number\",editType:\"style\",min:0,max:1},editType:\"plot\"},text:l.text,textinfo:{valType:\"flaglist\",flags:[\"label\",\"text\",\"value\",\"current path\",\"percent root\",\"percent entry\",\"percent parent\"],extras:[\"none\"],editType:\"plot\"},texttemplate:a({editType:\"plot\"},{keys:c.eventDataKeys.concat([\"label\",\"value\"])}),hovertext:l.hovertext,hoverinfo:u({},n.hoverinfo,{flags:[\"label\",\"text\",\"value\",\"name\",\"current path\",\"percent root\",\"percent entry\",\"percent parent\"],dflt:\"label+text+value+name\"}),hovertemplate:i({},{keys:c.eventDataKeys}),textfont:l.textfont,insidetextorientation:l.insidetextorientation,insidetextfont:l.insidetextfont,outsidetextfont:u({},l.outsidetextfont,{}),rotation:{valType:\"angle\",dflt:0,editType:\"plot\"},sort:l.sort,root:{color:{valType:\"color\",editType:\"calc\",dflt:\"rgba(0,0,0,0)\"},editType:\"calc\"},domain:s({name:\"sunburst\",trace:!0,editType:\"calc\"})}},14724:function(t,e,r){\"use strict\";var n=r(44122);e.name=\"sunburst\",e.plot=function(t,r,i,a){n.plotBasePlot(e.name,t,r,i,a)},e.clean=function(t,r,i,a){n.cleanBasePlot(e.name,t,r,i,a)}},14852:function(t,e,r){\"use strict\";var n=r(92264),i=r(10721),a=r(34809),o=r(88856).makeColorScaleFuncFromTrace,s=r(44148).makePullColorFn,l=r(44148).generateExtendedColors,c=r(88856).calc,u=r(63821).ALMOST_EQUAL,h={},f={},p={};function d(t,e,r){var n=0,i=t.children;if(i){for(var a=i.length,o=0;o<a;o++)n+=d(i[o],e,r);r.branches&&n++}else r.leaves&&n++;return t.value=t.data.data.value=n,e._values||(e._values=[]),e._values[t.data.data.i]=n,n}e.calc=function(t,e){var r,l,h,f,p,m,g=t._fullLayout,y=e.ids,v=a.isArrayOrTypedArray(y),x=e.labels,_=e.parents,b=e.values,w=a.isArrayOrTypedArray(b),T=[],k={},A={},M=function(t){return t||\"number\"==typeof t},S=function(t){return!w||i(b[t])&&b[t]>=0};v?(r=Math.min(y.length,_.length),l=function(t){return M(y[t])&&S(t)},h=function(t){return String(y[t])}):(r=Math.min(x.length,_.length),l=function(t){return M(x[t])&&S(t)},h=function(t){return String(x[t])}),w&&(r=Math.min(r,b.length));for(var E=0;E<r;E++)if(l(E)){var C=h(E),L=M(_[E])?String(_[E]):\"\",I={i:E,id:C,pid:L,label:M(x[E])?String(x[E]):\"\"};w&&(I.v=+b[E]),T.push(I),p=C,k[f=L]?k[f].push(p):k[f]=[p],A[p]=1}if(k[\"\"]){if(k[\"\"].length>1){for(var P=a.randstr(),z=0;z<T.length;z++)\"\"===T[z].pid&&(T[z].pid=P);T.unshift({hasMultipleRoots:!0,id:P,pid:\"\",label:\"\"})}}else{var O,D=[];for(O in k)A[O]||D.push(O);if(1!==D.length)return a.warn([\"Multiple implied roots, cannot build\",e.type,\"hierarchy of\",e.name+\".\",\"These roots include:\",D.join(\", \")].join(\" \"));O=D[0],T.unshift({hasImpliedRoot:!0,id:O,pid:\"\",label:O})}try{m=n.stratify().id((function(t){return t.id})).parentId((function(t){return t.pid}))(T)}catch(t){return a.warn([\"Failed to build\",e.type,\"hierarchy of\",e.name+\".\",\"Error:\",t.message].join(\" \"))}var R=n.hierarchy(m),F=!1;if(w)switch(e.branchvalues){case\"remainder\":R.sum((function(t){return t.data.v}));break;case\"total\":R.each((function(t){var r=t.data.data,n=r.v;if(t.children){var i=t.children.reduce((function(t,e){return t+e.data.data.v}),0);if((r.hasImpliedRoot||r.hasMultipleRoots)&&(n=i),n<i*u)return F=!0,a.warn([\"Total value for node\",t.data.data.id,\"of\",e.name,\"is smaller than the sum of its children.\",\"\\nparent value =\",n,\"\\nchildren sum =\",i].join(\" \"))}t.value=n}))}else d(R,e,{branches:-1!==e.count.indexOf(\"branches\"),leaves:-1!==e.count.indexOf(\"leaves\")});if(!F){var B,N;e.sort&&R.sort((function(t,e){return e.value-t.value}));var j=e.marker.colors||[],U=!!j.length;return e._hasColorscale?(U||(j=w?e.values:e._values),c(t,e,{vals:j,containerStr:\"marker\",cLetter:\"c\"}),N=o(e.marker)):B=s(g[\"_\"+e.type+\"colormap\"]),R.each((function(t){var r=t.data.data;r.color=e._hasColorscale?N(j[r.i]):B(j[r.i],r.id)})),T[0].hierarchy=R,T}},e._runCrossTraceCalc=function(t,e){var r=e._fullLayout,n=e.calcdata,i=r[t+\"colorway\"],a=r[\"_\"+t+\"colormap\"];r[\"extend\"+t+\"colors\"]&&(i=l(i,\"icicle\"===t?p:\"treemap\"===t?f:h));var o,s=0;function c(t){var e=t.data.data,r=e.id;!1===e.color&&(a[r]?e.color=a[r]:t.parent?t.parent.parent?e.color=t.parent.data.data.color:(a[r]=e.color=i[s%i.length],s++):e.color=o)}for(var u=0;u<n.length;u++){var d=n[u][0];d.trace.type===t&&d.hierarchy&&(o=d.trace.root.color,d.hierarchy.each(c))}},e.crossTraceCalc=function(t){return e._runCrossTraceCalc(\"sunburst\",t)}},2032:function(t){\"use strict\";t.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:\"linear\",eventDataKeys:[\"currentPath\",\"root\",\"entry\",\"percentRoot\",\"percentEntry\",\"percentParent\"]}},33459:function(t,e,r){\"use strict\";var n=r(34809),i=r(56708),a=r(13792).N,o=r(17550).handleText,s=r(46979).handleMarkerDefaults,l=r(88856),c=l.hasColorscale,u=l.handleDefaults;t.exports=function(t,e,r,l){function h(r,a){return n.coerce(t,e,i,r,a)}var f=h(\"labels\"),p=h(\"parents\");if(f&&f.length&&p&&p.length){var d=h(\"values\");d&&d.length?h(\"branchvalues\"):h(\"count\"),h(\"level\"),h(\"maxdepth\"),s(t,e,l,h);var m=e._hasColorscale=c(t,\"marker\",\"colors\")||(t.marker||{}).coloraxis;m&&u(t,e,l,h,{prefix:\"marker.\",cLetter:\"c\"}),h(\"leaf.opacity\",m?1:.7);var g=h(\"text\");h(\"texttemplate\"),e.texttemplate||h(\"textinfo\",n.isArrayOrTypedArray(g)?\"text+label\":\"label\"),h(\"hovertext\"),h(\"hovertemplate\"),o(t,e,l,h,\"auto\",{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),h(\"insidetextorientation\"),h(\"sort\"),h(\"rotation\"),h(\"root.color\"),a(e,l,h),e._length=null}else e.visible=!1}},72043:function(t,e,r){\"use strict\";var n=r(62203),i=r(78766);t.exports=function(t,e,r,a,o){var s=e.data.data,l=s.i,c=o||s.color;if(l>=0){e.i=s.i;var u=r.marker;u.pattern&&u.colors&&u.pattern.shape||(u.color=c,e.color=c),n.pointStyle(t,r,a,e)}else i.fill(t,c)}},44691:function(t,e,r){\"use strict\";var n=r(45568),i=r(33626),a=r(36040).appendArrayPointValue,o=r(32141),s=r(34809),l=r(68596),c=r(33108),u=r(37252).formatPieValue;function h(t,e,r){for(var n=t.data.data,i={curveNumber:e.index,pointNumber:n.i,data:e._input,fullData:e},o=0;o<r.length;o++){var s=r[o];s in t&&(i[s]=t[s])}return\"parentString\"in t&&!c.isHierarchyRoot(t)&&(i.parent=t.parentString),a(i,e,n.i),i}t.exports=function(t,e,r,a,f){var p=a[0],d=p.trace,m=p.hierarchy,g=\"sunburst\"===d.type,y=\"treemap\"===d.type||\"icicle\"===d.type;\"_hasHoverLabel\"in d||(d._hasHoverLabel=!1),\"_hasHoverEvent\"in d||(d._hasHoverEvent=!1),t.on(\"mouseover\",(function(i){var a=r._fullLayout;if(!r._dragging&&!1!==a.hovermode){var l,v=r._fullData[d.index],x=i.data.data,_=x.i,b=c.isHierarchyRoot(i),w=c.getParent(m,i),T=c.getValue(i),k=function(t){return s.castOption(v,_,t)},A=k(\"hovertemplate\"),M=o.castHoverinfo(v,a,_),S=a.separators;if(A||M&&\"none\"!==M&&\"skip\"!==M){var E,C;g&&(E=p.cx+i.pxmid[0]*(1-i.rInscribed),C=p.cy+i.pxmid[1]*(1-i.rInscribed)),y&&(E=i._hoverX,C=i._hoverY);var L,I={},P=[],z=[],O=function(t){return-1!==P.indexOf(t)};M&&(P=\"all\"===M?v._module.attributes.hoverinfo.flags:M.split(\"+\")),I.label=x.label,O(\"label\")&&I.label&&z.push(I.label),x.hasOwnProperty(\"v\")&&(I.value=x.v,I.valueLabel=u(I.value,S),O(\"value\")&&z.push(I.valueLabel)),I.currentPath=i.currentPath=c.getPath(i.data),O(\"current path\")&&!b&&z.push(I.currentPath);var D=[],R=function(){-1===D.indexOf(L)&&(z.push(L),D.push(L))};I.percentParent=i.percentParent=T/c.getValue(w),I.parent=i.parentString=c.getPtLabel(w),O(\"percent parent\")&&(L=c.formatPercent(I.percentParent,S)+\" of \"+I.parent,R()),I.percentEntry=i.percentEntry=T/c.getValue(e),I.entry=i.entry=c.getPtLabel(e),!O(\"percent entry\")||b||i.onPathbar||(L=c.formatPercent(I.percentEntry,S)+\" of \"+I.entry,R()),I.percentRoot=i.percentRoot=T/c.getValue(m),I.root=i.root=c.getPtLabel(m),O(\"percent root\")&&!b&&(L=c.formatPercent(I.percentRoot,S)+\" of \"+I.root,R()),I.text=k(\"hovertext\")||k(\"text\"),O(\"text\")&&(L=I.text,s.isValidTextValue(L)&&z.push(L)),l=[h(i,v,f.eventDataKeys)];var F={trace:v,y:C,_x0:i._x0,_x1:i._x1,_y0:i._y0,_y1:i._y1,text:z.join(\"<br>\"),name:A||O(\"name\")?v.name:void 0,color:k(\"hoverlabel.bgcolor\")||x.color,borderColor:k(\"hoverlabel.bordercolor\"),fontFamily:k(\"hoverlabel.font.family\"),fontSize:k(\"hoverlabel.font.size\"),fontColor:k(\"hoverlabel.font.color\"),fontWeight:k(\"hoverlabel.font.weight\"),fontStyle:k(\"hoverlabel.font.style\"),fontVariant:k(\"hoverlabel.font.variant\"),nameLength:k(\"hoverlabel.namelength\"),textAlign:k(\"hoverlabel.align\"),hovertemplate:A,hovertemplateLabels:I,eventData:l};g&&(F.x0=E-i.rInscribed*i.rpx1,F.x1=E+i.rInscribed*i.rpx1,F.idealAlign=i.pxmid[0]<0?\"left\":\"right\"),y&&(F.x=E,F.idealAlign=E<0?\"left\":\"right\");var B=[];o.loneHover(F,{container:a._hoverlayer.node(),outerContainer:a._paper.node(),gd:r,inOut_bbox:B}),l[0].bbox=B[0],d._hasHoverLabel=!0}if(y){var N=t.select(\"path.surface\");f.styleOne(N,i,v,r,{hovered:!0})}d._hasHoverEvent=!0,r.emit(\"plotly_hover\",{points:l||[h(i,v,f.eventDataKeys)],event:n.event})}})),t.on(\"mouseout\",(function(e){var i=r._fullLayout,a=r._fullData[d.index],s=n.select(this).datum();if(d._hasHoverEvent&&(e.originalEvent=n.event,r.emit(\"plotly_unhover\",{points:[h(s,a,f.eventDataKeys)],event:n.event}),d._hasHoverEvent=!1),d._hasHoverLabel&&(o.loneUnhover(i._hoverlayer.node()),d._hasHoverLabel=!1),y){var l=t.select(\"path.surface\");f.styleOne(l,s,a,r,{hovered:!1})}})),t.on(\"click\",(function(t){var e=r._fullLayout,a=r._fullData[d.index],s=g&&(c.isHierarchyRoot(t)||c.isLeaf(t)),u=c.getPtId(t),p=c.isEntry(t)?c.findEntryWithChild(m,u):c.findEntryWithLevel(m,u),y=c.getPtId(p),v={points:[h(t,a,f.eventDataKeys)],event:n.event};s||(v.nextLevel=y);var x=l.triggerHandler(r,\"plotly_\"+d.type+\"click\",v);if(!1!==x&&e.hovermode&&(r._hoverdata=[h(t,a,f.eventDataKeys)],o.click(r,n.event)),!s&&!1!==x&&!r._dragging&&!r._transitioning){i.call(\"_storeDirectGUIEdit\",a,e._tracePreGUI[a.uid],{level:a.level});var _={data:[{level:y}],traces:[d.index]},b={frame:{redraw:!1,duration:f.transitionTime},transition:{duration:f.transitionTime,easing:f.transitionEasing},mode:\"immediate\",fromcurrent:!0};o.loneUnhover(e._hoverlayer.node()),i.call(\"animate\",r,_,b)}}))}},33108:function(t,e,r){\"use strict\";var n=r(34809),i=r(78766),a=r(27983),o=r(37252);function s(t){return t.data.data.pid}e.findEntryWithLevel=function(t,r){var n;return r&&t.eachAfter((function(t){if(e.getPtId(t)===r)return n=t.copy()})),n||t},e.findEntryWithChild=function(t,r){var n;return t.eachAfter((function(t){for(var i=t.children||[],a=0;a<i.length;a++){var o=i[a];if(e.getPtId(o)===r)return n=t.copy()}})),n||t},e.isEntry=function(t){return!t.parent},e.isLeaf=function(t){return!t.children},e.getPtId=function(t){return t.data.data.id},e.getPtLabel=function(t){return t.data.data.label},e.getValue=function(t){return t.value},e.isHierarchyRoot=function(t){return\"\"===s(t)},e.setSliceCursor=function(t,r,n){var i=n.isTransitioning;if(!i){var o=t.datum();i=n.hideOnRoot&&e.isHierarchyRoot(o)||n.hideOnLeaves&&e.isLeaf(o)}a(t,i?null:\"pointer\")},e.getInsideTextFontKey=function(t,e,r,i,a){var o=(a||{}).onPathbar?\"pathbar.textfont\":\"insidetextfont\",s=r.data.data.i;return n.castOption(e,s,o+\".\"+t)||n.castOption(e,s,\"textfont.\"+t)||i.size},e.getOutsideTextFontKey=function(t,e,r,i){var a=r.data.data.i;return n.castOption(e,a,\"outsidetextfont.\"+t)||n.castOption(e,a,\"textfont.\"+t)||i.size},e.isOutsideText=function(t,r){return!t._hasColorscale&&e.isHierarchyRoot(r)},e.determineTextFont=function(t,r,a,o){return e.isOutsideText(t,r)?function(t,r,n){return{color:e.getOutsideTextFontKey(\"color\",t,r,n),family:e.getOutsideTextFontKey(\"family\",t,r,n),size:e.getOutsideTextFontKey(\"size\",t,r,n),weight:e.getOutsideTextFontKey(\"weight\",t,r,n),style:e.getOutsideTextFontKey(\"style\",t,r,n),variant:e.getOutsideTextFontKey(\"variant\",t,r,n),textcase:e.getOutsideTextFontKey(\"textcase\",t,r,n),lineposition:e.getOutsideTextFontKey(\"lineposition\",t,r,n),shadow:e.getOutsideTextFontKey(\"shadow\",t,r,n)}}(t,r,a):function(t,r,a,o){var s=(o||{}).onPathbar,l=r.data.data,c=l.i,u=n.castOption(t,c,(s?\"pathbar.textfont\":\"insidetextfont\")+\".color\");return!u&&t._input.textfont&&(u=n.castOption(t._input,c,\"textfont.color\")),{color:u||i.contrast(l.color),family:e.getInsideTextFontKey(\"family\",t,r,a,o),size:e.getInsideTextFontKey(\"size\",t,r,a,o),weight:e.getInsideTextFontKey(\"weight\",t,r,a,o),style:e.getInsideTextFontKey(\"style\",t,r,a,o),variant:e.getInsideTextFontKey(\"variant\",t,r,a,o),textcase:e.getInsideTextFontKey(\"textcase\",t,r,a,o),lineposition:e.getInsideTextFontKey(\"lineposition\",t,r,a,o),shadow:e.getInsideTextFontKey(\"shadow\",t,r,a,o)}}(t,r,a,o)},e.hasTransition=function(t){return!!(t&&t.duration>0)},e.getMaxDepth=function(t){return t.maxdepth>=0?t.maxdepth:1/0},e.isHeader=function(t,r){return!(e.isLeaf(t)||t.depth===r._maxDepth-1)},e.getParent=function(t,r){return e.findEntryWithLevel(t,s(r))},e.listPath=function(t,r){var n=t.parent;if(!n)return[];var i=r?[n.data[r]]:[n];return e.listPath(n,r).concat(i)},e.getPath=function(t){return e.listPath(t,\"label\").join(\"/\")+\"/\"},e.formatValue=o.formatPieValue,e.formatPercent=function(t,e){var r=n.formatPercent(t,0);return\"0%\"===r&&(r=o.formatPiePercent(t,e)),r}},80809:function(t,e,r){\"use strict\";t.exports={moduleType:\"trace\",name:\"sunburst\",basePlotModule:r(14724),categories:[],animatable:!0,attributes:r(56708),layoutAttributes:r(98959),supplyDefaults:r(33459),supplyLayoutDefaults:r(75816),calc:r(14852).calc,crossTraceCalc:r(14852).crossTraceCalc,plot:r(19718).plot,style:r(98972).style,colorbar:r(21146),meta:{}}},98959:function(t){\"use strict\";t.exports={sunburstcolorway:{valType:\"colorlist\",editType:\"calc\"},extendsunburstcolors:{valType:\"boolean\",dflt:!0,editType:\"calc\"}}},75816:function(t,e,r){\"use strict\";var n=r(34809),i=r(98959);t.exports=function(t,e){function r(r,a){return n.coerce(t,e,i,r,a)}r(\"sunburstcolorway\",e.colorway),r(\"extendsunburstcolors\")}},19718:function(t,e,r){\"use strict\";var n=r(45568),i=r(92264),a=r(88640).GW,o=r(62203),s=r(34809),l=r(30635),c=r(84102),u=c.recordMinTextSize,h=c.clearMinTextSize,f=r(35734),p=r(37252).getRotationAngle,d=f.computeTransform,m=f.transformInsideText,g=r(98972).styleOne,y=r(6851).resizeText,v=r(44691),x=r(2032),_=r(33108);function b(t,r,c,h){var f=t._context.staticPlot,y=t._fullLayout,b=!y.uniformtext.mode&&_.hasTransition(h),T=n.select(c).selectAll(\"g.slice\"),k=r[0],A=k.trace,M=k.hierarchy,S=_.findEntryWithLevel(M,A.level),E=_.getMaxDepth(A),C=y._size,L=A.domain,I=C.w*(L.x[1]-L.x[0]),P=C.h*(L.y[1]-L.y[0]),z=.5*Math.min(I,P),O=k.cx=C.l+C.w*(L.x[1]+L.x[0])/2,D=k.cy=C.t+C.h*(1-L.y[0])-P/2;if(!S)return T.remove();var R=null,F={};b&&T.each((function(t){F[_.getPtId(t)]={rpx0:t.rpx0,rpx1:t.rpx1,x0:t.x0,x1:t.x1,transform:t.transform},!R&&_.isEntry(t)&&(R=t)}));var B=function(t){return i.partition().size([2*Math.PI,t.height+1])(t)}(S).descendants(),N=S.height+1,j=0,U=E;k.hasMultipleRoots&&_.isHierarchyRoot(S)&&(B=B.slice(1),N-=1,j=1,U+=1),B=B.filter((function(t){return t.y1<=U}));var V=p(A.rotation);V&&B.forEach((function(t){t.x0+=V,t.x1+=V}));var q=Math.min(N,E),H=function(t){return(t-j)/q*z},G=function(t,e){return[t*Math.cos(e),-t*Math.sin(e)]},Z=function(t){return s.pathAnnulus(t.rpx0,t.rpx1,t.x0,t.x1,O,D)},W=function(t){return O+w(t)[0]*(t.transform.rCenter||0)+(t.transform.x||0)},Y=function(t){return D+w(t)[1]*(t.transform.rCenter||0)+(t.transform.y||0)};(T=T.data(B,_.getPtId)).enter().append(\"g\").classed(\"slice\",!0),b?T.exit().transition().each((function(){var t=n.select(this);t.select(\"path.surface\").transition().attrTween(\"d\",(function(t){var e=function(t){var e,r=_.getPtId(t),n=F[r],i=F[_.getPtId(S)];if(i){var o=(t.x1>i.x1?2*Math.PI:0)+V;e=t.rpx1<i.rpx1?{x0:t.x0,x1:t.x1,rpx0:0,rpx1:0}:{x0:o,x1:o,rpx0:t.rpx0,rpx1:t.rpx1}}else{var s,l=_.getPtId(t.parent);T.each((function(t){if(_.getPtId(t)===l)return s=t}));var c,u=s.children;u.forEach((function(t,e){if(_.getPtId(t)===r)return c=e}));var h=u.length,f=a(s.x0,s.x1);e={rpx0:z,rpx1:z,x0:f(c/h),x1:f((c+1)/h)}}return a(n,e)}(t);return function(t){return Z(e(t))}})),t.select(\"g.slicetext\").attr(\"opacity\",0)})).remove():T.exit().remove(),T.order();var X=null;if(b&&R){var $=_.getPtId(R);T.each((function(t){null===X&&_.getPtId(t)===$&&(X=t.x1)}))}var J=T;function K(t){var e=t.parent,r=F[_.getPtId(e)],n={};if(r){var i=e.children,o=i.indexOf(t),s=i.length,l=a(r.x0,r.x1);n.x0=l(o/s),n.x1=l(o/s)}else n.x0=n.x1=0;return n}b&&(J=J.transition().each(\"end\",(function(){var e=n.select(this);_.setSliceCursor(e,t,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:!1})}))),J.each((function(i){var c=n.select(this),h=s.ensureSingle(c,\"path\",\"surface\",(function(t){t.style(\"pointer-events\",f?\"none\":\"all\")}));i.rpx0=H(i.y0),i.rpx1=H(i.y1),i.xmid=(i.x0+i.x1)/2,i.pxmid=G(i.rpx1,i.xmid),i.midangle=-(i.xmid-Math.PI/2),i.startangle=-(i.x0-Math.PI/2),i.stopangle=-(i.x1-Math.PI/2),i.halfangle=.5*Math.min(s.angleDelta(i.x0,i.x1)||Math.PI,Math.PI),i.ring=1-i.rpx0/i.rpx1,i.rInscribed=function(t){return 0===t.rpx0&&s.isFullCircle([t.x0,t.x1])?1:Math.max(0,Math.min(1/(1+1/Math.sin(t.halfangle)),t.ring/2))}(i),b?h.transition().attrTween(\"d\",(function(t){var e=function(t){var e,r=F[_.getPtId(t)],n={x0:t.x0,x1:t.x1,rpx0:t.rpx0,rpx1:t.rpx1};if(r)e=r;else if(R)if(t.parent)if(X){var i=(t.x1>X?2*Math.PI:0)+V;e={x0:i,x1:i}}else e={rpx0:z,rpx1:z},s.extendFlat(e,K(t));else e={rpx0:0,rpx1:0};else e={x0:V,x1:V};return a(e,n)}(t);return function(t){return Z(e(t))}})):h.attr(\"d\",Z),c.call(v,S,t,r,{eventDataKeys:x.eventDataKeys,transitionTime:x.CLICK_TRANSITION_TIME,transitionEasing:x.CLICK_TRANSITION_EASING}).call(_.setSliceCursor,t,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:t._transitioning}),h.call(g,i,A,t);var p=s.ensureSingle(c,\"g\",\"slicetext\"),w=s.ensureSingle(p,\"text\",\"\",(function(t){t.attr(\"data-notex\",1)})),T=s.ensureUniformFontSize(t,_.determineTextFont(A,i,y.font));w.text(e.formatSliceLabel(i,S,A,r,y)).classed(\"slicetext\",!0).attr(\"text-anchor\",\"middle\").call(o.font,T).call(l.convertToTspans,t);var M=o.bBox(w.node());i.transform=m(M,i,k),i.transform.targetX=W(i),i.transform.targetY=Y(i);var E=function(t,e){var r=t.transform;return d(r,e),r.fontSize=T.size,u(A.type,r,y),s.getTextTransform(r)};b?w.transition().attrTween(\"transform\",(function(t){var e=function(t){var e,r=F[_.getPtId(t)],n=t.transform;if(r)e=r;else if(e={rpx1:t.rpx1,transform:{textPosAngle:n.textPosAngle,scale:0,rotate:n.rotate,rCenter:n.rCenter,x:n.x,y:n.y}},R)if(t.parent)if(X){var i=t.x1>X?2*Math.PI:0;e.x0=e.x1=i}else s.extendFlat(e,K(t));else e.x0=e.x1=V;else e.x0=e.x1=V;var o=a(e.transform.textPosAngle,t.transform.textPosAngle),l=a(e.rpx1,t.rpx1),c=a(e.x0,t.x0),h=a(e.x1,t.x1),f=a(e.transform.scale,n.scale),p=a(e.transform.rotate,n.rotate),d=0===n.rCenter?3:0===e.transform.rCenter?1/3:1,m=a(e.transform.rCenter,n.rCenter);return function(t){var e=l(t),r=c(t),i=h(t),a=function(t){return m(Math.pow(t,d))}(t),s={pxmid:G(e,(r+i)/2),rpx1:e,transform:{textPosAngle:o(t),rCenter:a,x:n.x,y:n.y}};return u(A.type,n,y),{transform:{targetX:W(s),targetY:Y(s),scale:f(t),rotate:p(t),rCenter:a}}}}(t);return function(t){return E(e(t),M)}})):w.attr(\"transform\",E(i,M))}))}function w(t){return e=t.rpx1,r=t.transform.textPosAngle,[e*Math.sin(r),-e*Math.cos(r)];var e,r}e.plot=function(t,e,r,i){var a,o,s=t._fullLayout,l=s._sunburstlayer,c=!r,u=!s.uniformtext.mode&&_.hasTransition(r);h(\"sunburst\",s),(a=l.selectAll(\"g.trace.sunburst\").data(e,(function(t){return t[0].trace.uid}))).enter().append(\"g\").classed(\"trace\",!0).classed(\"sunburst\",!0).attr(\"stroke-linejoin\",\"round\"),a.order(),u?(i&&(o=i()),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(e){b(t,e,this,r)}))}))):(a.each((function(e){b(t,e,this,r)})),s.uniformtext.mode&&y(t,s._sunburstlayer.selectAll(\".trace\"),\"sunburst\")),c&&a.exit().remove()},e.formatSliceLabel=function(t,e,r,n,i){var a=r.texttemplate,o=r.textinfo;if(!(a||o&&\"none\"!==o))return\"\";var l=i.separators,c=n[0],u=t.data.data,h=c.hierarchy,f=_.isHierarchyRoot(t),p=_.getParent(h,t),d=_.getValue(t);if(!a){var m,g=o.split(\"+\"),y=function(t){return-1!==g.indexOf(t)},v=[];if(y(\"label\")&&u.label&&v.push(u.label),u.hasOwnProperty(\"v\")&&y(\"value\")&&v.push(_.formatValue(u.v,l)),!f){y(\"current path\")&&v.push(_.getPath(t.data));var x=0;y(\"percent parent\")&&x++,y(\"percent entry\")&&x++,y(\"percent root\")&&x++;var b=x>1;if(x){var w,T=function(t){m=_.formatPercent(w,l),b&&(m+=\" of \"+t),v.push(m)};y(\"percent parent\")&&!f&&(w=d/_.getValue(p),T(\"parent\")),y(\"percent entry\")&&(w=d/_.getValue(e),T(\"entry\")),y(\"percent root\")&&(w=d/_.getValue(h),T(\"root\"))}}return y(\"text\")&&(m=s.castOption(r,u.i,\"text\"),s.isValidTextValue(m)&&v.push(m)),v.join(\"<br>\")}var k=s.castOption(r,u.i,\"texttemplate\");if(!k)return\"\";var A={};u.label&&(A.label=u.label),u.hasOwnProperty(\"v\")&&(A.value=u.v,A.valueLabel=_.formatValue(u.v,l)),A.currentPath=_.getPath(t.data),f||(A.percentParent=d/_.getValue(p),A.percentParentLabel=_.formatPercent(A.percentParent,l),A.parent=_.getPtLabel(p)),A.percentEntry=d/_.getValue(e),A.percentEntryLabel=_.formatPercent(A.percentEntry,l),A.entry=_.getPtLabel(e),A.percentRoot=d/_.getValue(h),A.percentRootLabel=_.formatPercent(A.percentRoot,l),A.root=_.getPtLabel(h),u.hasOwnProperty(\"color\")&&(A.color=u.color);var M=s.castOption(r,u.i,\"text\");return(s.isValidTextValue(M)||\"\"===M)&&(A.text=M),A.customdata=s.castOption(r,u.i,\"customdata\"),s.texttemplateString(k,A,i._d3locale,A,r._meta||{})}},98972:function(t,e,r){\"use strict\";var n=r(45568),i=r(78766),a=r(34809),o=r(84102).resizeText,s=r(72043);function l(t,e,r,n){var o=e.data.data,l=!e.children,c=o.i,u=a.castOption(r,c,\"marker.line.color\")||i.defaultLine,h=a.castOption(r,c,\"marker.line.width\")||0;t.call(s,e,r,n).style(\"stroke-width\",h).call(i.stroke,u).style(\"opacity\",l?r.leaf.opacity:null)}t.exports={style:function(t){var e=t._fullLayout._sunburstlayer.selectAll(\".trace\");o(t,e,\"sunburst\"),e.each((function(e){var r=n.select(this),i=e[0].trace;r.style(\"opacity\",i.opacity),r.selectAll(\"path.surface\").each((function(e){n.select(this).call(l,e,i,t)}))}))},styleOne:l}},16131:function(t,e,r){\"use strict\";var n=r(78766),i=r(87163),a=r(80712).axisHoverFormat,o=r(3208).rb,s=r(9829),l=r(93049).extendFlat,c=r(13582).overrideAll;function u(t){return{show:{valType:\"boolean\",dflt:!1},start:{valType:\"number\",dflt:null,editType:\"plot\"},end:{valType:\"number\",dflt:null,editType:\"plot\"},size:{valType:\"number\",dflt:null,min:0,editType:\"plot\"},project:{x:{valType:\"boolean\",dflt:!1},y:{valType:\"boolean\",dflt:!1},z:{valType:\"boolean\",dflt:!1}},color:{valType:\"color\",dflt: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 h=t.exports=c(l({z:{valType:\"data_array\"},x:{valType:\"data_array\"},y:{valType:\"data_array\"},text:{valType:\"string\",dflt:\"\",arrayOk:!0},hovertext:{valType:\"string\",dflt:\"\",arrayOk:!0},hovertemplate:o(),xhoverformat:a(\"x\"),yhoverformat:a(\"y\"),zhoverformat:a(\"z\"),connectgaps:{valType:\"boolean\",dflt:!1,editType:\"calc\"},surfacecolor:{valType:\"data_array\"}},i(\"\",{colorAttr:\"z or surfacecolor\",showScaleDflt:!0,autoColorDflt:!1,editTypeOverride:\"calc\"}),{contours:{x:u(),y:u(),z:u()},hidesurface:{valType:\"boolean\",dflt:!1},lightposition:{x:{valType:\"number\",min:-1e5,max:1e5,dflt:10},y:{valType:\"number\",min:-1e5,max:1e5,dflt:1e4},z:{valType:\"number\",min:-1e5,max:1e5,dflt:0}},lighting:{ambient:{valType:\"number\",min:0,max:1,dflt:.8},diffuse:{valType:\"number\",min:0,max:1,dflt:.8},specular:{valType:\"number\",min:0,max:2,dflt:.05},roughness:{valType:\"number\",min:0,max:1,dflt:.5},fresnel:{valType:\"number\",min:0,max:5,dflt:.2}},opacity:{valType:\"number\",min:0,max:1,dflt:1},opacityscale:{valType:\"any\",editType:\"calc\"},_deprecated:{zauto:l({},i.zauto,{}),zmin:l({},i.zmin,{}),zmax:l({},i.zmax,{})},hoverinfo:l({},s.hoverinfo),showlegend:l({},s.showlegend,{dflt:!1})}),\"calc\",\"nested\");h.x.editType=h.y.editType=h.z.editType=\"calc+clearAxisTypes\",h.transforms=void 0},53027:function(t,e,r){\"use strict\";var n=r(28379);t.exports=function(t,e){e.surfacecolor?n(t,e,{vals:e.surfacecolor,containerStr:\"\",cLetter:\"c\"}):n(t,e,{vals:e.z,containerStr:\"\",cLetter:\"c\"})}},27159:function(t,e,r){\"use strict\";var n=r(99098).gl_surface3d,i=r(99098).ndarray,a=r(99098).ndarray_linear_interpolate.d2,o=r(69295),s=r(78106),l=r(34809).isArrayOrTypedArray,c=r(46998).parseColorScale,u=r(55010),h=r(88856).extractOpts;function f(t,e,r){this.scene=t,this.uid=r,this.surface=e,this.data=null,this.showContour=[!1,!1,!1],this.contourStart=[null,null,null],this.contourEnd=[null,null,null],this.contourSize=[0,0,0],this.minValues=[1/0,1/0,1/0],this.maxValues=[-1/0,-1/0,-1/0],this.dataScaleX=1,this.dataScaleY=1,this.refineData=!0,this.objectOffset=[0,0,0]}var p=f.prototype;p.getXat=function(t,e,r,n){var i=l(this.data.x)?l(this.data.x[0])?this.data.x[e][t]:this.data.x[t]:t;return void 0===r?i:n.d2l(i,0,r)},p.getYat=function(t,e,r,n){var i=l(this.data.y)?l(this.data.y[0])?this.data.y[e][t]:this.data.y[e]:e;return void 0===r?i:n.d2l(i,0,r)},p.getZat=function(t,e,r,n){var i=this.data.z[e][t];return null===i&&this.data.connectgaps&&this.data._interpolatedZ&&(i=this.data._interpolatedZ[e][t]),void 0===r?i:n.d2l(i,0,r)},p.handlePick=function(t){if(t.object===this.surface){var e=(t.data.index[0]-1)/this.dataScaleX-1,r=(t.data.index[1]-1)/this.dataScaleY-1,n=Math.max(Math.min(Math.round(e),this.data.z[0].length-1),0),i=Math.max(Math.min(Math.round(r),this.data._ylength-1),0);t.index=[n,i],t.traceCoordinate=[this.getXat(n,i),this.getYat(n,i),this.getZat(n,i)],t.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++){null!=t.dataCoordinate[a]&&(t.dataCoordinate[a]*=this.scene.dataScale[a])}var o=this.data.hovertext||this.data.text;return l(o)&&o[i]&&void 0!==o[i][n]?t.textLabel=o[i][n]:t.textLabel=o||\"\",t.data.dataCoordinate=t.dataCoordinate.slice(),this.surface.highlight(t.data),this.scene.glplot.spikes.position=t.dataCoordinate,!0}};var d=[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 m(t,e){if(t<e)return 0;for(var r=0;0===Math.floor(t%e);)t/=e,r++;return r}function g(t){for(var e=[],r=0;r<d.length;r++){var n=d[r];e.push(m(t,n))}return e}function y(t){for(var e=g(t),r=t,n=0;n<d.length;n++)if(e[n]>0){r=d[n];break}return r}function v(t,e){if(!(t<1||e<1)){for(var r=g(t),n=g(e),i=1,a=0;a<d.length;a++)i*=Math.pow(d[a],Math.max(r[a],n[a]));return i}}p.calcXnums=function(t){var e,r=[];for(e=1;e<t;e++){var n=this.getXat(e-1,0),i=this.getXat(e,0);r[e-1]=i!==n&&null!=n&&null!=i?Math.abs(i-n):0}var a=0;for(e=1;e<t;e++)a+=r[e-1];for(e=1;e<t;e++)0===r[e-1]?r[e-1]=1:r[e-1]=Math.round(a/r[e-1]);return r},p.calcYnums=function(t){var e,r=[];for(e=1;e<t;e++){var n=this.getYat(0,e-1),i=this.getYat(0,e);r[e-1]=i!==n&&null!=n&&null!=i?Math.abs(i-n):0}var a=0;for(e=1;e<t;e++)a+=r[e-1];for(e=1;e<t;e++)0===r[e-1]?r[e-1]=1:r[e-1]=Math.round(a/r[e-1]);return r};var x=[1,2,4,6,12,24,36,48,60,120,180,240,360,720,840,1260],_=x[9],b=x[13];function w(t,e,r){var n=r[8]+r[2]*e[0]+r[5]*e[1];return t[0]=(r[6]+r[0]*e[0]+r[3]*e[1])/n,t[1]=(r[7]+r[1]*e[0]+r[4]*e[1])/n,t}function T(t,e,r){return function(t,e,r,n){for(var i=[0,0],o=t.shape[0],s=t.shape[1],l=0;l<o;l++)for(var c=0;c<s;c++)r(i,[l,c],n),t.set(l,c,a(e,i[0],i[1]))}(t,e,w,r),t}function k(t,e){for(var r=!1,n=0;n<t.length;n++)if(e===t[n]){r=!0;break}!1===r&&t.push(e)}p.estimateScale=function(t,e){for(var r=1+function(t){if(0!==t.length){for(var e=1,r=0;r<t.length;r++)e=v(e,t[r]);return e}}(0===e?this.calcXnums(t):this.calcYnums(t));r<_;)r*=2;for(;r>b;)r--,r/=y(r),++r<_&&(r=b);var n=Math.round(r/t);return n>1?n:1},p.refineCoords=function(t){for(var e=this.dataScaleX,r=this.dataScaleY,n=t[0].shape[0],a=t[0].shape[1],o=0|Math.floor(t[0].shape[0]*e+1),s=0|Math.floor(t[0].shape[1]*r+1),l=1+n+1,c=1+a+1,u=i(new Float32Array(l*c),[l,c]),h=[1/e,0,0,0,1/r,0,0,0,1],f=0;f<t.length;++f){this.surface.padField(u,t[f]);var p=i(new Float32Array(o*s),[o,s]);T(p,u,h),t[f]=p}},p.setContourLevels=function(){var t,e,r,n=[[],[],[]],i=[!1,!1,!1],a=!1;for(t=0;t<3;++t)if(this.showContour[t]&&(a=!0,this.contourSize[t]>0&&null!==this.contourStart[t]&&null!==this.contourEnd[t]&&this.contourEnd[t]>this.contourStart[t]))for(i[t]=!0,e=this.contourStart[t];e<this.contourEnd[t];e+=this.contourSize[t])r=e*this.scene.dataScale[t],k(n[t],r);if(a){var o=[[],[],[]];for(t=0;t<3;++t)this.showContour[t]&&(o[t]=i[t]?n[t]:this.scene.contourLevels[t]);this.surface.update({levels:o})}},p.update=function(t){var e,r,n,a,l=this.scene,f=l.fullSceneLayout,p=this.surface,d=c(t),m=l.dataScale,g=t.z[0].length,y=t._ylength,v=l.contourLevels;this.data=t;var x=[];for(e=0;e<3;e++)for(x[e]=[],r=0;r<g;r++)x[e][r]=[];for(r=0;r<g;r++)for(n=0;n<y;n++)x[0][r][n]=this.getXat(r,n,t.xcalendar,f.xaxis),x[1][r][n]=this.getYat(r,n,t.ycalendar,f.yaxis),x[2][r][n]=this.getZat(r,n,t.zcalendar,f.zaxis);if(t.connectgaps)for(t._emptypoints=s(x[2]),o(x[2],t._emptypoints),t._interpolatedZ=[],r=0;r<g;r++)for(t._interpolatedZ[r]=[],n=0;n<y;n++)t._interpolatedZ[r][n]=x[2][r][n];for(e=0;e<3;e++)for(r=0;r<g;r++)for(n=0;n<y;n++)null==(a=x[e][r][n])?x[e][r][n]=NaN:a=x[e][r][n]*=m[e];for(e=0;e<3;e++)for(r=0;r<g;r++)for(n=0;n<y;n++)null!=(a=x[e][r][n])&&(this.minValues[e]>a&&(this.minValues[e]=a),this.maxValues[e]<a&&(this.maxValues[e]=a));for(e=0;e<3;e++)this.objectOffset[e]=.5*(this.minValues[e]+this.maxValues[e]);for(e=0;e<3;e++)for(r=0;r<g;r++)for(n=0;n<y;n++)null!=(a=x[e][r][n])&&(x[e][r][n]-=this.objectOffset[e]);var _=[i(new Float32Array(g*y),[g,y]),i(new Float32Array(g*y),[g,y]),i(new Float32Array(g*y),[g,y])];for(e=0;e<3;e++)for(r=0;r<g;r++)for(n=0;n<y;n++)_[e].set(r,n,x[e][r][n]);x=[];var w={colormap:d,levels:[[],[],[]],showContour:[!0,!0,!0],showSurface:!t.hidesurface,contourProject:[[!1,!1,!1],[!1,!1,!1],[!1,!1,!1]],contourWidth:[1,1,1],contourColor:[[1,1,1,1],[1,1,1,1],[1,1,1,1]],contourTint:[1,1,1],dynamicColor:[[1,1,1,1],[1,1,1,1],[1,1,1,1]],dynamicWidth:[1,1,1],dynamicTint:[1,1,1],opacityscale:t.opacityscale,opacity:t.opacity},T=h(t);if(w.intensityBounds=[T.min,T.max],t.surfacecolor){var k=i(new Float32Array(g*y),[g,y]);for(r=0;r<g;r++)for(n=0;n<y;n++)k.set(r,n,t.surfacecolor[n][r]);_.push(k)}else w.intensityBounds[0]*=m[2],w.intensityBounds[1]*=m[2];(b<_[0].shape[0]||b<_[0].shape[1])&&(this.refineData=!1),!0===this.refineData&&(this.dataScaleX=this.estimateScale(_[0].shape[0],0),this.dataScaleY=this.estimateScale(_[0].shape[1],1),1===this.dataScaleX&&1===this.dataScaleY||this.refineCoords(_)),t.surfacecolor&&(w.intensity=_.pop());var A=[!0,!0,!0],M=[\"x\",\"y\",\"z\"];for(e=0;e<3;++e){var S=t.contours[M[e]];A[e]=S.highlight,w.showContour[e]=S.show||S.highlight,w.showContour[e]&&(w.contourProject[e]=[S.project.x,S.project.y,S.project.z],S.show?(this.showContour[e]=!0,w.levels[e]=v[e],p.highlightColor[e]=w.contourColor[e]=u(S.color),S.usecolormap?p.highlightTint[e]=w.contourTint[e]=0:p.highlightTint[e]=w.contourTint[e]=1,w.contourWidth[e]=S.width,this.contourStart[e]=S.start,this.contourEnd[e]=S.end,this.contourSize[e]=S.size):(this.showContour[e]=!1,this.contourStart[e]=null,this.contourEnd[e]=null,this.contourSize[e]=0),S.highlight&&(w.dynamicColor[e]=u(S.highlightcolor),w.dynamicWidth[e]=S.highlightwidth))}(function(t){var e=t[0].rgb,r=t[t.length-1].rgb;return e[0]===r[0]&&e[1]===r[1]&&e[2]===r[2]&&e[3]===r[3]})(d)&&(w.vertexColor=!0),w.objectOffset=this.objectOffset,w.coords=_,p.update(w),p.visible=t.visible,p.enableDynamic=A,p.enableHighlight=A,p.snapToData=!0,\"lighting\"in t&&(p.ambientLight=t.lighting.ambient,p.diffuseLight=t.lighting.diffuse,p.specularLight=t.lighting.specular,p.roughness=t.lighting.roughness,p.fresnel=t.lighting.fresnel),\"lightposition\"in t&&(p.lightPosition=[t.lightposition.x,t.lightposition.y,t.lightposition.z])},p.dispose=function(){this.scene.glplot.remove(this.surface),this.surface.dispose()},t.exports=function(t,e){var r=t.glplot.gl,i=n({gl:r}),a=new f(t,i,e.uid);return i._trace=a,a.update(e),t.glplot.add(i),a}},65444:function(t,e,r){\"use strict\";var n=r(33626),i=r(34809),a=r(39356),o=r(16131);function s(t,e,r,n){var i=n(\"opacityscale\");\"max\"===i?e.opacityscale=[[0,.1],[1,1]]:\"min\"===i?e.opacityscale=[[0,1],[1,.1]]:\"extremes\"===i?e.opacityscale=function(t,e){for(var r=[],n=0;n<32;n++){var i=n/31,a=.1+.9*(1-Math.pow(Math.sin(1*i*Math.PI),2));r.push([i,Math.max(0,Math.min(1,a))])}return r}():function(t){var e=0;if(!Array.isArray(t)||t.length<2)return!1;if(!t[0]||!t[t.length-1])return!1;if(0!=+t[0][0]||1!=+t[t.length-1][0])return!1;for(var r=0;r<t.length;r++){var n=t[r];if(2!==n.length||+n[0]<e)return!1;e=+n[0]}return!0}(i)||(e.opacityscale=void 0)}function l(t,e,r){e in t&&!(r in t)&&(t[r]=t[e])}t.exports={supplyDefaults:function(t,e,r,c){var u,h;function f(r,n){return i.coerce(t,e,o,r,n)}var p=f(\"x\"),d=f(\"y\"),m=f(\"z\");if(!m||!m.length||p&&p.length<1||d&&d.length<1)e.visible=!1;else{e._xlength=Array.isArray(p)&&i.isArrayOrTypedArray(p[0])?m.length:m[0].length,e._ylength=m.length,n.getComponentMethod(\"calendars\",\"handleTraceDefaults\")(t,e,[\"x\",\"y\",\"z\"],c),f(\"text\"),f(\"hovertext\"),f(\"hovertemplate\"),f(\"xhoverformat\"),f(\"yhoverformat\"),f(\"zhoverformat\"),[\"lighting.ambient\",\"lighting.diffuse\",\"lighting.specular\",\"lighting.roughness\",\"lighting.fresnel\",\"lightposition.x\",\"lightposition.y\",\"lightposition.z\",\"hidesurface\",\"connectgaps\",\"opacity\"].forEach((function(t){f(t)}));var g=f(\"surfacecolor\"),y=[\"x\",\"y\",\"z\"];for(u=0;u<3;++u){var v=\"contours.\"+y[u],x=f(v+\".show\"),_=f(v+\".highlight\");if(x||_)for(h=0;h<3;++h)f(v+\".project.\"+y[h]);x&&(f(v+\".color\"),f(v+\".width\"),f(v+\".usecolormap\")),_&&(f(v+\".highlightcolor\"),f(v+\".highlightwidth\")),f(v+\".start\"),f(v+\".end\"),f(v+\".size\")}g||(l(t,\"zmin\",\"cmin\"),l(t,\"zmax\",\"cmax\"),l(t,\"zauto\",\"cauto\")),a(t,e,c,f,{prefix:\"\",cLetter:\"c\"}),s(0,e,0,f),e._length=null}},opacityscaleDefaults:s}},95984:function(t,e,r){\"use strict\";t.exports={attributes:r(16131),supplyDefaults:r(65444).supplyDefaults,colorbar:{min:\"cmin\",max:\"cmax\"},calc:r(53027),plot:r(27159),moduleType:\"trace\",name:\"surface\",basePlotModule:r(2487),categories:[\"gl3d\",\"2dMap\",\"showLegend\"],meta:{}}},92294:function(t,e,r){\"use strict\";var n=r(50222),i=r(93049).extendFlat,a=r(13582).overrideAll,o=r(80337),s=r(13792).u,l=r(80712).descriptionOnlyNumbers;(t.exports=a({domain:s({name:\"table\",trace:!0}),columnwidth:{valType:\"number\",arrayOk:!0,dflt:null},columnorder:{valType:\"data_array\"},header:{values:{valType:\"data_array\",dflt:[]},format:{valType:\"data_array\",dflt:[],description:l(\"cell value\")},prefix:{valType:\"string\",arrayOk:!0,dflt:null},suffix:{valType:\"string\",arrayOk:!0,dflt:null},height:{valType:\"number\",dflt:28},align:i({},n.align,{arrayOk:!0}),line:{width:{valType:\"number\",arrayOk:!0,dflt:1},color:{valType:\"color\",arrayOk:!0,dflt:\"grey\"}},fill:{color:{valType:\"color\",arrayOk:!0,dflt:\"white\"}},font:i({},o({arrayOk:!0}))},cells:{values:{valType:\"data_array\",dflt:[]},format:{valType:\"data_array\",dflt:[],description:l(\"cell value\")},prefix:{valType:\"string\",arrayOk:!0,dflt:null},suffix:{valType:\"string\",arrayOk:!0,dflt:null},height:{valType:\"number\",dflt:20},align:i({},n.align,{arrayOk:!0}),line:{width:{valType:\"number\",arrayOk:!0,dflt:1},color:{valType:\"color\",arrayOk:!0,dflt:\"grey\"}},fill:{color:{valType:\"color\",arrayOk:!0,dflt:\"white\"}},font:i({},o({arrayOk:!0}))}},\"calc\",\"from-root\")).transforms=void 0},82662:function(t,e,r){\"use strict\";var n=r(4173).eV,i=r(84576),a=\"table\";e.name=a,e.plot=function(t){var e=n(t.calcdata,a)[0];e.length&&i(t,e)},e.clean=function(t,e,r,n){var i=n._has&&n._has(a),o=e._has&&e._has(a);i&&!o&&n._paperdiv.selectAll(\".table\").remove()}},87522:function(t,e,r){\"use strict\";var n=r(71293).wrap;t.exports=function(){return n({})}},18426:function(t){\"use strict\";t.exports={cellPad:8,columnExtentOffset:10,columnTitleOffset:28,emptyHeaderHeight:16,latexCheck:/^\\$.*\\$$/,goldenRatio:1.618,lineBreaker:\"<br>\",maxDimensionCount:60,overdrag:45,releaseTransitionDuration:120,releaseTransitionEase:\"cubic-out\",scrollbarCaptureWidth:18,scrollbarHideDelay:1e3,scrollbarHideDuration:1e3,scrollbarOffset:5,scrollbarWidth:8,transitionDuration:100,transitionEase:\"cubic-out\",uplift:5,wrapSpacer:\" \",wrapSplitCharacter:\" \",cn:{table:\"table\",tableControlView:\"table-control-view\",scrollBackground:\"scroll-background\",yColumn:\"y-column\",columnBlock:\"column-block\",scrollAreaClip:\"scroll-area-clip\",scrollAreaClipRect:\"scroll-area-clip-rect\",columnBoundary:\"column-boundary\",columnBoundaryClippath:\"column-boundary-clippath\",columnBoundaryRect:\"column-boundary-rect\",columnCells:\"column-cells\",columnCell:\"column-cell\",cellRect:\"cell-rect\",cellText:\"cell-text\",cellTextHolder:\"cell-text-holder\",scrollbarKit:\"scrollbar-kit\",scrollbar:\"scrollbar\",scrollbarSlider:\"scrollbar-slider\",scrollbarGlyph:\"scrollbar-glyph\",scrollbarCaptureZone:\"scrollbar-capture-zone\"}}},21908:function(t,e,r){\"use strict\";var n=r(18426),i=r(93049).extendFlat,a=r(10721),o=r(87800).isTypedArray,s=r(87800).isArrayOrTypedArray;function l(t){if(s(t)){for(var e=0,r=0;r<t.length;r++)e=Math.max(e,l(t[r]));return e}return t}function c(t,e){return t+e}function u(t){var e,r=t.slice(),n=1/0,i=0;for(e=0;e<r.length;e++)o(r[e])?r[e]=Array.from(r[e]):s(r[e])||(r[e]=[r[e]]),n=Math.min(n,r[e].length),i=Math.max(i,r[e].length);if(n!==i)for(e=0;e<r.length;e++){var a=i-r[e].length;a&&(r[e]=r[e].concat(h(a)))}return r}function h(t){for(var e=new Array(t),r=0;r<t;r++)e[r]=\"\";return e}function f(t){return t.calcdata.columns.reduce((function(e,r){return r.xIndex<t.xIndex?e+r.columnWidth:e}),0)}function p(t,e){return Object.keys(t).map((function(r){return i({},t[r],{auxiliaryBlocks:e})}))}function d(t,e){for(var r,n={},i=0,a=0,o={firstRowIndex:null,lastRowIndex:null,rows:[]},s=0,l=0,c=0;c<t.length;c++)r=t[c],o.rows.push({rowIndex:c,rowHeight:r}),((a+=r)>=e||c===t.length-1)&&(n[i]=o,o.key=l++,o.firstRowIndex=s,o.lastRowIndex=c,o={firstRowIndex:null,lastRowIndex:null,rows:[]},i+=a,s=c+1,a=0);return n}t.exports=function(t,e){var r=u(e.cells.values),o=function(t){return t.slice(e.header.values.length,t.length)},m=u(e.header.values);m.length&&!m[0].length&&(m[0]=[\"\"],m=u(m));var g=m.concat(o(r).map((function(){return h((m[0]||[\"\"]).length)}))),y=e.domain,v=Math.floor(t._fullLayout._size.w*(y.x[1]-y.x[0])),x=Math.floor(t._fullLayout._size.h*(y.y[1]-y.y[0])),_=e.header.values.length?g[0].map((function(){return e.header.height})):[n.emptyHeaderHeight],b=r.length?r[0].map((function(){return e.cells.height})):[],w=_.reduce(c,0),T=d(b,x-w+n.uplift),k=p(d(_,w),[]),A=p(T,k),M={},S=e._fullInput.columnorder;s(S)&&(S=Array.from(S)),S=S.concat(o(r.map((function(t,e){return e}))));var E=g.map((function(t,r){var n=s(e.columnwidth)?e.columnwidth[Math.min(r,e.columnwidth.length-1)]:e.columnwidth;return a(n)?Number(n):1})),C=E.reduce(c,0);E=E.map((function(t){return t/C*v}));var L=Math.max(l(e.header.line.width),l(e.cells.line.width)),I={key:e.uid+t._context.staticPlot,translateX:y.x[0]*t._fullLayout._size.w,translateY:t._fullLayout._size.h*(1-y.y[1]),size:t._fullLayout._size,width:v,maxLineWidth:L,height:x,columnOrder:S,groupHeight:x,rowBlocks:A,headerRowBlocks:k,scrollY:0,cells:i({},e.cells,{values:r}),headerCells:i({},e.header,{values:g}),gdColumns:g.map((function(t){return t[0]})),gdColumnsOriginalOrder:g.map((function(t){return t[0]})),prevPages:[0,0],scrollbarState:{scrollbarScrollInProgress:!1},columns:g.map((function(t,e){var r=M[t];return M[t]=(r||0)+1,{key:t+\"__\"+M[t],label:t,specIndex:e,xIndex:S[e],xScale:f,x:void 0,calcdata:void 0,columnWidth:E[e]}}))};return I.columns.forEach((function(t){t.calcdata=I,t.x=f(t)})),I}},49618:function(t,e,r){\"use strict\";var n=r(93049).extendFlat;e.splitToPanels=function(t){var e=[0,0],r=n({},t,{key:\"header\",type:\"header\",page:0,prevPages:e,currentRepaint:[null,null],dragHandle:!0,values:t.calcdata.headerCells.values[t.specIndex],rowBlocks:t.calcdata.headerRowBlocks,calcdata:n({},t.calcdata,{cells:t.calcdata.headerCells})});return[n({},t,{key:\"cells1\",type:\"cells\",page:0,prevPages:e,currentRepaint:[null,null],dragHandle:!1,values:t.calcdata.cells.values[t.specIndex],rowBlocks:t.calcdata.rowBlocks}),n({},t,{key:\"cells2\",type:\"cells\",page:1,prevPages:e,currentRepaint:[null,null],dragHandle:!1,values:t.calcdata.cells.values[t.specIndex],rowBlocks:t.calcdata.rowBlocks}),r]},e.splitToCells=function(t){var e=function(t){var e=t.rowBlocks[t.page],r=e?e.rows[0].rowIndex:0;return[r,e?r+e.rows.length:0]}(t);return(t.values||[]).slice(e[0],e[1]).map((function(r,n){return{keyWithinBlock:n+(\"string\"==typeof r&&r.match(/[<$&> ]/)?\"_keybuster_\"+Math.random():\"\"),key:e[0]+n,column:t,calcdata:t.calcdata,page:t.page,rowBlocks:t.rowBlocks,value:r}}))}},23281:function(t,e,r){\"use strict\";var n=r(34809),i=r(92294),a=r(13792).N;t.exports=function(t,e,r,o){function s(r,a){return n.coerce(t,e,i,r,a)}a(e,o,s),s(\"columnwidth\"),s(\"header.values\"),s(\"header.format\"),s(\"header.align\"),s(\"header.prefix\"),s(\"header.suffix\"),s(\"header.height\"),s(\"header.line.width\"),s(\"header.line.color\"),s(\"header.fill.color\"),n.coerceFont(s,\"header.font\",o.font),function(t,e){for(var r=t.columnorder||[],n=t.header.values.length,i=r.slice(0,n),a=i.slice().sort((function(t,e){return t-e})),o=i.map((function(t){return a.indexOf(t)})),s=o.length;s<n;s++)o.push(s);e(\"columnorder\",o)}(e,s),s(\"cells.values\"),s(\"cells.format\"),s(\"cells.align\"),s(\"cells.prefix\"),s(\"cells.suffix\"),s(\"cells.height\"),s(\"cells.line.width\"),s(\"cells.line.color\"),s(\"cells.fill.color\"),n.coerceFont(s,\"cells.font\",o.font),e._length=null}},51671:function(t,e,r){\"use strict\";t.exports={attributes:r(92294),supplyDefaults:r(23281),calc:r(87522),plot:r(84576),moduleType:\"trace\",name:\"table\",basePlotModule:r(82662),categories:[\"noOpacity\"],meta:{}}},84576:function(t,e,r){\"use strict\";var n=r(18426),i=r(45568),a=r(34809),o=a.numberFormat,s=r(71293),l=r(62203),c=r(30635),u=r(34809).raiseToTop,h=r(34809).strTranslate,f=r(34809).cancelTransition,p=r(21908),d=r(49618),m=r(78766);function g(t){return Math.ceil(t.calcdata.maxLineWidth/2)}function y(t,e){return\"clip\"+t._fullLayout._uid+\"_scrollAreaBottomClip_\"+e.key}function v(t,e){return\"clip\"+t._fullLayout._uid+\"_columnBoundaryClippath_\"+e.calcdata.key+\"_\"+e.specIndex}function x(t){return[].concat.apply([],t.map((function(t){return t}))).map((function(t){return t.__data__}))}function _(t,e,r){var a=t.selectAll(\".\"+n.cn.scrollbarKit).data(s.repeat,s.keyFun);a.enter().append(\"g\").classed(n.cn.scrollbarKit,!0).style(\"shape-rendering\",\"geometricPrecision\"),a.each((function(t){var e=t.scrollbarState;e.totalHeight=function(t){var e=t.rowBlocks;return R(e,e.length-1)+(e.length?F(e[e.length-1],1/0):1)}(t),e.scrollableAreaHeight=t.groupHeight-E(t),e.currentlyVisibleHeight=Math.min(e.totalHeight,e.scrollableAreaHeight),e.ratio=e.currentlyVisibleHeight/e.totalHeight,e.barLength=Math.max(e.ratio*e.currentlyVisibleHeight,n.goldenRatio*n.scrollbarWidth),e.barWiggleRoom=e.currentlyVisibleHeight-e.barLength,e.wiggleRoom=Math.max(0,e.totalHeight-e.scrollableAreaHeight),e.topY=0===e.barWiggleRoom?0:t.scrollY/e.wiggleRoom*e.barWiggleRoom,e.bottomY=e.topY+e.barLength,e.dragMultiplier=e.wiggleRoom/e.barWiggleRoom})).attr(\"transform\",(function(t){var e=t.width+n.scrollbarWidth/2+n.scrollbarOffset;return h(e,E(t))}));var o=a.selectAll(\".\"+n.cn.scrollbar).data(s.repeat,s.keyFun);o.enter().append(\"g\").classed(n.cn.scrollbar,!0);var l=o.selectAll(\".\"+n.cn.scrollbarSlider).data(s.repeat,s.keyFun);l.enter().append(\"g\").classed(n.cn.scrollbarSlider,!0),l.attr(\"transform\",(function(t){return h(0,t.scrollbarState.topY||0)}));var c=l.selectAll(\".\"+n.cn.scrollbarGlyph).data(s.repeat,s.keyFun);c.enter().append(\"line\").classed(n.cn.scrollbarGlyph,!0).attr(\"stroke\",\"black\").attr(\"stroke-width\",n.scrollbarWidth).attr(\"stroke-linecap\",\"round\").attr(\"y1\",n.scrollbarWidth/2),c.attr(\"y2\",(function(t){return t.scrollbarState.barLength-n.scrollbarWidth/2})).attr(\"stroke-opacity\",(function(t){return t.columnDragInProgress||!t.scrollbarState.barWiggleRoom||r?0:.4})),c.transition().delay(0).duration(0),c.transition().delay(n.scrollbarHideDelay).duration(n.scrollbarHideDuration).attr(\"stroke-opacity\",0);var u=o.selectAll(\".\"+n.cn.scrollbarCaptureZone).data(s.repeat,s.keyFun);u.enter().append(\"line\").classed(n.cn.scrollbarCaptureZone,!0).attr(\"stroke\",\"white\").attr(\"stroke-opacity\",.01).attr(\"stroke-width\",n.scrollbarCaptureWidth).attr(\"stroke-linecap\",\"butt\").attr(\"y1\",0).on(\"mousedown\",(function(r){var n=i.event.y,a=this.getBoundingClientRect(),o=r.scrollbarState,s=n-a.top,l=i.scale.linear().domain([0,o.scrollableAreaHeight]).range([0,o.totalHeight]).clamp(!0);o.topY<=s&&s<=o.bottomY||L(e,t,null,l(s-o.barLength/2))(r)})).call(i.behavior.drag().origin((function(t){return i.event.stopPropagation(),t.scrollbarState.scrollbarScrollInProgress=!0,t})).on(\"drag\",L(e,t)).on(\"dragend\",(function(){}))),u.attr(\"y2\",(function(t){return t.scrollbarState.scrollableAreaHeight})),e._context.staticPlot&&(c.remove(),u.remove())}function b(t,e,r,a){var o=function(t){var e=t.selectAll(\".\"+n.cn.columnCells).data(s.repeat,s.keyFun);return e.enter().append(\"g\").classed(n.cn.columnCells,!0),e.exit().remove(),e}(r),c=function(t){var e=t.selectAll(\".\"+n.cn.columnCell).data(d.splitToCells,(function(t){return t.keyWithinBlock}));return e.enter().append(\"g\").classed(n.cn.columnCell,!0),e.exit().remove(),e}(o);!function(t){t.each((function(t,e){var r=t.calcdata.cells.font,n=t.column.specIndex,i={size:k(r.size,n,e),color:k(r.color,n,e),family:k(r.family,n,e),weight:k(r.weight,n,e),style:k(r.style,n,e),variant:k(r.variant,n,e),textcase:k(r.textcase,n,e),lineposition:k(r.lineposition,n,e),shadow:k(r.shadow,n,e)};t.rowNumber=t.key,t.align=k(t.calcdata.cells.align,n,e),t.cellBorderWidth=k(t.calcdata.cells.line.width,n,e),t.font=i}))}(c);var u=function(t){var e=t.selectAll(\".\"+n.cn.cellRect).data(s.repeat,(function(t){return t.keyWithinBlock}));return e.enter().append(\"rect\").classed(n.cn.cellRect,!0),e}(c);!function(t){t.attr(\"width\",(function(t){return t.column.columnWidth})).attr(\"stroke-width\",(function(t){return t.cellBorderWidth})).each((function(t){var e=i.select(this);m.stroke(e,k(t.calcdata.cells.line.color,t.column.specIndex,t.rowNumber)),m.fill(e,k(t.calcdata.cells.fill.color,t.column.specIndex,t.rowNumber))}))}(u);var h=function(t){var e=t.selectAll(\".\"+n.cn.cellTextHolder).data(s.repeat,(function(t){return t.keyWithinBlock}));return e.enter().append(\"g\").classed(n.cn.cellTextHolder,!0).style(\"shape-rendering\",\"geometricPrecision\"),e}(c),f=function(t){var e=t.selectAll(\".\"+n.cn.cellText).data(s.repeat,(function(t){return t.keyWithinBlock}));return e.enter().append(\"text\").classed(n.cn.cellText,!0).style(\"cursor\",(function(){return\"auto\"})).on(\"mousedown\",(function(){i.event.stopPropagation()})),e}(h);!function(t){t.each((function(t){l.font(i.select(this),t.font)}))}(f),w(f,e,a,t),D(c)}function w(t,e,r,a){t.text((function(t){var e=t.column.specIndex,r=t.rowNumber,i=t.value,a=\"string\"==typeof i,s=a&&i.match(/<br>/i),l=!a||s;t.mayHaveMarkup=a&&i.match(/[<&>]/);var c,u=\"string\"==typeof(c=i)&&c.match(n.latexCheck);t.latex=u;var h,f,p=u?\"\":k(t.calcdata.cells.prefix,e,r)||\"\",d=u?\"\":k(t.calcdata.cells.suffix,e,r)||\"\",m=u?null:k(t.calcdata.cells.format,e,r)||null,g=p+(m?o(m)(t.value):t.value)+d;if(t.wrappingNeeded=!t.wrapped&&!l&&!u&&(h=T(g)),t.cellHeightMayIncrease=s||u||t.mayHaveMarkup||(void 0===h?T(g):h),t.needsConvertToTspans=t.mayHaveMarkup||t.wrappingNeeded||t.latex,t.wrappingNeeded){var y=(\" \"===n.wrapSplitCharacter?g.replace(/<a href=/gi,\"<a_href=\"):g).split(n.wrapSplitCharacter),v=\" \"===n.wrapSplitCharacter?y.map((function(t){return t.replace(/<a_href=/gi,\"<a href=\")})):y;t.fragments=v.map((function(t){return{text:t,width:null}})),t.fragments.push({fragment:n.wrapSpacer,width:null}),f=v.join(n.lineBreaker)+n.lineBreaker+n.wrapSpacer}else delete t.fragments,f=g;return f})).attr(\"dy\",(function(t){return t.needsConvertToTspans?0:\"0.75em\"})).each((function(t){var o=this,s=i.select(o),l=t.wrappingNeeded?P:z;t.needsConvertToTspans?c.convertToTspans(s,a,l(r,o,e,a,t)):i.select(o.parentNode).attr(\"transform\",(function(t){return h(O(t),n.cellPad)})).attr(\"text-anchor\",(function(t){return{left:\"start\",center:\"middle\",right:\"end\"}[t.align]}))}))}function T(t){return-1!==t.indexOf(n.wrapSplitCharacter)}function k(t,e,r){if(a.isArrayOrTypedArray(t)){var n=t[Math.min(e,t.length-1)];return a.isArrayOrTypedArray(n)?n[Math.min(r,n.length-1)]:n}return t}function A(t,e,r){t.transition().ease(n.releaseTransitionEase).duration(n.releaseTransitionDuration).attr(\"transform\",h(e.x,r))}function M(t){return\"cells\"===t.type}function S(t){return\"header\"===t.type}function E(t){return(t.rowBlocks.length?t.rowBlocks[0].auxiliaryBlocks:[]).reduce((function(t,e){return t+F(e,1/0)}),0)}function C(t,e,r){var n=x(e)[0];if(void 0!==n){var i=n.rowBlocks,a=n.calcdata,o=R(i,i.length),s=n.calcdata.groupHeight-E(n),l=a.scrollY=Math.max(0,Math.min(o-s,a.scrollY)),c=function(t,e,r){for(var n=[],i=0,a=0;a<t.length;a++){for(var o=t[a],s=o.rows,l=0,c=0;c<s.length;c++)l+=s[c].rowHeight;o.allRowsHeight=l,e<i+l&&e+r>i&&n.push(a),i+=l}return n}(i,l,s);1===c.length&&(c[0]===i.length-1?c.unshift(c[0]-1):c.push(c[0]+1)),c[0]%2&&c.reverse(),e.each((function(t,e){t.page=c[e],t.scrollY=l})),e.attr(\"transform\",(function(t){var e=R(t.rowBlocks,t.page)-t.scrollY;return h(0,e)})),t&&(I(t,r,e,c,n.prevPages,n,0),I(t,r,e,c,n.prevPages,n,1),_(r,t))}}function L(t,e,r,a){return function(o){var s=o.calcdata?o.calcdata:o,l=e.filter((function(t){return s.key===t.key})),c=r||s.scrollbarState.dragMultiplier,u=s.scrollY;s.scrollY=void 0===a?s.scrollY+c*i.event.dy:a;var h=l.selectAll(\".\"+n.cn.yColumn).selectAll(\".\"+n.cn.columnBlock).filter(M);return C(t,h,l),s.scrollY===u}}function I(t,e,r,n,i,a,o){n[o]!==i[o]&&(clearTimeout(a.currentRepaint[o]),a.currentRepaint[o]=setTimeout((function(){var a=r.filter((function(t,e){return e===o&&n[e]!==i[e]}));b(t,e,a,r),i[o]=n[o]})))}function P(t,e,r,a){return function(){var o=i.select(e.parentNode);o.each((function(t){var e=t.fragments;o.selectAll(\"tspan.line\").each((function(t,r){e[r].width=this.getComputedTextLength()}));var r,i,a=e[e.length-1].width,s=e.slice(0,-1),l=[],c=0,u=t.column.columnWidth-2*n.cellPad;for(t.value=\"\";s.length;)c+(i=(r=s.shift()).width+a)>u&&(t.value+=l.join(n.wrapSpacer)+n.lineBreaker,l=[],c=0),l.push(r.text),c+=i;c&&(t.value+=l.join(n.wrapSpacer)),t.wrapped=!0})),o.selectAll(\"tspan.line\").remove(),w(o.select(\".\"+n.cn.cellText),r,t,a),i.select(e.parentNode.parentNode).call(D)}}function z(t,e,r,a,o){return function(){if(!o.settledY){var s=i.select(e.parentNode),l=N(o),c=o.key-l.firstRowIndex,u=l.rows[c].rowHeight,f=o.cellHeightMayIncrease?e.parentNode.getBoundingClientRect().height+2*n.cellPad:u,p=Math.max(f,u);p-l.rows[c].rowHeight&&(l.rows[c].rowHeight=p,t.selectAll(\".\"+n.cn.columnCell).call(D),C(null,t.filter(M),0),_(r,a,!0)),s.attr(\"transform\",(function(){var t=this,e=t.parentNode.getBoundingClientRect(),r=i.select(t.parentNode).select(\".\"+n.cn.cellRect).node().getBoundingClientRect(),a=t.transform.baseVal.consolidate(),s=r.top-e.top+(a?a.matrix.f:n.cellPad);return h(O(o,i.select(t.parentNode).select(\".\"+n.cn.cellTextHolder).node().getBoundingClientRect().width),s)})),o.settledY=!0}}}function O(t,e){switch(t.align){case\"left\":default:return n.cellPad;case\"right\":return t.column.columnWidth-(e||0)-n.cellPad;case\"center\":return(t.column.columnWidth-(e||0))/2}}function D(t){t.attr(\"transform\",(function(t){var e=t.rowBlocks[0].auxiliaryBlocks.reduce((function(t,e){return t+F(e,1/0)}),0),r=F(N(t),t.key);return h(0,r+e)})).selectAll(\".\"+n.cn.cellRect).attr(\"height\",(function(t){return(e=N(t),r=t.key,e.rows[r-e.firstRowIndex]).rowHeight;var e,r}))}function R(t,e){for(var r=0,n=e-1;n>=0;n--)r+=B(t[n]);return r}function F(t,e){for(var r=0,n=0;n<t.rows.length&&t.rows[n].rowIndex<e;n++)r+=t.rows[n].rowHeight;return r}function B(t){var e=t.allRowsHeight;if(void 0!==e)return e;for(var r=0,n=0;n<t.rows.length;n++)r+=t.rows[n].rowHeight;return t.allRowsHeight=r,r}function N(t){return t.rowBlocks[t.page]}t.exports=function(t,e){var r=!t._context.staticPlot,a=t._fullLayout._paper.selectAll(\".\"+n.cn.table).data(e.map((function(e){var r=s.unwrap(e).trace;return p(t,r)})),s.keyFun);a.exit().remove(),a.enter().append(\"g\").classed(n.cn.table,!0).attr(\"overflow\",\"visible\").style(\"box-sizing\",\"content-box\").style(\"position\",\"absolute\").style(\"left\",0).style(\"overflow\",\"visible\").style(\"shape-rendering\",\"crispEdges\").style(\"pointer-events\",\"all\"),a.attr(\"width\",(function(t){return t.width+t.size.l+t.size.r})).attr(\"height\",(function(t){return t.height+t.size.t+t.size.b})).attr(\"transform\",(function(t){return h(t.translateX,t.translateY)}));var o=a.selectAll(\".\"+n.cn.tableControlView).data(s.repeat,s.keyFun),c=o.enter().append(\"g\").classed(n.cn.tableControlView,!0).style(\"box-sizing\",\"content-box\");if(r){var m=\"onwheel\"in document?\"wheel\":\"mousewheel\";c.on(\"mousemove\",(function(e){o.filter((function(t){return e===t})).call(_,t)})).on(m,(function(e){if(!e.scrollbarState.wheeling){e.scrollbarState.wheeling=!0;var r=e.scrollY+i.event.deltaY;L(t,o,null,r)(e)||(i.event.stopPropagation(),i.event.preventDefault()),e.scrollbarState.wheeling=!1}})).call(_,t,!0)}o.attr(\"transform\",(function(t){return h(t.size.l,t.size.t)}));var w=o.selectAll(\".\"+n.cn.scrollBackground).data(s.repeat,s.keyFun);w.enter().append(\"rect\").classed(n.cn.scrollBackground,!0).attr(\"fill\",\"none\"),w.attr(\"width\",(function(t){return t.width})).attr(\"height\",(function(t){return t.height})),o.each((function(e){l.setClipUrl(i.select(this),y(t,e),t)}));var T=o.selectAll(\".\"+n.cn.yColumn).data((function(t){return t.columns}),s.keyFun);T.enter().append(\"g\").classed(n.cn.yColumn,!0),T.exit().remove(),T.attr(\"transform\",(function(t){return h(t.x,0)})),r&&T.call(i.behavior.drag().origin((function(e){return A(i.select(this),e,-n.uplift),u(this),e.calcdata.columnDragInProgress=!0,_(o.filter((function(t){return e.calcdata.key===t.key})),t),e})).on(\"drag\",(function(t){var e=i.select(this),r=function(e){return(t===e?i.event.x:e.x)+e.columnWidth/2};t.x=Math.max(-n.overdrag,Math.min(t.calcdata.width+n.overdrag-t.columnWidth,i.event.x)),x(T).filter((function(e){return e.calcdata.key===t.calcdata.key})).sort((function(t,e){return r(t)-r(e)})).forEach((function(e,r){e.xIndex=r,e.x=t===e?e.x:e.xScale(e)})),T.filter((function(e){return t!==e})).transition().ease(n.transitionEase).duration(n.transitionDuration).attr(\"transform\",(function(t){return h(t.x,0)})),e.call(f).attr(\"transform\",h(t.x,-n.uplift))})).on(\"dragend\",(function(e){var r=i.select(this),n=e.calcdata;e.x=e.xScale(e),e.calcdata.columnDragInProgress=!1,A(r,e,0),function(t,e,r){var n=e.gdColumnsOriginalOrder;e.gdColumns.sort((function(t,e){return r[n.indexOf(t)]-r[n.indexOf(e)]})),e.columnorder=r,t.emit(\"plotly_restyle\")}(t,n,n.columns.map((function(t){return t.xIndex})))}))),T.each((function(e){l.setClipUrl(i.select(this),v(t,e),t)}));var k=T.selectAll(\".\"+n.cn.columnBlock).data(d.splitToPanels,s.keyFun);k.enter().append(\"g\").classed(n.cn.columnBlock,!0).attr(\"id\",(function(t){return t.key})),k.style(\"cursor\",(function(t){return t.dragHandle?\"ew-resize\":t.calcdata.scrollbarState.barWiggleRoom?\"ns-resize\":\"default\"}));var E=k.filter(S),I=k.filter(M);r&&I.call(i.behavior.drag().origin((function(t){return i.event.stopPropagation(),t})).on(\"drag\",L(t,o,-1)).on(\"dragend\",(function(){}))),b(t,o,E,k),b(t,o,I,k);var P=o.selectAll(\".\"+n.cn.scrollAreaClip).data(s.repeat,s.keyFun);P.enter().append(\"clipPath\").classed(n.cn.scrollAreaClip,!0).attr(\"id\",(function(e){return y(t,e)}));var z=P.selectAll(\".\"+n.cn.scrollAreaClipRect).data(s.repeat,s.keyFun);z.enter().append(\"rect\").classed(n.cn.scrollAreaClipRect,!0).attr(\"x\",-n.overdrag).attr(\"y\",-n.uplift).attr(\"fill\",\"none\"),z.attr(\"width\",(function(t){return t.width+2*n.overdrag})).attr(\"height\",(function(t){return t.height+n.uplift})),T.selectAll(\".\"+n.cn.columnBoundary).data(s.repeat,s.keyFun).enter().append(\"g\").classed(n.cn.columnBoundary,!0);var O=T.selectAll(\".\"+n.cn.columnBoundaryClippath).data(s.repeat,s.keyFun);O.enter().append(\"clipPath\").classed(n.cn.columnBoundaryClippath,!0),O.attr(\"id\",(function(e){return v(t,e)}));var D=O.selectAll(\".\"+n.cn.columnBoundaryRect).data(s.repeat,s.keyFun);D.enter().append(\"rect\").classed(n.cn.columnBoundaryRect,!0).attr(\"fill\",\"none\"),D.attr(\"width\",(function(t){return t.columnWidth+2*g(t)})).attr(\"height\",(function(t){return t.calcdata.height+2*g(t)+n.uplift})).attr(\"x\",(function(t){return-g(t)})).attr(\"y\",(function(t){return-g(t)})),C(null,I,o)}},71856:function(t,e,r){\"use strict\";var n=r(3208).rb,i=r(3208).ay,a=r(87163),o=r(13792).u,s=r(55412),l=r(56708),c=r(43236),u=r(93049).extendFlat,h=r(94850).k;t.exports={labels:l.labels,parents:l.parents,values:l.values,branchvalues:l.branchvalues,count:l.count,level:l.level,maxdepth:l.maxdepth,tiling:{packing:{valType:\"enumerated\",values:[\"squarify\",\"binary\",\"dice\",\"slice\",\"slice-dice\",\"dice-slice\"],dflt:\"squarify\",editType:\"plot\"},squarifyratio:{valType:\"number\",min:1,dflt:1,editType:\"plot\"},flip:{valType:\"flaglist\",flags:[\"x\",\"y\"],dflt:\"\",editType:\"plot\"},pad:{valType:\"number\",min:0,dflt:3,editType:\"plot\"},editType:\"calc\"},marker:u({pad:{t:{valType:\"number\",min:0,editType:\"plot\"},l:{valType:\"number\",min:0,editType:\"plot\"},r:{valType:\"number\",min:0,editType:\"plot\"},b:{valType:\"number\",min:0,editType:\"plot\"},editType:\"calc\"},colors:l.marker.colors,pattern:h,depthfade:{valType:\"enumerated\",values:[!0,!1,\"reversed\"],editType:\"style\"},line:l.marker.line,cornerradius:{valType:\"number\",min:0,dflt:0,editType:\"plot\"},editType:\"calc\"},a(\"marker\",{colorAttr:\"colors\",anim:!1})),pathbar:{visible:{valType:\"boolean\",dflt:!0,editType:\"plot\"},side:{valType:\"enumerated\",values:[\"top\",\"bottom\"],dflt:\"top\",editType:\"plot\"},edgeshape:{valType:\"enumerated\",values:[\">\",\"<\",\"|\",\"/\",\"\\\\\"],dflt:\">\",editType:\"plot\"},thickness:{valType:\"number\",min:12,editType:\"plot\"},textfont:u({},s.textfont,{}),editType:\"calc\"},text:s.text,textinfo:l.textinfo,texttemplate:i({editType:\"plot\"},{keys:c.eventDataKeys.concat([\"label\",\"value\"])}),hovertext:s.hovertext,hoverinfo:l.hoverinfo,hovertemplate:n({},{keys:c.eventDataKeys}),textfont:s.textfont,insidetextfont:s.insidetextfont,outsidetextfont:u({},s.outsidetextfont,{}),textposition:{valType:\"enumerated\",values:[\"top left\",\"top center\",\"top right\",\"middle left\",\"middle center\",\"middle right\",\"bottom left\",\"bottom center\",\"bottom right\"],dflt:\"top left\",editType:\"plot\"},sort:s.sort,root:l.root,domain:o({name:\"treemap\",trace:!0,editType:\"calc\"})}},69784:function(t,e,r){\"use strict\";var n=r(44122);e.name=\"treemap\",e.plot=function(t,r,i,a){n.plotBasePlot(e.name,t,r,i,a)},e.clean=function(t,r,i,a){n.cleanBasePlot(e.name,t,r,i,a)}},38848:function(t,e,r){\"use strict\";var n=r(14852);e._=function(t,e){return n.calc(t,e)},e.t=function(t){return n._runCrossTraceCalc(\"treemap\",t)}},43236:function(t){\"use strict\";t.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:\"poly\",eventDataKeys:[\"currentPath\",\"root\",\"entry\",\"percentRoot\",\"percentEntry\",\"percentParent\"],gapWithPathbar:1}},95719:function(t,e,r){\"use strict\";var n=r(34809),i=r(71856),a=r(78766),o=r(13792).N,s=r(17550).handleText,l=r(56155).TEXTPAD,c=r(46979).handleMarkerDefaults,u=r(88856),h=u.hasColorscale,f=u.handleDefaults;t.exports=function(t,e,r,u){function p(r,a){return n.coerce(t,e,i,r,a)}var d=p(\"labels\"),m=p(\"parents\");if(d&&d.length&&m&&m.length){var g=p(\"values\");g&&g.length?p(\"branchvalues\"):p(\"count\"),p(\"level\"),p(\"maxdepth\"),\"squarify\"===p(\"tiling.packing\")&&p(\"tiling.squarifyratio\"),p(\"tiling.flip\"),p(\"tiling.pad\");var y=p(\"text\");p(\"texttemplate\"),e.texttemplate||p(\"textinfo\",n.isArrayOrTypedArray(y)?\"text+label\":\"label\"),p(\"hovertext\"),p(\"hovertemplate\");var v=p(\"pathbar.visible\");s(t,e,u,p,\"auto\",{hasPathbar:v,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),p(\"textposition\");var x=-1!==e.textposition.indexOf(\"bottom\");c(t,e,u,p),(e._hasColorscale=h(t,\"marker\",\"colors\")||(t.marker||{}).coloraxis)?f(t,e,u,p,{prefix:\"marker.\",cLetter:\"c\"}):p(\"marker.depthfade\",!(e.marker.colors||[]).length);var _=2*e.textfont.size;p(\"marker.pad.t\",x?_/4:_),p(\"marker.pad.l\",_/4),p(\"marker.pad.r\",_/4),p(\"marker.pad.b\",x?_:_/4),p(\"marker.cornerradius\"),e._hovered={marker:{line:{width:2,color:a.contrast(u.paper_bgcolor)}}},v&&(p(\"pathbar.thickness\",e.pathbar.textfont.size+2*l),p(\"pathbar.side\"),p(\"pathbar.edgeshape\")),p(\"sort\"),p(\"root.color\"),o(e,u,p),e._length=null}else e.visible=!1}},41567:function(t,e,r){\"use strict\";var n=r(45568),i=r(33108),a=r(84102).clearMinTextSize,o=r(6851).resizeText,s=r(95709);t.exports=function(t,e,r,l,c){var u,h,f=c.type,p=c.drawDescendants,d=t._fullLayout,m=d[\"_\"+f+\"layer\"],g=!r;a(f,d),(u=m.selectAll(\"g.trace.\"+f).data(e,(function(t){return t[0].trace.uid}))).enter().append(\"g\").classed(\"trace\",!0).classed(f,!0),u.order(),!d.uniformtext.mode&&i.hasTransition(r)?(l&&(h=l()),n.transition().duration(r.duration).ease(r.easing).each(\"end\",(function(){h&&h()})).each(\"interrupt\",(function(){h&&h()})).each((function(){m.selectAll(\"g.trace\").each((function(e){s(t,e,this,r,p)}))}))):(u.each((function(e){s(t,e,this,r,p)})),d.uniformtext.mode&&o(t,m.selectAll(\".trace\"),f)),g&&u.exit().remove()}},17010:function(t,e,r){\"use strict\";var n=r(45568),i=r(34809),a=r(62203),o=r(30635),s=r(11995),l=r(92080).styleOne,c=r(43236),u=r(33108),h=r(44691),f=!0;t.exports=function(t,e,r,p,d){var m=d.barDifY,g=d.width,y=d.height,v=d.viewX,x=d.viewY,_=d.pathSlice,b=d.toMoveInsideSlice,w=d.strTransform,T=d.hasTransition,k=d.handleSlicesExit,A=d.makeUpdateSliceInterpolator,M=d.makeUpdateTextInterpolator,S={},E=t._context.staticPlot,C=t._fullLayout,L=e[0],I=L.trace,P=L.hierarchy,z=g/I._entryDepth,O=u.listPath(r.data,\"id\"),D=s(P.copy(),[g,y],{packing:\"dice\",pad:{inner:0,top:0,left:0,right:0,bottom:0}}).descendants();(D=D.filter((function(t){var e=O.indexOf(t.data.id);return-1!==e&&(t.x0=z*e,t.x1=z*(e+1),t.y0=m,t.y1=m+y,t.onPathbar=!0,!0)}))).reverse(),(p=p.data(D,u.getPtId)).enter().append(\"g\").classed(\"pathbar\",!0),k(p,f,S,[g,y],_),p.order();var R=p;T&&(R=R.transition().each(\"end\",(function(){var e=n.select(this);u.setSliceCursor(e,t,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:!1})}))),R.each((function(s){s._x0=v(s.x0),s._x1=v(s.x1),s._y0=x(s.y0),s._y1=x(s.y1),s._hoverX=v(s.x1-Math.min(g,y)/2),s._hoverY=x(s.y1-y/2);var p=n.select(this),d=i.ensureSingle(p,\"path\",\"surface\",(function(t){t.style(\"pointer-events\",E?\"none\":\"all\")}));T?d.transition().attrTween(\"d\",(function(t){var e=A(t,f,S,[g,y]);return function(t){return _(e(t))}})):d.attr(\"d\",_),p.call(h,r,t,e,{styleOne:l,eventDataKeys:c.eventDataKeys,transitionTime:c.CLICK_TRANSITION_TIME,transitionEasing:c.CLICK_TRANSITION_EASING}).call(u.setSliceCursor,t,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:t._transitioning}),d.call(l,s,I,t,{hovered:!1}),s._text=(u.getPtLabel(s)||\"\").split(\"<br>\").join(\" \")||\"\";var m=i.ensureSingle(p,\"g\",\"slicetext\"),k=i.ensureSingle(m,\"text\",\"\",(function(t){t.attr(\"data-notex\",1)})),L=i.ensureUniformFontSize(t,u.determineTextFont(I,s,C.font,{onPathbar:!0}));k.text(s._text||\" \").classed(\"slicetext\",!0).attr(\"text-anchor\",\"start\").call(a.font,L).call(o.convertToTspans,t),s.textBB=a.bBox(k.node()),s.transform=b(s,{fontSize:L.size,onPathbar:!0}),s.transform.fontSize=L.size,T?k.transition().attrTween(\"transform\",(function(t){var e=M(t,f,S,[g,y]);return function(t){return w(e(t))}})):k.attr(\"transform\",w(s))}))}},50916:function(t,e,r){\"use strict\";var n=r(45568),i=r(34809),a=r(62203),o=r(30635),s=r(11995),l=r(92080).styleOne,c=r(43236),u=r(33108),h=r(44691),f=r(19718).formatSliceLabel,p=!1;t.exports=function(t,e,r,d,m){var g=m.width,y=m.height,v=m.viewX,x=m.viewY,_=m.pathSlice,b=m.toMoveInsideSlice,w=m.strTransform,T=m.hasTransition,k=m.handleSlicesExit,A=m.makeUpdateSliceInterpolator,M=m.makeUpdateTextInterpolator,S=m.prevEntry,E=t._context.staticPlot,C=t._fullLayout,L=e[0].trace,I=-1!==L.textposition.indexOf(\"left\"),P=-1!==L.textposition.indexOf(\"right\"),z=-1!==L.textposition.indexOf(\"bottom\"),O=!z&&!L.marker.pad.t||z&&!L.marker.pad.b,D=s(r,[g,y],{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(),R=1/0,F=-1/0;D.forEach((function(t){var e=t.depth;e>=L._maxDepth?(t.x0=t.x1=(t.x0+t.x1)/2,t.y0=t.y1=(t.y0+t.y1)/2):(R=Math.min(R,e),F=Math.max(F,e))})),d=d.data(D,u.getPtId),L._maxVisibleLayers=isFinite(F)?F-R+1:0,d.enter().append(\"g\").classed(\"slice\",!0),k(d,p,{},[g,y],_),d.order();var B=null;if(T&&S){var N=u.getPtId(S);d.each((function(t){null===B&&u.getPtId(t)===N&&(B={x0:t.x0,x1:t.x1,y0:t.y0,y1:t.y1})}))}var j=function(){return B||{x0:0,x1:g,y0:0,y1:y}},U=d;return T&&(U=U.transition().each(\"end\",(function(){var e=n.select(this);u.setSliceCursor(e,t,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})}))),U.each((function(s){var d=u.isHeader(s,L);s._x0=v(s.x0),s._x1=v(s.x1),s._y0=x(s.y0),s._y1=x(s.y1),s._hoverX=v(s.x1-L.marker.pad.r),s._hoverY=x(z?s.y1-L.marker.pad.b/2:s.y0+L.marker.pad.t/2);var m=n.select(this),k=i.ensureSingle(m,\"path\",\"surface\",(function(t){t.style(\"pointer-events\",E?\"none\":\"all\")}));T?k.transition().attrTween(\"d\",(function(t){var e=A(t,p,j(),[g,y]);return function(t){return _(e(t))}})):k.attr(\"d\",_),m.call(h,r,t,e,{styleOne:l,eventDataKeys:c.eventDataKeys,transitionTime:c.CLICK_TRANSITION_TIME,transitionEasing:c.CLICK_TRANSITION_EASING}).call(u.setSliceCursor,t,{isTransitioning:t._transitioning}),k.call(l,s,L,t,{hovered:!1}),s.x0===s.x1||s.y0===s.y1?s._text=\"\":s._text=d?O?\"\":u.getPtLabel(s)||\"\":f(s,r,L,e,C)||\"\";var S=i.ensureSingle(m,\"g\",\"slicetext\"),D=i.ensureSingle(S,\"text\",\"\",(function(t){t.attr(\"data-notex\",1)})),R=i.ensureUniformFontSize(t,u.determineTextFont(L,s,C.font)),F=s._text||\" \",B=d&&-1===F.indexOf(\"<br>\");D.text(F).classed(\"slicetext\",!0).attr(\"text-anchor\",P?\"end\":I||B?\"start\":\"middle\").call(a.font,R).call(o.convertToTspans,t),s.textBB=a.bBox(D.node()),s.transform=b(s,{fontSize:R.size,isHeader:d}),s.transform.fontSize=R.size,T?D.transition().attrTween(\"transform\",(function(t){var e=M(t,p,j(),[g,y]);return function(t){return w(e(t))}})):D.attr(\"transform\",w(s))})),B}},36141:function(t){\"use strict\";t.exports=function t(e,r,n){var i;n.swapXY&&(i=e.x0,e.x0=e.y0,e.y0=i,i=e.x1,e.x1=e.y1,e.y1=i),n.flipX&&(i=e.x0,e.x0=r[0]-e.x1,e.x1=r[0]-i),n.flipY&&(i=e.y0,e.y0=r[1]-e.y1,e.y1=r[1]-i);var a=e.children;if(a)for(var o=0;o<a.length;o++)t(a[o],r,n)}},47181:function(t,e,r){\"use strict\";t.exports={moduleType:\"trace\",name:\"treemap\",basePlotModule:r(69784),categories:[],animatable:!0,attributes:r(71856),layoutAttributes:r(4219),supplyDefaults:r(95719),supplyLayoutDefaults:r(49852),calc:r(38848)._,crossTraceCalc:r(38848).t,plot:r(64274),style:r(92080).style,colorbar:r(21146),meta:{}}},4219:function(t){\"use strict\";t.exports={treemapcolorway:{valType:\"colorlist\",editType:\"calc\"},extendtreemapcolors:{valType:\"boolean\",dflt:!0,editType:\"calc\"}}},49852:function(t,e,r){\"use strict\";var n=r(34809),i=r(4219);t.exports=function(t,e){function r(r,a){return n.coerce(t,e,i,r,a)}r(\"treemapcolorway\",e.colorway),r(\"extendtreemapcolors\")}},11995:function(t,e,r){\"use strict\";var n=r(92264),i=r(36141);t.exports=function(t,e,r){var a,o=r.flipX,s=r.flipY,l=\"dice-slice\"===r.packing,c=r.pad[s?\"bottom\":\"top\"],u=r.pad[o?\"right\":\"left\"],h=r.pad[o?\"left\":\"right\"],f=r.pad[s?\"top\":\"bottom\"];l&&(a=u,u=c,c=a,a=h,h=f,f=a);var p=n.treemap().tile(function(t,e){switch(t){case\"squarify\":return n.treemapSquarify.ratio(e);case\"binary\":return n.treemapBinary;case\"dice\":return n.treemapDice;case\"slice\":return n.treemapSlice;default:return n.treemapSliceDice}}(r.packing,r.squarifyratio)).paddingInner(r.pad.inner).paddingLeft(u).paddingRight(h).paddingTop(c).paddingBottom(f).size(l?[e[1],e[0]]:e)(t);return(l||o||s)&&i(p,e,{swapXY:l,flipX:o,flipY:s}),p}},64274:function(t,e,r){\"use strict\";var n=r(41567),i=r(50916);t.exports=function(t,e,r,a){return n(t,e,r,a,{type:\"treemap\",drawDescendants:i})}},95709:function(t,e,r){\"use strict\";var n=r(45568),i=r(88640).GW,a=r(33108),o=r(34809),s=r(56155).TEXTPAD,l=r(32995).toMoveInsideBar,c=r(84102).recordMinTextSize,u=r(43236),h=r(17010);function f(t){return a.isHierarchyRoot(t)?\"\":a.getPtId(t)}t.exports=function(t,e,r,p,d){var m=t._fullLayout,g=e[0],y=g.trace,v=\"icicle\"===y.type,x=g.hierarchy,_=a.findEntryWithLevel(x,y.level),b=n.select(r),w=b.selectAll(\"g.pathbar\"),T=b.selectAll(\"g.slice\");if(!_)return w.remove(),void T.remove();var k=a.isHierarchyRoot(_),A=!m.uniformtext.mode&&a.hasTransition(p),M=a.getMaxDepth(y),S=m._size,E=y.domain,C=S.w*(E.x[1]-E.x[0]),L=S.h*(E.y[1]-E.y[0]),I=C,P=y.pathbar.thickness,z=y.marker.line.width+u.gapWithPathbar,O=y.pathbar.visible?y.pathbar.side.indexOf(\"bottom\")>-1?L+z:-(P+z):0,D={x0:I,x1:I,y0:O,y1:O+P},R=function(t,e,r){var n=y.tiling.pad,i=function(t){return t-n<=e.x0},a=function(t){return t+n>=e.x1},o=function(t){return t-n<=e.y0},s=function(t){return t+n>=e.y1};return t.x0===e.x0&&t.x1===e.x1&&t.y0===e.y0&&t.y1===e.y1?{x0:t.x0,x1:t.x1,y0:t.y0,y1:t.y1}:{x0:i(t.x0-n)?0:a(t.x0-n)?r[0]:t.x0,x1:i(t.x1+n)?0:a(t.x1+n)?r[0]:t.x1,y0:o(t.y0-n)?0:s(t.y0-n)?r[1]:t.y0,y1:o(t.y1+n)?0:s(t.y1+n)?r[1]:t.y1}},F=null,B={},N={},j=null,U=function(t,e){return e?B[f(t)]:N[f(t)]};g.hasMultipleRoots&&k&&M++,y._maxDepth=M,y._backgroundColor=m.paper_bgcolor,y._entryDepth=_.data.depth,y._atRootLevel=k;var V=-C/2+S.l+S.w*(E.x[1]+E.x[0])/2,q=-L/2+S.t+S.h*(1-(E.y[1]+E.y[0])/2),H=function(t){return V+t},G=function(t){return q+t},Z=G(0),W=H(0),Y=function(t){return W+t},X=function(t){return Z+t};function $(t,e){return t+\",\"+e}var J=Y(0),K=function(t){t.x=Math.max(J,t.x)},Q=y.pathbar.edgeshape,tt=y[v?\"tiling\":\"marker\"].pad,et=function(t){return-1!==y.textposition.indexOf(t)},rt=et(\"top\"),nt=et(\"left\"),it=et(\"right\"),at=et(\"bottom\"),ot=function(t,e){var r=t.x0,n=t.x1,i=t.y0,a=t.y1,o=t.textBB,u=rt||e.isHeader&&!at?\"start\":at?\"end\":\"middle\",h=et(\"right\"),f=et(\"left\")||e.onPathbar?-1:h?1:0;if(e.isHeader){if((r+=(v?tt:tt.l)-s)>=(n-=(v?tt:tt.r)-s)){var p=(r+n)/2;r=p,n=p}var d;at?i<(d=a-(v?tt:tt.b))&&d<a&&(i=d):i<(d=i+(v?tt:tt.t))&&d<a&&(a=d)}var g=l(r,n,i,a,o,{isHorizontal:!1,constrained:!0,angle:0,anchor:u,leftToRight:f});return g.fontSize=e.fontSize,g.targetX=H(g.targetX),g.targetY=G(g.targetY),isNaN(g.targetX)||isNaN(g.targetY)?{}:(r!==n&&i!==a&&c(y.type,g,m),{scale:g.scale,rotate:g.rotate,textX:g.textX,textY:g.textY,anchorX:g.anchorX,anchorY:g.anchorY,targetX:g.targetX,targetY:g.targetY})},st=function(t,e){for(var r,n=0,i=t;!r&&n<M;)n++,(i=i.parent)?r=U(i,e):n=M;return r||{}},lt=function(t,e,r,n,a){var s,l=U(t,e);if(l)s=l;else if(e)s=D;else if(F)if(t.parent){var c=j||r;c&&!e?s=R(t,c,n):(s={},o.extendFlat(s,st(t,e)))}else s=o.extendFlat({},t),v&&(\"h\"===a.orientation?a.flipX?s.x0=t.x1:s.x1=0:a.flipY?s.y0=t.y1:s.y1=0);else s={};return i(s,{x0:t.x0,x1:t.x1,y0:t.y0,y1:t.y1})},ct=function(t,e,r,n){var s=U(t,e),l={},u=function(t,e,r,n){if(e)return B[f(x)]||D;var i=N[y.level]||r;return function(t){return t.data.depth-_.data.depth<M}(t)?R(t,i,n):{}}(t,e,r,n);o.extendFlat(l,{transform:ot({x0:u.x0,x1:u.x1,y0:u.y0,y1:u.y1,textBB:t.textBB,_text:t._text},{isHeader:a.isHeader(t,y)})}),s?l=s:t.parent&&o.extendFlat(l,st(t,e));var h=t.transform;return t.x0!==t.x1&&t.y0!==t.y1&&c(y.type,h,m),i(l,{transform:{scale:h.scale,rotate:h.rotate,textX:h.textX,textY:h.textY,anchorX:h.anchorX,anchorY:h.anchorY,targetX:h.targetX,targetY:h.targetY}})},ut=function(t,e,r,a,o){var s=a[0],l=a[1];A?t.exit().transition().each((function(){var t=n.select(this);t.select(\"path.surface\").transition().attrTween(\"d\",(function(t){var r=function(t,e,r,n){var a,o=U(t,e);if(e)a=D;else{var s=U(_,e);a=s?R(t,s,n):{}}return i(o,a)}(t,e,0,[s,l]);return function(t){return o(r(t))}})),t.select(\"g.slicetext\").attr(\"opacity\",0)})).remove():t.exit().remove()},ht=function(t){var e=t.transform;return t.x0!==t.x1&&t.y0!==t.y1&&c(y.type,e,m),o.getTextTransform({textX:e.textX,textY:e.textY,anchorX:e.anchorX,anchorY:e.anchorY,targetX:e.targetX,targetY:e.targetY,scale:e.scale,rotate:e.rotate})};A&&(w.each((function(t){B[f(t)]={x0:t.x0,x1:t.x1,y0:t.y0,y1:t.y1},t.transform&&(B[f(t)].transform={textX:t.transform.textX,textY:t.transform.textY,anchorX:t.transform.anchorX,anchorY:t.transform.anchorY,targetX:t.transform.targetX,targetY:t.transform.targetY,scale:t.transform.scale,rotate:t.transform.rotate})})),T.each((function(t){N[f(t)]={x0:t.x0,x1:t.x1,y0:t.y0,y1:t.y1},t.transform&&(N[f(t)].transform={textX:t.transform.textX,textY:t.transform.textY,anchorX:t.transform.anchorX,anchorY:t.transform.anchorY,targetX:t.transform.targetX,targetY:t.transform.targetY,scale:t.transform.scale,rotate:t.transform.rotate}),!F&&a.isEntry(t)&&(F=t)}))),j=d(t,e,_,T,{width:C,height:L,viewX:H,viewY:G,pathSlice:function(t){var e=H(t.x0),r=H(t.x1),n=G(t.y0),i=G(t.y1),a=r-e,o=i-n;if(!a||!o)return\"\";var s=y.marker.cornerradius||0,l=Math.min(s,a/2,o/2);l&&t.data&&t.data.data&&t.data.data.label&&(rt&&(l=Math.min(l,tt.t)),nt&&(l=Math.min(l,tt.l)),it&&(l=Math.min(l,tt.r)),at&&(l=Math.min(l,tt.b)));var c=function(t,e){return l?\"a\"+$(l,l)+\" 0 0 1 \"+$(t,e):\"\"};return\"M\"+$(e,n+l)+c(l,-l)+\"L\"+$(r-l,n)+c(l,l)+\"L\"+$(r,i-l)+c(-l,l)+\"L\"+$(e+l,i)+c(-l,-l)+\"Z\"},toMoveInsideSlice:ot,prevEntry:F,makeUpdateSliceInterpolator:lt,makeUpdateTextInterpolator:ct,handleSlicesExit:ut,hasTransition:A,strTransform:ht}),y.pathbar.visible?h(t,e,_,w,{barDifY:O,width:I,height:P,viewX:Y,viewY:X,pathSlice:function(t){var e=Y(Math.max(Math.min(t.x0,t.x0),0)),r=Y(Math.min(Math.max(t.x1,t.x1),I)),n=X(t.y0),i=X(t.y1),a=P/2,o={},s={};o.x=e,s.x=r,o.y=s.y=(n+i)/2;var l={x:e,y:n},c={x:r,y:n},u={x:r,y:i},h={x:e,y:i};return\">\"===Q?(l.x-=a,c.x-=a,u.x-=a,h.x-=a):\"/\"===Q?(u.x-=a,h.x-=a,o.x-=a/2,s.x-=a/2):\"\\\\\"===Q?(l.x-=a,c.x-=a,o.x-=a/2,s.x-=a/2):\"<\"===Q&&(o.x-=a,s.x-=a),K(l),K(h),K(o),K(c),K(u),K(s),\"M\"+$(l.x,l.y)+\"L\"+$(c.x,c.y)+\"L\"+$(s.x,s.y)+\"L\"+$(u.x,u.y)+\"L\"+$(h.x,h.y)+\"L\"+$(o.x,o.y)+\"Z\"},toMoveInsideSlice:ot,makeUpdateSliceInterpolator:lt,makeUpdateTextInterpolator:ct,handleSlicesExit:ut,hasTransition:A,strTransform:ht}):w.remove()}},92080:function(t,e,r){\"use strict\";var n=r(45568),i=r(78766),a=r(34809),o=r(33108),s=r(84102).resizeText,l=r(72043);function c(t,e,r,n,s){var c,u,h=(s||{}).hovered,f=e.data.data,p=f.i,d=f.color,m=o.isHierarchyRoot(e),g=1;if(h)c=r._hovered.marker.line.color,u=r._hovered.marker.line.width;else if(m&&d===r.root.color)g=100,c=\"rgba(0,0,0,0)\",u=0;else if(c=a.castOption(r,p,\"marker.line.color\")||i.defaultLine,u=a.castOption(r,p,\"marker.line.width\")||0,!r._hasColorscale&&!e.onPathbar){var y=r.marker.depthfade;if(y){var v,x=i.combine(i.addOpacity(r._backgroundColor,.75),d);if(!0===y){var _=o.getMaxDepth(r);v=isFinite(_)?o.isLeaf(e)?0:r._maxVisibleLayers-(e.data.depth-r._entryDepth):e.data.height+1}else v=e.data.depth-r._entryDepth,r._atRootLevel||v++;if(v>0)for(var b=0;b<v;b++){var w=.5*b/v;d=i.combine(i.addOpacity(x,w),d)}}}t.call(l,e,r,n,d).style(\"stroke-width\",u).call(i.stroke,c).style(\"opacity\",g)}t.exports={style:function(t){var e=t._fullLayout._treemaplayer.selectAll(\".trace\");s(t,e,\"treemap\"),e.each((function(e){var r=n.select(this),i=e[0].trace;r.style(\"opacity\",i.opacity),r.selectAll(\"path.surface\").each((function(e){n.select(this).call(c,e,i,t,{hovered:!1})}))}))},styleOne:c}},14711:function(t,e,r){\"use strict\";var n=r(64625),i=r(93049).extendFlat,a=r(80712).axisHoverFormat;t.exports={y:n.y,x:n.x,x0:n.x0,y0:n.y0,xhoverformat:a(\"x\"),yhoverformat:a(\"y\"),name:i({},n.name,{}),orientation:i({},n.orientation,{}),bandwidth:{valType:\"number\",min:0,editType:\"calc\"},scalegroup:{valType:\"string\",dflt:\"\",editType:\"calc\"},scalemode:{valType:\"enumerated\",values:[\"width\",\"count\"],dflt:\"width\",editType:\"calc\"},spanmode:{valType:\"enumerated\",values:[\"soft\",\"hard\",\"manual\"],dflt:\"soft\",editType:\"calc\"},span:{valType:\"info_array\",items:[{valType:\"any\",editType:\"calc\"},{valType:\"any\",editType:\"calc\"}],editType:\"calc\"},line:{color:{valType:\"color\",editType:\"style\"},width:{valType:\"number\",min:0,dflt:2,editType:\"style\"},editType:\"plot\"},fillcolor:n.fillcolor,points:i({},n.boxpoints,{}),jitter:i({},n.jitter,{}),pointpos:i({},n.pointpos,{}),width:i({},n.width,{}),marker:n.marker,text:n.text,hovertext:n.hovertext,hovertemplate:n.hovertemplate,quartilemethod:n.quartilemethod,box:{visible:{valType:\"boolean\",dflt:!1,editType:\"plot\"},width:{valType:\"number\",min:0,max:1,dflt:.25,editType:\"plot\"},fillcolor:{valType:\"color\",editType:\"style\"},line:{color:{valType:\"color\",editType:\"style\"},width:{valType:\"number\",min:0,editType:\"style\"},editType:\"style\"},editType:\"plot\"},meanline:{visible:{valType:\"boolean\",dflt:!1,editType:\"plot\"},color:{valType:\"color\",editType:\"style\"},width:{valType:\"number\",min:0,editType:\"style\"},editType:\"plot\"},side:{valType:\"enumerated\",values:[\"both\",\"positive\",\"negative\"],dflt:\"both\",editType:\"calc\"},offsetgroup:n.offsetgroup,alignmentgroup:n.alignmentgroup,selected:n.selected,unselected:n.unselected,hoveron:{valType:\"flaglist\",flags:[\"violins\",\"points\",\"kde\"],dflt:\"violins+points+kde\",extras:[\"all\"],editType:\"style\"},zorder:n.zorder}},88759:function(t,e,r){\"use strict\";var n=r(34809),i=r(29714),a=r(89429),o=r(37881),s=r(63821).BADNUM;function l(t,e,r){var i=e.max-e.min;if(!i)return t.bandwidth?t.bandwidth:0;if(t.bandwidth)return Math.max(t.bandwidth,i/1e4);var a=r.length,o=n.stdev(r,a-1,e.mean);return Math.max(function(t,e,r){return 1.059*Math.min(e,r/1.349)*Math.pow(t,-.2)}(a,o,e.q3-e.q1),i/100)}function c(t,e,r,n){var a,o=t.spanmode,l=t.span||[],c=[e.min,e.max],u=[e.min-2*n,e.max+2*n];function h(n){var i=l[n],a=\"multicategory\"===r.type?r.r2c(i):r.d2c(i,0,t[e.valLetter+\"calendar\"]);return a===s?u[n]:a}var f={type:\"linear\",range:a=\"soft\"===o?u:\"hard\"===o?c:[h(0),h(1)]};return i.setConvert(f),f.cleanRange(),a}t.exports=function(t,e){var r=a(t,e);if(r[0].t.empty)return r;for(var s=t._fullLayout,u=i.getFromId(t,e[\"h\"===e.orientation?\"xaxis\":\"yaxis\"]),h=1/0,f=-1/0,p=0,d=0,m=0;m<r.length;m++){var g=r[m],y=g.pts.map(o.extractVal),v=g.bandwidth=l(e,g,y),x=g.span=c(e,g,u,v);if(g.min===g.max&&0===v)x=g.span=[g.min,g.max],g.density=[{v:1,t:x[0]}],g.bandwidth=v,p=Math.max(p,1);else{var _=x[1]-x[0],b=Math.ceil(_/(v/3)),w=_/b;if(!isFinite(w)||!isFinite(b))return n.error(\"Something went wrong with computing the violin span\"),r[0].t.empty=!0,r;var T=o.makeKDE(g,e,y);g.density=new Array(b);for(var k=0,A=x[0];A<x[1]+w/2;k++,A+=w){var M=T(A);g.density[k]={v:M,t:A},p=Math.max(p,M)}}d=Math.max(d,y.length),h=Math.min(h,x[0]),f=Math.max(f,x[1])}var S=i.findExtremes(u,[h,f],{padded:!0});if(e._extremes[u._id]=S,e.width)r[0].t.maxKDE=p;else{var E=s._violinScaleGroupStats,C=e.scalegroup,L=E[C];L?(L.maxKDE=Math.max(L.maxKDE,p),L.maxCount=Math.max(L.maxCount,d)):E[C]={maxKDE:p,maxCount:d}}return r[0].t.labels.kde=n._(t,\"kde:\"),r}},67316:function(t,e,r){\"use strict\";var n=r(81606).setPositionOffset,i=[\"v\",\"h\"];t.exports=function(t,e){for(var r=t.calcdata,a=e.xaxis,o=e.yaxis,s=0;s<i.length;s++){for(var l=i[s],c=\"h\"===l?o:a,u=[],h=0;h<r.length;h++){var f=r[h],p=f[0].t,d=f[0].trace;!0!==d.visible||\"violin\"!==d.type||p.empty||d.orientation!==l||d.xaxis!==a._id||d.yaxis!==o._id||u.push(h)}n(\"violin\",t,u,c)}}},10864:function(t,e,r){\"use strict\";var n=r(34809),i=r(78766),a=r(62294),o=r(14711);t.exports=function(t,e,r,s){function l(r,i){return n.coerce(t,e,o,r,i)}function c(r,i){return n.coerce2(t,e,o,r,i)}if(a.handleSampleDefaults(t,e,l,s),!1!==e.visible){l(\"bandwidth\"),l(\"side\"),l(\"width\")||(l(\"scalegroup\",e.name),l(\"scalemode\"));var u,h=l(\"span\");Array.isArray(h)&&(u=\"manual\"),l(\"spanmode\",u);var f=l(\"line.color\",(t.marker||{}).color||r),p=l(\"line.width\"),d=l(\"fillcolor\",i.addOpacity(e.line.color,.5));a.handlePointsDefaults(t,e,l,{prefix:\"\"});var m=c(\"box.width\"),g=c(\"box.fillcolor\",d),y=c(\"box.line.color\",f),v=c(\"box.line.width\",p);l(\"box.visible\",Boolean(m||g||y||v))||(e.box={visible:!1});var x=c(\"meanline.color\",f),_=c(\"meanline.width\",p);l(\"meanline.visible\",Boolean(x||_))||(e.meanline={visible:!1}),l(\"quartilemethod\"),l(\"zorder\")}}},37881:function(t,e,r){\"use strict\";var n=r(34809),i=function(t){return 1/Math.sqrt(2*Math.PI)*Math.exp(-.5*t*t)};e.makeKDE=function(t,e,r){var n=r.length,a=i,o=t.bandwidth,s=1/(n*o);return function(t){for(var e=0,i=0;i<n;i++)e+=a((t-r[i])/o);return s*e}},e.getPositionOnKdePath=function(t,e,r){var i,a;\"h\"===e.orientation?(i=\"y\",a=\"x\"):(i=\"x\",a=\"y\");var o=n.findPointOnPath(t.path,r,a,{pathLength:t.pathLength}),s=t.posCenterPx,l=o[i];return[l,\"both\"===e.side?2*s-l:s]},e.getKdeValue=function(t,r,n){var i=t.pts.map(e.extractVal);return e.makeKDE(t,r,i)(n)/t.posDensityScale},e.extractVal=function(t){return t.v}},16842:function(t,e,r){\"use strict\";var n=r(78766),i=r(34809),a=r(29714),o=r(11448),s=r(37881);t.exports=function(t,e,r,l,c){c||(c={});var u,h,f=c.hoverLayer,p=t.cd,d=p[0].trace,m=d.hoveron,g=-1!==m.indexOf(\"violins\"),y=-1!==m.indexOf(\"kde\"),v=[];if(g||y){var x=o.hoverOnBoxes(t,e,r,l);if(y&&x.length>0){var _,b,w,T,k,A=t.xa,M=t.ya;\"h\"===d.orientation?(k=e,_=\"y\",w=M,b=\"x\",T=A):(k=r,_=\"x\",w=A,b=\"y\",T=M);var S=p[t.index];if(k>=S.span[0]&&k<=S.span[1]){var E=i.extendFlat({},t),C=T.c2p(k,!0),L=s.getKdeValue(S,d,k),I=s.getPositionOnKdePath(S,d,C),P=w._offset,z=w._length;E[_+\"0\"]=I[0],E[_+\"1\"]=I[1],E[b+\"0\"]=E[b+\"1\"]=C,E[b+\"Label\"]=b+\": \"+a.hoverLabelText(T,k,d[b+\"hoverformat\"])+\", \"+p[0].t.labels.kde+\" \"+L.toFixed(3);for(var O=0,D=0;D<x.length;D++)if(\"med\"===x[D].attr){O=D;break}E.spikeDistance=x[O].spikeDistance;var R=_+\"Spike\";E[R]=x[O][R],x[O].spikeDistance=void 0,x[O][R]=void 0,E.hovertemplate=!1,v.push(E),(h={})[_+\"1\"]=i.constrain(P+I[0],P,P+z),h[_+\"2\"]=i.constrain(P+I[1],P,P+z),h[b+\"1\"]=h[b+\"2\"]=T._offset+C}}g&&(v=v.concat(x))}-1!==m.indexOf(\"points\")&&(u=o.hoverOnPoints(t,e,r));var F=f.selectAll(\".violinline-\"+d.uid).data(h?[0]:[]);return F.enter().append(\"line\").classed(\"violinline-\"+d.uid,!0).attr(\"stroke-width\",1.5),F.exit().remove(),F.attr(h).call(n.stroke,t.color),\"closest\"===l?u?[u]:v:u?(v.push(u),v):v}},37276:function(t,e,r){\"use strict\";t.exports={attributes:r(14711),layoutAttributes:r(84734),supplyDefaults:r(10864),crossTraceDefaults:r(62294).crossTraceDefaults,supplyLayoutDefaults:r(55145),calc:r(88759),crossTraceCalc:r(67316),plot:r(36769),style:r(25117),styleOnSelect:r(9408).styleOnSelect,hoverPoints:r(16842),selectPoints:r(72488),moduleType:\"trace\",name:\"violin\",basePlotModule:r(37703),categories:[\"cartesian\",\"svg\",\"symbols\",\"oriented\",\"box-violin\",\"showLegend\",\"violinLayout\",\"zoomScale\"],meta:{}}},84734:function(t,e,r){\"use strict\";var n=r(64636),i=r(34809).extendFlat;t.exports={violinmode:i({},n.boxmode,{}),violingap:i({},n.boxgap,{}),violingroupgap:i({},n.boxgroupgap,{})}},55145:function(t,e,r){\"use strict\";var n=r(34809),i=r(84734),a=r(65067);t.exports=function(t,e,r){a._supply(t,e,r,(function(r,a){return n.coerce(t,e,i,r,a)}),\"violin\")}},36769:function(t,e,r){\"use strict\";var n=r(45568),i=r(34809),a=r(62203),o=r(95419),s=r(5525),l=r(37881);t.exports=function(t,e,r,c){var u=t._context.staticPlot,h=t._fullLayout,f=e.xaxis,p=e.yaxis;function d(t,e){var r=s(t,{xaxis:f,yaxis:p,trace:e,connectGaps:!0,baseTolerance:.75,shape:\"spline\",simplify:!0,linearized:!0});return a.smoothopen(r[0],1)}i.makeTraceGroups(c,r,\"trace violins\").each((function(t){var r=n.select(this),a=t[0],s=a.t,c=a.trace;if(!0!==c.visible||s.empty)r.remove();else{var m=s.bPos,g=s.bdPos,y=e[s.valLetter+\"axis\"],v=e[s.posLetter+\"axis\"],x=\"both\"===c.side,_=x||\"positive\"===c.side,b=x||\"negative\"===c.side,w=r.selectAll(\"path.violin\").data(i.identity);w.enter().append(\"path\").style(\"vector-effect\",u?\"none\":\"non-scaling-stroke\").attr(\"class\",\"violin\"),w.exit().remove(),w.each((function(t){var e,r,i,a,o,l,u,f,p=n.select(this),w=t.density,T=w.length,k=v.c2l(t.pos+m,!0),A=v.l2p(k);if(c.width)e=s.maxKDE/g;else{var M=h._violinScaleGroupStats[c.scalegroup];e=\"count\"===c.scalemode?M.maxKDE/g*(M.maxCount/t.pts.length):M.maxKDE/g}if(_){for(u=new Array(T),o=0;o<T;o++)(f=u[o]={})[s.posLetter]=k+w[o].v/e,f[s.valLetter]=y.c2l(w[o].t,!0);r=d(u,c)}if(b){for(u=new Array(T),l=0,o=T-1;l<T;l++,o--)(f=u[l]={})[s.posLetter]=k-w[o].v/e,f[s.valLetter]=y.c2l(w[o].t,!0);i=d(u,c)}if(x)a=r+\"L\"+i.substr(1)+\"Z\";else{var S=[A,y.c2p(w[0].t)],E=[A,y.c2p(w[T-1].t)];\"h\"===c.orientation&&(S.reverse(),E.reverse()),a=_?\"M\"+S+\"L\"+r.substr(1)+\"L\"+E:\"M\"+E+\"L\"+i.substr(1)+\"L\"+S}p.attr(\"d\",a),t.posCenterPx=A,t.posDensityScale=e*g,t.path=p.node(),t.pathLength=t.path.getTotalLength()/(x?2:1)}));var T,k,A,M=c.box,S=M.width,E=(M.line||{}).width;x?(T=g*S,k=0):_?(T=[0,g*S/2],k=E*{x:1,y:-1}[s.posLetter]):(T=[g*S/2,0],k=E*{x:-1,y:1}[s.posLetter]),o.plotBoxAndWhiskers(r,{pos:v,val:y},c,{bPos:m,bdPos:T,bPosPxOffset:k}),o.plotBoxMean(r,{pos:v,val:y},c,{bPos:m,bdPos:T,bPosPxOffset:k}),!c.box.visible&&c.meanline.visible&&(A=i.identity);var C=r.selectAll(\"path.meanline\").data(A||[]);C.enter().append(\"path\").attr(\"class\",\"meanline\").style(\"fill\",\"none\").style(\"vector-effect\",u?\"none\":\"non-scaling-stroke\"),C.exit().remove(),C.each((function(t){var e=y.c2p(t.mean,!0),r=l.getPositionOnKdePath(t,c,e);n.select(this).attr(\"d\",\"h\"===c.orientation?\"M\"+e+\",\"+r[0]+\"V\"+r[1]:\"M\"+r[0]+\",\"+e+\"H\"+r[1])})),o.plotPoints(r,{x:f,y:p},c,s)}}))}},25117:function(t,e,r){\"use strict\";var n=r(45568),i=r(78766),a=r(9408).stylePoints;t.exports=function(t){var e=n.select(t).selectAll(\"g.trace.violins\");e.style(\"opacity\",(function(t){return t[0].trace.opacity})),e.each((function(e){var r=e[0].trace,o=n.select(this),s=r.box||{},l=s.line||{},c=r.meanline||{},u=c.width;o.selectAll(\"path.violin\").style(\"stroke-width\",r.line.width+\"px\").call(i.stroke,r.line.color).call(i.fill,r.fillcolor),o.selectAll(\"path.box\").style(\"stroke-width\",l.width+\"px\").call(i.stroke,l.color).call(i.fill,s.fillcolor);var h={\"stroke-width\":u+\"px\",\"stroke-dasharray\":2*u+\"px,\"+u+\"px\"};o.selectAll(\"path.mean\").style(h).call(i.stroke,c.color),o.selectAll(\"path.meanline\").style(h).call(i.stroke,c.color),a(o,r,t)}))}},51526:function(t,e,r){\"use strict\";var n=r(87163),i=r(70252),a=r(16131),o=r(9829),s=r(93049).extendFlat,l=r(13582).overrideAll,c=t.exports=l(s({x:i.x,y:i.y,z:i.z,value:i.value,isomin:i.isomin,isomax:i.isomax,surface:i.surface,spaceframe:{show:{valType:\"boolean\",dflt:!1},fill:{valType:\"number\",min:0,max:1,dflt:1}},slices:i.slices,caps:i.caps,text:i.text,hovertext:i.hovertext,xhoverformat:i.xhoverformat,yhoverformat:i.yhoverformat,zhoverformat:i.zhoverformat,valuehoverformat:i.valuehoverformat,hovertemplate:i.hovertemplate},n(\"\",{colorAttr:\"`value`\",showScaleDflt:!0,editTypeOverride:\"calc\"}),{colorbar:i.colorbar,opacity:i.opacity,opacityscale:a.opacityscale,lightposition:i.lightposition,lighting:i.lighting,flatshading:i.flatshading,contour:i.contour,hoverinfo:s({},o.hoverinfo),showlegend:s({},o.showlegend,{dflt:!1})}),\"calc\",\"nested\");c.x.editType=c.y.editType=c.z.editType=c.value.editType=\"calc+clearAxisTypes\",c.transforms=void 0},96496:function(t,e,r){\"use strict\";var n=r(99098).gl_mesh3d,i=r(46998).parseColorScale,a=r(34809).isArrayOrTypedArray,o=r(55010),s=r(88856).extractOpts,l=r(88239),c=r(91370).findNearestOnAxis,u=r(91370).generateIsoMeshes;function h(t,e,r){this.scene=t,this.uid=r,this.mesh=e,this.name=\"\",this.data=null,this.showContour=!1}var f=h.prototype;f.handlePick=function(t){if(t.object===this.mesh){var e=t.data.index,r=this.data._meshX[e],n=this.data._meshY[e],i=this.data._meshZ[e],o=this.data._Ys.length,s=this.data._Zs.length,l=c(r,this.data._Xs).id,u=c(n,this.data._Ys).id,h=c(i,this.data._Zs).id,f=t.index=h+s*u+s*o*l;t.traceCoordinate=[this.data._meshX[f],this.data._meshY[f],this.data._meshZ[f],this.data._value[f]];var p=this.data.hovertext||this.data.text;return a(p)&&void 0!==p[f]?t.textLabel=p[f]:p&&(t.textLabel=p),!0}},f.update=function(t){var e=this.scene,r=e.fullSceneLayout;function n(t,e,r,n){return e.map((function(e){return t.d2l(e,0,n)*r}))}this.data=u(t);var a={positions:l(n(r.xaxis,t._meshX,e.dataScale[0],t.xcalendar),n(r.yaxis,t._meshY,e.dataScale[1],t.ycalendar),n(r.zaxis,t._meshZ,e.dataScale[2],t.zcalendar)),cells:l(t._meshI,t._meshJ,t._meshK),lightPosition:[t.lightposition.x,t.lightposition.y,t.lightposition.z],ambient:t.lighting.ambient,diffuse:t.lighting.diffuse,specular:t.lighting.specular,roughness:t.lighting.roughness,fresnel:t.lighting.fresnel,vertexNormalsEpsilon:t.lighting.vertexnormalsepsilon,faceNormalsEpsilon:t.lighting.facenormalsepsilon,opacity:t.opacity,opacityscale:t.opacityscale,contourEnable:t.contour.show,contourColor:o(t.contour.color).slice(0,3),contourWidth:t.contour.width,useFacetNormals:t.flatshading},c=s(t);a.vertexIntensity=t._meshIntensity,a.vertexIntensityBounds=[c.min,c.max],a.colormap=i(t),this.mesh.update(a)},f.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()},t.exports=function(t,e){var r=t.glplot.gl,i=n({gl:r}),a=new h(t,i,e.uid);return i._trace=a,a.update(e),t.glplot.add(i),a}},22385:function(t,e,r){\"use strict\";var n=r(34809),i=r(51526),a=r(44731).supplyIsoDefaults,o=r(65444).opacityscaleDefaults;t.exports=function(t,e,r,s){function l(r,a){return n.coerce(t,e,i,r,a)}a(t,e,r,s,l),o(t,e,s,l)}},75703:function(t,e,r){\"use strict\";t.exports={attributes:r(51526),supplyDefaults:r(22385),calc:r(58988),colorbar:{min:\"cmin\",max:\"cmax\"},plot:r(96496),moduleType:\"trace\",name:\"volume\",basePlotModule:r(2487),categories:[\"gl3d\",\"showLegend\"],meta:{}}},37832:function(t,e,r){\"use strict\";var n=r(81481),i=r(36640).line,a=r(9829),o=r(80712).axisHoverFormat,s=r(3208).rb,l=r(3208).ay,c=r(82508),u=r(93049).extendFlat,h=r(78766);function f(t){return{marker:{color:u({},n.marker.color,{arrayOk:!1,editType:\"style\"}),line:{color:u({},n.marker.line.color,{arrayOk:!1,editType:\"style\"}),width:u({},n.marker.line.width,{arrayOk:!1,editType:\"style\"}),editType:\"style\"},editType:\"style\"},editType:\"style\"}}t.exports={measure:{valType:\"data_array\",dflt:[],editType:\"calc\"},base:{valType:\"number\",dflt:null,arrayOk:!1,editType:\"calc\"},x:n.x,x0:n.x0,dx:n.dx,y:n.y,y0:n.y0,dy:n.dy,xperiod:n.xperiod,yperiod:n.yperiod,xperiod0:n.xperiod0,yperiod0:n.yperiod0,xperiodalignment:n.xperiodalignment,yperiodalignment:n.yperiodalignment,xhoverformat:o(\"x\"),yhoverformat:o(\"y\"),hovertext:n.hovertext,hovertemplate:s({},{keys:c.eventDataKeys}),hoverinfo:u({},a.hoverinfo,{flags:[\"name\",\"x\",\"y\",\"text\",\"initial\",\"delta\",\"final\"]}),textinfo:{valType:\"flaglist\",flags:[\"label\",\"text\",\"initial\",\"delta\",\"final\"],extras:[\"none\"],editType:\"plot\",arrayOk:!1},texttemplate:l({editType:\"plot\"},{keys:c.eventDataKeys.concat([\"label\"])}),text:n.text,textposition:n.textposition,insidetextanchor:n.insidetextanchor,textangle:n.textangle,textfont:n.textfont,insidetextfont:n.insidetextfont,outsidetextfont:n.outsidetextfont,constraintext:n.constraintext,cliponaxis:n.cliponaxis,orientation:n.orientation,offset:n.offset,width:n.width,increasing:f(),decreasing:f(),totals:f(),connector:{line:{color:u({},i.color,{dflt:h.defaultLine}),width:u({},i.width,{editType:\"plot\"}),dash:i.dash,editType:\"plot\"},mode:{valType:\"enumerated\",values:[\"spanning\",\"between\"],dflt:\"between\",editType:\"plot\"},visible:{valType:\"boolean\",dflt:!0,editType:\"plot\"},editType:\"plot\"},offsetgroup:n.offsetgroup,alignmentgroup:n.alignmentgroup,zorder:n.zorder}},15e3:function(t,e,r){\"use strict\";var n=r(29714),i=r(40528),a=r(34809).mergeArray,o=r(48861),s=r(63821).BADNUM;function l(t){return\"a\"===t||\"absolute\"===t}function c(t){return\"t\"===t||\"total\"===t}t.exports=function(t,e){var r,u,h,f,p,d,m=n.getFromId(t,e.xaxis||\"x\"),g=n.getFromId(t,e.yaxis||\"y\");\"h\"===e.orientation?(r=m.makeCalcdata(e,\"x\"),h=g.makeCalcdata(e,\"y\"),f=i(e,g,\"y\",h),p=!!e.yperiodalignment,d=\"y\"):(r=g.makeCalcdata(e,\"y\"),h=m.makeCalcdata(e,\"x\"),f=i(e,m,\"x\",h),p=!!e.xperiodalignment,d=\"x\"),u=f.vals;for(var y,v=Math.min(u.length,r.length),x=new Array(v),_=0,b=!1,w=0;w<v;w++){var T=r[w]||0,k=!1;(r[w]!==s||c(e.measure[w])||l(e.measure[w]))&&w+1<v&&(r[w+1]!==s||c(e.measure[w+1])||l(e.measure[w+1]))&&(k=!0);var A=x[w]={i:w,p:u[w],s:T,rawS:T,cNext:k};l(e.measure[w])?(_=A.s,A.isSum=!0,A.dir=\"totals\",A.s=_):c(e.measure[w])?(A.isSum=!0,A.dir=\"totals\",A.s=_):(A.isSum=!1,A.dir=A.rawS<0?\"decreasing\":\"increasing\",y=A.s,A.s=_+y,_+=y),\"totals\"===A.dir&&(b=!0),p&&(x[w].orig_p=h[w],x[w][d+\"End\"]=f.ends[w],x[w][d+\"Start\"]=f.starts[w]),e.ids&&(A.id=String(e.ids[w])),A.v=(e.base||0)+_}return x.length&&(x[0].hasTotals=b),a(e.text,x,\"tx\"),a(e.hovertext,x,\"htx\"),o(x,e),x}},82508:function(t){\"use strict\";t.exports={eventDataKeys:[\"initial\",\"delta\",\"final\"]}},9963:function(t,e,r){\"use strict\";var n=r(24782).setGroupPositions;t.exports=function(t,e){var r,i,a=t._fullLayout,o=t._fullData,s=t.calcdata,l=e.xaxis,c=e.yaxis,u=[],h=[],f=[];for(i=0;i<o.length;i++){var p=o[i];!0===p.visible&&p.xaxis===l._id&&p.yaxis===c._id&&\"waterfall\"===p.type&&(r=s[i],\"h\"===p.orientation?f.push(r):h.push(r),u.push(r))}var d={mode:a.waterfallmode,norm:a.waterfallnorm,gap:a.waterfallgap,groupgap:a.waterfallgroupgap};for(n(t,l,c,h,d),n(t,c,l,f,d),i=0;i<u.length;i++){r=u[i];for(var m=0;m<r.length;m++){var g=r[m];!1===g.isSum&&(g.s0+=0===m?0:r[m-1].s),m+1<r.length&&(r[m].nextP0=r[m+1].p0,r[m].nextS0=r[m+1].s0)}}}},67199:function(t,e,r){\"use strict\";var n=r(34809),i=r(36301),a=r(17550).handleText,o=r(99867),s=r(99669),l=r(37832),c=r(78766),u=r(20909),h=u.INCREASING.COLOR,f=u.DECREASING.COLOR;function p(t,e,r){t(e+\".marker.color\",r),t(e+\".marker.line.color\",c.defaultLine),t(e+\".marker.line.width\")}t.exports={supplyDefaults:function(t,e,r,i){function c(r,i){return n.coerce(t,e,l,r,i)}if(o(t,e,i,c)){s(t,e,i,c),c(\"xhoverformat\"),c(\"yhoverformat\"),c(\"measure\"),c(\"orientation\",e.x&&!e.y?\"h\":\"v\"),c(\"base\"),c(\"offset\"),c(\"width\"),c(\"text\"),c(\"hovertext\"),c(\"hovertemplate\");var u=c(\"textposition\");a(t,e,i,c,u,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),\"none\"!==e.textposition&&(c(\"texttemplate\"),e.texttemplate||c(\"textinfo\")),p(c,\"increasing\",h),p(c,\"decreasing\",f),p(c,\"totals\",\"#4499FF\"),c(\"connector.visible\")&&(c(\"connector.mode\"),c(\"connector.line.width\")&&(c(\"connector.line.color\"),c(\"connector.line.dash\"))),c(\"zorder\")}else e.visible=!1},crossTraceDefaults:function(t,e){var r,a;function o(t){return n.coerce(a._input,a,l,t)}if(\"group\"===e.waterfallmode)for(var s=0;s<t.length;s++)r=(a=t[s])._input,i(r,a,e,o)}}},64932:function(t){\"use strict\";t.exports=function(t,e){return t.x=\"xVal\"in e?e.xVal:e.x,t.y=\"yVal\"in e?e.yVal:e.y,\"initial\"in e&&(t.initial=e.initial),\"delta\"in e&&(t.delta=e.delta),\"final\"in e&&(t.final=e.final),e.xa&&(t.xaxis=e.xa),e.ya&&(t.yaxis=e.ya),t}},40943:function(t,e,r){\"use strict\";var n=r(29714).hoverLabelText,i=r(78766).opacity,a=r(91664).hoverOnBars,o=r(20909),s=o.INCREASING.SYMBOL,l=o.DECREASING.SYMBOL;t.exports=function(t,e,r,o,c){var u=a(t,e,r,o,c);if(u){var h=u.cd,f=h[0].trace,p=\"h\"===f.orientation,d=p?\"x\":\"y\",m=p?t.xa:t.ya,g=h[u.index],y=g.isSum?g.b+g.s:g.rawS;u.initial=g.b+g.s-y,u.delta=y,u.final=u.initial+u.delta;var v=k(Math.abs(u.delta));u.deltaLabel=y<0?\"(\"+v+\")\":v,u.finalLabel=k(u.final),u.initialLabel=k(u.initial);var x=g.hi||f.hoverinfo,_=[];if(x&&\"none\"!==x&&\"skip\"!==x){var b=\"all\"===x,w=x.split(\"+\"),T=function(t){return b||-1!==w.indexOf(t)};g.isSum||(!T(\"final\")||T(p?\"x\":\"y\")||_.push(u.finalLabel),T(\"delta\")&&(y<0?_.push(u.deltaLabel+\" \"+l):_.push(u.deltaLabel+\" \"+s)),T(\"initial\")&&_.push(\"Initial: \"+u.initialLabel))}return _.length&&(u.extraText=_.join(\"<br>\")),u.color=function(t,e){var r=t[e.dir].marker,n=r.color,a=r.line.color,o=r.line.width;return i(n)?n:i(a)&&o?a:void 0}(f,g),[u]}function k(t){return n(m,t,f[d+\"hoverformat\"])}}},38261:function(t,e,r){\"use strict\";t.exports={attributes:r(37832),layoutAttributes:r(579),supplyDefaults:r(67199).supplyDefaults,crossTraceDefaults:r(67199).crossTraceDefaults,supplyLayoutDefaults:r(71492),calc:r(15e3),crossTraceCalc:r(9963),plot:r(71130),style:r(57256).style,hoverPoints:r(40943),eventData:r(64932),selectPoints:r(88384),moduleType:\"trace\",name:\"waterfall\",basePlotModule:r(37703),categories:[\"bar-like\",\"cartesian\",\"svg\",\"oriented\",\"showLegend\",\"zoomScale\"],meta:{}}},579:function(t){\"use strict\";t.exports={waterfallmode:{valType:\"enumerated\",values:[\"group\",\"overlay\"],dflt:\"group\",editType:\"calc\"},waterfallgap:{valType:\"number\",min:0,max:1,editType:\"calc\"},waterfallgroupgap:{valType:\"number\",min:0,max:1,dflt:0,editType:\"calc\"}}},71492:function(t,e,r){\"use strict\";var n=r(34809),i=r(579);t.exports=function(t,e,r){var a=!1;function o(r,a){return n.coerce(t,e,i,r,a)}for(var s=0;s<r.length;s++){var l=r[s];if(l.visible&&\"waterfall\"===l.type){a=!0;break}}a&&(o(\"waterfallmode\"),o(\"waterfallgap\",.2),o(\"waterfallgroupgap\"))}},71130:function(t,e,r){\"use strict\";var n=r(45568),i=r(34809),a=r(62203),o=r(63821).BADNUM,s=r(32995),l=r(84102).clearMinTextSize;t.exports=function(t,e,r,c){var u=t._fullLayout;l(\"waterfall\",u),s.plot(t,e,r,c,{mode:u.waterfallmode,norm:u.waterfallmode,gap:u.waterfallgap,groupgap:u.waterfallgroupgap}),function(t,e,r,s){var l=e.xaxis,c=e.yaxis;i.makeTraceGroups(s,r,\"trace bars\").each((function(r){var s=n.select(this),u=r[0].trace,h=i.ensureSingle(s,\"g\",\"lines\");if(u.connector&&u.connector.visible){var f=\"h\"===u.orientation,p=u.connector.mode,d=h.selectAll(\"g.line\").data(i.identity);d.enter().append(\"g\").classed(\"line\",!0),d.exit().remove();var m=d.size();d.each((function(r,s){if(s===m-1||r.cNext){var u=function(t,e,r,n){var i=[],a=[],o=n?e:r,s=n?r:e;return i[0]=o.c2p(t.s0,!0),a[0]=s.c2p(t.p0,!0),i[1]=o.c2p(t.s1,!0),a[1]=s.c2p(t.p1,!0),i[2]=o.c2p(t.nextS0,!0),a[2]=s.c2p(t.nextP0,!0),n?[i,a]:[a,i]}(r,l,c,f),h=u[0],d=u[1],g=\"\";h[0]!==o&&d[0]!==o&&h[1]!==o&&d[1]!==o&&(\"spanning\"===p&&!r.isSum&&s>0&&(g+=f?\"M\"+h[0]+\",\"+d[1]+\"V\"+d[0]:\"M\"+h[1]+\",\"+d[0]+\"H\"+h[0]),\"between\"!==p&&(r.isSum||s<m-1)&&(g+=f?\"M\"+h[1]+\",\"+d[0]+\"V\"+d[1]:\"M\"+h[0]+\",\"+d[1]+\"H\"+h[1]),h[2]!==o&&d[2]!==o&&(g+=f?\"M\"+h[1]+\",\"+d[1]+\"V\"+d[2]:\"M\"+h[1]+\",\"+d[1]+\"H\"+h[2])),\"\"===g&&(g=\"M0,0Z\"),i.ensureSingle(n.select(this),\"path\").attr(\"d\",g).call(a.setClipUrl,e.layerClipId,t)}}))}else h.remove()}))}(t,e,r,c)}},57256:function(t,e,r){\"use strict\";var n=r(45568),i=r(62203),a=r(78766),o=r(20438).DESELECTDIM,s=r(6851),l=r(84102).resizeText,c=s.styleTextPoints;t.exports={style:function(t,e,r){var s=r||n.select(t).selectAll('g[class^=\"waterfalllayer\"]').selectAll(\"g.trace\");l(t,s,\"waterfall\"),s.style(\"opacity\",(function(t){return t[0].trace.opacity})),s.each((function(e){var r=n.select(this),s=e[0].trace;r.selectAll(\".point > path\").each((function(t){if(!t.isBlank){var e=s[t.dir].marker;n.select(this).call(a.fill,e.color).call(a.stroke,e.line.color).call(i.dashLine,e.line.dash,e.line.width).style(\"opacity\",s.selectedpoints&&!t.selected?o:1)}})),c(r,s,t),r.selectAll(\".lines\").each((function(){var t=s.connector.line;i.lineGroupStyle(n.select(this).selectAll(\"path\"),t.width,t.color,t.dash)}))}))}}},47908:function(t,e,r){\"use strict\";var n=r(29714),i=r(34809),a=r(57297),o=r(5086).z,s=r(63821).BADNUM;e.moduleType=\"transform\",e.name=\"aggregate\";var l=e.attributes={enabled:{valType:\"boolean\",dflt:!0,editType:\"calc\"},groups:{valType:\"string\",strict:!0,noBlank:!0,arrayOk:!0,dflt:\"x\",editType:\"calc\"},aggregations:{_isLinkedToArray:\"aggregation\",target:{valType:\"string\",editType:\"calc\"},func:{valType:\"enumerated\",values:[\"count\",\"sum\",\"avg\",\"median\",\"mode\",\"rms\",\"stddev\",\"min\",\"max\",\"first\",\"last\",\"change\",\"range\"],dflt:\"first\",editType:\"calc\"},funcmode:{valType:\"enumerated\",values:[\"sample\",\"population\"],dflt:\"sample\",editType:\"calc\"},enabled:{valType:\"boolean\",dflt:!0,editType:\"calc\"},editType:\"calc\"},editType:\"calc\"},c=l.aggregations;function u(t,e,r,a){if(a.enabled){for(var o=a.target,l=i.nestedProperty(e,o),c=l.get(),u=function(t,e){var r=t.func,n=e.d2c,a=e.c2d;switch(r){case\"count\":return h;case\"first\":return f;case\"last\":return p;case\"sum\":return function(t,e){for(var r=0,i=0;i<e.length;i++){var o=n(t[e[i]]);o!==s&&(r+=o)}return a(r)};case\"avg\":return function(t,e){for(var r=0,i=0,o=0;o<e.length;o++){var l=n(t[e[o]]);l!==s&&(r+=l,i++)}return i?a(r/i):s};case\"min\":return function(t,e){for(var r=1/0,i=0;i<e.length;i++){var o=n(t[e[i]]);o!==s&&(r=Math.min(r,o))}return r===1/0?s:a(r)};case\"max\":return function(t,e){for(var r=-1/0,i=0;i<e.length;i++){var o=n(t[e[i]]);o!==s&&(r=Math.max(r,o))}return r===-1/0?s:a(r)};case\"range\":return function(t,e){for(var r=1/0,i=-1/0,o=0;o<e.length;o++){var l=n(t[e[o]]);l!==s&&(r=Math.min(r,l),i=Math.max(i,l))}return i===-1/0||r===1/0?s:a(i-r)};case\"change\":return function(t,e){var r=n(t[e[0]]),i=n(t[e[e.length-1]]);return r===s||i===s?s:a(i-r)};case\"median\":return function(t,e){for(var r=[],o=0;o<e.length;o++){var l=n(t[e[o]]);l!==s&&r.push(l)}if(!r.length)return s;r.sort(i.sorterAsc);var c=(r.length-1)/2;return a((r[Math.floor(c)]+r[Math.ceil(c)])/2)};case\"mode\":return function(t,e){for(var r={},i=0,o=s,l=0;l<e.length;l++){var c=n(t[e[l]]);if(c!==s){var u=r[c]=(r[c]||0)+1;u>i&&(i=u,o=c)}}return i?a(o):s};case\"rms\":return function(t,e){for(var r=0,i=0,o=0;o<e.length;o++){var l=n(t[e[o]]);l!==s&&(r+=l*l,i++)}return i?a(Math.sqrt(r/i)):s};case\"stddev\":return function(e,r){var i,a=0,o=0,l=1,c=s;for(i=0;i<r.length&&c===s;i++)c=n(e[r[i]]);if(c===s)return s;for(;i<r.length;i++){var u=n(e[r[i]]);if(u!==s){var h=u-c;a+=h,o+=h*h,l++}}var f=\"sample\"===t.funcmode?l-1:l;return f?Math.sqrt((o-a*a/l)/f):0}}}(a,n.getDataConversions(t,e,o,c)),d=new Array(r.length),m=0;m<r.length;m++)d[m]=u(c,r[m]);l.set(d),\"count\"===a.func&&i.pushUnique(e._arrayAttrs,o)}}function h(t,e){return e.length}function f(t,e){return t[e[0]]}function p(t,e){return t[e[e.length-1]]}e.supplyDefaults=function(t,e){var r,n={};function o(e,r){return i.coerce(t,n,l,e,r)}if(!o(\"enabled\"))return n;var s=a.findArrayAttributes(e),u={};for(r=0;r<s.length;r++)u[s[r]]=1;var h=o(\"groups\");if(!Array.isArray(h)){if(!u[h])return n.enabled=!1,n;u[h]=0}var f,p=t.aggregations||[],d=n.aggregations=new Array(p.length);function m(t,e){return i.coerce(p[r],f,c,t,e)}for(r=0;r<p.length;r++){f={_index:r};var g=m(\"target\"),y=m(\"func\");m(\"enabled\")&&g&&(u[g]||\"count\"===y&&void 0===u[g])?(\"stddev\"===y&&m(\"funcmode\"),u[g]=0,d[r]=f):d[r]={enabled:!1,_index:r}}for(r=0;r<s.length;r++)u[s[r]]&&d.push({target:s[r],func:c.func.dflt,enabled:!0,_index:-1});return n},e.calcTransform=function(t,e,r){if(r.enabled){var n=r.groups,a=i.getTargetArray(e,{target:n});if(a){var s,l,c,h,f={},p={},d=[],m=o(e.transforms,r),g=a.length;for(e._length&&(g=Math.min(g,e._length)),s=0;s<g;s++)void 0===(c=f[l=a[s]])?(f[l]=d.length,h=[s],d.push(h),p[f[l]]=m(s)):(d[c].push(s),p[f[l]]=(p[f[l]]||[]).concat(m(s)));r._indexToPoints=p;var y=r.aggregations;for(s=0;s<y.length;s++)u(t,e,d,y[s]);\"string\"==typeof n&&u(t,e,d,{target:n,func:\"first\",enabled:!0}),e._length=d.length}}}},42849:function(t,e,r){\"use strict\";var n=r(34809),i=r(33626),a=r(29714),o=r(5086).z,s=r(20726),l=s.COMPARISON_OPS,c=s.INTERVAL_OPS,u=s.SET_OPS;e.moduleType=\"transform\",e.name=\"filter\",e.attributes={enabled:{valType:\"boolean\",dflt:!0,editType:\"calc\"},target:{valType:\"string\",strict:!0,noBlank:!0,arrayOk:!0,dflt:\"x\",editType:\"calc\"},operation:{valType:\"enumerated\",values:[].concat(l).concat(c).concat(u),dflt:\"=\",editType:\"calc\"},value:{valType:\"any\",dflt:0,editType:\"calc\"},preservegaps:{valType:\"boolean\",dflt:!1,editType:\"calc\"},editType:\"calc\"},e.supplyDefaults=function(t){var r={};function a(i,a){return n.coerce(t,r,e.attributes,i,a)}if(a(\"enabled\")){var o=a(\"target\");if(n.isArrayOrTypedArray(o)&&0===o.length)return r.enabled=!1,r;a(\"preservegaps\"),a(\"operation\"),a(\"value\");var s=i.getComponentMethod(\"calendars\",\"handleDefaults\");s(t,r,\"valuecalendar\",null),s(t,r,\"targetcalendar\",null)}return r},e.calcTransform=function(t,e,r){if(r.enabled){var i=n.getTargetArray(e,r);if(i){var s=r.target,h=i.length;e._length&&(h=Math.min(h,e._length));var f=r.targetcalendar,p=e._arrayAttrs,d=r.preservegaps;if(\"string\"==typeof s){var m=n.nestedProperty(e,s+\"calendar\").get();m&&(f=m)}var g,y,v=function(t,e,r){var i=t.operation,a=t.value,o=n.isArrayOrTypedArray(a);function s(t){return-1!==t.indexOf(i)}var h,f=function(r){return e(r,0,t.valuecalendar)},p=function(t){return e(t,0,r)};switch(s(l)?h=f(o?a[0]:a):s(c)?h=o?[f(a[0]),f(a[1])]:[f(a),f(a)]:s(u)&&(h=o?a.map(f):[f(a)]),i){case\"=\":return function(t){return p(t)===h};case\"!=\":return function(t){return p(t)!==h};case\"<\":return function(t){return p(t)<h};case\"<=\":return function(t){return p(t)<=h};case\">\":return function(t){return p(t)>h};case\">=\":return function(t){return p(t)>=h};case\"[]\":return function(t){var e=p(t);return e>=h[0]&&e<=h[1]};case\"()\":return function(t){var e=p(t);return e>h[0]&&e<h[1]};case\"[)\":return function(t){var e=p(t);return e>=h[0]&&e<h[1]};case\"(]\":return function(t){var e=p(t);return e>h[0]&&e<=h[1]};case\"][\":return function(t){var e=p(t);return e<=h[0]||e>=h[1]};case\")(\":return function(t){var e=p(t);return e<h[0]||e>h[1]};case\"](\":return function(t){var e=p(t);return e<=h[0]||e>h[1]};case\")[\":return function(t){var e=p(t);return e<h[0]||e>=h[1]};case\"{}\":return function(t){return-1!==h.indexOf(p(t))};case\"}{\":return function(t){return-1===h.indexOf(p(t))}}}(r,a.getDataToCoordFunc(t,e,s,i),f),x={},_={},b=0;d?(g=function(t){x[t.astr]=n.extendDeep([],t.get()),t.set(new Array(h))},y=function(t,e){var r=x[t.astr][e];t.get()[e]=r}):(g=function(t){x[t.astr]=n.extendDeep([],t.get()),t.set([])},y=function(t,e){var r=x[t.astr][e];t.get().push(r)}),k(g);for(var w=o(e.transforms,r),T=0;T<h;T++)v(i[T])?(k(y,T),_[b++]=w(T)):d&&b++;r._indexToPoints=_,e._length=b}}function k(t,r){for(var i=0;i<p.length;i++)t(n.nestedProperty(e,p[i]),r)}}},50453:function(t,e,r){\"use strict\";var n=r(34809),i=r(57297),a=r(44122),o=r(5086).z;function s(t,e){var r,s,l,c,u,h,f,p,d,m,g=e.transform,y=e.transformIndex,v=t.transforms[y].groups,x=o(t.transforms,g);if(!n.isArrayOrTypedArray(v)||0===v.length)return[t];var _=n.filterUnique(v),b=new Array(_.length),w=v.length,T=i.findArrayAttributes(t),k=g.styles||[],A={};for(r=0;r<k.length;r++)A[k[r].target]=k[r].value;g.styles&&(m=n.keyedContainer(g,\"styles\",\"target\",\"value.name\"));var M={},S={};for(r=0;r<_.length;r++){M[h=_[r]]=r,S[h]=0,(f=b[r]=n.extendDeepNoArrays({},t))._group=h,f.transforms[y]._indexToPoints={};var E=null;for(m&&(E=m.get(h)),f.name=E||\"\"===E?E:n.templateString(g.nameformat,{trace:t.name,group:h}),p=f.transforms,f.transforms=[],s=0;s<p.length;s++)f.transforms[s]=n.extendDeepNoArrays({},p[s]);for(s=0;s<T.length;s++)n.nestedProperty(f,T[s]).set([])}for(l=0;l<T.length;l++){for(c=T[l],s=0,d=[];s<_.length;s++)d[s]=n.nestedProperty(b[s],c).get();for(u=n.nestedProperty(t,c).get(),s=0;s<w;s++)d[M[v[s]]].push(u[s])}for(s=0;s<w;s++)(f=b[M[v[s]]]).transforms[y]._indexToPoints[S[v[s]]]=x(s),S[v[s]]++;for(r=0;r<_.length;r++)h=_[r],f=b[r],a.clearExpandedTraceDefaultColors(f),f=n.extendDeepNoArrays(f,A[h]||{});return b}e.moduleType=\"transform\",e.name=\"groupby\",e.attributes={enabled:{valType:\"boolean\",dflt:!0,editType:\"calc\"},groups:{valType:\"data_array\",dflt:[],editType:\"calc\"},nameformat:{valType:\"string\",editType:\"calc\"},styles:{_isLinkedToArray:\"style\",target:{valType:\"string\",editType:\"calc\"},value:{valType:\"any\",dflt:{},editType:\"calc\",_compareAsJSON:!0},editType:\"calc\"},editType:\"calc\"},e.supplyDefaults=function(t,r,i){var a,o={};function s(r,i){return n.coerce(t,o,e.attributes,r,i)}if(!s(\"enabled\"))return o;s(\"groups\"),s(\"nameformat\",i._dataLength>1?\"%{group} (%{trace})\":\"%{group}\");var l=t.styles,c=o.styles=[];if(l)for(a=0;a<l.length;a++){var u=c[a]={};n.coerce(l[a],c[a],e.attributes.styles,\"target\");var h=n.coerce(l[a],c[a],e.attributes.styles,\"value\");n.isPlainObject(h)?u.value=n.extendDeep({},h):h&&delete u.value}return o},e.transform=function(t,e){var r,n,i,a=[];for(n=0;n<t.length;n++)for(r=s(t[n],e),i=0;i<r.length;i++)a.push(r[i]);return a}},5086:function(t,e){\"use strict\";e.z=function(t,e){for(var r,n,i=0;i<t.length&&(r=t[i])!==e;i++)r._indexToPoints&&!1!==r.enabled&&(n=r._indexToPoints);var a=n?function(t){return n[t]}:function(t){return[t]};return a}},99855:function(t,e,r){\"use strict\";var n=r(34809),i=r(29714),a=r(5086).z,o=r(63821).BADNUM;e.moduleType=\"transform\",e.name=\"sort\",e.attributes={enabled:{valType:\"boolean\",dflt:!0,editType:\"calc\"},target:{valType:\"string\",strict:!0,noBlank:!0,arrayOk:!0,dflt:\"x\",editType:\"calc\"},order:{valType:\"enumerated\",values:[\"ascending\",\"descending\"],dflt:\"ascending\",editType:\"calc\"},editType:\"calc\"},e.supplyDefaults=function(t){var r={};function i(i,a){return n.coerce(t,r,e.attributes,i,a)}return i(\"enabled\")&&(i(\"target\"),i(\"order\")),r},e.calcTransform=function(t,e,r){if(r.enabled){var s=n.getTargetArray(e,r);if(s){var l=r.target,c=s.length;e._length&&(c=Math.min(c,e._length));var u,h,f=e._arrayAttrs,p=function(t,e,r,n){var i,a=new Array(n),s=new Array(n);for(i=0;i<n;i++)a[i]={v:e[i],i:i};for(a.sort(function(t,e){switch(t.order){case\"ascending\":return function(t,r){var n=e(t.v),i=e(r.v);return n===o?1:i===o?-1:n-i};case\"descending\":return function(t,r){var n=e(t.v),i=e(r.v);return n===o?1:i===o?-1:i-n}}}(t,r)),i=0;i<n;i++)s[i]=a[i].i;return s}(r,s,i.getDataToCoordFunc(t,e,l,s),c),d=a(e.transforms,r),m={};for(u=0;u<f.length;u++){var g=n.nestedProperty(e,f[u]),y=g.get(),v=new Array(c);for(h=0;h<c;h++)v[h]=y[p[h]];g.set(v)}for(h=0;h<c;h++)m[h]=d(p[h]);r._indexToPoints=m,e._length=c}}}},29697:function(t,e){\"use strict\";e.version=\"2.35.2\"},99098:function(t,e,r){var n=r(45708).Buffer,i=r(33282);!function(){var e={1964:function(t,e,r){t.exports={alpha_shape:r(3502),convex_hull:r(7352),delaunay_triangulate:r(7642),gl_cone3d:r(6405),gl_error3d:r(9165),gl_heatmap2d:r(2510),gl_line3d:r(5714),gl_mesh3d:r(7201),gl_plot2d:r(1850),gl_plot3d:r(4100),gl_pointcloud2d:r(4696),gl_scatter3d:r(8418),gl_select_box:r(3161),gl_spikes2d:r(4098),gl_streamtube3d:r(7815),gl_surface3d:r(9499),ndarray:r(9618),ndarray_linear_interpolate:r(4317)}},4793:function(t,e,r){\"use strict\";function n(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(t,i(n.key),n)}}function i(t){var e=function(t,e){if(\"object\"!=l(t)||!t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,\"string\");if(\"object\"!=l(n))return n;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return String(t)}(t);return\"symbol\"==l(e)?e:e+\"\"}function a(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(a=function(){return!!t})()}function o(t){return o=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},o(t)}function s(t,e){return s=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},s(t,e)}function l(t){return l=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},l(t)}var c=r(7507),u=r(3778),h=\"function\"==typeof Symbol&&\"function\"==typeof Symbol.for?Symbol.for(\"nodejs.util.inspect.custom\"):null;e.hp=d,e.IS=50;var f=2147483647;function p(t){if(t>f)throw new RangeError('The value \"'+t+'\" is invalid for option \"size\"');var e=new Uint8Array(t);return Object.setPrototypeOf(e,d.prototype),e}function d(t,e,r){if(\"number\"==typeof t){if(\"string\"==typeof e)throw new TypeError('The \"string\" argument must be of type string. Received type number');return y(t)}return m(t,e,r)}function m(t,e,r){if(\"string\"==typeof t)return function(t,e){if(\"string\"==typeof e&&\"\"!==e||(e=\"utf8\"),!d.isEncoding(e))throw new TypeError(\"Unknown encoding: \"+e);var r=0|b(t,e),n=p(r),i=n.write(t,e);return i!==r&&(n=n.slice(0,i)),n}(t,e);if(ArrayBuffer.isView(t))return function(t){if(et(t,Uint8Array)){var e=new Uint8Array(t);return x(e.buffer,e.byteOffset,e.byteLength)}return v(t)}(t);if(null==t)throw new TypeError(\"The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type \"+l(t));if(et(t,ArrayBuffer)||t&&et(t.buffer,ArrayBuffer))return x(t,e,r);if(\"undefined\"!=typeof SharedArrayBuffer&&(et(t,SharedArrayBuffer)||t&&et(t.buffer,SharedArrayBuffer)))return x(t,e,r);if(\"number\"==typeof t)throw new TypeError('The \"value\" argument must not be of type number. Received type number');var n=t.valueOf&&t.valueOf();if(null!=n&&n!==t)return d.from(n,e,r);var i=function(t){if(d.isBuffer(t)){var e=0|_(t.length),r=p(e);return 0===r.length||t.copy(r,0,0,e),r}return void 0!==t.length?\"number\"!=typeof t.length||rt(t.length)?p(0):v(t):\"Buffer\"===t.type&&Array.isArray(t.data)?v(t.data):void 0}(t);if(i)return i;if(\"undefined\"!=typeof Symbol&&null!=Symbol.toPrimitive&&\"function\"==typeof t[Symbol.toPrimitive])return d.from(t[Symbol.toPrimitive](\"string\"),e,r);throw new TypeError(\"The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type \"+l(t))}function g(t){if(\"number\"!=typeof t)throw new TypeError('\"size\" argument must be of type number');if(t<0)throw new RangeError('The value \"'+t+'\" is invalid for option \"size\"')}function y(t){return g(t),p(t<0?0:0|_(t))}function v(t){for(var e=t.length<0?0:0|_(t.length),r=p(e),n=0;n<e;n+=1)r[n]=255&t[n];return r}function x(t,e,r){if(e<0||t.byteLength<e)throw new RangeError('\"offset\" is outside of buffer bounds');if(t.byteLength<e+(r||0))throw new RangeError('\"length\" is outside of buffer bounds');var n;return n=void 0===e&&void 0===r?new Uint8Array(t):void 0===r?new Uint8Array(t,e):new Uint8Array(t,e,r),Object.setPrototypeOf(n,d.prototype),n}function _(t){if(t>=f)throw new RangeError(\"Attempt to allocate Buffer larger than maximum size: 0x\"+f.toString(16)+\" bytes\");return 0|t}function b(t,e){if(d.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||et(t,ArrayBuffer))return t.byteLength;if(\"string\"!=typeof t)throw new TypeError('The \"string\" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+l(t));var r=t.length,n=arguments.length>2&&!0===arguments[2];if(!n&&0===r)return 0;for(var i=!1;;)switch(e){case\"ascii\":case\"latin1\":case\"binary\":return r;case\"utf8\":case\"utf-8\":return K(t).length;case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return 2*r;case\"hex\":return r>>>1;case\"base64\":return Q(t).length;default:if(i)return n?-1:K(t).length;e=(\"\"+e).toLowerCase(),i=!0}}function w(t,e,r){var n=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return\"\";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return\"\";if((r>>>=0)<=(e>>>=0))return\"\";for(t||(t=\"utf8\");;)switch(t){case\"hex\":return R(this,e,r);case\"utf8\":case\"utf-8\":return P(this,e,r);case\"ascii\":return O(this,e,r);case\"latin1\":case\"binary\":return D(this,e,r);case\"base64\":return I(this,e,r);case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return F(this,e,r);default:if(n)throw new TypeError(\"Unknown encoding: \"+t);t=(t+\"\").toLowerCase(),n=!0}}function T(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}function k(t,e,r,n,i){if(0===t.length)return-1;if(\"string\"==typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),rt(r=+r)&&(r=i?0:t.length-1),r<0&&(r=t.length+r),r>=t.length){if(i)return-1;r=t.length-1}else if(r<0){if(!i)return-1;r=0}if(\"string\"==typeof e&&(e=d.from(e,n)),d.isBuffer(e))return 0===e.length?-1:A(t,e,r,n,i);if(\"number\"==typeof e)return e&=255,\"function\"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(t,e,r):Uint8Array.prototype.lastIndexOf.call(t,e,r):A(t,[e],r,n,i);throw new TypeError(\"val must be string, number or Buffer\")}function A(t,e,r,n,i){var a,o=1,s=t.length,l=e.length;if(void 0!==n&&(\"ucs2\"===(n=String(n).toLowerCase())||\"ucs-2\"===n||\"utf16le\"===n||\"utf-16le\"===n)){if(t.length<2||e.length<2)return-1;o=2,s/=2,l/=2,r/=2}function c(t,e){return 1===o?t[e]:t.readUInt16BE(e*o)}if(i){var u=-1;for(a=r;a<s;a++)if(c(t,a)===c(e,-1===u?0:a-u)){if(-1===u&&(u=a),a-u+1===l)return u*o}else-1!==u&&(a-=a-u),u=-1}else for(r+l>s&&(r=s-l),a=r;a>=0;a--){for(var h=!0,f=0;f<l;f++)if(c(t,a+f)!==c(e,f)){h=!1;break}if(h)return a}return-1}function M(t,e,r,n){r=Number(r)||0;var i=t.length-r;n?(n=Number(n))>i&&(n=i):n=i;var a,o=e.length;for(n>o/2&&(n=o/2),a=0;a<n;++a){var s=parseInt(e.substr(2*a,2),16);if(rt(s))return a;t[r+a]=s}return a}function S(t,e,r,n){return tt(K(e,t.length-r),t,r,n)}function E(t,e,r,n){return tt(function(t){for(var e=[],r=0;r<t.length;++r)e.push(255&t.charCodeAt(r));return e}(e),t,r,n)}function C(t,e,r,n){return tt(Q(e),t,r,n)}function L(t,e,r,n){return tt(function(t,e){for(var r,n,i,a=[],o=0;o<t.length&&!((e-=2)<0);++o)n=(r=t.charCodeAt(o))>>8,i=r%256,a.push(i),a.push(n);return a}(e,t.length-r),t,r,n)}function I(t,e,r){return 0===e&&r===t.length?c.fromByteArray(t):c.fromByteArray(t.slice(e,r))}function P(t,e,r){r=Math.min(t.length,r);for(var n=[],i=e;i<r;){var a=t[i],o=null,s=a>239?4:a>223?3:a>191?2:1;if(i+s<=r){var l=void 0,c=void 0,u=void 0,h=void 0;switch(s){case 1:a<128&&(o=a);break;case 2:128==(192&(l=t[i+1]))&&(h=(31&a)<<6|63&l)>127&&(o=h);break;case 3:l=t[i+1],c=t[i+2],128==(192&l)&&128==(192&c)&&(h=(15&a)<<12|(63&l)<<6|63&c)>2047&&(h<55296||h>57343)&&(o=h);break;case 4:l=t[i+1],c=t[i+2],u=t[i+3],128==(192&l)&&128==(192&c)&&128==(192&u)&&(h=(15&a)<<18|(63&l)<<12|(63&c)<<6|63&u)>65535&&h<1114112&&(o=h)}}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(t){var e=t.length;if(e<=z)return String.fromCharCode.apply(String,t);for(var r=\"\",n=0;n<e;)r+=String.fromCharCode.apply(String,t.slice(n,n+=z));return r}(n)}d.TYPED_ARRAY_SUPPORT=function(){try{var t=new Uint8Array(1),e={foo:function(){return 42}};return Object.setPrototypeOf(e,Uint8Array.prototype),Object.setPrototypeOf(t,e),42===t.foo()}catch(t){return!1}}(),d.TYPED_ARRAY_SUPPORT||\"undefined\"==typeof console||\"function\"!=typeof console.error||console.error(\"This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.\"),Object.defineProperty(d.prototype,\"parent\",{enumerable:!0,get:function(){if(d.isBuffer(this))return this.buffer}}),Object.defineProperty(d.prototype,\"offset\",{enumerable:!0,get:function(){if(d.isBuffer(this))return this.byteOffset}}),d.poolSize=8192,d.from=function(t,e,r){return m(t,e,r)},Object.setPrototypeOf(d.prototype,Uint8Array.prototype),Object.setPrototypeOf(d,Uint8Array),d.alloc=function(t,e,r){return function(t,e,r){return g(t),t<=0?p(t):void 0!==e?\"string\"==typeof r?p(t).fill(e,r):p(t).fill(e):p(t)}(t,e,r)},d.allocUnsafe=function(t){return y(t)},d.allocUnsafeSlow=function(t){return y(t)},d.isBuffer=function(t){return null!=t&&!0===t._isBuffer&&t!==d.prototype},d.compare=function(t,e){if(et(t,Uint8Array)&&(t=d.from(t,t.offset,t.byteLength)),et(e,Uint8Array)&&(e=d.from(e,e.offset,e.byteLength)),!d.isBuffer(t)||!d.isBuffer(e))throw new TypeError('The \"buf1\", \"buf2\" arguments must be one of type Buffer or Uint8Array');if(t===e)return 0;for(var r=t.length,n=e.length,i=0,a=Math.min(r,n);i<a;++i)if(t[i]!==e[i]){r=t[i],n=e[i];break}return r<n?-1:n<r?1:0},d.isEncoding=function(t){switch(String(t).toLowerCase()){case\"hex\":case\"utf8\":case\"utf-8\":case\"ascii\":case\"latin1\":case\"binary\":case\"base64\":case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return!0;default:return!1}},d.concat=function(t,e){if(!Array.isArray(t))throw new TypeError('\"list\" argument must be an Array of Buffers');if(0===t.length)return d.alloc(0);var r;if(void 0===e)for(e=0,r=0;r<t.length;++r)e+=t[r].length;var n=d.allocUnsafe(e),i=0;for(r=0;r<t.length;++r){var a=t[r];if(et(a,Uint8Array))i+a.length>n.length?(d.isBuffer(a)||(a=d.from(a)),a.copy(n,i)):Uint8Array.prototype.set.call(n,a,i);else{if(!d.isBuffer(a))throw new TypeError('\"list\" argument must be an Array of Buffers');a.copy(n,i)}i+=a.length}return n},d.byteLength=b,d.prototype._isBuffer=!0,d.prototype.swap16=function(){var t=this.length;if(t%2!=0)throw new RangeError(\"Buffer size must be a multiple of 16-bits\");for(var e=0;e<t;e+=2)T(this,e,e+1);return this},d.prototype.swap32=function(){var t=this.length;if(t%4!=0)throw new RangeError(\"Buffer size must be a multiple of 32-bits\");for(var e=0;e<t;e+=4)T(this,e,e+3),T(this,e+1,e+2);return this},d.prototype.swap64=function(){var t=this.length;if(t%8!=0)throw new RangeError(\"Buffer size must be a multiple of 64-bits\");for(var e=0;e<t;e+=8)T(this,e,e+7),T(this,e+1,e+6),T(this,e+2,e+5),T(this,e+3,e+4);return this},d.prototype.toString=function(){var t=this.length;return 0===t?\"\":0===arguments.length?P(this,0,t):w.apply(this,arguments)},d.prototype.toLocaleString=d.prototype.toString,d.prototype.equals=function(t){if(!d.isBuffer(t))throw new TypeError(\"Argument must be a Buffer\");return this===t||0===d.compare(this,t)},d.prototype.inspect=function(){var t=\"\",r=e.IS;return t=this.toString(\"hex\",0,r).replace(/(.{2})/g,\"$1 \").trim(),this.length>r&&(t+=\" ... \"),\"<Buffer \"+t+\">\"},h&&(d.prototype[h]=d.prototype.inspect),d.prototype.compare=function(t,e,r,n,i){if(et(t,Uint8Array)&&(t=d.from(t,t.offset,t.byteLength)),!d.isBuffer(t))throw new TypeError('The \"target\" argument must be one of type Buffer or Uint8Array. Received type '+l(t));if(void 0===e&&(e=0),void 0===r&&(r=t?t.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),e<0||r>t.length||n<0||i>this.length)throw new RangeError(\"out of range index\");if(n>=i&&e>=r)return 0;if(n>=i)return-1;if(e>=r)return 1;if(this===t)return 0;for(var a=(i>>>=0)-(n>>>=0),o=(r>>>=0)-(e>>>=0),s=Math.min(a,o),c=this.slice(n,i),u=t.slice(e,r),h=0;h<s;++h)if(c[h]!==u[h]){a=c[h],o=u[h];break}return a<o?-1:o<a?1:0},d.prototype.includes=function(t,e,r){return-1!==this.indexOf(t,e,r)},d.prototype.indexOf=function(t,e,r){return k(this,t,e,r,!0)},d.prototype.lastIndexOf=function(t,e,r){return k(this,t,e,r,!1)},d.prototype.write=function(t,e,r,n){if(void 0===e)n=\"utf8\",r=this.length,e=0;else if(void 0===r&&\"string\"==typeof e)n=e,r=this.length,e=0;else{if(!isFinite(e))throw new Error(\"Buffer.write(string, encoding, offset[, length]) is no longer supported\");e>>>=0,isFinite(r)?(r>>>=0,void 0===n&&(n=\"utf8\")):(n=r,r=void 0)}var i=this.length-e;if((void 0===r||r>i)&&(r=i),t.length>0&&(r<0||e<0)||e>this.length)throw new RangeError(\"Attempt to write outside buffer bounds\");n||(n=\"utf8\");for(var a=!1;;)switch(n){case\"hex\":return M(this,t,e,r);case\"utf8\":case\"utf-8\":return S(this,t,e,r);case\"ascii\":case\"latin1\":case\"binary\":return E(this,t,e,r);case\"base64\":return C(this,t,e,r);case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return L(this,t,e,r);default:if(a)throw new TypeError(\"Unknown encoding: \"+n);n=(\"\"+n).toLowerCase(),a=!0}},d.prototype.toJSON=function(){return{type:\"Buffer\",data:Array.prototype.slice.call(this._arr||this,0)}};var z=4096;function O(t,e,r){var n=\"\";r=Math.min(t.length,r);for(var i=e;i<r;++i)n+=String.fromCharCode(127&t[i]);return n}function D(t,e,r){var n=\"\";r=Math.min(t.length,r);for(var i=e;i<r;++i)n+=String.fromCharCode(t[i]);return n}function R(t,e,r){var n=t.length;(!e||e<0)&&(e=0),(!r||r<0||r>n)&&(r=n);for(var i=\"\",a=e;a<r;++a)i+=nt[t[a]];return i}function F(t,e,r){for(var n=t.slice(e,r),i=\"\",a=0;a<n.length-1;a+=2)i+=String.fromCharCode(n[a]+256*n[a+1]);return i}function B(t,e,r){if(t%1!=0||t<0)throw new RangeError(\"offset is not uint\");if(t+e>r)throw new RangeError(\"Trying to access beyond buffer length\")}function N(t,e,r,n,i,a){if(!d.isBuffer(t))throw new TypeError('\"buffer\" argument must be a Buffer instance');if(e>i||e<a)throw new RangeError('\"value\" argument is out of bounds');if(r+n>t.length)throw new RangeError(\"Index out of range\")}function j(t,e,r,n,i){Y(e,n,i,t,r,7);var a=Number(e&BigInt(4294967295));t[r++]=a,a>>=8,t[r++]=a,a>>=8,t[r++]=a,a>>=8,t[r++]=a;var o=Number(e>>BigInt(32)&BigInt(4294967295));return t[r++]=o,o>>=8,t[r++]=o,o>>=8,t[r++]=o,o>>=8,t[r++]=o,r}function U(t,e,r,n,i){Y(e,n,i,t,r,7);var a=Number(e&BigInt(4294967295));t[r+7]=a,a>>=8,t[r+6]=a,a>>=8,t[r+5]=a,a>>=8,t[r+4]=a;var o=Number(e>>BigInt(32)&BigInt(4294967295));return t[r+3]=o,o>>=8,t[r+2]=o,o>>=8,t[r+1]=o,o>>=8,t[r]=o,r+8}function V(t,e,r,n,i,a){if(r+n>t.length)throw new RangeError(\"Index out of range\");if(r<0)throw new RangeError(\"Index out of range\")}function q(t,e,r,n,i){return e=+e,r>>>=0,i||V(t,0,r,4),u.write(t,e,r,n,23,4),r+4}function H(t,e,r,n,i){return e=+e,r>>>=0,i||V(t,0,r,8),u.write(t,e,r,n,52,8),r+8}d.prototype.slice=function(t,e){var r=this.length;(t=~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),(e=void 0===e?r:~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),e<t&&(e=t);var n=this.subarray(t,e);return Object.setPrototypeOf(n,d.prototype),n},d.prototype.readUintLE=d.prototype.readUIntLE=function(t,e,r){t>>>=0,e>>>=0,r||B(t,e,this.length);for(var n=this[t],i=1,a=0;++a<e&&(i*=256);)n+=this[t+a]*i;return n},d.prototype.readUintBE=d.prototype.readUIntBE=function(t,e,r){t>>>=0,e>>>=0,r||B(t,e,this.length);for(var n=this[t+--e],i=1;e>0&&(i*=256);)n+=this[t+--e]*i;return n},d.prototype.readUint8=d.prototype.readUInt8=function(t,e){return t>>>=0,e||B(t,1,this.length),this[t]},d.prototype.readUint16LE=d.prototype.readUInt16LE=function(t,e){return t>>>=0,e||B(t,2,this.length),this[t]|this[t+1]<<8},d.prototype.readUint16BE=d.prototype.readUInt16BE=function(t,e){return t>>>=0,e||B(t,2,this.length),this[t]<<8|this[t+1]},d.prototype.readUint32LE=d.prototype.readUInt32LE=function(t,e){return t>>>=0,e||B(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},d.prototype.readUint32BE=d.prototype.readUInt32BE=function(t,e){return t>>>=0,e||B(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},d.prototype.readBigUInt64LE=it((function(t){X(t>>>=0,\"offset\");var e=this[t],r=this[t+7];void 0!==e&&void 0!==r||$(t,this.length-8);var n=e+this[++t]*Math.pow(2,8)+this[++t]*Math.pow(2,16)+this[++t]*Math.pow(2,24),i=this[++t]+this[++t]*Math.pow(2,8)+this[++t]*Math.pow(2,16)+r*Math.pow(2,24);return BigInt(n)+(BigInt(i)<<BigInt(32))})),d.prototype.readBigUInt64BE=it((function(t){X(t>>>=0,\"offset\");var e=this[t],r=this[t+7];void 0!==e&&void 0!==r||$(t,this.length-8);var n=e*Math.pow(2,24)+this[++t]*Math.pow(2,16)+this[++t]*Math.pow(2,8)+this[++t],i=this[++t]*Math.pow(2,24)+this[++t]*Math.pow(2,16)+this[++t]*Math.pow(2,8)+r;return(BigInt(n)<<BigInt(32))+BigInt(i)})),d.prototype.readIntLE=function(t,e,r){t>>>=0,e>>>=0,r||B(t,e,this.length);for(var n=this[t],i=1,a=0;++a<e&&(i*=256);)n+=this[t+a]*i;return n>=(i*=128)&&(n-=Math.pow(2,8*e)),n},d.prototype.readIntBE=function(t,e,r){t>>>=0,e>>>=0,r||B(t,e,this.length);for(var n=e,i=1,a=this[t+--n];n>0&&(i*=256);)a+=this[t+--n]*i;return a>=(i*=128)&&(a-=Math.pow(2,8*e)),a},d.prototype.readInt8=function(t,e){return t>>>=0,e||B(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},d.prototype.readInt16LE=function(t,e){t>>>=0,e||B(t,2,this.length);var r=this[t]|this[t+1]<<8;return 32768&r?4294901760|r:r},d.prototype.readInt16BE=function(t,e){t>>>=0,e||B(t,2,this.length);var r=this[t+1]|this[t]<<8;return 32768&r?4294901760|r:r},d.prototype.readInt32LE=function(t,e){return t>>>=0,e||B(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},d.prototype.readInt32BE=function(t,e){return t>>>=0,e||B(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},d.prototype.readBigInt64LE=it((function(t){X(t>>>=0,\"offset\");var e=this[t],r=this[t+7];void 0!==e&&void 0!==r||$(t,this.length-8);var n=this[t+4]+this[t+5]*Math.pow(2,8)+this[t+6]*Math.pow(2,16)+(r<<24);return(BigInt(n)<<BigInt(32))+BigInt(e+this[++t]*Math.pow(2,8)+this[++t]*Math.pow(2,16)+this[++t]*Math.pow(2,24))})),d.prototype.readBigInt64BE=it((function(t){X(t>>>=0,\"offset\");var e=this[t],r=this[t+7];void 0!==e&&void 0!==r||$(t,this.length-8);var n=(e<<24)+this[++t]*Math.pow(2,16)+this[++t]*Math.pow(2,8)+this[++t];return(BigInt(n)<<BigInt(32))+BigInt(this[++t]*Math.pow(2,24)+this[++t]*Math.pow(2,16)+this[++t]*Math.pow(2,8)+r)})),d.prototype.readFloatLE=function(t,e){return t>>>=0,e||B(t,4,this.length),u.read(this,t,!0,23,4)},d.prototype.readFloatBE=function(t,e){return t>>>=0,e||B(t,4,this.length),u.read(this,t,!1,23,4)},d.prototype.readDoubleLE=function(t,e){return t>>>=0,e||B(t,8,this.length),u.read(this,t,!0,52,8)},d.prototype.readDoubleBE=function(t,e){return t>>>=0,e||B(t,8,this.length),u.read(this,t,!1,52,8)},d.prototype.writeUintLE=d.prototype.writeUIntLE=function(t,e,r,n){t=+t,e>>>=0,r>>>=0,n||N(this,t,e,r,Math.pow(2,8*r)-1,0);var i=1,a=0;for(this[e]=255&t;++a<r&&(i*=256);)this[e+a]=t/i&255;return e+r},d.prototype.writeUintBE=d.prototype.writeUIntBE=function(t,e,r,n){t=+t,e>>>=0,r>>>=0,n||N(this,t,e,r,Math.pow(2,8*r)-1,0);var i=r-1,a=1;for(this[e+i]=255&t;--i>=0&&(a*=256);)this[e+i]=t/a&255;return e+r},d.prototype.writeUint8=d.prototype.writeUInt8=function(t,e,r){return t=+t,e>>>=0,r||N(this,t,e,1,255,0),this[e]=255&t,e+1},d.prototype.writeUint16LE=d.prototype.writeUInt16LE=function(t,e,r){return t=+t,e>>>=0,r||N(this,t,e,2,65535,0),this[e]=255&t,this[e+1]=t>>>8,e+2},d.prototype.writeUint16BE=d.prototype.writeUInt16BE=function(t,e,r){return t=+t,e>>>=0,r||N(this,t,e,2,65535,0),this[e]=t>>>8,this[e+1]=255&t,e+2},d.prototype.writeUint32LE=d.prototype.writeUInt32LE=function(t,e,r){return t=+t,e>>>=0,r||N(this,t,e,4,4294967295,0),this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t,e+4},d.prototype.writeUint32BE=d.prototype.writeUInt32BE=function(t,e,r){return t=+t,e>>>=0,r||N(this,t,e,4,4294967295,0),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},d.prototype.writeBigUInt64LE=it((function(t){return j(this,t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,BigInt(0),BigInt(\"0xffffffffffffffff\"))})),d.prototype.writeBigUInt64BE=it((function(t){return U(this,t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,BigInt(0),BigInt(\"0xffffffffffffffff\"))})),d.prototype.writeIntLE=function(t,e,r,n){if(t=+t,e>>>=0,!n){var i=Math.pow(2,8*r-1);N(this,t,e,r,i-1,-i)}var a=0,o=1,s=0;for(this[e]=255&t;++a<r&&(o*=256);)t<0&&0===s&&0!==this[e+a-1]&&(s=1),this[e+a]=(t/o>>0)-s&255;return e+r},d.prototype.writeIntBE=function(t,e,r,n){if(t=+t,e>>>=0,!n){var i=Math.pow(2,8*r-1);N(this,t,e,r,i-1,-i)}var a=r-1,o=1,s=0;for(this[e+a]=255&t;--a>=0&&(o*=256);)t<0&&0===s&&0!==this[e+a+1]&&(s=1),this[e+a]=(t/o>>0)-s&255;return e+r},d.prototype.writeInt8=function(t,e,r){return t=+t,e>>>=0,r||N(this,t,e,1,127,-128),t<0&&(t=255+t+1),this[e]=255&t,e+1},d.prototype.writeInt16LE=function(t,e,r){return t=+t,e>>>=0,r||N(this,t,e,2,32767,-32768),this[e]=255&t,this[e+1]=t>>>8,e+2},d.prototype.writeInt16BE=function(t,e,r){return t=+t,e>>>=0,r||N(this,t,e,2,32767,-32768),this[e]=t>>>8,this[e+1]=255&t,e+2},d.prototype.writeInt32LE=function(t,e,r){return t=+t,e>>>=0,r||N(this,t,e,4,2147483647,-2147483648),this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24,e+4},d.prototype.writeInt32BE=function(t,e,r){return t=+t,e>>>=0,r||N(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},d.prototype.writeBigInt64LE=it((function(t){return j(this,t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,-BigInt(\"0x8000000000000000\"),BigInt(\"0x7fffffffffffffff\"))})),d.prototype.writeBigInt64BE=it((function(t){return U(this,t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,-BigInt(\"0x8000000000000000\"),BigInt(\"0x7fffffffffffffff\"))})),d.prototype.writeFloatLE=function(t,e,r){return q(this,t,e,!0,r)},d.prototype.writeFloatBE=function(t,e,r){return q(this,t,e,!1,r)},d.prototype.writeDoubleLE=function(t,e,r){return H(this,t,e,!0,r)},d.prototype.writeDoubleBE=function(t,e,r){return H(this,t,e,!1,r)},d.prototype.copy=function(t,e,r,n){if(!d.isBuffer(t))throw new TypeError(\"argument should be a Buffer\");if(r||(r=0),n||0===n||(n=this.length),e>=t.length&&(e=t.length),e||(e=0),n>0&&n<r&&(n=r),n===r)return 0;if(0===t.length||0===this.length)return 0;if(e<0)throw new RangeError(\"targetStart out of bounds\");if(r<0||r>=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),t.length-e<n-r&&(n=t.length-e+r);var i=n-r;return this===t&&\"function\"==typeof Uint8Array.prototype.copyWithin?this.copyWithin(e,r,n):Uint8Array.prototype.set.call(t,this.subarray(r,n),e),i},d.prototype.fill=function(t,e,r,n){if(\"string\"==typeof t){if(\"string\"==typeof e?(n=e,e=0,r=this.length):\"string\"==typeof r&&(n=r,r=this.length),void 0!==n&&\"string\"!=typeof n)throw new TypeError(\"encoding must be a string\");if(\"string\"==typeof n&&!d.isEncoding(n))throw new TypeError(\"Unknown encoding: \"+n);if(1===t.length){var i=t.charCodeAt(0);(\"utf8\"===n&&i<128||\"latin1\"===n)&&(t=i)}}else\"number\"==typeof t?t&=255:\"boolean\"==typeof t&&(t=Number(t));if(e<0||this.length<e||this.length<r)throw new RangeError(\"Out of range index\");if(r<=e)return this;var a;if(e>>>=0,r=void 0===r?this.length:r>>>0,t||(t=0),\"number\"==typeof t)for(a=e;a<r;++a)this[a]=t;else{var o=d.isBuffer(t)?t:d.from(t,n),s=o.length;if(0===s)throw new TypeError('The value \"'+t+'\" is invalid for argument \"value\"');for(a=0;a<r-e;++a)this[a+e]=o[a%s]}return this};var G={};function Z(t,e,r){G[t]=function(r){function i(){var r;return function(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}(this,i),r=function(t,e,r){return e=o(e),function(t,e){if(e&&(\"object\"==l(e)||\"function\"==typeof e))return e;if(void 0!==e)throw new TypeError(\"Derived constructors may only return object or undefined\");return function(t){if(void 0===t)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return t}(t)}(t,a()?Reflect.construct(e,r||[],o(t).constructor):e.apply(t,r))}(this,i),Object.defineProperty(r,\"message\",{value:e.apply(r,arguments),writable:!0,configurable:!0}),r.name=\"\".concat(r.name,\" [\").concat(t,\"]\"),r.stack,delete r.name,r}return function(t,e){if(\"function\"!=typeof e&&null!==e)throw new TypeError(\"Super expression must either be null or a function\");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,\"prototype\",{writable:!1}),e&&s(t,e)}(i,r),c=i,(u=[{key:\"code\",get:function(){return t},set:function(t){Object.defineProperty(this,\"code\",{configurable:!0,enumerable:!0,value:t,writable:!0})}},{key:\"toString\",value:function(){return\"\".concat(this.name,\" [\").concat(t,\"]: \").concat(this.message)}}])&&n(c.prototype,u),Object.defineProperty(c,\"prototype\",{writable:!1}),c;var c,u}(r)}function W(t){for(var e=\"\",r=t.length,n=\"-\"===t[0]?1:0;r>=n+4;r-=3)e=\"_\".concat(t.slice(r-3,r)).concat(e);return\"\".concat(t.slice(0,r)).concat(e)}function Y(t,e,r,n,i,a){if(t>r||t<e){var o,s=\"bigint\"==typeof e?\"n\":\"\";throw o=a>3?0===e||e===BigInt(0)?\">= 0\".concat(s,\" and < 2\").concat(s,\" ** \").concat(8*(a+1)).concat(s):\">= -(2\".concat(s,\" ** \").concat(8*(a+1)-1).concat(s,\") and < 2 ** \")+\"\".concat(8*(a+1)-1).concat(s):\">= \".concat(e).concat(s,\" and <= \").concat(r).concat(s),new G.ERR_OUT_OF_RANGE(\"value\",o,t)}!function(t,e,r){X(e,\"offset\"),void 0!==t[e]&&void 0!==t[e+r]||$(e,t.length-(r+1))}(n,i,a)}function X(t,e){if(\"number\"!=typeof t)throw new G.ERR_INVALID_ARG_TYPE(e,\"number\",t)}function $(t,e,r){if(Math.floor(t)!==t)throw X(t,r),new G.ERR_OUT_OF_RANGE(r||\"offset\",\"an integer\",t);if(e<0)throw new G.ERR_BUFFER_OUT_OF_BOUNDS;throw new G.ERR_OUT_OF_RANGE(r||\"offset\",\">= \".concat(r?1:0,\" and <= \").concat(e),t)}Z(\"ERR_BUFFER_OUT_OF_BOUNDS\",(function(t){return t?\"\".concat(t,\" is outside of buffer bounds\"):\"Attempt to access memory outside buffer bounds\"}),RangeError),Z(\"ERR_INVALID_ARG_TYPE\",(function(t,e){return'The \"'.concat(t,'\" argument must be of type number. Received type ').concat(l(e))}),TypeError),Z(\"ERR_OUT_OF_RANGE\",(function(t,e,r){var n='The value of \"'.concat(t,'\" is out of range.'),i=r;return Number.isInteger(r)&&Math.abs(r)>Math.pow(2,32)?i=W(String(r)):\"bigint\"==typeof r&&(i=String(r),(r>Math.pow(BigInt(2),BigInt(32))||r<-Math.pow(BigInt(2),BigInt(32)))&&(i=W(i)),i+=\"n\"),n+\" It must be \".concat(e,\". Received \").concat(i)}),RangeError);var J=/[^+/0-9A-Za-z-_]/g;function K(t,e){var r;e=e||1/0;for(var n=t.length,i=null,a=[],o=0;o<n;++o){if((r=t.charCodeAt(o))>55295&&r<57344){if(!i){if(r>56319){(e-=3)>-1&&a.push(239,191,189);continue}if(o+1===n){(e-=3)>-1&&a.push(239,191,189);continue}i=r;continue}if(r<56320){(e-=3)>-1&&a.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(e-=3)>-1&&a.push(239,191,189);if(i=null,r<128){if((e-=1)<0)break;a.push(r)}else if(r<2048){if((e-=2)<0)break;a.push(r>>6|192,63&r|128)}else if(r<65536){if((e-=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((e-=4)<0)break;a.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return a}function Q(t){return c.toByteArray(function(t){if((t=(t=t.split(\"=\")[0]).trim().replace(J,\"\")).length<2)return\"\";for(;t.length%4!=0;)t+=\"=\";return t}(t))}function tt(t,e,r,n){var i;for(i=0;i<n&&!(i+r>=e.length||i>=t.length);++i)e[i+r]=t[i];return i}function et(t,e){return t instanceof e||null!=t&&null!=t.constructor&&null!=t.constructor.name&&t.constructor.name===e.name}function rt(t){return t!=t}var nt=function(){for(var t=\"0123456789abcdef\",e=new Array(256),r=0;r<16;++r)for(var n=16*r,i=0;i<16;++i)e[n+i]=t[r]+t[i];return e}();function it(t){return\"undefined\"==typeof BigInt?at:t}function at(){throw new Error(\"BigInt not supported\")}},9216:function(t){\"use strict\";t.exports=i,t.exports.isMobile=i,t.exports.default=i;var e=/(android|bb\\d+|meego).+mobile|armv7l|avantgo|bada\\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,r=/CrOS/,n=/android|ipad|playbook|silk/i;function i(t){t||(t={});var i=t.ua;if(i||\"undefined\"==typeof navigator||(i=navigator.userAgent),i&&i.headers&&\"string\"==typeof i.headers[\"user-agent\"]&&(i=i.headers[\"user-agent\"]),\"string\"!=typeof i)return!1;var a=e.test(i)&&!r.test(i)||!!t.tablet&&n.test(i);return!a&&t.tablet&&t.featureDetect&&navigator&&navigator.maxTouchPoints>1&&-1!==i.indexOf(\"Macintosh\")&&-1!==i.indexOf(\"Safari\")&&(a=!0),a}},6296:function(t,e,r){\"use strict\";t.exports=function(t){var e=(t=t||{}).eye||[0,0,1],r=t.center||[0,0,0],s=t.up||[0,1,0],l=t.distanceLimits||[0,1/0],c=t.mode||\"turntable\",u=n(),h=i(),f=a();return u.setDistanceLimits(l[0],l[1]),u.lookAt(0,e,r,s),h.setDistanceLimits(l[0],l[1]),h.lookAt(0,e,r,s),f.setDistanceLimits(l[0],l[1]),f.lookAt(0,e,r,s),new o({turntable:u,orbit:h,matrix:f},c)};var n=r(7261),i=r(9977),a=r(4192);function o(t,e){this._controllerNames=Object.keys(t),this._controllerList=this._controllerNames.map((function(e){return t[e]})),this._mode=e,this._active=t[e],this._active||(this._mode=\"turntable\",this._active=t.turntable),this.modes=this._controllerNames,this.computedMatrix=this._active.computedMatrix,this.computedEye=this._active.computedEye,this.computedUp=this._active.computedUp,this.computedCenter=this._active.computedCenter,this.computedRadius=this._active.computedRadius}var s=o.prototype;s.flush=function(t){for(var e=this._controllerList,r=0;r<e.length;++r)e[r].flush(t)},s.idle=function(t){for(var e=this._controllerList,r=0;r<e.length;++r)e[r].idle(t)},s.lookAt=function(t,e,r,n){for(var i=this._controllerList,a=0;a<i.length;++a)i[a].lookAt(t,e,r,n)},s.rotate=function(t,e,r,n){for(var i=this._controllerList,a=0;a<i.length;++a)i[a].rotate(t,e,r,n)},s.pan=function(t,e,r,n){for(var i=this._controllerList,a=0;a<i.length;++a)i[a].pan(t,e,r,n)},s.translate=function(t,e,r,n){for(var i=this._controllerList,a=0;a<i.length;++a)i[a].translate(t,e,r,n)},s.setMatrix=function(t,e){for(var r=this._controllerList,n=0;n<r.length;++n)r[n].setMatrix(t,e)},s.setDistanceLimits=function(t,e){for(var r=this._controllerList,n=0;n<r.length;++n)r[n].setDistanceLimits(t,e)},s.setDistance=function(t,e){for(var r=this._controllerList,n=0;n<r.length;++n)r[n].setDistance(t,e)},s.recalcMatrix=function(t){this._active.recalcMatrix(t)},s.getDistance=function(t){return this._active.getDistance(t)},s.getDistanceLimits=function(t){return this._active.getDistanceLimits(t)},s.lastT=function(){return this._active.lastT()},s.setMode=function(t){if(t!==this._mode){var e=this._controllerNames.indexOf(t);if(!(e<0)){var r=this._active,n=this._controllerList[e],i=Math.max(r.lastT(),n.lastT());r.recalcMatrix(i),n.setMatrix(i,r.computedMatrix),this._active=n,this._mode=t,this.computedMatrix=this._active.computedMatrix,this.computedEye=this._active.computedEye,this.computedUp=this._active.computedUp,this.computedCenter=this._active.computedCenter,this.computedRadius=this._active.computedRadius}}},s.getMode=function(){return this._mode}},7169:function(t,e,r){\"use strict\";var n=\"undefined\"==typeof WeakMap?r(1538):WeakMap,i=r(2762),a=r(8116),o=new n;t.exports=function(t){var e=o.get(t),r=e&&(e._triangleBuffer.handle||e._triangleBuffer.buffer);if(!r||!t.isBuffer(r)){var n=i(t,new Float32Array([-1,-1,-1,4,4,-1]));(e=a(t,[{buffer:n,type:t.FLOAT,size:2}]))._triangleBuffer=n,o.set(t,e)}e.bind(),t.drawArrays(t.TRIANGLES,0,3),e.unbind()}},1085:function(t,e,r){var n=r(1371);t.exports=function(t,e,r){e=\"number\"==typeof e?e:1,r=r||\": \";var i=t.split(/\\r?\\n/),a=String(i.length+e-1).length;return i.map((function(t,i){var o=i+e,s=String(o).length;return n(o,a-s)+r+t})).join(\"\\n\")}},3952:function(t,e,r){\"use strict\";t.exports=function(t){var e=t.length;if(0===e)return[];if(1===e)return[0];for(var r=t[0].length,n=[t[0]],a=[0],o=1;o<e;++o)if(n.push(t[o]),i(n,r)){if(a.push(o),a.length===r+1)return a}else n.pop();return a};var n=r(3250);function i(t,e){for(var r=new Array(e+1),i=0;i<t.length;++i)r[i]=t[i];for(i=0;i<=t.length;++i){for(var a=t.length;a<=e;++a){for(var o=new Array(e),s=0;s<e;++s)o[s]=Math.pow(a+1-i,s);r[a]=o}if(n.apply(void 0,r))return!0}return!1}},5995:function(t,e,r){\"use strict\";t.exports=function(t,e){return n(e).filter((function(r){for(var n=new Array(r.length),a=0;a<r.length;++a)n[a]=e[r[a]];return i(n)*t<1}))};var n=r(7642),i=r(6037)},3502:function(t,e,r){t.exports=function(t,e){return i(n(t,e))};var n=r(5995),i=r(9127)},6468:function(t){t.exports=function(t){return atob(t)}},2642:function(t,e,r){\"use strict\";t.exports=function(t,e){for(var r=e.length,a=new Array(r+1),o=0;o<r;++o){for(var s=new Array(r+1),l=0;l<=r;++l)s[l]=t[l][o];a[o]=s}for(a[r]=new Array(r+1),o=0;o<=r;++o)a[r][o]=1;var c=new Array(r+1);for(o=0;o<r;++o)c[o]=e[o];c[r]=1;var u=n(a,c),h=i(u[r+1]);0===h&&(h=1);var f=new Array(r+1);for(o=0;o<=r;++o)f[o]=i(u[o])/h;return f};var n=r(727);function i(t){for(var e=0,r=0;r<t.length;++r)e+=t[r];return e}},7507:function(t,e){\"use strict\";e.byteLength=function(t){var e=s(t),r=e[0],n=e[1];return 3*(r+n)/4-n},e.toByteArray=function(t){var e,r,a=s(t),o=a[0],l=a[1],c=new i(function(t,e,r){return 3*(e+r)/4-r}(0,o,l)),u=0,h=l>0?o-4:o;for(r=0;r<h;r+=4)e=n[t.charCodeAt(r)]<<18|n[t.charCodeAt(r+1)]<<12|n[t.charCodeAt(r+2)]<<6|n[t.charCodeAt(r+3)],c[u++]=e>>16&255,c[u++]=e>>8&255,c[u++]=255&e;return 2===l&&(e=n[t.charCodeAt(r)]<<2|n[t.charCodeAt(r+1)]>>4,c[u++]=255&e),1===l&&(e=n[t.charCodeAt(r)]<<10|n[t.charCodeAt(r+1)]<<4|n[t.charCodeAt(r+2)]>>2,c[u++]=e>>8&255,c[u++]=255&e),c},e.fromByteArray=function(t){for(var e,n=t.length,i=n%3,a=[],o=16383,s=0,c=n-i;s<c;s+=o)a.push(l(t,s,s+o>c?c:s+o));return 1===i?(e=t[n-1],a.push(r[e>>2]+r[e<<4&63]+\"==\")):2===i&&(e=(t[n-2]<<8)+t[n-1],a.push(r[e>>10]+r[e>>4&63]+r[e<<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(t){var e=t.length;if(e%4>0)throw new Error(\"Invalid string. Length must be a multiple of 4\");var r=t.indexOf(\"=\");return-1===r&&(r=e),[r,r===e?0:4-r%4]}function l(t,e,n){for(var i,a,o=[],s=e;s<n;s+=3)i=(t[s]<<16&16711680)+(t[s+1]<<8&65280)+(255&t[s+2]),o.push(r[(a=i)>>18&63]+r[a>>12&63]+r[a>>6&63]+r[63&a]);return o.join(\"\")}n[\"-\".charCodeAt(0)]=62,n[\"_\".charCodeAt(0)]=63},3865:function(t,e,r){\"use strict\";var n=r(869);t.exports=function(t,e){return n(t[0].mul(e[1]).add(e[0].mul(t[1])),t[1].mul(e[1]))}},1318:function(t){\"use strict\";t.exports=function(t,e){return t[0].mul(e[1]).cmp(e[0].mul(t[1]))}},8697:function(t,e,r){\"use strict\";var n=r(869);t.exports=function(t,e){return n(t[0].mul(e[1]),t[1].mul(e[0]))}},7842:function(t,e,r){\"use strict\";var n=r(6330),i=r(1533),a=r(2651),o=r(4387),s=r(869),l=r(8697);t.exports=function t(e,r){if(n(e))return r?l(e,t(r)):[e[0].clone(),e[1].clone()];var c,u,h=0;if(i(e))c=e.clone();else if(\"string\"==typeof e)c=o(e);else{if(0===e)return[a(0),a(1)];if(e===Math.floor(e))c=a(e);else{for(;e!==Math.floor(e);)e*=Math.pow(2,256),h-=256;c=a(e)}}if(n(r))c.mul(r[1]),u=r[0].clone();else if(i(r))u=r.clone();else if(\"string\"==typeof r)u=o(r);else if(r)if(r===Math.floor(r))u=a(r);else{for(;r!==Math.floor(r);)r*=Math.pow(2,256),h+=256;u=a(r)}else u=a(1);return h>0?c=c.ushln(h):h<0&&(u=u.ushln(-h)),s(c,u)}},6330:function(t,e,r){\"use strict\";var n=r(1533);t.exports=function(t){return Array.isArray(t)&&2===t.length&&n(t[0])&&n(t[1])}},5716:function(t,e,r){\"use strict\";var n=r(6859);t.exports=function(t){return t.cmp(new n(0))}},1369:function(t,e,r){\"use strict\";var n=r(5716);t.exports=function(t){var e=t.length,r=t.words,i=0;if(1===e)i=r[0];else if(2===e)i=r[0]+67108864*r[1];else for(var a=0;a<e;a++)i+=r[a]*Math.pow(67108864,a);return n(t)*i}},4025:function(t,e,r){\"use strict\";var n=r(2361),i=r(8828).countTrailingZeros;t.exports=function(t){var e=i(n.lo(t));if(e<32)return e;var r=i(n.hi(t));return r>20?52:r+32}},1533:function(t,e,r){\"use strict\";r(6859),t.exports=function(t){return t&&\"object\"==typeof t&&Boolean(t.words)}},2651:function(t,e,r){\"use strict\";var n=r(6859),i=r(2361);t.exports=function(t){var e=i.exponent(t);return e<52?new n(t):new n(t*Math.pow(2,52-e)).ushln(e-52)}},869:function(t,e,r){\"use strict\";var n=r(2651),i=r(5716);t.exports=function(t,e){var r=i(t),a=i(e);if(0===r)return[n(0),n(1)];if(0===a)return[n(0),n(0)];a<0&&(t=t.neg(),e=e.neg());var o=t.gcd(e);return o.cmpn(1)?[t.div(o),e.div(o)]:[t,e]}},4387:function(t,e,r){\"use strict\";var n=r(6859);t.exports=function(t){return new n(t)}},6504:function(t,e,r){\"use strict\";var n=r(869);t.exports=function(t,e){return n(t[0].mul(e[0]),t[1].mul(e[1]))}},7721:function(t,e,r){\"use strict\";var n=r(5716);t.exports=function(t){return n(t[0])*n(t[1])}},5572:function(t,e,r){\"use strict\";var n=r(869);t.exports=function(t,e){return n(t[0].mul(e[1]).sub(t[1].mul(e[0])),t[1].mul(e[1]))}},946:function(t,e,r){\"use strict\";var n=r(1369),i=r(4025);t.exports=function(t){var e=t[0],r=t[1];if(0===e.cmpn(0))return 0;var a=e.abs().divmod(r.abs()),o=a.div,s=n(o),l=a.mod,c=e.negative!==r.negative?-1:1;if(0===l.cmpn(0))return c*s;if(s){var u=i(s)+4;return c*(s+(f=n(l.ushln(u).divRound(r)))*Math.pow(2,-u))}var h=r.bitLength()-l.bitLength()+53,f=n(l.ushln(h).divRound(r));return h<1023?c*f*Math.pow(2,-h):c*(f*=Math.pow(2,-1023))*Math.pow(2,1023-h)}},2478:function(t){\"use strict\";function e(t,e,r,n,i){for(var a=i+1;n<=i;){var o=n+i>>>1,s=t[o];(void 0!==r?r(s,e):s-e)>=0?(a=o,i=o-1):n=o+1}return a}function r(t,e,r,n,i){for(var a=i+1;n<=i;){var o=n+i>>>1,s=t[o];(void 0!==r?r(s,e):s-e)>0?(a=o,i=o-1):n=o+1}return a}function n(t,e,r,n,i){for(var a=n-1;n<=i;){var o=n+i>>>1,s=t[o];(void 0!==r?r(s,e):s-e)<0?(a=o,n=o+1):i=o-1}return a}function i(t,e,r,n,i){for(var a=n-1;n<=i;){var o=n+i>>>1,s=t[o];(void 0!==r?r(s,e):s-e)<=0?(a=o,n=o+1):i=o-1}return a}function a(t,e,r,n,i){for(;n<=i;){var a=n+i>>>1,o=t[a],s=void 0!==r?r(o,e):o-e;if(0===s)return a;s<=0?n=a+1:i=a-1}return-1}function o(t,e,r,n,i,a){return\"function\"==typeof r?a(t,e,r,void 0===n?0:0|n,void 0===i?t.length-1:0|i):a(t,e,void 0,void 0===r?0:0|r,void 0===n?t.length-1:0|n)}t.exports={ge:function(t,r,n,i,a){return o(t,r,n,i,a,e)},gt:function(t,e,n,i,a){return o(t,e,n,i,a,r)},lt:function(t,e,r,i,a){return o(t,e,r,i,a,n)},le:function(t,e,r,n,a){return o(t,e,r,n,a,i)},eq:function(t,e,r,n,i){return o(t,e,r,n,i,a)}}},8828:function(t,e){\"use strict\";function r(t){var e=32;return(t&=-t)&&e--,65535&t&&(e-=16),16711935&t&&(e-=8),252645135&t&&(e-=4),858993459&t&&(e-=2),1431655765&t&&(e-=1),e}e.INT_BITS=32,e.INT_MAX=2147483647,e.INT_MIN=-1<<31,e.sign=function(t){return(t>0)-(t<0)},e.abs=function(t){var e=t>>31;return(t^e)-e},e.min=function(t,e){return e^(t^e)&-(t<e)},e.max=function(t,e){return t^(t^e)&-(t<e)},e.isPow2=function(t){return!(t&t-1||!t)},e.log2=function(t){var e,r;return e=(t>65535)<<4,e|=r=((t>>>=e)>255)<<3,e|=r=((t>>>=r)>15)<<2,(e|=r=((t>>>=r)>3)<<1)|(t>>>=r)>>1},e.log10=function(t){return t>=1e9?9:t>=1e8?8:t>=1e7?7:t>=1e6?6:t>=1e5?5:t>=1e4?4:t>=1e3?3:t>=100?2:t>=10?1:0},e.popCount=function(t){return 16843009*((t=(858993459&(t-=t>>>1&1431655765))+(t>>>2&858993459))+(t>>>4)&252645135)>>>24},e.countTrailingZeros=r,e.nextPow2=function(t){return t+=0===t,--t,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,1+(t|=t>>>16)},e.prevPow2=function(t){return t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,(t|=t>>>16)-(t>>>1)},e.parity=function(t){return t^=t>>>16,t^=t>>>8,t^=t>>>4,27030>>>(t&=15)&1};var n=new Array(256);!function(t){for(var e=0;e<256;++e){var r=e,n=e,i=7;for(r>>>=1;r;r>>>=1)n<<=1,n|=1&r,--i;t[e]=n<<i&255}}(n),e.reverse=function(t){return n[255&t]<<24|n[t>>>8&255]<<16|n[t>>>16&255]<<8|n[t>>>24&255]},e.interleave2=function(t,e){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t&=65535)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e&=65535)|e<<8))|e<<4))|e<<2))|e<<1))<<1},e.deinterleave2=function(t,e){return(t=65535&((t=16711935&((t=252645135&((t=858993459&((t=t>>>e&1431655765)|t>>>1))|t>>>2))|t>>>4))|t>>>16))<<16>>16},e.interleave3=function(t,e,r){return t=1227133513&((t=3272356035&((t=251719695&((t=4278190335&((t&=1023)|t<<16))|t<<8))|t<<4))|t<<2),(t|=(e=1227133513&((e=3272356035&((e=251719695&((e=4278190335&((e&=1023)|e<<16))|e<<8))|e<<4))|e<<2))<<1)|(r=1227133513&((r=3272356035&((r=251719695&((r=4278190335&((r&=1023)|r<<16))|r<<8))|r<<4))|r<<2))<<2},e.deinterleave3=function(t,e){return(t=1023&((t=4278190335&((t=251719695&((t=3272356035&((t=t>>>e&1227133513)|t>>>2))|t>>>4))|t>>>8))|t>>>16))<<22>>22},e.nextCombination=function(t){var e=t|t-1;return e+1|(~e&-~e)-1>>>r(t)+1}},6859:function(t,e,r){!function(t,e){\"use strict\";function n(t,e){if(!t)throw new Error(e||\"Assertion failed\")}function i(t,e){t.super_=e;var r=function(){};r.prototype=e.prototype,t.prototype=new r,t.prototype.constructor=t}function a(t,e,r){if(a.isBN(t))return t;this.negative=0,this.words=null,this.length=0,this.red=null,null!==t&&(\"le\"!==e&&\"be\"!==e||(r=e,e=10),this._init(t||0,e||10,r||\"be\"))}var o;\"object\"==typeof t?t.exports=a:e.BN=a,a.BN=a,a.wordSize=26;try{o=\"undefined\"!=typeof window&&void 0!==window.Buffer?window.Buffer:r(7790).Buffer}catch(t){}function s(t,e){var r=t.charCodeAt(e);return r>=65&&r<=70?r-55:r>=97&&r<=102?r-87:r-48&15}function l(t,e,r){var n=s(t,r);return r-1>=e&&(n|=s(t,r-1)<<4),n}function c(t,e,r,n){for(var i=0,a=Math.min(t.length,r),o=e;o<a;o++){var s=t.charCodeAt(o)-48;i*=n,i+=s>=49?s-49+10:s>=17?s-17+10:s}return i}a.isBN=function(t){return t instanceof a||null!==t&&\"object\"==typeof t&&t.constructor.wordSize===a.wordSize&&Array.isArray(t.words)},a.max=function(t,e){return t.cmp(e)>0?t:e},a.min=function(t,e){return t.cmp(e)<0?t:e},a.prototype._init=function(t,e,r){if(\"number\"==typeof t)return this._initNumber(t,e,r);if(\"object\"==typeof t)return this._initArray(t,e,r);\"hex\"===e&&(e=16),n(e===(0|e)&&e>=2&&e<=36);var i=0;\"-\"===(t=t.toString().replace(/\\s+/g,\"\"))[0]&&(i++,this.negative=1),i<t.length&&(16===e?this._parseHex(t,i,r):(this._parseBase(t,e,i),\"le\"===r&&this._initArray(this.toArray(),e,r)))},a.prototype._initNumber=function(t,e,r){t<0&&(this.negative=1,t=-t),t<67108864?(this.words=[67108863&t],this.length=1):t<4503599627370496?(this.words=[67108863&t,t/67108864&67108863],this.length=2):(n(t<9007199254740992),this.words=[67108863&t,t/67108864&67108863,1],this.length=3),\"le\"===r&&this._initArray(this.toArray(),e,r)},a.prototype._initArray=function(t,e,r){if(n(\"number\"==typeof t.length),t.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(t.length/3),this.words=new Array(this.length);for(var i=0;i<this.length;i++)this.words[i]=0;var a,o,s=0;if(\"be\"===r)for(i=t.length-1,a=0;i>=0;i-=3)o=t[i]|t[i-1]<<8|t[i-2]<<16,this.words[a]|=o<<s&67108863,this.words[a+1]=o>>>26-s&67108863,(s+=24)>=26&&(s-=26,a++);else if(\"le\"===r)for(i=0,a=0;i<t.length;i+=3)o=t[i]|t[i+1]<<8|t[i+2]<<16,this.words[a]|=o<<s&67108863,this.words[a+1]=o>>>26-s&67108863,(s+=24)>=26&&(s-=26,a++);return this.strip()},a.prototype._parseHex=function(t,e,r){this.length=Math.ceil((t.length-e)/6),this.words=new Array(this.length);for(var n=0;n<this.length;n++)this.words[n]=0;var i,a=0,o=0;if(\"be\"===r)for(n=t.length-1;n>=e;n-=2)i=l(t,e,n)<<a,this.words[o]|=67108863&i,a>=18?(a-=18,o+=1,this.words[o]|=i>>>26):a+=8;else for(n=(t.length-e)%2==0?e+1:e;n<t.length;n+=2)i=l(t,e,n)<<a,this.words[o]|=67108863&i,a>=18?(a-=18,o+=1,this.words[o]|=i>>>26):a+=8;this.strip()},a.prototype._parseBase=function(t,e,r){this.words=[0],this.length=1;for(var n=0,i=1;i<=67108863;i*=e)n++;n--,i=i/e|0;for(var a=t.length-r,o=a%n,s=Math.min(a,a-o)+r,l=0,u=r;u<s;u+=n)l=c(t,u,u+n,e),this.imuln(i),this.words[0]+l<67108864?this.words[0]+=l:this._iaddn(l);if(0!==o){var h=1;for(l=c(t,u,t.length,e),u=0;u<o;u++)h*=e;this.imuln(h),this.words[0]+l<67108864?this.words[0]+=l:this._iaddn(l)}this.strip()},a.prototype.copy=function(t){t.words=new Array(this.length);for(var e=0;e<this.length;e++)t.words[e]=this.words[e];t.length=this.length,t.negative=this.negative,t.red=this.red},a.prototype.clone=function(){var t=new a(null);return this.copy(t),t},a.prototype._expand=function(t){for(;this.length<t;)this.words[this.length++]=0;return this},a.prototype.strip=function(){for(;this.length>1&&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?\"<BN-R: \":\"<BN: \")+this.toString(16)+\">\"};var u=[\"\",\"0\",\"00\",\"000\",\"0000\",\"00000\",\"000000\",\"0000000\",\"00000000\",\"000000000\",\"0000000000\",\"00000000000\",\"000000000000\",\"0000000000000\",\"00000000000000\",\"000000000000000\",\"0000000000000000\",\"00000000000000000\",\"000000000000000000\",\"0000000000000000000\",\"00000000000000000000\",\"000000000000000000000\",\"0000000000000000000000\",\"00000000000000000000000\",\"000000000000000000000000\",\"0000000000000000000000000\"],h=[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],f=[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 p(t,e,r){r.negative=e.negative^t.negative;var n=t.length+e.length|0;r.length=n,n=n-1|0;var i=0|t.words[0],a=0|e.words[0],o=i*a,s=67108863&o,l=o/67108864|0;r.words[0]=s;for(var c=1;c<n;c++){for(var u=l>>>26,h=67108863&l,f=Math.min(c,e.length-1),p=Math.max(0,c-t.length+1);p<=f;p++){var d=c-p|0;u+=(o=(i=0|t.words[d])*(a=0|e.words[p])+h)/67108864|0,h=67108863&o}r.words[c]=0|h,l=0|u}return 0!==l?r.words[c]=0|l:r.length--,r.strip()}a.prototype.toString=function(t,e){var r;if(e=0|e||1,16===(t=t||10)||\"hex\"===t){r=\"\";for(var i=0,a=0,o=0;o<this.length;o++){var s=this.words[o],l=(16777215&(s<<i|a)).toString(16);r=0!=(a=s>>>24-i&16777215)||o!==this.length-1?u[6-l.length]+l+r:l+r,(i+=2)>=26&&(i-=26,o--)}for(0!==a&&(r=a.toString(16)+r);r.length%e!=0;)r=\"0\"+r;return 0!==this.negative&&(r=\"-\"+r),r}if(t===(0|t)&&t>=2&&t<=36){var c=h[t],p=f[t];r=\"\";var d=this.clone();for(d.negative=0;!d.isZero();){var m=d.modn(p).toString(t);r=(d=d.idivn(p)).isZero()?m+r:u[c-m.length]+m+r}for(this.isZero()&&(r=\"0\"+r);r.length%e!=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 t=this.words[0];return 2===this.length?t+=67108864*this.words[1]:3===this.length&&1===this.words[2]?t+=4503599627370496+67108864*this.words[1]:this.length>2&&n(!1,\"Number can only safely store up to 53 bits\"),0!==this.negative?-t:t},a.prototype.toJSON=function(){return this.toString(16)},a.prototype.toBuffer=function(t,e){return n(void 0!==o),this.toArrayLike(o,t,e)},a.prototype.toArray=function(t,e){return this.toArrayLike(Array,t,e)},a.prototype.toArrayLike=function(t,e,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\"===e,c=new t(a),u=this.clone();if(l){for(s=0;!u.isZero();s++)o=u.andln(255),u.iushrn(8),c[s]=o;for(;s<a;s++)c[s]=0}else{for(s=0;s<a-i;s++)c[s]=0;for(s=0;!u.isZero();s++)o=u.andln(255),u.iushrn(8),c[a-s-1]=o}return c},Math.clz32?a.prototype._countBits=function(t){return 32-Math.clz32(t)}:a.prototype._countBits=function(t){var e=t,r=0;return e>=4096&&(r+=13,e>>>=13),e>=64&&(r+=7,e>>>=7),e>=8&&(r+=4,e>>>=4),e>=2&&(r+=2,e>>>=2),r+e},a.prototype._zeroBits=function(t){if(0===t)return 26;var e=t,r=0;return 0==(8191&e)&&(r+=13,e>>>=13),0==(127&e)&&(r+=7,e>>>=7),0==(15&e)&&(r+=4,e>>>=4),0==(3&e)&&(r+=2,e>>>=2),0==(1&e)&&r++,r},a.prototype.bitLength=function(){var t=this.words[this.length-1],e=this._countBits(t);return 26*(this.length-1)+e},a.prototype.zeroBits=function(){if(this.isZero())return 0;for(var t=0,e=0;e<this.length;e++){var r=this._zeroBits(this.words[e]);if(t+=r,26!==r)break}return t},a.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},a.prototype.toTwos=function(t){return 0!==this.negative?this.abs().inotn(t).iaddn(1):this.clone()},a.prototype.fromTwos=function(t){return this.testn(t-1)?this.notn(t).iaddn(1).ineg():this.clone()},a.prototype.isNeg=function(){return 0!==this.negative},a.prototype.neg=function(){return this.clone().ineg()},a.prototype.ineg=function(){return this.isZero()||(this.negative^=1),this},a.prototype.iuor=function(t){for(;this.length<t.length;)this.words[this.length++]=0;for(var e=0;e<t.length;e++)this.words[e]=this.words[e]|t.words[e];return this.strip()},a.prototype.ior=function(t){return n(0==(this.negative|t.negative)),this.iuor(t)},a.prototype.or=function(t){return this.length>t.length?this.clone().ior(t):t.clone().ior(this)},a.prototype.uor=function(t){return this.length>t.length?this.clone().iuor(t):t.clone().iuor(this)},a.prototype.iuand=function(t){var e;e=this.length>t.length?t:this;for(var r=0;r<e.length;r++)this.words[r]=this.words[r]&t.words[r];return this.length=e.length,this.strip()},a.prototype.iand=function(t){return n(0==(this.negative|t.negative)),this.iuand(t)},a.prototype.and=function(t){return this.length>t.length?this.clone().iand(t):t.clone().iand(this)},a.prototype.uand=function(t){return this.length>t.length?this.clone().iuand(t):t.clone().iuand(this)},a.prototype.iuxor=function(t){var e,r;this.length>t.length?(e=this,r=t):(e=t,r=this);for(var n=0;n<r.length;n++)this.words[n]=e.words[n]^r.words[n];if(this!==e)for(;n<e.length;n++)this.words[n]=e.words[n];return this.length=e.length,this.strip()},a.prototype.ixor=function(t){return n(0==(this.negative|t.negative)),this.iuxor(t)},a.prototype.xor=function(t){return this.length>t.length?this.clone().ixor(t):t.clone().ixor(this)},a.prototype.uxor=function(t){return this.length>t.length?this.clone().iuxor(t):t.clone().iuxor(this)},a.prototype.inotn=function(t){n(\"number\"==typeof t&&t>=0);var e=0|Math.ceil(t/26),r=t%26;this._expand(e),r>0&&e--;for(var i=0;i<e;i++)this.words[i]=67108863&~this.words[i];return r>0&&(this.words[i]=~this.words[i]&67108863>>26-r),this.strip()},a.prototype.notn=function(t){return this.clone().inotn(t)},a.prototype.setn=function(t,e){n(\"number\"==typeof t&&t>=0);var r=t/26|0,i=t%26;return this._expand(r+1),this.words[r]=e?this.words[r]|1<<i:this.words[r]&~(1<<i),this.strip()},a.prototype.iadd=function(t){var e,r,n;if(0!==this.negative&&0===t.negative)return this.negative=0,e=this.isub(t),this.negative^=1,this._normSign();if(0===this.negative&&0!==t.negative)return t.negative=0,e=this.isub(t),t.negative=1,e._normSign();this.length>t.length?(r=this,n=t):(r=t,n=this);for(var i=0,a=0;a<n.length;a++)e=(0|r.words[a])+(0|n.words[a])+i,this.words[a]=67108863&e,i=e>>>26;for(;0!==i&&a<r.length;a++)e=(0|r.words[a])+i,this.words[a]=67108863&e,i=e>>>26;if(this.length=r.length,0!==i)this.words[this.length]=i,this.length++;else if(r!==this)for(;a<r.length;a++)this.words[a]=r.words[a];return this},a.prototype.add=function(t){var e;return 0!==t.negative&&0===this.negative?(t.negative=0,e=this.sub(t),t.negative^=1,e):0===t.negative&&0!==this.negative?(this.negative=0,e=t.sub(this),this.negative=1,e):this.length>t.length?this.clone().iadd(t):t.clone().iadd(this)},a.prototype.isub=function(t){if(0!==t.negative){t.negative=0;var e=this.iadd(t);return t.negative=1,e._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(t),this.negative=1,this._normSign();var r,n,i=this.cmp(t);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(r=this,n=t):(r=t,n=this);for(var a=0,o=0;o<n.length;o++)a=(e=(0|r.words[o])-(0|n.words[o])+a)>>26,this.words[o]=67108863&e;for(;0!==a&&o<r.length;o++)a=(e=(0|r.words[o])+a)>>26,this.words[o]=67108863&e;if(0===a&&o<r.length&&r!==this)for(;o<r.length;o++)this.words[o]=r.words[o];return this.length=Math.max(this.length,o),r!==this&&(this.negative=1),this.strip()},a.prototype.sub=function(t){return this.clone().isub(t)};var d=function(t,e,r){var n,i,a,o=t.words,s=e.words,l=r.words,c=0,u=0|o[0],h=8191&u,f=u>>>13,p=0|o[1],d=8191&p,m=p>>>13,g=0|o[2],y=8191&g,v=g>>>13,x=0|o[3],_=8191&x,b=x>>>13,w=0|o[4],T=8191&w,k=w>>>13,A=0|o[5],M=8191&A,S=A>>>13,E=0|o[6],C=8191&E,L=E>>>13,I=0|o[7],P=8191&I,z=I>>>13,O=0|o[8],D=8191&O,R=O>>>13,F=0|o[9],B=8191&F,N=F>>>13,j=0|s[0],U=8191&j,V=j>>>13,q=0|s[1],H=8191&q,G=q>>>13,Z=0|s[2],W=8191&Z,Y=Z>>>13,X=0|s[3],$=8191&X,J=X>>>13,K=0|s[4],Q=8191&K,tt=K>>>13,et=0|s[5],rt=8191&et,nt=et>>>13,it=0|s[6],at=8191&it,ot=it>>>13,st=0|s[7],lt=8191&st,ct=st>>>13,ut=0|s[8],ht=8191&ut,ft=ut>>>13,pt=0|s[9],dt=8191&pt,mt=pt>>>13;r.negative=t.negative^e.negative,r.length=19;var gt=(c+(n=Math.imul(h,U))|0)+((8191&(i=(i=Math.imul(h,V))+Math.imul(f,U)|0))<<13)|0;c=((a=Math.imul(f,V))+(i>>>13)|0)+(gt>>>26)|0,gt&=67108863,n=Math.imul(d,U),i=(i=Math.imul(d,V))+Math.imul(m,U)|0,a=Math.imul(m,V);var yt=(c+(n=n+Math.imul(h,H)|0)|0)+((8191&(i=(i=i+Math.imul(h,G)|0)+Math.imul(f,H)|0))<<13)|0;c=((a=a+Math.imul(f,G)|0)+(i>>>13)|0)+(yt>>>26)|0,yt&=67108863,n=Math.imul(y,U),i=(i=Math.imul(y,V))+Math.imul(v,U)|0,a=Math.imul(v,V),n=n+Math.imul(d,H)|0,i=(i=i+Math.imul(d,G)|0)+Math.imul(m,H)|0,a=a+Math.imul(m,G)|0;var vt=(c+(n=n+Math.imul(h,W)|0)|0)+((8191&(i=(i=i+Math.imul(h,Y)|0)+Math.imul(f,W)|0))<<13)|0;c=((a=a+Math.imul(f,Y)|0)+(i>>>13)|0)+(vt>>>26)|0,vt&=67108863,n=Math.imul(_,U),i=(i=Math.imul(_,V))+Math.imul(b,U)|0,a=Math.imul(b,V),n=n+Math.imul(y,H)|0,i=(i=i+Math.imul(y,G)|0)+Math.imul(v,H)|0,a=a+Math.imul(v,G)|0,n=n+Math.imul(d,W)|0,i=(i=i+Math.imul(d,Y)|0)+Math.imul(m,W)|0,a=a+Math.imul(m,Y)|0;var xt=(c+(n=n+Math.imul(h,$)|0)|0)+((8191&(i=(i=i+Math.imul(h,J)|0)+Math.imul(f,$)|0))<<13)|0;c=((a=a+Math.imul(f,J)|0)+(i>>>13)|0)+(xt>>>26)|0,xt&=67108863,n=Math.imul(T,U),i=(i=Math.imul(T,V))+Math.imul(k,U)|0,a=Math.imul(k,V),n=n+Math.imul(_,H)|0,i=(i=i+Math.imul(_,G)|0)+Math.imul(b,H)|0,a=a+Math.imul(b,G)|0,n=n+Math.imul(y,W)|0,i=(i=i+Math.imul(y,Y)|0)+Math.imul(v,W)|0,a=a+Math.imul(v,Y)|0,n=n+Math.imul(d,$)|0,i=(i=i+Math.imul(d,J)|0)+Math.imul(m,$)|0,a=a+Math.imul(m,J)|0;var _t=(c+(n=n+Math.imul(h,Q)|0)|0)+((8191&(i=(i=i+Math.imul(h,tt)|0)+Math.imul(f,Q)|0))<<13)|0;c=((a=a+Math.imul(f,tt)|0)+(i>>>13)|0)+(_t>>>26)|0,_t&=67108863,n=Math.imul(M,U),i=(i=Math.imul(M,V))+Math.imul(S,U)|0,a=Math.imul(S,V),n=n+Math.imul(T,H)|0,i=(i=i+Math.imul(T,G)|0)+Math.imul(k,H)|0,a=a+Math.imul(k,G)|0,n=n+Math.imul(_,W)|0,i=(i=i+Math.imul(_,Y)|0)+Math.imul(b,W)|0,a=a+Math.imul(b,Y)|0,n=n+Math.imul(y,$)|0,i=(i=i+Math.imul(y,J)|0)+Math.imul(v,$)|0,a=a+Math.imul(v,J)|0,n=n+Math.imul(d,Q)|0,i=(i=i+Math.imul(d,tt)|0)+Math.imul(m,Q)|0,a=a+Math.imul(m,tt)|0;var bt=(c+(n=n+Math.imul(h,rt)|0)|0)+((8191&(i=(i=i+Math.imul(h,nt)|0)+Math.imul(f,rt)|0))<<13)|0;c=((a=a+Math.imul(f,nt)|0)+(i>>>13)|0)+(bt>>>26)|0,bt&=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(M,H)|0,i=(i=i+Math.imul(M,G)|0)+Math.imul(S,H)|0,a=a+Math.imul(S,G)|0,n=n+Math.imul(T,W)|0,i=(i=i+Math.imul(T,Y)|0)+Math.imul(k,W)|0,a=a+Math.imul(k,Y)|0,n=n+Math.imul(_,$)|0,i=(i=i+Math.imul(_,J)|0)+Math.imul(b,$)|0,a=a+Math.imul(b,J)|0,n=n+Math.imul(y,Q)|0,i=(i=i+Math.imul(y,tt)|0)+Math.imul(v,Q)|0,a=a+Math.imul(v,tt)|0,n=n+Math.imul(d,rt)|0,i=(i=i+Math.imul(d,nt)|0)+Math.imul(m,rt)|0,a=a+Math.imul(m,nt)|0;var wt=(c+(n=n+Math.imul(h,at)|0)|0)+((8191&(i=(i=i+Math.imul(h,ot)|0)+Math.imul(f,at)|0))<<13)|0;c=((a=a+Math.imul(f,ot)|0)+(i>>>13)|0)+(wt>>>26)|0,wt&=67108863,n=Math.imul(P,U),i=(i=Math.imul(P,V))+Math.imul(z,U)|0,a=Math.imul(z,V),n=n+Math.imul(C,H)|0,i=(i=i+Math.imul(C,G)|0)+Math.imul(L,H)|0,a=a+Math.imul(L,G)|0,n=n+Math.imul(M,W)|0,i=(i=i+Math.imul(M,Y)|0)+Math.imul(S,W)|0,a=a+Math.imul(S,Y)|0,n=n+Math.imul(T,$)|0,i=(i=i+Math.imul(T,J)|0)+Math.imul(k,$)|0,a=a+Math.imul(k,J)|0,n=n+Math.imul(_,Q)|0,i=(i=i+Math.imul(_,tt)|0)+Math.imul(b,Q)|0,a=a+Math.imul(b,tt)|0,n=n+Math.imul(y,rt)|0,i=(i=i+Math.imul(y,nt)|0)+Math.imul(v,rt)|0,a=a+Math.imul(v,nt)|0,n=n+Math.imul(d,at)|0,i=(i=i+Math.imul(d,ot)|0)+Math.imul(m,at)|0,a=a+Math.imul(m,ot)|0;var Tt=(c+(n=n+Math.imul(h,lt)|0)|0)+((8191&(i=(i=i+Math.imul(h,ct)|0)+Math.imul(f,lt)|0))<<13)|0;c=((a=a+Math.imul(f,ct)|0)+(i>>>13)|0)+(Tt>>>26)|0,Tt&=67108863,n=Math.imul(D,U),i=(i=Math.imul(D,V))+Math.imul(R,U)|0,a=Math.imul(R,V),n=n+Math.imul(P,H)|0,i=(i=i+Math.imul(P,G)|0)+Math.imul(z,H)|0,a=a+Math.imul(z,G)|0,n=n+Math.imul(C,W)|0,i=(i=i+Math.imul(C,Y)|0)+Math.imul(L,W)|0,a=a+Math.imul(L,Y)|0,n=n+Math.imul(M,$)|0,i=(i=i+Math.imul(M,J)|0)+Math.imul(S,$)|0,a=a+Math.imul(S,J)|0,n=n+Math.imul(T,Q)|0,i=(i=i+Math.imul(T,tt)|0)+Math.imul(k,Q)|0,a=a+Math.imul(k,tt)|0,n=n+Math.imul(_,rt)|0,i=(i=i+Math.imul(_,nt)|0)+Math.imul(b,rt)|0,a=a+Math.imul(b,nt)|0,n=n+Math.imul(y,at)|0,i=(i=i+Math.imul(y,ot)|0)+Math.imul(v,at)|0,a=a+Math.imul(v,ot)|0,n=n+Math.imul(d,lt)|0,i=(i=i+Math.imul(d,ct)|0)+Math.imul(m,lt)|0,a=a+Math.imul(m,ct)|0;var kt=(c+(n=n+Math.imul(h,ht)|0)|0)+((8191&(i=(i=i+Math.imul(h,ft)|0)+Math.imul(f,ht)|0))<<13)|0;c=((a=a+Math.imul(f,ft)|0)+(i>>>13)|0)+(kt>>>26)|0,kt&=67108863,n=Math.imul(B,U),i=(i=Math.imul(B,V))+Math.imul(N,U)|0,a=Math.imul(N,V),n=n+Math.imul(D,H)|0,i=(i=i+Math.imul(D,G)|0)+Math.imul(R,H)|0,a=a+Math.imul(R,G)|0,n=n+Math.imul(P,W)|0,i=(i=i+Math.imul(P,Y)|0)+Math.imul(z,W)|0,a=a+Math.imul(z,Y)|0,n=n+Math.imul(C,$)|0,i=(i=i+Math.imul(C,J)|0)+Math.imul(L,$)|0,a=a+Math.imul(L,J)|0,n=n+Math.imul(M,Q)|0,i=(i=i+Math.imul(M,tt)|0)+Math.imul(S,Q)|0,a=a+Math.imul(S,tt)|0,n=n+Math.imul(T,rt)|0,i=(i=i+Math.imul(T,nt)|0)+Math.imul(k,rt)|0,a=a+Math.imul(k,nt)|0,n=n+Math.imul(_,at)|0,i=(i=i+Math.imul(_,ot)|0)+Math.imul(b,at)|0,a=a+Math.imul(b,ot)|0,n=n+Math.imul(y,lt)|0,i=(i=i+Math.imul(y,ct)|0)+Math.imul(v,lt)|0,a=a+Math.imul(v,ct)|0,n=n+Math.imul(d,ht)|0,i=(i=i+Math.imul(d,ft)|0)+Math.imul(m,ht)|0,a=a+Math.imul(m,ft)|0;var At=(c+(n=n+Math.imul(h,dt)|0)|0)+((8191&(i=(i=i+Math.imul(h,mt)|0)+Math.imul(f,dt)|0))<<13)|0;c=((a=a+Math.imul(f,mt)|0)+(i>>>13)|0)+(At>>>26)|0,At&=67108863,n=Math.imul(B,H),i=(i=Math.imul(B,G))+Math.imul(N,H)|0,a=Math.imul(N,G),n=n+Math.imul(D,W)|0,i=(i=i+Math.imul(D,Y)|0)+Math.imul(R,W)|0,a=a+Math.imul(R,Y)|0,n=n+Math.imul(P,$)|0,i=(i=i+Math.imul(P,J)|0)+Math.imul(z,$)|0,a=a+Math.imul(z,J)|0,n=n+Math.imul(C,Q)|0,i=(i=i+Math.imul(C,tt)|0)+Math.imul(L,Q)|0,a=a+Math.imul(L,tt)|0,n=n+Math.imul(M,rt)|0,i=(i=i+Math.imul(M,nt)|0)+Math.imul(S,rt)|0,a=a+Math.imul(S,nt)|0,n=n+Math.imul(T,at)|0,i=(i=i+Math.imul(T,ot)|0)+Math.imul(k,at)|0,a=a+Math.imul(k,ot)|0,n=n+Math.imul(_,lt)|0,i=(i=i+Math.imul(_,ct)|0)+Math.imul(b,lt)|0,a=a+Math.imul(b,ct)|0,n=n+Math.imul(y,ht)|0,i=(i=i+Math.imul(y,ft)|0)+Math.imul(v,ht)|0,a=a+Math.imul(v,ft)|0;var Mt=(c+(n=n+Math.imul(d,dt)|0)|0)+((8191&(i=(i=i+Math.imul(d,mt)|0)+Math.imul(m,dt)|0))<<13)|0;c=((a=a+Math.imul(m,mt)|0)+(i>>>13)|0)+(Mt>>>26)|0,Mt&=67108863,n=Math.imul(B,W),i=(i=Math.imul(B,Y))+Math.imul(N,W)|0,a=Math.imul(N,Y),n=n+Math.imul(D,$)|0,i=(i=i+Math.imul(D,J)|0)+Math.imul(R,$)|0,a=a+Math.imul(R,J)|0,n=n+Math.imul(P,Q)|0,i=(i=i+Math.imul(P,tt)|0)+Math.imul(z,Q)|0,a=a+Math.imul(z,tt)|0,n=n+Math.imul(C,rt)|0,i=(i=i+Math.imul(C,nt)|0)+Math.imul(L,rt)|0,a=a+Math.imul(L,nt)|0,n=n+Math.imul(M,at)|0,i=(i=i+Math.imul(M,ot)|0)+Math.imul(S,at)|0,a=a+Math.imul(S,ot)|0,n=n+Math.imul(T,lt)|0,i=(i=i+Math.imul(T,ct)|0)+Math.imul(k,lt)|0,a=a+Math.imul(k,ct)|0,n=n+Math.imul(_,ht)|0,i=(i=i+Math.imul(_,ft)|0)+Math.imul(b,ht)|0,a=a+Math.imul(b,ft)|0;var St=(c+(n=n+Math.imul(y,dt)|0)|0)+((8191&(i=(i=i+Math.imul(y,mt)|0)+Math.imul(v,dt)|0))<<13)|0;c=((a=a+Math.imul(v,mt)|0)+(i>>>13)|0)+(St>>>26)|0,St&=67108863,n=Math.imul(B,$),i=(i=Math.imul(B,J))+Math.imul(N,$)|0,a=Math.imul(N,J),n=n+Math.imul(D,Q)|0,i=(i=i+Math.imul(D,tt)|0)+Math.imul(R,Q)|0,a=a+Math.imul(R,tt)|0,n=n+Math.imul(P,rt)|0,i=(i=i+Math.imul(P,nt)|0)+Math.imul(z,rt)|0,a=a+Math.imul(z,nt)|0,n=n+Math.imul(C,at)|0,i=(i=i+Math.imul(C,ot)|0)+Math.imul(L,at)|0,a=a+Math.imul(L,ot)|0,n=n+Math.imul(M,lt)|0,i=(i=i+Math.imul(M,ct)|0)+Math.imul(S,lt)|0,a=a+Math.imul(S,ct)|0,n=n+Math.imul(T,ht)|0,i=(i=i+Math.imul(T,ft)|0)+Math.imul(k,ht)|0,a=a+Math.imul(k,ft)|0;var Et=(c+(n=n+Math.imul(_,dt)|0)|0)+((8191&(i=(i=i+Math.imul(_,mt)|0)+Math.imul(b,dt)|0))<<13)|0;c=((a=a+Math.imul(b,mt)|0)+(i>>>13)|0)+(Et>>>26)|0,Et&=67108863,n=Math.imul(B,Q),i=(i=Math.imul(B,tt))+Math.imul(N,Q)|0,a=Math.imul(N,tt),n=n+Math.imul(D,rt)|0,i=(i=i+Math.imul(D,nt)|0)+Math.imul(R,rt)|0,a=a+Math.imul(R,nt)|0,n=n+Math.imul(P,at)|0,i=(i=i+Math.imul(P,ot)|0)+Math.imul(z,at)|0,a=a+Math.imul(z,ot)|0,n=n+Math.imul(C,lt)|0,i=(i=i+Math.imul(C,ct)|0)+Math.imul(L,lt)|0,a=a+Math.imul(L,ct)|0,n=n+Math.imul(M,ht)|0,i=(i=i+Math.imul(M,ft)|0)+Math.imul(S,ht)|0,a=a+Math.imul(S,ft)|0;var Ct=(c+(n=n+Math.imul(T,dt)|0)|0)+((8191&(i=(i=i+Math.imul(T,mt)|0)+Math.imul(k,dt)|0))<<13)|0;c=((a=a+Math.imul(k,mt)|0)+(i>>>13)|0)+(Ct>>>26)|0,Ct&=67108863,n=Math.imul(B,rt),i=(i=Math.imul(B,nt))+Math.imul(N,rt)|0,a=Math.imul(N,nt),n=n+Math.imul(D,at)|0,i=(i=i+Math.imul(D,ot)|0)+Math.imul(R,at)|0,a=a+Math.imul(R,ot)|0,n=n+Math.imul(P,lt)|0,i=(i=i+Math.imul(P,ct)|0)+Math.imul(z,lt)|0,a=a+Math.imul(z,ct)|0,n=n+Math.imul(C,ht)|0,i=(i=i+Math.imul(C,ft)|0)+Math.imul(L,ht)|0,a=a+Math.imul(L,ft)|0;var Lt=(c+(n=n+Math.imul(M,dt)|0)|0)+((8191&(i=(i=i+Math.imul(M,mt)|0)+Math.imul(S,dt)|0))<<13)|0;c=((a=a+Math.imul(S,mt)|0)+(i>>>13)|0)+(Lt>>>26)|0,Lt&=67108863,n=Math.imul(B,at),i=(i=Math.imul(B,ot))+Math.imul(N,at)|0,a=Math.imul(N,ot),n=n+Math.imul(D,lt)|0,i=(i=i+Math.imul(D,ct)|0)+Math.imul(R,lt)|0,a=a+Math.imul(R,ct)|0,n=n+Math.imul(P,ht)|0,i=(i=i+Math.imul(P,ft)|0)+Math.imul(z,ht)|0,a=a+Math.imul(z,ft)|0;var It=(c+(n=n+Math.imul(C,dt)|0)|0)+((8191&(i=(i=i+Math.imul(C,mt)|0)+Math.imul(L,dt)|0))<<13)|0;c=((a=a+Math.imul(L,mt)|0)+(i>>>13)|0)+(It>>>26)|0,It&=67108863,n=Math.imul(B,lt),i=(i=Math.imul(B,ct))+Math.imul(N,lt)|0,a=Math.imul(N,ct),n=n+Math.imul(D,ht)|0,i=(i=i+Math.imul(D,ft)|0)+Math.imul(R,ht)|0,a=a+Math.imul(R,ft)|0;var Pt=(c+(n=n+Math.imul(P,dt)|0)|0)+((8191&(i=(i=i+Math.imul(P,mt)|0)+Math.imul(z,dt)|0))<<13)|0;c=((a=a+Math.imul(z,mt)|0)+(i>>>13)|0)+(Pt>>>26)|0,Pt&=67108863,n=Math.imul(B,ht),i=(i=Math.imul(B,ft))+Math.imul(N,ht)|0,a=Math.imul(N,ft);var zt=(c+(n=n+Math.imul(D,dt)|0)|0)+((8191&(i=(i=i+Math.imul(D,mt)|0)+Math.imul(R,dt)|0))<<13)|0;c=((a=a+Math.imul(R,mt)|0)+(i>>>13)|0)+(zt>>>26)|0,zt&=67108863;var Ot=(c+(n=Math.imul(B,dt))|0)+((8191&(i=(i=Math.imul(B,mt))+Math.imul(N,dt)|0))<<13)|0;return c=((a=Math.imul(N,mt))+(i>>>13)|0)+(Ot>>>26)|0,Ot&=67108863,l[0]=gt,l[1]=yt,l[2]=vt,l[3]=xt,l[4]=_t,l[5]=bt,l[6]=wt,l[7]=Tt,l[8]=kt,l[9]=At,l[10]=Mt,l[11]=St,l[12]=Et,l[13]=Ct,l[14]=Lt,l[15]=It,l[16]=Pt,l[17]=zt,l[18]=Ot,0!==c&&(l[19]=c,r.length++),r};function m(t,e,r){return(new g).mulp(t,e,r)}function g(t,e){this.x=t,this.y=e}Math.imul||(d=p),a.prototype.mulTo=function(t,e){var r,n=this.length+t.length;return r=10===this.length&&10===t.length?d(this,t,e):n<63?p(this,t,e):n<1024?function(t,e,r){r.negative=e.negative^t.negative,r.length=t.length+e.length;for(var n=0,i=0,a=0;a<r.length-1;a++){var o=i;i=0;for(var s=67108863&n,l=Math.min(a,e.length-1),c=Math.max(0,a-t.length+1);c<=l;c++){var u=a-c,h=(0|t.words[u])*(0|e.words[c]),f=67108863&h;s=67108863&(f=f+s|0),i+=(o=(o=o+(h/67108864|0)|0)+(f>>>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,t,e):m(this,t,e),r},g.prototype.makeRBT=function(t){for(var e=new Array(t),r=a.prototype._countBits(t)-1,n=0;n<t;n++)e[n]=this.revBin(n,r,t);return e},g.prototype.revBin=function(t,e,r){if(0===t||t===r-1)return t;for(var n=0,i=0;i<e;i++)n|=(1&t)<<e-i-1,t>>=1;return n},g.prototype.permute=function(t,e,r,n,i,a){for(var o=0;o<a;o++)n[o]=e[t[o]],i[o]=r[t[o]]},g.prototype.transform=function(t,e,r,n,i,a){this.permute(a,t,e,r,n,i);for(var o=1;o<i;o<<=1)for(var s=o<<1,l=Math.cos(2*Math.PI/s),c=Math.sin(2*Math.PI/s),u=0;u<i;u+=s)for(var h=l,f=c,p=0;p<o;p++){var d=r[u+p],m=n[u+p],g=r[u+p+o],y=n[u+p+o],v=h*g-f*y;y=h*y+f*g,g=v,r[u+p]=d+g,n[u+p]=m+y,r[u+p+o]=d-g,n[u+p+o]=m-y,p!==s&&(v=l*h-c*f,f=l*f+c*h,h=v)}},g.prototype.guessLen13b=function(t,e){var r=1|Math.max(e,t),n=1&r,i=0;for(r=r/2|0;r;r>>>=1)i++;return 1<<i+1+n},g.prototype.conjugate=function(t,e,r){if(!(r<=1))for(var n=0;n<r/2;n++){var i=t[n];t[n]=t[r-n-1],t[r-n-1]=i,i=e[n],e[n]=-e[r-n-1],e[r-n-1]=-i}},g.prototype.normalize13b=function(t,e){for(var r=0,n=0;n<e/2;n++){var i=8192*Math.round(t[2*n+1]/e)+Math.round(t[2*n]/e)+r;t[n]=67108863&i,r=i<67108864?0:i/67108864|0}return t},g.prototype.convert13b=function(t,e,r,i){for(var a=0,o=0;o<e;o++)a+=0|t[o],r[2*o]=8191&a,a>>>=13,r[2*o+1]=8191&a,a>>>=13;for(o=2*e;o<i;++o)r[o]=0;n(0===a),n(0==(-8192&a))},g.prototype.stub=function(t){for(var e=new Array(t),r=0;r<t;r++)e[r]=0;return e},g.prototype.mulp=function(t,e,r){var n=2*this.guessLen13b(t.length,e.length),i=this.makeRBT(n),a=this.stub(n),o=new Array(n),s=new Array(n),l=new Array(n),c=new Array(n),u=new Array(n),h=new Array(n),f=r.words;f.length=n,this.convert13b(t.words,t.length,o,n),this.convert13b(e.words,e.length,c,n),this.transform(o,a,s,l,n,i),this.transform(c,a,u,h,n,i);for(var p=0;p<n;p++){var d=s[p]*u[p]-l[p]*h[p];l[p]=s[p]*h[p]+l[p]*u[p],s[p]=d}return this.conjugate(s,l,n),this.transform(s,l,f,a,n,i),this.conjugate(f,a,n),this.normalize13b(f,n),r.negative=t.negative^e.negative,r.length=t.length+e.length,r.strip()},a.prototype.mul=function(t){var e=new a(null);return e.words=new Array(this.length+t.length),this.mulTo(t,e)},a.prototype.mulf=function(t){var e=new a(null);return e.words=new Array(this.length+t.length),m(this,t,e)},a.prototype.imul=function(t){return this.clone().mulTo(t,this)},a.prototype.imuln=function(t){n(\"number\"==typeof t),n(t<67108864);for(var e=0,r=0;r<this.length;r++){var i=(0|this.words[r])*t,a=(67108863&i)+(67108863&e);e>>=26,e+=i/67108864|0,e+=a>>>26,this.words[r]=67108863&a}return 0!==e&&(this.words[r]=e,this.length++),this},a.prototype.muln=function(t){return this.clone().imuln(t)},a.prototype.sqr=function(){return this.mul(this)},a.prototype.isqr=function(){return this.imul(this.clone())},a.prototype.pow=function(t){var e=function(t){for(var e=new Array(t.bitLength()),r=0;r<e.length;r++){var n=r/26|0,i=r%26;e[r]=(t.words[n]&1<<i)>>>i}return e}(t);if(0===e.length)return new a(1);for(var r=this,n=0;n<e.length&&0===e[n];n++,r=r.sqr());if(++n<e.length)for(var i=r.sqr();n<e.length;n++,i=i.sqr())0!==e[n]&&(r=r.mul(i));return r},a.prototype.iushln=function(t){n(\"number\"==typeof t&&t>=0);var e,r=t%26,i=(t-r)/26,a=67108863>>>26-r<<26-r;if(0!==r){var o=0;for(e=0;e<this.length;e++){var s=this.words[e]&a,l=(0|this.words[e])-s<<r;this.words[e]=l|o,o=s>>>26-r}o&&(this.words[e]=o,this.length++)}if(0!==i){for(e=this.length-1;e>=0;e--)this.words[e+i]=this.words[e];for(e=0;e<i;e++)this.words[e]=0;this.length+=i}return this.strip()},a.prototype.ishln=function(t){return n(0===this.negative),this.iushln(t)},a.prototype.iushrn=function(t,e,r){var i;n(\"number\"==typeof t&&t>=0),i=e?(e-e%26)/26:0;var a=t%26,o=Math.min((t-a)/26,this.length),s=67108863^67108863>>>a<<a,l=r;if(i-=o,i=Math.max(0,i),l){for(var c=0;c<o;c++)l.words[c]=this.words[c];l.length=o}if(0===o);else if(this.length>o)for(this.length-=o,c=0;c<this.length;c++)this.words[c]=this.words[c+o];else this.words[0]=0,this.length=1;var u=0;for(c=this.length-1;c>=0&&(0!==u||c>=i);c--){var h=0|this.words[c];this.words[c]=u<<26-a|h>>>a,u=h&s}return l&&0!==u&&(l.words[l.length++]=u),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},a.prototype.ishrn=function(t,e,r){return n(0===this.negative),this.iushrn(t,e,r)},a.prototype.shln=function(t){return this.clone().ishln(t)},a.prototype.ushln=function(t){return this.clone().iushln(t)},a.prototype.shrn=function(t){return this.clone().ishrn(t)},a.prototype.ushrn=function(t){return this.clone().iushrn(t)},a.prototype.testn=function(t){n(\"number\"==typeof t&&t>=0);var e=t%26,r=(t-e)/26,i=1<<e;return!(this.length<=r||!(this.words[r]&i))},a.prototype.imaskn=function(t){n(\"number\"==typeof t&&t>=0);var e=t%26,r=(t-e)/26;if(n(0===this.negative,\"imaskn works only with positive numbers\"),this.length<=r)return this;if(0!==e&&r++,this.length=Math.min(r,this.length),0!==e){var i=67108863^67108863>>>e<<e;this.words[this.length-1]&=i}return this.strip()},a.prototype.maskn=function(t){return this.clone().imaskn(t)},a.prototype.iaddn=function(t){return n(\"number\"==typeof t),n(t<67108864),t<0?this.isubn(-t):0!==this.negative?1===this.length&&(0|this.words[0])<t?(this.words[0]=t-(0|this.words[0]),this.negative=0,this):(this.negative=0,this.isubn(t),this.negative=1,this):this._iaddn(t)},a.prototype._iaddn=function(t){this.words[0]+=t;for(var e=0;e<this.length&&this.words[e]>=67108864;e++)this.words[e]-=67108864,e===this.length-1?this.words[e+1]=1:this.words[e+1]++;return this.length=Math.max(this.length,e+1),this},a.prototype.isubn=function(t){if(n(\"number\"==typeof t),n(t<67108864),t<0)return this.iaddn(-t);if(0!==this.negative)return this.negative=0,this.iaddn(t),this.negative=1,this;if(this.words[0]-=t,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var e=0;e<this.length&&this.words[e]<0;e++)this.words[e]+=67108864,this.words[e+1]-=1;return this.strip()},a.prototype.addn=function(t){return this.clone().iaddn(t)},a.prototype.subn=function(t){return this.clone().isubn(t)},a.prototype.iabs=function(){return this.negative=0,this},a.prototype.abs=function(){return this.clone().iabs()},a.prototype._ishlnsubmul=function(t,e,r){var i,a,o=t.length+r;this._expand(o);var s=0;for(i=0;i<t.length;i++){a=(0|this.words[i+r])+s;var l=(0|t.words[i])*e;s=((a-=67108863&l)>>26)-(l/67108864|0),this.words[i+r]=67108863&a}for(;i<this.length-r;i++)s=(a=(0|this.words[i+r])+s)>>26,this.words[i+r]=67108863&a;if(0===s)return this.strip();for(n(-1===s),s=0,i=0;i<this.length;i++)s=(a=-(0|this.words[i])+s)>>26,this.words[i]=67108863&a;return this.negative=1,this.strip()},a.prototype._wordDiv=function(t,e){var r=(this.length,t.length),n=this.clone(),i=t,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\"!==e){(s=new a(null)).length=l+1,s.words=new Array(s.length);for(var c=0;c<s.length;c++)s.words[c]=0}var u=n.clone()._ishlnsubmul(i,1,l);0===u.negative&&(n=u,s&&(s.words[l]=1));for(var h=l-1;h>=0;h--){var f=67108864*(0|n.words[i.length+h])+(0|n.words[i.length+h-1]);for(f=Math.min(f/o|0,67108863),n._ishlnsubmul(i,f,h);0!==n.negative;)f--,n.negative=0,n._ishlnsubmul(i,1,h),n.isZero()||(n.negative^=1);s&&(s.words[h]=f)}return s&&s.strip(),n.strip(),\"div\"!==e&&0!==r&&n.iushrn(r),{div:s||null,mod:n}},a.prototype.divmod=function(t,e,r){return n(!t.isZero()),this.isZero()?{div:new a(0),mod:new a(0)}:0!==this.negative&&0===t.negative?(s=this.neg().divmod(t,e),\"mod\"!==e&&(i=s.div.neg()),\"div\"!==e&&(o=s.mod.neg(),r&&0!==o.negative&&o.iadd(t)),{div:i,mod:o}):0===this.negative&&0!==t.negative?(s=this.divmod(t.neg(),e),\"mod\"!==e&&(i=s.div.neg()),{div:i,mod:s.mod}):0!=(this.negative&t.negative)?(s=this.neg().divmod(t.neg(),e),\"div\"!==e&&(o=s.mod.neg(),r&&0!==o.negative&&o.isub(t)),{div:s.div,mod:o}):t.length>this.length||this.cmp(t)<0?{div:new a(0),mod:this}:1===t.length?\"div\"===e?{div:this.divn(t.words[0]),mod:null}:\"mod\"===e?{div:null,mod:new a(this.modn(t.words[0]))}:{div:this.divn(t.words[0]),mod:new a(this.modn(t.words[0]))}:this._wordDiv(t,e);var i,o,s},a.prototype.div=function(t){return this.divmod(t,\"div\",!1).div},a.prototype.mod=function(t){return this.divmod(t,\"mod\",!1).mod},a.prototype.umod=function(t){return this.divmod(t,\"mod\",!0).mod},a.prototype.divRound=function(t){var e=this.divmod(t);if(e.mod.isZero())return e.div;var r=0!==e.div.negative?e.mod.isub(t):e.mod,n=t.ushrn(1),i=t.andln(1),a=r.cmp(n);return a<0||1===i&&0===a?e.div:0!==e.div.negative?e.div.isubn(1):e.div.iaddn(1)},a.prototype.modn=function(t){n(t<=67108863);for(var e=(1<<26)%t,r=0,i=this.length-1;i>=0;i--)r=(e*r+(0|this.words[i]))%t;return r},a.prototype.idivn=function(t){n(t<=67108863);for(var e=0,r=this.length-1;r>=0;r--){var i=(0|this.words[r])+67108864*e;this.words[r]=i/t|0,e=i%t}return this.strip()},a.prototype.divn=function(t){return this.clone().idivn(t)},a.prototype.egcd=function(t){n(0===t.negative),n(!t.isZero());var e=this,r=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var i=new a(1),o=new a(0),s=new a(0),l=new a(1),c=0;e.isEven()&&r.isEven();)e.iushrn(1),r.iushrn(1),++c;for(var u=r.clone(),h=e.clone();!e.isZero();){for(var f=0,p=1;0==(e.words[0]&p)&&f<26;++f,p<<=1);if(f>0)for(e.iushrn(f);f-- >0;)(i.isOdd()||o.isOdd())&&(i.iadd(u),o.isub(h)),i.iushrn(1),o.iushrn(1);for(var d=0,m=1;0==(r.words[0]&m)&&d<26;++d,m<<=1);if(d>0)for(r.iushrn(d);d-- >0;)(s.isOdd()||l.isOdd())&&(s.iadd(u),l.isub(h)),s.iushrn(1),l.iushrn(1);e.cmp(r)>=0?(e.isub(r),i.isub(s),o.isub(l)):(r.isub(e),s.isub(i),l.isub(o))}return{a:s,b:l,gcd:r.iushln(c)}},a.prototype._invmp=function(t){n(0===t.negative),n(!t.isZero());var e=this,r=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var i,o=new a(1),s=new a(0),l=r.clone();e.cmpn(1)>0&&r.cmpn(1)>0;){for(var c=0,u=1;0==(e.words[0]&u)&&c<26;++c,u<<=1);if(c>0)for(e.iushrn(c);c-- >0;)o.isOdd()&&o.iadd(l),o.iushrn(1);for(var h=0,f=1;0==(r.words[0]&f)&&h<26;++h,f<<=1);if(h>0)for(r.iushrn(h);h-- >0;)s.isOdd()&&s.iadd(l),s.iushrn(1);e.cmp(r)>=0?(e.isub(r),o.isub(s)):(r.isub(e),s.isub(o))}return(i=0===e.cmpn(1)?o:s).cmpn(0)<0&&i.iadd(t),i},a.prototype.gcd=function(t){if(this.isZero())return t.abs();if(t.isZero())return this.abs();var e=this.clone(),r=t.clone();e.negative=0,r.negative=0;for(var n=0;e.isEven()&&r.isEven();n++)e.iushrn(1),r.iushrn(1);for(;;){for(;e.isEven();)e.iushrn(1);for(;r.isEven();)r.iushrn(1);var i=e.cmp(r);if(i<0){var a=e;e=r,r=a}else if(0===i||0===r.cmpn(1))break;e.isub(r)}return r.iushln(n)},a.prototype.invm=function(t){return this.egcd(t).a.umod(t)},a.prototype.isEven=function(){return 0==(1&this.words[0])},a.prototype.isOdd=function(){return 1==(1&this.words[0])},a.prototype.andln=function(t){return this.words[0]&t},a.prototype.bincn=function(t){n(\"number\"==typeof t);var e=t%26,r=(t-e)/26,i=1<<e;if(this.length<=r)return this._expand(r+1),this.words[r]|=i,this;for(var a=i,o=r;0!==a&&o<this.length;o++){var s=0|this.words[o];a=(s+=a)>>>26,s&=67108863,this.words[o]=s}return 0!==a&&(this.words[o]=a,this.length++),this},a.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},a.prototype.cmpn=function(t){var e,r=t<0;if(0!==this.negative&&!r)return-1;if(0===this.negative&&r)return 1;if(this.strip(),this.length>1)e=1;else{r&&(t=-t),n(t<=67108863,\"Number is too big\");var i=0|this.words[0];e=i===t?0:i<t?-1:1}return 0!==this.negative?0|-e:e},a.prototype.cmp=function(t){if(0!==this.negative&&0===t.negative)return-1;if(0===this.negative&&0!==t.negative)return 1;var e=this.ucmp(t);return 0!==this.negative?0|-e:e},a.prototype.ucmp=function(t){if(this.length>t.length)return 1;if(this.length<t.length)return-1;for(var e=0,r=this.length-1;r>=0;r--){var n=0|this.words[r],i=0|t.words[r];if(n!==i){n<i?e=-1:n>i&&(e=1);break}}return e},a.prototype.gtn=function(t){return 1===this.cmpn(t)},a.prototype.gt=function(t){return 1===this.cmp(t)},a.prototype.gten=function(t){return this.cmpn(t)>=0},a.prototype.gte=function(t){return this.cmp(t)>=0},a.prototype.ltn=function(t){return-1===this.cmpn(t)},a.prototype.lt=function(t){return-1===this.cmp(t)},a.prototype.lten=function(t){return this.cmpn(t)<=0},a.prototype.lte=function(t){return this.cmp(t)<=0},a.prototype.eqn=function(t){return 0===this.cmpn(t)},a.prototype.eq=function(t){return 0===this.cmp(t)},a.red=function(t){return new T(t)},a.prototype.toRed=function(t){return n(!this.red,\"Already a number in reduction context\"),n(0===this.negative,\"red works only with positives\"),t.convertTo(this)._forceRed(t)},a.prototype.fromRed=function(){return n(this.red,\"fromRed works only with numbers in reduction context\"),this.red.convertFrom(this)},a.prototype._forceRed=function(t){return this.red=t,this},a.prototype.forceRed=function(t){return n(!this.red,\"Already a number in reduction context\"),this._forceRed(t)},a.prototype.redAdd=function(t){return n(this.red,\"redAdd works only with red numbers\"),this.red.add(this,t)},a.prototype.redIAdd=function(t){return n(this.red,\"redIAdd works only with red numbers\"),this.red.iadd(this,t)},a.prototype.redSub=function(t){return n(this.red,\"redSub works only with red numbers\"),this.red.sub(this,t)},a.prototype.redISub=function(t){return n(this.red,\"redISub works only with red numbers\"),this.red.isub(this,t)},a.prototype.redShl=function(t){return n(this.red,\"redShl works only with red numbers\"),this.red.shl(this,t)},a.prototype.redMul=function(t){return n(this.red,\"redMul works only with red numbers\"),this.red._verify2(this,t),this.red.mul(this,t)},a.prototype.redIMul=function(t){return n(this.red,\"redMul works only with red numbers\"),this.red._verify2(this,t),this.red.imul(this,t)},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(t){return n(this.red&&!t.red,\"redPow(normalNum)\"),this.red._verify1(this),this.red.pow(this,t)};var y={k256:null,p224:null,p192:null,p25519:null};function v(t,e){this.name=t,this.p=new a(e,16),this.n=this.p.bitLength(),this.k=new a(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function x(){v.call(this,\"k256\",\"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f\")}function _(){v.call(this,\"p224\",\"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001\")}function b(){v.call(this,\"p192\",\"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff\")}function w(){v.call(this,\"25519\",\"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed\")}function T(t){if(\"string\"==typeof t){var e=a._prime(t);this.m=e.p,this.prime=e}else n(t.gtn(1),\"modulus must be greater than 1\"),this.m=t,this.prime=null}function k(t){T.call(this,t),this.shift=this.m.bitLength(),this.shift%26!=0&&(this.shift+=26-this.shift%26),this.r=new a(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}v.prototype._tmp=function(){var t=new a(null);return t.words=new Array(Math.ceil(this.n/13)),t},v.prototype.ireduce=function(t){var e,r=t;do{this.split(r,this.tmp),e=(r=(r=this.imulK(r)).iadd(this.tmp)).bitLength()}while(e>this.n);var n=e<this.n?-1:r.ucmp(this.p);return 0===n?(r.words[0]=0,r.length=1):n>0?r.isub(this.p):void 0!==r.strip?r.strip():r._strip(),r},v.prototype.split=function(t,e){t.iushrn(this.n,0,e)},v.prototype.imulK=function(t){return t.imul(this.k)},i(x,v),x.prototype.split=function(t,e){for(var r=4194303,n=Math.min(t.length,9),i=0;i<n;i++)e.words[i]=t.words[i];if(e.length=n,t.length<=9)return t.words[0]=0,void(t.length=1);var a=t.words[9];for(e.words[e.length++]=a&r,i=10;i<t.length;i++){var o=0|t.words[i];t.words[i-10]=(o&r)<<4|a>>>22,a=o}a>>>=22,t.words[i-10]=a,0===a&&t.length>10?t.length-=10:t.length-=9},x.prototype.imulK=function(t){t.words[t.length]=0,t.words[t.length+1]=0,t.length+=2;for(var e=0,r=0;r<t.length;r++){var n=0|t.words[r];e+=977*n,t.words[r]=67108863&e,e=64*n+(e/67108864|0)}return 0===t.words[t.length-1]&&(t.length--,0===t.words[t.length-1]&&t.length--),t},i(_,v),i(b,v),i(w,v),w.prototype.imulK=function(t){for(var e=0,r=0;r<t.length;r++){var n=19*(0|t.words[r])+e,i=67108863&n;n>>>=26,t.words[r]=i,e=n}return 0!==e&&(t.words[t.length++]=e),t},a._prime=function(t){if(y[t])return y[t];var e;if(\"k256\"===t)e=new x;else if(\"p224\"===t)e=new _;else if(\"p192\"===t)e=new b;else{if(\"p25519\"!==t)throw new Error(\"Unknown prime \"+t);e=new w}return y[t]=e,e},T.prototype._verify1=function(t){n(0===t.negative,\"red works only with positives\"),n(t.red,\"red works only with red numbers\")},T.prototype._verify2=function(t,e){n(0==(t.negative|e.negative),\"red works only with positives\"),n(t.red&&t.red===e.red,\"red works only with red numbers\")},T.prototype.imod=function(t){return this.prime?this.prime.ireduce(t)._forceRed(this):t.umod(this.m)._forceRed(this)},T.prototype.neg=function(t){return t.isZero()?t.clone():this.m.sub(t)._forceRed(this)},T.prototype.add=function(t,e){this._verify2(t,e);var r=t.add(e);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},T.prototype.iadd=function(t,e){this._verify2(t,e);var r=t.iadd(e);return r.cmp(this.m)>=0&&r.isub(this.m),r},T.prototype.sub=function(t,e){this._verify2(t,e);var r=t.sub(e);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},T.prototype.isub=function(t,e){this._verify2(t,e);var r=t.isub(e);return r.cmpn(0)<0&&r.iadd(this.m),r},T.prototype.shl=function(t,e){return this._verify1(t),this.imod(t.ushln(e))},T.prototype.imul=function(t,e){return this._verify2(t,e),this.imod(t.imul(e))},T.prototype.mul=function(t,e){return this._verify2(t,e),this.imod(t.mul(e))},T.prototype.isqr=function(t){return this.imul(t,t.clone())},T.prototype.sqr=function(t){return this.mul(t,t)},T.prototype.sqrt=function(t){if(t.isZero())return t.clone();var e=this.m.andln(3);if(n(e%2==1),3===e){var r=this.m.add(new a(1)).iushrn(2);return this.pow(t,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(),c=this.m.subn(1).iushrn(1),u=this.m.bitLength();for(u=new a(2*u*u).toRed(this);0!==this.pow(u,c).cmp(l);)u.redIAdd(l);for(var h=this.pow(u,i),f=this.pow(t,i.addn(1).iushrn(1)),p=this.pow(t,i),d=o;0!==p.cmp(s);){for(var m=p,g=0;0!==m.cmp(s);g++)m=m.redSqr();n(g<d);var y=this.pow(h,new a(1).iushln(d-g-1));f=f.redMul(y),h=y.redSqr(),p=p.redMul(h),d=g}return f},T.prototype.invm=function(t){var e=t._invmp(this.m);return 0!==e.negative?(e.negative=0,this.imod(e).redNeg()):this.imod(e)},T.prototype.pow=function(t,e){if(e.isZero())return new a(1).toRed(this);if(0===e.cmpn(1))return t.clone();var r=new Array(16);r[0]=new a(1).toRed(this),r[1]=t;for(var n=2;n<r.length;n++)r[n]=this.mul(r[n-1],t);var i=r[0],o=0,s=0,l=e.bitLength()%26;for(0===l&&(l=26),n=e.length-1;n>=0;n--){for(var c=e.words[n],u=l-1;u>=0;u--){var h=c>>u&1;i!==r[0]&&(i=this.sqr(i)),0!==h||0!==o?(o<<=1,o|=h,(4==++s||0===n&&0===u)&&(i=this.mul(i,r[o]),s=0,o=0)):s=0}l=26}return i},T.prototype.convertTo=function(t){var e=t.umod(this.m);return e===t?e.clone():e},T.prototype.convertFrom=function(t){var e=t.clone();return e.red=null,e},a.mont=function(t){return new k(t)},i(k,T),k.prototype.convertTo=function(t){return this.imod(t.ushln(this.shift))},k.prototype.convertFrom=function(t){var e=this.imod(t.mul(this.rinv));return e.red=null,e},k.prototype.imul=function(t,e){if(t.isZero()||e.isZero())return t.words[0]=0,t.length=1,t;var r=t.imul(e),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).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)},k.prototype.mul=function(t,e){if(t.isZero()||e.isZero())return new a(0)._forceRed(this);var r=t.mul(e),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)},k.prototype.invm=function(t){return this.imod(t._invmp(this.m).mul(this.r2))._forceRed(this)}}(t=r.nmd(t),this)},6204:function(t){\"use strict\";t.exports=function(t){var e,r,n,i=t.length,a=0;for(e=0;e<i;++e)a+=t[e].length;var o=new Array(a),s=0;for(e=0;e<i;++e){var l=t[e],c=l.length;for(r=0;r<c;++r){var u=o[s++]=new Array(c-1),h=0;for(n=0;n<c;++n)n!==r&&(u[h++]=l[n]);if(1&r){var f=u[1];u[1]=u[0],u[0]=f}}}return o}},6867:function(t,e,r){\"use strict\";t.exports=function(t,e,r){switch(arguments.length){case 1:return n=[],c(i=t,i,u,!0),n;case 2:return\"function\"==typeof e?c(t,t,e,!0):function(t,e){return n=[],c(t,e,u,!1),n}(t,e);case 3:return c(t,e,r,!1);default:throw new Error(\"box-intersect: Invalid arguments\")}var i};var n,i=r(1888),a=r(855),o=r(7150);function s(t,e){for(var r=0;r<t;++r)if(!(e[r]<=e[r+t]))return!0;return!1}function l(t,e,r,n){for(var i=0,a=0,o=0,l=t.length;o<l;++o){var c=t[o];if(!s(e,c)){for(var u=0;u<2*e;++u)r[i++]=c[u];n[a++]=o}}return a}function c(t,e,r,n){var s=t.length,c=e.length;if(!(s<=0||c<=0)){var u=t[0].length>>>1;if(!(u<=0)){var h,f=i.mallocDouble(2*u*s),p=i.mallocInt32(s);if((s=l(t,u,f,p))>0){if(1===u&&n)a.init(s),h=a.sweepComplete(u,r,0,s,f,p,0,s,f,p);else{var d=i.mallocDouble(2*u*c),m=i.mallocInt32(c);(c=l(e,u,d,m))>0&&(a.init(s+c),h=1===u?a.sweepBipartite(u,r,0,s,f,p,0,c,d,m):o(u,r,n,s,f,p,c,d,m),i.free(d),i.free(m))}i.free(f),i.free(p)}return h}}}function u(t,e){n.push([t,e])}},2455:function(t,e){\"use strict\";function r(t){return t?function(t,e,r,n,i,a,o,s,l,c,u){return i-n>l-s?function(t,e,r,n,i,a,o,s,l,c,u){for(var h=2*t,f=n,p=h*n;f<i;++f,p+=h){var d=a[e+p],m=a[e+p+t],g=o[f];t:for(var y=s,v=h*s;y<l;++y,v+=h){var x=c[e+v],_=c[e+v+t],b=u[y];if(!(_<d||m<x)){for(var w=e+1;w<t;++w){var T=a[w+p],k=a[w+t+p],A=c[w+v],M=c[w+t+v];if(k<A||M<T)continue t}var S=r(g,b);if(void 0!==S)return S}}}}(t,e,r,n,i,a,o,s,l,c,u):function(t,e,r,n,i,a,o,s,l,c,u){for(var h=2*t,f=s,p=h*s;f<l;++f,p+=h){var d=c[e+p],m=c[e+p+t],g=u[f];t:for(var y=n,v=h*n;y<i;++y,v+=h){var x=a[e+v],_=a[e+v+t],b=o[y];if(!(m<x||_<d)){for(var w=e+1;w<t;++w){var T=a[w+v],k=a[w+t+v],A=c[w+p],M=c[w+t+p];if(k<A||M<T)continue t}var S=r(b,g);if(void 0!==S)return S}}}}(t,e,r,n,i,a,o,s,l,c,u)}:function(t,e,r,n,i,a,o,s,l,c,u,h){return a-i>c-l?n?function(t,e,r,n,i,a,o,s,l,c,u){for(var h=2*t,f=n,p=h*n;f<i;++f,p+=h){var d=a[e+p],m=a[e+p+t],g=o[f];t:for(var y=s,v=h*s;y<l;++y,v+=h){var x=c[e+v],_=u[y];if(!(x<=d||m<x)){for(var b=e+1;b<t;++b){var w=a[b+p],T=a[b+t+p],k=c[b+v],A=c[b+t+v];if(T<k||A<w)continue t}var M=r(_,g);if(void 0!==M)return M}}}}(t,e,r,i,a,o,s,l,c,u,h):function(t,e,r,n,i,a,o,s,l,c,u){for(var h=2*t,f=n,p=h*n;f<i;++f,p+=h){var d=a[e+p],m=a[e+p+t],g=o[f];t:for(var y=s,v=h*s;y<l;++y,v+=h){var x=c[e+v],_=u[y];if(!(x<d||m<x)){for(var b=e+1;b<t;++b){var w=a[b+p],T=a[b+t+p],k=c[b+v],A=c[b+t+v];if(T<k||A<w)continue t}var M=r(g,_);if(void 0!==M)return M}}}}(t,e,r,i,a,o,s,l,c,u,h):n?function(t,e,r,n,i,a,o,s,l,c,u){for(var h=2*t,f=s,p=h*s;f<l;++f,p+=h){var d=c[e+p],m=u[f];t:for(var g=n,y=h*n;g<i;++g,y+=h){var v=a[e+y],x=a[e+y+t],_=o[g];if(!(d<=v||x<d)){for(var b=e+1;b<t;++b){var w=a[b+y],T=a[b+t+y],k=c[b+p],A=c[b+t+p];if(T<k||A<w)continue t}var M=r(m,_);if(void 0!==M)return M}}}}(t,e,r,i,a,o,s,l,c,u,h):function(t,e,r,n,i,a,o,s,l,c,u){for(var h=2*t,f=s,p=h*s;f<l;++f,p+=h){var d=c[e+p],m=u[f];t:for(var g=n,y=h*n;g<i;++g,y+=h){var v=a[e+y],x=a[e+y+t],_=o[g];if(!(d<v||x<d)){for(var b=e+1;b<t;++b){var w=a[b+y],T=a[b+t+y],k=c[b+p],A=c[b+t+p];if(T<k||A<w)continue t}var M=r(_,m);if(void 0!==M)return M}}}}(t,e,r,i,a,o,s,l,c,u,h)}}e.partial=r(!1),e.full=r(!0)},7150:function(t,e,r){\"use strict\";t.exports=function(t,e,r,a,u,S,E,C,L){!function(t,e){var r=8*i.log2(e+1)*(t+1)|0,a=i.nextPow2(_*r);w.length<a&&(n.free(w),w=n.mallocInt32(a));var o=i.nextPow2(b*r);T.length<o&&(n.free(T),T=n.mallocDouble(o))}(t,a+E);var I,P=0,z=2*t;for(k(P++,0,0,a,0,E,r?16:0,-1/0,1/0),r||k(P++,0,0,E,0,a,1,-1/0,1/0);P>0;){var O=(P-=1)*_,D=w[O],R=w[O+1],F=w[O+2],B=w[O+3],N=w[O+4],j=w[O+5],U=P*b,V=T[U],q=T[U+1],H=1&j,G=!!(16&j),Z=u,W=S,Y=C,X=L;if(H&&(Z=C,W=L,Y=u,X=S),!(2&j&&R>=(F=g(t,D,R,F,Z,W,q))||4&j&&(R=y(t,D,R,F,Z,W,V))>=F)){var $=F-R,J=N-B;if(G){if(t*$*($+J)<p){if(void 0!==(I=l.scanComplete(t,D,e,R,F,Z,W,B,N,Y,X)))return I;continue}}else{if(t*Math.min($,J)<h){if(void 0!==(I=o(t,D,e,H,R,F,Z,W,B,N,Y,X)))return I;continue}if(t*$*J<f){if(void 0!==(I=l.scanBipartite(t,D,e,H,R,F,Z,W,B,N,Y,X)))return I;continue}}var K=d(t,D,R,F,Z,W,V,q);if(R<K)if(t*(K-R)<h){if(void 0!==(I=s(t,D+1,e,R,K,Z,W,B,N,Y,X)))return I}else if(D===t-2){if(void 0!==(I=H?l.sweepBipartite(t,e,B,N,Y,X,R,K,Z,W):l.sweepBipartite(t,e,R,K,Z,W,B,N,Y,X)))return I}else k(P++,D+1,R,K,B,N,H,-1/0,1/0),k(P++,D+1,B,N,R,K,1^H,-1/0,1/0);if(K<F){var Q=c(t,D,B,N,Y,X),tt=Y[z*Q+D],et=m(t,D,Q,N,Y,X,tt);if(et<N&&k(P++,D,K,F,et,N,(4|H)+(G?16:0),tt,q),B<Q&&k(P++,D,K,F,B,Q,(2|H)+(G?16:0),V,tt),Q+1===et){if(void 0!==(I=G?M(t,D,e,K,F,Z,W,Q,Y,X[Q]):A(t,D,e,H,K,F,Z,W,Q,Y,X[Q])))return I}else if(Q<et){var rt;if(G){if(K<(rt=v(t,D,K,F,Z,W,tt))){var nt=m(t,D,K,rt,Z,W,tt);if(D===t-2){if(K<nt&&void 0!==(I=l.sweepComplete(t,e,K,nt,Z,W,Q,et,Y,X)))return I;if(nt<rt&&void 0!==(I=l.sweepBipartite(t,e,nt,rt,Z,W,Q,et,Y,X)))return I}else K<nt&&k(P++,D+1,K,nt,Q,et,16,-1/0,1/0),nt<rt&&(k(P++,D+1,nt,rt,Q,et,0,-1/0,1/0),k(P++,D+1,Q,et,nt,rt,1,-1/0,1/0))}}else K<(rt=H?x(t,D,K,F,Z,W,tt):v(t,D,K,F,Z,W,tt))&&(D===t-2?I=H?l.sweepBipartite(t,e,Q,et,Y,X,K,rt,Z,W):l.sweepBipartite(t,e,K,rt,Z,W,Q,et,Y,X):(k(P++,D+1,K,rt,Q,et,H,-1/0,1/0),k(P++,D+1,Q,et,K,rt,1^H,-1/0,1/0)))}}}}};var n=r(1888),i=r(8828),a=r(2455),o=a.partial,s=a.full,l=r(855),c=r(3545),u=r(8105),h=128,f=1<<22,p=1<<22,d=u(\"!(lo>=p0)&&!(p1>=hi)\"),m=u(\"lo===p0\"),g=u(\"lo<p0\"),y=u(\"hi<=p0\"),v=u(\"lo<=p0&&p0<=hi\"),x=u(\"lo<p0&&p0<=hi\"),_=6,b=2,w=n.mallocInt32(1024),T=n.mallocDouble(1024);function k(t,e,r,n,i,a,o,s,l){var c=_*t;w[c]=e,w[c+1]=r,w[c+2]=n,w[c+3]=i,w[c+4]=a,w[c+5]=o;var u=b*t;T[u]=s,T[u+1]=l}function A(t,e,r,n,i,a,o,s,l,c,u){var h=2*t,f=l*h,p=c[f+e];t:for(var d=i,m=i*h;d<a;++d,m+=h){var g=o[m+e],y=o[m+e+t];if(!(p<g||y<p||n&&p===g)){for(var v,x=s[d],_=e+1;_<t;++_){g=o[m+_],y=o[m+_+t];var b=c[f+_],w=c[f+_+t];if(y<b||w<g)continue t}if(void 0!==(v=n?r(u,x):r(x,u)))return v}}}function M(t,e,r,n,i,a,o,s,l,c){var u=2*t,h=s*u,f=l[h+e];t:for(var p=n,d=n*u;p<i;++p,d+=u){var m=o[p];if(m!==c){var g=a[d+e],y=a[d+e+t];if(!(f<g||y<f)){for(var v=e+1;v<t;++v){g=a[d+v],y=a[d+v+t];var x=l[h+v],_=l[h+v+t];if(y<x||_<g)continue t}var b=r(m,c);if(void 0!==b)return b}}}}},3545:function(t,e,r){\"use strict\";t.exports=function(t,e,r,o,s,l){if(o<=r+1)return r;for(var c=r,u=o,h=o+r>>>1,f=2*t,p=h,d=s[f*h+e];c<u;){if(u-c<i){a(t,e,c,u,s,l),d=s[f*h+e];break}var m=u-c,g=Math.random()*m+c|0,y=s[f*g+e],v=Math.random()*m+c|0,x=s[f*v+e],_=Math.random()*m+c|0,b=s[f*_+e];y<=x?b>=x?(p=v,d=x):y>=b?(p=g,d=y):(p=_,d=b):x>=b?(p=v,d=x):b>=y?(p=g,d=y):(p=_,d=b);for(var w=f*(u-1),T=f*p,k=0;k<f;++k,++w,++T){var A=s[w];s[w]=s[T],s[T]=A}var M=l[u-1];for(l[u-1]=l[p],l[p]=M,w=f*(u-1),T=f*(p=n(t,e,c,u-1,s,l,d)),k=0;k<f;++k,++w,++T)A=s[w],s[w]=s[T],s[T]=A;if(M=l[u-1],l[u-1]=l[p],l[p]=M,h<p){for(u=p-1;c<u&&s[f*(u-1)+e]===d;)u-=1;u+=1}else{if(!(p<h))break;for(c=p+1;c<u&&s[f*c+e]===d;)c+=1}}return n(t,e,r,h,s,l,s[f*h+e])};var n=r(8105)(\"lo<p0\"),i=8;function a(t,e,r,n,i,a){for(var o=2*t,s=o*(r+1)+e,l=r+1;l<n;++l,s+=o)for(var c=i[s],u=l,h=o*(l-1);u>r&&i[h+e]>c;--u,h-=o){for(var f=h,p=h+o,d=0;d<o;++d,++f,++p){var m=i[f];i[f]=i[p],i[p]=m}var g=a[u];a[u]=a[u-1],a[u-1]=g}}},8105:function(t){\"use strict\";t.exports=function(t){return e[t]};var e={\"lo===p0\":function(t,e,r,n,i,a,o){for(var s=2*t,l=s*r,c=l,u=r,h=e,f=r;n>f;++f,l+=s)if(i[l+h]===o)if(u===f)u+=1,c+=s;else{for(var p=0;s>p;++p){var d=i[l+p];i[l+p]=i[c],i[c++]=d}var m=a[f];a[f]=a[u],a[u++]=m}return u},\"lo<p0\":function(t,e,r,n,i,a,o){for(var s=2*t,l=s*r,c=l,u=r,h=e,f=r;n>f;++f,l+=s)if(i[l+h]<o)if(u===f)u+=1,c+=s;else{for(var p=0;s>p;++p){var d=i[l+p];i[l+p]=i[c],i[c++]=d}var m=a[f];a[f]=a[u],a[u++]=m}return u},\"lo<=p0\":function(t,e,r,n,i,a,o){for(var s=2*t,l=s*r,c=l,u=r,h=t+e,f=r;n>f;++f,l+=s)if(i[l+h]<=o)if(u===f)u+=1,c+=s;else{for(var p=0;s>p;++p){var d=i[l+p];i[l+p]=i[c],i[c++]=d}var m=a[f];a[f]=a[u],a[u++]=m}return u},\"hi<=p0\":function(t,e,r,n,i,a,o){for(var s=2*t,l=s*r,c=l,u=r,h=t+e,f=r;n>f;++f,l+=s)if(i[l+h]<=o)if(u===f)u+=1,c+=s;else{for(var p=0;s>p;++p){var d=i[l+p];i[l+p]=i[c],i[c++]=d}var m=a[f];a[f]=a[u],a[u++]=m}return u},\"lo<p0&&p0<=hi\":function(t,e,r,n,i,a,o){for(var s=2*t,l=s*r,c=l,u=r,h=e,f=t+e,p=r;n>p;++p,l+=s){var d=i[l+h],m=i[l+f];if(d<o&&o<=m)if(u===p)u+=1,c+=s;else{for(var g=0;s>g;++g){var y=i[l+g];i[l+g]=i[c],i[c++]=y}var v=a[p];a[p]=a[u],a[u++]=v}}return u},\"lo<=p0&&p0<=hi\":function(t,e,r,n,i,a,o){for(var s=2*t,l=s*r,c=l,u=r,h=e,f=t+e,p=r;n>p;++p,l+=s){var d=i[l+h],m=i[l+f];if(d<=o&&o<=m)if(u===p)u+=1,c+=s;else{for(var g=0;s>g;++g){var y=i[l+g];i[l+g]=i[c],i[c++]=y}var v=a[p];a[p]=a[u],a[u++]=v}}return u},\"!(lo>=p0)&&!(p1>=hi)\":function(t,e,r,n,i,a,o,s){for(var l=2*t,c=l*r,u=c,h=r,f=e,p=t+e,d=r;n>d;++d,c+=l){var m=i[c+f],g=i[c+p];if(!(m>=o||s>=g))if(h===d)h+=1,u+=l;else{for(var y=0;l>y;++y){var v=i[c+y];i[c+y]=i[u],i[u++]=v}var x=a[d];a[d]=a[h],a[h++]=x}}return h}}},1811:function(t){\"use strict\";t.exports=function(t,n){n<=4*e?r(0,n-1,t):c(0,n-1,t)};var e=32;function r(t,e,r){for(var n=2*(t+1),i=t+1;i<=e;++i){for(var a=r[n++],o=r[n++],s=i,l=n-2;s-- >t;){var c=r[l-2],u=r[l-1];if(c<a)break;if(c===a&&u<o)break;r[l]=c,r[l+1]=u,l-=2}r[l]=a,r[l+1]=o}}function n(t,e,r){e*=2;var n=r[t*=2],i=r[t+1];r[t]=r[e],r[t+1]=r[e+1],r[e]=n,r[e+1]=i}function i(t,e,r){e*=2,r[t*=2]=r[e],r[t+1]=r[e+1]}function a(t,e,r,n){e*=2,r*=2;var i=n[t*=2],a=n[t+1];n[t]=n[e],n[t+1]=n[e+1],n[e]=n[r],n[e+1]=n[r+1],n[r]=i,n[r+1]=a}function o(t,e,r,n,i){e*=2,i[t*=2]=i[e],i[e]=r,i[t+1]=i[e+1],i[e+1]=n}function s(t,e,r){e*=2;var n=r[t*=2],i=r[e];return!(n<i)&&(n!==i||r[t+1]>r[e+1])}function l(t,e,r,n){var i=n[t*=2];return i<e||i===e&&n[t+1]<r}function c(t,u,h){var f=(u-t+1)/6|0,p=t+f,d=u-f,m=t+u>>1,g=m-f,y=m+f,v=p,x=g,_=m,b=y,w=d,T=t+1,k=u-1,A=0;s(v,x,h)&&(A=v,v=x,x=A),s(b,w,h)&&(A=b,b=w,w=A),s(v,_,h)&&(A=v,v=_,_=A),s(x,_,h)&&(A=x,x=_,_=A),s(v,b,h)&&(A=v,v=b,b=A),s(_,b,h)&&(A=_,_=b,b=A),s(x,w,h)&&(A=x,x=w,w=A),s(x,_,h)&&(A=x,x=_,_=A),s(b,w,h)&&(A=b,b=w,w=A);for(var M=h[2*x],S=h[2*x+1],E=h[2*b],C=h[2*b+1],L=2*v,I=2*_,P=2*w,z=2*p,O=2*m,D=2*d,R=0;R<2;++R){var F=h[L+R],B=h[I+R],N=h[P+R];h[z+R]=F,h[O+R]=B,h[D+R]=N}i(g,t,h),i(y,u,h);for(var j=T;j<=k;++j)if(l(j,M,S,h))j!==T&&n(j,T,h),++T;else if(!l(j,E,C,h))for(;;){if(l(k,E,C,h)){l(k,M,S,h)?(a(j,T,k,h),++T,--k):(n(j,k,h),--k);break}if(--k<j)break}o(t,T-1,M,S,h),o(u,k+1,E,C,h),T-2-t<=e?r(t,T-2,h):c(t,T-2,h),u-(k+2)<=e?r(k+2,u,h):c(k+2,u,h),k-T<=e?r(T,k,h):c(T,k,h)}},855:function(t,e,r){\"use strict\";t.exports={init:function(t){var e=i.nextPow2(t);l.length<e&&(n.free(l),l=n.mallocInt32(e)),c.length<e&&(n.free(c),c=n.mallocInt32(e)),u.length<e&&(n.free(u),u=n.mallocInt32(e)),h.length<e&&(n.free(h),h=n.mallocInt32(e)),f.length<e&&(n.free(f),f=n.mallocInt32(e)),p.length<e&&(n.free(p),p=n.mallocInt32(e));var r=8*e;d.length<r&&(n.free(d),d=n.mallocDouble(r))},sweepBipartite:function(t,e,r,n,i,s,f,p,y,v){for(var x=0,_=2*t,b=t-1,w=_-1,T=r;T<n;++T){var k=s[T],A=_*T;d[x++]=i[A+b],d[x++]=-(k+1),d[x++]=i[A+w],d[x++]=k}for(T=f;T<p;++T){k=v[T]+o;var M=_*T;d[x++]=y[M+b],d[x++]=-k,d[x++]=y[M+w],d[x++]=k}var S=x>>>1;a(d,S);var E=0,C=0;for(T=0;T<S;++T){var L=0|d[2*T+1];if(L>=o)m(u,h,C--,L=L-o|0);else if(L>=0)m(l,c,E--,L);else if(L<=-o){L=-L-o|0;for(var I=0;I<E;++I)if(void 0!==(P=e(l[I],L)))return P;g(u,h,C++,L)}else{for(L=-L-1|0,I=0;I<C;++I){var P;if(void 0!==(P=e(L,u[I])))return P}g(l,c,E++,L)}}},sweepComplete:function(t,e,r,n,i,o,s,y,v,x){for(var _=0,b=2*t,w=t-1,T=b-1,k=r;k<n;++k){var A=o[k]+1<<1,M=b*k;d[_++]=i[M+w],d[_++]=-A,d[_++]=i[M+T],d[_++]=A}for(k=s;k<y;++k){A=x[k]+1<<1;var S=b*k;d[_++]=v[S+w],d[_++]=1|-A,d[_++]=v[S+T],d[_++]=1|A}var E=_>>>1;a(d,E);var C=0,L=0,I=0;for(k=0;k<E;++k){var P=0|d[2*k+1],z=1&P;if(k<E-1&&P>>1==d[2*k+3]>>1&&(z=2,k+=1),P<0){for(var O=-(P>>1)-1,D=0;D<I;++D)if(void 0!==(R=e(f[D],O)))return R;if(0!==z)for(D=0;D<C;++D)if(void 0!==(R=e(l[D],O)))return R;if(1!==z)for(D=0;D<L;++D){var R;if(void 0!==(R=e(u[D],O)))return R}0===z?g(l,c,C++,O):1===z?g(u,h,L++,O):2===z&&g(f,p,I++,O)}else O=(P>>1)-1,0===z?m(l,c,C--,O):1===z?m(u,h,L--,O):2===z&&m(f,p,I--,O)}},scanBipartite:function(t,e,r,n,i,s,u,h,f,p,y,v){var x=0,_=2*t,b=e,w=e+t,T=1,k=1;n?k=o:T=o;for(var A=i;A<s;++A){var M=A+T,S=_*A;d[x++]=u[S+b],d[x++]=-M,d[x++]=u[S+w],d[x++]=M}for(A=f;A<p;++A){M=A+k;var E=_*A;d[x++]=y[E+b],d[x++]=-M}var C=x>>>1;a(d,C);var L=0;for(A=0;A<C;++A){var I=0|d[2*A+1];if(I<0){var P=!1;if((M=-I)>=o?(P=!n,M-=o):(P=!!n,M-=1),P)g(l,c,L++,M);else{var z=v[M],O=_*M,D=y[O+e+1],R=y[O+e+1+t];t:for(var F=0;F<L;++F){var B=l[F],N=_*B;if(!(R<u[N+e+1]||u[N+e+1+t]<D)){for(var j=e+2;j<t;++j)if(y[O+j+t]<u[N+j]||u[N+j+t]<y[O+j])continue t;var U,V=h[B];if(void 0!==(U=n?r(z,V):r(V,z)))return U}}}}else m(l,c,L--,I-T)}},scanComplete:function(t,e,r,n,i,s,c,u,h,f,p){for(var m=0,g=2*t,y=e,v=e+t,x=n;x<i;++x){var _=x+o,b=g*x;d[m++]=s[b+y],d[m++]=-_,d[m++]=s[b+v],d[m++]=_}for(x=u;x<h;++x){_=x+1;var w=g*x;d[m++]=f[w+y],d[m++]=-_}var T=m>>>1;a(d,T);var k=0;for(x=0;x<T;++x){var A=0|d[2*x+1];if(A<0)if((_=-A)>=o)l[k++]=_-o;else{var M=p[_-=1],S=g*_,E=f[S+e+1],C=f[S+e+1+t];t:for(var L=0;L<k;++L){var I=l[L],P=c[I];if(P===M)break;var z=g*I;if(!(C<s[z+e+1]||s[z+e+1+t]<E)){for(var O=e+2;O<t;++O)if(f[S+O+t]<s[z+O]||s[z+O+t]<f[S+O])continue t;var D=r(P,M);if(void 0!==D)return D}}}else{for(_=A-o,L=k-1;L>=0;--L)if(l[L]===_){for(O=L+1;O<k;++O)l[O-1]=l[O];break}--k}}}};var n=r(1888),i=r(8828),a=r(1811),o=1<<28,s=1024,l=n.mallocInt32(s),c=n.mallocInt32(s),u=n.mallocInt32(s),h=n.mallocInt32(s),f=n.mallocInt32(s),p=n.mallocInt32(s),d=n.mallocDouble(8192);function m(t,e,r,n){var i=e[n],a=t[r-1];t[i]=a,e[a]=i}function g(t,e,r,n){t[r]=n,e[n]=r}},2538:function(t,e,r){\"use strict\";var n=r(8902),i=r(5542),a=r(2272),o=r(5023);function s(t){return[Math.min(t[0],t[1]),Math.max(t[0],t[1])]}function l(t,e){return t[0]-e[0]||t[1]-e[1]}function c(t,e,r){return e in t?t[e]:r}t.exports=function(t,e,r){Array.isArray(e)?(r=r||{},e=e||[]):(r=e||{},e=[]);var u=!!c(r,\"delaunay\",!0),h=!!c(r,\"interior\",!0),f=!!c(r,\"exterior\",!0),p=!!c(r,\"infinity\",!1);if(!h&&!f||0===t.length)return[];var d=n(t,e);if(u||h!==f||p){for(var m=i(t.length,function(t){return t.map(s).sort(l)}(e)),g=0;g<d.length;++g){var y=d[g];m.addTriangle(y[0],y[1],y[2])}return u&&a(t,m),f?h?p?o(m,0,p):m.cells():o(m,1,p):o(m,-1)}return d}},2272:function(t,e,r){\"use strict\";var n=r(2646)[4];function i(t,e,r,i,a,o){var s=e.opposite(i,a);if(!(s<0)){if(a<i){var l=i;i=a,a=l,l=o,o=s,s=l}e.isConstraint(i,a)||n(t[i],t[a],t[o],t[s])<0&&r.push(i,a)}}r(2478),t.exports=function(t,e){for(var r=[],a=t.length,o=e.stars,s=0;s<a;++s)for(var l=o[s],c=1;c<l.length;c+=2)if(!((p=l[c])<s||e.isConstraint(s,p))){for(var u=l[c-1],h=-1,f=1;f<l.length;f+=2)if(l[f-1]===p){h=l[f];break}h<0||n(t[s],t[p],t[u],t[h])<0&&r.push(s,p)}for(;r.length>0;){for(var p=r.pop(),d=(u=-1,h=-1,l=o[s=r.pop()],1);d<l.length;d+=2){var m=l[d-1],g=l[d];m===p?h=g:g===p&&(u=m)}u<0||h<0||n(t[s],t[p],t[u],t[h])>=0||(e.flip(s,p),i(t,e,r,u,s,h),i(t,e,r,s,h,u),i(t,e,r,h,p,u),i(t,e,r,p,u,h))}}},5023:function(t,e,r){\"use strict\";var n,i=r(2478);function a(t,e,r,n,i,a,o){this.cells=t,this.neighbor=e,this.flags=n,this.constraint=r,this.active=i,this.next=a,this.boundary=o}function o(t,e){return t[0]-e[0]||t[1]-e[1]||t[2]-e[2]}t.exports=function(t,e,r){var n=function(t,e){for(var r=t.cells(),n=r.length,i=0;i<n;++i){var s=(y=r[i])[0],l=y[1],c=y[2];l<c?l<s&&(y[0]=l,y[1]=c,y[2]=s):c<s&&(y[0]=c,y[1]=s,y[2]=l)}r.sort(o);var u=new Array(n);for(i=0;i<u.length;++i)u[i]=0;var h=[],f=[],p=new Array(3*n),d=new Array(3*n),m=null;e&&(m=[]);var g=new a(r,p,d,u,h,f,m);for(i=0;i<n;++i)for(var y=r[i],v=0;v<3;++v){s=y[v],l=y[(v+1)%3];var x=p[3*i+v]=g.locate(l,s,t.opposite(l,s)),_=d[3*i+v]=t.isConstraint(s,l);x<0&&(_?f.push(i):(h.push(i),u[i]=1),e&&m.push([l,s,-1]))}return g}(t,r);if(0===e)return r?n.cells.concat(n.boundary):n.cells;for(var i=1,s=n.active,l=n.next,c=n.flags,u=n.cells,h=n.constraint,f=n.neighbor;s.length>0||l.length>0;){for(;s.length>0;){var p=s.pop();if(c[p]!==-i){c[p]=i,u[p];for(var d=0;d<3;++d){var m=f[3*p+d];m>=0&&0===c[m]&&(h[3*p+d]?l.push(m):(s.push(m),c[m]=i))}}}var g=l;l=s,s=g,l.length=0,i=-i}var y=function(t,e,r){for(var n=0,i=0;i<t.length;++i)e[i]===r&&(t[n++]=t[i]);return t.length=n,t}(u,c,e);return r?y.concat(n.boundary):y},a.prototype.locate=(n=[0,0,0],function(t,e,r){var a=t,s=e,l=r;return e<r?e<t&&(a=e,s=r,l=t):r<t&&(a=r,s=t,l=e),a<0?-1:(n[0]=a,n[1]=s,n[2]=l,i.eq(this.cells,n,o))})},8902:function(t,e,r){\"use strict\";var n=r(2478),i=r(3250)[3];function a(t,e,r,n,i){this.a=t,this.b=e,this.idx=r,this.lowerIds=n,this.upperIds=i}function o(t,e,r,n){this.a=t,this.b=e,this.type=r,this.idx=n}function s(t,e){var r=t.a[0]-e.a[0]||t.a[1]-e.a[1]||t.type-e.type;return r||(0!==t.type&&(r=i(t.a,t.b,e.b))?r:t.idx-e.idx)}function l(t,e){return i(t.a,t.b,e)}function c(t,e,r,a,o){for(var s=n.lt(e,a,l),c=n.gt(e,a,l),u=s;u<c;++u){for(var h=e[u],f=h.lowerIds,p=f.length;p>1&&i(r[f[p-2]],r[f[p-1]],a)>0;)t.push([f[p-1],f[p-2],o]),p-=1;f.length=p,f.push(o);var d=h.upperIds;for(p=d.length;p>1&&i(r[d[p-2]],r[d[p-1]],a)<0;)t.push([d[p-2],d[p-1],o]),p-=1;d.length=p,d.push(o)}}function u(t,e){var r;return(r=t.a[0]<e.a[0]?i(t.a,t.b,e.a):i(e.b,e.a,t.a))?r:(r=e.b[0]<t.b[0]?i(t.a,t.b,e.b):i(e.b,e.a,t.b))||t.idx-e.idx}function h(t,e,r){var i=n.le(t,r,u),o=t[i],s=o.upperIds,l=s[s.length-1];o.upperIds=[l],t.splice(i+1,0,new a(r.a,r.b,r.idx,[l],s))}function f(t,e,r){var i=r.a;r.a=r.b,r.b=i;var a=n.eq(t,r,u),o=t[a];t[a-1].upperIds=o.upperIds,t.splice(a,1)}t.exports=function(t,e){for(var r=t.length,n=e.length,i=[],l=0;l<r;++l)i.push(new o(t[l],null,0,l));for(l=0;l<n;++l){var u=e[l],p=t[u[0]],d=t[u[1]];p[0]<d[0]?i.push(new o(p,d,2,l),new o(d,p,1,l)):p[0]>d[0]&&i.push(new o(d,p,2,l),new o(p,d,1,l))}i.sort(s);for(var m=i[0].a[0]-(1+Math.abs(i[0].a[0]))*Math.pow(2,-52),g=[new a([m,1],[m,0],-1,[],[],[],[])],y=[],v=(l=0,i.length);l<v;++l){var x=i[l],_=x.type;0===_?c(y,g,t,x.a,x.idx):2===_?h(g,0,x):f(g,0,x)}return y}},5542:function(t,e,r){\"use strict\";var n=r(2478);function i(t,e){this.stars=t,this.edges=e}t.exports=function(t,e){for(var r=new Array(t),n=0;n<t;++n)r[n]=[];return new i(r,e)};var a=i.prototype;function o(t,e,r){for(var n=1,i=t.length;n<i;n+=2)if(t[n-1]===e&&t[n]===r)return t[n-1]=t[i-2],t[n]=t[i-1],void(t.length=i-2)}a.isConstraint=function(){var t=[0,0];function e(t,e){return t[0]-e[0]||t[1]-e[1]}return function(r,i){return t[0]=Math.min(r,i),t[1]=Math.max(r,i),n.eq(this.edges,t,e)>=0}}(),a.removeTriangle=function(t,e,r){var n=this.stars;o(n[t],e,r),o(n[e],r,t),o(n[r],t,e)},a.addTriangle=function(t,e,r){var n=this.stars;n[t].push(e,r),n[e].push(r,t),n[r].push(t,e)},a.opposite=function(t,e){for(var r=this.stars[e],n=1,i=r.length;n<i;n+=2)if(r[n]===t)return r[n-1];return-1},a.flip=function(t,e){var r=this.opposite(t,e),n=this.opposite(e,t);this.removeTriangle(t,e,r),this.removeTriangle(e,t,n),this.addTriangle(t,n,r),this.addTriangle(e,r,n)},a.edges=function(){for(var t=this.stars,e=[],r=0,n=t.length;r<n;++r)for(var i=t[r],a=0,o=i.length;a<o;a+=2)e.push([i[a],i[a+1]]);return e},a.cells=function(){for(var t=this.stars,e=[],r=0,n=t.length;r<n;++r)for(var i=t[r],a=0,o=i.length;a<o;a+=2){var s=i[a],l=i[a+1];r<Math.min(s,l)&&e.push([r,s,l])}return e}},2419:function(t){\"use strict\";t.exports=function(t){for(var e=1,r=1;r<t.length;++r)for(var n=0;n<r;++n)if(t[r]<t[n])e=-e;else if(t[n]===t[r])return 0;return e}},3628:function(t,e,r){\"use strict\";var n=r(1338),i=r(727);function a(t,e){for(var r=0,n=t.length,i=0;i<n;++i)r+=t[i]*e[i];return r}function o(t){var e=t.length;if(0===e)return[];t[0].length;var r=n([t.length+1,t.length+1],1),o=n([t.length+1],1);r[e][e]=0;for(var s=0;s<e;++s){for(var l=0;l<=s;++l)r[l][s]=r[s][l]=2*a(t[s],t[l]);o[s]=a(t[s],t[s])}var c=i(r,o),u=0,h=c[e+1];for(s=0;s<h.length;++s)u+=h[s];var f=new Array(e);for(s=0;s<e;++s){h=c[s];var p=0;for(l=0;l<h.length;++l)p+=h[l];f[s]=p/u}return f}function s(t){if(0===t.length)return[];for(var e=t[0].length,r=n([e]),i=o(t),a=0;a<t.length;++a)for(var s=0;s<e;++s)r[s]+=t[a][s]*i[a];return r}s.barycenetric=o,t.exports=s},6037:function(t,e,r){t.exports=function(t){for(var e=n(t),r=0,i=0;i<t.length;++i)for(var a=t[i],o=0;o<e.length;++o)r+=Math.pow(a[o]-e[o],2);return Math.sqrt(r/t.length)};var n=r(3628)},332:function(t,e,r){\"use strict\";t.exports=function(t,e,r){var n;if(r){n=e;for(var i=new Array(e.length),a=0;a<e.length;++a){var o=e[a];i[a]=[o[0],o[1],r[a]]}e=i}for(var s=function(t,e,r){var n=d(t,[],p(t));return y(e,n,r),!!n}(t,e,!!r);v(t,e,!!r);)s=!0;if(r&&s)for(n.length=0,r.length=0,a=0;a<e.length;++a)o=e[a],n.push([o[0],o[1]]),r.push(o[2]);return s};var n=r(1755),i=r(6867),a=r(1125),o=r(7842),s=r(1318),l=r(946),c=r(5838),u=r(1278),h=r(3637);function f(t){var e=l(t);return[u(e,-1/0),u(e,1/0)]}function p(t){for(var e=new Array(t.length),r=0;r<t.length;++r){var n=t[r];e[r]=[u(n[0],-1/0),u(n[1],-1/0),u(n[0],1/0),u(n[1],1/0)]}return e}function d(t,e,r){for(var a=e.length,o=new n(a),s=[],l=0;l<e.length;++l){var c=e[l],h=f(c[0]),p=f(c[1]);s.push([u(h[0],-1/0),u(p[0],-1/0),u(h[1],1/0),u(p[1],1/0)])}i(s,(function(t,e){o.link(t,e)}));var d=!0,m=new Array(a);for(l=0;l<a;++l)(y=o.find(l))!==l&&(d=!1,t[y]=[Math.min(t[l][0],t[y][0]),Math.min(t[l][1],t[y][1])]);if(d)return null;var g=0;for(l=0;l<a;++l){var y;(y=o.find(l))===l?(m[l]=g,t[g++]=t[l]):m[l]=-1}for(t.length=g,l=0;l<a;++l)m[l]<0&&(m[l]=m[o.find(l)]);return m}function m(t,e){return t[0]-e[0]||t[1]-e[1]}function g(t,e){return t[0]-e[0]||t[1]-e[1]||(t[2]<e[2]?-1:t[2]>e[2]?1:0)}function y(t,e,r){if(0!==t.length){if(e)for(var n=0;n<t.length;++n){var i=e[(o=t[n])[0]],a=e[o[1]];o[0]=Math.min(i,a),o[1]=Math.max(i,a)}else for(n=0;n<t.length;++n){var o;i=(o=t[n])[0],a=o[1],o[0]=Math.min(i,a),o[1]=Math.max(i,a)}r?t.sort(g):t.sort(m);var s=1;for(n=1;n<t.length;++n){var l=t[n-1],c=t[n];(c[0]!==l[0]||c[1]!==l[1]||r&&c[2]!==l[2])&&(t[s++]=c)}t.length=s}}function v(t,e,r){var n=function(t,e){for(var r=new Array(e.length),n=0;n<e.length;++n){var i=e[n],a=t[i[0]],o=t[i[1]];r[n]=[u(Math.min(a[0],o[0]),-1/0),u(Math.min(a[1],o[1]),-1/0),u(Math.max(a[0],o[0]),1/0),u(Math.max(a[1],o[1]),1/0)]}return r}(t,e),f=function(t,e,r){var n=[];return i(r,(function(r,i){var o=e[r],s=e[i];if(o[0]!==s[0]&&o[0]!==s[1]&&o[1]!==s[0]&&o[1]!==s[1]){var l=t[o[0]],c=t[o[1]],u=t[s[0]],h=t[s[1]];a(l,c,u,h)&&n.push([r,i])}})),n}(t,e,n),m=function(t,e,r,n){var o=[];return i(r,n,(function(r,n){var i=e[r];if(i[0]!==n&&i[1]!==n){var s=t[n],l=t[i[0]],c=t[i[1]];a(l,c,s,s)&&o.push([r,n])}})),o}(t,e,n,p(t)),g=function(t,e,r,n,i){var a,u,f=t.map((function(t){return[o(t[0]),o(t[1])]}));for(a=0;a<r.length;++a){var p=r[a];u=p[0];var d=p[1],m=e[u],g=e[d],y=h(c(t[m[0]]),c(t[m[1]]),c(t[g[0]]),c(t[g[1]]));if(y){var v=t.length;t.push([l(y[0]),l(y[1])]),f.push(y),n.push([u,v],[d,v])}}for(n.sort((function(t,e){if(t[0]!==e[0])return t[0]-e[0];var r=f[t[1]],n=f[e[1]];return s(r[0],n[0])||s(r[1],n[1])})),a=n.length-1;a>=0;--a){var x=e[u=(S=n[a])[0]],_=x[0],b=x[1],w=t[_],T=t[b];if((w[0]-T[0]||w[1]-T[1])<0){var k=_;_=b,b=k}x[0]=_;var A,M=x[1]=S[1];for(i&&(A=x[2]);a>0&&n[a-1][0]===u;){var S,E=(S=n[--a])[1];i?e.push([M,E,A]):e.push([M,E]),M=E}i?e.push([M,b,A]):e.push([M,b])}return f}(t,e,f,m,r),v=d(t,g);return y(e,v,r),!!v||f.length>0||m.length>0}},3637:function(t,e,r){\"use strict\";t.exports=function(t,e,r,n){var a=s(e,t),h=s(n,r),f=u(a,h);if(0===o(f))return null;var p=u(h,s(t,r)),d=i(p,f),m=c(a,d);return l(t,m)};var n=r(6504),i=r(8697),a=r(5572),o=r(7721),s=r(544),l=r(2653),c=r(8987);function u(t,e){return a(n(t[0],e[1]),n(t[1],e[0]))}},3642:function(t){t.exports={jet:[{index:0,rgb:[0,0,131]},{index:.125,rgb:[0,60,170]},{index:.375,rgb:[5,255,255]},{index:.625,rgb:[255,255,0]},{index:.875,rgb:[250,0,0]},{index:1,rgb:[128,0,0]}],hsv:[{index:0,rgb:[255,0,0]},{index:.169,rgb:[253,255,2]},{index:.173,rgb:[247,255,2]},{index:.337,rgb:[0,252,4]},{index:.341,rgb:[0,252,10]},{index:.506,rgb:[1,249,255]},{index:.671,rgb:[2,0,253]},{index:.675,rgb:[8,0,253]},{index:.839,rgb:[255,0,251]},{index:.843,rgb:[255,0,245]},{index:1,rgb:[255,0,6]}],hot:[{index:0,rgb:[0,0,0]},{index:.3,rgb:[230,0,0]},{index:.6,rgb:[255,210,0]},{index:1,rgb:[255,255,255]}],spring:[{index:0,rgb:[255,0,255]},{index:1,rgb:[255,255,0]}],summer:[{index:0,rgb:[0,128,102]},{index:1,rgb:[255,255,102]}],autumn:[{index:0,rgb:[255,0,0]},{index:1,rgb:[255,255,0]}],winter:[{index:0,rgb:[0,0,255]},{index:1,rgb:[0,255,128]}],bone:[{index:0,rgb:[0,0,0]},{index:.376,rgb:[84,84,116]},{index:.753,rgb:[169,200,200]},{index:1,rgb:[255,255,255]}],copper:[{index:0,rgb:[0,0,0]},{index:.804,rgb:[255,160,102]},{index:1,rgb:[255,199,127]}],greys:[{index:0,rgb:[0,0,0]},{index:1,rgb:[255,255,255]}],yignbu:[{index:0,rgb:[8,29,88]},{index:.125,rgb:[37,52,148]},{index:.25,rgb:[34,94,168]},{index:.375,rgb:[29,145,192]},{index:.5,rgb:[65,182,196]},{index:.625,rgb:[127,205,187]},{index:.75,rgb:[199,233,180]},{index:.875,rgb:[237,248,217]},{index:1,rgb:[255,255,217]}],greens:[{index:0,rgb:[0,68,27]},{index:.125,rgb:[0,109,44]},{index:.25,rgb:[35,139,69]},{index:.375,rgb:[65,171,93]},{index:.5,rgb:[116,196,118]},{index:.625,rgb:[161,217,155]},{index:.75,rgb:[199,233,192]},{index:.875,rgb:[229,245,224]},{index:1,rgb:[247,252,245]}],yiorrd:[{index:0,rgb:[128,0,38]},{index:.125,rgb:[189,0,38]},{index:.25,rgb:[227,26,28]},{index:.375,rgb:[252,78,42]},{index:.5,rgb:[253,141,60]},{index:.625,rgb:[254,178,76]},{index:.75,rgb:[254,217,118]},{index:.875,rgb:[255,237,160]},{index:1,rgb:[255,255,204]}],bluered:[{index:0,rgb:[0,0,255]},{index:1,rgb:[255,0,0]}],rdbu:[{index:0,rgb:[5,10,172]},{index:.35,rgb:[106,137,247]},{index:.5,rgb:[190,190,190]},{index:.6,rgb:[220,170,132]},{index:.7,rgb:[230,145,90]},{index:1,rgb:[178,10,28]}],picnic:[{index:0,rgb:[0,0,255]},{index:.1,rgb:[51,153,255]},{index:.2,rgb:[102,204,255]},{index:.3,rgb:[153,204,255]},{index:.4,rgb:[204,204,255]},{index:.5,rgb:[255,255,255]},{index:.6,rgb:[255,204,255]},{index:.7,rgb:[255,153,255]},{index:.8,rgb:[255,102,204]},{index:.9,rgb:[255,102,102]},{index:1,rgb:[255,0,0]}],rainbow:[{index:0,rgb:[150,0,90]},{index:.125,rgb:[0,0,200]},{index:.25,rgb:[0,25,255]},{index:.375,rgb:[0,152,255]},{index:.5,rgb:[44,255,150]},{index:.625,rgb:[151,255,0]},{index:.75,rgb:[255,234,0]},{index:.875,rgb:[255,111,0]},{index:1,rgb:[255,0,0]}],portland:[{index:0,rgb:[12,51,131]},{index:.25,rgb:[10,136,186]},{index:.5,rgb:[242,211,56]},{index:.75,rgb:[242,143,56]},{index:1,rgb:[217,30,30]}],blackbody:[{index:0,rgb:[0,0,0]},{index:.2,rgb:[230,0,0]},{index:.4,rgb:[230,210,0]},{index:.7,rgb:[255,255,255]},{index:1,rgb:[160,200,255]}],earth:[{index:0,rgb:[0,0,130]},{index:.1,rgb:[0,180,180]},{index:.2,rgb:[40,210,40]},{index:.4,rgb:[230,230,50]},{index:.6,rgb:[120,70,20]},{index:1,rgb:[255,255,255]}],electric:[{index:0,rgb:[0,0,0]},{index:.15,rgb:[30,0,100]},{index:.4,rgb:[120,0,100]},{index:.6,rgb:[160,90,0]},{index:.8,rgb:[230,200,0]},{index:1,rgb:[255,250,220]}],alpha:[{index:0,rgb:[255,255,255,0]},{index:1,rgb:[255,255,255,1]}],viridis:[{index:0,rgb:[68,1,84]},{index:.13,rgb:[71,44,122]},{index:.25,rgb:[59,81,139]},{index:.38,rgb:[44,113,142]},{index:.5,rgb:[33,144,141]},{index:.63,rgb:[39,173,129]},{index:.75,rgb:[92,200,99]},{index:.88,rgb:[170,220,50]},{index:1,rgb:[253,231,37]}],inferno:[{index:0,rgb:[0,0,4]},{index:.13,rgb:[31,12,72]},{index:.25,rgb:[85,15,109]},{index:.38,rgb:[136,34,106]},{index:.5,rgb:[186,54,85]},{index:.63,rgb:[227,89,51]},{index:.75,rgb:[249,140,10]},{index:.88,rgb:[249,201,50]},{index:1,rgb:[252,255,164]}],magma:[{index:0,rgb:[0,0,4]},{index:.13,rgb:[28,16,68]},{index:.25,rgb:[79,18,123]},{index:.38,rgb:[129,37,129]},{index:.5,rgb:[181,54,122]},{index:.63,rgb:[229,80,100]},{index:.75,rgb:[251,135,97]},{index:.88,rgb:[254,194,135]},{index:1,rgb:[252,253,191]}],plasma:[{index:0,rgb:[13,8,135]},{index:.13,rgb:[75,3,161]},{index:.25,rgb:[125,3,168]},{index:.38,rgb:[168,34,150]},{index:.5,rgb:[203,70,121]},{index:.63,rgb:[229,107,93]},{index:.75,rgb:[248,148,65]},{index:.88,rgb:[253,195,40]},{index:1,rgb:[240,249,33]}],warm:[{index:0,rgb:[125,0,179]},{index:.13,rgb:[172,0,187]},{index:.25,rgb:[219,0,170]},{index:.38,rgb:[255,0,130]},{index:.5,rgb:[255,63,74]},{index:.63,rgb:[255,123,0]},{index:.75,rgb:[234,176,0]},{index:.88,rgb:[190,228,0]},{index:1,rgb:[147,255,0]}],cool:[{index:0,rgb:[125,0,179]},{index:.13,rgb:[116,0,218]},{index:.25,rgb:[98,74,237]},{index:.38,rgb:[68,146,231]},{index:.5,rgb:[0,204,197]},{index:.63,rgb:[0,247,146]},{index:.75,rgb:[0,255,88]},{index:.88,rgb:[40,255,8]},{index:1,rgb:[147,255,0]}],\"rainbow-soft\":[{index:0,rgb:[125,0,179]},{index:.1,rgb:[199,0,180]},{index:.2,rgb:[255,0,121]},{index:.3,rgb:[255,108,0]},{index:.4,rgb:[222,194,0]},{index:.5,rgb:[150,255,0]},{index:.6,rgb:[0,255,55]},{index:.7,rgb:[0,246,150]},{index:.8,rgb:[50,167,222]},{index:.9,rgb:[103,51,235]},{index:1,rgb:[124,0,186]}],bathymetry:[{index:0,rgb:[40,26,44]},{index:.13,rgb:[59,49,90]},{index:.25,rgb:[64,76,139]},{index:.38,rgb:[63,110,151]},{index:.5,rgb:[72,142,158]},{index:.63,rgb:[85,174,163]},{index:.75,rgb:[120,206,163]},{index:.88,rgb:[187,230,172]},{index:1,rgb:[253,254,204]}],cdom:[{index:0,rgb:[47,15,62]},{index:.13,rgb:[87,23,86]},{index:.25,rgb:[130,28,99]},{index:.38,rgb:[171,41,96]},{index:.5,rgb:[206,67,86]},{index:.63,rgb:[230,106,84]},{index:.75,rgb:[242,149,103]},{index:.88,rgb:[249,193,135]},{index:1,rgb:[254,237,176]}],chlorophyll:[{index:0,rgb:[18,36,20]},{index:.13,rgb:[25,63,41]},{index:.25,rgb:[24,91,59]},{index:.38,rgb:[13,119,72]},{index:.5,rgb:[18,148,80]},{index:.63,rgb:[80,173,89]},{index:.75,rgb:[132,196,122]},{index:.88,rgb:[175,221,162]},{index:1,rgb:[215,249,208]}],density:[{index:0,rgb:[54,14,36]},{index:.13,rgb:[89,23,80]},{index:.25,rgb:[110,45,132]},{index:.38,rgb:[120,77,178]},{index:.5,rgb:[120,113,213]},{index:.63,rgb:[115,151,228]},{index:.75,rgb:[134,185,227]},{index:.88,rgb:[177,214,227]},{index:1,rgb:[230,241,241]}],\"freesurface-blue\":[{index:0,rgb:[30,4,110]},{index:.13,rgb:[47,14,176]},{index:.25,rgb:[41,45,236]},{index:.38,rgb:[25,99,212]},{index:.5,rgb:[68,131,200]},{index:.63,rgb:[114,156,197]},{index:.75,rgb:[157,181,203]},{index:.88,rgb:[200,208,216]},{index:1,rgb:[241,237,236]}],\"freesurface-red\":[{index:0,rgb:[60,9,18]},{index:.13,rgb:[100,17,27]},{index:.25,rgb:[142,20,29]},{index:.38,rgb:[177,43,27]},{index:.5,rgb:[192,87,63]},{index:.63,rgb:[205,125,105]},{index:.75,rgb:[216,162,148]},{index:.88,rgb:[227,199,193]},{index:1,rgb:[241,237,236]}],oxygen:[{index:0,rgb:[64,5,5]},{index:.13,rgb:[106,6,15]},{index:.25,rgb:[144,26,7]},{index:.38,rgb:[168,64,3]},{index:.5,rgb:[188,100,4]},{index:.63,rgb:[206,136,11]},{index:.75,rgb:[220,174,25]},{index:.88,rgb:[231,215,44]},{index:1,rgb:[248,254,105]}],par:[{index:0,rgb:[51,20,24]},{index:.13,rgb:[90,32,35]},{index:.25,rgb:[129,44,34]},{index:.38,rgb:[159,68,25]},{index:.5,rgb:[182,99,19]},{index:.63,rgb:[199,134,22]},{index:.75,rgb:[212,171,35]},{index:.88,rgb:[221,210,54]},{index:1,rgb:[225,253,75]}],phase:[{index:0,rgb:[145,105,18]},{index:.13,rgb:[184,71,38]},{index:.25,rgb:[186,58,115]},{index:.38,rgb:[160,71,185]},{index:.5,rgb:[110,97,218]},{index:.63,rgb:[50,123,164]},{index:.75,rgb:[31,131,110]},{index:.88,rgb:[77,129,34]},{index:1,rgb:[145,105,18]}],salinity:[{index:0,rgb:[42,24,108]},{index:.13,rgb:[33,50,162]},{index:.25,rgb:[15,90,145]},{index:.38,rgb:[40,118,137]},{index:.5,rgb:[59,146,135]},{index:.63,rgb:[79,175,126]},{index:.75,rgb:[120,203,104]},{index:.88,rgb:[193,221,100]},{index:1,rgb:[253,239,154]}],temperature:[{index:0,rgb:[4,35,51]},{index:.13,rgb:[23,51,122]},{index:.25,rgb:[85,59,157]},{index:.38,rgb:[129,79,143]},{index:.5,rgb:[175,95,130]},{index:.63,rgb:[222,112,101]},{index:.75,rgb:[249,146,66]},{index:.88,rgb:[249,196,65]},{index:1,rgb:[232,250,91]}],turbidity:[{index:0,rgb:[34,31,27]},{index:.13,rgb:[65,50,41]},{index:.25,rgb:[98,69,52]},{index:.38,rgb:[131,89,57]},{index:.5,rgb:[161,112,59]},{index:.63,rgb:[185,140,66]},{index:.75,rgb:[202,174,88]},{index:.88,rgb:[216,209,126]},{index:1,rgb:[233,246,171]}],\"velocity-blue\":[{index:0,rgb:[17,32,64]},{index:.13,rgb:[35,52,116]},{index:.25,rgb:[29,81,156]},{index:.38,rgb:[31,113,162]},{index:.5,rgb:[50,144,169]},{index:.63,rgb:[87,173,176]},{index:.75,rgb:[149,196,189]},{index:.88,rgb:[203,221,211]},{index:1,rgb:[254,251,230]}],\"velocity-green\":[{index:0,rgb:[23,35,19]},{index:.13,rgb:[24,64,38]},{index:.25,rgb:[11,95,45]},{index:.38,rgb:[39,123,35]},{index:.5,rgb:[95,146,12]},{index:.63,rgb:[152,165,18]},{index:.75,rgb:[201,186,69]},{index:.88,rgb:[233,216,137]},{index:1,rgb:[255,253,205]}],cubehelix:[{index:0,rgb:[0,0,0]},{index:.07,rgb:[22,5,59]},{index:.13,rgb:[60,4,105]},{index:.2,rgb:[109,1,135]},{index:.27,rgb:[161,0,147]},{index:.33,rgb:[210,2,142]},{index:.4,rgb:[251,11,123]},{index:.47,rgb:[255,29,97]},{index:.53,rgb:[255,54,69]},{index:.6,rgb:[255,85,46]},{index:.67,rgb:[255,120,34]},{index:.73,rgb:[255,157,37]},{index:.8,rgb:[241,191,57]},{index:.87,rgb:[224,220,93]},{index:.93,rgb:[218,241,142]},{index:1,rgb:[227,253,198]}]}},6729:function(t,e,r){\"use strict\";var n=r(3642),i=r(395);function a(t){return[t[0]/255,t[1]/255,t[2]/255,t[3]]}function o(t){for(var e,r=\"#\",n=0;n<3;++n)r+=(\"00\"+(e=(e=t[n]).toString(16))).substr(e.length);return r}function s(t){return\"rgba(\"+t.join(\",\")+\")\"}t.exports=function(t){var e,r,l,c,u,h,f,p,d,m;if(t||(t={}),p=(t.nshades||72)-1,f=t.format||\"hex\",(h=t.colormap)||(h=\"jet\"),\"string\"==typeof h){if(h=h.toLowerCase(),!n[h])throw Error(h+\" not a supported colorscale\");u=n[h]}else{if(!Array.isArray(h))throw Error(\"unsupported colormap option\",h);u=h.slice()}if(u.length>p+1)throw new Error(h+\" map requires nshades to be at least size \"+u.length);d=Array.isArray(t.alpha)?2!==t.alpha.length?[1,1]:t.alpha.slice():\"number\"==typeof t.alpha?[t.alpha,t.alpha]:[1,1],e=u.map((function(t){return Math.round(t.index*p)})),d[0]=Math.min(Math.max(d[0],0),1),d[1]=Math.min(Math.max(d[1],0),1);var g=u.map((function(t,e){var r=u[e].index,n=u[e].rgb.slice();return 4===n.length&&n[3]>=0&&n[3]<=1||(n[3]=d[0]+(d[1]-d[0])*r),n})),y=[];for(m=0;m<e.length-1;++m){c=e[m+1]-e[m],r=g[m],l=g[m+1];for(var v=0;v<c;v++){var x=v/c;y.push([Math.round(i(r[0],l[0],x)),Math.round(i(r[1],l[1],x)),Math.round(i(r[2],l[2],x)),i(r[3],l[3],x)])}}return y.push(u[u.length-1].rgb.concat(d[1])),\"hex\"===f?y=y.map(o):\"rgbaString\"===f?y=y.map(s):\"float\"===f&&(y=y.map(a)),y}},3140:function(t,e,r){\"use strict\";t.exports=function(t,e,r,a){var o=n(e,r,a);if(0===o){var s=i(n(t,e,r)),c=i(n(t,e,a));if(s===c){if(0===s){var u=l(t,e,r);return u===l(t,e,a)?0:u?1:-1}return 0}return 0===c?s>0||l(t,e,a)?-1:1:0===s?c>0||l(t,e,r)?1:-1:i(c-s)}var h=n(t,e,r);return h>0?o>0&&n(t,e,a)>0?1:-1:h<0?o>0||n(t,e,a)>0?1:-1:n(t,e,a)>0||l(t,e,r)?1:-1};var n=r(3250),i=r(8572),a=r(9362),o=r(5382),s=r(8210);function l(t,e,r){var n=a(t[0],-e[0]),i=a(t[1],-e[1]),l=a(r[0],-e[0]),c=a(r[1],-e[1]),u=s(o(n,l),o(i,c));return u[u.length-1]>=0}},8572:function(t){\"use strict\";t.exports=function(t){return t<0?-1:t>0?1:0}},8507:function(t){t.exports=function(t,n){var i=t.length,a=t.length-n.length;if(a)return a;switch(i){case 0:return 0;case 1:return t[0]-n[0];case 2:return t[0]+t[1]-n[0]-n[1]||e(t[0],t[1])-e(n[0],n[1]);case 3:var o=t[0]+t[1],s=n[0]+n[1];if(a=o+t[2]-(s+n[2]))return a;var l=e(t[0],t[1]),c=e(n[0],n[1]);return e(l,t[2])-e(c,n[2])||e(l+t[2],o)-e(c+n[2],s);case 4:var u=t[0],h=t[1],f=t[2],p=t[3],d=n[0],m=n[1],g=n[2],y=n[3];return u+h+f+p-(d+m+g+y)||e(u,h,f,p)-e(d,m,g,y,d)||e(u+h,u+f,u+p,h+f,h+p,f+p)-e(d+m,d+g,d+y,m+g,m+y,g+y)||e(u+h+f,u+h+p,u+f+p,h+f+p)-e(d+m+g,d+m+y,d+g+y,m+g+y);default:for(var v=t.slice().sort(r),x=n.slice().sort(r),_=0;_<i;++_)if(a=v[_]-x[_])return a;return 0}};var e=Math.min;function r(t,e){return t-e}},3788:function(t,e,r){\"use strict\";var n=r(8507),i=r(2419);t.exports=function(t,e){return n(t,e)||i(t)-i(e)}},7352:function(t,e,r){\"use strict\";var n=r(5721),i=r(4750),a=r(2690);t.exports=function(t){var e=t.length;if(0===e)return[];if(1===e)return[[0]];var r=t[0].length;return 0===r?[]:1===r?n(t):2===r?i(t):a(t,r)}},5721:function(t){\"use strict\";t.exports=function(t){for(var e=0,r=0,n=1;n<t.length;++n)t[n][0]<t[e][0]&&(e=n),t[n][0]>t[r][0]&&(r=n);return e<r?[[e],[r]]:e>r?[[r],[e]]:[[e]]}},4750:function(t,e,r){\"use strict\";t.exports=function(t){var e=n(t),r=e.length;if(r<=2)return[];for(var i=new Array(r),a=e[r-1],o=0;o<r;++o){var s=e[o];i[o]=[a,s],a=s}return i};var n=r(3090)},2690:function(t,e,r){\"use strict\";t.exports=function(t,e){try{return n(t,!0)}catch(o){var r=i(t);if(r.length<=e)return[];var a=function(t,e){for(var r=t.length,n=new Array(r),i=0;i<e.length;++i)n[i]=t[e[i]];var a=e.length;for(i=0;i<r;++i)e.indexOf(i)<0&&(n[a++]=t[i]);return n}(t,r);return function(t,e){for(var r=t.length,n=e.length,i=0;i<r;++i)for(var a=t[i],o=0;o<a.length;++o){var s=a[o];if(s<n)a[o]=e[s];else{s-=n;for(var l=0;l<n;++l)s>=e[l]&&(s+=1);a[o]=s}}return t}(n(a,!0),r)}};var n=r(8954),i=r(3952)},4769:function(t){\"use strict\";t.exports=function(t,e,r,n,i,a){var o=i-1,s=i*i,l=o*o,c=(1+2*i)*l,u=i*l,h=s*(3-2*i),f=s*o;if(t.length){a||(a=new Array(t.length));for(var p=t.length-1;p>=0;--p)a[p]=c*t[p]+u*e[p]+h*r[p]+f*n[p];return a}return c*t+u*e+h*r+f*n},t.exports.derivative=function(t,e,r,n,i,a){var o=6*i*i-6*i,s=3*i*i-4*i+1,l=-6*i*i+6*i,c=3*i*i-2*i;if(t.length){a||(a=new Array(t.length));for(var u=t.length-1;u>=0;--u)a[u]=o*t[u]+s*e[u]+l*r[u]+c*n[u];return a}return o*t+s*e+l*r[u]+c*n}},7642:function(t,e,r){\"use strict\";var n=r(8954),i=r(1682);function a(t,e){this.point=t,this.index=e}function o(t,e){for(var r=t.point,n=e.point,i=r.length,a=0;a<i;++a){var o=n[a]-r[a];if(o)return o}return 0}t.exports=function(t,e){var r=t.length;if(0===r)return[];var s=t[0].length;if(s<1)return[];if(1===s)return function(t,e,r){if(1===t)return r?[[-1,0]]:[];var n=e.map((function(t,e){return[t[0],e]}));n.sort((function(t,e){return t[0]-e[0]}));for(var i=new Array(t-1),a=1;a<t;++a){var o=n[a-1],s=n[a];i[a-1]=[o[1],s[1]]}return r&&i.push([-1,i[0][1]],[i[t-1][1],-1]),i}(r,t,e);for(var l=new Array(r),c=1,u=0;u<r;++u){for(var h=t[u],f=new Array(s+1),p=0,d=0;d<s;++d){var m=h[d];f[d]=m,p+=m*m}f[s]=p,l[u]=new a(f,u),c=Math.max(p,c)}i(l,o),r=l.length;var g=new Array(r+s+1),y=new Array(r+s+1),v=(s+1)*(s+1)*c,x=new Array(s+1);for(u=0;u<=s;++u)x[u]=0;for(x[s]=v,g[0]=x.slice(),y[0]=-1,u=0;u<=s;++u)(f=x.slice())[u]=1,g[u+1]=f,y[u+1]=-1;for(u=0;u<r;++u){var _=l[u];g[u+s+1]=_.point,y[u+s+1]=_.index}var b=n(g,!1);if(b=e?b.filter((function(t){for(var e=0,r=0;r<=s;++r){var n=y[t[r]];if(n<0&&++e>=2)return!1;t[r]=n}return!0})):b.filter((function(t){for(var e=0;e<=s;++e){var r=y[t[e]];if(r<0)return!1;t[e]=r}return!0})),1&s)for(u=0;u<b.length;++u)f=(_=b[u])[0],_[0]=_[1],_[1]=f;return b}},2361:function(t){var e=!1;if(\"undefined\"!=typeof Float64Array){var r=new Float64Array(1),i=new Uint32Array(r.buffer);r[0]=1,e=!0,1072693248===i[1]?(t.exports=function(t){return r[0]=t,[i[0],i[1]]},t.exports.pack=function(t,e){return i[0]=t,i[1]=e,r[0]},t.exports.lo=function(t){return r[0]=t,i[0]},t.exports.hi=function(t){return r[0]=t,i[1]}):1072693248===i[0]?(t.exports=function(t){return r[0]=t,[i[1],i[0]]},t.exports.pack=function(t,e){return i[1]=t,i[0]=e,r[0]},t.exports.lo=function(t){return r[0]=t,i[1]},t.exports.hi=function(t){return r[0]=t,i[0]}):e=!1}if(!e){var a=new n(8);t.exports=function(t){return a.writeDoubleLE(t,0,!0),[a.readUInt32LE(0,!0),a.readUInt32LE(4,!0)]},t.exports.pack=function(t,e){return a.writeUInt32LE(t,0,!0),a.writeUInt32LE(e,4,!0),a.readDoubleLE(0,!0)},t.exports.lo=function(t){return a.writeDoubleLE(t,0,!0),a.readUInt32LE(0,!0)},t.exports.hi=function(t){return a.writeDoubleLE(t,0,!0),a.readUInt32LE(4,!0)}}t.exports.sign=function(e){return t.exports.hi(e)>>>31},t.exports.exponent=function(e){return(t.exports.hi(e)<<1>>>21)-1023},t.exports.fraction=function(e){var r=t.exports.lo(e),n=t.exports.hi(e),i=1048575&n;return 2146435072&n&&(i+=1<<20),[r,i]},t.exports.denormalized=function(e){return!(2146435072&t.exports.hi(e))}},1338:function(t){\"use strict\";function e(t,r,n){var i=0|t[n];if(i<=0)return[];var a,o=new Array(i);if(n===t.length-1)for(a=0;a<i;++a)o[a]=r;else for(a=0;a<i;++a)o[a]=e(t,r,n+1);return o}t.exports=function(t,r){switch(void 0===r&&(r=0),typeof t){case\"number\":if(t>0)return function(t,e){var r,n;for(r=new Array(t),n=0;n<t;++n)r[n]=e;return r}(0|t,r);break;case\"object\":if(\"number\"==typeof t.length)return e(t,r,0)}return[]}},3134:function(t,e,r){\"use strict\";t.exports=function(t,e){var r=t.length;if(\"number\"!=typeof e){e=0;for(var i=0;i<r;++i){var a=t[i];e=Math.max(e,a[0],a[1])}e=1+(0|e)}e|=0;var o=new Array(e);for(i=0;i<e;++i)o[i]=[];for(i=0;i<r;++i)o[(a=t[i])[0]].push(a[1]),o[a[1]].push(a[0]);for(var s=0;s<e;++s)n(o[s],(function(t,e){return t-e}));return o};var n=r(1682)},5033:function(t){\"use strict\";t.exports=function(t,e,r){var n=e||0,i=r||1;return[[t[12]+t[0],t[13]+t[1],t[14]+t[2],t[15]+t[3]],[t[12]-t[0],t[13]-t[1],t[14]-t[2],t[15]-t[3]],[t[12]+t[4],t[13]+t[5],t[14]+t[6],t[15]+t[7]],[t[12]-t[4],t[13]-t[5],t[14]-t[6],t[15]-t[7]],[n*t[12]+t[8],n*t[13]+t[9],n*t[14]+t[10],n*t[15]+t[11]],[i*t[12]-t[8],i*t[13]-t[9],i*t[14]-t[10],i*t[15]-t[11]]]}},9215:function(t,e,r){\"use strict\";t.exports=function(t,e,r){switch(arguments.length){case 0:return new o([0],[0],0);case 1:return\"number\"==typeof t?new o(n=l(t),n,0):new o(t,l(t.length),0);case 2:var n;if(\"number\"==typeof e)return new o(t,n=l(t.length),+e);r=0;case 3:if(t.length!==e.length)throw new Error(\"state and velocity lengths must match\");return new o(t,e,r)}};var n=r(4769),i=r(2478);function a(t,e,r){return Math.min(e,Math.max(t,r))}function o(t,e,r){this.dimension=t.length,this.bounds=[new Array(this.dimension),new Array(this.dimension)];for(var n=0;n<this.dimension;++n)this.bounds[0][n]=-1/0,this.bounds[1][n]=1/0;this._state=t.slice().reverse(),this._velocity=e.slice().reverse(),this._time=[r],this._scratch=[t.slice(),t.slice(),t.slice(),t.slice(),t.slice()]}var s=o.prototype;function l(t){for(var e=new Array(t),r=0;r<t;++r)e[r]=0;return e}s.flush=function(t){var e=i.gt(this._time,t)-1;e<=0||(this._time.splice(0,e),this._state.splice(0,e*this.dimension),this._velocity.splice(0,e*this.dimension))},s.curve=function(t){var e=this._time,r=e.length,o=i.le(e,t),s=this._scratch[0],l=this._state,c=this._velocity,u=this.dimension,h=this.bounds;if(o<0)for(var f=u-1,p=0;p<u;++p,--f)s[p]=l[f];else if(o>=r-1){f=l.length-1;var d=t-e[r-1];for(p=0;p<u;++p,--f)s[p]=l[f]+d*c[f]}else{f=u*(o+1)-1;var m=e[o],g=e[o+1]-m||1,y=this._scratch[1],v=this._scratch[2],x=this._scratch[3],_=this._scratch[4],b=!0;for(p=0;p<u;++p,--f)y[p]=l[f],x[p]=c[f]*g,v[p]=l[f+u],_[p]=c[f+u]*g,b=b&&y[p]===v[p]&&x[p]===_[p]&&0===x[p];if(b)for(p=0;p<u;++p)s[p]=y[p];else n(y,x,v,_,(t-m)/g,s)}var w=h[0],T=h[1];for(p=0;p<u;++p)s[p]=a(w[p],T[p],s[p]);return s},s.dcurve=function(t){var e=this._time,r=e.length,a=i.le(e,t),o=this._scratch[0],s=this._state,l=this._velocity,c=this.dimension;if(a>=r-1)for(var u=s.length-1,h=(e[r-1],0);h<c;++h,--u)o[h]=l[u];else{u=c*(a+1)-1;var f=e[a],p=e[a+1]-f||1,d=this._scratch[1],m=this._scratch[2],g=this._scratch[3],y=this._scratch[4],v=!0;for(h=0;h<c;++h,--u)d[h]=s[u],g[h]=l[u]*p,m[h]=s[u+c],y[h]=l[u+c]*p,v=v&&d[h]===m[h]&&g[h]===y[h]&&0===g[h];if(v)for(h=0;h<c;++h)o[h]=0;else for(n.derivative(d,g,m,y,(t-f)/p,o),h=0;h<c;++h)o[h]/=p}return o},s.lastT=function(){var t=this._time;return t[t.length-1]},s.stable=function(){for(var t=this._velocity,e=t.length,r=this.dimension-1;r>=0;--r)if(t[--e])return!1;return!0},s.jump=function(t){var e=this.lastT(),r=this.dimension;if(!(t<e||arguments.length!==r+1)){var n=this._state,i=this._velocity,o=n.length-this.dimension,s=this.bounds,l=s[0],c=s[1];this._time.push(e,t);for(var u=0;u<2;++u)for(var h=0;h<r;++h)n.push(n[o++]),i.push(0);for(this._time.push(t),h=r;h>0;--h)n.push(a(l[h-1],c[h-1],arguments[h])),i.push(0)}},s.push=function(t){var e=this.lastT(),r=this.dimension;if(!(t<e||arguments.length!==r+1)){var n=this._state,i=this._velocity,o=n.length-this.dimension,s=t-e,l=this.bounds,c=l[0],u=l[1],h=s>1e-6?1/s:0;this._time.push(t);for(var f=r;f>0;--f){var p=a(c[f-1],u[f-1],arguments[f]);n.push(p),i.push((p-n[o++])*h)}}},s.set=function(t){var e=this.dimension;if(!(t<this.lastT()||arguments.length!==e+1)){var r=this._state,n=this._velocity,i=this.bounds,o=i[0],s=i[1];this._time.push(t);for(var l=e;l>0;--l)r.push(a(o[l-1],s[l-1],arguments[l])),n.push(0)}},s.move=function(t){var e=this.lastT(),r=this.dimension;if(!(t<=e||arguments.length!==r+1)){var n=this._state,i=this._velocity,o=n.length-this.dimension,s=this.bounds,l=s[0],c=s[1],u=t-e,h=u>1e-6?1/u:0;this._time.push(t);for(var f=r;f>0;--f){var p=arguments[f];n.push(a(l[f-1],c[f-1],n[o++]+p)),i.push(p*h)}}},s.idle=function(t){var e=this.lastT();if(!(t<e)){var r=this.dimension,n=this._state,i=this._velocity,o=n.length-r,s=this.bounds,l=s[0],c=s[1],u=t-e;this._time.push(t);for(var h=r-1;h>=0;--h)n.push(a(l[h],c[h],n[o]+u*i[o])),i.push(0),o+=1}}},3840:function(t){\"use strict\";function e(t,e,r,n,i,a){this._color=t,this.key=e,this.value=r,this.left=n,this.right=i,this._count=a}function r(t){return new e(t._color,t.key,t.value,t.left,t.right,t._count)}function n(t,r){return new e(t,r.key,r.value,r.left,r.right,r._count)}function i(t){t._count=1+(t.left?t.left._count:0)+(t.right?t.right._count:0)}function a(t,e){this._compare=t,this.root=e}t.exports=function(t){return new a(t||p,null)};var o=a.prototype;function s(t,e){var r;return e.left&&(r=s(t,e.left))?r:(r=t(e.key,e.value))||(e.right?s(t,e.right):void 0)}function l(t,e,r,n){if(e(t,n.key)<=0){var i;if(n.left&&(i=l(t,e,r,n.left)))return i;if(i=r(n.key,n.value))return i}if(n.right)return l(t,e,r,n.right)}function c(t,e,r,n,i){var a,o=r(t,i.key),s=r(e,i.key);if(o<=0){if(i.left&&(a=c(t,e,r,n,i.left)))return a;if(s>0&&(a=n(i.key,i.value)))return a}if(s>0&&i.right)return c(t,e,r,n,i.right)}function u(t,e){this.tree=t,this._stack=e}Object.defineProperty(o,\"keys\",{get:function(){var t=[];return this.forEach((function(e,r){t.push(e)})),t}}),Object.defineProperty(o,\"values\",{get:function(){var t=[];return this.forEach((function(e,r){t.push(r)})),t}}),Object.defineProperty(o,\"length\",{get:function(){return this.root?this.root._count:0}}),o.insert=function(t,r){for(var o=this._compare,s=this.root,l=[],c=[];s;){var u=o(t,s.key);l.push(s),c.push(u),s=u<=0?s.left:s.right}l.push(new e(0,t,r,null,null,1));for(var h=l.length-2;h>=0;--h)s=l[h],c[h]<=0?l[h]=new e(s._color,s.key,s.value,l[h+1],s.right,s._count+1):l[h]=new e(s._color,s.key,s.value,s.left,l[h+1],s._count+1);for(h=l.length-1;h>1;--h){var f=l[h-1];if(s=l[h],1===f._color||1===s._color)break;var p=l[h-2];if(p.left===f)if(f.left===s){if(!(d=p.right)||0!==d._color){p._color=0,p.left=f.right,f._color=1,f.right=p,l[h-2]=f,l[h-1]=s,i(p),i(f),h>=3&&((m=l[h-3]).left===p?m.left=f:m.right=f);break}f._color=1,p.right=n(1,d),p._color=0,h-=1}else{if(!(d=p.right)||0!==d._color){f.right=s.left,p._color=0,p.left=s.right,s._color=1,s.left=f,s.right=p,l[h-2]=s,l[h-1]=f,i(p),i(f),i(s),h>=3&&((m=l[h-3]).left===p?m.left=s:m.right=s);break}f._color=1,p.right=n(1,d),p._color=0,h-=1}else if(f.right===s){if(!(d=p.left)||0!==d._color){p._color=0,p.right=f.left,f._color=1,f.left=p,l[h-2]=f,l[h-1]=s,i(p),i(f),h>=3&&((m=l[h-3]).right===p?m.right=f:m.left=f);break}f._color=1,p.left=n(1,d),p._color=0,h-=1}else{var d;if(!(d=p.left)||0!==d._color){var m;f.left=s.right,p._color=0,p.right=s.left,s._color=1,s.right=f,s.left=p,l[h-2]=s,l[h-1]=f,i(p),i(f),i(s),h>=3&&((m=l[h-3]).right===p?m.right=s:m.left=s);break}f._color=1,p.left=n(1,d),p._color=0,h-=1}}return l[0]._color=1,new a(o,l[0])},o.forEach=function(t,e,r){if(this.root)switch(arguments.length){case 1:return s(t,this.root);case 2:return l(e,this._compare,t,this.root);case 3:if(this._compare(e,r)>=0)return;return c(e,r,this._compare,t,this.root)}},Object.defineProperty(o,\"begin\",{get:function(){for(var t=[],e=this.root;e;)t.push(e),e=e.left;return new u(this,t)}}),Object.defineProperty(o,\"end\",{get:function(){for(var t=[],e=this.root;e;)t.push(e),e=e.right;return new u(this,t)}}),o.at=function(t){if(t<0)return new u(this,[]);for(var e=this.root,r=[];;){if(r.push(e),e.left){if(t<e.left._count){e=e.left;continue}t-=e.left._count}if(!t)return new u(this,r);if(t-=1,!e.right)break;if(t>=e.right._count)break;e=e.right}return new u(this,[])},o.ge=function(t){for(var e=this._compare,r=this.root,n=[],i=0;r;){var a=e(t,r.key);n.push(r),a<=0&&(i=n.length),r=a<=0?r.left:r.right}return n.length=i,new u(this,n)},o.gt=function(t){for(var e=this._compare,r=this.root,n=[],i=0;r;){var a=e(t,r.key);n.push(r),a<0&&(i=n.length),r=a<0?r.left:r.right}return n.length=i,new u(this,n)},o.lt=function(t){for(var e=this._compare,r=this.root,n=[],i=0;r;){var a=e(t,r.key);n.push(r),a>0&&(i=n.length),r=a<=0?r.left:r.right}return n.length=i,new u(this,n)},o.le=function(t){for(var e=this._compare,r=this.root,n=[],i=0;r;){var a=e(t,r.key);n.push(r),a>=0&&(i=n.length),r=a<0?r.left:r.right}return n.length=i,new u(this,n)},o.find=function(t){for(var e=this._compare,r=this.root,n=[];r;){var i=e(t,r.key);if(n.push(r),0===i)return new u(this,n);r=i<=0?r.left:r.right}return new u(this,[])},o.remove=function(t){var e=this.find(t);return e?e.remove():this},o.get=function(t){for(var e=this._compare,r=this.root;r;){var n=e(t,r.key);if(0===n)return r.value;r=n<=0?r.left:r.right}};var h=u.prototype;function f(t,e){t.key=e.key,t.value=e.value,t.left=e.left,t.right=e.right,t._color=e._color,t._count=e._count}function p(t,e){return t<e?-1:t>e?1:0}Object.defineProperty(h,\"valid\",{get:function(){return this._stack.length>0}}),Object.defineProperty(h,\"node\",{get:function(){return this._stack.length>0?this._stack[this._stack.length-1]:null},enumerable:!0}),h.clone=function(){return new u(this.tree,this._stack.slice())},h.remove=function(){var t=this._stack;if(0===t.length)return this.tree;var o=new Array(t.length),s=t[t.length-1];o[o.length-1]=new e(s._color,s.key,s.value,s.left,s.right,s._count);for(var l=t.length-2;l>=0;--l)(s=t[l]).left===t[l+1]?o[l]=new e(s._color,s.key,s.value,o[l+1],s.right,s._count):o[l]=new e(s._color,s.key,s.value,s.left,o[l+1],s._count);if((s=o[o.length-1]).left&&s.right){var c=o.length;for(s=s.left;s.right;)o.push(s),s=s.right;var u=o[c-1];for(o.push(new e(s._color,u.key,u.value,s.left,s.right,s._count)),o[c-1].key=s.key,o[c-1].value=s.value,l=o.length-2;l>=c;--l)s=o[l],o[l]=new e(s._color,s.key,s.value,s.left,o[l+1],s._count);o[c-1].left=o[c]}if(0===(s=o[o.length-1])._color){var h=o[o.length-2];for(h.left===s?h.left=null:h.right===s&&(h.right=null),o.pop(),l=0;l<o.length;++l)o[l]._count--;return new a(this.tree._compare,o[0])}if(s.left||s.right){for(s.left?f(s,s.left):s.right&&f(s,s.right),s._color=1,l=0;l<o.length-1;++l)o[l]._count--;return new a(this.tree._compare,o[0])}if(1===o.length)return new a(this.tree._compare,null);for(l=0;l<o.length;++l)o[l]._count--;var p=o[o.length-2];return function(t){for(var e,a,o,s,l=t.length-1;l>=0;--l){if(e=t[l],0===l)return void(e._color=1);if((a=t[l-1]).left===e){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,e._color=1,a._color=1,s._color=1,i(a),i(o),l>1&&((c=t[l-2]).left===a?c.left=o:c.right=o),void(t[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,e._color=1,i(a),i(o),i(s),l>1&&((c=t[l-2]).left===a?c.left=s:c.right=s),void(t[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&&((c=t[l-2]).left===a?c.left=o:c.right=o),t[l-1]=o,t[l]=a,l+1<t.length?t[l+1]=e:t.push(e),l+=2}else{if((o=a.left).left&&0===o.left._color)return s=(o=a.left=r(o)).left=r(o.left),a.left=o.right,o.right=a,o.left=s,o._color=a._color,e._color=1,a._color=1,s._color=1,i(a),i(o),l>1&&((c=t[l-2]).right===a?c.right=o:c.left=o),void(t[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,e._color=1,i(a),i(o),i(s),l>1&&((c=t[l-2]).right===a?c.right=s:c.left=s),void(t[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 c;o=r(o),a.left=o.right,o.right=a,o._color=a._color,a._color=0,i(a),i(o),l>1&&((c=t[l-2]).right===a?c.right=o:c.left=o),t[l-1]=o,t[l]=a,l+1<t.length?t[l+1]=e:t.push(e),l+=2}}}(o),p.left===s?p.left=null:p.right=null,new a(this.tree._compare,o[0])},Object.defineProperty(h,\"key\",{get:function(){if(this._stack.length>0)return this._stack[this._stack.length-1].key},enumerable:!0}),Object.defineProperty(h,\"value\",{get:function(){if(this._stack.length>0)return this._stack[this._stack.length-1].value},enumerable:!0}),Object.defineProperty(h,\"index\",{get:function(){var t=0,e=this._stack;if(0===e.length){var r=this.tree.root;return r?r._count:0}e[e.length-1].left&&(t=e[e.length-1].left._count);for(var n=e.length-2;n>=0;--n)e[n+1]===e[n].right&&(++t,e[n].left&&(t+=e[n].left._count));return t},enumerable:!0}),h.next=function(){var t=this._stack;if(0!==t.length){var e=t[t.length-1];if(e.right)for(e=e.right;e;)t.push(e),e=e.left;else for(t.pop();t.length>0&&t[t.length-1].right===e;)e=t[t.length-1],t.pop()}},Object.defineProperty(h,\"hasNext\",{get:function(){var t=this._stack;if(0===t.length)return!1;if(t[t.length-1].right)return!0;for(var e=t.length-1;e>0;--e)if(t[e-1].left===t[e])return!0;return!1}}),h.update=function(t){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 e(i._color,i.key,t,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 e(i._color,i.key,i.value,n[o+1],i.right,i._count):n[o]=new e(i._color,i.key,i.value,i.left,n[o+1],i._count);return new a(this.tree._compare,n[0])},h.prev=function(){var t=this._stack;if(0!==t.length){var e=t[t.length-1];if(e.left)for(e=e.left;e;)t.push(e),e=e.right;else for(t.pop();t.length>0&&t[t.length-1].left===e;)e=t[t.length-1],t.pop()}},Object.defineProperty(h,\"hasPrev\",{get:function(){var t=this._stack;if(0===t.length)return!1;if(t[t.length-1].left)return!0;for(var e=t.length-1;e>0;--e)if(t[e-1].right===t[e])return!0;return!1}})},3837:function(t,e,r){\"use strict\";t.exports=function(t,e){var r=new p(t);return r.update(e),r};var n=r(4935),i=r(501),a=r(5304),o=r(6429),s=r(6444),l=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),c=ArrayBuffer,u=DataView;function h(t){return Array.isArray(t)||function(t){return c.isView(t)&&!(t instanceof u)}(t)}function f(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}function p(t){this.gl=t,this.pixelRatio=1,this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.autoTicks=!0,this.tickSpacing=[1,1,1],this.tickEnable=[!0,!0,!0],this.tickFont=[\"sans-serif\",\"sans-serif\",\"sans-serif\"],this.tickFontStyle=[\"normal\",\"normal\",\"normal\"],this.tickFontWeight=[\"normal\",\"normal\",\"normal\"],this.tickFontVariant=[\"normal\",\"normal\",\"normal\"],this.tickSize=[12,12,12],this.tickAngle=[0,0,0],this.tickAlign=[\"auto\",\"auto\",\"auto\"],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[10,10,10],this.lastCubeProps={cubeEdges:[0,0,0],axis:[0,0,0]},this.labels=[\"x\",\"y\",\"z\"],this.labelEnable=[!0,!0,!0],this.labelFont=[\"sans-serif\",\"sans-serif\",\"sans-serif\"],this.labelFontStyle=[\"normal\",\"normal\",\"normal\"],this.labelFontWeight=[\"normal\",\"normal\",\"normal\"],this.labelFontVariant=[\"normal\",\"normal\",\"normal\"],this.labelSize=[20,20,20],this.labelAngle=[0,0,0],this.labelAlign=[\"auto\",\"auto\",\"auto\"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[10,10,10],this.lineEnable=[!0,!0,!0],this.lineMirror=[!1,!1,!1],this.lineWidth=[1,1,1],this.lineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.lineTickEnable=[!0,!0,!0],this.lineTickMirror=[!1,!1,!1],this.lineTickLength=[0,0,0],this.lineTickWidth=[1,1,1],this.lineTickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.gridEnable=[!0,!0,!0],this.gridWidth=[1,1,1],this.gridColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroEnable=[!0,!0,!0],this.zeroLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroLineWidth=[2,2,2],this.backgroundEnable=[!1,!1,!1],this.backgroundColor=[[.8,.8,.8,.5],[.8,.8,.8,.5],[.8,.8,.8,.5]],this._firstInit=!0,this._text=null,this._lines=null,this._background=a(t)}var d=p.prototype;function m(){this.primalOffset=[0,0,0],this.primalMinor=[0,0,0],this.mirrorOffset=[0,0,0],this.mirrorMinor=[0,0,0]}d.update=function(t){function e(e,r,n){if(n in t){var i,a=t[n],o=this[n];(e?h(a)&&h(a[0]):h(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}t=t||{};var r,a=e.bind(this,!1,Number),o=e.bind(this,!1,Boolean),l=e.bind(this,!1,String),c=e.bind(this,!0,(function(t){if(h(t)){if(3===t.length)return[+t[0],+t[1],+t[2],1];if(4===t.length)return[+t[0],+t[1],+t[2],+t[3]]}return[0,0,0,1]})),u=!1,f=!1;if(\"bounds\"in t)for(var p=t.bounds,d=0;d<2;++d)for(var m=0;m<3;++m)p[d][m]!==this.bounds[d][m]&&(f=!0),this.bounds[d][m]=p[d][m];if(\"ticks\"in t)for(r=t.ticks,u=!0,this.autoTicks=!1,d=0;d<3;++d)this.tickSpacing[d]=0;else a(\"tickSpacing\")&&(this.autoTicks=!0,f=!0);if(this._firstInit&&(\"ticks\"in t||\"tickSpacing\"in t||(this.autoTicks=!0),f=!0,u=!0,this._firstInit=!1),f&&this.autoTicks&&(r=s.create(this.bounds,this.tickSpacing),u=!0),u){for(d=0;d<3;++d)r[d].sort((function(t,e){return t.x-e.x}));s.equal(r,this.ticks)?u=!1:this.ticks=r}o(\"tickEnable\"),l(\"tickFont\")&&(u=!0),l(\"tickFontStyle\")&&(u=!0),l(\"tickFontWeight\")&&(u=!0),l(\"tickFontVariant\")&&(u=!0),a(\"tickSize\"),a(\"tickAngle\"),a(\"tickPad\"),c(\"tickColor\");var g=l(\"labels\");l(\"labelFont\")&&(g=!0),l(\"labelFontStyle\")&&(g=!0),l(\"labelFontWeight\")&&(g=!0),l(\"labelFontVariant\")&&(g=!0),o(\"labelEnable\"),a(\"labelSize\"),a(\"labelPad\"),c(\"labelColor\"),o(\"lineEnable\"),o(\"lineMirror\"),a(\"lineWidth\"),c(\"lineColor\"),o(\"lineTickEnable\"),o(\"lineTickMirror\"),a(\"lineTickLength\"),a(\"lineTickWidth\"),c(\"lineTickColor\"),o(\"gridEnable\"),a(\"gridWidth\"),c(\"gridColor\"),o(\"zeroEnable\"),c(\"zeroLineColor\"),a(\"zeroLineWidth\"),o(\"backgroundEnable\"),c(\"backgroundColor\");var y=[{family:this.labelFont[0],style:this.labelFontStyle[0],weight:this.labelFontWeight[0],variant:this.labelFontVariant[0]},{family:this.labelFont[1],style:this.labelFontStyle[1],weight:this.labelFontWeight[1],variant:this.labelFontVariant[1]},{family:this.labelFont[2],style:this.labelFontStyle[2],weight:this.labelFontWeight[2],variant:this.labelFontVariant[2]}],v=[{family:this.tickFont[0],style:this.tickFontStyle[0],weight:this.tickFontWeight[0],variant:this.tickFontVariant[0]},{family:this.tickFont[1],style:this.tickFontStyle[1],weight:this.tickFontWeight[1],variant:this.tickFontVariant[1]},{family:this.tickFont[2],style:this.tickFontStyle[2],weight:this.tickFontWeight[2],variant:this.tickFontVariant[2]}];this._text?this._text&&(g||u)&&this._text.update(this.bounds,this.labels,y,this.ticks,v):this._text=n(this.gl,this.bounds,this.labels,y,this.ticks,v),this._lines&&u&&(this._lines.dispose(),this._lines=null),this._lines||(this._lines=i(this.gl,this.bounds,this.ticks))};var g=[new m,new m,new m];function y(t,e,r,n,i){for(var a=t.primalOffset,o=t.primalMinor,s=t.mirrorOffset,l=t.mirrorMinor,c=n[e],u=0;u<3;++u)if(e!==u){var h=a,f=s,p=o,d=l;c&1<<u&&(h=s,f=a,p=l,d=o),h[u]=r[0][u],f[u]=r[1][u],i[u]>0?(p[u]=-1,d[u]=0):(p[u]=0,d[u]=1)}}var v=[0,0,0],x={model:l,view:l,projection:l,_ortho:!1};d.isOpaque=function(){return!0},d.isTransparent=function(){return!1},d.drawTransparent=function(t){};var _=[0,0,0],b=[0,0,0],w=[0,0,0];d.draw=function(t){t=t||x;for(var e=this.gl,r=t.model||l,n=t.view||l,i=t.projection||l,a=this.bounds,s=t._ortho||!1,c=o(r,n,i,a,s),u=c.cubeEdges,h=c.axis,p=n[12],d=n[13],m=n[14],T=n[15],k=(s?2:1)*this.pixelRatio*(i[3]*p+i[7]*d+i[11]*m+i[15]*T)/e.drawingBufferHeight,A=0;A<3;++A)this.lastCubeProps.cubeEdges[A]=u[A],this.lastCubeProps.axis[A]=h[A];var M=g;for(A=0;A<3;++A)y(g[A],A,this.bounds,u,h);e=this.gl;var S,E,C,L=v;for(A=0;A<3;++A)this.backgroundEnable[A]?L[A]=h[A]:L[A]=0;for(this._background.draw(r,n,i,a,L,this.backgroundColor),this._lines.bind(r,n,i,this),A=0;A<3;++A){var I=[0,0,0];h[A]>0?I[A]=a[1][A]:I[A]=a[0][A];for(var P=0;P<2;++P){var z=(A+1+P)%3,O=(A+1+(1^P))%3;this.gridEnable[z]&&this._lines.drawGrid(z,O,this.bounds,I,this.gridColor[z],this.gridWidth[z]*this.pixelRatio)}for(P=0;P<2;++P)z=(A+1+P)%3,O=(A+1+(1^P))%3,this.zeroEnable[O]&&Math.min(a[0][O],a[1][O])<=0&&Math.max(a[0][O],a[1][O])>=0&&this._lines.drawZero(z,O,this.bounds,I,this.zeroLineColor[O],this.zeroLineWidth[O]*this.pixelRatio)}for(A=0;A<3;++A){this.lineEnable[A]&&this._lines.drawAxisLine(A,this.bounds,M[A].primalOffset,this.lineColor[A],this.lineWidth[A]*this.pixelRatio),this.lineMirror[A]&&this._lines.drawAxisLine(A,this.bounds,M[A].mirrorOffset,this.lineColor[A],this.lineWidth[A]*this.pixelRatio);var D=f(_,M[A].primalMinor),R=f(b,M[A].mirrorMinor),F=this.lineTickLength;for(P=0;P<3;++P){var B=k/r[5*P];D[P]*=F[P]*B,R[P]*=F[P]*B}this.lineTickEnable[A]&&this._lines.drawAxisTicks(A,M[A].primalOffset,D,this.lineTickColor[A],this.lineTickWidth[A]*this.pixelRatio),this.lineTickMirror[A]&&this._lines.drawAxisTicks(A,M[A].mirrorOffset,R,this.lineTickColor[A],this.lineTickWidth[A]*this.pixelRatio)}function N(t){(C=[0,0,0])[t]=1}function j(t,e,r){var n=(t+1)%3,i=(t+2)%3,a=e[n],o=e[i],s=r[n],l=r[i];a>0&&l>0||a>0&&l<0||a<0&&l>0||a<0&&l<0?N(n):(o>0&&s>0||o>0&&s<0||o<0&&s>0||o<0&&s<0)&&N(i)}for(this._lines.unbind(),this._text.bind(r,n,i,this.pixelRatio),A=0;A<3;++A){var U=M[A].primalMinor,V=M[A].mirrorMinor,q=f(w,M[A].primalOffset);for(P=0;P<3;++P)this.lineTickEnable[A]&&(q[P]+=k*U[P]*Math.max(this.lineTickLength[P],0)/r[5*P]);var H=[0,0,0];if(H[A]=1,this.tickEnable[A]){for(-3600===this.tickAngle[A]?(this.tickAngle[A]=0,this.tickAlign[A]=\"auto\"):this.tickAlign[A]=-1,E=1,\"auto\"===(S=[this.tickAlign[A],.5,E])[0]?S[0]=0:S[0]=parseInt(\"\"+S[0]),C=[0,0,0],j(A,U,V),P=0;P<3;++P)q[P]+=k*U[P]*this.tickPad[P]/r[5*P];this._text.drawTicks(A,this.tickSize[A],this.tickAngle[A],q,this.tickColor[A],H,C,S)}if(this.labelEnable[A]){for(E=0,C=[0,0,0],this.labels[A].length>4&&(N(A),E=1),\"auto\"===(S=[this.labelAlign[A],.5,E])[0]?S[0]=0:S[0]=parseInt(\"\"+S[0]),P=0;P<3;++P)q[P]+=k*U[P]*this.labelPad[P]/r[5*P];q[A]+=.5*(a[0][A]+a[1][A]),this._text.drawLabel(A,this.labelSize[A],this.labelAngle[A],q,this.labelColor[A],[0,0,0],C,S)}}this._text.unbind()},d.dispose=function(){this._text.dispose(),this._lines.dispose(),this._background.dispose(),this._lines=null,this._text=null,this._background=null,this.gl=null}},5304:function(t,e,r){\"use strict\";t.exports=function(t){for(var e=[],r=[],s=0,l=0;l<3;++l)for(var c=(l+1)%3,u=(l+2)%3,h=[0,0,0],f=[0,0,0],p=-1;p<=1;p+=2){r.push(s,s+2,s+1,s+1,s+2,s+3),h[l]=p,f[l]=p;for(var d=-1;d<=1;d+=2){h[c]=d;for(var m=-1;m<=1;m+=2)h[u]=m,e.push(h[0],h[1],h[2],f[0],f[1],f[2]),s+=1}var g=c;c=u,u=g}var y=n(t,new Float32Array(e)),v=n(t,new Uint16Array(r),t.ELEMENT_ARRAY_BUFFER),x=i(t,[{buffer:y,type:t.FLOAT,size:3,offset:0,stride:24},{buffer:y,type:t.FLOAT,size:3,offset:12,stride:24}],v),_=a(t);return _.attributes.position.location=0,_.attributes.normal.location=1,new o(t,y,x,_)};var n=r(2762),i=r(8116),a=r(1879).bg;function o(t,e,r,n){this.gl=t,this.buffer=e,this.vao=r,this.shader=n}var s=o.prototype;s.draw=function(t,e,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:t,view:e,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()}},6429:function(t,e,r){\"use strict\";t.exports=function(t,e,r,a,p){i(s,e,t),i(s,r,s);for(var v=0,x=0;x<2;++x){u[2]=a[x][2];for(var _=0;_<2;++_){u[1]=a[_][1];for(var b=0;b<2;++b)u[0]=a[b][0],f(l[v],u,s),v+=1}}var w=-1;for(x=0;x<8;++x){for(var T=l[x][3],k=0;k<3;++k)c[x][k]=l[x][k]/T;p&&(c[x][2]*=-1),T<0&&(w<0||c[x][2]<c[w][2])&&(w=x)}if(w<0){w=0;for(var A=0;A<3;++A){for(var M=(A+2)%3,S=(A+1)%3,E=-1,C=-1,L=0;L<2;++L){var I=(z=L<<A)+(L<<M)+(1-L<<S),P=z+(1-L<<M)+(L<<S);o(c[z],c[I],c[P],h)<0||(L?E=1:C=1)}if(E<0||C<0)C>E&&(w|=1<<A);else{for(L=0;L<2;++L){I=(z=L<<A)+(L<<M)+(1-L<<S),P=z+(1-L<<M)+(L<<S);var z,O=d([l[z],l[I],l[P],l[z+(1<<M)+(1<<S)]]);L?E=O:C=O}C>E&&(w|=1<<A)}}}var D=7^w,R=-1;for(x=0;x<8;++x)x!==w&&x!==D&&(R<0||c[R][1]>c[x][1])&&(R=x);var F=-1;for(x=0;x<3;++x)(N=R^1<<x)!==w&&N!==D&&(F<0&&(F=N),(S=c[N])[0]<c[F][0]&&(F=N));var B=-1;for(x=0;x<3;++x){var N;(N=R^1<<x)!==w&&N!==D&&N!==F&&(B<0&&(B=N),(S=c[N])[0]>c[B][0]&&(B=N))}var j=m;j[0]=j[1]=j[2]=0,j[n.log2(F^R)]=R&F,j[n.log2(R^B)]=R&B;var U=7^B;U===w||U===D?(U=7^F,j[n.log2(B^U)]=U&B):j[n.log2(F^U)]=U&F;var V=g,q=w;for(A=0;A<3;++A)V[A]=q&1<<A?-1:1;return y};var n=r(8828),i=r(6760),a=r(5202),o=r(3250),s=new Array(16),l=new Array(8),c=new Array(8),u=new Array(3),h=[0,0,0];function f(t,e,r){for(var n=0;n<4;++n){t[n]=r[12+n];for(var i=0;i<3;++i)t[n]+=e[i]*r[4*i+n]}}!function(){for(var t=0;t<8;++t)l[t]=[1,1,1,1],c[t]=[1,1,1]}();var p=[[0,0,1,0,0],[0,0,-1,1,0],[0,-1,0,1,0],[0,1,0,1,0],[-1,0,0,1,0],[1,0,0,1,0]];function d(t){for(var e=0;e<p.length;++e)if((t=a.positive(t,p[e])).length<3)return 0;var r=t[0],n=r[0]/r[3],i=r[1]/r[3],o=0;for(e=1;e+1<t.length;++e){var s=t[e],l=t[e+1],c=s[0]/s[3]-n,u=s[1]/s[3]-i,h=l[0]/l[3]-n,f=l[1]/l[3]-i;o+=Math.abs(c*f-u*h)}return o}var m=[1,1,1],g=[0,0,0],y={cubeEdges:m,axis:g}},501:function(t,e,r){\"use strict\";t.exports=function(t,e,r){var o=[],s=[0,0,0],l=[0,0,0],c=[0,0,0],u=[0,0,0];o.push(0,0,1,0,1,1,0,0,-1,0,0,-1,0,1,1,0,1,-1);for(var h=0;h<3;++h){for(var f=o.length/3|0,d=0;d<r[h].length;++d){var m=+r[h][d].x;o.push(m,0,1,m,1,1,m,0,-1,m,0,-1,m,1,1,m,1,-1)}var g=o.length/3|0;s[h]=f,l[h]=g-f,f=o.length/3|0;for(var y=0;y<r[h].length;++y)m=+r[h][y].x,o.push(m,0,1,m,1,1,m,0,-1,m,0,-1,m,1,1,m,1,-1);g=o.length/3|0,c[h]=f,u[h]=g-f}var v=n(t,new Float32Array(o)),x=i(t,[{buffer:v,type:t.FLOAT,size:3,stride:0,offset:0}]),_=a(t);return _.attributes.position.location=0,new p(t,v,x,_,l,s,u,c)};var n=r(2762),i=r(8116),a=r(1879).n,o=[0,0,0],s=[0,0,0],l=[0,0,0],c=[0,0,0],u=[1,1];function h(t){return t[0]=t[1]=t[2]=0,t}function f(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}function p(t,e,r,n,i,a,o,s){this.gl=t,this.vertBuffer=e,this.vao=r,this.shader=n,this.tickCount=i,this.tickOffset=a,this.gridCount=o,this.gridOffset=s}var d=p.prototype;d.bind=function(t,e,r){this.shader.bind(),this.shader.uniforms.model=t,this.shader.uniforms.view=e,this.shader.uniforms.projection=r,u[0]=this.gl.drawingBufferWidth,u[1]=this.gl.drawingBufferHeight,this.shader.uniforms.screenShape=u,this.vao.bind()},d.unbind=function(){this.vao.unbind()},d.drawAxisLine=function(t,e,r,n,i){var a=h(s);this.shader.uniforms.majorAxis=s,a[t]=e[1][t]-e[0][t],this.shader.uniforms.minorAxis=a;var o,u=f(c,r);u[t]+=e[0][t],this.shader.uniforms.offset=u,this.shader.uniforms.lineWidth=i,this.shader.uniforms.color=n,(o=h(l))[(t+2)%3]=1,this.shader.uniforms.screenAxis=o,this.vao.draw(this.gl.TRIANGLES,6),(o=h(l))[(t+1)%3]=1,this.shader.uniforms.screenAxis=o,this.vao.draw(this.gl.TRIANGLES,6)},d.drawAxisTicks=function(t,e,r,n,i){if(this.tickCount[t]){var a=h(o);a[t]=1,this.shader.uniforms.majorAxis=a,this.shader.uniforms.offset=e,this.shader.uniforms.minorAxis=r,this.shader.uniforms.color=n,this.shader.uniforms.lineWidth=i;var s=h(l);s[t]=1,this.shader.uniforms.screenAxis=s,this.vao.draw(this.gl.TRIANGLES,this.tickCount[t],this.tickOffset[t])}},d.drawGrid=function(t,e,r,n,i,a){if(this.gridCount[t]){var u=h(s);u[e]=r[1][e]-r[0][e],this.shader.uniforms.minorAxis=u;var p=f(c,n);p[e]+=r[0][e],this.shader.uniforms.offset=p;var d=h(o);d[t]=1,this.shader.uniforms.majorAxis=d;var m=h(l);m[t]=1,this.shader.uniforms.screenAxis=m,this.shader.uniforms.lineWidth=a,this.shader.uniforms.color=i,this.vao.draw(this.gl.TRIANGLES,this.gridCount[t],this.gridOffset[t])}},d.drawZero=function(t,e,r,n,i,a){var o=h(s);this.shader.uniforms.majorAxis=o,o[t]=r[1][t]-r[0][t],this.shader.uniforms.minorAxis=o;var u=f(c,n);u[t]+=r[0][t],this.shader.uniforms.offset=u;var p=h(l);p[e]=1,this.shader.uniforms.screenAxis=p,this.shader.uniforms.lineWidth=a,this.shader.uniforms.color=i,this.vao.draw(this.gl.TRIANGLES,6)},d.dispose=function(){this.vao.dispose(),this.vertBuffer.dispose(),this.shader.dispose()}},1879:function(t,e,r){\"use strict\";var n=r(3236),i=r(9405),a=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nattribute vec3 position;\\n\\nuniform mat4 model, view, projection;\\nuniform vec3 offset, majorAxis, minorAxis, screenAxis;\\nuniform float lineWidth;\\nuniform vec2 screenShape;\\n\\nvec3 project(vec3 p) {\\n vec4 pp = projection * (view * (model * vec4(p, 1.0)));\\n return pp.xyz / max(pp.w, 0.0001);\\n}\\n\\nvoid main() {\\n vec3 major = position.x * majorAxis;\\n vec3 minor = position.y * minorAxis;\\n\\n vec3 vPosition = major + minor + offset;\\n vec3 pPosition = project(vPosition);\\n vec3 offset = project(vPosition + screenAxis * position.z);\\n\\n vec2 screen = normalize((offset - pPosition).xy * screenShape) / screenShape;\\n\\n gl_Position = vec4(pPosition + vec3(0.5 * screen * lineWidth, 0), 1.0);\\n}\\n\"]),o=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nuniform vec4 color;\\nvoid main() {\\n gl_FragColor = color;\\n}\"]);e.n=function(t){return i(t,a,o,null,[{name:\"position\",type:\"vec3\"}])};var s=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nattribute vec3 position;\\n\\nuniform mat4 model, view, projection;\\nuniform vec3 offset, axis, alignDir, alignOpt;\\nuniform float scale, angle, pixelScale;\\nuniform vec2 resolution;\\n\\nvec3 project(vec3 p) {\\n vec4 pp = projection * (view * (model * vec4(p, 1.0)));\\n return pp.xyz / max(pp.w, 0.0001);\\n}\\n\\nfloat computeViewAngle(vec3 a, vec3 b) {\\n vec3 A = project(a);\\n vec3 B = project(b);\\n\\n return atan(\\n (B.y - A.y) * resolution.y,\\n (B.x - A.x) * resolution.x\\n );\\n}\\n\\nconst float PI = 3.141592;\\nconst float TWO_PI = 2.0 * PI;\\nconst float HALF_PI = 0.5 * PI;\\nconst float ONE_AND_HALF_PI = 1.5 * PI;\\n\\nint option = int(floor(alignOpt.x + 0.001));\\nfloat hv_ratio = alignOpt.y;\\nbool enableAlign = (alignOpt.z != 0.0);\\n\\nfloat mod_angle(float a) {\\n return mod(a, PI);\\n}\\n\\nfloat positive_angle(float a) {\\n return mod_angle((a < 0.0) ?\\n a + TWO_PI :\\n a\\n );\\n}\\n\\nfloat look_upwards(float a) {\\n float b = positive_angle(a);\\n return ((b > 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}\\n\"]),l=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nuniform vec4 color;\\nvoid main() {\\n gl_FragColor = color;\\n}\"]);e.Q=function(t){return i(t,s,l,null,[{name:\"position\",type:\"vec3\"}])};var c=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}\\n\"]),u=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}\"]);e.bg=function(t){return i(t,c,u,null,[{name:\"position\",type:\"vec3\"},{name:\"normal\",type:\"vec3\"}])}},4935:function(t,e,r){\"use strict\";t.exports=function(t,e,r,i,o,l){var c=n(t),h=a(t,[{buffer:c,size:3}]),f=s(t);f.attributes.position.location=0;var p=new u(t,f,c,h);return p.update(e,r,i,o,l),p};var n=r(2762),a=r(8116),o=r(4359),s=r(1879).Q,l=window||i.global||{},c=l.__TEXT_CACHE||{};function u(t,e,r,n){this.gl=t,this.shader=e,this.buffer=r,this.vao=n,this.tickOffset=this.tickCount=this.labelOffset=this.labelCount=null}l.__TEXT_CACHE={};var h=u.prototype,f=[0,0];h.bind=function(t,e,r,n){this.vao.bind(),this.shader.bind();var i=this.shader.uniforms;i.model=t,i.view=e,i.projection=r,i.pixelScale=n,f[0]=this.gl.drawingBufferWidth,f[1]=this.gl.drawingBufferHeight,this.shader.uniforms.resolution=f},h.unbind=function(){this.vao.unbind()},h.update=function(t,e,r,n,i){var a=[];function s(t,e,r,n,i,s){var l=[r.style,r.weight,r.variant,r.family].join(\"_\"),u=c[l];u||(u=c[l]={});var h=u[e];h||(h=u[e]=function(t,e){try{return o(t,e)}catch(e){return console.warn('error vectorizing text:\"'+t+'\" error:',e),{cells:[],positions:[]}}}(e,{triangles:!0,font:r.family,fontStyle:r.style,fontWeight:r.weight,fontVariant:r.variant,textAlign:\"center\",textBaseline:\"middle\",lineSpacing:i,styletags:s}));for(var f=(n||12)/12,p=h.positions,d=h.cells,m=0,g=d.length;m<g;++m)for(var y=d[m],v=2;v>=0;--v){var x=p[y[v]];a.push(f*x[0],-f*x[1],t)}}for(var l=[0,0,0],u=[0,0,0],h=[0,0,0],f=[0,0,0],p={breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},d=0;d<3;++d){h[d]=a.length/3|0,s(.5*(t[0][d]+t[1][d]),e[d],r[d],12,1.25,p),f[d]=(a.length/3|0)-h[d],l[d]=a.length/3|0;for(var m=0;m<n[d].length;++m)if(n[d][m].text){var g={family:n[d][m].font||i[d].family,style:i[d].fontStyle||i[d].style,weight:i[d].fontWeight||i[d].weight,variant:i[d].fontVariant||i[d].variant};s(n[d][m].x,n[d][m].text,g,n[d][m].fontSize||12,1.25,p)}u[d]=(a.length/3|0)-l[d]}this.buffer.update(a),this.tickOffset=l,this.tickCount=u,this.labelOffset=h,this.labelCount=f},h.drawTicks=function(t,e,r,n,i,a,o,s){this.tickCount[t]&&(this.shader.uniforms.axis=a,this.shader.uniforms.color=i,this.shader.uniforms.angle=r,this.shader.uniforms.scale=e,this.shader.uniforms.offset=n,this.shader.uniforms.alignDir=o,this.shader.uniforms.alignOpt=s,this.vao.draw(this.gl.TRIANGLES,this.tickCount[t],this.tickOffset[t]))},h.drawLabel=function(t,e,r,n,i,a,o,s){this.labelCount[t]&&(this.shader.uniforms.axis=a,this.shader.uniforms.color=i,this.shader.uniforms.angle=r,this.shader.uniforms.scale=e,this.shader.uniforms.offset=n,this.shader.uniforms.alignDir=o,this.shader.uniforms.alignOpt=s,this.vao.draw(this.gl.TRIANGLES,this.labelCount[t],this.labelOffset[t]))},h.dispose=function(){this.shader.dispose(),this.vao.dispose(),this.buffer.dispose()}},6444:function(t,e){\"use strict\";function r(t,e){var r=t+\"\",n=r.indexOf(\".\"),i=0;n>=0&&(i=r.length-n-1);var a=Math.pow(10,i),o=Math.round(t*e*a),s=o+\"\";if(s.indexOf(\"e\")>=0)return s;var l=o/a,c=o%a;o<0?(l=0|-Math.ceil(l),c=0|-c):(l=0|Math.floor(l),c|=0);var u=\"\"+l;if(o<0&&(u=\"-\"+u),i){for(var h=\"\"+c;h.length<i;)h=\"0\"+h;return u+\".\"+h}return u}e.create=function(t,e){for(var n=[],i=0;i<3;++i){for(var a=[],o=(t[0][i],t[1][i],0);o*e[i]<=t[1][i];++o)a.push({x:o*e[i],text:r(e[i],o)});for(o=-1;o*e[i]>=t[0][i];--o)a.push({x:o*e[i],text:r(e[i],o)});n.push(a)}return n},e.equal=function(t,e){for(var r=0;r<3;++r){if(t[r].length!==e[r].length)return!1;for(var n=0;n<t[r].length;++n){var i=t[r][n],a=e[r][n];if(i.x!==a.x||i.text!==a.text||i.font!==a.font||i.fontColor!==a.fontColor||i.fontSize!==a.fontSize||i.dx!==a.dx||i.dy!==a.dy)return!1}}return!0}},5445:function(t,e,r){\"use strict\";t.exports=function(t,e,r,l,h){var f=e.model||c,p=e.view||c,y=e.projection||c,v=e._ortho||!1,x=t.bounds,_=(h=h||a(f,p,y,x,v)).axis;o(u,p,f),o(u,y,u);for(var b=m,w=0;w<3;++w)b[w].lo=1/0,b[w].hi=-1/0,b[w].pixelsPerDataUnit=1/0;var T=n(s(u,u));s(u,u);for(var k=0;k<3;++k){var A=(k+1)%3,M=(k+2)%3,S=g;t:for(w=0;w<2;++w){var E=[];if(_[k]<0!=!!w){S[k]=x[w][k];for(var C=0;C<2;++C){S[A]=x[C^w][A];for(var L=0;L<2;++L)S[M]=x[L^C^w][M],E.push(S.slice())}var I=v?5:4;for(C=I;C===I;++C){if(0===E.length)continue t;E=i.positive(E,T[C])}for(C=0;C<E.length;++C){M=E[C];var P=d(g,u,M,r,l);for(L=0;L<3;++L)b[L].lo=Math.min(b[L].lo,M[L]),b[L].hi=Math.max(b[L].hi,M[L]),L!==k&&(b[L].pixelsPerDataUnit=Math.min(b[L].pixelsPerDataUnit,Math.abs(P[L])))}}}}return b};var n=r(5033),i=r(5202),a=r(6429),o=r(6760),s=r(5665),l=r(5352),c=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),u=new Float32Array(16);function h(t,e,r){this.lo=t,this.hi=e,this.pixelsPerDataUnit=r}var f=[0,0,0,1],p=[0,0,0,1];function d(t,e,r,n,i){for(var a=0;a<3;++a){for(var o=f,s=p,c=0;c<3;++c)s[c]=o[c]=r[c];s[3]=o[3]=1,s[a]+=1,l(s,s,e),s[3]<0&&(t[a]=1/0),o[a]-=1,l(o,o,e),o[3]<0&&(t[a]=1/0);var u=(o[0]/o[3]-s[0]/s[3])*n,h=(o[1]/o[3]-s[1]/s[3])*i;t[a]=.25*Math.sqrt(u*u+h*h)}return t}var m=[new h(1/0,-1/0,1/0),new h(1/0,-1/0,1/0),new h(1/0,-1/0,1/0)],g=[0,0,0]},2762:function(t,e,r){\"use strict\";var n=r(1888),i=r(5298),a=r(9618),o=[\"uint8\",\"uint8_clamped\",\"uint16\",\"uint32\",\"int8\",\"int16\",\"int32\",\"float32\"];function s(t,e,r,n,i){this.gl=t,this.type=e,this.handle=r,this.length=n,this.usage=i}var l=s.prototype;function c(t,e,r,n,i,a){var o=i.length*i.BYTES_PER_ELEMENT;if(a<0)return t.bufferData(e,i,n),o;if(o+a>r)throw new Error(\"gl-buffer: If resizing buffer, must not specify offset\");return t.bufferSubData(e,a,i),r}function u(t,e){for(var r=n.malloc(t.length,e),i=t.length,a=0;a<i;++a)r[a]=t[a];return r}l.bind=function(){this.gl.bindBuffer(this.type,this.handle)},l.unbind=function(){this.gl.bindBuffer(this.type,null)},l.dispose=function(){this.gl.deleteBuffer(this.handle)},l.update=function(t,e){if(\"number\"!=typeof e&&(e=-1),this.bind(),\"object\"==typeof t&&void 0!==t.shape){var r=t.dtype;if(o.indexOf(r)<0&&(r=\"float32\"),this.type===this.gl.ELEMENT_ARRAY_BUFFER&&(r=gl.getExtension(\"OES_element_index_uint\")&&\"uint16\"!==r?\"uint32\":\"uint16\"),r===t.dtype&&function(t,e){for(var r=1,n=e.length-1;n>=0;--n){if(e[n]!==r)return!1;r*=t[n]}return!0}(t.shape,t.stride))0===t.offset&&t.data.length===t.shape[0]?this.length=c(this.gl,this.type,this.length,this.usage,t.data,e):this.length=c(this.gl,this.type,this.length,this.usage,t.data.subarray(t.offset,t.shape[0]),e);else{var s=n.malloc(t.size,r),l=a(s,t.shape);i.assign(l,t),this.length=c(this.gl,this.type,this.length,this.usage,e<0?s:s.subarray(0,t.size),e),n.free(s)}}else if(Array.isArray(t)){var h;h=this.type===this.gl.ELEMENT_ARRAY_BUFFER?u(t,\"uint16\"):u(t,\"float32\"),this.length=c(this.gl,this.type,this.length,this.usage,e<0?h:h.subarray(0,t.length),e),n.free(h)}else if(\"object\"==typeof t&&\"number\"==typeof t.length)this.length=c(this.gl,this.type,this.length,this.usage,t,e);else{if(\"number\"!=typeof t&&void 0!==t)throw new Error(\"gl-buffer: Invalid data type\");if(e>=0)throw new Error(\"gl-buffer: Cannot specify offset when resizing buffer\");(t|=0)<=0&&(t=1),this.gl.bufferData(this.type,0|t,this.usage),this.length=t}},t.exports=function(t,e,r,n){if(r=r||t.ARRAY_BUFFER,n=n||t.DYNAMIC_DRAW,r!==t.ARRAY_BUFFER&&r!==t.ELEMENT_ARRAY_BUFFER)throw new Error(\"gl-buffer: Invalid type for webgl buffer, must be either gl.ARRAY_BUFFER or gl.ELEMENT_ARRAY_BUFFER\");if(n!==t.DYNAMIC_DRAW&&n!==t.STATIC_DRAW&&n!==t.STREAM_DRAW)throw new Error(\"gl-buffer: Invalid usage for buffer, must be either gl.DYNAMIC_DRAW, gl.STATIC_DRAW or gl.STREAM_DRAW\");var i=t.createBuffer(),a=new s(t,r,i,0,n);return a.update(e),a}},6405:function(t,e,r){\"use strict\";var n=r(2931);t.exports=function(t,e){var r=t.positions,i=t.vectors,a={positions:[],vertexIntensity:[],vertexIntensityBounds:t.vertexIntensityBounds,vectors:[],cells:[],coneOffset:t.coneOffset,colormap:t.colormap};if(0===t.positions.length)return e&&(e[0]=[0,0,0],e[1]=[0,0,0]),a;for(var o=0,s=1/0,l=-1/0,c=1/0,u=-1/0,h=1/0,f=-1/0,p=null,d=null,m=[],g=1/0,y=!1,v=\"raw\"===t.coneSizemode,x=0;x<r.length;x++){var _=r[x];s=Math.min(_[0],s),l=Math.max(_[0],l),c=Math.min(_[1],c),u=Math.max(_[1],u),h=Math.min(_[2],h),f=Math.max(_[2],f);var b=i[x];if(n.length(b)>o&&(o=n.length(b)),x&&!v){var w=2*n.distance(p,_)/(n.length(d)+n.length(b));w?(g=Math.min(g,w),y=!1):y=!0}y||(p=_,d=b),m.push(b)}var T=[s,c,h],k=[l,u,f];e&&(e[0]=T,e[1]=k),0===o&&(o=1);var A=1/o;isFinite(g)||(g=1),a.vectorScale=g;var M=t.coneSize||(v?1:.5);t.absoluteConeSize&&(M=t.absoluteConeSize*A),a.coneScale=M,x=0;for(var S=0;x<r.length;x++)for(var E=(_=r[x])[0],C=_[1],L=_[2],I=m[x],P=n.length(I)*A,z=0;z<8;z++){a.positions.push([E,C,L,S++]),a.positions.push([E,C,L,S++]),a.positions.push([E,C,L,S++]),a.positions.push([E,C,L,S++]),a.positions.push([E,C,L,S++]),a.positions.push([E,C,L,S++]),a.vectors.push(I),a.vectors.push(I),a.vectors.push(I),a.vectors.push(I),a.vectors.push(I),a.vectors.push(I),a.vertexIntensity.push(P,P,P),a.vertexIntensity.push(P,P,P);var O=a.positions.length;a.cells.push([O-6,O-5,O-4],[O-3,O-2,O-1])}return a};var i=r(614);t.exports.createMesh=r(9060),t.exports.createConeMesh=function(e,r){return t.exports.createMesh(e,r,{shaders:i,traceType:\"cone\"})}},9060:function(t,e,r){\"use strict\";var n=r(9405),i=r(2762),a=r(8116),o=r(7766),s=r(6760),l=r(7608),c=r(9618),u=r(6729),h=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function f(t,e,r,n,i,a,o,s,l,c,u){this.gl=t,this.pixelRatio=1,this.cells=[],this.positions=[],this.intensity=[],this.texture=e,this.dirty=!0,this.triShader=r,this.pickShader=n,this.trianglePositions=i,this.triangleVectors=a,this.triangleColors=s,this.triangleUVs=l,this.triangleIds=o,this.triangleVAO=c,this.triangleCount=0,this.pickId=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lightPosition=[1e5,1e5,0],this.ambientLight=.8,this.diffuseLight=.8,this.specularLight=2,this.roughness=.5,this.fresnel=1.5,this.opacity=1,this.traceType=u,this.tubeScale=1,this.coneScale=2,this.vectorScale=1,this.coneOffset=.25,this._model=h,this._view=h,this._projection=h,this._resolution=[1,1]}var p=f.prototype;p.isOpaque=function(){return this.opacity>=1},p.isTransparent=function(){return this.opacity<1},p.pickSlots=1,p.setPickBase=function(t){this.pickId=t},p.update=function(t){t=t||{};var e=this.gl;this.dirty=!0,\"lightPosition\"in t&&(this.lightPosition=t.lightPosition),\"opacity\"in t&&(this.opacity=t.opacity),\"ambient\"in t&&(this.ambientLight=t.ambient),\"diffuse\"in t&&(this.diffuseLight=t.diffuse),\"specular\"in t&&(this.specularLight=t.specular),\"roughness\"in t&&(this.roughness=t.roughness),\"fresnel\"in t&&(this.fresnel=t.fresnel),void 0!==t.tubeScale&&(this.tubeScale=t.tubeScale),void 0!==t.vectorScale&&(this.vectorScale=t.vectorScale),void 0!==t.coneScale&&(this.coneScale=t.coneScale),void 0!==t.coneOffset&&(this.coneOffset=t.coneOffset),t.colormap&&(this.texture.shape=[256,256],this.texture.minFilter=e.LINEAR_MIPMAP_LINEAR,this.texture.magFilter=e.LINEAR,this.texture.setPixels(function(t){for(var e=u({colormap:t,nshades:256,format:\"rgba\"}),r=new Uint8Array(1024),n=0;n<256;++n){for(var i=e[n],a=0;a<3;++a)r[4*n+a]=i[a];r[4*n+3]=255*i[3]}return c(r,[256,256,4],[4,0,1])}(t.colormap)),this.texture.generateMipmap());var r=t.cells,n=t.positions,i=t.vectors;if(n&&r&&i){var a=[],o=[],s=[],l=[],h=[];this.cells=r,this.positions=n,this.vectors=i;var f=t.meshColor||[1,1,1,1],p=t.vertexIntensity,d=1/0,m=-1/0;if(p)if(t.vertexIntensityBounds)d=+t.vertexIntensityBounds[0],m=+t.vertexIntensityBounds[1];else for(var g=0;g<p.length;++g){var y=p[g];d=Math.min(d,y),m=Math.max(m,y)}else for(g=0;g<n.length;++g)y=n[g][2],d=Math.min(d,y),m=Math.max(m,y);for(this.intensity=p||function(t){for(var e=t.length,r=new Array(e),n=0;n<e;++n)r[n]=t[n][2];return r}(n),this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],g=0;g<n.length;++g)for(var v=n[g],x=0;x<3;++x)!isNaN(v[x])&&isFinite(v[x])&&(this.bounds[0][x]=Math.min(this.bounds[0][x],v[x]),this.bounds[1][x]=Math.max(this.bounds[1][x],v[x]));var _=0;t:for(g=0;g<r.length;++g){var b=r[g];if(3===b.length){for(x=0;x<3;++x){v=n[T=b[x]];for(var w=0;w<3;++w)if(isNaN(v[w])||!isFinite(v[w]))continue t}for(x=0;x<3;++x){var T;v=n[T=b[2-x]],a.push(v[0],v[1],v[2],v[3]);var k=i[T];o.push(k[0],k[1],k[2],k[3]||0);var A,M=f;3===M.length?s.push(M[0],M[1],M[2],1):s.push(M[0],M[1],M[2],M[3]),A=p?[(p[T]-d)/(m-d),0]:[(v[2]-d)/(m-d),0],l.push(A[0],A[1]),h.push(g)}_+=1}}this.triangleCount=_,this.trianglePositions.update(a),this.triangleVectors.update(o),this.triangleColors.update(s),this.triangleUVs.update(l),this.triangleIds.update(new Uint32Array(h))}},p.drawTransparent=p.draw=function(t){t=t||{};for(var e=this.gl,r=t.model||h,n=t.view||h,i=t.projection||h,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]);var c={model:r,view:n,projection:i,inverseModel:h.slice(),clipBounds:a,kambient:this.ambientLight,kdiffuse:this.diffuseLight,kspecular:this.specularLight,roughness:this.roughness,fresnel:this.fresnel,eyePosition:[0,0,0],lightPosition:[0,0,0],opacity:this.opacity,tubeScale:this.tubeScale,vectorScale:this.vectorScale,coneScale:this.coneScale,coneOffset:this.coneOffset,texture:0};c.inverseModel=l(c.inverseModel,c.model),e.disable(e.CULL_FACE),this.texture.bind(0);var u=new Array(16);for(s(u,c.view,c.model),s(u,c.projection,u),l(u,u),o=0;o<3;++o)c.eyePosition[o]=u[12+o]/u[15];var f=u[15];for(o=0;o<3;++o)f+=this.lightPosition[o]*u[4*o+3];for(o=0;o<3;++o){for(var p=u[12+o],d=0;d<3;++d)p+=u[4*d+o]*this.lightPosition[d];c.lightPosition[o]=p/f}if(this.triangleCount>0){var m=this.triShader;m.bind(),m.uniforms=c,this.triangleVAO.bind(),e.drawArrays(e.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind()}},p.drawPick=function(t){t=t||{};for(var e=this.gl,r=t.model||h,n=t.view||h,i=t.projection||h,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=[e.drawingBufferWidth,e.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(),e.drawArrays(e.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind())},p.pick=function(t){if(!t)return null;if(t.id!==this.pickId)return null;var e=t.value[0]+256*t.value[1]+65536*t.value[2],r=this.cells[e],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=e),i},p.dispose=function(){this.texture.dispose(),this.triShader.dispose(),this.pickShader.dispose(),this.triangleVAO.dispose(),this.trianglePositions.dispose(),this.triangleVectors.dispose(),this.triangleColors.dispose(),this.triangleUVs.dispose(),this.triangleIds.dispose()},t.exports=function(t,e,r){var s=r.shaders;1===arguments.length&&(t=(e=t).gl);var l=function(t,e){var r=n(t,e.meshShader.vertex,e.meshShader.fragment,null,e.meshShader.attributes);return r.attributes.position.location=0,r.attributes.color.location=2,r.attributes.uv.location=3,r.attributes.vector.location=4,r}(t,s),u=function(t,e){var r=n(t,e.pickShader.vertex,e.pickShader.fragment,null,e.pickShader.attributes);return r.attributes.position.location=0,r.attributes.id.location=1,r.attributes.vector.location=4,r}(t,s),h=o(t,c(new Uint8Array([255,255,255,255]),[1,1,4]));h.generateMipmap(),h.minFilter=t.LINEAR_MIPMAP_LINEAR,h.magFilter=t.LINEAR;var p=i(t),d=i(t),m=i(t),g=i(t),y=i(t),v=new f(t,h,l,u,p,d,y,m,g,a(t,[{buffer:p,type:t.FLOAT,size:4},{buffer:y,type:t.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:m,type:t.FLOAT,size:4},{buffer:g,type:t.FLOAT,size:2},{buffer:d,type:t.FLOAT,size:4}]),r.traceType||\"cone\");return v.update(e),v}},614:function(t,e,r){var n=r(3236),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}\"]);e.meshShader={vertex:i,fragment:a,attributes:[{name:\"position\",type:\"vec4\"},{name:\"color\",type:\"vec4\"},{name:\"uv\",type:\"vec2\"},{name:\"vector\",type:\"vec3\"}]},e.pickShader={vertex:o,fragment:s,attributes:[{name:\"position\",type:\"vec4\"},{name:\"id\",type:\"vec4\"},{name:\"vector\",type:\"vec3\"}]}},737:function(t){t.exports={0:\"NONE\",1:\"ONE\",2:\"LINE_LOOP\",3:\"LINE_STRIP\",4:\"TRIANGLES\",5:\"TRIANGLE_STRIP\",6:\"TRIANGLE_FAN\",256:\"DEPTH_BUFFER_BIT\",512:\"NEVER\",513:\"LESS\",514:\"EQUAL\",515:\"LEQUAL\",516:\"GREATER\",517:\"NOTEQUAL\",518:\"GEQUAL\",519:\"ALWAYS\",768:\"SRC_COLOR\",769:\"ONE_MINUS_SRC_COLOR\",770:\"SRC_ALPHA\",771:\"ONE_MINUS_SRC_ALPHA\",772:\"DST_ALPHA\",773:\"ONE_MINUS_DST_ALPHA\",774:\"DST_COLOR\",775:\"ONE_MINUS_DST_COLOR\",776:\"SRC_ALPHA_SATURATE\",1024:\"STENCIL_BUFFER_BIT\",1028:\"FRONT\",1029:\"BACK\",1032:\"FRONT_AND_BACK\",1280:\"INVALID_ENUM\",1281:\"INVALID_VALUE\",1282:\"INVALID_OPERATION\",1285:\"OUT_OF_MEMORY\",1286:\"INVALID_FRAMEBUFFER_OPERATION\",2304:\"CW\",2305:\"CCW\",2849:\"LINE_WIDTH\",2884:\"CULL_FACE\",2885:\"CULL_FACE_MODE\",2886:\"FRONT_FACE\",2928:\"DEPTH_RANGE\",2929:\"DEPTH_TEST\",2930:\"DEPTH_WRITEMASK\",2931:\"DEPTH_CLEAR_VALUE\",2932:\"DEPTH_FUNC\",2960:\"STENCIL_TEST\",2961:\"STENCIL_CLEAR_VALUE\",2962:\"STENCIL_FUNC\",2963:\"STENCIL_VALUE_MASK\",2964:\"STENCIL_FAIL\",2965:\"STENCIL_PASS_DEPTH_FAIL\",2966:\"STENCIL_PASS_DEPTH_PASS\",2967:\"STENCIL_REF\",2968:\"STENCIL_WRITEMASK\",2978:\"VIEWPORT\",3024:\"DITHER\",3042:\"BLEND\",3088:\"SCISSOR_BOX\",3089:\"SCISSOR_TEST\",3106:\"COLOR_CLEAR_VALUE\",3107:\"COLOR_WRITEMASK\",3317:\"UNPACK_ALIGNMENT\",3333:\"PACK_ALIGNMENT\",3379:\"MAX_TEXTURE_SIZE\",3386:\"MAX_VIEWPORT_DIMS\",3408:\"SUBPIXEL_BITS\",3410:\"RED_BITS\",3411:\"GREEN_BITS\",3412:\"BLUE_BITS\",3413:\"ALPHA_BITS\",3414:\"DEPTH_BITS\",3415:\"STENCIL_BITS\",3553:\"TEXTURE_2D\",4352:\"DONT_CARE\",4353:\"FASTEST\",4354:\"NICEST\",5120:\"BYTE\",5121:\"UNSIGNED_BYTE\",5122:\"SHORT\",5123:\"UNSIGNED_SHORT\",5124:\"INT\",5125:\"UNSIGNED_INT\",5126:\"FLOAT\",5386:\"INVERT\",5890:\"TEXTURE\",6401:\"STENCIL_INDEX\",6402:\"DEPTH_COMPONENT\",6406:\"ALPHA\",6407:\"RGB\",6408:\"RGBA\",6409:\"LUMINANCE\",6410:\"LUMINANCE_ALPHA\",7680:\"KEEP\",7681:\"REPLACE\",7682:\"INCR\",7683:\"DECR\",7936:\"VENDOR\",7937:\"RENDERER\",7938:\"VERSION\",9728:\"NEAREST\",9729:\"LINEAR\",9984:\"NEAREST_MIPMAP_NEAREST\",9985:\"LINEAR_MIPMAP_NEAREST\",9986:\"NEAREST_MIPMAP_LINEAR\",9987:\"LINEAR_MIPMAP_LINEAR\",10240:\"TEXTURE_MAG_FILTER\",10241:\"TEXTURE_MIN_FILTER\",10242:\"TEXTURE_WRAP_S\",10243:\"TEXTURE_WRAP_T\",10497:\"REPEAT\",10752:\"POLYGON_OFFSET_UNITS\",16384:\"COLOR_BUFFER_BIT\",32769:\"CONSTANT_COLOR\",32770:\"ONE_MINUS_CONSTANT_COLOR\",32771:\"CONSTANT_ALPHA\",32772:\"ONE_MINUS_CONSTANT_ALPHA\",32773:\"BLEND_COLOR\",32774:\"FUNC_ADD\",32777:\"BLEND_EQUATION_RGB\",32778:\"FUNC_SUBTRACT\",32779:\"FUNC_REVERSE_SUBTRACT\",32819:\"UNSIGNED_SHORT_4_4_4_4\",32820:\"UNSIGNED_SHORT_5_5_5_1\",32823:\"POLYGON_OFFSET_FILL\",32824:\"POLYGON_OFFSET_FACTOR\",32854:\"RGBA4\",32855:\"RGB5_A1\",32873:\"TEXTURE_BINDING_2D\",32926:\"SAMPLE_ALPHA_TO_COVERAGE\",32928:\"SAMPLE_COVERAGE\",32936:\"SAMPLE_BUFFERS\",32937:\"SAMPLES\",32938:\"SAMPLE_COVERAGE_VALUE\",32939:\"SAMPLE_COVERAGE_INVERT\",32968:\"BLEND_DST_RGB\",32969:\"BLEND_SRC_RGB\",32970:\"BLEND_DST_ALPHA\",32971:\"BLEND_SRC_ALPHA\",33071:\"CLAMP_TO_EDGE\",33170:\"GENERATE_MIPMAP_HINT\",33189:\"DEPTH_COMPONENT16\",33306:\"DEPTH_STENCIL_ATTACHMENT\",33635:\"UNSIGNED_SHORT_5_6_5\",33648:\"MIRRORED_REPEAT\",33901:\"ALIASED_POINT_SIZE_RANGE\",33902:\"ALIASED_LINE_WIDTH_RANGE\",33984:\"TEXTURE0\",33985:\"TEXTURE1\",33986:\"TEXTURE2\",33987:\"TEXTURE3\",33988:\"TEXTURE4\",33989:\"TEXTURE5\",33990:\"TEXTURE6\",33991:\"TEXTURE7\",33992:\"TEXTURE8\",33993:\"TEXTURE9\",33994:\"TEXTURE10\",33995:\"TEXTURE11\",33996:\"TEXTURE12\",33997:\"TEXTURE13\",33998:\"TEXTURE14\",33999:\"TEXTURE15\",34e3:\"TEXTURE16\",34001:\"TEXTURE17\",34002:\"TEXTURE18\",34003:\"TEXTURE19\",34004:\"TEXTURE20\",34005:\"TEXTURE21\",34006:\"TEXTURE22\",34007:\"TEXTURE23\",34008:\"TEXTURE24\",34009:\"TEXTURE25\",34010:\"TEXTURE26\",34011:\"TEXTURE27\",34012:\"TEXTURE28\",34013:\"TEXTURE29\",34014:\"TEXTURE30\",34015:\"TEXTURE31\",34016:\"ACTIVE_TEXTURE\",34024:\"MAX_RENDERBUFFER_SIZE\",34041:\"DEPTH_STENCIL\",34055:\"INCR_WRAP\",34056:\"DECR_WRAP\",34067:\"TEXTURE_CUBE_MAP\",34068:\"TEXTURE_BINDING_CUBE_MAP\",34069:\"TEXTURE_CUBE_MAP_POSITIVE_X\",34070:\"TEXTURE_CUBE_MAP_NEGATIVE_X\",34071:\"TEXTURE_CUBE_MAP_POSITIVE_Y\",34072:\"TEXTURE_CUBE_MAP_NEGATIVE_Y\",34073:\"TEXTURE_CUBE_MAP_POSITIVE_Z\",34074:\"TEXTURE_CUBE_MAP_NEGATIVE_Z\",34076:\"MAX_CUBE_MAP_TEXTURE_SIZE\",34338:\"VERTEX_ATTRIB_ARRAY_ENABLED\",34339:\"VERTEX_ATTRIB_ARRAY_SIZE\",34340:\"VERTEX_ATTRIB_ARRAY_STRIDE\",34341:\"VERTEX_ATTRIB_ARRAY_TYPE\",34342:\"CURRENT_VERTEX_ATTRIB\",34373:\"VERTEX_ATTRIB_ARRAY_POINTER\",34466:\"NUM_COMPRESSED_TEXTURE_FORMATS\",34467:\"COMPRESSED_TEXTURE_FORMATS\",34660:\"BUFFER_SIZE\",34661:\"BUFFER_USAGE\",34816:\"STENCIL_BACK_FUNC\",34817:\"STENCIL_BACK_FAIL\",34818:\"STENCIL_BACK_PASS_DEPTH_FAIL\",34819:\"STENCIL_BACK_PASS_DEPTH_PASS\",34877:\"BLEND_EQUATION_ALPHA\",34921:\"MAX_VERTEX_ATTRIBS\",34922:\"VERTEX_ATTRIB_ARRAY_NORMALIZED\",34930:\"MAX_TEXTURE_IMAGE_UNITS\",34962:\"ARRAY_BUFFER\",34963:\"ELEMENT_ARRAY_BUFFER\",34964:\"ARRAY_BUFFER_BINDING\",34965:\"ELEMENT_ARRAY_BUFFER_BINDING\",34975:\"VERTEX_ATTRIB_ARRAY_BUFFER_BINDING\",35040:\"STREAM_DRAW\",35044:\"STATIC_DRAW\",35048:\"DYNAMIC_DRAW\",35632:\"FRAGMENT_SHADER\",35633:\"VERTEX_SHADER\",35660:\"MAX_VERTEX_TEXTURE_IMAGE_UNITS\",35661:\"MAX_COMBINED_TEXTURE_IMAGE_UNITS\",35663:\"SHADER_TYPE\",35664:\"FLOAT_VEC2\",35665:\"FLOAT_VEC3\",35666:\"FLOAT_VEC4\",35667:\"INT_VEC2\",35668:\"INT_VEC3\",35669:\"INT_VEC4\",35670:\"BOOL\",35671:\"BOOL_VEC2\",35672:\"BOOL_VEC3\",35673:\"BOOL_VEC4\",35674:\"FLOAT_MAT2\",35675:\"FLOAT_MAT3\",35676:\"FLOAT_MAT4\",35678:\"SAMPLER_2D\",35680:\"SAMPLER_CUBE\",35712:\"DELETE_STATUS\",35713:\"COMPILE_STATUS\",35714:\"LINK_STATUS\",35715:\"VALIDATE_STATUS\",35716:\"INFO_LOG_LENGTH\",35717:\"ATTACHED_SHADERS\",35718:\"ACTIVE_UNIFORMS\",35719:\"ACTIVE_UNIFORM_MAX_LENGTH\",35720:\"SHADER_SOURCE_LENGTH\",35721:\"ACTIVE_ATTRIBUTES\",35722:\"ACTIVE_ATTRIBUTE_MAX_LENGTH\",35724:\"SHADING_LANGUAGE_VERSION\",35725:\"CURRENT_PROGRAM\",36003:\"STENCIL_BACK_REF\",36004:\"STENCIL_BACK_VALUE_MASK\",36005:\"STENCIL_BACK_WRITEMASK\",36006:\"FRAMEBUFFER_BINDING\",36007:\"RENDERBUFFER_BINDING\",36048:\"FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE\",36049:\"FRAMEBUFFER_ATTACHMENT_OBJECT_NAME\",36050:\"FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL\",36051:\"FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE\",36053:\"FRAMEBUFFER_COMPLETE\",36054:\"FRAMEBUFFER_INCOMPLETE_ATTACHMENT\",36055:\"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT\",36057:\"FRAMEBUFFER_INCOMPLETE_DIMENSIONS\",36061:\"FRAMEBUFFER_UNSUPPORTED\",36064:\"COLOR_ATTACHMENT0\",36096:\"DEPTH_ATTACHMENT\",36128:\"STENCIL_ATTACHMENT\",36160:\"FRAMEBUFFER\",36161:\"RENDERBUFFER\",36162:\"RENDERBUFFER_WIDTH\",36163:\"RENDERBUFFER_HEIGHT\",36164:\"RENDERBUFFER_INTERNAL_FORMAT\",36168:\"STENCIL_INDEX8\",36176:\"RENDERBUFFER_RED_SIZE\",36177:\"RENDERBUFFER_GREEN_SIZE\",36178:\"RENDERBUFFER_BLUE_SIZE\",36179:\"RENDERBUFFER_ALPHA_SIZE\",36180:\"RENDERBUFFER_DEPTH_SIZE\",36181:\"RENDERBUFFER_STENCIL_SIZE\",36194:\"RGB565\",36336:\"LOW_FLOAT\",36337:\"MEDIUM_FLOAT\",36338:\"HIGH_FLOAT\",36339:\"LOW_INT\",36340:\"MEDIUM_INT\",36341:\"HIGH_INT\",36346:\"SHADER_COMPILER\",36347:\"MAX_VERTEX_UNIFORM_VECTORS\",36348:\"MAX_VARYING_VECTORS\",36349:\"MAX_FRAGMENT_UNIFORM_VECTORS\",37440:\"UNPACK_FLIP_Y_WEBGL\",37441:\"UNPACK_PREMULTIPLY_ALPHA_WEBGL\",37442:\"CONTEXT_LOST_WEBGL\",37443:\"UNPACK_COLORSPACE_CONVERSION_WEBGL\",37444:\"BROWSER_DEFAULT_WEBGL\"}},5171:function(t,e,r){var n=r(737);t.exports=function(t){return n[t]}},9165:function(t,e,r){\"use strict\";t.exports=function(t){var e=t.gl,r=n(e),o=i(e,[{buffer:r,type:e.FLOAT,size:3,offset:0,stride:40},{buffer:r,type:e.FLOAT,size:4,offset:12,stride:40},{buffer:r,type:e.FLOAT,size:3,offset:28,stride:40}]),l=a(e);l.attributes.position.location=0,l.attributes.color.location=1,l.attributes.offset.location=2;var c=new s(e,r,o,l);return c.update(t),c};var n=r(2762),i=r(8116),a=r(3436),o=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function s(t,e,r,n){this.gl=t,this.shader=n,this.buffer=e,this.vao=r,this.pixelRatio=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lineWidth=[1,1,1],this.capSize=[10,10,10],this.lineCount=[0,0,0],this.lineOffset=[0,0,0],this.opacity=1,this.hasAlpha=!1}var l=s.prototype;function c(t,e){for(var r=0;r<3;++r)t[0][r]=Math.min(t[0][r],e[r]),t[1][r]=Math.max(t[1][r],e[r])}l.isOpaque=function(){return!this.hasAlpha},l.isTransparent=function(){return this.hasAlpha},l.drawTransparent=l.draw=function(t){var e=this.gl,r=this.shader.uniforms;this.shader.bind();var n=r.view=t.view||o,i=r.projection=t.projection||o;r.model=t.model||o,r.clipBounds=this.clipBounds,r.opacity=this.opacity;var a=n[12],s=n[13],l=n[14],c=n[15],u=(t._ortho?2:1)*this.pixelRatio*(i[3]*a+i[7]*s+i[11]*l+i[15]*c)/e.drawingBufferHeight;this.vao.bind();for(var h=0;h<3;++h)e.lineWidth(this.lineWidth[h]*this.pixelRatio),r.capSize=this.capSize[h]*u,this.lineCount[h]&&e.drawArrays(e.LINES,this.lineOffset[h],this.lineCount[h]);this.vao.unbind()};var u=function(){for(var t=new Array(3),e=0;e<3;++e){for(var r=[],n=1;n<=2;++n)for(var i=-1;i<=1;i+=2){var a=[0,0,0];a[(n+e)%3]=i,r.push(a)}t[e]=r}return t}();function h(t,e,r,n){for(var i=u[n],a=0;a<i.length;++a){var o=i[a];t.push(e[0],e[1],e[2],r[0],r[1],r[2],r[3],o[0],o[1],o[2])}return i.length}l.update=function(t){\"lineWidth\"in(t=t||{})&&(this.lineWidth=t.lineWidth,Array.isArray(this.lineWidth)||(this.lineWidth=[this.lineWidth,this.lineWidth,this.lineWidth])),\"capSize\"in t&&(this.capSize=t.capSize,Array.isArray(this.capSize)||(this.capSize=[this.capSize,this.capSize,this.capSize])),this.hasAlpha=!1,\"opacity\"in t&&(this.opacity=+t.opacity,this.opacity<1&&(this.hasAlpha=!0));var e=t.color||[[0,0,0],[0,0,0],[0,0,0]],r=t.position,n=t.error;if(Array.isArray(e[0])||(e=[e,e,e]),r&&n){var i=[],a=r.length,o=0;this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.lineCount=[0,0,0];for(var s=0;s<3;++s){this.lineOffset[s]=o;t:for(var l=0;l<a;++l){for(var u=r[l],f=0;f<3;++f)if(isNaN(u[f])||!isFinite(u[f]))continue t;var p,d=n[l],m=e[s];if(Array.isArray(m[0])&&(m=e[l]),3===m.length?m=[m[0],m[1],m[2],1]:4===m.length&&(m=[m[0],m[1],m[2],m[3]],!this.hasAlpha&&m[3]<1&&(this.hasAlpha=!0)),!isNaN(d[0][s])&&!isNaN(d[1][s]))d[0][s]<0&&((p=u.slice())[s]+=d[0][s],i.push(u[0],u[1],u[2],m[0],m[1],m[2],m[3],0,0,0,p[0],p[1],p[2],m[0],m[1],m[2],m[3],0,0,0),c(this.bounds,p),o+=2+h(i,p,m,s)),d[1][s]>0&&((p=u.slice())[s]+=d[1][s],i.push(u[0],u[1],u[2],m[0],m[1],m[2],m[3],0,0,0,p[0],p[1],p[2],m[0],m[1],m[2],m[3],0,0,0),c(this.bounds,p),o+=2+h(i,p,m,s))}this.lineCount[s]=o-this.lineOffset[s]}this.buffer.update(i)}},l.dispose=function(){this.shader.dispose(),this.buffer.dispose(),this.vao.dispose()}},3436:function(t,e,r){\"use strict\";var n=r(3236),i=r(9405),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}\"]);t.exports=function(t){return i(t,a,o,null,[{name:\"position\",type:\"vec3\"},{name:\"color\",type:\"vec4\"},{name:\"offset\",type:\"vec3\"}])}},2260:function(t,e,r){\"use strict\";var n=r(7766);t.exports=function(t,e,r,n){i||(i=t.FRAMEBUFFER_UNSUPPORTED,a=t.FRAMEBUFFER_INCOMPLETE_ATTACHMENT,o=t.FRAMEBUFFER_INCOMPLETE_DIMENSIONS,s=t.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT);var c=t.getExtension(\"WEBGL_draw_buffers\");if(!l&&c&&function(t,e){var r=t.getParameter(e.MAX_COLOR_ATTACHMENTS_WEBGL);l=new Array(r+1);for(var n=0;n<=r;++n){for(var i=new Array(r),a=0;a<n;++a)i[a]=t.COLOR_ATTACHMENT0+a;for(a=n;a<r;++a)i[a]=t.NONE;l[n]=i}}(t,c),Array.isArray(e)&&(n=r,r=0|e[1],e=0|e[0]),\"number\"!=typeof e)throw new Error(\"gl-fbo: Missing shape parameter\");var u=t.getParameter(t.MAX_RENDERBUFFER_SIZE);if(e<0||e>u||r<0||r>u)throw new Error(\"gl-fbo: Parameters are too large for FBO\");var h=1;if(\"color\"in(n=n||{})){if((h=Math.max(0|n.color,0))<0)throw new Error(\"gl-fbo: Must specify a nonnegative number of colors\");if(h>1){if(!c)throw new Error(\"gl-fbo: Multiple draw buffer extension not supported\");if(h>t.getParameter(c.MAX_COLOR_ATTACHMENTS_WEBGL))throw new Error(\"gl-fbo: Context does not support \"+h+\" draw buffers\")}}var f=t.UNSIGNED_BYTE,p=t.getExtension(\"OES_texture_float\");if(n.float&&h>0){if(!p)throw new Error(\"gl-fbo: Context does not support floating point textures\");f=t.FLOAT}else n.preferFloat&&h>0&&p&&(f=t.FLOAT);var m=!0;\"depth\"in n&&(m=!!n.depth);var g=!1;return\"stencil\"in n&&(g=!!n.stencil),new d(t,e,r,f,h,m,g,c)};var i,a,o,s,l=null;function c(t){return[t.getParameter(t.FRAMEBUFFER_BINDING),t.getParameter(t.RENDERBUFFER_BINDING),t.getParameter(t.TEXTURE_BINDING_2D)]}function u(t,e){t.bindFramebuffer(t.FRAMEBUFFER,e[0]),t.bindRenderbuffer(t.RENDERBUFFER,e[1]),t.bindTexture(t.TEXTURE_2D,e[2])}function h(t){switch(t){case i:throw new Error(\"gl-fbo: Framebuffer unsupported\");case a:throw new Error(\"gl-fbo: Framebuffer incomplete attachment\");case o:throw new Error(\"gl-fbo: Framebuffer incomplete dimensions\");case s:throw new Error(\"gl-fbo: Framebuffer incomplete missing attachment\");default:throw new Error(\"gl-fbo: Framebuffer failed for unspecified reason\")}}function f(t,e,r,i,a,o){if(!i)return null;var s=n(t,e,r,a,i);return s.magFilter=t.NEAREST,s.minFilter=t.NEAREST,s.mipSamples=1,s.bind(),t.framebufferTexture2D(t.FRAMEBUFFER,o,t.TEXTURE_2D,s.handle,0),s}function p(t,e,r,n,i){var a=t.createRenderbuffer();return t.bindRenderbuffer(t.RENDERBUFFER,a),t.renderbufferStorage(t.RENDERBUFFER,n,e,r),t.framebufferRenderbuffer(t.FRAMEBUFFER,i,t.RENDERBUFFER,a),a}function d(t,e,r,n,i,a,o,s){this.gl=t,this._shape=[0|e,0|r],this._destroyed=!1,this._ext=s,this.color=new Array(i);for(var d=0;d<i;++d)this.color[d]=null;this._color_rb=null,this.depth=null,this._depth_rb=null,this._colorType=n,this._useDepth=a,this._useStencil=o;var m=this,g=[0|e,0|r];Object.defineProperties(g,{0:{get:function(){return m._shape[0]},set:function(t){return m.width=t}},1:{get:function(){return m._shape[1]},set:function(t){return m.height=t}}}),this._shapeVector=g,function(t){var e=c(t.gl),r=t.gl,n=t.handle=r.createFramebuffer(),i=t._shape[0],a=t._shape[1],o=t.color.length,s=t._ext,d=t._useStencil,m=t._useDepth,g=t._colorType;r.bindFramebuffer(r.FRAMEBUFFER,n);for(var y=0;y<o;++y)t.color[y]=f(r,i,a,g,r.RGBA,r.COLOR_ATTACHMENT0+y);0===o?(t._color_rb=p(r,i,a,r.RGBA4,r.COLOR_ATTACHMENT0),s&&s.drawBuffersWEBGL(l[0])):o>1&&s.drawBuffersWEBGL(l[o]);var v=r.getExtension(\"WEBGL_depth_texture\");v?d?t.depth=f(r,i,a,v.UNSIGNED_INT_24_8_WEBGL,r.DEPTH_STENCIL,r.DEPTH_STENCIL_ATTACHMENT):m&&(t.depth=f(r,i,a,r.UNSIGNED_SHORT,r.DEPTH_COMPONENT,r.DEPTH_ATTACHMENT)):m&&d?t._depth_rb=p(r,i,a,r.DEPTH_STENCIL,r.DEPTH_STENCIL_ATTACHMENT):m?t._depth_rb=p(r,i,a,r.DEPTH_COMPONENT16,r.DEPTH_ATTACHMENT):d&&(t._depth_rb=p(r,i,a,r.STENCIL_INDEX,r.STENCIL_ATTACHMENT));var x=r.checkFramebufferStatus(r.FRAMEBUFFER);if(x!==r.FRAMEBUFFER_COMPLETE){for(t._destroyed=!0,r.bindFramebuffer(r.FRAMEBUFFER,null),r.deleteFramebuffer(t.handle),t.handle=null,t.depth&&(t.depth.dispose(),t.depth=null),t._depth_rb&&(r.deleteRenderbuffer(t._depth_rb),t._depth_rb=null),y=0;y<t.color.length;++y)t.color[y].dispose(),t.color[y]=null;t._color_rb&&(r.deleteRenderbuffer(t._color_rb),t._color_rb=null),u(r,e),h(x)}u(r,e)}(this)}var m=d.prototype;function g(t,e,r){if(t._destroyed)throw new Error(\"gl-fbo: Can't resize destroyed FBO\");if(t._shape[0]!==e||t._shape[1]!==r){var n=t.gl,i=n.getParameter(n.MAX_RENDERBUFFER_SIZE);if(e<0||e>i||r<0||r>i)throw new Error(\"gl-fbo: Can't resize FBO, invalid dimensions\");t._shape[0]=e,t._shape[1]=r;for(var a=c(n),o=0;o<t.color.length;++o)t.color[o].shape=t._shape;t._color_rb&&(n.bindRenderbuffer(n.RENDERBUFFER,t._color_rb),n.renderbufferStorage(n.RENDERBUFFER,n.RGBA4,t._shape[0],t._shape[1])),t.depth&&(t.depth.shape=t._shape),t._depth_rb&&(n.bindRenderbuffer(n.RENDERBUFFER,t._depth_rb),t._useDepth&&t._useStencil?n.renderbufferStorage(n.RENDERBUFFER,n.DEPTH_STENCIL,t._shape[0],t._shape[1]):t._useDepth?n.renderbufferStorage(n.RENDERBUFFER,n.DEPTH_COMPONENT16,t._shape[0],t._shape[1]):t._useStencil&&n.renderbufferStorage(n.RENDERBUFFER,n.STENCIL_INDEX,t._shape[0],t._shape[1])),n.bindFramebuffer(n.FRAMEBUFFER,t.handle);var s=n.checkFramebufferStatus(n.FRAMEBUFFER);s!==n.FRAMEBUFFER_COMPLETE&&(t.dispose(),u(n,a),h(s)),u(n,a)}}Object.defineProperties(m,{shape:{get:function(){return this._destroyed?[0,0]:this._shapeVector},set:function(t){if(Array.isArray(t)||(t=[0|t,0|t]),2!==t.length)throw new Error(\"gl-fbo: Shape vector must be length 2\");var e=0|t[0],r=0|t[1];return g(this,e,r),[e,r]},enumerable:!1},width:{get:function(){return this._destroyed?0:this._shape[0]},set:function(t){return g(this,t|=0,this._shape[1]),t},enumerable:!1},height:{get:function(){return this._destroyed?0:this._shape[1]},set:function(t){return t|=0,g(this,this._shape[0],t),t},enumerable:!1}}),m.bind=function(){if(!this._destroyed){var t=this.gl;t.bindFramebuffer(t.FRAMEBUFFER,this.handle),t.viewport(0,0,this._shape[0],this._shape[1])}},m.dispose=function(){if(!this._destroyed){this._destroyed=!0;var t=this.gl;t.deleteFramebuffer(this.handle),this.handle=null,this.depth&&(this.depth.dispose(),this.depth=null),this._depth_rb&&(t.deleteRenderbuffer(this._depth_rb),this._depth_rb=null);for(var e=0;e<this.color.length;++e)this.color[e].dispose(),this.color[e]=null;this._color_rb&&(t.deleteRenderbuffer(this._color_rb),this._color_rb=null)}}},2992:function(t,e,r){var n=r(3387).sprintf,i=r(5171),a=r(1848),o=r(1085);t.exports=function(t,e,r){\"use strict\";var s=a(e)||\"of unknown name (see npm glsl-shader-name)\",l=\"unknown type\";void 0!==r&&(l=r===i.FRAGMENT_SHADER?\"fragment\":\"vertex\");for(var c=n(\"Error compiling %s shader %s:\\n\",l,s),u=n(\"%s%s\",c,t),h=t.split(\"\\n\"),f={},p=0;p<h.length;p++){var d=h[p];if(\"\"!==d&&\"\\0\"!==d){var m=parseInt(d.split(\":\")[2]);if(isNaN(m))throw new Error(n(\"Could not parse error: %s\",d));f[m]=d}}var g=o(e).split(\"\\n\");for(p=0;p<g.length;p++)if((f[p+3]||f[p+2]||f[p+1])&&(c+=g[p]+\"\\n\",f[p+1])){var y=f[p+1];y=y.substr(y.split(\":\",3).join(\":\").length+1).trim(),c+=n(\"^^^ %s\\n\\n\",y)}return{long:c.trim(),short:u.trim()}}},2510:function(t,e,r){\"use strict\";t.exports=function(t,e){var r=t.gl,n=new c(t,o(r,l.vertex,l.fragment),o(r,l.pickVertex,l.pickFragment),s(r),s(r),s(r),s(r));return n.update(e),t.addObject(n),n};var n=r(2478),i=r(7762),a=r(1888),o=r(9405),s=r(2762),l=r(6768);function c(t,e,r,n,i,a,o){this.plot=t,this.shader=e,this.pickShader=r,this.positionBuffer=n,this.weightBuffer=i,this.colorBuffer=a,this.idBuffer=o,this.xData=[],this.yData=[],this.shape=[0,0],this.bounds=[1/0,1/0,-1/0,-1/0],this.pickOffset=0}var u,h=c.prototype,f=[0,0,1,0,0,1,1,0,1,1,0,1];h.draw=(u=[1,0,0,0,1,0,0,0,1],function(){var t=this.plot,e=this.shader,r=this.bounds,n=this.numVertices;if(!(n<=0)){var i=t.gl,a=t.dataBox,o=r[2]-r[0],s=r[3]-r[1],l=a[2]-a[0],c=a[3]-a[1];u[0]=2*o/l,u[4]=2*s/c,u[6]=2*(r[0]-a[0])/l-1,u[7]=2*(r[1]-a[1])/c-1,e.bind();var h=e.uniforms;h.viewTransform=u,h.shape=this.shape;var f=e.attributes;this.positionBuffer.bind(),f.position.pointer(),this.weightBuffer.bind(),f.weight.pointer(i.UNSIGNED_BYTE,!1),this.colorBuffer.bind(),f.color.pointer(i.UNSIGNED_BYTE,!0),i.drawArrays(i.TRIANGLES,0,n)}}),h.drawPick=function(){var t=[1,0,0,0,1,0,0,0,1],e=[0,0,0,0];return function(r){var n=this.plot,i=this.pickShader,a=this.bounds,o=this.numVertices;if(!(o<=0)){var s=n.gl,l=n.dataBox,c=a[2]-a[0],u=a[3]-a[1],h=l[2]-l[0],f=l[3]-l[1];t[0]=2*c/h,t[4]=2*u/f,t[6]=2*(a[0]-l[0])/h-1,t[7]=2*(a[1]-l[1])/f-1;for(var p=0;p<4;++p)e[p]=r>>8*p&255;this.pickOffset=r,i.bind();var d=i.uniforms;d.viewTransform=t,d.pickOffset=e,d.shape=this.shape;var m=i.attributes;return this.positionBuffer.bind(),m.position.pointer(),this.weightBuffer.bind(),m.weight.pointer(s.UNSIGNED_BYTE,!1),this.idBuffer.bind(),m.pickId.pointer(s.UNSIGNED_BYTE,!1),s.drawArrays(s.TRIANGLES,0,o),r+this.shape[0]*this.shape[1]}}}(),h.pick=function(t,e,r){var n=this.pickOffset,i=this.shape[0]*this.shape[1];if(r<n||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]]}},h.update=function(t){var e=(t=t||{}).shape||[0,0],r=t.x||i(e[0]),o=t.y||i(e[1]),s=t.z||new Float32Array(e[0]*e[1]),l=!1!==t.zsmooth;this.xData=r,this.yData=o;var c,u,h,p,d=t.colorLevels||[0],m=t.colorValues||[0,0,0,1],g=d.length,y=this.bounds;l?(c=y[0]=r[0],u=y[1]=o[0],h=y[2]=r[r.length-1],p=y[3]=o[o.length-1]):(c=y[0]=r[0]+(r[1]-r[0])/2,u=y[1]=o[0]+(o[1]-o[0])/2,h=y[2]=r[r.length-1]+(r[r.length-1]-r[r.length-2])/2,p=y[3]=o[o.length-1]+(o[o.length-1]-o[o.length-2])/2);var v=1/(h-c),x=1/(p-u),_=e[0],b=e[1];this.shape=[_,b];var w=(l?(_-1)*(b-1):_*b)*(f.length>>>1);this.numVertices=w;for(var T=a.mallocUint8(4*w),k=a.mallocFloat32(2*w),A=a.mallocUint8(2*w),M=a.mallocUint32(w),S=0,E=l?_-1:_,C=l?b-1:b,L=0;L<C;++L){var I,P;l?(I=x*(o[L]-u),P=x*(o[L+1]-u)):(I=L<b-1?x*(o[L]-(o[L+1]-o[L])/2-u):x*(o[L]-(o[L]-o[L-1])/2-u),P=L<b-1?x*(o[L]+(o[L+1]-o[L])/2-u):x*(o[L]+(o[L]-o[L-1])/2-u));for(var z=0;z<E;++z){var O,D;l?(O=v*(r[z]-c),D=v*(r[z+1]-c)):(O=z<_-1?v*(r[z]-(r[z+1]-r[z])/2-c):v*(r[z]-(r[z]-r[z-1])/2-c),D=z<_-1?v*(r[z]+(r[z+1]-r[z])/2-c):v*(r[z]+(r[z]-r[z-1])/2-c));for(var R=0;R<f.length;R+=2){var F,B,N,j,U=f[R],V=f[R+1],q=s[l?(L+V)*_+(z+U):L*_+z],H=n.le(d,q);if(H<0)F=m[0],B=m[1],N=m[2],j=m[3];else if(H===g-1)F=m[4*g-4],B=m[4*g-3],N=m[4*g-2],j=m[4*g-1];else{var G=(q-d[H])/(d[H+1]-d[H]),Z=1-G,W=4*H,Y=4*(H+1);F=Z*m[W]+G*m[Y],B=Z*m[W+1]+G*m[Y+1],N=Z*m[W+2]+G*m[Y+2],j=Z*m[W+3]+G*m[Y+3]}T[4*S]=255*F,T[4*S+1]=255*B,T[4*S+2]=255*N,T[4*S+3]=255*j,k[2*S]=.5*O+.5*D,k[2*S+1]=.5*I+.5*P,A[2*S]=U,A[2*S+1]=V,M[S]=L*_+z,S+=1}}}this.positionBuffer.update(k),this.weightBuffer.update(A),this.colorBuffer.update(T),this.idBuffer.update(M),a.free(k),a.free(T),a.free(A),a.free(M)},h.dispose=function(){this.shader.dispose(),this.pickShader.dispose(),this.positionBuffer.dispose(),this.weightBuffer.dispose(),this.colorBuffer.dispose(),this.idBuffer.dispose(),this.plot.removeObject(this)}},6768:function(t,e,r){\"use strict\";var n=r(3236);t.exports={fragment:n([\"precision lowp float;\\n#define GLSLIFY 1\\nvarying vec4 fragColor;\\nvoid main() {\\n gl_FragColor = vec4(fragColor.rgb * fragColor.a, fragColor.a);\\n}\\n\"]),vertex:n([\"precision mediump float;\\n#define GLSLIFY 1\\n\\nattribute vec2 position;\\nattribute vec4 color;\\nattribute vec2 weight;\\n\\nuniform vec2 shape;\\nuniform mat3 viewTransform;\\n\\nvarying vec4 fragColor;\\n\\nvoid main() {\\n vec3 vPosition = viewTransform * vec3( position + (weight-.5)/(shape-1.) , 1.0);\\n fragColor = color;\\n gl_Position = vec4(vPosition.xy, 0, vPosition.z);\\n}\\n\"]),pickFragment:n([\"precision mediump float;\\n#define GLSLIFY 1\\n\\nvarying vec4 fragId;\\nvarying vec2 vWeight;\\n\\nuniform vec2 shape;\\nuniform vec4 pickOffset;\\n\\nvoid main() {\\n vec2 d = step(.5, vWeight);\\n vec4 id = fragId + pickOffset;\\n id.x += d.x + d.y*shape.x;\\n\\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 gl_FragColor = id/255.;\\n}\\n\"]),pickVertex:n([\"precision mediump float;\\n#define GLSLIFY 1\\n\\nattribute vec2 position;\\nattribute vec4 pickId;\\nattribute vec2 weight;\\n\\nuniform vec2 shape;\\nuniform mat3 viewTransform;\\n\\nvarying vec4 fragId;\\nvarying vec2 vWeight;\\n\\nvoid main() {\\n vWeight = weight;\\n\\n fragId = pickId;\\n\\n vec3 vPosition = viewTransform * vec3( position + (weight-.5)/(shape-1.) , 1.0);\\n gl_Position = vec4(vPosition.xy, 0, vPosition.z);\\n}\\n\"])}},7319:function(t,e,r){var n=r(3236),i=r(9405),a=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nattribute vec3 position, nextPosition;\\nattribute float arcLength, lineWidth;\\nattribute vec4 color;\\n\\nuniform vec2 screenShape;\\nuniform float pixelRatio;\\nuniform mat4 model, view, projection;\\n\\nvarying vec4 fragColor;\\nvarying vec3 worldPosition;\\nvarying float pixelArcLength;\\n\\nvec4 project(vec3 p) {\\n return projection * (view * (model * vec4(p, 1.0)));\\n}\\n\\nvoid main() {\\n vec4 startPoint = project(position);\\n vec4 endPoint = project(nextPosition);\\n\\n vec2 A = startPoint.xy / startPoint.w;\\n vec2 B = endPoint.xy / endPoint.w;\\n\\n float clipAngle = atan(\\n (B.y - A.y) * screenShape.y,\\n (B.x - A.x) * screenShape.x\\n );\\n\\n vec2 offset = 0.5 * pixelRatio * lineWidth * vec2(\\n sin(clipAngle),\\n -cos(clipAngle)\\n ) / screenShape;\\n\\n gl_Position = vec4(startPoint.xy + startPoint.w * offset, startPoint.zw);\\n\\n worldPosition = position;\\n pixelArcLength = arcLength;\\n fragColor = color;\\n}\\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 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\"}];e.createShader=function(t){return i(t,a,o,null,l)},e.createPickShader=function(t){return i(t,a,s,null,l)}},5714:function(t,e,r){\"use strict\";t.exports=function(t){var e=t.gl||t.scene&&t.scene.gl,r=h(e);r.attributes.position.location=0,r.attributes.nextPosition.location=1,r.attributes.arcLength.location=2,r.attributes.lineWidth.location=3,r.attributes.color.location=4;var o=f(e);o.attributes.position.location=0,o.attributes.nextPosition.location=1,o.attributes.arcLength.location=2,o.attributes.lineWidth.location=3,o.attributes.color.location=4;for(var s=n(e),l=i(e,[{buffer:s,size:3,offset:0,stride:48},{buffer:s,size:3,offset:12,stride:48},{buffer:s,size:1,offset:24,stride:48},{buffer:s,size:1,offset:28,stride:48},{buffer:s,size:4,offset:32,stride:48}]),u=c(new Array(1024),[256,1,4]),p=0;p<1024;++p)u.data[p]=255;var d=a(e,u);d.wrap=e.REPEAT;var m=new y(e,r,o,s,l,d);return m.update(t),m};var n=r(2762),i=r(8116),a=r(7766),o=new Uint8Array(4),s=new Float32Array(o.buffer),l=r(2478),c=r(9618),u=r(7319),h=u.createShader,f=u.createPickShader,p=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function d(t,e){for(var r=0,n=0;n<3;++n){var i=t[n]-e[n];r+=i*i}return Math.sqrt(r)}function m(t){for(var e=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],r=0;r<3;++r)e[0][r]=Math.max(t[0][r],e[0][r]),e[1][r]=Math.min(t[1][r],e[1][r]);return e}function g(t,e,r,n){this.arcLength=t,this.position=e,this.index=r,this.dataCoordinate=n}function y(t,e,r,n,i,a){this.gl=t,this.shader=e,this.pickShader=r,this.buffer=n,this.vao=i,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.points=[],this.arcLength=[],this.vertexCount=0,this.bounds=[[0,0,0],[0,0,0]],this.pickId=0,this.lineWidth=1,this.texture=a,this.dashScale=1,this.opacity=1,this.hasAlpha=!1,this.dirty=!0,this.pixelRatio=1}var v=y.prototype;v.isTransparent=function(){return this.hasAlpha},v.isOpaque=function(){return!this.hasAlpha},v.pickSlots=1,v.setPickBase=function(t){this.pickId=t},v.drawTransparent=v.draw=function(t){if(this.vertexCount){var e=this.gl,r=this.shader,n=this.vao;r.bind(),r.uniforms={model:t.model||p,view:t.view||p,projection:t.projection||p,clipBounds:m(this.clipBounds),dashTexture:this.texture.bind(),dashScale:this.dashScale/this.arcLength[this.arcLength.length-1],opacity:this.opacity,screenShape:[e.drawingBufferWidth,e.drawingBufferHeight],pixelRatio:this.pixelRatio},n.bind(),n.draw(e.TRIANGLE_STRIP,this.vertexCount),n.unbind()}},v.drawPick=function(t){if(this.vertexCount){var e=this.gl,r=this.pickShader,n=this.vao;r.bind(),r.uniforms={model:t.model||p,view:t.view||p,projection:t.projection||p,pickId:this.pickId,clipBounds:m(this.clipBounds),screenShape:[e.drawingBufferWidth,e.drawingBufferHeight],pixelRatio:this.pixelRatio},n.bind(),n.draw(e.TRIANGLE_STRIP,this.vertexCount),n.unbind()}},v.update=function(t){var e,r;this.dirty=!0;var n=!!t.connectGaps;\"dashScale\"in t&&(this.dashScale=t.dashScale),this.hasAlpha=!1,\"opacity\"in t&&(this.opacity=+t.opacity,this.opacity<1&&(this.hasAlpha=!0));var i=[],a=[],o=[],s=0,u=0,h=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],f=t.position||t.positions;if(f){var p=t.color||t.colors||[0,0,0,1],m=t.lineWidth||1,g=!1;t:for(e=1;e<f.length;++e){var y,v,x,_=f[e-1],b=f[e];for(a.push(s),o.push(_.slice()),r=0;r<3;++r){if(isNaN(_[r])||isNaN(b[r])||!isFinite(_[r])||!isFinite(b[r])){if(!n&&i.length>0){for(var w=0;w<24;++w)i.push(i[i.length-12]);u+=2,g=!0}continue t}h[0][r]=Math.min(h[0][r],_[r],b[r]),h[1][r]=Math.max(h[1][r],_[r],b[r])}Array.isArray(p[0])?(y=p.length>e-1?p[e-1]:p.length>0?p[p.length-1]:[0,0,0,1],v=p.length>e?p[e]:p.length>0?p[p.length-1]:[0,0,0,1]):y=v=p,3===y.length&&(y=[y[0],y[1],y[2],1]),3===v.length&&(v=[v[0],v[1],v[2],1]),!this.hasAlpha&&y[3]<1&&(this.hasAlpha=!0),x=Array.isArray(m)?m.length>e-1?m[e-1]:m.length>0?m[m.length-1]:[0,0,0,1]:m;var T=s;if(s+=d(_,b),g){for(r=0;r<2;++r)i.push(_[0],_[1],_[2],b[0],b[1],b[2],T,x,y[0],y[1],y[2],y[3]);u+=2,g=!1}i.push(_[0],_[1],_[2],b[0],b[1],b[2],T,x,y[0],y[1],y[2],y[3],_[0],_[1],_[2],b[0],b[1],b[2],T,-x,y[0],y[1],y[2],y[3],b[0],b[1],b[2],_[0],_[1],_[2],s,-x,v[0],v[1],v[2],v[3],b[0],b[1],b[2],_[0],_[1],_[2],s,x,v[0],v[1],v[2],v[3]),u+=4}}if(this.buffer.update(i),a.push(s),o.push(f[f.length-1].slice()),this.bounds=h,this.vertexCount=u,this.points=o,this.arcLength=a,\"dashes\"in t){var k=t.dashes.slice();for(k.unshift(0),e=1;e<k.length;++e)k[e]=k[e-1]+k[e];var A=c(new Array(1024),[256,1,4]);for(e=0;e<256;++e){for(r=0;r<4;++r)A.set(e,0,r,0);1&l.le(k,k[k.length-1]*e/255)?A.set(e,0,0,0):A.set(e,0,0,255)}this.texture.setPixels(A)}},v.dispose=function(){this.shader.dispose(),this.vao.dispose(),this.buffer.dispose()},v.pick=function(t){if(!t)return null;if(t.id!==this.pickId)return null;var e=function(t,e,r,n){return o[0]=0,o[1]=r,o[2]=e,o[3]=t,s[0]}(t.value[0],t.value[1],t.value[2]),r=l.le(this.arcLength,e);if(r<0)return null;if(r===this.arcLength.length-1)return new g(this.arcLength[this.arcLength.length-1],this.points[this.points.length-1].slice(),r);for(var n=this.points[r],i=this.points[Math.min(r+1,this.points.length-1)],a=(e-this.arcLength[r])/(this.arcLength[r+1]-this.arcLength[r]),c=1-a,u=[0,0,0],h=0;h<3;++h)u[h]=c*n[h]+a*i[h];var f=Math.min(a<.5?r:r+1,this.points.length-1);return new g(e,u,f,this.points[f])}},1903:function(t){t.exports=function(t){var e=new Float32Array(16);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}},6864:function(t){t.exports=function(){var t=new Float32Array(16);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}},9921:function(t){t.exports=function(t){var e=t[0],r=t[1],n=t[2],i=t[3],a=t[4],o=t[5],s=t[6],l=t[7],c=t[8],u=t[9],h=t[10],f=t[11],p=t[12],d=t[13],m=t[14],g=t[15];return(e*o-r*a)*(h*g-f*m)-(e*s-n*a)*(u*g-f*d)+(e*l-i*a)*(u*m-h*d)+(r*s-n*o)*(c*g-f*p)-(r*l-i*o)*(c*m-h*p)+(n*l-i*s)*(c*d-u*p)}},7399:function(t){t.exports=function(t,e){var r=e[0],n=e[1],i=e[2],a=e[3],o=r+r,s=n+n,l=i+i,c=r*o,u=n*o,h=n*s,f=i*o,p=i*s,d=i*l,m=a*o,g=a*s,y=a*l;return t[0]=1-h-d,t[1]=u+y,t[2]=f-g,t[3]=0,t[4]=u-y,t[5]=1-c-d,t[6]=p+m,t[7]=0,t[8]=f+g,t[9]=p-m,t[10]=1-c-h,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}},6743:function(t){t.exports=function(t,e,r){var n=e[0],i=e[1],a=e[2],o=e[3],s=n+n,l=i+i,c=a+a,u=n*s,h=n*l,f=n*c,p=i*l,d=i*c,m=a*c,g=o*s,y=o*l,v=o*c;return t[0]=1-(p+m),t[1]=h+v,t[2]=f-y,t[3]=0,t[4]=h-v,t[5]=1-(u+m),t[6]=d+g,t[7]=0,t[8]=f+y,t[9]=d-g,t[10]=1-(u+p),t[11]=0,t[12]=r[0],t[13]=r[1],t[14]=r[2],t[15]=1,t}},7894:function(t){t.exports=function(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}},7608:function(t){t.exports=function(t,e){var r=e[0],n=e[1],i=e[2],a=e[3],o=e[4],s=e[5],l=e[6],c=e[7],u=e[8],h=e[9],f=e[10],p=e[11],d=e[12],m=e[13],g=e[14],y=e[15],v=r*s-n*o,x=r*l-i*o,_=r*c-a*o,b=n*l-i*s,w=n*c-a*s,T=i*c-a*l,k=u*m-h*d,A=u*g-f*d,M=u*y-p*d,S=h*g-f*m,E=h*y-p*m,C=f*y-p*g,L=v*C-x*E+_*S+b*M-w*A+T*k;return L?(L=1/L,t[0]=(s*C-l*E+c*S)*L,t[1]=(i*E-n*C-a*S)*L,t[2]=(m*T-g*w+y*b)*L,t[3]=(f*w-h*T-p*b)*L,t[4]=(l*M-o*C-c*A)*L,t[5]=(r*C-i*M+a*A)*L,t[6]=(g*_-d*T-y*x)*L,t[7]=(u*T-f*_+p*x)*L,t[8]=(o*E-s*M+c*k)*L,t[9]=(n*M-r*E-a*k)*L,t[10]=(d*w-m*_+y*v)*L,t[11]=(h*_-u*w-p*v)*L,t[12]=(s*A-o*S-l*k)*L,t[13]=(r*S-n*A+i*k)*L,t[14]=(m*x-d*b-g*v)*L,t[15]=(u*b-h*x+f*v)*L,t):null}},6582:function(t,e,r){var n=r(7894);t.exports=function(t,e,r,i){var a,o,s,l,c,u,h,f,p,d,m=e[0],g=e[1],y=e[2],v=i[0],x=i[1],_=i[2],b=r[0],w=r[1],T=r[2];return Math.abs(m-b)<1e-6&&Math.abs(g-w)<1e-6&&Math.abs(y-T)<1e-6?n(t):(h=m-b,f=g-w,p=y-T,a=x*(p*=d=1/Math.sqrt(h*h+f*f+p*p))-_*(f*=d),o=_*(h*=d)-v*p,s=v*f-x*h,(d=Math.sqrt(a*a+o*o+s*s))?(a*=d=1/d,o*=d,s*=d):(a=0,o=0,s=0),l=f*s-p*o,c=p*a-h*s,u=h*o-f*a,(d=Math.sqrt(l*l+c*c+u*u))?(l*=d=1/d,c*=d,u*=d):(l=0,c=0,u=0),t[0]=a,t[1]=l,t[2]=h,t[3]=0,t[4]=o,t[5]=c,t[6]=f,t[7]=0,t[8]=s,t[9]=u,t[10]=p,t[11]=0,t[12]=-(a*m+o*g+s*y),t[13]=-(l*m+c*g+u*y),t[14]=-(h*m+f*g+p*y),t[15]=1,t)}},6760:function(t){t.exports=function(t,e,r){var n=e[0],i=e[1],a=e[2],o=e[3],s=e[4],l=e[5],c=e[6],u=e[7],h=e[8],f=e[9],p=e[10],d=e[11],m=e[12],g=e[13],y=e[14],v=e[15],x=r[0],_=r[1],b=r[2],w=r[3];return t[0]=x*n+_*s+b*h+w*m,t[1]=x*i+_*l+b*f+w*g,t[2]=x*a+_*c+b*p+w*y,t[3]=x*o+_*u+b*d+w*v,x=r[4],_=r[5],b=r[6],w=r[7],t[4]=x*n+_*s+b*h+w*m,t[5]=x*i+_*l+b*f+w*g,t[6]=x*a+_*c+b*p+w*y,t[7]=x*o+_*u+b*d+w*v,x=r[8],_=r[9],b=r[10],w=r[11],t[8]=x*n+_*s+b*h+w*m,t[9]=x*i+_*l+b*f+w*g,t[10]=x*a+_*c+b*p+w*y,t[11]=x*o+_*u+b*d+w*v,x=r[12],_=r[13],b=r[14],w=r[15],t[12]=x*n+_*s+b*h+w*m,t[13]=x*i+_*l+b*f+w*g,t[14]=x*a+_*c+b*p+w*y,t[15]=x*o+_*u+b*d+w*v,t}},4040:function(t){t.exports=function(t,e,r,n,i,a,o){var s=1/(e-r),l=1/(n-i),c=1/(a-o);return t[0]=-2*s,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*l,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*c,t[11]=0,t[12]=(e+r)*s,t[13]=(i+n)*l,t[14]=(o+a)*c,t[15]=1,t}},4772:function(t){t.exports=function(t,e,r,n,i){var a=1/Math.tan(e/2),o=1/(n-i);return t[0]=a/r,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=a,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=(i+n)*o,t[11]=-1,t[12]=0,t[13]=0,t[14]=2*i*n*o,t[15]=0,t}},6079:function(t){t.exports=function(t,e,r,n){var i,a,o,s,l,c,u,h,f,p,d,m,g,y,v,x,_,b,w,T,k,A,M,S,E=n[0],C=n[1],L=n[2],I=Math.sqrt(E*E+C*C+L*L);return Math.abs(I)<1e-6?null:(E*=I=1/I,C*=I,L*=I,i=Math.sin(r),o=1-(a=Math.cos(r)),s=e[0],l=e[1],c=e[2],u=e[3],h=e[4],f=e[5],p=e[6],d=e[7],m=e[8],g=e[9],y=e[10],v=e[11],x=E*E*o+a,_=C*E*o+L*i,b=L*E*o-C*i,w=E*C*o-L*i,T=C*C*o+a,k=L*C*o+E*i,A=E*L*o+C*i,M=C*L*o-E*i,S=L*L*o+a,t[0]=s*x+h*_+m*b,t[1]=l*x+f*_+g*b,t[2]=c*x+p*_+y*b,t[3]=u*x+d*_+v*b,t[4]=s*w+h*T+m*k,t[5]=l*w+f*T+g*k,t[6]=c*w+p*T+y*k,t[7]=u*w+d*T+v*k,t[8]=s*A+h*M+m*S,t[9]=l*A+f*M+g*S,t[10]=c*A+p*M+y*S,t[11]=u*A+d*M+v*S,e!==t&&(t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t)}},5567:function(t){t.exports=function(t,e,r){var n=Math.sin(r),i=Math.cos(r),a=e[4],o=e[5],s=e[6],l=e[7],c=e[8],u=e[9],h=e[10],f=e[11];return e!==t&&(t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[4]=a*i+c*n,t[5]=o*i+u*n,t[6]=s*i+h*n,t[7]=l*i+f*n,t[8]=c*i-a*n,t[9]=u*i-o*n,t[10]=h*i-s*n,t[11]=f*i-l*n,t}},2408:function(t){t.exports=function(t,e,r){var n=Math.sin(r),i=Math.cos(r),a=e[0],o=e[1],s=e[2],l=e[3],c=e[8],u=e[9],h=e[10],f=e[11];return e!==t&&(t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=a*i-c*n,t[1]=o*i-u*n,t[2]=s*i-h*n,t[3]=l*i-f*n,t[8]=a*n+c*i,t[9]=o*n+u*i,t[10]=s*n+h*i,t[11]=l*n+f*i,t}},7089:function(t){t.exports=function(t,e,r){var n=Math.sin(r),i=Math.cos(r),a=e[0],o=e[1],s=e[2],l=e[3],c=e[4],u=e[5],h=e[6],f=e[7];return e!==t&&(t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=a*i+c*n,t[1]=o*i+u*n,t[2]=s*i+h*n,t[3]=l*i+f*n,t[4]=c*i-a*n,t[5]=u*i-o*n,t[6]=h*i-s*n,t[7]=f*i-l*n,t}},2504:function(t){t.exports=function(t,e,r){var n=r[0],i=r[1],a=r[2];return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t[3]=e[3]*n,t[4]=e[4]*i,t[5]=e[5]*i,t[6]=e[6]*i,t[7]=e[7]*i,t[8]=e[8]*a,t[9]=e[9]*a,t[10]=e[10]*a,t[11]=e[11]*a,t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}},7656:function(t){t.exports=function(t,e,r){var n,i,a,o,s,l,c,u,h,f,p,d,m=r[0],g=r[1],y=r[2];return e===t?(t[12]=e[0]*m+e[4]*g+e[8]*y+e[12],t[13]=e[1]*m+e[5]*g+e[9]*y+e[13],t[14]=e[2]*m+e[6]*g+e[10]*y+e[14],t[15]=e[3]*m+e[7]*g+e[11]*y+e[15]):(n=e[0],i=e[1],a=e[2],o=e[3],s=e[4],l=e[5],c=e[6],u=e[7],h=e[8],f=e[9],p=e[10],d=e[11],t[0]=n,t[1]=i,t[2]=a,t[3]=o,t[4]=s,t[5]=l,t[6]=c,t[7]=u,t[8]=h,t[9]=f,t[10]=p,t[11]=d,t[12]=n*m+s*g+h*y+e[12],t[13]=i*m+l*g+f*y+e[13],t[14]=a*m+c*g+p*y+e[14],t[15]=o*m+u*g+d*y+e[15]),t}},5665:function(t){t.exports=function(t,e){if(t===e){var r=e[1],n=e[2],i=e[3],a=e[6],o=e[7],s=e[11];t[1]=e[4],t[2]=e[8],t[3]=e[12],t[4]=r,t[6]=e[9],t[7]=e[13],t[8]=n,t[9]=a,t[11]=e[14],t[12]=i,t[13]=o,t[14]=s}else t[0]=e[0],t[1]=e[4],t[2]=e[8],t[3]=e[12],t[4]=e[1],t[5]=e[5],t[6]=e[9],t[7]=e[13],t[8]=e[2],t[9]=e[6],t[10]=e[10],t[11]=e[14],t[12]=e[3],t[13]=e[7],t[14]=e[11],t[15]=e[15];return t}},7626:function(t,e,r){\"use strict\";var n=r(2642),i=r(9346);function a(t,e){for(var r=[0,0,0,0],n=0;n<4;++n)for(var i=0;i<4;++i)r[i]+=t[4*n+i]*e[n];return r}function o(t,e,r,n,i){for(var o=a(n,a(r,a(e,[t[0],t[1],t[2],1]))),s=0;s<3;++s)o[s]/=o[3];return[.5*i[0]*(1+o[0]),.5*i[1]*(1-o[1])]}function s(t,e){for(var r=[0,0,0],n=0;n<t.length;++n)for(var i=t[n],a=e[n],o=0;o<3;++o)r[o]+=a*i[o];return r}t.exports=function(t,e,r,a,l,c){if(1===t.length)return[0,t[0].slice()];for(var u=new Array(t.length),h=0;h<t.length;++h)u[h]=o(t[h],r,a,l,c);var f=0,p=1/0;for(h=0;h<u.length;++h){for(var d=0,m=0;m<2;++m)d+=Math.pow(u[h][m]-e[m],2);d<p&&(p=d,f=h)}var g=function(t,e){if(2===t.length){for(var r=0,a=0,o=0;o<2;++o)r+=Math.pow(e[o]-t[0][o],2),a+=Math.pow(e[o]-t[1][o],2);return(r=Math.sqrt(r))+(a=Math.sqrt(a))<1e-6?[1,0]:[a/(r+a),r/(a+r)]}if(3===t.length){var s=[0,0];return i(t[0],t[1],t[2],e,s),n(t,s)}return[]}(u,e),y=0;for(h=0;h<3;++h){if(g[h]<-.001||g[h]>1.0001)return null;y+=g[h]}return Math.abs(y-1)>.001?null:[f,s(t,g),g]}},840:function(t,e,r){var n=r(3236),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}\"]),c=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}\"]),u=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}\"]),h=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}\"]),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\\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}\"]),p=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}\"]),d=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nuniform vec3 contourColor;\\n\\nvoid main() {\\n gl_FragColor = vec4(contourColor, 1.0);\\n}\\n\"]);e.meshShader={vertex:i,fragment:a,attributes:[{name:\"position\",type:\"vec3\"},{name:\"normal\",type:\"vec3\"},{name:\"color\",type:\"vec4\"},{name:\"uv\",type:\"vec2\"}]},e.wireShader={vertex:o,fragment:s,attributes:[{name:\"position\",type:\"vec3\"},{name:\"color\",type:\"vec4\"},{name:\"uv\",type:\"vec2\"}]},e.pointShader={vertex:l,fragment:c,attributes:[{name:\"position\",type:\"vec3\"},{name:\"color\",type:\"vec4\"},{name:\"uv\",type:\"vec2\"},{name:\"pointSize\",type:\"float\"}]},e.pickShader={vertex:u,fragment:h,attributes:[{name:\"position\",type:\"vec3\"},{name:\"id\",type:\"vec4\"}]},e.pointPickShader={vertex:f,fragment:h,attributes:[{name:\"position\",type:\"vec3\"},{name:\"pointSize\",type:\"float\"},{name:\"id\",type:\"vec4\"}]},e.contourShader={vertex:p,fragment:d,attributes:[{name:\"position\",type:\"vec3\"}]}},7201:function(t,e,r){\"use strict\";var n=r(9405),i=r(2762),a=r(8116),o=r(7766),s=r(8406),l=r(6760),c=r(7608),u=r(9618),h=r(6729),f=r(7765),p=r(1888),d=r(840),m=r(7626),g=d.meshShader,y=d.wireShader,v=d.pointShader,x=d.pickShader,_=d.pointPickShader,b=d.contourShader,w=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function T(t,e,r,n,i,a,o,s,l,c,u,h,f,p,d,m,g,y,v,x,_,b,T,k,A,M,S){this.gl=t,this.pixelRatio=1,this.cells=[],this.positions=[],this.intensity=[],this.texture=e,this.dirty=!0,this.triShader=r,this.lineShader=n,this.pointShader=i,this.pickShader=a,this.pointPickShader=o,this.contourShader=s,this.trianglePositions=l,this.triangleColors=u,this.triangleNormals=f,this.triangleUVs=h,this.triangleIds=c,this.triangleVAO=p,this.triangleCount=0,this.lineWidth=1,this.edgePositions=d,this.edgeColors=g,this.edgeUVs=y,this.edgeIds=m,this.edgeVAO=v,this.edgeCount=0,this.pointPositions=x,this.pointColors=b,this.pointUVs=T,this.pointSizes=k,this.pointIds=_,this.pointVAO=A,this.pointCount=0,this.contourLineWidth=1,this.contourPositions=M,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 k=T.prototype;function A(t,e){if(!e)return 1;if(!e.length)return 1;for(var r=0;r<e.length;++r){if(e.length<2)return 1;if(e[r][0]===t)return e[r][1];if(e[r][0]>t&&r>0){var n=(e[r][0]-t)/(e[r][0]-e[r-1][0]);return e[r][1]*(1-n)+n*e[r-1][1]}}return 1}function M(t){var e=n(t,v.vertex,v.fragment);return e.attributes.position.location=0,e.attributes.color.location=2,e.attributes.uv.location=3,e.attributes.pointSize.location=4,e}function S(t){var e=n(t,x.vertex,x.fragment);return e.attributes.position.location=0,e.attributes.id.location=1,e}function E(t){var e=n(t,_.vertex,_.fragment);return e.attributes.position.location=0,e.attributes.id.location=1,e.attributes.pointSize.location=4,e}function C(t){var e=n(t,b.vertex,b.fragment);return e.attributes.position.location=0,e}k.isOpaque=function(){return!this.hasAlpha},k.isTransparent=function(){return this.hasAlpha},k.pickSlots=1,k.setPickBase=function(t){this.pickId=t},k.highlight=function(t){if(t&&this.contourEnable){for(var e=f(this.cells,this.intensity,t.intensity),r=e.cells,n=e.vertexIds,i=e.vertexWeights,a=r.length,o=p.mallocFloat32(6*a),s=0,l=0;l<a;++l)for(var c=r[l],u=0;u<2;++u){var h=c[0];2===c.length&&(h=c[u]);for(var d=n[h][0],m=n[h][1],g=i[h],y=1-g,v=this.positions[d],x=this.positions[m],_=0;_<3;++_)o[s++]=g*v[_]+y*x[_]}this.contourCount=s/3|0,this.contourPositions.update(o.subarray(0,s)),p.free(o)}else this.contourCount=0},k.update=function(t){t=t||{};var e=this.gl;this.dirty=!0,\"contourEnable\"in t&&(this.contourEnable=t.contourEnable),\"contourColor\"in t&&(this.contourColor=t.contourColor),\"lineWidth\"in t&&(this.lineWidth=t.lineWidth),\"lightPosition\"in t&&(this.lightPosition=t.lightPosition),this.hasAlpha=!1,\"opacity\"in t&&(this.opacity=t.opacity,this.opacity<1&&(this.hasAlpha=!0)),\"opacityscale\"in t&&(this.opacityscale=t.opacityscale,this.hasAlpha=!0),\"ambient\"in t&&(this.ambientLight=t.ambient),\"diffuse\"in t&&(this.diffuseLight=t.diffuse),\"specular\"in t&&(this.specularLight=t.specular),\"roughness\"in t&&(this.roughness=t.roughness),\"fresnel\"in t&&(this.fresnel=t.fresnel),t.texture?(this.texture.dispose(),this.texture=o(e,t.texture)):t.colormap&&(this.texture.shape=[256,256],this.texture.minFilter=e.LINEAR_MIPMAP_LINEAR,this.texture.magFilter=e.LINEAR,this.texture.setPixels(function(t,e){for(var r=h({colormap:t,nshades:256,format:\"rgba\"}),n=new Uint8Array(1024),i=0;i<256;++i){for(var a=r[i],o=0;o<3;++o)n[4*i+o]=a[o];n[4*i+3]=e?255*A(i/255,e):255*a[3]}return u(n,[256,256,4],[4,0,1])}(t.colormap,this.opacityscale)),this.texture.generateMipmap());var r=t.cells,n=t.positions;if(n&&r){var i=[],a=[],l=[],c=[],f=[],p=[],d=[],m=[],g=[],y=[],v=[],x=[],_=[],b=[];this.cells=r,this.positions=n;var w=t.vertexNormals,T=t.cellNormals,k=void 0===t.vertexNormalsEpsilon?1e-6:t.vertexNormalsEpsilon,M=void 0===t.faceNormalsEpsilon?1e-6:t.faceNormalsEpsilon;t.useFacetNormals&&!T&&(T=s.faceNormals(r,n,M)),T||w||(w=s.vertexNormals(r,n,k));var S=t.vertexColors,E=t.cellColors,C=t.meshColor||[1,1,1,1],L=t.vertexUVs,I=t.vertexIntensity,P=t.cellUVs,z=t.cellIntensity,O=1/0,D=-1/0;if(!L&&!P)if(I)if(t.vertexIntensityBounds)O=+t.vertexIntensityBounds[0],D=+t.vertexIntensityBounds[1];else for(var R=0;R<I.length;++R){var F=I[R];O=Math.min(O,F),D=Math.max(D,F)}else if(z)if(t.cellIntensityBounds)O=+t.cellIntensityBounds[0],D=+t.cellIntensityBounds[1];else for(R=0;R<z.length;++R)F=z[R],O=Math.min(O,F),D=Math.max(D,F);else for(R=0;R<n.length;++R)F=n[R][2],O=Math.min(O,F),D=Math.max(D,F);this.intensity=I||z||function(t){for(var e=t.length,r=new Array(e),n=0;n<e;++n)r[n]=t[n][2];return r}(n),this.pickVertex=!(z||E);var B=t.pointSizes,N=t.pointSize||1;for(this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],R=0;R<n.length;++R)for(var j=n[R],U=0;U<3;++U)!isNaN(j[U])&&isFinite(j[U])&&(this.bounds[0][U]=Math.min(this.bounds[0][U],j[U]),this.bounds[1][U]=Math.max(this.bounds[1][U],j[U]));var V=0,q=0,H=0;t:for(R=0;R<r.length;++R){var G=r[R];switch(G.length){case 1:for(j=n[W=G[0]],U=0;U<3;++U)if(isNaN(j[U])||!isFinite(j[U]))continue t;y.push(j[0],j[1],j[2]),Y=S?S[W]:E?E[R]:C,this.opacityscale&&I?a.push(Y[0],Y[1],Y[2],this.opacity*A((I[W]-O)/(D-O),this.opacityscale)):3===Y.length?v.push(Y[0],Y[1],Y[2],this.opacity):(v.push(Y[0],Y[1],Y[2],Y[3]*this.opacity),Y[3]<1&&(this.hasAlpha=!0)),X=L?L[W]:I?[(I[W]-O)/(D-O),0]:P?P[R]:z?[(z[R]-O)/(D-O),0]:[(j[2]-O)/(D-O),0],x.push(X[0],X[1]),B?_.push(B[W]):_.push(N),b.push(R),H+=1;break;case 2:for(U=0;U<2;++U){j=n[W=G[U]];for(var Z=0;Z<3;++Z)if(isNaN(j[Z])||!isFinite(j[Z]))continue t}for(U=0;U<2;++U)j=n[W=G[U]],p.push(j[0],j[1],j[2]),Y=S?S[W]:E?E[R]:C,this.opacityscale&&I?a.push(Y[0],Y[1],Y[2],this.opacity*A((I[W]-O)/(D-O),this.opacityscale)):3===Y.length?d.push(Y[0],Y[1],Y[2],this.opacity):(d.push(Y[0],Y[1],Y[2],Y[3]*this.opacity),Y[3]<1&&(this.hasAlpha=!0)),X=L?L[W]:I?[(I[W]-O)/(D-O),0]:P?P[R]:z?[(z[R]-O)/(D-O),0]:[(j[2]-O)/(D-O),0],m.push(X[0],X[1]),g.push(R);q+=1;break;case 3:for(U=0;U<3;++U)for(j=n[W=G[U]],Z=0;Z<3;++Z)if(isNaN(j[Z])||!isFinite(j[Z]))continue t;for(U=0;U<3;++U){var W,Y,X,$;j=n[W=G[2-U]],i.push(j[0],j[1],j[2]),(Y=S?S[W]:E?E[R]:C)?this.opacityscale&&I?a.push(Y[0],Y[1],Y[2],this.opacity*A((I[W]-O)/(D-O),this.opacityscale)):3===Y.length?a.push(Y[0],Y[1],Y[2],this.opacity):(a.push(Y[0],Y[1],Y[2],Y[3]*this.opacity),Y[3]<1&&(this.hasAlpha=!0)):a.push(.5,.5,.5,1),X=L?L[W]:I?[(I[W]-O)/(D-O),0]:P?P[R]:z?[(z[R]-O)/(D-O),0]:[(j[2]-O)/(D-O),0],c.push(X[0],X[1]),$=w?w[W]:T[R],l.push($[0],$[1],$[2]),f.push(R)}V+=1}}this.pointCount=H,this.edgeCount=q,this.triangleCount=V,this.pointPositions.update(y),this.pointColors.update(v),this.pointUVs.update(x),this.pointSizes.update(_),this.pointIds.update(new Uint32Array(b)),this.edgePositions.update(p),this.edgeColors.update(d),this.edgeUVs.update(m),this.edgeIds.update(new Uint32Array(g)),this.trianglePositions.update(i),this.triangleColors.update(a),this.triangleUVs.update(c),this.triangleNormals.update(l),this.triangleIds.update(new Uint32Array(f))}},k.drawTransparent=k.draw=function(t){t=t||{};for(var e=this.gl,r=t.model||w,n=t.view||w,i=t.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]);var s={model:r,view:n,projection:i,inverseModel:w.slice(),clipBounds:a,kambient:this.ambientLight,kdiffuse:this.diffuseLight,kspecular:this.specularLight,roughness:this.roughness,fresnel:this.fresnel,eyePosition:[0,0,0],lightPosition:[0,0,0],contourColor:this.contourColor,texture:0};s.inverseModel=c(s.inverseModel,s.model),e.disable(e.CULL_FACE),this.texture.bind(0);var u=new Array(16);for(l(u,s.view,s.model),l(u,s.projection,u),c(u,u),o=0;o<3;++o)s.eyePosition[o]=u[12+o]/u[15];var h,f=u[15];for(o=0;o<3;++o)f+=this.lightPosition[o]*u[4*o+3];for(o=0;o<3;++o){for(var p=u[12+o],d=0;d<3;++d)p+=u[4*d+o]*this.lightPosition[d];s.lightPosition[o]=p/f}this.triangleCount>0&&((h=this.triShader).bind(),h.uniforms=s,this.triangleVAO.bind(),e.drawArrays(e.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind()),this.edgeCount>0&&this.lineWidth>0&&((h=this.lineShader).bind(),h.uniforms=s,this.edgeVAO.bind(),e.lineWidth(this.lineWidth*this.pixelRatio),e.drawArrays(e.LINES,0,2*this.edgeCount),this.edgeVAO.unbind()),this.pointCount>0&&((h=this.pointShader).bind(),h.uniforms=s,this.pointVAO.bind(),e.drawArrays(e.POINTS,0,this.pointCount),this.pointVAO.unbind()),this.contourEnable&&this.contourCount>0&&this.contourLineWidth>0&&((h=this.contourShader).bind(),h.uniforms=s,this.contourVAO.bind(),e.drawArrays(e.LINES,0,this.contourCount),this.contourVAO.unbind())},k.drawPick=function(t){t=t||{};for(var e=this.gl,r=t.model||w,n=t.view||w,i=t.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=[e.drawingBufferWidth,e.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(),e.drawArrays(e.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind()),this.edgeCount>0&&(this.edgeVAO.bind(),e.lineWidth(this.lineWidth*this.pixelRatio),e.drawArrays(e.LINES,0,2*this.edgeCount),this.edgeVAO.unbind()),this.pointCount>0&&((s=this.pointPickShader).bind(),s.uniforms=l,this.pointVAO.bind(),e.drawArrays(e.POINTS,0,this.pointCount),this.pointVAO.unbind())},k.pick=function(t){if(!t)return null;if(t.id!==this.pickId)return null;for(var e=t.value[0]+256*t.value[1]+65536*t.value[2],r=this.cells[e],n=this.positions,i=new Array(r.length),a=0;a<r.length;++a)i[a]=n[r[a]];var o=t.coord[0],s=t.coord[1];if(!this.pickVertex){var l=this.positions[r[0]],c=this.positions[r[1]],u=this.positions[r[2]],h=[(l[0]+c[0]+u[0])/3,(l[1]+c[1]+u[1])/3,(l[2]+c[2]+u[2])/3];return{_cellCenter:!0,position:[o,s],index:e,cell:r,cellId:e,intensity:this.intensity[e],dataCoordinate:h}}var f=m(i,[o*this.pixelRatio,this._resolution[1]-s*this.pixelRatio],this._model,this._view,this._projection,this._resolution);if(!f)return null;var p=f[2],d=0;for(a=0;a<r.length;++a)d+=p[a]*this.intensity[r[a]];return{position:f[1],index:r[f[0]],cell:r,cellId:e,intensity:d,dataCoordinate:this.positions[r[f[0]]]}},k.dispose=function(){this.texture.dispose(),this.triShader.dispose(),this.lineShader.dispose(),this.pointShader.dispose(),this.pickShader.dispose(),this.pointPickShader.dispose(),this.triangleVAO.dispose(),this.trianglePositions.dispose(),this.triangleColors.dispose(),this.triangleUVs.dispose(),this.triangleNormals.dispose(),this.triangleIds.dispose(),this.edgeVAO.dispose(),this.edgePositions.dispose(),this.edgeColors.dispose(),this.edgeUVs.dispose(),this.edgeIds.dispose(),this.pointVAO.dispose(),this.pointPositions.dispose(),this.pointColors.dispose(),this.pointUVs.dispose(),this.pointSizes.dispose(),this.pointIds.dispose(),this.contourVAO.dispose(),this.contourPositions.dispose(),this.contourShader.dispose()},t.exports=function(t,e){if(1===arguments.length&&(t=(e=t).gl),!(t.getExtension(\"OES_standard_derivatives\")||t.getExtension(\"MOZ_OES_standard_derivatives\")||t.getExtension(\"WEBKIT_OES_standard_derivatives\")))throw new Error(\"derivatives not supported\");var r=function(t){var e=n(t,g.vertex,g.fragment);return e.attributes.position.location=0,e.attributes.color.location=2,e.attributes.uv.location=3,e.attributes.normal.location=4,e}(t),s=function(t){var e=n(t,y.vertex,y.fragment);return e.attributes.position.location=0,e.attributes.color.location=2,e.attributes.uv.location=3,e}(t),l=M(t),c=S(t),h=E(t),f=C(t),p=o(t,u(new Uint8Array([255,255,255,255]),[1,1,4]));p.generateMipmap(),p.minFilter=t.LINEAR_MIPMAP_LINEAR,p.magFilter=t.LINEAR;var d=i(t),m=i(t),v=i(t),x=i(t),_=i(t),b=a(t,[{buffer:d,type:t.FLOAT,size:3},{buffer:_,type:t.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:m,type:t.FLOAT,size:4},{buffer:v,type:t.FLOAT,size:2},{buffer:x,type:t.FLOAT,size:3}]),w=i(t),k=i(t),A=i(t),L=i(t),I=a(t,[{buffer:w,type:t.FLOAT,size:3},{buffer:L,type:t.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:k,type:t.FLOAT,size:4},{buffer:A,type:t.FLOAT,size:2}]),P=i(t),z=i(t),O=i(t),D=i(t),R=i(t),F=a(t,[{buffer:P,type:t.FLOAT,size:3},{buffer:R,type:t.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:z,type:t.FLOAT,size:4},{buffer:O,type:t.FLOAT,size:2},{buffer:D,type:t.FLOAT,size:1}]),B=i(t),N=new T(t,p,r,s,l,c,h,f,d,_,m,v,x,b,w,L,k,A,I,P,R,z,O,D,F,B,a(t,[{buffer:B,type:t.FLOAT,size:3}]));return N.update(e),N}},8120:function(t,e,r){\"use strict\";t.exports=function(t){var e=t.gl;return new o(t,n(e,[0,0,0,1,1,0,1,1]),i(e,a.boxVert,a.lineFrag))};var n=r(2762),i=r(9405),a=r(3603);function o(t,e,r){this.plot=t,this.vbo=e,this.shader=r}var s,l,c=o.prototype;c.bind=function(){var t=this.shader;this.vbo.bind(),this.shader.bind(),t.attributes.coord.pointer(),t.uniforms.screenBox=this.plot.screenBox},c.drawBox=(s=[0,0],l=[0,0],function(t,e,r,n,i){var a=this.plot,o=this.shader,c=a.gl;s[0]=t,s[1]=e,l[0]=r,l[1]=n,o.uniforms.lo=s,o.uniforms.hi=l,o.uniforms.color=i,c.drawArrays(c.TRIANGLE_STRIP,0,4)}),c.dispose=function(){this.vbo.dispose(),this.shader.dispose()}},1913:function(t,e,r){\"use strict\";t.exports=function(t){var e=t.gl;return new s(t,n(e),i(e,o.gridVert,o.gridFrag),i(e,o.tickVert,o.gridFrag))};var n=r(2762),i=r(9405),a=r(2478),o=r(3603);function s(t,e,r,n){this.plot=t,this.vbo=e,this.shader=r,this.tickShader=n,this.ticks=[[],[]]}function l(t,e){return t-e}var c,u,h,f,p,d=s.prototype;d.draw=(c=[0,0],u=[0,0],h=[0,0],function(){for(var t=this.plot,e=this.vbo,r=this.shader,n=this.ticks,i=t.gl,a=t._tickBounds,o=t.dataBox,s=t.viewBox,l=t.gridLineWidth,f=t.gridLineColor,p=t.gridLineEnable,d=t.pixelRatio,m=0;m<2;++m){var g=a[m],y=a[m+2]-g,v=.5*(o[m+2]+o[m]),x=o[m+2]-o[m];u[m]=2*y/x,c[m]=2*(g-v)/x}r.bind(),e.bind(),r.attributes.dataCoord.pointer(),r.uniforms.dataShift=c,r.uniforms.dataScale=u;var _=0;for(m=0;m<2;++m){h[0]=h[1]=0,h[m]=1,r.uniforms.dataAxis=h,r.uniforms.lineWidth=l[m]/(s[m+2]-s[m])*d,r.uniforms.color=f[m];var b=6*n[m].length;p[m]&&b&&i.drawArrays(i.TRIANGLES,_,b),_+=b}}),d.drawTickMarks=function(){var t=[0,0],e=[0,0],r=[1,0],n=[0,1],i=[0,0],o=[0,0];return function(){for(var s=this.plot,c=this.vbo,u=this.tickShader,h=this.ticks,f=s.gl,p=s._tickBounds,d=s.dataBox,m=s.viewBox,g=s.pixelRatio,y=s.screenBox,v=y[2]-y[0],x=y[3]-y[1],_=m[2]-m[0],b=m[3]-m[1],w=0;w<2;++w){var T=p[w],k=p[w+2]-T,A=.5*(d[w+2]+d[w]),M=d[w+2]-d[w];e[w]=2*k/M,t[w]=2*(T-A)/M}e[0]*=_/v,t[0]*=_/v,e[1]*=b/x,t[1]*=b/x,u.bind(),c.bind(),u.attributes.dataCoord.pointer();var S=u.uniforms;S.dataShift=t,S.dataScale=e;var E=s.tickMarkLength,C=s.tickMarkWidth,L=s.tickMarkColor,I=6*h[0].length,P=Math.min(a.ge(h[0],(d[0]-p[0])/(p[2]-p[0]),l),h[0].length),z=Math.min(a.gt(h[0],(d[2]-p[0])/(p[2]-p[0]),l),h[0].length),O=0+6*P,D=6*Math.max(0,z-P),R=Math.min(a.ge(h[1],(d[1]-p[1])/(p[3]-p[1]),l),h[1].length),F=Math.min(a.gt(h[1],(d[3]-p[1])/(p[3]-p[1]),l),h[1].length),B=I+6*R,N=6*Math.max(0,F-R);i[0]=2*(m[0]-E[1])/v-1,i[1]=(m[3]+m[1])/x-1,o[0]=E[1]*g/v,o[1]=C[1]*g/x,N&&(S.color=L[1],S.tickScale=o,S.dataAxis=n,S.screenOffset=i,f.drawArrays(f.TRIANGLES,B,N)),i[0]=(m[2]+m[0])/v-1,i[1]=2*(m[1]-E[0])/x-1,o[0]=C[0]*g/v,o[1]=E[0]*g/x,D&&(S.color=L[0],S.tickScale=o,S.dataAxis=r,S.screenOffset=i,f.drawArrays(f.TRIANGLES,O,D)),i[0]=2*(m[2]+E[3])/v-1,i[1]=(m[3]+m[1])/x-1,o[0]=E[3]*g/v,o[1]=C[3]*g/x,N&&(S.color=L[3],S.tickScale=o,S.dataAxis=n,S.screenOffset=i,f.drawArrays(f.TRIANGLES,B,N)),i[0]=(m[2]+m[0])/v-1,i[1]=2*(m[3]+E[2])/x-1,o[0]=C[2]*g/v,o[1]=E[2]*g/x,D&&(S.color=L[2],S.tickScale=o,S.dataAxis=r,S.screenOffset=i,f.drawArrays(f.TRIANGLES,O,D))}}(),d.update=(f=[1,1,-1,-1,1,-1],p=[1,-1,1,1,-1,-1],function(t){for(var e=t.ticks,r=t.bounds,n=new Float32Array(18*(e[0].length+e[1].length)),i=(this.plot.zeroLineEnable,0),a=[[],[]],o=0;o<2;++o)for(var s=a[o],l=e[o],c=r[o],u=r[o+2],h=0;h<l.length;++h){var d=(l[h].x-c)/(u-c);s.push(d);for(var m=0;m<6;++m)n[i++]=d,n[i++]=f[m],n[i++]=p[m]}this.ticks=a,this.vbo.update(n)}),d.dispose=function(){this.vbo.dispose(),this.shader.dispose(),this.tickShader.dispose()}},4747:function(t,e,r){\"use strict\";t.exports=function(t){var e=t.gl;return new o(t,n(e,[-1,-1,-1,1,1,-1,1,1]),i(e,a.lineVert,a.lineFrag))};var n=r(2762),i=r(9405),a=r(3603);function o(t,e,r){this.plot=t,this.vbo=e,this.shader=r}var s,l,c=o.prototype;c.bind=function(){var t=this.shader;this.vbo.bind(),this.shader.bind(),t.attributes.coord.pointer(),t.uniforms.screenBox=this.plot.screenBox},c.drawLine=(s=[0,0],l=[0,0],function(t,e,r,n,i,a){var o=this.plot,c=this.shader,u=o.gl;s[0]=t,s[1]=e,l[0]=r,l[1]=n,c.uniforms.start=s,c.uniforms.end=l,c.uniforms.width=i*o.pixelRatio,c.uniforms.color=a,u.drawArrays(u.TRIANGLE_STRIP,0,4)}),c.dispose=function(){this.vbo.dispose(),this.shader.dispose()}},3603:function(t,e,r){\"use strict\";var n=r(3236),i=n([\"precision lowp float;\\n#define GLSLIFY 1\\nuniform vec4 color;\\nvoid main() {\\n gl_FragColor = vec4(color.xyz * color.w, color.w);\\n}\\n\"]);t.exports={lineVert:n([\"precision mediump float;\\n#define GLSLIFY 1\\n\\nattribute vec2 coord;\\n\\nuniform vec4 screenBox;\\nuniform vec2 start, end;\\nuniform float width;\\n\\nvec2 perp(vec2 v) {\\n return vec2(v.y, -v.x);\\n}\\n\\nvec2 screen(vec2 v) {\\n return 2.0 * (v - screenBox.xy) / (screenBox.zw - screenBox.xy) - 1.0;\\n}\\n\\nvoid main() {\\n vec2 delta = normalize(perp(start - end));\\n vec2 offset = mix(start, end, 0.5 * (coord.y+1.0));\\n gl_Position = vec4(screen(offset + 0.5 * width * delta * coord.x), 0, 1);\\n}\\n\"]),lineFrag:i,textVert:n([\"#define GLSLIFY 1\\nattribute vec3 textCoordinate;\\n\\nuniform vec2 dataScale, dataShift, dataAxis, screenOffset, textScale;\\nuniform float angle;\\n\\nvoid main() {\\n float dataOffset = textCoordinate.z;\\n vec2 glyphOffset = textCoordinate.xy;\\n mat2 glyphMatrix = mat2(cos(angle), sin(angle), -sin(angle), cos(angle));\\n vec2 screenCoordinate = dataAxis * (dataScale * dataOffset + dataShift) +\\n glyphMatrix * glyphOffset * textScale + screenOffset;\\n gl_Position = vec4(screenCoordinate, 0, 1);\\n}\\n\"]),textFrag:i,gridVert:n([\"precision mediump float;\\n#define GLSLIFY 1\\n\\nattribute vec3 dataCoord;\\n\\nuniform vec2 dataAxis, dataShift, dataScale;\\nuniform float lineWidth;\\n\\nvoid main() {\\n vec2 pos = dataAxis * (dataScale * dataCoord.x + dataShift);\\n pos += 10.0 * dataCoord.y * vec2(dataAxis.y, -dataAxis.x) + dataCoord.z * lineWidth;\\n gl_Position = vec4(pos, 0, 1);\\n}\\n\"]),gridFrag:i,boxVert:n([\"precision mediump float;\\n#define GLSLIFY 1\\n\\nattribute vec2 coord;\\n\\nuniform vec4 screenBox;\\nuniform vec2 lo, hi;\\n\\nvec2 screen(vec2 v) {\\n return 2.0 * (v - screenBox.xy) / (screenBox.zw - screenBox.xy) - 1.0;\\n}\\n\\nvoid main() {\\n gl_Position = vec4(screen(mix(lo, hi, coord)), 0, 1);\\n}\\n\"]),tickVert:n([\"precision mediump float;\\n#define GLSLIFY 1\\n\\nattribute vec3 dataCoord;\\n\\nuniform vec2 dataAxis, dataShift, dataScale, screenOffset, tickScale;\\n\\nvoid main() {\\n vec2 pos = dataAxis * (dataScale * dataCoord.x + dataShift);\\n gl_Position = vec4(pos + tickScale*dataCoord.yz + screenOffset, 0, 1);\\n}\\n\"])}},2142:function(t,e,r){\"use strict\";t.exports=function(t){var e=t.gl;return new l(t,n(e),i(e,s.textVert,s.textFrag))};var n=r(2762),i=r(9405),a=r(529),o=r(2478),s=r(3603);function l(t,e,r){this.plot=t,this.vbo=e,this.shader=r,this.tickOffset=[[],[]],this.tickX=[[],[]],this.labelOffset=[0,0],this.labelCount=[0,0]}var c,u,h,f,p,d,m=l.prototype;m.drawTicks=(c=[0,0],u=[0,0],h=[0,0],function(t){var e=this.plot,r=this.shader,n=this.tickX[t],i=this.tickOffset[t],a=e.gl,s=e.viewBox,l=e.dataBox,f=e.screenBox,p=e.pixelRatio,d=e.tickEnable,m=e.tickPad,g=e.tickColor,y=e.tickAngle,v=e.labelEnable,x=e.labelPad,_=e.labelColor,b=e.labelAngle,w=this.labelOffset[t],T=this.labelCount[t],k=o.lt(n,l[t]),A=o.le(n,l[t+2]);c[0]=c[1]=0,c[t]=1,u[t]=(s[2+t]+s[t])/(f[2+t]-f[t])-1;var M=2/f[2+(1^t)]-f[1^t];u[1^t]=M*s[1^t]-1,d[t]&&(u[1^t]-=M*p*m[t],k<A&&i[A]>i[k]&&(r.uniforms.dataAxis=c,r.uniforms.screenOffset=u,r.uniforms.color=g[t],r.uniforms.angle=y[t],a.drawArrays(a.TRIANGLES,i[k],i[A]-i[k]))),v[t]&&T&&(u[1^t]-=M*p*x[t],r.uniforms.dataAxis=h,r.uniforms.screenOffset=u,r.uniforms.color=_[t],r.uniforms.angle=b[t],a.drawArrays(a.TRIANGLES,w,T)),u[1^t]=M*s[2+(1^t)]-1,d[t+2]&&(u[1^t]+=M*p*m[t+2],k<A&&i[A]>i[k]&&(r.uniforms.dataAxis=c,r.uniforms.screenOffset=u,r.uniforms.color=g[t+2],r.uniforms.angle=y[t+2],a.drawArrays(a.TRIANGLES,i[k],i[A]-i[k]))),v[t+2]&&T&&(u[1^t]+=M*p*x[t+2],r.uniforms.dataAxis=h,r.uniforms.screenOffset=u,r.uniforms.color=_[t+2],r.uniforms.angle=b[t+2],a.drawArrays(a.TRIANGLES,w,T))}),m.drawTitle=function(){var t=[0,0],e=[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,c=r.pixelRatio;if(this.titleCount){for(var u=0;u<2;++u)e[u]=2*(o[u]*c-a[u])/(a[2+u]-a[u])-1;n.bind(),n.uniforms.dataAxis=t,n.uniforms.screenOffset=e,n.uniforms.angle=s,n.uniforms.color=l,i.drawArrays(i.TRIANGLES,this.titleOffset,this.titleCount)}}}(),m.bind=(f=[0,0],p=[0,0],d=[0,0],function(){var t=this.plot,e=this.shader,r=t._tickBounds,n=t.dataBox,i=t.screenBox,a=t.viewBox;e.bind();for(var o=0;o<2;++o){var s=r[o],l=r[o+2]-s,c=.5*(n[o+2]+n[o]),u=n[o+2]-n[o],h=a[o],m=a[o+2]-h,g=i[o],y=i[o+2]-g;p[o]=2*l/u*m/y,f[o]=2*(s-c)/u*m/y}d[1]=2*t.pixelRatio/(i[3]-i[1]),d[0]=d[1]*(i[3]-i[1])/(i[2]-i[0]),e.uniforms.dataScale=p,e.uniforms.dataShift=f,e.uniforms.textScale=d,this.vbo.bind(),e.attributes.textCoordinate.pointer()}),m.update=function(t){var e,r,n,i,o,s=[],l=t.ticks,c=t.bounds;for(o=0;o<2;++o){var u=[Math.floor(s.length/3)],h=[-1/0],f=l[o];for(e=0;e<f.length;++e){var p=f[e],d=p.x,m=p.text,g=p.font||\"sans-serif\",y=p.fontStyle||\"normal\",v=p.fontWeight||\"normal\",x=p.fontVariant||\"normal\";i=p.fontSize||12;for(var _=1/(c[o+2]-c[o]),b=c[o],w=m.split(\"\\n\"),T=0;T<w.length;T++)for(n=a(g,w[T],{fontStyle:y,fontWeight:v,fontVariant:x}).data,r=0;r<n.length;r+=2)s.push(n[r]*i,-n[r+1]*i-T*i*1.2,(d-b)*_);u.push(Math.floor(s.length/3)),h.push(d)}this.tickOffset[o]=u,this.tickX[o]=h}for(o=0;o<2;++o){for(this.labelOffset[o]=Math.floor(s.length/3),n=a(t.labelFont[o],t.labels[o],{fontStyle:t.labelFontStyle[o],fontWeight:t.labelFontWeight[o],fontVariant:t.labelFontVariant[o],textAlign:\"center\"}).data,i=t.labelSize[o],e=0;e<n.length;e+=2)s.push(n[e]*i,-n[e+1]*i,0);this.labelCount[o]=Math.floor(s.length/3)-this.labelOffset[o]}for(this.titleOffset=Math.floor(s.length/3),n=a(t.titleFont,t.title,{fontStyle:t.titleFontStyle,fontWeight:t.titleFontWeight,fontVariant:t.titleFontVariant}).data,i=t.titleSize,e=0;e<n.length;e+=2)s.push(n[e]*i,-n[e+1]*i,0);this.titleCount=Math.floor(s.length/3)-this.titleOffset,this.vbo.update(s)},m.dispose=function(){this.vbo.dispose(),this.shader.dispose()}},1850:function(t,e,r){\"use strict\";t.exports=function(t){var e=t.gl,r=new l(e,n(e,[e.drawingBufferWidth,e.drawingBufferHeight]));return r.grid=i(r),r.text=a(r),r.line=o(r),r.box=s(r),r.update(t),r};var n=r(3589),i=r(1913),a=r(2142),o=r(4747),s=r(8120);function l(t,e){this.gl=t,this.pickBuffer=e,this.screenBox=[0,0,t.drawingBufferWidth,t.drawingBufferHeight],this.viewBox=[0,0,0,0],this.dataBox=[-10,-10,10,10],this.gridLineEnable=[!0,!0],this.gridLineWidth=[1,1],this.gridLineColor=[[0,0,0,1],[0,0,0,1]],this.pixelRatio=1,this.tickMarkLength=[0,0,0,0],this.tickMarkWidth=[0,0,0,0],this.tickMarkColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[15,15,15,15],this.tickAngle=[0,0,0,0],this.tickEnable=[!0,!0,!0,!0],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[15,15,15,15],this.labelAngle=[0,Math.PI/2,0,3*Math.PI/2],this.labelEnable=[!0,!0,!0,!0],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.titleCenter=[0,0],this.titleEnable=!0,this.titleAngle=0,this.titleColor=[0,0,0,1],this.borderColor=[0,0,0,0],this.backgroundColor=[0,0,0,0],this.zeroLineEnable=[!0,!0],this.zeroLineWidth=[4,4],this.zeroLineColor=[[0,0,0,1],[0,0,0,1]],this.borderLineEnable=[!0,!0,!0,!0],this.borderLineWidth=[2,2,2,2],this.borderLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.grid=null,this.text=null,this.line=null,this.box=null,this.objects=[],this.overlays=[],this._tickBounds=[1/0,1/0,-1/0,-1/0],this.static=!1,this.dirty=!1,this.pickDirty=!1,this.pickDelay=120,this.pickRadius=10,this._pickTimeout=null,this._drawPick=this.drawPick.bind(this),this._depthCounter=0}var c=l.prototype;function u(t){for(var e=t.slice(),r=0;r<e.length;++r)e[r]=e[r].slice();return e}function h(t,e){return t.x-e.x}c.setDirty=function(){this.dirty=this.pickDirty=!0},c.setOverlayDirty=function(){this.dirty=!0},c.nextDepthValue=function(){return this._depthCounter++/65536},c.draw=function(){var t=this.gl,e=this.screenBox,r=this.viewBox,n=this.dataBox,i=this.pixelRatio,a=this.grid,o=this.line,s=this.text,l=this.objects;if(this._depthCounter=0,this.pickDirty&&(this._pickTimeout&&clearTimeout(this._pickTimeout),this.pickDirty=!1,this._pickTimeout=setTimeout(this._drawPick,this.pickDelay)),this.dirty){if(this.dirty=!1,t.bindFramebuffer(t.FRAMEBUFFER,null),t.enable(t.SCISSOR_TEST),t.disable(t.DEPTH_TEST),t.depthFunc(t.LESS),t.depthMask(!1),t.enable(t.BLEND),t.blendEquation(t.FUNC_ADD,t.FUNC_ADD),t.blendFunc(t.ONE,t.ONE_MINUS_SRC_ALPHA),this.borderColor){t.scissor(e[0],e[1],e[2]-e[0],e[3]-e[1]);var c=this.borderColor;t.clearColor(c[0]*c[3],c[1]*c[3],c[2]*c[3],c[3]),t.clear(t.COLOR_BUFFER_BIT|t.DEPTH_BUFFER_BIT)}t.scissor(r[0],r[1],r[2]-r[0],r[3]-r[1]),t.viewport(r[0],r[1],r[2]-r[0],r[3]-r[1]);var u=this.backgroundColor;t.clearColor(u[0]*u[3],u[1]*u[3],u[2]*u[3],u[3]),t.clear(t.COLOR_BUFFER_BIT),a.draw();var h=this.zeroLineEnable,f=this.zeroLineColor,p=this.zeroLineWidth;if(h[0]||h[1]){o.bind();for(var d=0;d<2;++d)if(h[d]&&n[d]<=0&&n[d+2]>=0){var m=e[d]-n[d]*(e[d+2]-e[d])/(n[d+2]-n[d]);0===d?o.drawLine(m,e[1],m,e[3],p[d],f[d]):o.drawLine(e[0],m,e[2],m,p[d],f[d])}}for(d=0;d<l.length;++d)l[d].draw();t.viewport(e[0],e[1],e[2]-e[0],e[3]-e[1]),t.scissor(e[0],e[1],e[2]-e[0],e[3]-e[1]),this.grid.drawTickMarks(),o.bind();var g=this.borderLineEnable,y=this.borderLineWidth,v=this.borderLineColor;for(g[1]&&o.drawLine(r[0],r[1]-.5*y[1]*i,r[0],r[3]+.5*y[3]*i,y[1],v[1]),g[0]&&o.drawLine(r[0]-.5*y[0]*i,r[1],r[2]+.5*y[2]*i,r[1],y[0],v[0]),g[3]&&o.drawLine(r[2],r[1]-.5*y[1]*i,r[2],r[3]+.5*y[3]*i,y[3],v[3]),g[2]&&o.drawLine(r[0]-.5*y[0]*i,r[3],r[2]+.5*y[2]*i,r[3],y[2],v[2]),s.bind(),d=0;d<2;++d)s.drawTicks(d);this.titleEnable&&s.drawTitle();var x=this.overlays;for(d=0;d<x.length;++d)x[d].draw();t.disable(t.SCISSOR_TEST),t.disable(t.BLEND),t.depthMask(!0)}},c.drawPick=function(){if(!this.static){var t=this.pickBuffer;this.gl,this._pickTimeout=null,t.begin();for(var e=1,r=this.objects,n=0;n<r.length;++n)e=r[n].drawPick(e);t.end()}},c.pick=function(t,e){if(!this.static){var r=this.pixelRatio,n=this.pickPixelRatio,i=this.viewBox,a=0|Math.round((t-i[0]/r)*n),o=0|Math.round((e-i[1]/r)*n),s=this.pickBuffer.query(a,o,this.pickRadius);if(!s)return null;for(var l=s.id+(s.value[0]<<8)+(s.value[1]<<16)+(s.value[2]<<24),c=this.objects,u=0;u<c.length;++u){var h=c[u].pick(a,o,l);if(h)return h}return null}},c.setScreenBox=function(t){var e=this.screenBox,r=this.pixelRatio;e[0]=0|Math.round(t[0]*r),e[1]=0|Math.round(t[1]*r),e[2]=0|Math.round(t[2]*r),e[3]=0|Math.round(t[3]*r),this.setDirty()},c.setDataBox=function(t){var e=this.dataBox;(e[0]!==t[0]||e[1]!==t[1]||e[2]!==t[2]||e[3]!==t[3])&&(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],this.setDirty())},c.setViewBox=function(t){var e=this.pixelRatio,r=this.viewBox;r[0]=0|Math.round(t[0]*e),r[1]=0|Math.round(t[1]*e),r[2]=0|Math.round(t[2]*e),r[3]=0|Math.round(t[3]*e);var n=this.pickPixelRatio;this.pickBuffer.shape=[0|Math.round((t[2]-t[0])*n),0|Math.round((t[3]-t[1])*n)],this.setDirty()},c.update=function(t){t=t||{};var e=this.gl;this.pixelRatio=t.pixelRatio||1;var r=this.pixelRatio;this.pickPixelRatio=Math.max(r,1),this.setScreenBox(t.screenBox||[0,0,e.drawingBufferWidth/r,e.drawingBufferHeight/r]),this.screenBox,this.setViewBox(t.viewBox||[.125*(this.screenBox[2]-this.screenBox[0])/r,.125*(this.screenBox[3]-this.screenBox[1])/r,.875*(this.screenBox[2]-this.screenBox[0])/r,.875*(this.screenBox[3]-this.screenBox[1])/r]);var n=this.viewBox,i=(n[2]-n[0])/(n[3]-n[1]);this.setDataBox(t.dataBox||[-10,-10/i,10,10/i]),this.borderColor=!1!==t.borderColor&&(t.borderColor||[0,0,0,0]).slice(),this.backgroundColor=(t.backgroundColor||[0,0,0,0]).slice(),this.gridLineEnable=(t.gridLineEnable||[!0,!0]).slice(),this.gridLineWidth=(t.gridLineWidth||[1,1]).slice(),this.gridLineColor=u(t.gridLineColor||[[.5,.5,.5,1],[.5,.5,.5,1]]),this.zeroLineEnable=(t.zeroLineEnable||[!0,!0]).slice(),this.zeroLineWidth=(t.zeroLineWidth||[4,4]).slice(),this.zeroLineColor=u(t.zeroLineColor||[[0,0,0,1],[0,0,0,1]]),this.tickMarkLength=(t.tickMarkLength||[0,0,0,0]).slice(),this.tickMarkWidth=(t.tickMarkWidth||[0,0,0,0]).slice(),this.tickMarkColor=u(t.tickMarkColor||[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]]),this.titleCenter=(t.titleCenter||[.5*(n[0]+n[2])/r,(n[3]+120)/r]).slice(),this.titleEnable=!(\"titleEnable\"in t)||!!t.titleEnable,this.titleAngle=t.titleAngle||0,this.titleColor=(t.titleColor||[0,0,0,1]).slice(),this.labelPad=(t.labelPad||[15,15,15,15]).slice(),this.labelAngle=(t.labelAngle||[0,Math.PI/2,0,3*Math.PI/2]).slice(),this.labelEnable=(t.labelEnable||[!0,!0,!0,!0]).slice(),this.labelColor=u(t.labelColor||[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]]),this.tickPad=(t.tickPad||[15,15,15,15]).slice(),this.tickAngle=(t.tickAngle||[0,0,0,0]).slice(),this.tickEnable=(t.tickEnable||[!0,!0,!0,!0]).slice(),this.tickColor=u(t.tickColor||[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]]),this.borderLineEnable=(t.borderLineEnable||[!0,!0,!0,!0]).slice(),this.borderLineWidth=(t.borderLineWidth||[2,2,2,2]).slice(),this.borderLineColor=u(t.borderLineColor||[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]]);var a=t.ticks||[[],[]],o=this._tickBounds;o[0]=o[1]=1/0,o[2]=o[3]=-1/0;for(var s=0;s<2;++s){var l=a[s].slice(0);0!==l.length&&(l.sort(h),o[s]=Math.min(o[s],l[0].x),o[s+2]=Math.max(o[s+2],l[l.length-1].x))}this.grid.update({bounds:o,ticks:a}),this.text.update({bounds:o,ticks:a,labels:t.labels||[\"x\",\"y\"],labelSize:t.labelSize||[12,12],labelFont:t.labelFont||[\"sans-serif\",\"sans-serif\"],labelFontStyle:t.labelFontStyle||[\"normal\",\"normal\"],labelFontWeight:t.labelFontWeight||[\"normal\",\"normal\"],labelFontVariant:t.labelFontVariant||[\"normal\",\"normal\"],title:t.title||\"\",titleSize:t.titleSize||18,titleFont:t.titleFont||\"sans-serif\",titleFontStyle:t.titleFontStyle||\"normal\",titleFontWeight:t.titleFontWeight||\"normal\",titleFontVariant:t.titleFontVariant||\"normal\"}),this.static=!!t.static,this.setDirty()},c.dispose=function(){this.box.dispose(),this.grid.dispose(),this.text.dispose(),this.line.dispose();for(var t=this.objects.length-1;t>=0;--t)this.objects[t].dispose();for(this.objects.length=0,t=this.overlays.length-1;t>=0;--t)this.overlays[t].dispose();this.overlays.length=0,this.gl=null},c.addObject=function(t){this.objects.indexOf(t)<0&&(this.objects.push(t),this.setDirty())},c.removeObject=function(t){for(var e=this.objects,r=0;r<e.length;++r)if(e[r]===t){e.splice(r,1),this.setDirty();break}},c.addOverlay=function(t){this.overlays.indexOf(t)<0&&(this.overlays.push(t),this.setOverlayDirty())},c.removeOverlay=function(t){for(var e=this.overlays,r=0;r<e.length;++r)if(e[r]===t){e.splice(r,1),this.setOverlayDirty();break}}},4437:function(t,e,r){\"use strict\";t.exports=function(t,e){t=t||document.body;var r=[.01,1/0];\"distanceLimits\"in(e=e||{})&&(r[0]=e.distanceLimits[0],r[1]=e.distanceLimits[1]),\"zoomMin\"in e&&(r[0]=e.zoomMin),\"zoomMax\"in e&&(r[1]=e.zoomMax);var c=i({center:e.center||[0,0,0],up:e.up||[0,1,0],eye:e.eye||[0,0,10],mode:e.mode||\"orbit\",distanceLimits:r}),u=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],h=0,f=t.clientWidth,p=t.clientHeight,d={keyBindingMode:\"rotate\",enableWheel:!0,view:c,element:t,delay:e.delay||16,rotateSpeed:e.rotateSpeed||1,zoomSpeed:e.zoomSpeed||1,translateSpeed:e.translateSpeed||1,flipX:!!e.flipX,flipY:!!e.flipY,modes:c.modes,_ortho:e._ortho||e.projection&&\"orthographic\"===e.projection.type||!1,tick:function(){var e=n(),r=this.delay,i=e-2*r;c.idle(e-r),c.recalcMatrix(i),c.flush(e-(100+2*r));for(var a=!0,o=c.computedMatrix,s=0;s<16;++s)a=a&&u[s]===o[s],u[s]=o[s];var l=t.clientWidth===f&&t.clientHeight===p;return f=t.clientWidth,p=t.clientHeight,a?!l:(h=Math.exp(c.computedRadius[0]),!0)},lookAt:function(t,e,r){c.lookAt(c.lastT(),t,e,r)},rotate:function(t,e,r){c.rotate(c.lastT(),t,e,r)},pan:function(t,e,r){c.pan(c.lastT(),t,e,r)},translate:function(t,e,r){c.translate(c.lastT(),t,e,r)}};return Object.defineProperties(d,{matrix:{get:function(){return c.computedMatrix},set:function(t){return c.setMatrix(c.lastT(),t),c.computedMatrix},enumerable:!0},mode:{get:function(){return c.getMode()},set:function(t){var e=c.computedUp.slice(),r=c.computedEye.slice(),i=c.computedCenter.slice();if(c.setMode(t),\"turntable\"===t){var a=n();c._active.lookAt(a,r,i,e),c._active.lookAt(a+500,r,i,[0,0,1]),c._active.flush(a)}return c.getMode()},enumerable:!0},center:{get:function(){return c.computedCenter},set:function(t){return c.lookAt(c.lastT(),null,t),c.computedCenter},enumerable:!0},eye:{get:function(){return c.computedEye},set:function(t){return c.lookAt(c.lastT(),t),c.computedEye},enumerable:!0},up:{get:function(){return c.computedUp},set:function(t){return c.lookAt(c.lastT(),null,null,t),c.computedUp},enumerable:!0},distance:{get:function(){return h},set:function(t){return c.setDistance(c.lastT(),t),t},enumerable:!0},distanceLimits:{get:function(){return c.getDistanceLimits(r)},set:function(t){return c.setDistanceLimits(t),t},enumerable:!0}}),t.addEventListener(\"contextmenu\",(function(t){return t.preventDefault(),!1})),d._lastX=-1,d._lastY=-1,d._lastMods={shift:!1,control:!1,alt:!1,meta:!1},d.enableMouseListeners=function(){function e(e,r,i,a){var o=d.keyBindingMode;if(!1!==o){var s=\"rotate\"===o,l=\"pan\"===o,u=\"zoom\"===o,f=!!a.control,p=!!a.alt,m=!!a.shift,g=!!(1&e),y=!!(2&e),v=!!(4&e),x=1/t.clientHeight,_=x*(r-d._lastX),b=x*(i-d._lastY),w=d.flipX?1:-1,T=d.flipY?1:-1,k=Math.PI*d.rotateSpeed,A=n();if(-1!==d._lastX&&-1!==d._lastY&&((s&&g&&!f&&!p&&!m||g&&!f&&!p&&m)&&c.rotate(A,w*k*_,-T*k*b,0),(l&&g&&!f&&!p&&!m||y||g&&f&&!p&&!m)&&c.pan(A,-d.translateSpeed*_*h,d.translateSpeed*b*h,0),u&&g&&!f&&!p&&!m||v||g&&!f&&p&&!m)){var M=-d.zoomSpeed*b/window.innerHeight*(A-c.lastT())*100;c.pan(A,0,0,h*(Math.exp(M)-1))}return d._lastX=r,d._lastY=i,d._lastMods=a,!0}}d.mouseListener=a(t,e),t.addEventListener(\"touchstart\",(function(r){var n=s(r.changedTouches[0],t);e(0,n[0],n[1],d._lastMods),e(1,n[0],n[1],d._lastMods)}),!!l&&{passive:!0}),t.addEventListener(\"touchmove\",(function(r){var n=s(r.changedTouches[0],t);e(1,n[0],n[1],d._lastMods),r.preventDefault()}),!!l&&{passive:!1}),t.addEventListener(\"touchend\",(function(t){e(0,d._lastX,d._lastY,d._lastMods)}),!!l&&{passive:!0}),d.wheelListener=o(t,(function(t,e){if(!1!==d.keyBindingMode&&d.enableWheel){var r=d.flipX?1:-1,i=d.flipY?1:-1,a=n();if(Math.abs(t)>Math.abs(e))c.rotate(a,0,0,-t*r*Math.PI*d.rotateSpeed/window.innerWidth);else if(!d._ortho){var o=-d.zoomSpeed*i*e/window.innerHeight*(a-c.lastT())/20;c.pan(a,0,0,h*(Math.exp(o)-1))}}}),!0)},d.enableMouseListeners(),d};var n=r(3025),i=r(6296),a=r(351),o=r(8512),s=r(24),l=r(7520)},799:function(t,e,r){var n=r(3236),i=r(9405),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}\"]);t.exports=function(t){return i(t,a,o,null,[{name:\"position\",type:\"vec2\"}])}},4100:function(t,e,r){\"use strict\";var n=r(4437),i=r(3837),a=r(5445),o=r(4449),s=r(3589),l=r(2260),c=r(7169),u=r(351),h=r(4772),f=r(4040),p=r(799),d=r(9216)({tablet:!0,featureDetect:!0});function m(){this.mouse=[-1,-1],this.screen=null,this.distance=1/0,this.index=null,this.dataCoordinate=null,this.dataPosition=null,this.object=null,this.data=null}function g(t){var e=Math.round(Math.log(Math.abs(t))/Math.log(10));if(e<0){var r=Math.round(Math.pow(10,-e));return Math.ceil(t*r)/r}return e>0?(r=Math.round(Math.pow(10,e)),Math.ceil(t/r)*r):Math.ceil(t)}function y(t){return\"boolean\"!=typeof t||t}t.exports={createScene:function(t){(t=t||{}).camera=t.camera||{};var e=t.canvas;e||(e=document.createElement(\"canvas\"),t.container?t.container.appendChild(e):document.body.appendChild(e));var r=t.gl;if(r||(t.glOptions&&(d=!!t.glOptions.preserveDrawingBuffer),r=function(t,e){var r=null;try{(r=t.getContext(\"webgl\",e))||(r=t.getContext(\"experimental-webgl\",e))}catch(t){return null}return r}(e,t.glOptions||{premultipliedAlpha:!0,antialias:!0,preserveDrawingBuffer:d})),!r)throw new Error(\"webgl not supported\");var v=t.bounds||[[-10,-10,-10],[10,10,10]],x=new m,_=l(r,r.drawingBufferWidth,r.drawingBufferHeight,{preferFloat:!d}),b=p(r),w=t.cameraObject&&!0===t.cameraObject._ortho||t.camera.projection&&\"orthographic\"===t.camera.projection.type||!1,T={eye:t.camera.eye||[2,0,0],center:t.camera.center||[0,0,0],up:t.camera.up||[0,1,0],zoomMin:t.camera.zoomMax||.1,zoomMax:t.camera.zoomMin||100,mode:t.camera.mode||\"turntable\",_ortho:w},k=t.axes||{},A=i(r,k);A.enable=!k.disable;var M=t.spikes||{},S=o(r,M),E=[],C=[],L=[],I=[],P=!0,z=!0,O={view:null,projection:new Array(16),model:new Array(16),_ortho:!1},D=(z=!0,[r.drawingBufferWidth,r.drawingBufferHeight]),R=t.cameraObject||n(e,T),F={gl:r,contextLost:!1,pixelRatio:t.pixelRatio||1,canvas:e,selection:x,camera:R,axes:A,axesPixels:null,spikes:S,bounds:v,objects:E,shape:D,aspect:t.aspectRatio||[1,1,1],pickRadius:t.pickRadius||10,zNear:t.zNear||.01,zFar:t.zFar||1e3,fovy:t.fovy||Math.PI/4,clearColor:t.clearColor||[0,0,0,0],autoResize:y(t.autoResize),autoBounds:y(t.autoBounds),autoScale:!!t.autoScale,autoCenter:y(t.autoCenter),clipToBounds:y(t.clipToBounds),snapToData:!!t.snapToData,onselect:t.onselect||null,onrender:t.onrender||null,onclick:t.onclick||null,cameraParams:O,oncontextloss:null,mouseListener:null,_stopped:!1,getAspectratio:function(){return{x:this.aspect[0],y:this.aspect[1],z:this.aspect[2]}},setAspectratio:function(t){this.aspect[0]=t.x,this.aspect[1]=t.y,this.aspect[2]=t.z,z=!0},setBounds:function(t,e){this.bounds[0][t]=e.min,this.bounds[1][t]=e.max},setClearColor:function(t){this.clearColor=t},clearRGBA:function(){this.gl.clearColor(this.clearColor[0],this.clearColor[1],this.clearColor[2],this.clearColor[3]),this.gl.clear(this.gl.COLOR_BUFFER_BIT|this.gl.DEPTH_BUFFER_BIT)}},B=[r.drawingBufferWidth/F.pixelRatio|0,r.drawingBufferHeight/F.pixelRatio|0];function N(){if(!F._stopped&&F.autoResize){var t=e.parentNode,r=1,n=1;t&&t!==document.body?(r=t.clientWidth,n=t.clientHeight):(r=window.innerWidth,n=window.innerHeight);var i=0|Math.ceil(r*F.pixelRatio),a=0|Math.ceil(n*F.pixelRatio);if(i!==e.width||a!==e.height){e.width=i,e.height=a;var o=e.style;o.position=o.position||\"absolute\",o.left=\"0px\",o.top=\"0px\",o.width=r+\"px\",o.height=n+\"px\",P=!0}}}function j(){for(var t=E.length,e=I.length,n=0;n<e;++n)L[n]=0;t:for(n=0;n<t;++n){var i=E[n],a=i.pickSlots;if(a){for(var o=0;o<e;++o)if(L[o]+a<255){C[n]=o,i.setPickBase(L[o]+1),L[o]+=a;continue t}var l=s(r,D);C[n]=e,I.push(l),L.push(a),i.setPickBase(1),e+=1}else C[n]=-1}for(;e>0&&0===L[e-1];)L.pop(),I.pop().dispose()}function U(){if(F.contextLost)return!0;r.isContextLost()&&(F.contextLost=!0,F.mouseListener.enabled=!1,F.selection.object=null,F.oncontextloss&&F.oncontextloss())}F.autoResize&&N(),window.addEventListener(\"resize\",N),F.update=function(t){F._stopped||(t=t||{},P=!0,z=!0)},F.add=function(t){F._stopped||(t.axes=A,E.push(t),C.push(-1),P=!0,z=!0,j())},F.remove=function(t){if(!F._stopped){var e=E.indexOf(t);e<0||(E.splice(e,1),C.pop(),P=!0,z=!0,j())}},F.dispose=function(){if(!F._stopped&&(F._stopped=!0,window.removeEventListener(\"resize\",N),e.removeEventListener(\"webglcontextlost\",U),F.mouseListener.enabled=!1,!F.contextLost)){A.dispose(),S.dispose();for(var t=0;t<E.length;++t)E[t].dispose();for(_.dispose(),t=0;t<I.length;++t)I[t].dispose();b.dispose(),r=null,A=null,S=null,E=[]}},F._mouseRotating=!1,F._prevButtons=0,F.enableMouseListeners=function(){F.mouseListener=u(e,(function(t,e,r){if(!F._stopped){var n=I.length,i=E.length,a=x.object;x.distance=1/0,x.mouse[0]=e,x.mouse[1]=r,x.object=null,x.screen=null,x.dataCoordinate=x.dataPosition=null;var o=!1;if(t&&F._prevButtons)F._mouseRotating=!0;else{F._mouseRotating&&(z=!0),F._mouseRotating=!1;for(var s=0;s<n;++s){var l=I[s].query(e,B[1]-r-1,F.pickRadius);if(l){if(l.distance>x.distance)continue;for(var c=0;c<i;++c){var u=E[c];if(C[c]===s){var h=u.pick(l);h&&(x.buttons=t,x.screen=l.coord,x.distance=l.distance,x.object=u,x.index=h.distance,x.dataPosition=h.position,x.dataCoordinate=h.dataCoordinate,x.data=h,o=!0)}}}}}a&&a!==x.object&&(a.highlight&&a.highlight(null),P=!0),x.object&&(x.object.highlight&&x.object.highlight(x.data),P=!0),(o=o||x.object!==a)&&F.onselect&&F.onselect(x),1&t&&!(1&F._prevButtons)&&F.onclick&&F.onclick(x),F._prevButtons=t}}))},e.addEventListener(\"webglcontextlost\",U);var V=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],q=[V[0].slice(),V[1].slice()];function H(){if(!U()){N();var t=F.camera.tick();O.view=F.camera.matrix,P=P||t,z=z||t,A.pixelRatio=F.pixelRatio,S.pixelRatio=F.pixelRatio;var e=E.length,n=V[0],i=V[1];n[0]=n[1]=n[2]=1/0,i[0]=i[1]=i[2]=-1/0;for(var o=0;o<e;++o){(L=E[o]).pixelRatio=F.pixelRatio,L.axes=F.axes,P=P||!!L.dirty,z=z||!!L.dirty;var s=L.bounds;if(s)for(var l=s[0],u=s[1],p=0;p<3;++p)n[p]=Math.min(n[p],l[p]),i[p]=Math.max(i[p],u[p])}var d=F.bounds;if(F.autoBounds)for(p=0;p<3;++p){if(i[p]<n[p])n[p]=-1,i[p]=1;else{n[p]===i[p]&&(n[p]-=1,i[p]+=1);var m=.05*(i[p]-n[p]);n[p]=n[p]-m,i[p]=i[p]+m}d[0][p]=n[p],d[1][p]=i[p]}var y=!1;for(p=0;p<3;++p)y=y||q[0][p]!==d[0][p]||q[1][p]!==d[1][p],q[0][p]=d[0][p],q[1][p]=d[1][p];if(z=z||y,P=P||y){if(y){var v=[0,0,0];for(o=0;o<3;++o)v[o]=g((d[1][o]-d[0][o])/10);A.autoTicks?A.update({bounds:d,tickSpacing:v}):A.update({bounds:d})}var T=r.drawingBufferWidth,k=r.drawingBufferHeight;for(D[0]=T,D[1]=k,B[0]=0|Math.max(T/F.pixelRatio,1),B[1]=0|Math.max(k/F.pixelRatio,1),function(t,e){var r=t.bounds,n=t.cameraParams,i=n.projection,a=n.model,o=t.gl.drawingBufferWidth,s=t.gl.drawingBufferHeight,l=t.zNear,c=t.zFar,u=t.fovy,p=o/s;e?(f(i,-p,p,-1,1,l,c),n._ortho=!0):(h(i,u,p,l,c),n._ortho=!1);for(var d=0;d<16;++d)a[d]=0;a[15]=1;var m=0;for(d=0;d<3;++d)m=Math.max(m,r[1][d]-r[0][d]);for(d=0;d<3;++d)t.autoScale?a[5*d]=t.aspect[d]/(r[1][d]-r[0][d]):a[5*d]=1/m,t.autoCenter&&(a[12+d]=.5*-a[5*d]*(r[0][d]+r[1][d]))}(F,w),o=0;o<e;++o)(L=E[o]).axesBounds=d,F.clipToBounds&&(L.clipBounds=d);x.object&&(F.snapToData?S.position=x.dataCoordinate:S.position=x.dataPosition,S.bounds=d),z&&(z=!1,function(){if(!U()){r.colorMask(!0,!0,!0,!0),r.depthMask(!0),r.disable(r.BLEND),r.enable(r.DEPTH_TEST),r.depthFunc(r.LEQUAL);for(var t=E.length,e=I.length,n=0;n<e;++n){var i=I[n];i.shape=B,i.begin();for(var a=0;a<t;++a)if(C[a]===n){var o=E[a];o.drawPick&&(o.pixelRatio=1,o.drawPick(O))}i.end()}}}()),F.axesPixels=a(F.axes,O,T,k),F.onrender&&F.onrender(),r.bindFramebuffer(r.FRAMEBUFFER,null),r.viewport(0,0,T,k),F.clearRGBA(),r.depthMask(!0),r.colorMask(!0,!0,!0,!0),r.enable(r.DEPTH_TEST),r.depthFunc(r.LEQUAL),r.disable(r.BLEND),r.disable(r.CULL_FACE);var M=!1;for(A.enable&&(M=M||A.isTransparent(),A.draw(O)),S.axes=A,x.object&&S.draw(O),r.disable(r.CULL_FACE),o=0;o<e;++o)(L=E[o]).axes=A,L.pixelRatio=F.pixelRatio,L.isOpaque&&L.isOpaque()&&L.draw(O),L.isTransparent&&L.isTransparent()&&(M=!0);if(M){for(_.shape=D,_.bind(),r.clear(r.DEPTH_BUFFER_BIT),r.colorMask(!1,!1,!1,!1),r.depthMask(!0),r.depthFunc(r.LESS),A.enable&&A.isTransparent()&&A.drawTransparent(O),o=0;o<e;++o)(L=E[o]).isOpaque&&L.isOpaque()&&L.draw(O);for(r.enable(r.BLEND),r.blendEquation(r.FUNC_ADD),r.blendFunc(r.ONE,r.ONE_MINUS_SRC_ALPHA),r.colorMask(!0,!0,!0,!0),r.depthMask(!1),r.clearColor(0,0,0,0),r.clear(r.COLOR_BUFFER_BIT),A.isTransparent()&&A.drawTransparent(O),o=0;o<e;++o){var L;(L=E[o]).isTransparent&&L.isTransparent()&&L.drawTransparent(O)}r.bindFramebuffer(r.FRAMEBUFFER,null),r.blendFunc(r.ONE,r.ONE_MINUS_SRC_ALPHA),r.disable(r.DEPTH_TEST),b.bind(),_.color[0].bind(0),b.uniforms.accumBuffer=0,c(r),r.disable(r.BLEND)}for(P=!1,o=0;o<e;++o)E[o].dirty=!1}}}return F.enableMouseListeners(),function t(){F._stopped||F.contextLost||(H(),requestAnimationFrame(t))}(),F.redraw=function(){F._stopped||(P=!0,H())},F},createCamera:n}},6640:function(t,e,r){var n=r(3236);e.pointVertex=n([\"precision mediump float;\\n#define GLSLIFY 1\\n\\nattribute vec2 position;\\n\\nuniform mat3 matrix;\\nuniform float pointSize;\\nuniform float pointCloud;\\n\\nhighp float rand(vec2 co) {\\n highp float a = 12.9898;\\n highp float b = 78.233;\\n highp float c = 43758.5453;\\n highp float d = dot(co.xy, vec2(a, b));\\n highp float e = mod(d, 3.14);\\n return fract(sin(e) * c);\\n}\\n\\nvoid main() {\\n vec3 hgPosition = matrix * vec3(position, 1);\\n gl_Position = vec4(hgPosition.xy, 0, hgPosition.z);\\n // if we don't jitter the point size a bit, overall point cloud\\n // saturation 'jumps' on zooming, which is disturbing and confusing\\n gl_PointSize = pointSize * ((19.5 + rand(position)) / 20.0);\\n if(pointCloud != 0.0) { // pointCloud is truthy\\n // get the same square surface as circle would be\\n gl_PointSize *= 0.886;\\n }\\n}\"]),e.pointFragment=n([\"precision mediump float;\\n#define GLSLIFY 1\\n\\nuniform vec4 color, borderColor;\\nuniform float centerFraction;\\nuniform float pointCloud;\\n\\nvoid main() {\\n float radius;\\n vec4 baseColor;\\n if(pointCloud != 0.0) { // pointCloud is truthy\\n if(centerFraction == 1.0) {\\n gl_FragColor = color;\\n } else {\\n gl_FragColor = mix(borderColor, color, centerFraction);\\n }\\n } else {\\n radius = length(2.0 * gl_PointCoord.xy - 1.0);\\n if(radius > 1.0) {\\n discard;\\n }\\n baseColor = mix(borderColor, color, step(radius, centerFraction));\\n gl_FragColor = vec4(baseColor.rgb * baseColor.a, baseColor.a);\\n }\\n}\\n\"]),e.pickVertex=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\"]),e.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\"])},4696:function(t,e,r){\"use strict\";var n=r(9405),i=r(2762),a=r(1888),o=r(6640);function s(t,e,r,n,i){this.plot=t,this.offsetBuffer=e,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}t.exports=function(t,e){var r=t.gl,a=new s(t,i(r),i(r),n(r,o.pointVertex,o.pointFragment),n(r,o.pickVertex,o.pickFragment));return a.update(e),t.addObject(a),a};var l,c,u=s.prototype;u.dispose=function(){this.shader.dispose(),this.pickShader.dispose(),this.offsetBuffer.dispose(),this.pickBuffer.dispose(),this.plot.removeObject(this)},u.update=function(t){var e;function r(e,r){return e in t?t[e]:r}t=t||{},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=t.positions.length>>>1,i=t.positions instanceof Float32Array,o=t.idToIndex instanceof Int32Array&&t.idToIndex.length>=n,s=t.positions,l=i?s:a.mallocFloat32(s.length),c=o?t.idToIndex:a.mallocInt32(n);if(i||l.set(s),!o)for(l.set(s),e=0;e<n;e++)c[e]=e;this.points=s,this.offsetBuffer.update(l),this.pickBuffer.update(c),i||a.free(l),o||a.free(c),this.pointCount=n,this.pickOffset=0},u.unifiedDraw=(l=[1,0,0,0,1,0,0,0,1],c=[0,0,0,0],function(t){var e=void 0!==t,r=e?this.pickShader:this.shader,n=this.plot.gl,i=this.plot.dataBox;if(0===this.pointCount)return t;var a=i[2]-i[0],o=i[3]-i[1],s=function(t,e){var r,n=0,i=t.length>>>1;for(r=0;r<i;r++){var a=t[2*r],o=t[2*r+1];a>=e[0]&&a<=e[2]&&o>=e[1]&&o<=e[3]&&n++}return n}(this.points,i),u=this.plot.pickPixelRatio*Math.max(Math.min(this.sizeMinCap,this.sizeMin),Math.min(this.sizeMax,this.sizeMax/Math.pow(s,.33333)));l[0]=2/a,l[4]=2/o,l[6]=-2*i[0]/a-1,l[7]=-2*i[1]/o-1,this.offsetBuffer.bind(),r.bind(),r.attributes.position.pointer(),r.uniforms.matrix=l,r.uniforms.color=this.color,r.uniforms.borderColor=this.borderColor,r.uniforms.pointCloud=u<5,r.uniforms.pointSize=u,r.uniforms.centerFraction=Math.min(1,Math.max(0,Math.sqrt(1-this.areaRatio))),e&&(c[0]=255&t,c[1]=t>>8&255,c[2]=t>>16&255,c[3]=t>>24&255,this.pickBuffer.bind(),r.attributes.pickId.pointer(n.UNSIGNED_BYTE),r.uniforms.pickOffset=c,this.pickOffset=t);var h=n.getParameter(n.BLEND),f=n.getParameter(n.DITHER);return h&&!this.blend&&n.disable(n.BLEND),f&&n.disable(n.DITHER),n.drawArrays(n.POINTS,0,this.pointCount),h&&!this.blend&&n.enable(n.BLEND),f&&n.enable(n.DITHER),t+this.pointCount}),u.draw=u.unifiedDraw,u.drawPick=u.unifiedDraw,u.pick=function(t,e,r){var n=this.pickOffset,i=this.pointCount;if(r<n||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]]}}},783:function(t){t.exports=function(t,e,r,n){var i,a,o,s,l,c=e[0],u=e[1],h=e[2],f=e[3],p=r[0],d=r[1],m=r[2],g=r[3];return(a=c*p+u*d+h*m+f*g)<0&&(a=-a,p=-p,d=-d,m=-m,g=-g),1-a>1e-6?(i=Math.acos(a),o=Math.sin(i),s=Math.sin((1-n)*i)/o,l=Math.sin(n*i)/o):(s=1-n,l=n),t[0]=s*c+l*p,t[1]=s*u+l*d,t[2]=s*h+l*m,t[3]=s*f+l*g,t}},5964:function(t){\"use strict\";t.exports=function(t){return t||0===t?t.toString():\"\"}},9366:function(t,e,r){\"use strict\";var n=r(4359);t.exports=function(t,e,r){var a=[e.style,e.weight,e.variant,e.family].join(\"_\"),o=i[a];if(o||(o=i[a]={}),t in o)return o[t];var s={textAlign:\"center\",textBaseline:\"middle\",lineHeight:1,font:e.family,fontStyle:e.style,fontWeight:e.weight,fontVariant:e.variant,lineSpacing:1.25,styletags:{breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},triangles:!0},l=n(t,s);s.triangles=!1;var c,u,h=n(t,s);if(r&&1!==r){for(c=0;c<l.positions.length;++c)for(u=0;u<l.positions[c].length;++u)l.positions[c][u]/=r;for(c=0;c<h.positions.length;++c)for(u=0;u<h.positions[c].length;++u)h.positions[c][u]/=r}var f=[[1/0,1/0],[-1/0,-1/0]],p=h.positions.length;for(c=0;c<p;++c){var d=h.positions[c];for(u=0;u<2;++u)f[0][u]=Math.min(f[0][u],d[u]),f[1][u]=Math.max(f[1][u],d[u])}return o[t]=[l,h,f]};var i={}},1283:function(t,e,r){var n=r(9405),i=r(3236),a=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 vec4 highlightId;\\nuniform float highlightScale;\\nuniform mat4 model, view, projection;\\nuniform vec3 clipBounds[2];\\n\\nvarying vec4 interpColor;\\nvarying vec4 pickId;\\nvarying vec3 dataCoordinate;\\n\\nvoid main() {\\n if (outOfRange(clipBounds[0], clipBounds[1], position)) {\\n\\n gl_Position = vec4(0,0,0,0);\\n } else {\\n float scale = 1.0;\\n if(distance(highlightId, id) < 0.0001) {\\n scale = highlightScale;\\n }\\n\\n vec4 worldPosition = model * vec4(position, 1);\\n vec4 viewPosition = view * worldPosition;\\n viewPosition = viewPosition / viewPosition.w;\\n vec4 clipPosition = projection * (viewPosition + scale * vec4(glyph.x, -glyph.y, 0, 0));\\n\\n gl_Position = clipPosition;\\n interpColor = color;\\n pickId = id;\\n dataCoordinate = position;\\n }\\n}\"]),o=i([\"precision highp float;\\n#define GLSLIFY 1\\n\\nbool outOfRange(float a, float b, float p) {\\n return ((p > max(a, b)) || \\n (p < min(a, b)));\\n}\\n\\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\\n return (outOfRange(a.x, b.x, p.x) ||\\n outOfRange(a.y, b.y, p.y));\\n}\\n\\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\\n return (outOfRange(a.x, b.x, p.x) ||\\n outOfRange(a.y, b.y, p.y) ||\\n outOfRange(a.z, b.z, p.z));\\n}\\n\\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\\n return outOfRange(a.xyz, b.xyz, p.xyz);\\n}\\n\\nattribute vec3 position;\\nattribute vec4 color;\\nattribute vec2 glyph;\\nattribute vec4 id;\\n\\nuniform mat4 model, view, projection;\\nuniform vec2 screenSize;\\nuniform vec3 clipBounds[2];\\nuniform float highlightScale, pixelRatio;\\nuniform vec4 highlightId;\\n\\nvarying vec4 interpColor;\\nvarying vec4 pickId;\\nvarying vec3 dataCoordinate;\\n\\nvoid main() {\\n if (outOfRange(clipBounds[0], clipBounds[1], position)) {\\n\\n gl_Position = vec4(0,0,0,0);\\n } else {\\n float scale = pixelRatio;\\n if(distance(highlightId.bgr, id.bgr) < 0.001) {\\n scale *= highlightScale;\\n }\\n\\n vec4 worldPosition = model * vec4(position, 1.0);\\n vec4 viewPosition = view * worldPosition;\\n vec4 clipPosition = projection * viewPosition;\\n clipPosition /= clipPosition.w;\\n\\n gl_Position = clipPosition + vec4(screenSize * scale * vec2(glyph.x, -glyph.y), 0.0, 0.0);\\n interpColor = color;\\n pickId = id;\\n dataCoordinate = position;\\n }\\n}\"]),s=i([\"precision highp float;\\n#define GLSLIFY 1\\n\\nbool outOfRange(float a, float b, float p) {\\n return ((p > max(a, b)) || \\n (p < min(a, b)));\\n}\\n\\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\\n return (outOfRange(a.x, b.x, p.x) ||\\n outOfRange(a.y, b.y, p.y));\\n}\\n\\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\\n return (outOfRange(a.x, b.x, p.x) ||\\n outOfRange(a.y, b.y, p.y) ||\\n outOfRange(a.z, b.z, p.z));\\n}\\n\\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\\n return outOfRange(a.xyz, b.xyz, p.xyz);\\n}\\n\\nattribute vec3 position;\\nattribute vec4 color;\\nattribute vec2 glyph;\\nattribute vec4 id;\\n\\nuniform float highlightScale;\\nuniform vec4 highlightId;\\nuniform vec3 axes[2];\\nuniform mat4 model, view, projection;\\nuniform vec2 screenSize;\\nuniform vec3 clipBounds[2];\\nuniform float scale, pixelRatio;\\n\\nvarying vec4 interpColor;\\nvarying vec4 pickId;\\nvarying vec3 dataCoordinate;\\n\\nvoid main() {\\n if (outOfRange(clipBounds[0], clipBounds[1], position)) {\\n\\n gl_Position = vec4(0,0,0,0);\\n } else {\\n float lscale = pixelRatio * scale;\\n if(distance(highlightId, id) < 0.0001) {\\n lscale *= highlightScale;\\n }\\n\\n vec4 clipCenter = projection * (view * (model * vec4(position, 1)));\\n vec3 dataPosition = position + 0.5*lscale*(axes[0] * glyph.x + axes[1] * glyph.y) * clipCenter.w * screenSize.y;\\n vec4 clipPosition = projection * (view * (model * vec4(dataPosition, 1)));\\n\\n gl_Position = clipPosition;\\n interpColor = color;\\n pickId = id;\\n dataCoordinate = dataPosition;\\n }\\n}\\n\"]),l=i([\"precision highp float;\\n#define GLSLIFY 1\\n\\nbool outOfRange(float a, float b, float p) {\\n return ((p > max(a, b)) || \\n (p < min(a, b)));\\n}\\n\\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\\n return (outOfRange(a.x, b.x, p.x) ||\\n outOfRange(a.y, b.y, p.y));\\n}\\n\\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\\n return (outOfRange(a.x, b.x, p.x) ||\\n outOfRange(a.y, b.y, p.y) ||\\n outOfRange(a.z, b.z, p.z));\\n}\\n\\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\\n return outOfRange(a.xyz, b.xyz, p.xyz);\\n}\\n\\nuniform vec3 fragClipBounds[2];\\nuniform float opacity;\\n\\nvarying vec4 interpColor;\\nvarying vec3 dataCoordinate;\\n\\nvoid main() {\\n if (\\n outOfRange(fragClipBounds[0], fragClipBounds[1], dataCoordinate) ||\\n interpColor.a * opacity == 0.\\n ) discard;\\n gl_FragColor = interpColor * opacity;\\n}\\n\"]),c=i([\"precision highp float;\\n#define GLSLIFY 1\\n\\nbool outOfRange(float a, float b, float p) {\\n return ((p > max(a, b)) || \\n (p < min(a, b)));\\n}\\n\\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\\n return (outOfRange(a.x, b.x, p.x) ||\\n outOfRange(a.y, b.y, p.y));\\n}\\n\\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\\n return (outOfRange(a.x, b.x, p.x) ||\\n outOfRange(a.y, b.y, p.y) ||\\n outOfRange(a.z, b.z, p.z));\\n}\\n\\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\\n return outOfRange(a.xyz, b.xyz, p.xyz);\\n}\\n\\nuniform vec3 fragClipBounds[2];\\nuniform float pickGroup;\\n\\nvarying vec4 pickId;\\nvarying vec3 dataCoordinate;\\n\\nvoid main() {\\n if (outOfRange(fragClipBounds[0], fragClipBounds[1], dataCoordinate)) discard;\\n\\n gl_FragColor = vec4(pickGroup, pickId.bgr);\\n}\"]),u=[{name:\"position\",type:\"vec3\"},{name:\"color\",type:\"vec4\"},{name:\"glyph\",type:\"vec2\"},{name:\"id\",type:\"vec4\"}],h={vertex:a,fragment:l,attributes:u},f={vertex:o,fragment:l,attributes:u},p={vertex:s,fragment:l,attributes:u},d={vertex:a,fragment:c,attributes:u},m={vertex:o,fragment:c,attributes:u},g={vertex:s,fragment:c,attributes:u};function y(t,e){var r=n(t,e),i=r.attributes;return i.position.location=0,i.color.location=1,i.glyph.location=2,i.id.location=3,r}e.createPerspective=function(t){return y(t,h)},e.createOrtho=function(t){return y(t,f)},e.createProject=function(t){return y(t,p)},e.createPickPerspective=function(t){return y(t,d)},e.createPickOrtho=function(t){return y(t,m)},e.createPickProject=function(t){return y(t,g)}},8418:function(t,e,r){\"use strict\";var n=r(5219),i=r(2762),a=r(8116),o=r(1888),s=r(6760),l=r(1283),c=r(9366),u=r(5964),h=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],f=ArrayBuffer,p=DataView;function d(t){return Array.isArray(t)||function(t){return f.isView(t)&&!(t instanceof p)}(t)}function m(t,e){var r=t[0],n=t[1],i=t[2],a=t[3];return t[0]=e[0]*r+e[4]*n+e[8]*i+e[12]*a,t[1]=e[1]*r+e[5]*n+e[9]*i+e[13]*a,t[2]=e[2]*r+e[6]*n+e[10]*i+e[14]*a,t[3]=e[3]*r+e[7]*n+e[11]*i+e[15]*a,t}function g(t,e,r,n){return m(n,n),m(n,n),m(n,n)}function y(t,e){this.index=t,this.dataCoordinate=this.position=e}function v(t){return!0===t||t>1?1:t}function x(t,e,r,n,i,a,o,s,l,c,u,h){this.gl=t,this.pixelRatio=1,this.shader=e,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=c,this.pickOrthoShader=u,this.pickProjectShader=h,this.points=[],this._selectResult=new y(0,[0,0,0]),this.useOrtho=!0,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.axesProject=[!0,!0,!0],this.axesBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.highlightId=[1,1,1,1],this.highlightScale=2,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.dirty=!0}t.exports=function(t){var e=t.gl,r=l.createPerspective(e),n=l.createOrtho(e),o=l.createProject(e),s=l.createPickPerspective(e),c=l.createPickOrtho(e),u=l.createPickProject(e),h=i(e),f=i(e),p=i(e),d=i(e),m=new x(e,r,n,o,h,f,p,d,a(e,[{buffer:h,size:3,type:e.FLOAT},{buffer:f,size:4,type:e.FLOAT},{buffer:p,size:2,type:e.FLOAT},{buffer:d,size:4,type:e.UNSIGNED_BYTE,normalized:!0}]),s,c,u);return m.update(t),m};var _=x.prototype;_.pickSlots=1,_.setPickBase=function(t){this.pickId=t},_.isTransparent=function(){if(this.hasAlpha)return!0;for(var t=0;t<3;++t)if(this.axesProject[t]&&this.projectHasAlpha)return!0;return!1},_.isOpaque=function(){if(!this.hasAlpha)return!0;for(var t=0;t<3;++t)if(this.axesProject[t]&&!this.projectHasAlpha)return!0;return!1};var b=[0,0],w=[0,0,0],T=[0,0,0],k=[0,0,0,1],A=[0,0,0,1],M=h.slice(),S=[0,0,0],E=[[0,0,0],[0,0,0]];function C(t){return t[0]=t[1]=t[2]=0,t}function L(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=1,t}function I(t,e,r,n){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[r]=n,t}var P=[[-1e8,-1e8,-1e8],[1e8,1e8,1e8]];function z(t,e,r,n,i,a,o){var l=r.gl;if((a===r.projectHasAlpha||o)&&function(t,e,r,n){var i,a=e.axesProject,o=e.gl,l=t.uniforms,c=r.model||h,u=r.view||h,f=r.projection||h,p=e.axesBounds,d=function(t){for(var e=E,r=0;r<2;++r)for(var n=0;n<3;++n)e[r][n]=Math.max(Math.min(t[r][n],1e8),-1e8);return e}(e.clipBounds);i=e.axes&&e.axes.lastCubeProps?e.axes.lastCubeProps.axis:[1,1,1],b[0]=2/o.drawingBufferWidth,b[1]=2/o.drawingBufferHeight,t.bind(),l.view=u,l.projection=f,l.screenSize=b,l.highlightId=e.highlightId,l.highlightScale=e.highlightScale,l.clipBounds=d,l.pickGroup=e.pickId/255,l.pixelRatio=n;for(var m=0;m<3;++m)if(a[m]){l.scale=e.projectScale[m],l.opacity=e.projectOpacity[m];for(var y=M,v=0;v<16;++v)y[v]=0;for(v=0;v<4;++v)y[5*v]=1;y[5*m]=0,i[m]<0?y[12+m]=p[0][m]:y[12+m]=p[1][m],s(y,c,y),l.model=y;var x=(m+1)%3,_=(m+2)%3,P=C(w),z=C(T);P[x]=1,z[_]=1;var O=g(0,0,0,L(k,P)),D=g(0,0,0,L(A,z));if(Math.abs(O[1])>Math.abs(D[1])){var R=O;O=D,D=R,R=P,P=z,z=R;var F=x;x=_,_=F}O[0]<0&&(P[x]=-1),D[1]>0&&(z[_]=-1);var B=0,N=0;for(v=0;v<4;++v)B+=Math.pow(c[4*x+v],2),N+=Math.pow(c[4*_+v],2);P[x]/=Math.sqrt(B),z[_]/=Math.sqrt(N),l.axes[0]=P,l.axes[1]=z,l.fragClipBounds[0]=I(S,d[0],m,-1e8),l.fragClipBounds[1]=I(S,d[1],m,1e8),e.vao.bind(),e.vao.draw(o.TRIANGLES,e.vertexCount),e.lineWidth>0&&(o.lineWidth(e.lineWidth*n),e.vao.draw(o.LINES,e.lineVertexCount,e.vertexCount)),e.vao.unbind()}}(e,r,n,i),a===r.hasAlpha||o){t.bind();var c=t.uniforms;c.model=n.model||h,c.view=n.view||h,c.projection=n.projection||h,b[0]=2/l.drawingBufferWidth,b[1]=2/l.drawingBufferHeight,c.screenSize=b,c.highlightId=r.highlightId,c.highlightScale=r.highlightScale,c.fragClipBounds=P,c.clipBounds=r.axes.bounds,c.opacity=r.opacity,c.pickGroup=r.pickId/255,c.pixelRatio=i,r.vao.bind(),r.vao.draw(l.TRIANGLES,r.vertexCount),r.lineWidth>0&&(l.lineWidth(r.lineWidth*i),r.vao.draw(l.LINES,r.lineVertexCount,r.vertexCount)),r.vao.unbind()}}function O(t,e,r,i){var a;a=d(t)?e<t.length?t[e]:void 0:t,a=u(a);var o=!0;n(a)&&(a=\"▼\",o=!1),r||(r={});var s=r.family;d(s)&&(s=s[e]),s||(s=\"normal\");var l=r.weight;d(l)&&(l=l[e]),l||(l=\"normal\");var h=r.style;d(h)&&(h=h[e]),h||(h=\"normal\");var f=r.variant;d(f)&&(f=f[e]),f||(f=\"normal\");var p=c(a,{family:s,weight:l,style:h,variant:f},i);return{mesh:(p=c(a,r,i))[0],lines:p[1],bounds:p[2],visible:o}}_.draw=function(t){z(this.useOrtho?this.orthoShader:this.shader,this.projectShader,this,t,this.pixelRatio,!1,!1)},_.drawTransparent=function(t){z(this.useOrtho?this.orthoShader:this.shader,this.projectShader,this,t,this.pixelRatio,!0,!1)},_.drawPick=function(t){z(this.useOrtho?this.pickOrthoShader:this.pickPerspectiveShader,this.pickProjectShader,this,t,1,!0,!0)},_.pick=function(t){if(!t)return null;if(t.id!==this.pickId)return null;var e=t.value[2]+(t.value[1]<<8)+(t.value[0]<<16);if(e>=this.pointCount||e<0)return null;var r=this.points[e],n=this._selectResult;n.index=e;for(var i=0;i<3;++i)n.position[i]=n.dataCoordinate[i]=r[i];return n},_.highlight=function(t){if(t){var e=t.index,r=255&e,n=e>>8&255,i=e>>16&255;this.highlightId=[r/255,n/255,i/255,0]}else this.highlightId=[1,1,1,1]},_.update=function(t){if(\"perspective\"in(t=t||{})&&(this.useOrtho=!t.perspective),\"orthographic\"in t&&(this.useOrtho=!!t.orthographic),\"lineWidth\"in t&&(this.lineWidth=t.lineWidth),\"project\"in t)if(d(t.project))this.axesProject=t.project;else{var e=!!t.project;this.axesProject=[e,e,e]}if(\"projectScale\"in t)if(d(t.projectScale))this.projectScale=t.projectScale.slice();else{var r=+t.projectScale;this.projectScale=[r,r,r]}if(this.projectHasAlpha=!1,\"projectOpacity\"in t){d(t.projectOpacity)?this.projectOpacity=t.projectOpacity.slice():(r=+t.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 t&&(this.opacity=v(t.opacity),this.opacity<1&&(this.hasAlpha=!0)),this.dirty=!0;var i,a,s=t.position,l={family:t.font||\"normal\",style:t.fontStyle||\"normal\",weight:t.fontWeight||\"normal\",variant:t.fontVariant||\"normal\"},c=t.alignment||[0,0];if(2===c.length)i=c[0],a=c[1];else for(i=[],a=[],n=0;n<c.length;++n)i[n]=c[n][0],a[n]=c[n][1];var u=[1/0,1/0,1/0],h=[-1/0,-1/0,-1/0],f=t.glyph,p=t.color,m=t.size,g=t.angle,y=t.lineColor,x=-1,_=0,b=0,w=0;if(s.length){w=s.length;t:for(n=0;n<w;++n){for(var T=s[n],k=0;k<3;++k)if(isNaN(T[k])||!isFinite(T[k]))continue t;var A=(j=O(f,n,l,this.pixelRatio)).mesh,M=j.lines,S=j.bounds;_+=3*A.cells.length,b+=2*M.edges.length}}var E=_+b,C=o.mallocFloat(3*E),L=o.mallocFloat(4*E),I=o.mallocFloat(2*E),P=o.mallocUint32(E);if(E>0){var z=0,D=_,R=[0,0,0,1],F=[0,0,0,1],B=d(p)&&d(p[0]),N=d(y)&&d(y[0]);t:for(n=0;n<w;++n){for(x+=1,T=s[n],k=0;k<3;++k){if(isNaN(T[k])||!isFinite(T[k]))continue t;h[k]=Math.max(h[k],T[k]),u[k]=Math.min(u[k],T[k])}A=(j=O(f,n,l,this.pixelRatio)).mesh,M=j.lines,S=j.bounds;var j,U=j.visible;if(U)if(d(p)){if(3===(V=B?n<p.length?p[n]:[0,0,0,0]:p).length){for(k=0;k<3;++k)R[k]=V[k];R[3]=1}else if(4===V.length){for(k=0;k<4;++k)R[k]=V[k];!this.hasAlpha&&V[3]<1&&(this.hasAlpha=!0)}}else R[0]=R[1]=R[2]=0,R[3]=1;else R=[1,1,1,0];if(U)if(d(y)){var V;if(3===(V=N?n<y.length?y[n]:[0,0,0,0]:y).length){for(k=0;k<3;++k)F[k]=V[k];F[k]=1}else if(4===V.length){for(k=0;k<4;++k)F[k]=V[k];!this.hasAlpha&&V[3]<1&&(this.hasAlpha=!0)}}else F[0]=F[1]=F[2]=0,F[3]=1;else F=[1,1,1,0];var q=.5;U?d(m)?q=n<m.length?+m[n]:12:m?q=+m:this.useOrtho&&(q=12):q=0;var H=0;d(g)?H=n<g.length?+g[n]:0:g&&(H=+g);var G=Math.cos(H),Z=Math.sin(H);for(T=s[n],k=0;k<3;++k)h[k]=Math.max(h[k],T[k]),u[k]=Math.min(u[k],T[k]);var W=i,Y=a;W=0,d(i)?W=n<i.length?i[n]:0:i&&(W=i),Y=0,d(a)?Y=n<a.length?a[n]:0:a&&(Y=a);var X=[W*=W>0?1-S[0][0]:W<0?1+S[1][0]:1,Y*=Y>0?1-S[0][1]:Y<0?1+S[1][1]:1],$=A.cells||[],J=A.positions||[];for(k=0;k<$.length;++k)for(var K=$[k],Q=0;Q<3;++Q){for(var tt=0;tt<3;++tt)C[3*z+tt]=T[tt];for(tt=0;tt<4;++tt)L[4*z+tt]=R[tt];P[z]=x;var et=J[K[Q]];I[2*z]=q*(G*et[0]-Z*et[1]+X[0]),I[2*z+1]=q*(Z*et[0]+G*et[1]+X[1]),z+=1}for($=M.edges,J=M.positions,k=0;k<$.length;++k)for(K=$[k],Q=0;Q<2;++Q){for(tt=0;tt<3;++tt)C[3*D+tt]=T[tt];for(tt=0;tt<4;++tt)L[4*D+tt]=F[tt];P[D]=x,et=J[K[Q]],I[2*D]=q*(G*et[0]-Z*et[1]+X[0]),I[2*D+1]=q*(Z*et[0]+G*et[1]+X[1]),D+=1}}}this.bounds=[u,h],this.points=s,this.pointCount=s.length,this.vertexCount=_,this.lineVertexCount=b,this.pointBuffer.update(C),this.colorBuffer.update(L),this.glyphBuffer.update(I),this.idBuffer.update(P),o.free(C),o.free(L),o.free(I),o.free(P)},_.dispose=function(){this.shader.dispose(),this.orthoShader.dispose(),this.pickPerspectiveShader.dispose(),this.pickOrthoShader.dispose(),this.vao.dispose(),this.pointBuffer.dispose(),this.colorBuffer.dispose(),this.glyphBuffer.dispose(),this.idBuffer.dispose()}},4298:function(t,e,r){\"use strict\";var n=r(3236);e.boxVertex=n([\"precision mediump float;\\n#define GLSLIFY 1\\n\\nattribute vec2 vertex;\\n\\nuniform vec2 cornerA, cornerB;\\n\\nvoid main() {\\n gl_Position = vec4(mix(cornerA, cornerB, vertex), 0, 1);\\n}\\n\"]),e.boxFragment=n([\"precision mediump float;\\n#define GLSLIFY 1\\n\\nuniform vec4 color;\\n\\nvoid main() {\\n gl_FragColor = color;\\n}\\n\"])},3161:function(t,e,r){\"use strict\";var n=r(9405),i=r(2762),a=r(4298);function o(t,e,r){this.plot=t,this.boxBuffer=e,this.boxShader=r,this.enabled=!0,this.selectBox=[1/0,1/0,-1/0,-1/0],this.borderColor=[0,0,0,1],this.innerFill=!1,this.innerColor=[0,0,0,.25],this.outerFill=!0,this.outerColor=[0,0,0,.5],this.borderWidth=10}t.exports=function(t,e){var r=t.gl,s=new o(t,i(r,[0,0,0,1,1,0,1,1]),n(r,a.boxVertex,a.boxFragment));return s.update(e),t.addOverlay(s),s};var s=o.prototype;s.draw=function(){if(this.enabled){var t=this.plot,e=this.selectBox,r=this.borderWidth,n=(this.innerFill,this.innerColor),i=(this.outerFill,this.outerColor),a=this.borderColor,o=t.box,s=t.screenBox,l=t.dataBox,c=t.viewBox,u=t.pixelRatio,h=(e[0]-l[0])*(c[2]-c[0])/(l[2]-l[0])+c[0],f=(e[1]-l[1])*(c[3]-c[1])/(l[3]-l[1])+c[1],p=(e[2]-l[0])*(c[2]-c[0])/(l[2]-l[0])+c[0],d=(e[3]-l[1])*(c[3]-c[1])/(l[3]-l[1])+c[1];if(h=Math.max(h,c[0]),f=Math.max(f,c[1]),p=Math.min(p,c[2]),d=Math.min(d,c[3]),!(p<h||d<f)){o.bind();var m=s[2]-s[0],g=s[3]-s[1];if(this.outerFill&&(o.drawBox(0,0,m,f,i),o.drawBox(0,f,h,d,i),o.drawBox(0,d,m,g,i),o.drawBox(p,f,m,d,i)),this.innerFill&&o.drawBox(h,f,p,d,n),r>0){var y=r*u;o.drawBox(h-y,f-y,p+y,f+y,a),o.drawBox(h-y,d-y,p+y,d+y,a),o.drawBox(h-y,f-y,h+y,d+y,a),o.drawBox(p-y,f-y,p+y,d+y,a)}}}},s.update=function(t){t=t||{},this.innerFill=!!t.innerFill,this.outerFill=!!t.outerFill,this.innerColor=(t.innerColor||[0,0,0,.5]).slice(),this.outerColor=(t.outerColor||[0,0,0,.5]).slice(),this.borderColor=(t.borderColor||[0,0,0,1]).slice(),this.borderWidth=t.borderWidth||0,this.selectBox=(t.selectBox||this.selectBox).slice()},s.dispose=function(){this.boxBuffer.dispose(),this.boxShader.dispose(),this.plot.removeOverlay(this)}},3589:function(t,e,r){\"use strict\";t.exports=function(t,e){var r=e[0],a=e[1];return new l(t,n(t,r,a,{}),i.mallocUint8(r*a*4))};var n=r(2260),i=r(1888),a=r(9618),o=r(8828).nextPow2;function s(t,e,r,n,i){this.coord=[t,e],this.id=r,this.value=n,this.distance=i}function l(t,e,r){this.gl=t,this.fbo=e,this.buffer=r,this._readTimeout=null;var n=this;this._readCallback=function(){n.gl&&(e.bind(),t.readPixels(0,0,e.shape[0],e.shape[1],t.RGBA,t.UNSIGNED_BYTE,n.buffer),n._readTimeout=null)}}var c=l.prototype;Object.defineProperty(c,\"shape\",{get:function(){return this.gl?this.fbo.shape.slice():[0,0]},set:function(t){if(this.gl){this.fbo.shape=t;var e=this.fbo.shape[0],r=this.fbo.shape[1];if(r*e*4>this.buffer.length){i.free(this.buffer);for(var n=this.buffer=i.mallocUint8(o(r*e*4)),a=0;a<r*e*4;++a)n[a]=255}return t}}}),c.begin=function(){var t=this.gl;this.shape,t&&(this.fbo.bind(),t.clearColor(1,1,1,1),t.clear(t.COLOR_BUFFER_BIT|t.DEPTH_BUFFER_BIT))},c.end=function(){var t=this.gl;t&&(t.bindFramebuffer(t.FRAMEBUFFER,null),this._readTimeout||clearTimeout(this._readTimeout),this._readTimeout=setTimeout(this._readCallback,1))},c.query=function(t,e,r){if(!this.gl)return null;var n=this.fbo.shape.slice();t|=0,e|=0,\"number\"!=typeof r&&(r=1);var i=0|Math.min(Math.max(t-r,0),n[0]),o=0|Math.min(Math.max(t+r,0),n[0]),l=0|Math.min(Math.max(e-r,0),n[1]),c=0|Math.min(Math.max(e+r,0),n[1]);if(o<=i||c<=l)return null;var u=[o-i,c-l],h=a(this.buffer,[u[0],u[1],4],[4,4*n[0],1],4*(i+n[0]*l)),f=function(t,e,r){for(var n=1e8,i=-1,a=-1,o=t.shape[0],s=t.shape[1],l=0;l<o;l++)for(var c=0;c<s;c++){var u=t.get(l,c,0),h=t.get(l,c,1),f=t.get(l,c,2),p=t.get(l,c,3);if(u<255||h<255||f<255||p<255){var d=e-l,m=r-c,g=d*d+m*m;g<n&&(n=g,i=l,a=c)}}return[i,a,n]}(h.hi(u[0],u[1],1),r,r),p=f[0],d=f[1];return p<0||Math.pow(this.radius,2)<f[2]?null:new s(p+i|0,d+l|0,h.get(p,d,0),[h.get(p,d,1),h.get(p,d,2),h.get(p,d,3)],Math.sqrt(f[2]))},c.dispose=function(){this.gl&&(this.fbo.dispose(),i.free(this.buffer),this.gl=null,this._readTimeout&&clearTimeout(this._readTimeout))}},9405:function(t,e,r){\"use strict\";var n=r(3327),i=r(8731),a=r(216),o=r(5091),s=r(2145),l=r(8866);function c(t){this.gl=t,this.gl.lastAttribCount=0,this._vref=this._fref=this._relink=this.vertShader=this.fragShader=this.program=this.attributes=this.uniforms=this.types=null}var u=c.prototype;function h(t,e){return t.name<e.name?-1:1}u.bind=function(){var t;this.program||this._relink();var e=this.gl.getProgramParameter(this.program,this.gl.ACTIVE_ATTRIBUTES),r=this.gl.lastAttribCount;if(e>r)for(t=r;t<e;t++)this.gl.enableVertexAttribArray(t);else if(r>e)for(t=e;t<r;t++)this.gl.disableVertexAttribArray(t);this.gl.lastAttribCount=e,this.gl.useProgram(this.program)},u.dispose=function(){for(var t=this.gl.lastAttribCount,e=0;e<t;e++)this.gl.disableVertexAttribArray(e);this.gl.lastAttribCount=0,this._fref&&this._fref.dispose(),this._vref&&this._vref.dispose(),this.attributes=this.types=this.vertShader=this.fragShader=this.program=this._relink=this._fref=this._vref=null},u.update=function(t,e,r,c){if(!e||1===arguments.length){var u=t;t=u.vertex,e=u.fragment,r=u.uniforms,c=u.attributes}var f=this,p=f.gl,d=f._vref;f._vref=o.shader(p,p.VERTEX_SHADER,t),d&&d.dispose(),f.vertShader=f._vref.shader;var m=this._fref;if(f._fref=o.shader(p,p.FRAGMENT_SHADER,e),m&&m.dispose(),f.fragShader=f._fref.shader,!r||!c){var g=p.createProgram();if(p.attachShader(g,f.fragShader),p.attachShader(g,f.vertShader),p.linkProgram(g),!p.getProgramParameter(g,p.LINK_STATUS)){var y=p.getProgramInfoLog(g);throw new l(y,\"Error linking program:\"+y)}r=r||s.uniforms(p,g),c=c||s.attributes(p,g),p.deleteProgram(g)}(c=c.slice()).sort(h);var v,x=[],_=[],b=[];for(v=0;v<c.length;++v){var w=c[v];if(w.type.indexOf(\"mat\")>=0){for(var T=0|w.type.charAt(w.type.length-1),k=new Array(T),A=0;A<T;++A)k[A]=b.length,_.push(w.name+\"[\"+A+\"]\"),\"number\"==typeof w.location?b.push(w.location+A):Array.isArray(w.location)&&w.location.length===T&&\"number\"==typeof w.location[A]?b.push(0|w.location[A]):b.push(-1);x.push({name:w.name,type:w.type,locations:k})}else x.push({name:w.name,type:w.type,locations:[b.length]}),_.push(w.name),\"number\"==typeof w.location?b.push(0|w.location):b.push(-1)}var M=0;for(v=0;v<b.length;++v)if(b[v]<0){for(;b.indexOf(M)>=0;)M+=1;b[v]=M}var S=new Array(r.length);function E(){f.program=o.program(p,f._vref,f._fref,_,b);for(var t=0;t<r.length;++t)S[t]=p.getUniformLocation(f.program,r[t].name)}E(),f._relink=E,f.types={uniforms:a(r),attributes:a(c)},f.attributes=i(p,f,x,b),Object.defineProperty(f,\"uniforms\",n(p,f,r,S))},t.exports=function(t,e,r,n,i){var a=new c(t);return a.update(e,r,n,i),a}},8866:function(t){function e(t,e,r){this.shortMessage=e||\"\",this.longMessage=r||\"\",this.rawError=t||\"\",this.message=\"gl-shader: \"+(e||t||\"\")+(r?\"\\n\"+r:\"\"),this.stack=(new Error).stack}e.prototype=new Error,e.prototype.name=\"GLError\",e.prototype.constructor=e,t.exports=e},8731:function(t,e,r){\"use strict\";t.exports=function(t,e,r,i){for(var a={},o=0,c=r.length;o<c;++o){var u=r[o],h=u.name,f=u.type,p=u.locations;switch(f){case\"bool\":case\"int\":case\"float\":s(t,e,p[0],i,1,a,h);break;default:if(f.indexOf(\"vec\")>=0){if((d=f.charCodeAt(f.length-1)-48)<2||d>4)throw new n(\"\",\"Invalid data type for attribute \"+h+\": \"+f);s(t,e,p[0],i,d,a,h)}else{if(!(f.indexOf(\"mat\")>=0))throw new n(\"\",\"Unknown data type for attribute \"+h+\": \"+f);var d;if((d=f.charCodeAt(f.length-1)-48)<2||d>4)throw new n(\"\",\"Invalid data type for attribute \"+h+\": \"+f);l(t,e,p,i,d,a,h)}}}return a};var n=r(8866);function i(t,e,r,n,i,a){this._gl=t,this._wrapper=e,this._index=r,this._locations=n,this._dimension=i,this._constFunc=a}var a=i.prototype;a.pointer=function(t,e,r,n){var i=this,a=i._gl,o=i._locations[i._index];a.vertexAttribPointer(o,i._dimension,t||a.FLOAT,!!e,r||0,n||0),a.enableVertexAttribArray(o)},a.set=function(t,e,r,n){return this._constFunc(this._locations[this._index],t,e,r,n)},Object.defineProperty(a,\"location\",{get:function(){return this._locations[this._index]},set:function(t){return t!==this._locations[this._index]&&(this._locations[this._index]=0|t,this._wrapper.program=null),0|t}});var o=[function(t,e,r){return void 0===r.length?t.vertexAttrib1f(e,r):t.vertexAttrib1fv(e,r)},function(t,e,r,n){return void 0===r.length?t.vertexAttrib2f(e,r,n):t.vertexAttrib2fv(e,r)},function(t,e,r,n,i){return void 0===r.length?t.vertexAttrib3f(e,r,n,i):t.vertexAttrib3fv(e,r)},function(t,e,r,n,i,a){return void 0===r.length?t.vertexAttrib4f(e,r,n,i,a):t.vertexAttrib4fv(e,r)}];function s(t,e,r,n,a,s,l){var c=o[a],u=new i(t,e,r,n,a,c);Object.defineProperty(s,l,{set:function(e){return t.disableVertexAttribArray(n[r]),c(t,n[r],e),e},get:function(){return u},enumerable:!0})}function l(t,e,r,n,i,a,o){for(var l=new Array(i),c=new Array(i),u=0;u<i;++u)s(t,e,r[u],n,i,l,u),c[u]=l[u];Object.defineProperty(l,\"location\",{set:function(t){if(Array.isArray(t))for(var e=0;e<i;++e)c[e].location=t[e];else for(e=0;e<i;++e)c[e].location=t+e;return t},get:function(){for(var t=new Array(i),e=0;e<i;++e)t[e]=n[r[e]];return t},enumerable:!0}),l.pointer=function(e,a,o,s){e=e||t.FLOAT,a=!!a,o=o||i*i,s=s||0;for(var l=0;l<i;++l){var c=n[r[l]];t.vertexAttribPointer(c,i,e,a,o,s+l*i),t.enableVertexAttribArray(c)}};var h=new Array(i),f=t[\"vertexAttrib\"+i+\"fv\"];Object.defineProperty(a,o,{set:function(e){for(var a=0;a<i;++a){var o=n[r[a]];if(t.disableVertexAttribArray(o),Array.isArray(e[0]))f.call(t,o,e[a]);else{for(var s=0;s<i;++s)h[s]=e[i*a+s];f.call(t,o,h)}}return e},get:function(){return l},enumerable:!0})}},3327:function(t,e,r){\"use strict\";var n=r(216),i=r(8866);function a(t){return function(){return t}}function o(t,e){for(var r=new Array(t),n=0;n<t;++n)r[n]=e;return r}t.exports=function(t,e,r,s){function l(e){return function(n){for(var a=c(\"\",e),o=0;o<a.length;++o){var l=a[o],u=l[0],h=l[1];if(s[h]){var f=n;if(\"string\"==typeof u&&(0===u.indexOf(\".\")||0===u.indexOf(\"[\"))){var p=u;if(0===u.indexOf(\".\")&&(p=u.slice(1)),p.indexOf(\"]\")===p.length-1){var d=p.indexOf(\"[\"),m=p.slice(0,d),g=p.slice(d+1,p.length-1);f=m?n[m][g]:n[g]}else f=n[p]}var y,v=r[h].type;switch(v){case\"bool\":case\"int\":case\"sampler2D\":case\"samplerCube\":t.uniform1i(s[h],f);break;case\"float\":t.uniform1f(s[h],f);break;default:var x=v.indexOf(\"vec\");if(!(0<=x&&x<=1&&v.length===4+x)){if(0===v.indexOf(\"mat\")&&4===v.length){if((y=v.charCodeAt(v.length-1)-48)<2||y>4)throw new i(\"\",\"Invalid uniform dimension type for matrix \"+name+\": \"+v);t[\"uniformMatrix\"+y+\"fv\"](s[h],!1,f);break}throw new i(\"\",\"Unknown uniform data type for \"+name+\": \"+v)}if((y=v.charCodeAt(v.length-1)-48)<2||y>4)throw new i(\"\",\"Invalid data type\");switch(v.charAt(0)){case\"b\":case\"i\":t[\"uniform\"+y+\"iv\"](s[h],f);break;case\"v\":t[\"uniform\"+y+\"fv\"](s[h],f);break;default:throw new i(\"\",\"Unrecognized data type for vector \"+name+\": \"+v)}}}}}}function c(t,e){if(\"object\"!=typeof e)return[[t,e]];var r=[];for(var n in e){var i=e[n],a=t;parseInt(n)+\"\"===n?a+=\"[\"+n+\"]\":a+=\".\"+n,\"object\"==typeof i?r.push.apply(r,c(a,i)):r.push([a,i])}return r}function u(t,e,n){if(\"object\"==typeof n){var c=h(n);Object.defineProperty(t,e,{get:a(c),set:l(n),enumerable:!0,configurable:!1})}else s[n]?Object.defineProperty(t,e,{get:(u=n,function(t,e,r){return t.getUniform(e.program,r[u])}),set:l(n),enumerable:!0,configurable:!1}):t[e]=function(t){switch(t){case\"bool\":return!1;case\"int\":case\"sampler2D\":case\"samplerCube\":case\"float\":return 0;default:var e=t.indexOf(\"vec\");if(0<=e&&e<=1&&t.length===4+e){if((r=t.charCodeAt(t.length-1)-48)<2||r>4)throw new i(\"\",\"Invalid data type\");return\"b\"===t.charAt(0)?o(r,!1):o(r,0)}if(0===t.indexOf(\"mat\")&&4===t.length){var r;if((r=t.charCodeAt(t.length-1)-48)<2||r>4)throw new i(\"\",\"Invalid uniform dimension type for matrix \"+name+\": \"+t);return o(r*r,0)}throw new i(\"\",\"Unknown uniform data type for \"+name+\": \"+t)}}(r[n].type);var u}function h(t){var e;if(Array.isArray(t)){e=new Array(t.length);for(var r=0;r<t.length;++r)u(e,r,t[r])}else for(var n in e={},t)u(e,n,t[n]);return e}var f=n(r,!0);return{get:a(h(f)),set:l(f),enumerable:!0,configurable:!0}}},216:function(t){\"use strict\";t.exports=function(t,e){for(var r={},n=0;n<t.length;++n)for(var i=t[n].name.split(\".\"),a=r,o=0;o<i.length;++o){var s=i[o].split(\"[\");if(s.length>1){s[0]in a||(a[s[0]]=[]),a=a[s[0]];for(var l=1;l<s.length;++l){var c=parseInt(s[l]);l<s.length-1||o<i.length-1?(c in a||(l<s.length-1?a[c]=[]:a[c]={}),a=a[c]):a[c]=e?n:t[n].type}}else o<i.length-1?(s[0]in a||(a[s[0]]={}),a=a[s[0]]):a[s[0]]=e?n:t[n].type}return r}},2145:function(t,e){\"use strict\";e.uniforms=function(t,e){for(var r=t.getProgramParameter(e,t.ACTIVE_UNIFORMS),n=[],a=0;a<r;++a){var o=t.getActiveUniform(e,a);if(o){var s=i(t,o.type);if(o.size>1)for(var l=0;l<o.size;++l)n.push({name:o.name.replace(\"[0]\",\"[\"+l+\"]\"),type:s});else n.push({name:o.name,type:s})}}return n},e.attributes=function(t,e){for(var r=t.getProgramParameter(e,t.ACTIVE_ATTRIBUTES),n=[],a=0;a<r;++a){var o=t.getActiveAttrib(e,a);o&&n.push({name:o.name,type:i(t,o.type)})}return n};var r={FLOAT:\"float\",FLOAT_VEC2:\"vec2\",FLOAT_VEC3:\"vec3\",FLOAT_VEC4:\"vec4\",INT:\"int\",INT_VEC2:\"ivec2\",INT_VEC3:\"ivec3\",INT_VEC4:\"ivec4\",BOOL:\"bool\",BOOL_VEC2:\"bvec2\",BOOL_VEC3:\"bvec3\",BOOL_VEC4:\"bvec4\",FLOAT_MAT2:\"mat2\",FLOAT_MAT3:\"mat3\",FLOAT_MAT4:\"mat4\",SAMPLER_2D:\"sampler2D\",SAMPLER_CUBE:\"samplerCube\"},n=null;function i(t,e){if(!n){var i=Object.keys(r);n={};for(var a=0;a<i.length;++a){var o=i[a];n[t[o]]=r[o]}}return n[e]}},5091:function(t,e,r){\"use strict\";e.shader=function(t,e,r){return u(t).getShaderReference(e,r)},e.program=function(t,e,r,n,i){return u(t).getProgram(e,r,n,i)};var n=r(8866),i=r(2992),a=new(\"undefined\"==typeof WeakMap?r(606):WeakMap),o=0;function s(t,e,r,n,i,a,o){this.id=t,this.src=e,this.type=r,this.shader=n,this.count=a,this.programs=[],this.cache=o}function l(t){this.gl=t,this.shaders=[{},{}],this.programs={}}s.prototype.dispose=function(){if(0==--this.count){for(var t=this.cache,e=t.gl,r=this.programs,n=0,i=r.length;n<i;++n){var a=t.programs[r[n]];a&&(delete t.programs[n],e.deleteProgram(a))}e.deleteShader(this.shader),delete t.shaders[this.type===e.FRAGMENT_SHADER|0][this.src]}};var c=l.prototype;function u(t){var e=a.get(t);return e||(e=new l(t),a.set(t,e)),e}c.getShaderReference=function(t,e){var r=this.gl,a=this.shaders[t===r.FRAGMENT_SHADER|0],l=a[e];if(l&&r.isShader(l.shader))l.count+=1;else{var c=function(t,e,r){var a=t.createShader(e);if(t.shaderSource(a,r),t.compileShader(a),!t.getShaderParameter(a,t.COMPILE_STATUS)){var o=t.getShaderInfoLog(a);try{var s=i(o,r,e)}catch(t){throw console.warn(\"Failed to format compiler error: \"+t),new n(o,\"Error compiling shader:\\n\"+o)}throw new n(o,s.short,s.long)}return a}(r,t,e);l=a[e]=new s(o++,e,t,c,[],1,this)}return l},c.getProgram=function(t,e,r,i){var a=[t.id,e.id,r.join(\":\"),i.join(\":\")].join(\"@\"),o=this.programs[a];return o&&this.gl.isProgram(o)||(this.programs[a]=o=function(t,e,r,i,a){var o=t.createProgram();t.attachShader(o,e),t.attachShader(o,r);for(var s=0;s<i.length;++s)t.bindAttribLocation(o,a[s],i[s]);if(t.linkProgram(o),!t.getProgramParameter(o,t.LINK_STATUS)){var l=t.getProgramInfoLog(o);throw new n(l,\"Error linking program: \"+l)}return o}(this.gl,t.shader,e.shader,r,i),t.programs.push(a),e.programs.push(a)),o}},4098:function(t){\"use strict\";function e(t){this.plot=t,this.enable=[!0,!0,!1,!1],this.width=[1,1,1,1],this.color=[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.center=[1/0,1/0]}t.exports=function(t,r){var n=new e(t);return n.update(r),t.addOverlay(n),n};var r=e.prototype;r.update=function(t){t=t||{},this.enable=(t.enable||[!0,!0,!1,!1]).slice(),this.width=(t.width||[1,1,1,1]).slice(),this.color=(t.color||[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]]).map((function(t){return t.slice()})),this.center=(t.center||[1/0,1/0]).slice(),this.plot.setOverlayDirty()},r.draw=function(){var t=this.enable,e=this.width,r=this.color,n=this.center,i=this.plot,a=i.line,o=i.dataBox,s=i.viewBox;if(a.bind(),o[0]<=n[0]&&n[0]<=o[2]&&o[1]<=n[1]&&n[1]<=o[3]){var l=s[0]+(n[0]-o[0])/(o[2]-o[0])*(s[2]-s[0]),c=s[1]+(n[1]-o[1])/(o[3]-o[1])*(s[3]-s[1]);t[0]&&a.drawLine(l,c,s[0],c,e[0],r[0]),t[1]&&a.drawLine(l,c,l,s[1],e[1],r[1]),t[2]&&a.drawLine(l,c,s[2],c,e[2],r[2]),t[3]&&a.drawLine(l,c,l,s[3],e[3],r[3])}},r.dispose=function(){this.plot.removeOverlay(this)}},1493:function(t,e,r){\"use strict\";var n=r(3236),i=r(9405),a=n([\"precision mediump float;\\n#define GLSLIFY 1\\n\\nattribute vec3 position, color;\\nattribute float weight;\\n\\nuniform mat4 model, view, projection;\\nuniform vec3 coordinates[3];\\nuniform vec4 colors[3];\\nuniform vec2 screenShape;\\nuniform float lineWidth;\\n\\nvarying vec4 fragColor;\\n\\nvoid main() {\\n vec3 vertexPosition = mix(coordinates[0],\\n mix(coordinates[2], coordinates[1], 0.5 * (position + 1.0)), abs(position));\\n\\n vec4 clipPos = projection * (view * (model * vec4(vertexPosition, 1.0)));\\n vec2 clipOffset = (projection * (view * (model * vec4(color, 0.0)))).xy;\\n vec2 delta = weight * clipOffset * screenShape;\\n vec2 lineOffset = normalize(vec2(delta.y, -delta.x)) / screenShape;\\n\\n gl_Position = vec4(clipPos.xy + clipPos.w * 0.5 * lineWidth * lineOffset, clipPos.z, clipPos.w);\\n fragColor = color.x * colors[0] + color.y * colors[1] + color.z * colors[2];\\n}\\n\"]),o=n([\"precision mediump float;\\n#define GLSLIFY 1\\n\\nvarying vec4 fragColor;\\n\\nvoid main() {\\n gl_FragColor = fragColor;\\n}\"]);t.exports=function(t){return i(t,a,o,null,[{name:\"position\",type:\"vec3\"},{name:\"color\",type:\"vec3\"},{name:\"weight\",type:\"float\"}])}},4449:function(t,e,r){\"use strict\";var n=r(2762),i=r(8116),a=r(1493);t.exports=function(t,e){var r=[];function o(t,e,n,i,a,o){var s=[t,e,n,0,0,0,1];s[i+3]=1,s[i]=a,r.push.apply(r,s),s[6]=-1,r.push.apply(r,s),s[i]=o,r.push.apply(r,s),r.push.apply(r,s),s[6]=1,r.push.apply(r,s),s[i]=a,r.push.apply(r,s)}o(0,0,0,0,0,1),o(0,0,0,1,0,1),o(0,0,0,2,0,1),o(1,0,0,1,-1,1),o(1,0,0,2,-1,1),o(0,1,0,0,-1,1),o(0,1,0,2,-1,1),o(0,0,1,0,-1,1),o(0,0,1,1,-1,1);var l=n(t,r),c=i(t,[{type:t.FLOAT,buffer:l,size:3,offset:0,stride:28},{type:t.FLOAT,buffer:l,size:3,offset:12,stride:28},{type:t.FLOAT,buffer:l,size:1,offset:24,stride:28}]),u=a(t);u.attributes.position.location=0,u.attributes.color.location=1,u.attributes.weight.location=2;var h=new s(t,l,c,u);return h.update(e),h};var o=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function s(t,e,r,n){this.gl=t,this.buffer=e,this.vao=r,this.shader=n,this.pixelRatio=1,this.bounds=[[-1e3,-1e3,-1e3],[1e3,1e3,1e3]],this.position=[0,0,0],this.lineWidth=[2,2,2],this.colors=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.enabled=[!0,!0,!0],this.drawSides=[!0,!0,!0],this.axes=null}var l=s.prototype,c=[0,0,0],u=[0,0,0],h=[0,0];l.isTransparent=function(){return!1},l.drawTransparent=function(t){},l.draw=function(t){var e=this.gl,r=this.vao,n=this.shader;r.bind(),n.bind();var i,a=t.model||o,s=t.view||o,l=t.projection||o;this.axes&&(i=this.axes.lastCubeProps.axis);for(var f=c,p=u,d=0;d<3;++d)i&&i[d]<0?(f[d]=this.bounds[0][d],p[d]=this.bounds[1][d]):(f[d]=this.bounds[1][d],p[d]=this.bounds[0][d]);for(h[0]=e.drawingBufferWidth,h[1]=e.drawingBufferHeight,n.uniforms.model=a,n.uniforms.view=s,n.uniforms.projection=l,n.uniforms.coordinates=[this.position,f,p],n.uniforms.colors=this.colors,n.uniforms.screenShape=h,d=0;d<3;++d)n.uniforms.lineWidth=this.lineWidth[d]*this.pixelRatio,this.enabled[d]&&(r.draw(e.TRIANGLES,6,6*d),this.drawSides[d]&&r.draw(e.TRIANGLES,12,18+12*d));r.unbind()},l.update=function(t){t&&(\"bounds\"in t&&(this.bounds=t.bounds),\"position\"in t&&(this.position=t.position),\"lineWidth\"in t&&(this.lineWidth=t.lineWidth),\"colors\"in t&&(this.colors=t.colors),\"enabled\"in t&&(this.enabled=t.enabled),\"drawSides\"in t&&(this.drawSides=t.drawSides))},l.dispose=function(){this.vao.dispose(),this.buffer.dispose(),this.shader.dispose()}},6740:function(t,e,r){var n=r(3236),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 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}\"]);e.meshShader={vertex:i,fragment:a,attributes:[{name:\"position\",type:\"vec4\"},{name:\"color\",type:\"vec4\"},{name:\"uv\",type:\"vec2\"},{name:\"vector\",type:\"vec4\"}]},e.pickShader={vertex:o,fragment:s,attributes:[{name:\"position\",type:\"vec4\"},{name:\"id\",type:\"vec4\"},{name:\"vector\",type:\"vec4\"}]}},7815:function(t,e,r){\"use strict\";var n=r(2931),i=r(9970),a=[\"xyz\",\"xzy\",\"yxz\",\"yzx\",\"zxy\",\"zyx\"],o=function(t,e){var r,n=t.length;for(r=0;r<n;r++){var i=t[r];if(i===e)return r;if(i>e)return r-1}return r},s=function(t,e,r){return t<e?e:t>r?r:t},l=function(t){var e=1/0;t.sort((function(t,e){return t-e}));for(var r=t.length,n=1;n<r;n++){var i=Math.abs(t[n]-t[n-1]);i<e&&(e=i)}return e};t.exports=function(t,e){var r=t.startingPositions,c=t.maxLength||1e3,u=t.tubeSize||1,h=t.absoluteTubeSize,f=t.gridFill||\"+x+y+z\",p={};-1!==f.indexOf(\"-x\")&&(p.reversedX=!0),-1!==f.indexOf(\"-y\")&&(p.reversedY=!0),-1!==f.indexOf(\"-z\")&&(p.reversedZ=!0),p.filled=a.indexOf(f.replace(/-/g,\"\").replace(/\\+/g,\"\"));var d=t.getVelocity||function(e){return function(t,e,r){var i=e.vectors,a=e.meshgrid,l=t[0],c=t[1],u=t[2],h=a[0].length,f=a[1].length,p=a[2].length,d=o(a[0],l),m=o(a[1],c),g=o(a[2],u),y=d+1,v=m+1,x=g+1;if(d=s(d,0,h-1),y=s(y,0,h-1),m=s(m,0,f-1),v=s(v,0,f-1),g=s(g,0,p-1),x=s(x,0,p-1),d<0||m<0||g<0||y>h-1||v>f-1||x>p-1)return n.create();var _,b,w,T,k,A,M=a[0][d],S=a[0][y],E=a[1][m],C=a[1][v],L=a[2][g],I=(l-M)/(S-M),P=(c-E)/(C-E),z=(u-L)/(a[2][x]-L);switch(isFinite(I)||(I=.5),isFinite(P)||(P=.5),isFinite(z)||(z=.5),r.reversedX&&(d=h-1-d,y=h-1-y),r.reversedY&&(m=f-1-m,v=f-1-v),r.reversedZ&&(g=p-1-g,x=p-1-x),r.filled){case 5:k=g,A=x,w=m*p,T=v*p,_=d*p*f,b=y*p*f;break;case 4:k=g,A=x,_=d*p,b=y*p,w=m*p*h,T=v*p*h;break;case 3:w=m,T=v,k=g*f,A=x*f,_=d*f*p,b=y*f*p;break;case 2:w=m,T=v,_=d*f,b=y*f,k=g*f*h,A=x*f*h;break;case 1:_=d,b=y,k=g*h,A=x*h,w=m*h*p,T=v*h*p;break;default:_=d,b=y,w=m*h,T=v*h,k=g*h*f,A=x*h*f}var O=i[_+w+k],D=i[_+w+A],R=i[_+T+k],F=i[_+T+A],B=i[b+w+k],N=i[b+w+A],j=i[b+T+k],U=i[b+T+A],V=n.create(),q=n.create(),H=n.create(),G=n.create();n.lerp(V,O,B,I),n.lerp(q,D,N,I),n.lerp(H,R,j,I),n.lerp(G,F,U,I);var Z=n.create(),W=n.create();n.lerp(Z,V,H,P),n.lerp(W,q,G,P);var Y=n.create();return n.lerp(Y,Z,W,z),Y}(e,t,p)},m=t.getDivergence||function(t,e){var r=n.create(),i=1e-4;n.add(r,t,[i,0,0]);var a=d(r);n.subtract(a,a,e),n.scale(a,a,1/i),n.add(r,t,[0,i,0]);var o=d(r);n.subtract(o,o,e),n.scale(o,o,1/i),n.add(r,t,[0,0,i]);var s=d(r);return n.subtract(s,s,e),n.scale(s,s,1/i),n.add(r,a,o),n.add(r,r,s),r},g=[],y=e[0][0],v=e[0][1],x=e[0][2],_=e[1][0],b=e[1][1],w=e[1][2],T=function(t){var e=t[0],r=t[1],n=t[2];return!(e<y||e>_||r<v||r>b||n<x||n>w)},k=10*n.distance(e[0],e[1])/c,A=k*k,M=1,S=0,E=r.length;E>1&&(M=function(t){for(var e=[],r=[],n=[],i={},a={},o={},s=t.length,c=0;c<s;c++){var u=t[c],h=u[0],f=u[1],p=u[2];i[h]||(e.push(h),i[h]=!0),a[f]||(r.push(f),a[f]=!0),o[p]||(n.push(p),o[p]=!0)}var d=l(e),m=l(r),g=l(n),y=Math.min(d,m,g);return isFinite(y)?y:1}(r));for(var C=0;C<E;C++){var L=n.create();n.copy(L,r[C]);var I=[L],P=[],z=d(L),O=L;P.push(z);var D=[],R=m(L,z),F=n.length(R);isFinite(F)&&F>S&&(S=F),D.push(F),g.push({points:I,velocities:P,divergences:D});for(var B=0;B<100*c&&I.length<c&&T(L);){B++;var N=n.clone(z),j=n.squaredLength(N);if(0===j)break;j>A&&n.scale(N,N,k/Math.sqrt(j)),n.add(N,N,L),z=d(N),n.squaredDistance(O,N)-A>-1e-4*A&&(I.push(N),O=N,P.push(z),R=m(N,z),F=n.length(R),isFinite(F)&&F>S&&(S=F),D.push(F)),L=N}}var U=function(t,e,r,a){for(var o=0,s=0;s<t.length;s++)for(var l=t[s].velocities,c=0;c<l.length;c++)o=Math.max(o,n.length(l[c]));var u=t.map((function(t){return function(t,e,r,a){for(var o=t.points,s=t.velocities,l=t.divergences,c=[],u=[],h=[],f=[],p=[],d=[],m=0,g=0,y=i.create(),v=i.create(),x=0;x<o.length;x++){var _=o[x],b=s[x],w=l[x];0===e&&(w=.05*r),g=n.length(b)/a,y=i.create(),n.copy(y,b),y[3]=w;for(var T=0;T<8;T++)p[T]=[_[0],_[1],_[2],T];if(f.length>0)for(T=0;T<8;T++){var k=(T+1)%8;c.push(f[T],p[T],p[k],p[k],f[k],f[T]),h.push(v,y,y,y,v,v),d.push(m,g,g,g,m,m);var A=c.length;u.push([A-6,A-5,A-4],[A-3,A-2,A-1])}var M=f;f=p,p=M;var S=v;v=y,y=S;var E=m;m=g,g=E}return{positions:c,cells:u,vectors:h,vertexIntensity:d}}(t,r,a,o)})),h=[],f=[],p=[],d=[];for(s=0;s<u.length;s++){var m=u[s],g=h.length;for(h=h.concat(m.positions),p=p.concat(m.vectors),d=d.concat(m.vertexIntensity),c=0;c<m.cells.length;c++){var y=m.cells[c],v=[];f.push(v);for(var x=0;x<y.length;x++)v.push(y[x]+g)}}return{positions:h,cells:f,vectors:p,vertexIntensity:d,colormap:e}}(g,t.colormap,S,M);return h?U.tubeScale=h:(0===S&&(S=1),U.tubeScale=.5*u*M/S),U};var c=r(6740),u=r(6405).createMesh;t.exports.createTubeMesh=function(t,e){return u(t,e,{shaders:c,traceType:\"streamtube\"})}},990:function(t,e,r){var n=r(9405),i=r(3236),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 mat4 objectOffsetTranslation = mat4(1.0) + mat4(vec4(0), vec4(0), vec4(0), vec4(objectOffset, 0));\\n vec4 worldPosition = (model * objectOffsetTranslation) * vec4(localCoordinate, 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 — 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 mat4 objectOffsetTranslation = mat4(1.0) + mat4(vec4(0), vec4(0), vec4(0), vec4(objectOffset, 0));\\n vec4 worldPosition = (model * objectOffsetTranslation) * vec4(dataCoordinate, 1.0);\\n\\n vec4 clipPosition = projection * (view * worldPosition);\\n clipPosition.z += zOffset;\\n\\n gl_Position = clipPosition;\\n value = f + objectOffset.z;\\n kill = -1.0;\\n planeCoordinate = uv.zw;\\n\\n vColor = texture2D(colormap, vec2(value, value));\\n\\n //Don't do lighting for contours\\n surfaceNormal = vec3(1,0,0);\\n eyeDirection = vec3(0,1,0);\\n lightDirection = vec3(0,0,1);\\n}\\n\"]),l=i([\"precision highp float;\\n#define GLSLIFY 1\\n\\nbool outOfRange(float a, float b, float p) {\\n return ((p > max(a, b)) || \\n (p < min(a, b)));\\n}\\n\\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\\n return (outOfRange(a.x, b.x, p.x) ||\\n outOfRange(a.y, b.y, p.y));\\n}\\n\\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\\n return (outOfRange(a.x, b.x, p.x) ||\\n outOfRange(a.y, b.y, p.y) ||\\n outOfRange(a.z, b.z, p.z));\\n}\\n\\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\\n return outOfRange(a.xyz, b.xyz, p.xyz);\\n}\\n\\nuniform vec2 shape;\\nuniform vec3 clipBounds[2];\\nuniform float pickId;\\n\\nvarying float value, kill;\\nvarying vec3 worldCoordinate;\\nvarying vec2 planeCoordinate;\\nvarying vec3 surfaceNormal;\\n\\nvec2 splitFloat(float v) {\\n float vh = 255.0 * v;\\n float upper = floor(vh);\\n float lower = fract(vh);\\n return vec2(upper / 255.0, floor(lower * 16.0) / 16.0);\\n}\\n\\nvoid main() {\\n if ((kill > 0.0) ||\\n (outOfRange(clipBounds[0], clipBounds[1], worldCoordinate))) discard;\\n\\n vec2 ux = splitFloat(planeCoordinate.x / shape.x);\\n vec2 uy = splitFloat(planeCoordinate.y / shape.y);\\n gl_FragColor = vec4(pickId, ux.x, uy.x, ux.y + (uy.y/16.0));\\n}\\n\"]);e.createShader=function(t){var e=n(t,a,o,null,[{name:\"uv\",type:\"vec4\"},{name:\"f\",type:\"vec3\"},{name:\"normal\",type:\"vec3\"}]);return e.attributes.uv.location=0,e.attributes.f.location=1,e.attributes.normal.location=2,e},e.createPickShader=function(t){var e=n(t,a,l,null,[{name:\"uv\",type:\"vec4\"},{name:\"f\",type:\"vec3\"},{name:\"normal\",type:\"vec3\"}]);return e.attributes.uv.location=0,e.attributes.f.location=1,e.attributes.normal.location=2,e},e.createContourShader=function(t){var e=n(t,s,o,null,[{name:\"uv\",type:\"vec4\"},{name:\"f\",type:\"float\"}]);return e.attributes.uv.location=0,e.attributes.f.location=1,e},e.createPickContourShader=function(t){var e=n(t,s,l,null,[{name:\"uv\",type:\"vec4\"},{name:\"f\",type:\"float\"}]);return e.attributes.uv.location=0,e.attributes.f.location=1,e}},9499:function(t,e,r){\"use strict\";t.exports=function(t){var e=t.gl,r=v(e),n=_(e),s=x(e),l=b(e),c=i(e),u=a(e,[{buffer:c,size:4,stride:w,offset:0},{buffer:c,size:3,stride:w,offset:16},{buffer:c,size:3,stride:w,offset:28}]),h=i(e),f=a(e,[{buffer:h,size:4,stride:20,offset:0},{buffer:h,size:1,stride:20,offset:16}]),p=i(e),d=a(e,[{buffer:p,size:2,type:e.FLOAT}]),m=o(e,1,S,e.RGBA,e.UNSIGNED_BYTE);m.minFilter=e.LINEAR,m.magFilter=e.LINEAR;var g=new E(e,[0,0],[[0,0,0],[0,0,0]],r,n,c,u,m,s,l,h,f,p,d,[0,0,0]),y={levels:[[],[],[]]};for(var T in t)y[T]=t[T];return y.colormap=y.colormap||\"jet\",g.update(y),g};var n=r(8828),i=r(2762),a=r(8116),o=r(7766),s=r(1888),l=r(6729),c=r(5298),u=r(9994),h=r(9618),f=r(3711),p=r(6760),d=r(7608),m=r(2478),g=r(6199),y=r(990),v=y.createShader,x=y.createContourShader,_=y.createPickShader,b=y.createPickContourShader,w=40,T=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],k=[[0,0],[0,1],[1,0],[1,1],[1,0],[0,1]],A=[[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 M(t,e,r,n,i){this.position=t,this.index=e,this.uv=r,this.level=n,this.dataCoordinate=i}!function(){for(var t=0;t<3;++t){var e=A[t],r=(t+2)%3;e[(t+1)%3+0]=1,e[r+3]=1,e[t+6]=1}}();var S=256;function E(t,e,r,n,i,a,o,l,c,u,f,p,d,m,g){this.gl=t,this.shape=e,this.bounds=r,this.objectOffset=g,this.intensityBounds=[],this._shader=n,this._pickShader=i,this._coordinateBuffer=a,this._vao=o,this._colorMap=l,this._contourShader=c,this._contourPickShader=u,this._contourBuffer=f,this._contourVAO=p,this._contourOffsets=[[],[],[]],this._contourCounts=[[],[],[]],this._vertexCount=0,this._pickResult=new M([0,0,0],[0,0],[0,0],[0,0,0],[0,0,0]),this._dynamicBuffer=d,this._dynamicVAO=m,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=[h(s.mallocFloat(1024),[0,0]),h(s.mallocFloat(1024),[0,0]),h(s.mallocFloat(1024),[0,0])],this.pickId=1,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.snapToData=!1,this.pixelRatio=1,this.opacity=1,this.lightPosition=[10,1e4,0],this.ambientLight=.8,this.diffuseLight=.8,this.specularLight=2,this.roughness=.5,this.fresnel=1.5,this.vertexColor=0,this.dirty=!0}var C=E.prototype;C.genColormap=function(t,e){var r=!1,n=u([l({colormap:t,nshades:S,format:\"rgba\"}).map((function(t,n){var i=e?function(t,e){if(!e)return 1;if(!e.length)return 1;for(var r=0;r<e.length;++r){if(e.length<2)return 1;if(e[r][0]===t)return e[r][1];if(e[r][0]>t&&r>0){var n=(e[r][0]-t)/(e[r][0]-e[r-1][0]);return e[r][1]*(1-n)+n*e[r-1][1]}}return 1}(n/255,e):t[3];return i<1&&(r=!0),[t[0],t[1],t[2],255*i]}))]);return c.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(t){this.pickId=t};var L=[0,0,0],I={showSurface:!1,showContour:!1,projections:[T.slice(),T.slice(),T.slice()],clipBounds:[[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]]]};function P(t,e){var r,n,i,a=e.axes&&e.axes.lastCubeProps.axis||L,o=e.showSurface,s=e.showContour;for(r=0;r<3;++r)for(o=o||e.surfaceProject[r],n=0;n<3;++n)s=s||e.contourProject[r][n];for(r=0;r<3;++r){var l=I.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]=e.axesBounds[+(a[r]>0)][r],p(l,t.model,l);var c=I.clipBounds[r];for(i=0;i<2;++i)for(n=0;n<3;++n)c[i][n]=t.clipBounds[i][n];c[0][r]=-1e8,c[1][r]=1e8}return I.showSurface=o,I.showContour=s,I}var z={model:T,view:T,projection:T,inverseModel:T.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},O=T.slice(),D=[1,0,0,0,1,0,0,0,1];function R(t,e){t=t||{};var r=this.gl;r.disable(r.CULL_FACE),this._colorMap.bind(0);var n=z;n.model=t.model||T,n.view=t.view||T,n.projection=t.projection||T,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=d(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=D,n.vertexColor=this.vertexColor;var s=O;for(p(s,n.view,n.model),p(s,n.projection,s),d(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 c=s[12+i];for(o=0;o<3;++o)c+=s[4*o+i]*this.lightPosition[o];n.lightPosition[i]=c/l}var u=P(n,this);if(u.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=u.projections[i],this._shader.uniforms.clipBounds=u.clipBounds[i],this._vao.draw(r.TRIANGLES,this._vertexCount));this._vao.unbind()}if(u.showContour){var h=this._contourShader;n.kambient=1,n.kdiffuse=0,n.kspecular=0,n.opacity=1,h.bind(),h.uniforms=n;var f=this._contourVAO;for(f.bind(),i=0;i<3;++i)for(h.uniforms.permutation=A[i],r.lineWidth(this.contourWidth[i]*this.pixelRatio),o=0;o<this.contourLevels[i].length;++o)o===this.highlightLevel[i]?(h.uniforms.contourColor=this.highlightColor[i],h.uniforms.contourTint=this.highlightTint[i]):0!==o&&o-1!==this.highlightLevel[i]||(h.uniforms.contourColor=this.contourColor[i],h.uniforms.contourTint=this.contourTint[i]),this._contourCounts[i][o]&&(h.uniforms.height=this.contourLevels[i][o],f.draw(r.LINES,this._contourCounts[i][o],this._contourOffsets[i][o]));for(i=0;i<3;++i)for(h.uniforms.model=u.projections[i],h.uniforms.clipBounds=u.clipBounds[i],o=0;o<3;++o)if(this.contourProject[i][o]){h.uniforms.permutation=A[o],r.lineWidth(this.contourWidth[o]*this.pixelRatio);for(var m=0;m<this.contourLevels[o].length;++m)m===this.highlightLevel[o]?(h.uniforms.contourColor=this.highlightColor[o],h.uniforms.contourTint=this.highlightTint[o]):0!==m&&m-1!==this.highlightLevel[o]||(h.uniforms.contourColor=this.contourColor[o],h.uniforms.contourTint=this.contourTint[o]),this._contourCounts[o][m]&&(h.uniforms.height=this.contourLevels[o][m],f.draw(r.LINES,this._contourCounts[o][m],this._contourOffsets[o][m]))}for(f.unbind(),(f=this._dynamicVAO).bind(),i=0;i<3;++i)if(0!==this._dynamicCounts[i])for(h.uniforms.model=n.model,h.uniforms.clipBounds=n.clipBounds,h.uniforms.permutation=A[i],r.lineWidth(this.dynamicWidth[i]*this.pixelRatio),h.uniforms.contourColor=this.dynamicColor[i],h.uniforms.contourTint=this.dynamicTint[i],h.uniforms.height=this.dynamicLevel[i],f.draw(r.LINES,this._dynamicCounts[i],this._dynamicOffsets[i]),o=0;o<3;++o)this.contourProject[o][i]&&(h.uniforms.model=u.projections[o],h.uniforms.clipBounds=u.clipBounds[o],f.draw(r.LINES,this._dynamicCounts[i],this._dynamicOffsets[i]));f.unbind()}}C.draw=function(t){return R.call(this,t,!1)},C.drawTransparent=function(t){return R.call(this,t,!0)};var F={model:T,view:T,projection:T,inverseModel:T,clipBounds:[[0,0,0],[0,0,0]],height:0,shape:[0,0],pickId:0,lowerBound:[0,0,0],upperBound:[0,0,0],zOffset:0,objectOffset:[0,0,0],permutation:[1,0,0,0,1,0,0,0,1],lightPosition:[0,0,0],eyePosition:[0,0,0]};function B(t,e){return Array.isArray(t)?[e(t[0]),e(t[1]),e(t[2])]:[e(t),e(t),e(t)]}function N(t){return Array.isArray(t)?3===t.length?[t[0],t[1],t[2],1]:[t[0],t[1],t[2],t[3]]:[0,0,0,1]}function j(t){if(Array.isArray(t)){if(Array.isArray(t))return[N(t[0]),N(t[1]),N(t[2])];var e=N(t);return[e.slice(),e.slice(),e.slice()]}}C.drawPick=function(t){t=t||{};var e=this.gl;e.disable(e.CULL_FACE);var r=F;r.model=t.model||T,r.view=t.view||T,r.projection=t.projection||T,r.shape=this._field[2].shape,r.pickId=this.pickId/255,r.lowerBound=this.bounds[0],r.upperBound=this.bounds[1],r.objectOffset=this.objectOffset,r.permutation=D;for(var n=0;n<2;++n)for(var i=r.clipBounds[n],a=0;a<3;++a)i[a]=Math.min(Math.max(this.clipBounds[n][a],-1e8),1e8);var o=P(r,this);if(o.showSurface){for(this._pickShader.bind(),this._pickShader.uniforms=r,this._vao.bind(),this._vao.draw(e.TRIANGLES,this._vertexCount),n=0;n<3;++n)this.surfaceProject[n]&&(this._pickShader.uniforms.model=o.projections[n],this._pickShader.uniforms.clipBounds=o.clipBounds[n],this._vao.draw(e.TRIANGLES,this._vertexCount));this._vao.unbind()}if(o.showContour){var s=this._contourPickShader;s.bind(),s.uniforms=r;var l=this._contourVAO;for(l.bind(),a=0;a<3;++a)for(e.lineWidth(this.contourWidth[a]*this.pixelRatio),s.uniforms.permutation=A[a],n=0;n<this.contourLevels[a].length;++n)this._contourCounts[a][n]&&(s.uniforms.height=this.contourLevels[a][n],l.draw(e.LINES,this._contourCounts[a][n],this._contourOffsets[a][n]));for(n=0;n<3;++n)for(s.uniforms.model=o.projections[n],s.uniforms.clipBounds=o.clipBounds[n],a=0;a<3;++a)if(this.contourProject[n][a]){s.uniforms.permutation=A[a],e.lineWidth(this.contourWidth[a]*this.pixelRatio);for(var c=0;c<this.contourLevels[a].length;++c)this._contourCounts[a][c]&&(s.uniforms.height=this.contourLevels[a][c],l.draw(e.LINES,this._contourCounts[a][c],this._contourOffsets[a][c]))}l.unbind()}},C.pick=function(t){if(!t)return null;if(t.id!==this.pickId)return null;var e=this._field[2].shape,r=this._pickResult,n=e[0]*(t.value[0]+(t.value[2]>>4)/16)/255,i=Math.floor(n),a=n-i,o=e[1]*(t.value[1]+(15&t.value[2])/16)/255,s=Math.floor(o),l=o-s;i+=1,s+=1;var c=r.position;c[0]=c[1]=c[2]=0;for(var u=0;u<2;++u)for(var h=u?a:1-a,f=0;f<2;++f)for(var p=i+u,d=s+f,g=h*(f?l:1-l),y=0;y<3;++y)c[y]+=this._field[y].get(p,d)*g;for(var v=this._pickResult.level,x=0;x<3;++x)if(v[x]=m.le(this.contourLevels[x],c[x]),v[x]<0)this.contourLevels[x].length>0&&(v[x]=0);else if(v[x]<this.contourLevels[x].length-1){var _=this.contourLevels[x][v[x]],b=this.contourLevels[x][v[x]+1];Math.abs(_-c[x])>Math.abs(b-c[x])&&(v[x]+=1)}for(r.index[0]=a<.5?i:i+1,r.index[1]=l<.5?s:s+1,r.uv[0]=n/e[0],r.uv[1]=o/e[1],y=0;y<3;++y)r.dataCoordinate[y]=this._field[y].get(r.index[0],r.index[1]);return r},C.padField=function(t,e){var r=e.shape.slice(),n=t.shape.slice();c.assign(t.lo(1,1).hi(r[0],r[1]),e),c.assign(t.lo(1).hi(r[0],1),e.hi(r[0],1)),c.assign(t.lo(1,n[1]-1).hi(r[0],1),e.lo(0,r[1]-1).hi(r[0],1)),c.assign(t.lo(0,1).hi(1,r[1]),e.hi(1)),c.assign(t.lo(n[0]-1,1).hi(1,r[1]),e.lo(r[0]-1)),t.set(0,0,e.get(0,0)),t.set(0,n[1]-1,e.get(0,r[1]-1)),t.set(n[0]-1,0,e.get(r[0]-1,0)),t.set(n[0]-1,n[1]-1,e.get(r[0]-1,r[1]-1))},C.update=function(t){t=t||{},this.objectOffset=t.objectOffset||this.objectOffset,this.dirty=!0,\"contourWidth\"in t&&(this.contourWidth=B(t.contourWidth,Number)),\"showContour\"in t&&(this.showContour=B(t.showContour,Boolean)),\"showSurface\"in t&&(this.showSurface=!!t.showSurface),\"contourTint\"in t&&(this.contourTint=B(t.contourTint,Boolean)),\"contourColor\"in t&&(this.contourColor=j(t.contourColor)),\"contourProject\"in t&&(this.contourProject=B(t.contourProject,(function(t){return B(t,Boolean)}))),\"surfaceProject\"in t&&(this.surfaceProject=t.surfaceProject),\"dynamicColor\"in t&&(this.dynamicColor=j(t.dynamicColor)),\"dynamicTint\"in t&&(this.dynamicTint=B(t.dynamicTint,Number)),\"dynamicWidth\"in t&&(this.dynamicWidth=B(t.dynamicWidth,Number)),\"opacity\"in t&&(this.opacity=t.opacity),\"opacityscale\"in t&&(this.opacityscale=t.opacityscale),\"colorBounds\"in t&&(this.colorBounds=t.colorBounds),\"vertexColor\"in t&&(this.vertexColor=t.vertexColor?1:0),\"colormap\"in t&&this._colorMap.setPixels(this.genColormap(t.colormap,this.opacityscale));var e=t.field||t.coords&&t.coords[2]||null,r=!1;if(e||(e=this._field[2].shape[0]||this._field[2].shape[2]?this._field[2].lo(1,1).hi(this._field[2].shape[0]-2,this._field[2].shape[1]-2):this._field[2].hi(0,0)),\"field\"in t||\"coords\"in t){var i=(e.shape[0]+2)*(e.shape[1]+2);i>this._field[2].data.length&&(s.freeFloat(this._field[2].data),this._field[2].data=s.mallocFloat(n.nextPow2(i))),this._field[2]=h(this._field[2].data,[e.shape[0]+2,e.shape[1]+2]),this.padField(this._field[2],e),this.shape=e.shape.slice();for(var a=this.shape,o=0;o<2;++o)this._field[2].size>this._field[o].data.length&&(s.freeFloat(this._field[o].data),this._field[o].data=s.mallocFloat(this._field[2].size)),this._field[o]=h(this._field[o].data,[a[0]+2,a[1]+2]);if(t.coords){var l=t.coords;if(!Array.isArray(l)||3!==l.length)throw new Error(\"gl-surface: invalid coordinates for x/y\");for(o=0;o<2;++o){var c=l[o];for(y=0;y<2;++y)if(c.shape[y]!==a[y])throw new Error(\"gl-surface: coords have incorrect shape\");this.padField(this._field[o],c)}}else if(t.ticks){var u=t.ticks;if(!Array.isArray(u)||2!==u.length)throw new Error(\"gl-surface: invalid ticks\");for(o=0;o<2;++o){var p=u[o];if((Array.isArray(p)||p.length)&&(p=h(p)),p.shape[0]!==a[o])throw new Error(\"gl-surface: invalid tick length\");var d=h(p.data,a);d.stride[o]=p.stride[0],d.stride[1^o]=0,this.padField(this._field[o],d)}}else{for(o=0;o<2;++o){var m=[0,0];m[o]=1,this._field[o]=h(this._field[o].data,[a[0]+2,a[1]+2],m,0)}this._field[0].set(0,0,0);for(var y=0;y<a[0];++y)this._field[0].set(y+1,0,y);for(this._field[0].set(a[0]+1,0,a[0]-1),this._field[1].set(0,0,0),y=0;y<a[1];++y)this._field[1].set(0,y+1,y);this._field[1].set(0,a[1]+1,a[1]-1)}var v=this._field,x=h(s.mallocFloat(3*v[2].size*2),[3,a[0]+2,a[1]+2,2]);for(o=0;o<3;++o)g(x.pick(o),v[o],\"mirror\");var _=h(s.mallocFloat(3*v[2].size),[a[0]+2,a[1]+2,3]);for(o=0;o<a[0]+2;++o)for(y=0;y<a[1]+2;++y){var b=x.get(0,o,y,0),w=x.get(0,o,y,1),T=x.get(1,o,y,0),A=x.get(1,o,y,1),M=x.get(2,o,y,0),S=x.get(2,o,y,1),E=T*S-A*M,C=M*w-S*b,L=b*A-w*T,I=Math.sqrt(E*E+C*C+L*L);I<1e-8?(I=Math.max(Math.abs(E),Math.abs(C),Math.abs(L)))<1e-8?(L=1,C=E=0,I=1):I=1/I:I=1/Math.sqrt(I),_.set(o,y,0,E*I),_.set(o,y,1,C*I),_.set(o,y,2,L*I)}s.free(x.data);var P=[1/0,1/0,1/0],z=[-1/0,-1/0,-1/0],O=1/0,D=-1/0,R=(a[0]-1)*(a[1]-1)*6,F=s.mallocFloat(n.nextPow2(10*R)),N=0,U=0;for(o=0;o<a[0]-1;++o)t:for(y=0;y<a[1]-1;++y){for(var V=0;V<2;++V)for(var q=0;q<2;++q)for(var H=0;H<3;++H){var G=this._field[H].get(1+o+V,1+y+q);if(isNaN(G)||!isFinite(G))continue t}for(H=0;H<6;++H){var Z=o+k[H][0],W=y+k[H][1],Y=this._field[0].get(Z+1,W+1),X=this._field[1].get(Z+1,W+1);G=this._field[2].get(Z+1,W+1),E=_.get(Z+1,W+1,0),C=_.get(Z+1,W+1,1),L=_.get(Z+1,W+1,2),t.intensity&&($=t.intensity.get(Z,W));var $=t.intensity?t.intensity.get(Z,W):G+this.objectOffset[2];F[N++]=Z,F[N++]=W,F[N++]=Y,F[N++]=X,F[N++]=G,F[N++]=0,F[N++]=$,F[N++]=E,F[N++]=C,F[N++]=L,P[0]=Math.min(P[0],Y+this.objectOffset[0]),P[1]=Math.min(P[1],X+this.objectOffset[1]),P[2]=Math.min(P[2],G+this.objectOffset[2]),O=Math.min(O,$),z[0]=Math.max(z[0],Y+this.objectOffset[0]),z[1]=Math.max(z[1],X+this.objectOffset[1]),z[2]=Math.max(z[2],G+this.objectOffset[2]),D=Math.max(D,$),U+=1}}for(t.intensityBounds&&(O=+t.intensityBounds[0],D=+t.intensityBounds[1]),o=6;o<N;o+=10)F[o]=(F[o]-O)/(D-O);this._vertexCount=U,this._coordinateBuffer.update(F.subarray(0,N)),s.freeFloat(F),s.free(_.data),this.bounds=[P,z],this.intensity=t.intensity||this._field[2],this.intensityBounds[0]===O&&this.intensityBounds[1]===D||(r=!0),this.intensityBounds=[O,D]}if(\"levels\"in t){var J=t.levels;for(J=Array.isArray(J[0])?J.slice():[[],[],J],o=0;o<3;++o)J[o]=J[o].slice(),J[o].sort((function(t,e){return t-e}));for(o=0;o<3;++o)for(y=0;y<J[o].length;++y)J[o][y]-=this.objectOffset[o];t:for(o=0;o<3;++o){if(J[o].length!==this.contourLevels[o].length){r=!0;break}for(y=0;y<J[o].length;++y)if(J[o][y]!==this.contourLevels[o][y]){r=!0;break t}}this.contourLevels=J}if(r){v=this._field,a=this.shape;for(var K=[],Q=0;Q<3;++Q){var tt=this.contourLevels[Q],et=[],rt=[],nt=[0,0,0];for(o=0;o<tt.length;++o){var it=f(this._field[Q],tt[o]);et.push(K.length/5|0),U=0;t:for(y=0;y<it.cells.length;++y){var at=it.cells[y];for(H=0;H<2;++H){var ot=it.positions[at[H]],st=ot[0],lt=0|Math.floor(st),ct=st-lt,ut=ot[1],ht=0|Math.floor(ut),ft=ut-ht,pt=!1;e:for(var dt=0;dt<3;++dt){nt[dt]=0;var mt=(Q+dt+1)%3;for(V=0;V<2;++V){var gt=V?ct:1-ct;for(Z=0|Math.min(Math.max(lt+V,0),a[0]),q=0;q<2;++q){var yt=q?ft:1-ft;if(W=0|Math.min(Math.max(ht+q,0),a[1]),G=dt<2?this._field[mt].get(Z,W):(this.intensity.get(Z,W)-this.intensityBounds[0])/(this.intensityBounds[1]-this.intensityBounds[0]),!isFinite(G)||isNaN(G)){pt=!0;break e}var vt=gt*yt;nt[dt]+=vt*G}}}if(pt){if(H>0){for(var xt=0;xt<5;++xt)K.pop();U-=1}continue t}K.push(nt[0],nt[1],ot[0],ot[1],nt[2]),U+=1}}rt.push(U)}this._contourOffsets[Q]=et,this._contourCounts[Q]=rt}var _t=s.mallocFloat(K.length);for(o=0;o<K.length;++o)_t[o]=K[o];this._contourBuffer.update(_t),s.freeFloat(_t)}},C.dispose=function(){this._shader.dispose(),this._vao.dispose(),this._coordinateBuffer.dispose(),this._colorMap.dispose(),this._contourBuffer.dispose(),this._contourVAO.dispose(),this._contourShader.dispose(),this._contourPickShader.dispose(),this._dynamicBuffer.dispose(),this._dynamicVAO.dispose();for(var t=0;t<3;++t)s.freeFloat(this._field[t].data)},C.highlight=function(t){var e,r;if(!t)return this._dynamicCounts=[0,0,0],this.dyanamicLevel=[NaN,NaN,NaN],void(this.highlightLevel=[-1,-1,-1]);for(e=0;e<3;++e)this.enableHighlight[e]?this.highlightLevel[e]=t.level[e]:this.highlightLevel[e]=-1;for(r=this.snapToData?t.dataCoordinate:t.position,e=0;e<3;++e)r[e]-=this.objectOffset[e];if(this.enableDynamic[0]&&r[0]!==this.dynamicLevel[0]||this.enableDynamic[1]&&r[1]!==this.dynamicLevel[1]||this.enableDynamic[2]&&r[2]!==this.dynamicLevel[2]){for(var n=0,i=this.shape,a=s.mallocFloat(12*i[0]*i[1]),o=0;o<3;++o)if(this.enableDynamic[o]){this.dynamicLevel[o]=r[o];var l=(o+1)%3,c=(o+2)%3,u=this._field[o],h=this._field[l],p=this._field[c],d=f(u,r[o]),m=d.cells,g=d.positions;for(this._dynamicOffsets[o]=n,e=0;e<m.length;++e)for(var y=m[e],v=0;v<2;++v){var x=g[y[v]],_=+x[0],b=0|_,w=0|Math.min(b+1,i[0]),T=_-b,k=1-T,A=+x[1],M=0|A,S=0|Math.min(M+1,i[1]),E=A-M,C=1-E,L=k*C,I=k*E,P=T*C,z=T*E,O=L*h.get(b,M)+I*h.get(b,S)+P*h.get(w,M)+z*h.get(w,S),D=L*p.get(b,M)+I*p.get(b,S)+P*p.get(w,M)+z*p.get(w,S);if(isNaN(O)||isNaN(D)){v&&(n-=1);break}a[2*n+0]=O,a[2*n+1]=D,n+=1}this._dynamicCounts[o]=n-this._dynamicOffsets[o]}else this.dynamicLevel[o]=NaN,this._dynamicCounts[o]=0;this._dynamicBuffer.update(a.subarray(0,2*n)),s.freeFloat(a)}}},7766:function(t,e,r){\"use strict\";var n=r(9618),i=r(5298),a=r(1888);t.exports=function(t){if(arguments.length<=1)throw new Error(\"gl-texture2d: Missing arguments for texture2d constructor\");if(o||function(t){o=[t.LINEAR,t.NEAREST_MIPMAP_LINEAR,t.LINEAR_MIPMAP_NEAREST,t.LINEAR_MIPMAP_NEAREST],s=[t.NEAREST,t.LINEAR,t.NEAREST_MIPMAP_NEAREST,t.NEAREST_MIPMAP_LINEAR,t.LINEAR_MIPMAP_NEAREST,t.LINEAR_MIPMAP_LINEAR],l=[t.REPEAT,t.CLAMP_TO_EDGE,t.MIRRORED_REPEAT]}(t),\"number\"==typeof arguments[1])return g(t,arguments[1],arguments[2],arguments[3]||t.RGBA,arguments[4]||t.UNSIGNED_BYTE);if(Array.isArray(arguments[1]))return g(t,0|arguments[1][0],0|arguments[1][1],arguments[2]||t.RGBA,arguments[3]||t.UNSIGNED_BYTE);if(\"object\"==typeof arguments[1]){var e=arguments[1],r=c(e)?e:e.raw;if(r)return function(t,e,r,n,i,a){var o=m(t);return t.texImage2D(t.TEXTURE_2D,0,i,i,a,e),new f(t,o,r,n,i,a)}(t,r,0|e.width,0|e.height,arguments[2]||t.RGBA,arguments[3]||t.UNSIGNED_BYTE);if(e.shape&&e.data&&e.stride)return function(t,e){var r=e.dtype,o=e.shape.slice(),s=t.getParameter(t.MAX_TEXTURE_SIZE);if(o[0]<0||o[0]>s||o[1]<0||o[1]>s)throw new Error(\"gl-texture2d: Invalid texture size\");var l=d(o,e.stride.slice()),c=0;\"float32\"===r?c=t.FLOAT:\"float64\"===r?(c=t.FLOAT,l=!1,r=\"float32\"):\"uint8\"===r?c=t.UNSIGNED_BYTE:(c=t.UNSIGNED_BYTE,l=!1,r=\"uint8\");var h,p,g=0;if(2===o.length)g=t.LUMINANCE,o=[o[0],o[1],1],e=n(e.data,o,[e.stride[0],e.stride[1],1],e.offset);else{if(3!==o.length)throw new Error(\"gl-texture2d: Invalid shape for texture\");if(1===o[2])g=t.ALPHA;else if(2===o[2])g=t.LUMINANCE_ALPHA;else if(3===o[2])g=t.RGB;else{if(4!==o[2])throw new Error(\"gl-texture2d: Invalid shape for pixel coords\");g=t.RGBA}}c!==t.FLOAT||t.getExtension(\"OES_texture_float\")||(c=t.UNSIGNED_BYTE,l=!1);var y=e.size;if(l)h=0===e.offset&&e.data.length===y?e.data:e.data.subarray(e.offset,e.offset+y);else{var v=[o[2],o[2]*o[0],1];p=a.malloc(y,r);var x=n(p,o,v,0);\"float32\"!==r&&\"float64\"!==r||c!==t.UNSIGNED_BYTE?i.assign(x,e):u(x,e),h=p.subarray(0,y)}var _=m(t);return t.texImage2D(t.TEXTURE_2D,0,g,o[0],o[1],0,g,c,h),l||a.free(p),new f(t,_,o[0],o[1],g,c)}(t,e)}throw new Error(\"gl-texture2d: Invalid arguments for texture2d constructor\")};var o=null,s=null,l=null;function c(t){return\"undefined\"!=typeof HTMLCanvasElement&&t instanceof HTMLCanvasElement||\"undefined\"!=typeof HTMLImageElement&&t instanceof HTMLImageElement||\"undefined\"!=typeof HTMLVideoElement&&t instanceof HTMLVideoElement||\"undefined\"!=typeof ImageData&&t instanceof ImageData}var u=function(t,e){i.muls(t,e,255)};function h(t,e,r){var n=t.gl,i=n.getParameter(n.MAX_TEXTURE_SIZE);if(e<0||e>i||r<0||r>i)throw new Error(\"gl-texture2d: Invalid texture size\");return t._shape=[e,r],t.bind(),n.texImage2D(n.TEXTURE_2D,0,t.format,e,r,0,t.format,t.type,null),t._mipLevels=[0],t}function f(t,e,r,n,i,a){this.gl=t,this.handle=e,this.format=i,this.type=a,this._shape=[r,n],this._mipLevels=[0],this._magFilter=t.NEAREST,this._minFilter=t.NEAREST,this._wrapS=t.CLAMP_TO_EDGE,this._wrapT=t.CLAMP_TO_EDGE,this._anisoSamples=1;var o=this,s=[this._wrapS,this._wrapT];Object.defineProperties(s,[{get:function(){return o._wrapS},set:function(t){return o.wrapS=t}},{get:function(){return o._wrapT},set:function(t){return o.wrapT=t}}]),this._wrapVector=s;var l=[this._shape[0],this._shape[1]];Object.defineProperties(l,[{get:function(){return o._shape[0]},set:function(t){return o.width=t}},{get:function(){return o._shape[1]},set:function(t){return o.height=t}}]),this._shapeVector=l}var p=f.prototype;function d(t,e){return 3===t.length?1===e[2]&&e[1]===t[0]*t[2]&&e[0]===t[2]:1===e[0]&&e[1]===t[0]}function m(t){var e=t.createTexture();return t.bindTexture(t.TEXTURE_2D,e),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.NEAREST),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.NEAREST),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),e}function g(t,e,r,n,i){var a=t.getParameter(t.MAX_TEXTURE_SIZE);if(e<0||e>a||r<0||r>a)throw new Error(\"gl-texture2d: Invalid texture shape\");if(i===t.FLOAT&&!t.getExtension(\"OES_texture_float\"))throw new Error(\"gl-texture2d: Floating point textures not supported on this platform\");var o=m(t);return t.texImage2D(t.TEXTURE_2D,0,n,e,r,0,n,i,null),new f(t,o,e,r,n,i)}Object.defineProperties(p,{minFilter:{get:function(){return this._minFilter},set:function(t){this.bind();var e=this.gl;if(this.type===e.FLOAT&&o.indexOf(t)>=0&&(e.getExtension(\"OES_texture_float_linear\")||(t=e.NEAREST)),s.indexOf(t)<0)throw new Error(\"gl-texture2d: Unknown filter mode \"+t);return e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,t),this._minFilter=t}},magFilter:{get:function(){return this._magFilter},set:function(t){this.bind();var e=this.gl;if(this.type===e.FLOAT&&o.indexOf(t)>=0&&(e.getExtension(\"OES_texture_float_linear\")||(t=e.NEAREST)),s.indexOf(t)<0)throw new Error(\"gl-texture2d: Unknown filter mode \"+t);return e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,t),this._magFilter=t}},mipSamples:{get:function(){return this._anisoSamples},set:function(t){var e=this._anisoSamples;if(this._anisoSamples=0|Math.max(t,1),e!==this._anisoSamples){var 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(t){if(this.bind(),l.indexOf(t)<0)throw new Error(\"gl-texture2d: Unknown wrap mode \"+t);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,t),this._wrapS=t}},wrapT:{get:function(){return this._wrapT},set:function(t){if(this.bind(),l.indexOf(t)<0)throw new Error(\"gl-texture2d: Unknown wrap mode \"+t);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,t),this._wrapT=t}},wrap:{get:function(){return this._wrapVector},set:function(t){if(Array.isArray(t)||(t=[t,t]),2!==t.length)throw new Error(\"gl-texture2d: Must specify wrap mode for rows and columns\");for(var e=0;e<2;++e)if(l.indexOf(t[e])<0)throw new Error(\"gl-texture2d: Unknown wrap mode \"+t);this._wrapS=t[0],this._wrapT=t[1];var r=this.gl;return this.bind(),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_S,this._wrapS),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_T,this._wrapT),t}},shape:{get:function(){return this._shapeVector},set:function(t){if(Array.isArray(t)){if(2!==t.length)throw new Error(\"gl-texture2d: Invalid texture shape\")}else t=[0|t,0|t];return h(this,0|t[0],0|t[1]),[0|t[0],0|t[1]]}},width:{get:function(){return this._shape[0]},set:function(t){return h(this,t|=0,this._shape[1]),t}},height:{get:function(){return this._shape[1]},set:function(t){return t|=0,h(this,this._shape[0],t),t}}}),p.bind=function(t){var e=this.gl;return void 0!==t&&e.activeTexture(e.TEXTURE0+(0|t)),e.bindTexture(e.TEXTURE_2D,this.handle),void 0!==t?0|t:e.getParameter(e.ACTIVE_TEXTURE)-e.TEXTURE0},p.dispose=function(){this.gl.deleteTexture(this.handle)},p.generateMipmap=function(){this.bind(),this.gl.generateMipmap(this.gl.TEXTURE_2D);for(var t=Math.min(this._shape[0],this._shape[1]),e=0;t>0;++e,t>>>=1)this._mipLevels.indexOf(e)<0&&this._mipLevels.push(e)},p.setPixels=function(t,e,r,o){var s=this.gl;this.bind(),Array.isArray(e)?(o=r,r=0|e[1],e=0|e[0]):(e=e||0,r=r||0),o=o||0;var l=c(t)?t:t.raw;if(l)this._mipLevels.indexOf(o)<0?(s.texImage2D(s.TEXTURE_2D,0,this.format,this.format,this.type,l),this._mipLevels.push(o)):s.texSubImage2D(s.TEXTURE_2D,o,e,r,this.format,this.type,l);else{if(!(t.shape&&t.stride&&t.data))throw new Error(\"gl-texture2d: Unsupported data type\");if(t.shape.length<2||e+t.shape[1]>this._shape[1]>>>o||r+t.shape[0]>this._shape[0]>>>o||e<0||r<0)throw new Error(\"gl-texture2d: Texture dimensions are out of bounds\");!function(t,e,r,o,s,l,c,h){var f=h.dtype,p=h.shape.slice();if(p.length<2||p.length>3)throw new Error(\"gl-texture2d: Invalid ndarray, must be 2d or 3d\");var m=0,g=0,y=d(p,h.stride.slice());if(\"float32\"===f?m=t.FLOAT:\"float64\"===f?(m=t.FLOAT,y=!1,f=\"float32\"):\"uint8\"===f?m=t.UNSIGNED_BYTE:(m=t.UNSIGNED_BYTE,y=!1,f=\"uint8\"),2===p.length)g=t.LUMINANCE,p=[p[0],p[1],1],h=n(h.data,p,[h.stride[0],h.stride[1],1],h.offset);else{if(3!==p.length)throw new Error(\"gl-texture2d: Invalid shape for texture\");if(1===p[2])g=t.ALPHA;else if(2===p[2])g=t.LUMINANCE_ALPHA;else if(3===p[2])g=t.RGB;else{if(4!==p[2])throw new Error(\"gl-texture2d: Invalid shape for pixel coords\");g=t.RGBA}p[2]}if(g!==t.LUMINANCE&&g!==t.ALPHA||s!==t.LUMINANCE&&s!==t.ALPHA||(g=s),g!==s)throw new Error(\"gl-texture2d: Incompatible texture format for setPixels\");var v=h.size,x=c.indexOf(o)<0;if(x&&c.push(o),m===l&&y)0===h.offset&&h.data.length===v?x?t.texImage2D(t.TEXTURE_2D,o,s,p[0],p[1],0,s,l,h.data):t.texSubImage2D(t.TEXTURE_2D,o,e,r,p[0],p[1],s,l,h.data):x?t.texImage2D(t.TEXTURE_2D,o,s,p[0],p[1],0,s,l,h.data.subarray(h.offset,h.offset+v)):t.texSubImage2D(t.TEXTURE_2D,o,e,r,p[0],p[1],s,l,h.data.subarray(h.offset,h.offset+v));else{var _;_=l===t.FLOAT?a.mallocFloat32(v):a.mallocUint8(v);var b=n(_,p,[p[2],p[2]*p[0],1]);m===t.FLOAT&&l===t.UNSIGNED_BYTE?u(b,h):i.assign(b,h),x?t.texImage2D(t.TEXTURE_2D,o,s,p[0],p[1],0,s,l,_.subarray(0,v)):t.texSubImage2D(t.TEXTURE_2D,o,e,r,p[0],p[1],s,l,_.subarray(0,v)),l===t.FLOAT?a.freeFloat32(_):a.freeUint8(_)}}(s,e,r,o,this.format,this.type,this._mipLevels,t)}}},1433:function(t){\"use strict\";t.exports=function(t,e,r){e?e.bind():t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,null);var n=0|t.getParameter(t.MAX_VERTEX_ATTRIBS);if(r){if(r.length>n)throw new Error(\"gl-vao: Too many vertex attributes\");for(var i=0;i<r.length;++i){var a=r[i];if(a.buffer){var o=a.buffer,s=a.size||4,l=a.type||t.FLOAT,c=!!a.normalized,u=a.stride||0,h=a.offset||0;o.bind(),t.enableVertexAttribArray(i),t.vertexAttribPointer(i,s,l,c,u,h)}else{if(\"number\"==typeof a)t.vertexAttrib1f(i,a);else if(1===a.length)t.vertexAttrib1f(i,a[0]);else if(2===a.length)t.vertexAttrib2f(i,a[0],a[1]);else if(3===a.length)t.vertexAttrib3f(i,a[0],a[1],a[2]);else{if(4!==a.length)throw new Error(\"gl-vao: Invalid vertex attribute\");t.vertexAttrib4f(i,a[0],a[1],a[2],a[3])}t.disableVertexAttribArray(i)}}for(;i<n;++i)t.disableVertexAttribArray(i)}else for(t.bindBuffer(t.ARRAY_BUFFER,null),i=0;i<n;++i)t.disableVertexAttribArray(i)}},870:function(t,e,r){\"use strict\";var n=r(1433);function i(t){this.gl=t,this._elements=null,this._attributes=null,this._elementsType=t.UNSIGNED_SHORT}i.prototype.bind=function(){n(this.gl,this._elements,this._attributes)},i.prototype.update=function(t,e,r){this._elements=e,this._attributes=t,this._elementsType=r||this.gl.UNSIGNED_SHORT},i.prototype.dispose=function(){},i.prototype.unbind=function(){},i.prototype.draw=function(t,e,r){r=r||0;var n=this.gl;this._elements?n.drawElements(t,e,this._elementsType,r):n.drawArrays(t,r,e)},t.exports=function(t){return new i(t)}},7518:function(t,e,r){\"use strict\";var n=r(1433);function i(t,e,r,n,i,a){this.location=t,this.dimension=e,this.a=r,this.b=n,this.c=i,this.d=a}function a(t,e,r){this.gl=t,this._ext=e,this.handle=r,this._attribs=[],this._useElements=!1,this._elementsType=t.UNSIGNED_SHORT}i.prototype.bind=function(t){switch(this.dimension){case 1:t.vertexAttrib1f(this.location,this.a);break;case 2:t.vertexAttrib2f(this.location,this.a,this.b);break;case 3:t.vertexAttrib3f(this.location,this.a,this.b,this.c);break;case 4:t.vertexAttrib4f(this.location,this.a,this.b,this.c,this.d)}},a.prototype.bind=function(){this._ext.bindVertexArrayOES(this.handle);for(var t=0;t<this._attribs.length;++t)this._attribs[t].bind(this.gl)},a.prototype.unbind=function(){this._ext.bindVertexArrayOES(null)},a.prototype.dispose=function(){this._ext.deleteVertexArrayOES(this.handle)},a.prototype.update=function(t,e,r){if(this.bind(),n(this.gl,e,t),this.unbind(),this._attribs.length=0,t)for(var a=0;a<t.length;++a){var o=t[a];\"number\"==typeof o?this._attribs.push(new i(a,1,o)):Array.isArray(o)&&this._attribs.push(new i(a,o.length,o[0],o[1],o[2],o[3]))}this._useElements=!!e,this._elementsType=r||this.gl.UNSIGNED_SHORT},a.prototype.draw=function(t,e,r){r=r||0;var n=this.gl;this._useElements?n.drawElements(t,e,this._elementsType,r):n.drawArrays(t,r,e)},t.exports=function(t,e){return new a(t,e,e.createVertexArrayOES())}},8116:function(t,e,r){\"use strict\";var n=r(7518),i=r(870);function a(t){this.bindVertexArrayOES=t.bindVertexArray.bind(t),this.createVertexArrayOES=t.createVertexArray.bind(t),this.deleteVertexArrayOES=t.deleteVertexArray.bind(t)}t.exports=function(t,e,r,o){var s,l=t.createVertexArray?new a(t):t.getExtension(\"OES_vertex_array_object\");return(s=l?n(t,l):i(t)).update(e,r,o),s}},5632:function(t){t.exports=function(t,e,r){return t[0]=e[0]+r[0],t[1]=e[1]+r[1],t[2]=e[2]+r[2],t}},8192:function(t,e,r){t.exports=function(t,e){var r=n(t[0],t[1],t[2]),o=n(e[0],e[1],e[2]);i(r,r),i(o,o);var s=a(r,o);return s>1?0:Math.acos(s)};var n=r(2825),i=r(3536),a=r(244)},9226:function(t){t.exports=function(t,e){return t[0]=Math.ceil(e[0]),t[1]=Math.ceil(e[1]),t[2]=Math.ceil(e[2]),t}},3126:function(t){t.exports=function(t){var e=new Float32Array(3);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e}},3990:function(t){t.exports=function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}},1091:function(t){t.exports=function(){var t=new Float32Array(3);return t[0]=0,t[1]=0,t[2]=0,t}},5911:function(t){t.exports=function(t,e,r){var n=e[0],i=e[1],a=e[2],o=r[0],s=r[1],l=r[2];return t[0]=i*l-a*s,t[1]=a*o-n*l,t[2]=n*s-i*o,t}},5455:function(t,e,r){t.exports=r(7056)},7056:function(t){t.exports=function(t,e){var r=e[0]-t[0],n=e[1]-t[1],i=e[2]-t[2];return Math.sqrt(r*r+n*n+i*i)}},4008:function(t,e,r){t.exports=r(6690)},6690:function(t){t.exports=function(t,e,r){return t[0]=e[0]/r[0],t[1]=e[1]/r[1],t[2]=e[2]/r[2],t}},244:function(t){t.exports=function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}},2613:function(t){t.exports=1e-6},9922:function(t,e,r){t.exports=function(t,e){var r=t[0],i=t[1],a=t[2],o=e[0],s=e[1],l=e[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(2613)},9265:function(t){t.exports=function(t,e){return t[0]===e[0]&&t[1]===e[1]&&t[2]===e[2]}},2681:function(t){t.exports=function(t,e){return t[0]=Math.floor(e[0]),t[1]=Math.floor(e[1]),t[2]=Math.floor(e[2]),t}},5137:function(t,e,r){t.exports=function(t,e,r,i,a,o){var s,l;for(e||(e=3),r||(r=0),l=i?Math.min(i*e+r,t.length):t.length,s=r;s<l;s+=e)n[0]=t[s],n[1]=t[s+1],n[2]=t[s+2],a(n,n,o),t[s]=n[0],t[s+1]=n[1],t[s+2]=n[2];return t};var n=r(1091)()},2825:function(t){t.exports=function(t,e,r){var n=new Float32Array(3);return n[0]=t,n[1]=e,n[2]=r,n}},2931:function(t,e,r){t.exports={EPSILON:r(2613),create:r(1091),clone:r(3126),angle:r(8192),fromValues:r(2825),copy:r(3990),set:r(1463),equals:r(9922),exactEquals:r(9265),add:r(5632),subtract:r(6843),sub:r(2229),multiply:r(5847),mul:r(4505),divide:r(6690),div:r(4008),min:r(8107),max:r(7417),floor:r(2681),ceil:r(9226),round:r(2447),scale:r(6621),scaleAndAdd:r(8489),distance:r(7056),dist:r(5455),squaredDistance:r(2953),sqrDist:r(6141),length:r(1387),len:r(868),squaredLength:r(3066),sqrLen:r(5486),negate:r(5093),inverse:r(811),normalize:r(3536),dot:r(244),cross:r(5911),lerp:r(6658),random:r(7636),transformMat4:r(5673),transformMat3:r(492),transformQuat:r(264),rotateX:r(6894),rotateY:r(109),rotateZ:r(8692),forEach:r(5137)}},811:function(t){t.exports=function(t,e){return t[0]=1/e[0],t[1]=1/e[1],t[2]=1/e[2],t}},868:function(t,e,r){t.exports=r(1387)},1387:function(t){t.exports=function(t){var e=t[0],r=t[1],n=t[2];return Math.sqrt(e*e+r*r+n*n)}},6658:function(t){t.exports=function(t,e,r,n){var i=e[0],a=e[1],o=e[2];return t[0]=i+n*(r[0]-i),t[1]=a+n*(r[1]-a),t[2]=o+n*(r[2]-o),t}},7417:function(t){t.exports=function(t,e,r){return t[0]=Math.max(e[0],r[0]),t[1]=Math.max(e[1],r[1]),t[2]=Math.max(e[2],r[2]),t}},8107:function(t){t.exports=function(t,e,r){return t[0]=Math.min(e[0],r[0]),t[1]=Math.min(e[1],r[1]),t[2]=Math.min(e[2],r[2]),t}},4505:function(t,e,r){t.exports=r(5847)},5847:function(t){t.exports=function(t,e,r){return t[0]=e[0]*r[0],t[1]=e[1]*r[1],t[2]=e[2]*r[2],t}},5093:function(t){t.exports=function(t,e){return t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t}},3536:function(t){t.exports=function(t,e){var r=e[0],n=e[1],i=e[2],a=r*r+n*n+i*i;return a>0&&(a=1/Math.sqrt(a),t[0]=e[0]*a,t[1]=e[1]*a,t[2]=e[2]*a),t}},7636:function(t){t.exports=function(t,e){e=e||1;var r=2*Math.random()*Math.PI,n=2*Math.random()-1,i=Math.sqrt(1-n*n)*e;return t[0]=Math.cos(r)*i,t[1]=Math.sin(r)*i,t[2]=n*e,t}},6894:function(t){t.exports=function(t,e,r,n){var i=r[1],a=r[2],o=e[1]-i,s=e[2]-a,l=Math.sin(n),c=Math.cos(n);return t[0]=e[0],t[1]=i+o*c-s*l,t[2]=a+o*l+s*c,t}},109:function(t){t.exports=function(t,e,r,n){var i=r[0],a=r[2],o=e[0]-i,s=e[2]-a,l=Math.sin(n),c=Math.cos(n);return t[0]=i+s*l+o*c,t[1]=e[1],t[2]=a+s*c-o*l,t}},8692:function(t){t.exports=function(t,e,r,n){var i=r[0],a=r[1],o=e[0]-i,s=e[1]-a,l=Math.sin(n),c=Math.cos(n);return t[0]=i+o*c-s*l,t[1]=a+o*l+s*c,t[2]=e[2],t}},2447:function(t){t.exports=function(t,e){return t[0]=Math.round(e[0]),t[1]=Math.round(e[1]),t[2]=Math.round(e[2]),t}},6621:function(t){t.exports=function(t,e,r){return t[0]=e[0]*r,t[1]=e[1]*r,t[2]=e[2]*r,t}},8489:function(t){t.exports=function(t,e,r,n){return t[0]=e[0]+r[0]*n,t[1]=e[1]+r[1]*n,t[2]=e[2]+r[2]*n,t}},1463:function(t){t.exports=function(t,e,r,n){return t[0]=e,t[1]=r,t[2]=n,t}},6141:function(t,e,r){t.exports=r(2953)},5486:function(t,e,r){t.exports=r(3066)},2953:function(t){t.exports=function(t,e){var r=e[0]-t[0],n=e[1]-t[1],i=e[2]-t[2];return r*r+n*n+i*i}},3066:function(t){t.exports=function(t){var e=t[0],r=t[1],n=t[2];return e*e+r*r+n*n}},2229:function(t,e,r){t.exports=r(6843)},6843:function(t){t.exports=function(t,e,r){return t[0]=e[0]-r[0],t[1]=e[1]-r[1],t[2]=e[2]-r[2],t}},492:function(t){t.exports=function(t,e,r){var n=e[0],i=e[1],a=e[2];return t[0]=n*r[0]+i*r[3]+a*r[6],t[1]=n*r[1]+i*r[4]+a*r[7],t[2]=n*r[2]+i*r[5]+a*r[8],t}},5673:function(t){t.exports=function(t,e,r){var n=e[0],i=e[1],a=e[2],o=r[3]*n+r[7]*i+r[11]*a+r[15];return o=o||1,t[0]=(r[0]*n+r[4]*i+r[8]*a+r[12])/o,t[1]=(r[1]*n+r[5]*i+r[9]*a+r[13])/o,t[2]=(r[2]*n+r[6]*i+r[10]*a+r[14])/o,t}},264:function(t){t.exports=function(t,e,r){var n=e[0],i=e[1],a=e[2],o=r[0],s=r[1],l=r[2],c=r[3],u=c*n+s*a-l*i,h=c*i+l*n-o*a,f=c*a+o*i-s*n,p=-o*n-s*i-l*a;return t[0]=u*c+p*-o+h*-l-f*-s,t[1]=h*c+p*-s+f*-o-u*-l,t[2]=f*c+p*-l+u*-s-h*-o,t}},4361:function(t){t.exports=function(t,e,r){return t[0]=e[0]+r[0],t[1]=e[1]+r[1],t[2]=e[2]+r[2],t[3]=e[3]+r[3],t}},2335:function(t){t.exports=function(t){var e=new Float32Array(4);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e}},2933:function(t){t.exports=function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t}},7536:function(t){t.exports=function(){var t=new Float32Array(4);return t[0]=0,t[1]=0,t[2]=0,t[3]=0,t}},4691:function(t){t.exports=function(t,e){var r=e[0]-t[0],n=e[1]-t[1],i=e[2]-t[2],a=e[3]-t[3];return Math.sqrt(r*r+n*n+i*i+a*a)}},1373:function(t){t.exports=function(t,e,r){return t[0]=e[0]/r[0],t[1]=e[1]/r[1],t[2]=e[2]/r[2],t[3]=e[3]/r[3],t}},3750:function(t){t.exports=function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]+t[3]*e[3]}},3390:function(t){t.exports=function(t,e,r,n){var i=new Float32Array(4);return i[0]=t,i[1]=e,i[2]=r,i[3]=n,i}},9970:function(t,e,r){t.exports={create:r(7536),clone:r(2335),fromValues:r(3390),copy:r(2933),set:r(4578),add:r(4361),subtract:r(6860),multiply:r(3576),divide:r(1373),min:r(2334),max:r(160),scale:r(9288),scaleAndAdd:r(4844),distance:r(4691),squaredDistance:r(7960),length:r(6808),squaredLength:r(483),negate:r(1498),inverse:r(4494),normalize:r(5177),dot:r(3750),lerp:r(2573),random:r(9131),transformMat4:r(5352),transformQuat:r(4041)}},4494:function(t){t.exports=function(t,e){return t[0]=1/e[0],t[1]=1/e[1],t[2]=1/e[2],t[3]=1/e[3],t}},6808:function(t){t.exports=function(t){var e=t[0],r=t[1],n=t[2],i=t[3];return Math.sqrt(e*e+r*r+n*n+i*i)}},2573:function(t){t.exports=function(t,e,r,n){var i=e[0],a=e[1],o=e[2],s=e[3];return t[0]=i+n*(r[0]-i),t[1]=a+n*(r[1]-a),t[2]=o+n*(r[2]-o),t[3]=s+n*(r[3]-s),t}},160:function(t){t.exports=function(t,e,r){return t[0]=Math.max(e[0],r[0]),t[1]=Math.max(e[1],r[1]),t[2]=Math.max(e[2],r[2]),t[3]=Math.max(e[3],r[3]),t}},2334:function(t){t.exports=function(t,e,r){return t[0]=Math.min(e[0],r[0]),t[1]=Math.min(e[1],r[1]),t[2]=Math.min(e[2],r[2]),t[3]=Math.min(e[3],r[3]),t}},3576:function(t){t.exports=function(t,e,r){return t[0]=e[0]*r[0],t[1]=e[1]*r[1],t[2]=e[2]*r[2],t[3]=e[3]*r[3],t}},1498:function(t){t.exports=function(t,e){return t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t[3]=-e[3],t}},5177:function(t){t.exports=function(t,e){var r=e[0],n=e[1],i=e[2],a=e[3],o=r*r+n*n+i*i+a*a;return o>0&&(o=1/Math.sqrt(o),t[0]=r*o,t[1]=n*o,t[2]=i*o,t[3]=a*o),t}},9131:function(t,e,r){var n=r(5177),i=r(9288);t.exports=function(t,e){return e=e||1,t[0]=Math.random(),t[1]=Math.random(),t[2]=Math.random(),t[3]=Math.random(),n(t,t),i(t,t,e),t}},9288:function(t){t.exports=function(t,e,r){return t[0]=e[0]*r,t[1]=e[1]*r,t[2]=e[2]*r,t[3]=e[3]*r,t}},4844:function(t){t.exports=function(t,e,r,n){return t[0]=e[0]+r[0]*n,t[1]=e[1]+r[1]*n,t[2]=e[2]+r[2]*n,t[3]=e[3]+r[3]*n,t}},4578:function(t){t.exports=function(t,e,r,n,i){return t[0]=e,t[1]=r,t[2]=n,t[3]=i,t}},7960:function(t){t.exports=function(t,e){var r=e[0]-t[0],n=e[1]-t[1],i=e[2]-t[2],a=e[3]-t[3];return r*r+n*n+i*i+a*a}},483:function(t){t.exports=function(t){var e=t[0],r=t[1],n=t[2],i=t[3];return e*e+r*r+n*n+i*i}},6860:function(t){t.exports=function(t,e,r){return t[0]=e[0]-r[0],t[1]=e[1]-r[1],t[2]=e[2]-r[2],t[3]=e[3]-r[3],t}},5352:function(t){t.exports=function(t,e,r){var n=e[0],i=e[1],a=e[2],o=e[3];return t[0]=r[0]*n+r[4]*i+r[8]*a+r[12]*o,t[1]=r[1]*n+r[5]*i+r[9]*a+r[13]*o,t[2]=r[2]*n+r[6]*i+r[10]*a+r[14]*o,t[3]=r[3]*n+r[7]*i+r[11]*a+r[15]*o,t}},4041:function(t){t.exports=function(t,e,r){var n=e[0],i=e[1],a=e[2],o=r[0],s=r[1],l=r[2],c=r[3],u=c*n+s*a-l*i,h=c*i+l*n-o*a,f=c*a+o*i-s*n,p=-o*n-s*i-l*a;return t[0]=u*c+p*-o+h*-l-f*-s,t[1]=h*c+p*-s+f*-o-u*-l,t[2]=f*c+p*-l+u*-s-h*-o,t[3]=e[3],t}},1848:function(t,e,r){var n=r(4905),i=r(6468);t.exports=function(t){for(var e=Array.isArray(t)?t:n(t),r=0;r<e.length;r++){var a=e[r];if(\"preprocessor\"===a.type){var o=a.data.match(/\\#define\\s+SHADER_NAME(_B64)?\\s+(.+)$/);if(o&&o[2]){var s=o[1],l=o[2];return(s?i(l):l).trim()}}}}},5874:function(t,e,r){t.exports=function(t){var e,r,T,k=0,A=0,M=l,S=[],E=[],C=1,L=0,I=0,P=!1,z=!1,O=\"\",D=a,R=n;\"300 es\"===(t=t||{}).version&&(D=s,R=o);var F={},B={};for(k=0;k<D.length;k++)F[D[k]]=!0;for(k=0;k<R.length;k++)B[R[k]]=!0;return function(t){return E=[],null!==t?function(t){var r;for(k=0,t.toString&&(t=t.toString()),O+=t.replace(/\\r\\n/g,\"\\n\"),T=O.length;e=O[k],k<T;){switch(r=k,M){case u:k=q();break;case h:case f:k=V();break;case p:k=H();break;case d:k=W();break;case b:k=Z();break;case m:k=Y();break;case c:k=X();break;case x:k=U();break;case l:k=j()}r!==k&&(\"\\n\"===O[r]?(L=0,++C):++L)}return A+=k,O=O.slice(k),E}(t):(S.length&&N(S.join(\"\")),M=_,N(\"(eof)\"),E)};function N(t){t.length&&E.push({type:w[M],data:t,position:I,line:C,column:L})}function j(){return S=S.length?[]:S,\"/\"===r&&\"*\"===e?(I=A+k-1,M=u,r=e,k+1):\"/\"===r&&\"/\"===e?(I=A+k-1,M=h,r=e,k+1):\"#\"===e?(M=f,I=A+k,k):/\\s/.test(e)?(M=x,I=A+k,k):(P=/\\d/.test(e),z=/[^\\w_]/.test(e),I=A+k,M=P?d:z?p:c,k)}function U(){return/[^\\s]/g.test(e)?(N(S.join(\"\")),M=l,k):(S.push(e),r=e,k+1)}function V(){return\"\\r\"!==e&&\"\\n\"!==e||\"\\\\\"===r?(S.push(e),r=e,k+1):(N(S.join(\"\")),M=l,k)}function q(){return\"/\"===e&&\"*\"===r?(S.push(e),N(S.join(\"\")),M=l,k+1):(S.push(e),r=e,k+1)}function H(){if(\".\"===r&&/\\d/.test(e))return M=m,k;if(\"/\"===r&&\"*\"===e)return M=u,k;if(\"/\"===r&&\"/\"===e)return M=h,k;if(\".\"===e&&S.length){for(;G(S););return M=m,k}if(\";\"===e||\")\"===e||\"(\"===e){if(S.length)for(;G(S););return N(e),M=l,k+1}var t=2===S.length&&\"=\"!==e;if(/[\\w_\\d\\s]/.test(e)||t){for(;G(S););return M=l,k}return S.push(e),r=e,k+1}function G(t){for(var e,r,n=0;;){if(e=i.indexOf(t.slice(0,t.length+n).join(\"\")),r=i[e],-1===e){if(n--+t.length>0)continue;r=t.slice(0,1).join(\"\")}return N(r),I+=r.length,(S=S.slice(r.length)).length}}function Z(){return/[^a-fA-F0-9]/.test(e)?(N(S.join(\"\")),M=l,k):(S.push(e),r=e,k+1)}function W(){return\".\"===e||/[eE]/.test(e)?(S.push(e),M=m,r=e,k+1):\"x\"===e&&1===S.length&&\"0\"===S[0]?(M=b,S.push(e),r=e,k+1):/[^\\d]/.test(e)?(N(S.join(\"\")),M=l,k):(S.push(e),r=e,k+1)}function Y(){return\"f\"===e&&(S.push(e),r=e,k+=1),/[eE]/.test(e)?(S.push(e),r=e,k+1):(\"-\"!==e&&\"+\"!==e||!/[eE]/.test(r))&&/[^\\d]/.test(e)?(N(S.join(\"\")),M=l,k):(S.push(e),r=e,k+1)}function X(){if(/[^\\d\\w_]/.test(e)){var t=S.join(\"\");return M=B[t]?v:F[t]?y:g,N(S.join(\"\")),M=l,k}return S.push(e),r=e,k+1}};var n=r(620),i=r(7827),a=r(6852),o=r(7932),s=r(3508),l=999,c=9999,u=0,h=1,f=2,p=3,d=4,m=5,g=6,y=7,v=8,x=9,_=10,b=11,w=[\"block-comment\",\"line-comment\",\"preprocessor\",\"operator\",\"integer\",\"float\",\"ident\",\"builtin\",\"keyword\",\"whitespace\",\"eof\",\"integer\"]},3508:function(t,e,r){var n=r(6852);n=n.slice().filter((function(t){return!/^(gl\\_|texture)/.test(t)})),t.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\"])},6852:function(t){t.exports=[\"abs\",\"acos\",\"all\",\"any\",\"asin\",\"atan\",\"ceil\",\"clamp\",\"cos\",\"cross\",\"dFdx\",\"dFdy\",\"degrees\",\"distance\",\"dot\",\"equal\",\"exp\",\"exp2\",\"faceforward\",\"floor\",\"fract\",\"gl_BackColor\",\"gl_BackLightModelProduct\",\"gl_BackLightProduct\",\"gl_BackMaterial\",\"gl_BackSecondaryColor\",\"gl_ClipPlane\",\"gl_ClipVertex\",\"gl_Color\",\"gl_DepthRange\",\"gl_DepthRangeParameters\",\"gl_EyePlaneQ\",\"gl_EyePlaneR\",\"gl_EyePlaneS\",\"gl_EyePlaneT\",\"gl_Fog\",\"gl_FogCoord\",\"gl_FogFragCoord\",\"gl_FogParameters\",\"gl_FragColor\",\"gl_FragCoord\",\"gl_FragData\",\"gl_FragDepth\",\"gl_FragDepthEXT\",\"gl_FrontColor\",\"gl_FrontFacing\",\"gl_FrontLightModelProduct\",\"gl_FrontLightProduct\",\"gl_FrontMaterial\",\"gl_FrontSecondaryColor\",\"gl_LightModel\",\"gl_LightModelParameters\",\"gl_LightModelProducts\",\"gl_LightProducts\",\"gl_LightSource\",\"gl_LightSourceParameters\",\"gl_MaterialParameters\",\"gl_MaxClipPlanes\",\"gl_MaxCombinedTextureImageUnits\",\"gl_MaxDrawBuffers\",\"gl_MaxFragmentUniformComponents\",\"gl_MaxLights\",\"gl_MaxTextureCoords\",\"gl_MaxTextureImageUnits\",\"gl_MaxTextureUnits\",\"gl_MaxVaryingFloats\",\"gl_MaxVertexAttribs\",\"gl_MaxVertexTextureImageUnits\",\"gl_MaxVertexUniformComponents\",\"gl_ModelViewMatrix\",\"gl_ModelViewMatrixInverse\",\"gl_ModelViewMatrixInverseTranspose\",\"gl_ModelViewMatrixTranspose\",\"gl_ModelViewProjectionMatrix\",\"gl_ModelViewProjectionMatrixInverse\",\"gl_ModelViewProjectionMatrixInverseTranspose\",\"gl_ModelViewProjectionMatrixTranspose\",\"gl_MultiTexCoord0\",\"gl_MultiTexCoord1\",\"gl_MultiTexCoord2\",\"gl_MultiTexCoord3\",\"gl_MultiTexCoord4\",\"gl_MultiTexCoord5\",\"gl_MultiTexCoord6\",\"gl_MultiTexCoord7\",\"gl_Normal\",\"gl_NormalMatrix\",\"gl_NormalScale\",\"gl_ObjectPlaneQ\",\"gl_ObjectPlaneR\",\"gl_ObjectPlaneS\",\"gl_ObjectPlaneT\",\"gl_Point\",\"gl_PointCoord\",\"gl_PointParameters\",\"gl_PointSize\",\"gl_Position\",\"gl_ProjectionMatrix\",\"gl_ProjectionMatrixInverse\",\"gl_ProjectionMatrixInverseTranspose\",\"gl_ProjectionMatrixTranspose\",\"gl_SecondaryColor\",\"gl_TexCoord\",\"gl_TextureEnvColor\",\"gl_TextureMatrix\",\"gl_TextureMatrixInverse\",\"gl_TextureMatrixInverseTranspose\",\"gl_TextureMatrixTranspose\",\"gl_Vertex\",\"greaterThan\",\"greaterThanEqual\",\"inversesqrt\",\"length\",\"lessThan\",\"lessThanEqual\",\"log\",\"log2\",\"matrixCompMult\",\"max\",\"min\",\"mix\",\"mod\",\"normalize\",\"not\",\"notEqual\",\"pow\",\"radians\",\"reflect\",\"refract\",\"sign\",\"sin\",\"smoothstep\",\"sqrt\",\"step\",\"tan\",\"texture2D\",\"texture2DLod\",\"texture2DProj\",\"texture2DProjLod\",\"textureCube\",\"textureCubeLod\",\"texture2DLodEXT\",\"texture2DProjLodEXT\",\"textureCubeLodEXT\",\"texture2DGradEXT\",\"texture2DProjGradEXT\",\"textureCubeGradEXT\"]},7932:function(t,e,r){var n=r(620);t.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\"])},620:function(t){t.exports=[\"precision\",\"highp\",\"mediump\",\"lowp\",\"attribute\",\"const\",\"uniform\",\"varying\",\"break\",\"continue\",\"do\",\"for\",\"while\",\"if\",\"else\",\"in\",\"out\",\"inout\",\"float\",\"int\",\"uint\",\"void\",\"bool\",\"true\",\"false\",\"discard\",\"return\",\"mat2\",\"mat3\",\"mat4\",\"vec2\",\"vec3\",\"vec4\",\"ivec2\",\"ivec3\",\"ivec4\",\"bvec2\",\"bvec3\",\"bvec4\",\"sampler1D\",\"sampler2D\",\"sampler3D\",\"samplerCube\",\"sampler1DShadow\",\"sampler2DShadow\",\"struct\",\"asm\",\"class\",\"union\",\"enum\",\"typedef\",\"template\",\"this\",\"packed\",\"goto\",\"switch\",\"default\",\"inline\",\"noinline\",\"volatile\",\"public\",\"static\",\"extern\",\"external\",\"interface\",\"long\",\"short\",\"double\",\"half\",\"fixed\",\"unsigned\",\"input\",\"output\",\"hvec2\",\"hvec3\",\"hvec4\",\"dvec2\",\"dvec3\",\"dvec4\",\"fvec2\",\"fvec3\",\"fvec4\",\"sampler2DRect\",\"sampler3DRect\",\"sampler2DRectShadow\",\"sizeof\",\"cast\",\"namespace\",\"using\"]},7827:function(t){t.exports=[\"<<=\",\">>=\",\"++\",\"--\",\"<<\",\">>\",\"<=\",\">=\",\"==\",\"!=\",\"&&\",\"||\",\"+=\",\"-=\",\"*=\",\"/=\",\"%=\",\"&=\",\"^^\",\"^=\",\"|=\",\"(\",\")\",\"[\",\"]\",\".\",\"!\",\"~\",\"*\",\"/\",\"%\",\"+\",\"-\",\"<\",\">\",\"&\",\"^\",\"|\",\"?\",\":\",\"=\",\",\",\";\",\"{\",\"}\"]},4905:function(t,e,r){var n=r(5874);t.exports=function(t,e){var r=n(e),i=[];return(i=i.concat(r(t))).concat(r(null))}},3236:function(t){t.exports=function(t){\"string\"==typeof t&&(t=[t]);for(var e=[].slice.call(arguments,1),r=[],n=0;n<t.length-1;n++)r.push(t[n],e[n]||\"\");return r.push(t[n]),r.join(\"\")}},7520:function(t,e,r){\"use strict\";var n=r(9507);t.exports=n&&function(){var t=!1;try{var e=Object.defineProperty({},\"passive\",{get:function(){t=!0}});window.addEventListener(\"test\",null,e),window.removeEventListener(\"test\",null,e)}catch(e){t=!1}return t}()},3778:function(t,e){e.read=function(t,e,r,n,i){var a,o,s=8*i-n-1,l=(1<<s)-1,c=l>>1,u=-7,h=r?i-1:0,f=r?-1:1,p=t[e+h];for(h+=f,a=p&(1<<-u)-1,p>>=-u,u+=s;u>0;a=256*a+t[e+h],h+=f,u-=8);for(o=a&(1<<-u)-1,a>>=-u,u+=n;u>0;o=256*o+t[e+h],h+=f,u-=8);if(0===a)a=1-c;else{if(a===l)return o?NaN:1/0*(p?-1:1);o+=Math.pow(2,n),a-=c}return(p?-1:1)*o*Math.pow(2,a-n)},e.write=function(t,e,r,n,i,a){var o,s,l,c=8*a-i-1,u=(1<<c)-1,h=u>>1,f=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,p=n?0:a-1,d=n?1:-1,m=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,o=u):(o=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-o))<1&&(o--,l*=2),(e+=o+h>=1?f/l:f*Math.pow(2,1-h))*l>=2&&(o++,l/=2),o+h>=u?(s=0,o=u):o+h>=1?(s=(e*l-1)*Math.pow(2,i),o+=h):(s=e*Math.pow(2,h-1)*Math.pow(2,i),o=0));i>=8;t[r+p]=255&s,p+=d,s/=256,i-=8);for(o=o<<i|s,c+=i;c>0;t[r+p]=255&o,p+=d,o/=256,c-=8);t[r+p-d]|=128*m}},8954:function(t,e,r){\"use strict\";t.exports=function(t,e){var r=t.length;if(0===r)throw new Error(\"Must have at least d+1 points\");var i=t[0].length;if(r<=i)throw new Error(\"Must input at least d+1 points\");var o=t.slice(0,i+1),s=n.apply(void 0,o);if(0===s)throw new Error(\"Input not in general position\");for(var l=new Array(i+1),u=0;u<=i;++u)l[u]=u;s<0&&(l[0]=1,l[1]=0);var h=new a(l,new Array(i+1),!1),f=h.adjacent,p=new Array(i+2);for(u=0;u<=i;++u){for(var d=l.slice(),m=0;m<=i;++m)m===u&&(d[m]=-1);var g=d[0];d[0]=d[1],d[1]=g;var y=new a(d,new Array(i+1),!0);f[u]=y,p[u]=y}for(p[i+1]=h,u=0;u<=i;++u){d=f[u].vertices;var v=f[u].adjacent;for(m=0;m<=i;++m){var x=d[m];if(x<0)v[m]=h;else for(var _=0;_<=i;++_)f[_].vertices.indexOf(x)<0&&(v[m]=f[_])}}var b=new c(i,o,p),w=!!e;for(u=i+1;u<r;++u)b.insert(t[u],w);return b.boundary()};var n=r(3250),i=r(6803).Fw;function a(t,e,r){this.vertices=t,this.adjacent=e,this.boundary=r,this.lastVisited=-1}function o(t,e,r){this.vertices=t,this.cell=e,this.index=r}function s(t,e){return i(t.vertices,e.vertices)}a.prototype.flip=function(){var t=this.vertices[0];this.vertices[0]=this.vertices[1],this.vertices[1]=t;var e=this.adjacent[0];this.adjacent[0]=this.adjacent[1],this.adjacent[1]=e};var l=[];function c(t,e,r){this.dimension=t,this.vertices=e,this.simplices=r,this.interior=r.filter((function(t){return!t.boundary})),this.tuple=new Array(t+1);for(var i=0;i<=t;++i)this.tuple[i]=this.vertices[i];var a,o=l[t];o||(o=l[t]=((a=n[t+1])||(a=n),function(t){return function(){var e=this.tuple;return t.apply(this,e)}}(a))),this.orient=o}var u=c.prototype;u.handleBoundaryDegeneracy=function(t,e){var r=this.dimension,n=this.vertices.length-1,i=this.tuple,a=this.vertices,o=[t];for(t.lastVisited=-n;o.length>0;)for(var s=(t=o.pop()).adjacent,l=0;l<=r;++l){var c=s[l];if(c.boundary&&!(c.lastVisited<=-n)){for(var u=c.vertices,h=0;h<=r;++h){var f=u[h];i[h]=f<0?e:a[f]}var p=this.orient();if(p>0)return c;c.lastVisited=-n,0===p&&o.push(c)}}return null},u.walk=function(t,e){var r=this.vertices.length-1,n=this.dimension,i=this.vertices,a=this.tuple,o=e?this.interior.length*Math.random()|0:this.interior.length-1,s=this.interior[o];t:for(;!s.boundary;){for(var l=s.vertices,c=s.adjacent,u=0;u<=n;++u)a[u]=i[l[u]];for(s.lastVisited=r,u=0;u<=n;++u){var h=c[u];if(!(h.lastVisited>=r)){var f=a[u];a[u]=t;var p=this.orient();if(a[u]=f,p<0){s=h;continue t}h.boundary?h.lastVisited=-r:h.lastVisited=r}}return}return s},u.addPeaks=function(t,e){var r=this.vertices.length-1,n=this.dimension,i=this.vertices,l=this.tuple,c=this.interior,u=this.simplices,h=[e];e.lastVisited=r,e.vertices[e.vertices.indexOf(-1)]=r,e.boundary=!1,c.push(e);for(var f=[];h.length>0;){var p=(e=h.pop()).vertices,d=e.adjacent,m=p.indexOf(r);if(!(m<0))for(var g=0;g<=n;++g)if(g!==m){var y=d[g];if(y.boundary&&!(y.lastVisited>=r)){var v=y.vertices;if(y.lastVisited!==-r){for(var x=0,_=0;_<=n;++_)v[_]<0?(x=_,l[_]=t):l[_]=i[v[_]];if(this.orient()>0){v[x]=r,y.boundary=!1,c.push(y),h.push(y),y.lastVisited=r;continue}y.lastVisited=-r}var b=y.adjacent,w=p.slice(),T=d.slice(),k=new a(w,T,!0);u.push(k);var A=b.indexOf(e);if(!(A<0))for(b[A]=k,T[m]=y,w[g]=-1,T[g]=e,d[g]=k,k.flip(),_=0;_<=n;++_){var M=w[_];if(!(M<0||M===r)){for(var S=new Array(n-1),E=0,C=0;C<=n;++C){var L=w[C];L<0||C===_||(S[E++]=L)}f.push(new o(S,k,_))}}}}}for(f.sort(s),g=0;g+1<f.length;g+=2){var I=f[g],P=f[g+1],z=I.index,O=P.index;z<0||O<0||(I.cell.adjacent[I.index]=P.cell,P.cell.adjacent[P.index]=I.cell)}},u.insert=function(t,e){var r=this.vertices;r.push(t);var n=this.walk(t,e);if(n){for(var i=this.dimension,a=this.tuple,o=0;o<=i;++o){var s=n.vertices[o];a[o]=s<0?t:r[s]}var l=this.orient(a);l<0||(0!==l||(n=this.handleBoundaryDegeneracy(n,t)))&&this.addPeaks(t,n)}},u.boundary=function(){for(var t=this.dimension,e=[],r=this.simplices,n=r.length,i=0;i<n;++i){var a=r[i];if(a.boundary){for(var o=new Array(t),s=a.vertices,l=0,c=0,u=0;u<=t;++u)s[u]>=0?o[l++]=s[u]:c=1&u;if(c===(1&t)){var h=o[0];o[0]=o[1],o[1]=h}e.push(o)}}return e}},3352:function(t,e,r){\"use strict\";var n=r(2478);function i(t,e,r,n,i){this.mid=t,this.left=e,this.right=r,this.leftPoints=n,this.rightPoints=i,this.count=(e?e.count:0)+(r?r.count:0)+n.length}t.exports=function(t){return t&&0!==t.length?new y(g(t)):new y(null)};var a=i.prototype;function o(t,e){t.mid=e.mid,t.left=e.left,t.right=e.right,t.leftPoints=e.leftPoints,t.rightPoints=e.rightPoints,t.count=e.count}function s(t,e){var r=g(e);t.mid=r.mid,t.left=r.left,t.right=r.right,t.leftPoints=r.leftPoints,t.rightPoints=r.rightPoints,t.count=r.count}function l(t,e){var r=t.intervals([]);r.push(e),s(t,r)}function c(t,e){var r=t.intervals([]),n=r.indexOf(e);return n<0?0:(r.splice(n,1),s(t,r),1)}function u(t,e,r){for(var n=0;n<t.length&&t[n][0]<=e;++n){var i=r(t[n]);if(i)return i}}function h(t,e,r){for(var n=t.length-1;n>=0&&t[n][1]>=e;--n){var i=r(t[n]);if(i)return i}}function f(t,e){for(var r=0;r<t.length;++r){var n=e(t[r]);if(n)return n}}function p(t,e){return t-e}function d(t,e){return t[0]-e[0]||t[1]-e[1]}function m(t,e){return t[1]-e[1]||t[0]-e[0]}function g(t){if(0===t.length)return null;for(var e=[],r=0;r<t.length;++r)e.push(t[r][0],t[r][1]);e.sort(p);var n=e[e.length>>1],a=[],o=[],s=[];for(r=0;r<t.length;++r){var l=t[r];l[1]<n?a.push(l):n<l[0]?o.push(l):s.push(l)}var c=s,u=s.slice();return c.sort(d),u.sort(m),new i(n,g(a),g(o),c,u)}function y(t){this.root=t}a.intervals=function(t){return t.push.apply(t,this.leftPoints),this.left&&this.left.intervals(t),this.right&&this.right.intervals(t),t},a.insert=function(t){var e=this.count-this.leftPoints.length;if(this.count+=1,t[1]<this.mid)this.left?4*(this.left.count+1)>3*(e+1)?l(this,t):this.left.insert(t):this.left=g([t]);else if(t[0]>this.mid)this.right?4*(this.right.count+1)>3*(e+1)?l(this,t):this.right.insert(t):this.right=g([t]);else{var r=n.ge(this.leftPoints,t,d),i=n.ge(this.rightPoints,t,m);this.leftPoints.splice(r,0,t),this.rightPoints.splice(i,0,t)}},a.remove=function(t){var e=this.count-this.leftPoints;if(t[1]<this.mid)return this.left?4*(this.right?this.right.count:0)>3*(e-1)?c(this,t):2===(s=this.left.remove(t))?(this.left=null,this.count-=1,1):(1===s&&(this.count-=1),s):0;if(t[0]>this.mid)return this.right?4*(this.left?this.left.count:0)>3*(e-1)?c(this,t):2===(s=this.right.remove(t))?(this.right=null,this.count-=1,1):(1===s&&(this.count-=1),s):0;if(1===this.count)return this.leftPoints[0]===t?2:0;if(1===this.leftPoints.length&&this.leftPoints[0]===t){if(this.left&&this.right){for(var r=this,i=this.left;i.right;)r=i,i=i.right;if(r===this)i.right=this.right;else{var a=this.left,s=this.right;r.count-=i.count,r.right=i.left,i.left=a,i.right=s}o(this,i),this.count=(this.left?this.left.count:0)+(this.right?this.right.count:0)+this.leftPoints.length}else this.left?o(this,this.left):o(this,this.right);return 1}for(a=n.ge(this.leftPoints,t,d);a<this.leftPoints.length&&this.leftPoints[a][0]===t[0];++a)if(this.leftPoints[a]===t)for(this.count-=1,this.leftPoints.splice(a,1),s=n.ge(this.rightPoints,t,m);s<this.rightPoints.length&&this.rightPoints[s][1]===t[1];++s)if(this.rightPoints[s]===t)return this.rightPoints.splice(s,1),1;return 0},a.queryPoint=function(t,e){return t<this.mid?this.left&&(r=this.left.queryPoint(t,e))?r:u(this.leftPoints,t,e):t>this.mid?this.right&&(r=this.right.queryPoint(t,e))?r:h(this.rightPoints,t,e):f(this.leftPoints,e);var r},a.queryInterval=function(t,e,r){var n;return t<this.mid&&this.left&&(n=this.left.queryInterval(t,e,r))||e>this.mid&&this.right&&(n=this.right.queryInterval(t,e,r))?n:e<this.mid?u(this.leftPoints,e,r):t>this.mid?h(this.rightPoints,t,r):f(this.leftPoints,r)};var v=y.prototype;v.insert=function(t){this.root?this.root.insert(t):this.root=new i(t[0],null,null,[t],[t])},v.remove=function(t){if(this.root){var e=this.root.remove(t);return 2===e&&(this.root=null),0!==e}return!1},v.queryPoint=function(t,e){if(this.root)return this.root.queryPoint(t,e)},v.queryInterval=function(t,e,r){if(t<=e&&this.root)return this.root.queryInterval(t,e,r)},Object.defineProperty(v,\"count\",{get:function(){return this.root?this.root.count:0}}),Object.defineProperty(v,\"intervals\",{get:function(){return this.root?this.root.intervals([]):[]}})},7762:function(t){\"use strict\";t.exports=function(t){for(var e=new Array(t),r=0;r<t;++r)e[r]=r;return e}},9507:function(t){t.exports=!0},7163:function(t){function e(t){return!!t.constructor&&\"function\"==typeof t.constructor.isBuffer&&t.constructor.isBuffer(t)}t.exports=function(t){return null!=t&&(e(t)||function(t){return\"function\"==typeof t.readFloatLE&&\"function\"==typeof t.slice&&e(t.slice(0,0))}(t)||!!t._isBuffer)}},5219:function(t){\"use strict\";t.exports=function(t){for(var e,r=t.length,n=0;n<r;n++)if(((e=t.charCodeAt(n))<9||e>13)&&32!==e&&133!==e&&160!==e&&5760!==e&&6158!==e&&(e<8192||e>8205)&&8232!==e&&8233!==e&&8239!==e&&8287!==e&&8288!==e&&12288!==e&&65279!==e)return!1;return!0}},395:function(t){t.exports=function(t,e,r){return t*(1-r)+e*r}},2652:function(t,e,r){var n=r(4335),i=r(6864),a=r(1903),o=r(9921),s=r(7608),l=r(5665),c={length:r(1387),normalize:r(3536),dot:r(244),cross:r(5911)},u=i(),h=i(),f=[0,0,0,0],p=[[0,0,0],[0,0,0],[0,0,0]],d=[0,0,0];function m(t,e,r,n,i){t[0]=e[0]*n+r[0]*i,t[1]=e[1]*n+r[1]*i,t[2]=e[2]*n+r[2]*i}t.exports=function(t,e,r,i,g,y){if(e||(e=[0,0,0]),r||(r=[0,0,0]),i||(i=[0,0,0]),g||(g=[0,0,0,1]),y||(y=[0,0,0,1]),!n(u,t))return!1;if(a(h,u),h[3]=0,h[7]=0,h[11]=0,h[15]=1,Math.abs(o(h)<1e-8))return!1;var v,x,_,b,w,T,k,A=u[3],M=u[7],S=u[11],E=u[12],C=u[13],L=u[14],I=u[15];if(0!==A||0!==M||0!==S){if(f[0]=A,f[1]=M,f[2]=S,f[3]=I,!s(h,h))return!1;l(h,h),v=g,_=h,b=(x=f)[0],w=x[1],T=x[2],k=x[3],v[0]=_[0]*b+_[4]*w+_[8]*T+_[12]*k,v[1]=_[1]*b+_[5]*w+_[9]*T+_[13]*k,v[2]=_[2]*b+_[6]*w+_[10]*T+_[14]*k,v[3]=_[3]*b+_[7]*w+_[11]*T+_[15]*k}else g[0]=g[1]=g[2]=0,g[3]=1;if(e[0]=E,e[1]=C,e[2]=L,function(t,e){t[0][0]=e[0],t[0][1]=e[1],t[0][2]=e[2],t[1][0]=e[4],t[1][1]=e[5],t[1][2]=e[6],t[2][0]=e[8],t[2][1]=e[9],t[2][2]=e[10]}(p,u),r[0]=c.length(p[0]),c.normalize(p[0],p[0]),i[0]=c.dot(p[0],p[1]),m(p[1],p[1],p[0],1,-i[0]),r[1]=c.length(p[1]),c.normalize(p[1],p[1]),i[0]/=r[1],i[1]=c.dot(p[0],p[2]),m(p[2],p[2],p[0],1,-i[1]),i[2]=c.dot(p[1],p[2]),m(p[2],p[2],p[1],1,-i[2]),r[2]=c.length(p[2]),c.normalize(p[2],p[2]),i[1]/=r[2],i[2]/=r[2],c.cross(d,p[1],p[2]),c.dot(p[0],d)<0)for(var P=0;P<3;P++)r[P]*=-1,p[P][0]*=-1,p[P][1]*=-1,p[P][2]*=-1;return y[0]=.5*Math.sqrt(Math.max(1+p[0][0]-p[1][1]-p[2][2],0)),y[1]=.5*Math.sqrt(Math.max(1-p[0][0]+p[1][1]-p[2][2],0)),y[2]=.5*Math.sqrt(Math.max(1-p[0][0]-p[1][1]+p[2][2],0)),y[3]=.5*Math.sqrt(Math.max(1+p[0][0]+p[1][1]+p[2][2],0)),p[2][1]>p[1][2]&&(y[0]=-y[0]),p[0][2]>p[2][0]&&(y[1]=-y[1]),p[1][0]>p[0][1]&&(y[2]=-y[2]),!0}},4335:function(t){t.exports=function(t,e){var r=e[15];if(0===r)return!1;for(var n=1/r,i=0;i<16;i++)t[i]=e[i]*n;return!0}},7442:function(t,e,r){var n=r(6658),i=r(7182),a=r(2652),o=r(9921),s=r(8648),l=h(),c=h(),u=h();function h(){return{translate:f(),scale:f(1),skew:f(),perspective:[0,0,0,1],quaternion:[0,0,0,1]}}function f(t){return[t||0,t||0,t||0]}t.exports=function(t,e,r,h){if(0===o(e)||0===o(r))return!1;var f=a(e,l.translate,l.scale,l.skew,l.perspective,l.quaternion),p=a(r,c.translate,c.scale,c.skew,c.perspective,c.quaternion);return!(!f||!p||(n(u.translate,l.translate,c.translate,h),n(u.skew,l.skew,c.skew,h),n(u.scale,l.scale,c.scale,h),n(u.perspective,l.perspective,c.perspective,h),s(u.quaternion,l.quaternion,c.quaternion,h),i(t,u.translate,u.scale,u.skew,u.perspective,u.quaternion),0))}},7182:function(t,e,r){var n={identity:r(7894),translate:r(7656),multiply:r(6760),create:r(6864),scale:r(2504),fromRotationTranslation:r(6743)},i=(n.create(),n.create());t.exports=function(t,e,r,a,o,s){return n.identity(t),n.fromRotationTranslation(t,s,e),t[3]=o[0],t[7]=o[1],t[11]=o[2],t[15]=o[3],n.identity(i),0!==a[2]&&(i[9]=a[2],n.multiply(t,t,i)),0!==a[1]&&(i[9]=0,i[8]=a[1],n.multiply(t,t,i)),0!==a[0]&&(i[8]=0,i[4]=a[0],n.multiply(t,t,i)),n.scale(t,t,r),t}},4192:function(t,e,r){\"use strict\";var n=r(2478),i=r(7442),a=r(7608),o=r(5567),s=r(2408),l=r(7089),c=r(6582),u=r(7656),h=(r(2504),r(3536)),f=[0,0,0];function p(t){this._components=t.slice(),this._time=[0],this.prevMatrix=t.slice(),this.nextMatrix=t.slice(),this.computedMatrix=t.slice(),this.computedInverse=t.slice(),this.computedEye=[0,0,0],this.computedUp=[0,0,0],this.computedCenter=[0,0,0],this.computedRadius=[0],this._limits=[-1/0,1/0]}t.exports=function(t){return new p((t=t||{}).matrix||[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])};var d=p.prototype;d.recalcMatrix=function(t){var e=this._time,r=n.le(e,t),o=this.computedMatrix;if(!(r<0)){var s=this._components;if(r===e.length-1)for(var l=16*r,c=0;c<16;++c)o[c]=s[l++];else{var u=e[r+1]-e[r],f=(l=16*r,this.prevMatrix),p=!0;for(c=0;c<16;++c)f[c]=s[l++];var d=this.nextMatrix;for(c=0;c<16;++c)d[c]=s[l++],p=p&&f[c]===d[c];if(u<1e-6||p)for(c=0;c<16;++c)o[c]=f[c];else i(o,f,d,(t-e[r])/u)}var m=this.computedUp;m[0]=o[1],m[1]=o[5],m[2]=o[9],h(m,m);var g=this.computedInverse;a(g,o);var y=this.computedEye,v=g[15];y[0]=g[12]/v,y[1]=g[13]/v,y[2]=g[14]/v;var x=this.computedCenter,_=Math.exp(this.computedRadius[0]);for(c=0;c<3;++c)x[c]=y[c]-o[2+4*c]*_}},d.idle=function(t){if(!(t<this.lastT())){for(var e=this._components,r=e.length-16,n=0;n<16;++n)e.push(e[r++]);this._time.push(t)}},d.flush=function(t){var e=n.gt(this._time,t)-2;e<0||(this._time.splice(0,e),this._components.splice(0,16*e))},d.lastT=function(){return this._time[this._time.length-1]},d.lookAt=function(t,e,r,n){this.recalcMatrix(t),e=e||this.computedEye,r=r||f,n=n||this.computedUp,this.setMatrix(t,c(this.computedMatrix,e,r,n));for(var i=0,a=0;a<3;++a)i+=Math.pow(r[a]-e[a],2);i=Math.log(Math.sqrt(i)),this.computedRadius[0]=i},d.rotate=function(t,e,r,n){this.recalcMatrix(t);var i=this.computedInverse;e&&s(i,i,e),r&&o(i,i,r),n&&l(i,i,n),this.setMatrix(t,a(this.computedMatrix,i))};var m=[0,0,0];d.pan=function(t,e,r,n){m[0]=-(e||0),m[1]=-(r||0),m[2]=-(n||0),this.recalcMatrix(t);var i=this.computedInverse;u(i,i,m),this.setMatrix(t,a(i,i))},d.translate=function(t,e,r,n){m[0]=e||0,m[1]=r||0,m[2]=n||0,this.recalcMatrix(t);var i=this.computedMatrix;u(i,i,m),this.setMatrix(t,i)},d.setMatrix=function(t,e){if(!(t<this.lastT())){this._time.push(t);for(var r=0;r<16;++r)this._components.push(e[r])}},d.setDistance=function(t,e){this.computedRadius[0]=e},d.setDistanceLimits=function(t,e){var r=this._limits;r[0]=t,r[1]=e},d.getDistanceLimits=function(t){var e=this._limits;return t?(t[0]=e[0],t[1]=e[1],t):e}},3090:function(t,e,r){\"use strict\";t.exports=function(t){var e=t.length;if(e<3){for(var r=new Array(e),i=0;i<e;++i)r[i]=i;return 2===e&&t[0][0]===t[1][0]&&t[0][1]===t[1][1]?[0]:r}var a=new Array(e);for(i=0;i<e;++i)a[i]=i;a.sort((function(e,r){return t[e][0]-t[r][0]||t[e][1]-t[r][1]}));var o=[a[0],a[1]],s=[a[0],a[1]];for(i=2;i<e;++i){for(var l=a[i],c=t[l],u=o.length;u>1&&n(t[o[u-2]],t[o[u-1]],c)<=0;)u-=1,o.pop();for(o.push(l),u=s.length;u>1&&n(t[s[u-2]],t[s[u-1]],c)>=0;)u-=1,s.pop();s.push(l)}r=new Array(s.length+o.length-2);for(var h=0,f=(i=0,o.length);i<f;++i)r[h++]=o[i];for(var p=s.length-2;p>0;--p)r[h++]=s[p];return r};var n=r(3250)[3]},351:function(t,e,r){\"use strict\";t.exports=function(t,e){e||(e=t,t=window);var r=0,i=0,a=0,o={shift:!1,alt:!1,control:!1,meta:!1},s=!1;function l(t){var e=!1;return\"altKey\"in t&&(e=e||t.altKey!==o.alt,o.alt=!!t.altKey),\"shiftKey\"in t&&(e=e||t.shiftKey!==o.shift,o.shift=!!t.shiftKey),\"ctrlKey\"in t&&(e=e||t.ctrlKey!==o.control,o.control=!!t.ctrlKey),\"metaKey\"in t&&(e=e||t.metaKey!==o.meta,o.meta=!!t.metaKey),e}function c(t,s){var c=n.x(s),u=n.y(s);\"buttons\"in s&&(t=0|s.buttons),(t!==r||c!==i||u!==a||l(s))&&(r=0|t,i=c||0,a=u||0,e&&e(r,i,a,o))}function u(t){c(0,t)}function h(){(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,e&&e(0,0,0,o))}function f(t){l(t)&&e&&e(r,i,a,o)}function p(t){0===n.buttons(t)?c(0,t):c(r,t)}function d(t){c(r|n.buttons(t),t)}function m(t){c(r&~n.buttons(t),t)}function g(){s||(s=!0,t.addEventListener(\"mousemove\",p),t.addEventListener(\"mousedown\",d),t.addEventListener(\"mouseup\",m),t.addEventListener(\"mouseleave\",u),t.addEventListener(\"mouseenter\",u),t.addEventListener(\"mouseout\",u),t.addEventListener(\"mouseover\",u),t.addEventListener(\"blur\",h),t.addEventListener(\"keyup\",f),t.addEventListener(\"keydown\",f),t.addEventListener(\"keypress\",f),t!==window&&(window.addEventListener(\"blur\",h),window.addEventListener(\"keyup\",f),window.addEventListener(\"keydown\",f),window.addEventListener(\"keypress\",f)))}g();var y={element:t};return Object.defineProperties(y,{enabled:{get:function(){return s},set:function(e){e?g():s&&(s=!1,t.removeEventListener(\"mousemove\",p),t.removeEventListener(\"mousedown\",d),t.removeEventListener(\"mouseup\",m),t.removeEventListener(\"mouseleave\",u),t.removeEventListener(\"mouseenter\",u),t.removeEventListener(\"mouseout\",u),t.removeEventListener(\"mouseover\",u),t.removeEventListener(\"blur\",h),t.removeEventListener(\"keyup\",f),t.removeEventListener(\"keydown\",f),t.removeEventListener(\"keypress\",f),t!==window&&(window.removeEventListener(\"blur\",h),window.removeEventListener(\"keyup\",f),window.removeEventListener(\"keydown\",f),window.removeEventListener(\"keypress\",f)))},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}}),y};var n=r(4687)},24:function(t){var e={left:0,top:0};t.exports=function(t,r,n){r=r||t.currentTarget||t.srcElement,Array.isArray(n)||(n=[0,0]);var i,a=t.clientX||0,o=t.clientY||0,s=(i=r)===window||i===document||i===document.body?e:i.getBoundingClientRect();return n[0]=a-s.left,n[1]=o-s.top,n}},4687:function(t,e){\"use strict\";function r(t){return t.target||t.srcElement||window}e.buttons=function(t){if(\"object\"==typeof t){if(\"buttons\"in t)return t.buttons;if(\"which\"in t){if(2===(e=t.which))return 4;if(3===e)return 2;if(e>0)return 1<<e-1}else if(\"button\"in t){var e;if(1===(e=t.button))return 4;if(2===e)return 2;if(e>=0)return 1<<e}}return 0},e.element=r,e.x=function(t){if(\"object\"==typeof t){if(\"offsetX\"in t)return t.offsetX;var e=r(t).getBoundingClientRect();return t.clientX-e.left}return 0},e.y=function(t){if(\"object\"==typeof t){if(\"offsetY\"in t)return t.offsetY;var e=r(t).getBoundingClientRect();return t.clientY-e.top}return 0}},8512:function(t,e,r){\"use strict\";var n=r(665);t.exports=function(t,e,r){\"function\"==typeof t&&(r=!!e,e=t,t=window);var i=n(\"ex\",t),a=function(t){r&&t.preventDefault();var n=t.deltaX||0,a=t.deltaY||0,o=t.deltaZ||0,s=1;switch(t.deltaMode){case 1:s=i;break;case 2:s=window.innerHeight}if(a*=s,o*=s,(n*=s)||a||o)return e(n,a,o,t)};return t.addEventListener(\"wheel\",a),a}},2640:function(t,e,r){\"use strict\";var n=r(1888);t.exports=function(t){function e(t){throw new Error(\"ndarray-extract-contour: \"+t)}\"object\"!=typeof t&&e(\"Must specify arguments\");var r=t.order;Array.isArray(r)||e(\"Must specify order\");var a=t.arrayArguments||1;a<1&&e(\"Must have at least one array argument\"),(t.scalarArguments||0)<0&&e(\"Scalar arg count must be > 0\"),\"function\"!=typeof t.vertex&&e(\"Must specify vertex creation function\"),\"function\"!=typeof t.cell&&e(\"Must specify cell creation function\"),\"function\"!=typeof t.phase&&e(\"Must specify phase function\");for(var o=t.getters||[],s=new Array(a),l=0;l<a;++l)o.indexOf(l)>=0?s[l]=!0:s[l]=!1;return function(t,e,r,a,o,s){var l=[s,o].join(\",\");return(0,i[l])(t,e,r,n.mallocUint32,n.freeUint32)}(t.vertex,t.cell,t.phase,0,r,s)};var i={\"false,0,1\":function(t,e,r,n,i){return function(a,o,s,l){var c,u=0|a.shape[0],h=0|a.shape[1],f=a.data,p=0|a.offset,d=0|a.stride[0],m=0|a.stride[1],g=p,y=0|-d,v=0,x=0|-m,_=0,b=-d-m|0,w=0,T=0|d,k=m-d*u|0,A=0,M=0,S=0,E=2*u|0,C=n(E),L=n(E),I=0,P=0,z=-1,O=-1,D=0,R=0|-u,F=0|u,B=0,N=-u-1|0,j=u-1|0,U=0,V=0,q=0;for(A=0;A<u;++A)C[I++]=r(f[g],o,s,l),g+=T;if(g+=k,h>0){if(M=1,C[I++]=r(f[g],o,s,l),g+=T,u>0)for(A=1,c=f[g],P=C[I]=r(c,o,s,l),D=C[I+z],B=C[I+R],U=C[I+N],P===D&&P===B&&P===U||(v=f[g+y],_=f[g+x],w=f[g+b],t(A,M,c,v,_,w,P,D,B,U,o,s,l),V=L[I]=S++),I+=1,g+=T,A=2;A<u;++A)c=f[g],P=C[I]=r(c,o,s,l),D=C[I+z],B=C[I+R],U=C[I+N],P===D&&P===B&&P===U||(v=f[g+y],_=f[g+x],w=f[g+b],t(A,M,c,v,_,w,P,D,B,U,o,s,l),V=L[I]=S++,U!==D&&e(L[I+z],V,w,v,U,D,o,s,l)),I+=1,g+=T;for(g+=k,I=0,q=z,z=O,O=q,q=R,R=F,F=q,q=N,N=j,j=q,M=2;M<h;++M){if(C[I++]=r(f[g],o,s,l),g+=T,u>0)for(A=1,c=f[g],P=C[I]=r(c,o,s,l),D=C[I+z],B=C[I+R],U=C[I+N],P===D&&P===B&&P===U||(v=f[g+y],_=f[g+x],w=f[g+b],t(A,M,c,v,_,w,P,D,B,U,o,s,l),V=L[I]=S++,U!==B&&e(L[I+R],V,_,w,B,U,o,s,l)),I+=1,g+=T,A=2;A<u;++A)c=f[g],P=C[I]=r(c,o,s,l),D=C[I+z],B=C[I+R],U=C[I+N],P===D&&P===B&&P===U||(v=f[g+y],_=f[g+x],w=f[g+b],t(A,M,c,v,_,w,P,D,B,U,o,s,l),V=L[I]=S++,U!==B&&e(L[I+R],V,_,w,B,U,o,s,l),U!==D&&e(L[I+z],V,w,v,U,D,o,s,l)),I+=1,g+=T;1&M&&(I=0),q=z,z=O,O=q,q=R,R=F,F=q,q=N,N=j,j=q,g+=k}}i(L),i(C)}},\"false,1,0\":function(t,e,r,n,i){return function(a,o,s,l){var c,u=0|a.shape[0],h=0|a.shape[1],f=a.data,p=0|a.offset,d=0|a.stride[0],m=0|a.stride[1],g=p,y=0|-d,v=0,x=0|-m,_=0,b=-d-m|0,w=0,T=0|m,k=d-m*h|0,A=0,M=0,S=0,E=2*h|0,C=n(E),L=n(E),I=0,P=0,z=-1,O=-1,D=0,R=0|-h,F=0|h,B=0,N=-h-1|0,j=h-1|0,U=0,V=0,q=0;for(M=0;M<h;++M)C[I++]=r(f[g],o,s,l),g+=T;if(g+=k,u>0){if(A=1,C[I++]=r(f[g],o,s,l),g+=T,h>0)for(M=1,c=f[g],P=C[I]=r(c,o,s,l),B=C[I+R],D=C[I+z],U=C[I+N],P===B&&P===D&&P===U||(v=f[g+y],_=f[g+x],w=f[g+b],t(A,M,c,v,_,w,P,B,D,U,o,s,l),V=L[I]=S++),I+=1,g+=T,M=2;M<h;++M)c=f[g],P=C[I]=r(c,o,s,l),B=C[I+R],D=C[I+z],U=C[I+N],P===B&&P===D&&P===U||(v=f[g+y],_=f[g+x],w=f[g+b],t(A,M,c,v,_,w,P,B,D,U,o,s,l),V=L[I]=S++,U!==D&&e(L[I+z],V,_,w,D,U,o,s,l)),I+=1,g+=T;for(g+=k,I=0,q=R,R=F,F=q,q=z,z=O,O=q,q=N,N=j,j=q,A=2;A<u;++A){if(C[I++]=r(f[g],o,s,l),g+=T,h>0)for(M=1,c=f[g],P=C[I]=r(c,o,s,l),B=C[I+R],D=C[I+z],U=C[I+N],P===B&&P===D&&P===U||(v=f[g+y],_=f[g+x],w=f[g+b],t(A,M,c,v,_,w,P,B,D,U,o,s,l),V=L[I]=S++,U!==B&&e(L[I+R],V,w,v,U,B,o,s,l)),I+=1,g+=T,M=2;M<h;++M)c=f[g],P=C[I]=r(c,o,s,l),B=C[I+R],D=C[I+z],U=C[I+N],P===B&&P===D&&P===U||(v=f[g+y],_=f[g+x],w=f[g+b],t(A,M,c,v,_,w,P,B,D,U,o,s,l),V=L[I]=S++,U!==D&&e(L[I+z],V,_,w,D,U,o,s,l),U!==B&&e(L[I+R],V,w,v,U,B,o,s,l)),I+=1,g+=T;1&A&&(I=0),q=R,R=F,F=q,q=z,z=O,O=q,q=N,N=j,j=q,g+=k}}i(L),i(C)}}}},6199:function(t,e,r){\"use strict\";var n=r(1338),i={zero:function(t,e,r,n){var i=t[0];n|=0;var a=0,o=r[0];for(a=0;a<i;++a)e[n]=0,n+=o},fdTemplate1:function(t,e,r,n,i,a,o){var s=t[0],l=r[0],c=-1*l,u=l;n|=0,o|=0;var h=0,f=l,p=a[0];for(h=0;h<s;++h)i[o]=.5*(e[n+c]-e[n+u]),n+=f,o+=p},fdTemplate2:function(t,e,r,n,i,a,o,s,l,c){var u=t[0],h=t[1],f=r[0],p=r[1],d=a[0],m=a[1],g=l[0],y=l[1],v=-1*f,x=f,_=-1*p,b=p;n|=0,o|=0,c|=0;var w=0,T=0,k=p,A=f-h*p,M=m,S=d-h*m,E=y,C=g-h*y;for(T=0;T<u;++T){for(w=0;w<h;++w)i[o]=.5*(e[n+v]-e[n+x]),s[c]=.5*(e[n+_]-e[n+b]),n+=k,o+=M,c+=E;n+=A,o+=S,c+=C}}},a={cdiff:function(t){var e={};return function(r,n,i){var a=r.dtype,o=r.order,s=n.dtype,l=n.order,c=i.dtype,u=i.order,h=[a,o.join(),s,l.join(),c,u.join()].join(),f=e[h];return f||(e[h]=f=t([a,o,s,l,c,u])),f(r.shape.slice(0),r.data,r.stride,0|r.offset,n.data,n.stride,0|n.offset,i.data,i.stride,0|i.offset)}},zero:function(t){var e={};return function(r){var n=r.dtype,i=r.order,a=[n,i.join()].join(),o=e[a];return o||(e[a]=o=t([n,i])),o(r.shape.slice(0),r.data,r.stride,0|r.offset)}},fdTemplate1:function(t){var e={};return function(r,n){var i=r.dtype,a=r.order,o=n.dtype,s=n.order,l=[i,a.join(),o,s.join()].join(),c=e[l];return c||(e[l]=c=t([i,a,o,s])),c(r.shape.slice(0),r.data,r.stride,0|r.offset,n.data,n.stride,0|n.offset)}},fdTemplate2:function(t){var e={};return function(r,n,i){var a=r.dtype,o=r.order,s=n.dtype,l=n.order,c=i.dtype,u=i.order,h=[a,o.join(),s,l.join(),c,u.join()].join(),f=e[h];return f||(e[h]=f=t([a,o,s,l,c,u])),f(r.shape.slice(0),r.data,r.stride,0|r.offset,n.data,n.stride,0|n.offset,i.data,i.stride,0|i.offset)}}};function o(t){return(0,a[t.funcName])(s.bind(void 0,t))}function s(t){return i[t.funcName]}function l(t){return o({funcName:t.funcName})}var c={},u={},h=l({funcName:\"cdiff\"}),f=l({funcName:\"zero\"});function p(t){return t in c?c[t]:c[t]=l({funcName:\"fdTemplate\"+t})}function d(t,e,r,n){return function(t,i){var a=i.shape.slice();return a[0]>2&&a[1]>2&&n(i.pick(-1,-1).lo(1,1).hi(a[0]-2,a[1]-2),t.pick(-1,-1,0).lo(1,1).hi(a[0]-2,a[1]-2),t.pick(-1,-1,1).lo(1,1).hi(a[0]-2,a[1]-2)),a[1]>2&&(r(i.pick(0,-1).lo(1).hi(a[1]-2),t.pick(0,-1,1).lo(1).hi(a[1]-2)),e(t.pick(0,-1,0).lo(1).hi(a[1]-2))),a[1]>2&&(r(i.pick(a[0]-1,-1).lo(1).hi(a[1]-2),t.pick(a[0]-1,-1,1).lo(1).hi(a[1]-2)),e(t.pick(a[0]-1,-1,0).lo(1).hi(a[1]-2))),a[0]>2&&(r(i.pick(-1,0).lo(1).hi(a[0]-2),t.pick(-1,0,0).lo(1).hi(a[0]-2)),e(t.pick(-1,0,1).lo(1).hi(a[0]-2))),a[0]>2&&(r(i.pick(-1,a[1]-1).lo(1).hi(a[0]-2),t.pick(-1,a[1]-1,0).lo(1).hi(a[0]-2)),e(t.pick(-1,a[1]-1,1).lo(1).hi(a[0]-2))),t.set(0,0,0,0),t.set(0,0,1,0),t.set(a[0]-1,0,0,0),t.set(a[0]-1,0,1,0),t.set(0,a[1]-1,0,0),t.set(0,a[1]-1,1,0),t.set(a[0]-1,a[1]-1,0,0),t.set(a[0]-1,a[1]-1,1,0),t}}t.exports=function(t,e,r){return Array.isArray(r)||(r=n(e.dimension,\"string\"==typeof r?r:\"clamp\")),0===e.size?t:0===e.dimension?(t.set(0),t):function(t){var e=t.join();if(a=u[e])return a;for(var r=t.length,n=[h,f],i=1;i<=r;++i)n.push(p(i));var a=d.apply(void 0,n);return u[e]=a,a}(r)(t,e)}},4317:function(t){\"use strict\";function e(t,e){var r=Math.floor(e),n=e-r,i=0<=r&&r<t.shape[0],a=0<=r+1&&r+1<t.shape[0];return(1-n)*(i?+t.get(r):0)+n*(a?+t.get(r+1):0)}function r(t,e,r){var n=Math.floor(e),i=e-n,a=0<=n&&n<t.shape[0],o=0<=n+1&&n+1<t.shape[0],s=Math.floor(r),l=r-s,c=0<=s&&s<t.shape[1],u=0<=s+1&&s+1<t.shape[1],h=a&&c?t.get(n,s):0,f=a&&u?t.get(n,s+1):0;return(1-l)*((1-i)*h+i*(o&&c?t.get(n+1,s):0))+l*((1-i)*f+i*(o&&u?t.get(n+1,s+1):0))}function n(t,e,r,n){var i=Math.floor(e),a=e-i,o=0<=i&&i<t.shape[0],s=0<=i+1&&i+1<t.shape[0],l=Math.floor(r),c=r-l,u=0<=l&&l<t.shape[1],h=0<=l+1&&l+1<t.shape[1],f=Math.floor(n),p=n-f,d=0<=f&&f<t.shape[2],m=0<=f+1&&f+1<t.shape[2],g=o&&u&&d?t.get(i,l,f):0,y=o&&h&&d?t.get(i,l+1,f):0,v=s&&u&&d?t.get(i+1,l,f):0,x=s&&h&&d?t.get(i+1,l+1,f):0,_=o&&u&&m?t.get(i,l,f+1):0,b=o&&h&&m?t.get(i,l+1,f+1):0;return(1-p)*((1-c)*((1-a)*g+a*v)+c*((1-a)*y+a*x))+p*((1-c)*((1-a)*_+a*(s&&u&&m?t.get(i+1,l,f+1):0))+c*((1-a)*b+a*(s&&h&&m?t.get(i+1,l+1,f+1):0)))}function i(t){var e,r,n=0|t.shape.length,i=new Array(n),a=new Array(n),o=new Array(n),s=new Array(n);for(e=0;e<n;++e)r=+arguments[e+1],i[e]=Math.floor(r),a[e]=r-i[e],o[e]=0<=i[e]&&i[e]<t.shape[e],s[e]=0<=i[e]+1&&i[e]+1<t.shape[e];var l,c,u,h=0;t:for(e=0;e<1<<n;++e){for(c=1,u=t.offset,l=0;l<n;++l)if(e&1<<l){if(!s[l])continue t;c*=a[l],u+=t.stride[l]*(i[l]+1)}else{if(!o[l])continue t;c*=1-a[l],u+=t.stride[l]*i[l]}h+=c*t.data[u]}return h}t.exports=function(t,a,o,s){switch(t.shape.length){case 0:return 0;case 1:return e(t,a);case 2:return r(t,a,o);case 3:return n(t,a,o,s);default:return i.apply(void 0,arguments)}},t.exports.d1=e,t.exports.d2=r,t.exports.d3=n},5298:function(t,e){\"use strict\";var r={\"float64,2,1,0\":function(){return function(t,e,r,n,i){var a=t[0],o=t[1],s=t[2],l=r[0],c=r[1],u=r[2];n|=0;var h=0,f=0,p=0,d=u,m=c-s*u,g=l-o*c;for(p=0;p<a;++p){for(f=0;f<o;++f){for(h=0;h<s;++h)e[n]/=i,n+=d;n+=m}n+=g}}},\"uint8,2,0,1,float64,2,1,0\":function(){return function(t,e,r,n,i,a,o,s){for(var l=t[0],c=t[1],u=t[2],h=r[0],f=r[1],p=r[2],d=a[0],m=a[1],g=a[2],y=n|=0,v=o|=0,x=0|t[0];x>0;){x<64?(l=x,x=0):(l=64,x-=64);for(var _=0|t[1];_>0;){_<64?(c=_,_=0):(c=64,_-=64),n=y+x*h+_*f,o=v+x*d+_*m;var b=0,w=0,T=0,k=p,A=h-u*p,M=f-l*h,S=g,E=d-u*g,C=m-l*d;for(T=0;T<c;++T){for(w=0;w<l;++w){for(b=0;b<u;++b)e[n]=i[o]*s,n+=k,o+=S;n+=A,o+=E}n+=M,o+=C}}}}},\"float32,1,0,float32,1,0\":function(){return function(t,e,r,n,i,a,o){var s=t[0],l=t[1],c=r[0],u=r[1],h=a[0],f=a[1];n|=0,o|=0;var p=0,d=0,m=u,g=c-l*u,y=f,v=h-l*f;for(d=0;d<s;++d){for(p=0;p<l;++p)e[n]=i[o],n+=m,o+=y;n+=g,o+=v}}},\"float32,1,0,float32,0,1\":function(){return function(t,e,r,n,i,a,o){for(var s=t[0],l=t[1],c=r[0],u=r[1],h=a[0],f=a[1],p=n|=0,d=o|=0,m=0|t[1];m>0;){m<64?(l=m,m=0):(l=64,m-=64);for(var g=0|t[0];g>0;){g<64?(s=g,g=0):(s=64,g-=64),n=p+m*u+g*c,o=d+m*f+g*h;var y=0,v=0,x=u,_=c-l*u,b=f,w=h-l*f;for(v=0;v<s;++v){for(y=0;y<l;++y)e[n]=i[o],n+=x,o+=b;n+=_,o+=w}}}}},\"uint8,2,0,1,uint8,1,2,0\":function(){return function(t,e,r,n,i,a,o){for(var s=t[0],l=t[1],c=t[2],u=r[0],h=r[1],f=r[2],p=a[0],d=a[1],m=a[2],g=n|=0,y=o|=0,v=0|t[2];v>0;){v<64?(c=v,v=0):(c=64,v-=64);for(var x=0|t[0];x>0;){x<64?(s=x,x=0):(s=64,x-=64);for(var _=0|t[1];_>0;){_<64?(l=_,_=0):(l=64,_-=64),n=g+v*f+x*u+_*h,o=y+v*m+x*p+_*d;var b=0,w=0,T=0,k=f,A=u-c*f,M=h-s*u,S=m,E=p-c*m,C=d-s*p;for(T=0;T<l;++T){for(w=0;w<s;++w){for(b=0;b<c;++b)e[n]=i[o],n+=k,o+=S;n+=A,o+=E}n+=M,o+=C}}}}}},\"uint8,2,0,1,array,2,0,1\":function(){return function(t,e,r,n,i,a,o){var s=t[0],l=t[1],c=t[2],u=r[0],h=r[1],f=r[2],p=a[0],d=a[1],m=a[2];n|=0,o|=0;var g=0,y=0,v=0,x=f,_=u-c*f,b=h-s*u,w=m,T=p-c*m,k=d-s*p;for(v=0;v<l;++v){for(y=0;y<s;++y){for(g=0;g<c;++g)e[n]=i[o],n+=x,o+=w;n+=_,o+=T}n+=b,o+=k}}}},n=function(t,e){var n=e.join(\",\");return(0,r[n])()},i={mul:function(t){var e={};return function(r,n,i){var a=r.dtype,o=r.order,s=n.dtype,l=n.order,c=i.dtype,u=i.order,h=[a,o.join(),s,l.join(),c,u.join()].join(),f=e[h];return f||(e[h]=f=t([a,o,s,l,c,u])),f(r.shape.slice(0),r.data,r.stride,0|r.offset,n.data,n.stride,0|n.offset,i.data,i.stride,0|i.offset)}},muls:function(t){var e={};return function(r,n,i){var a=r.dtype,o=r.order,s=n.dtype,l=n.order,c=[a,o.join(),s,l.join()].join(),u=e[c];return u||(e[c]=u=t([a,o,s,l])),u(r.shape.slice(0),r.data,r.stride,0|r.offset,n.data,n.stride,0|n.offset,i)}},mulseq:function(t){var e={};return function(r,n){var i=r.dtype,a=r.order,o=[i,a.join()].join(),s=e[o];return s||(e[o]=s=t([i,a])),s(r.shape.slice(0),r.data,r.stride,0|r.offset,n)}},div:function(t){var e={};return function(r,n,i){var a=r.dtype,o=r.order,s=n.dtype,l=n.order,c=i.dtype,u=i.order,h=[a,o.join(),s,l.join(),c,u.join()].join(),f=e[h];return f||(e[h]=f=t([a,o,s,l,c,u])),f(r.shape.slice(0),r.data,r.stride,0|r.offset,n.data,n.stride,0|n.offset,i.data,i.stride,0|i.offset)}},divs:function(t){var e={};return function(r,n,i){var a=r.dtype,o=r.order,s=n.dtype,l=n.order,c=[a,o.join(),s,l.join()].join(),u=e[c];return u||(e[c]=u=t([a,o,s,l])),u(r.shape.slice(0),r.data,r.stride,0|r.offset,n.data,n.stride,0|n.offset,i)}},divseq:function(t){var e={};return function(r,n){var i=r.dtype,a=r.order,o=[i,a.join()].join(),s=e[o];return s||(e[o]=s=t([i,a])),s(r.shape.slice(0),r.data,r.stride,0|r.offset,n)}},assign:function(t){var e={};return function(r,n){var i=r.dtype,a=r.order,o=n.dtype,s=n.order,l=[i,a.join(),o,s.join()].join(),c=e[l];return c||(e[l]=c=t([i,a,o,s])),c(r.shape.slice(0),r.data,r.stride,0|r.offset,n.data,n.stride,0|n.offset)}}};function a(t){return e={funcName:t.funcName},(0,i[e.funcName])(n.bind(void 0,e));var e}var o={mul:\"*\",div:\"/\"};!function(){for(var t in o)e[t]=a({funcName:t}),e[t+\"s\"]=a({funcName:t+\"s\"}),e[t+\"seq\"]=a({funcName:t+\"seq\"})}(),e.assign=a({funcName:\"assign\"})},9994:function(t,e,r){\"use strict\";var n=r(9618),i=r(8277);t.exports=function(t,e){for(var r=[],a=t,o=1;Array.isArray(a);)r.push(a.length),o*=a.length,a=a[0];return 0===r.length?n():(e||(e=n(new Float64Array(o),r)),i(e,t),e)}},8277:function(t){\"use strict\";t.exports=function(t){var e={};return function(r,n){var i=r.dtype,a=r.order,o=[i,a.join()].join(),s=e[o];return s||(e[o]=s=t([i,a])),s(r.shape.slice(0),r.data,r.stride,0|r.offset,n)}}(function(){return function(t,e,r,n,i){var a=t[0],o=t[1],s=t[2],l=r[0],c=r[1],u=r[2],h=[0,0,0];n|=0;var f=0,p=0,d=0,m=u,g=c-s*u,y=l-o*c;for(d=0;d<a;++d){for(p=0;p<o;++p){for(f=0;f<s;++f){var v,x=i;for(v=0;v<h.length-1;++v)x=x[h[v]];e[n]=x[h[h.length-1]],n+=m,++h[2]}n+=g,h[2]-=s,++h[1]}n+=y,h[1]-=o,++h[0]}}}.bind(void 0,{funcName:\"convert\"}))},7640:function(t,e,r){\"use strict\";var n=r(1888);function i(t){return\"uint32\"===t?[n.mallocUint32,n.freeUint32]:null}var a={\"uint32,1,0\":function(t,e){return function(r,n,i,a,o,s,l,c,u,h,f){var p,d,m,g,y,v,x,_,b=r*o+a,w=t(c);for(p=r+1;p<=n;++p){for(d=p,m=b+=o,y=0,v=b,g=0;g<c;++g)w[y++]=i[v],v+=u;t:for(;d-- >r;){y=0,v=m-o;e:for(g=0;g<c;++g){if((x=i[v])<(_=w[y]))break t;if(x>_)break e;v+=h,y+=f}for(y=m,v=m-o,g=0;g<c;++g)i[y]=i[v],y+=u,v+=u;m-=o}for(y=m,v=0,g=0;g<c;++g)i[y]=w[v++],y+=u}e(w)}}},o={\"uint32,1,0\":function(t,e,r){return function n(i,a,o,s,l,c,u,h,f,p,d){var m,g,y,v,x,_,b,w,T,k,A,M,S,E,C,L,I,P,z,O,D,R,F,B,N,j=(a-i+1)/6|0,U=i+j,V=a-j,q=i+a>>1,H=q-j,G=q+j,Z=U,W=H,Y=q,X=G,$=V,J=i+1,K=a-1,Q=!0,tt=0,et=0,rt=0,nt=h,it=e(nt),at=e(nt);A=l*Z,M=l*W,N=s;t:for(k=0;k<h;++k){if(w=M+N,(rt=o[b=A+N]-o[w])>0){g=Z,Z=W,W=g;break t}if(rt<0)break t;N+=p}A=l*X,M=l*$,N=s;t:for(k=0;k<h;++k){if(w=M+N,(rt=o[b=A+N]-o[w])>0){g=X,X=$,$=g;break t}if(rt<0)break t;N+=p}A=l*Z,M=l*Y,N=s;t:for(k=0;k<h;++k){if(w=M+N,(rt=o[b=A+N]-o[w])>0){g=Z,Z=Y,Y=g;break t}if(rt<0)break t;N+=p}A=l*W,M=l*Y,N=s;t:for(k=0;k<h;++k){if(w=M+N,(rt=o[b=A+N]-o[w])>0){g=W,W=Y,Y=g;break t}if(rt<0)break t;N+=p}A=l*Z,M=l*X,N=s;t:for(k=0;k<h;++k){if(w=M+N,(rt=o[b=A+N]-o[w])>0){g=Z,Z=X,X=g;break t}if(rt<0)break t;N+=p}A=l*Y,M=l*X,N=s;t:for(k=0;k<h;++k){if(w=M+N,(rt=o[b=A+N]-o[w])>0){g=Y,Y=X,X=g;break t}if(rt<0)break t;N+=p}A=l*W,M=l*$,N=s;t:for(k=0;k<h;++k){if(w=M+N,(rt=o[b=A+N]-o[w])>0){g=W,W=$,$=g;break t}if(rt<0)break t;N+=p}A=l*W,M=l*Y,N=s;t:for(k=0;k<h;++k){if(w=M+N,(rt=o[b=A+N]-o[w])>0){g=W,W=Y,Y=g;break t}if(rt<0)break t;N+=p}A=l*X,M=l*$,N=s;t:for(k=0;k<h;++k){if(w=M+N,(rt=o[b=A+N]-o[w])>0){g=X,X=$,$=g;break t}if(rt<0)break t;N+=p}for(A=l*Z,M=l*W,S=l*Y,E=l*X,C=l*$,L=l*U,I=l*q,P=l*V,B=0,N=s,k=0;k<h;++k)b=A+N,w=M+N,T=S+N,z=E+N,O=C+N,D=L+N,R=I+N,F=P+N,it[B]=o[w],at[B]=o[z],Q=Q&&it[B]===at[B],y=o[b],v=o[T],x=o[O],o[D]=y,o[R]=v,o[F]=x,++B,N+=f;for(A=l*H,M=l*i,N=s,k=0;k<h;++k)w=M+N,o[b=A+N]=o[w],N+=f;for(A=l*G,M=l*a,N=s,k=0;k<h;++k)w=M+N,o[b=A+N]=o[w],N+=f;if(Q)for(_=J;_<=K;++_){for(b=s+_*l,B=0,k=0;k<h&&0==(rt=o[b]-it[B]);++k)B+=d,b+=p;if(0!==rt)if(rt<0){if(_!==J)for(A=l*_,M=l*J,N=s,k=0;k<h;++k)w=M+N,m=o[b=A+N],o[b]=o[w],o[w]=m,N+=f;++J}else for(;;){for(b=s+K*l,B=0,k=0;k<h&&0==(rt=o[b]-it[B]);++k)B+=d,b+=p;if(!(rt>0)){if(rt<0){for(A=l*_,M=l*J,S=l*K,N=s,k=0;k<h;++k)w=M+N,T=S+N,m=o[b=A+N],o[b]=o[w],o[w]=o[T],o[T]=m,N+=f;++J,--K;break}for(A=l*_,M=l*K,N=s,k=0;k<h;++k)w=M+N,m=o[b=A+N],o[b]=o[w],o[w]=m,N+=f;--K;break}K--}}else for(_=J;_<=K;++_){for(b=s+_*l,B=0,k=0;k<h&&0==(tt=o[b]-it[B]);++k)B+=d,b+=p;if(tt<0){if(_!==J)for(A=l*_,M=l*J,N=s,k=0;k<h;++k)w=M+N,m=o[b=A+N],o[b]=o[w],o[w]=m,N+=f;++J}else{for(b=s+_*l,B=0,k=0;k<h&&0==(et=o[b]-at[B]);++k)B+=d,b+=p;if(et>0)for(;;){for(b=s+K*l,B=0,k=0;k<h&&0==(rt=o[b]-at[B]);++k)B+=d,b+=p;if(!(rt>0)){for(b=s+K*l,B=0,k=0;k<h&&0==(rt=o[b]-it[B]);++k)B+=d,b+=p;if(rt<0){for(A=l*_,M=l*J,S=l*K,N=s,k=0;k<h;++k)w=M+N,T=S+N,m=o[b=A+N],o[b]=o[w],o[w]=o[T],o[T]=m,N+=f;++J,--K}else{for(A=l*_,M=l*K,N=s,k=0;k<h;++k)w=M+N,m=o[b=A+N],o[b]=o[w],o[w]=m,N+=f;--K}break}if(--K<_)break}}}for(A=l*i,M=l*(J-1),B=0,N=s,k=0;k<h;++k)w=M+N,o[b=A+N]=o[w],o[w]=it[B],++B,N+=f;for(A=l*a,M=l*(K+1),B=0,N=s,k=0;k<h;++k)w=M+N,o[b=A+N]=o[w],o[w]=at[B],++B,N+=f;if(J-2-i<=32?t(i,J-2,o,s,l,c,u,h,f,p,d):n(i,J-2,o,s,l,c,u,h,f,p,d),a-(K+2)<=32?t(K+2,a,o,s,l,c,u,h,f,p,d):n(K+2,a,o,s,l,c,u,h,f,p,d),Q)return r(it),void r(at);if(J<U&&K>V){t:for(;;){for(b=s+J*l,B=0,N=s,k=0;k<h;++k){if(o[b]!==it[B])break t;++B,b+=f}++J}t:for(;;){for(b=s+K*l,B=0,N=s,k=0;k<h;++k){if(o[b]!==at[B])break t;++B,b+=f}--K}for(_=J;_<=K;++_){for(b=s+_*l,B=0,k=0;k<h&&0==(tt=o[b]-it[B]);++k)B+=d,b+=p;if(0===tt){if(_!==J)for(A=l*_,M=l*J,N=s,k=0;k<h;++k)w=M+N,m=o[b=A+N],o[b]=o[w],o[w]=m,N+=f;++J}else{for(b=s+_*l,B=0,k=0;k<h&&0==(et=o[b]-at[B]);++k)B+=d,b+=p;if(0===et)for(;;){for(b=s+K*l,B=0,k=0;k<h&&0==(rt=o[b]-at[B]);++k)B+=d,b+=p;if(0!==rt){for(b=s+K*l,B=0,k=0;k<h&&0==(rt=o[b]-it[B]);++k)B+=d,b+=p;if(rt<0){for(A=l*_,M=l*J,S=l*K,N=s,k=0;k<h;++k)w=M+N,T=S+N,m=o[b=A+N],o[b]=o[w],o[w]=o[T],o[T]=m,N+=f;++J,--K}else{for(A=l*_,M=l*K,N=s,k=0;k<h;++k)w=M+N,m=o[b=A+N],o[b]=o[w],o[w]=m,N+=f;--K}break}if(--K<_)break}}}}r(it),r(at),K-J<=32?t(J,K,o,s,l,c,u,h,f,p,d):n(J,K,o,s,l,c,u,h,f,p,d)}}},s={\"uint32,1,0\":function(t,e){return function(r){var n=r.data,i=0|r.offset,a=r.shape,o=r.stride,s=0|o[0],l=0|a[0],c=0|o[1],u=0|a[1],h=c,f=c;l<=32?t(0,l-1,n,i,s,c,l,u,h,f,1):e(0,l-1,n,i,s,c,l,u,h,f,1)}}};t.exports=function(t,e){var r=[e,t].join(\",\"),n=s[r],l=function(t,e){var r=i(e),n=[e,t].join(\",\"),o=a[n];return r?o(r[0],r[1]):o()}(t,e),c=function(t,e,r){var n=i(e),a=[e,t].join(\",\"),s=o[a];return t.length>1&&n?s(r,n[0],n[1]):s(r)}(t,e,l);return n(l,c)}},446:function(t,e,r){\"use strict\";var n=r(7640),i={};t.exports=function(t){var e=t.order,r=t.dtype,a=[e,r].join(\":\"),o=i[a];return o||(i[a]=o=n(e,r)),o(t),t}},9618:function(t,e,r){var n=r(7163),i=\"undefined\"!=typeof Float64Array;function a(t,e){return t[0]-e[0]}function o(){var t,e=this.stride,r=new Array(e.length);for(t=0;t<r.length;++t)r[t]=[Math.abs(e[t]),t];r.sort(a);var n=new Array(r.length);for(t=0;t<n.length;++t)n[t]=r[t][1];return n}var s={T:function(t){function e(t){this.data=t}var r=e.prototype;return r.dtype=t,r.index=function(){return-1},r.size=0,r.dimension=-1,r.shape=r.stride=r.order=[],r.lo=r.hi=r.transpose=r.step=function(){return new e(this.data)},r.get=r.set=function(){},r.pick=function(){return null},function(t){return new e(t)}},0:function(t,e){function r(t,e){this.data=t,this.offset=e}var n=r.prototype;return n.dtype=t,n.index=function(){return this.offset},n.dimension=0,n.size=1,n.shape=n.stride=n.order=[],n.lo=n.hi=n.transpose=n.step=function(){return new r(this.data,this.offset)},n.pick=function(){return e(this.data)},n.valueOf=n.get=function(){return\"generic\"===t?this.data.get(this.offset):this.data[this.offset]},n.set=function(e){return\"generic\"===t?this.data.set(this.offset,e):this.data[this.offset]=e},function(t,e,n,i){return new r(t,i)}},1:function(t,e,r){function n(t,e,r,n){this.data=t,this.shape=[e],this.stride=[r],this.offset=0|n}var i=n.prototype;return i.dtype=t,i.dimension=1,Object.defineProperty(i,\"size\",{get:function(){return this.shape[0]}}),i.order=[0],i.set=function(e,r){return\"generic\"===t?this.data.set(this.offset+this.stride[0]*e,r):this.data[this.offset+this.stride[0]*e]=r},i.get=function(e){return\"generic\"===t?this.data.get(this.offset+this.stride[0]*e):this.data[this.offset+this.stride[0]*e]},i.index=function(t){return this.offset+this.stride[0]*t},i.hi=function(t){return new n(this.data,\"number\"!=typeof t||t<0?this.shape[0]:0|t,this.stride[0],this.offset)},i.lo=function(t){var e=this.offset,r=0,i=this.shape[0],a=this.stride[0];return\"number\"==typeof t&&t>=0&&(e+=a*(r=0|t),i-=r),new n(this.data,i,a,e)},i.step=function(t){var e=this.shape[0],r=this.stride[0],i=this.offset,a=0,o=Math.ceil;return\"number\"==typeof t&&((a=0|t)<0?(i+=r*(e-1),e=o(-e/a)):e=o(e/a),r*=a),new n(this.data,e,r,i)},i.transpose=function(t){t=void 0===t?0:0|t;var e=this.shape,r=this.stride;return new n(this.data,e[t],r[t],this.offset)},i.pick=function(t){var r=[],n=[],i=this.offset;return\"number\"==typeof t&&t>=0?i=i+this.stride[0]*t|0:(r.push(this.shape[0]),n.push(this.stride[0])),(0,e[r.length+1])(this.data,r,n,i)},function(t,e,r,i){return new n(t,e[0],r[0],i)}},2:function(t,e,r){function n(t,e,r,n,i,a){this.data=t,this.shape=[e,r],this.stride=[n,i],this.offset=0|a}var i=n.prototype;return i.dtype=t,i.dimension=2,Object.defineProperty(i,\"size\",{get:function(){return this.shape[0]*this.shape[1]}}),Object.defineProperty(i,\"order\",{get:function(){return Math.abs(this.stride[0])>Math.abs(this.stride[1])?[1,0]:[0,1]}}),i.set=function(e,r,n){return\"generic\"===t?this.data.set(this.offset+this.stride[0]*e+this.stride[1]*r,n):this.data[this.offset+this.stride[0]*e+this.stride[1]*r]=n},i.get=function(e,r){return\"generic\"===t?this.data.get(this.offset+this.stride[0]*e+this.stride[1]*r):this.data[this.offset+this.stride[0]*e+this.stride[1]*r]},i.index=function(t,e){return this.offset+this.stride[0]*t+this.stride[1]*e},i.hi=function(t,e){return new n(this.data,\"number\"!=typeof t||t<0?this.shape[0]:0|t,\"number\"!=typeof e||e<0?this.shape[1]:0|e,this.stride[0],this.stride[1],this.offset)},i.lo=function(t,e){var r=this.offset,i=0,a=this.shape[0],o=this.shape[1],s=this.stride[0],l=this.stride[1];return\"number\"==typeof t&&t>=0&&(r+=s*(i=0|t),a-=i),\"number\"==typeof e&&e>=0&&(r+=l*(i=0|e),o-=i),new n(this.data,a,o,s,l,r)},i.step=function(t,e){var r=this.shape[0],i=this.shape[1],a=this.stride[0],o=this.stride[1],s=this.offset,l=0,c=Math.ceil;return\"number\"==typeof t&&((l=0|t)<0?(s+=a*(r-1),r=c(-r/l)):r=c(r/l),a*=l),\"number\"==typeof e&&((l=0|e)<0?(s+=o*(i-1),i=c(-i/l)):i=c(i/l),o*=l),new n(this.data,r,i,a,o,s)},i.transpose=function(t,e){t=void 0===t?0:0|t,e=void 0===e?1:0|e;var r=this.shape,i=this.stride;return new n(this.data,r[t],r[e],i[t],i[e],this.offset)},i.pick=function(t,r){var n=[],i=[],a=this.offset;return\"number\"==typeof t&&t>=0?a=a+this.stride[0]*t|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,e[n.length+1])(this.data,n,i,a)},function(t,e,r,i){return new n(t,e[0],e[1],r[0],r[1],i)}},3:function(t,e,r){function n(t,e,r,n,i,a,o,s){this.data=t,this.shape=[e,r,n],this.stride=[i,a,o],this.offset=0|s}var i=n.prototype;return i.dtype=t,i.dimension=3,Object.defineProperty(i,\"size\",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]}}),Object.defineProperty(i,\"order\",{get:function(){var t=Math.abs(this.stride[0]),e=Math.abs(this.stride[1]),r=Math.abs(this.stride[2]);return t>e?e>r?[2,1,0]:t>r?[1,2,0]:[1,0,2]:t>r?[2,0,1]:r>e?[0,1,2]:[0,2,1]}}),i.set=function(e,r,n,i){return\"generic\"===t?this.data.set(this.offset+this.stride[0]*e+this.stride[1]*r+this.stride[2]*n,i):this.data[this.offset+this.stride[0]*e+this.stride[1]*r+this.stride[2]*n]=i},i.get=function(e,r,n){return\"generic\"===t?this.data.get(this.offset+this.stride[0]*e+this.stride[1]*r+this.stride[2]*n):this.data[this.offset+this.stride[0]*e+this.stride[1]*r+this.stride[2]*n]},i.index=function(t,e,r){return this.offset+this.stride[0]*t+this.stride[1]*e+this.stride[2]*r},i.hi=function(t,e,r){return new n(this.data,\"number\"!=typeof t||t<0?this.shape[0]:0|t,\"number\"!=typeof e||e<0?this.shape[1]:0|e,\"number\"!=typeof r||r<0?this.shape[2]:0|r,this.stride[0],this.stride[1],this.stride[2],this.offset)},i.lo=function(t,e,r){var i=this.offset,a=0,o=this.shape[0],s=this.shape[1],l=this.shape[2],c=this.stride[0],u=this.stride[1],h=this.stride[2];return\"number\"==typeof t&&t>=0&&(i+=c*(a=0|t),o-=a),\"number\"==typeof e&&e>=0&&(i+=u*(a=0|e),s-=a),\"number\"==typeof r&&r>=0&&(i+=h*(a=0|r),l-=a),new n(this.data,o,s,l,c,u,h,i)},i.step=function(t,e,r){var i=this.shape[0],a=this.shape[1],o=this.shape[2],s=this.stride[0],l=this.stride[1],c=this.stride[2],u=this.offset,h=0,f=Math.ceil;return\"number\"==typeof t&&((h=0|t)<0?(u+=s*(i-1),i=f(-i/h)):i=f(i/h),s*=h),\"number\"==typeof e&&((h=0|e)<0?(u+=l*(a-1),a=f(-a/h)):a=f(a/h),l*=h),\"number\"==typeof r&&((h=0|r)<0?(u+=c*(o-1),o=f(-o/h)):o=f(o/h),c*=h),new n(this.data,i,a,o,s,l,c,u)},i.transpose=function(t,e,r){t=void 0===t?0:0|t,e=void 0===e?1:0|e,r=void 0===r?2:0|r;var i=this.shape,a=this.stride;return new n(this.data,i[t],i[e],i[r],a[t],a[e],a[r],this.offset)},i.pick=function(t,r,n){var i=[],a=[],o=this.offset;return\"number\"==typeof t&&t>=0?o=o+this.stride[0]*t|0:(i.push(this.shape[0]),a.push(this.stride[0])),\"number\"==typeof 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,e[i.length+1])(this.data,i,a,o)},function(t,e,r,i){return new n(t,e[0],e[1],e[2],r[0],r[1],r[2],i)}},4:function(t,e,r){function n(t,e,r,n,i,a,o,s,l,c){this.data=t,this.shape=[e,r,n,i],this.stride=[a,o,s,l],this.offset=0|c}var i=n.prototype;return i.dtype=t,i.dimension=4,Object.defineProperty(i,\"size\",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]}}),Object.defineProperty(i,\"order\",{get:r}),i.set=function(e,r,n,i,a){return\"generic\"===t?this.data.set(this.offset+this.stride[0]*e+this.stride[1]*r+this.stride[2]*n+this.stride[3]*i,a):this.data[this.offset+this.stride[0]*e+this.stride[1]*r+this.stride[2]*n+this.stride[3]*i]=a},i.get=function(e,r,n,i){return\"generic\"===t?this.data.get(this.offset+this.stride[0]*e+this.stride[1]*r+this.stride[2]*n+this.stride[3]*i):this.data[this.offset+this.stride[0]*e+this.stride[1]*r+this.stride[2]*n+this.stride[3]*i]},i.index=function(t,e,r,n){return this.offset+this.stride[0]*t+this.stride[1]*e+this.stride[2]*r+this.stride[3]*n},i.hi=function(t,e,r,i){return new n(this.data,\"number\"!=typeof t||t<0?this.shape[0]:0|t,\"number\"!=typeof e||e<0?this.shape[1]:0|e,\"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(t,e,r,i){var a=this.offset,o=0,s=this.shape[0],l=this.shape[1],c=this.shape[2],u=this.shape[3],h=this.stride[0],f=this.stride[1],p=this.stride[2],d=this.stride[3];return\"number\"==typeof t&&t>=0&&(a+=h*(o=0|t),s-=o),\"number\"==typeof e&&e>=0&&(a+=f*(o=0|e),l-=o),\"number\"==typeof r&&r>=0&&(a+=p*(o=0|r),c-=o),\"number\"==typeof i&&i>=0&&(a+=d*(o=0|i),u-=o),new n(this.data,s,l,c,u,h,f,p,d,a)},i.step=function(t,e,r,i){var a=this.shape[0],o=this.shape[1],s=this.shape[2],l=this.shape[3],c=this.stride[0],u=this.stride[1],h=this.stride[2],f=this.stride[3],p=this.offset,d=0,m=Math.ceil;return\"number\"==typeof t&&((d=0|t)<0?(p+=c*(a-1),a=m(-a/d)):a=m(a/d),c*=d),\"number\"==typeof e&&((d=0|e)<0?(p+=u*(o-1),o=m(-o/d)):o=m(o/d),u*=d),\"number\"==typeof r&&((d=0|r)<0?(p+=h*(s-1),s=m(-s/d)):s=m(s/d),h*=d),\"number\"==typeof i&&((d=0|i)<0?(p+=f*(l-1),l=m(-l/d)):l=m(l/d),f*=d),new n(this.data,a,o,s,l,c,u,h,f,p)},i.transpose=function(t,e,r,i){t=void 0===t?0:0|t,e=void 0===e?1:0|e,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[t],a[e],a[r],a[i],o[t],o[e],o[r],o[i],this.offset)},i.pick=function(t,r,n,i){var a=[],o=[],s=this.offset;return\"number\"==typeof t&&t>=0?s=s+this.stride[0]*t|0:(a.push(this.shape[0]),o.push(this.stride[0])),\"number\"==typeof 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,e[a.length+1])(this.data,a,o,s)},function(t,e,r,i){return new n(t,e[0],e[1],e[2],e[3],r[0],r[1],r[2],r[3],i)}},5:function(t,e,r){function n(t,e,r,n,i,a,o,s,l,c,u,h){this.data=t,this.shape=[e,r,n,i,a],this.stride=[o,s,l,c,u],this.offset=0|h}var i=n.prototype;return i.dtype=t,i.dimension=5,Object.defineProperty(i,\"size\",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]*this.shape[4]}}),Object.defineProperty(i,\"order\",{get:r}),i.set=function(e,r,n,i,a,o){return\"generic\"===t?this.data.set(this.offset+this.stride[0]*e+this.stride[1]*r+this.stride[2]*n+this.stride[3]*i+this.stride[4]*a,o):this.data[this.offset+this.stride[0]*e+this.stride[1]*r+this.stride[2]*n+this.stride[3]*i+this.stride[4]*a]=o},i.get=function(e,r,n,i,a){return\"generic\"===t?this.data.get(this.offset+this.stride[0]*e+this.stride[1]*r+this.stride[2]*n+this.stride[3]*i+this.stride[4]*a):this.data[this.offset+this.stride[0]*e+this.stride[1]*r+this.stride[2]*n+this.stride[3]*i+this.stride[4]*a]},i.index=function(t,e,r,n,i){return this.offset+this.stride[0]*t+this.stride[1]*e+this.stride[2]*r+this.stride[3]*n+this.stride[4]*i},i.hi=function(t,e,r,i,a){return new n(this.data,\"number\"!=typeof t||t<0?this.shape[0]:0|t,\"number\"!=typeof e||e<0?this.shape[1]:0|e,\"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(t,e,r,i,a){var o=this.offset,s=0,l=this.shape[0],c=this.shape[1],u=this.shape[2],h=this.shape[3],f=this.shape[4],p=this.stride[0],d=this.stride[1],m=this.stride[2],g=this.stride[3],y=this.stride[4];return\"number\"==typeof t&&t>=0&&(o+=p*(s=0|t),l-=s),\"number\"==typeof e&&e>=0&&(o+=d*(s=0|e),c-=s),\"number\"==typeof r&&r>=0&&(o+=m*(s=0|r),u-=s),\"number\"==typeof i&&i>=0&&(o+=g*(s=0|i),h-=s),\"number\"==typeof a&&a>=0&&(o+=y*(s=0|a),f-=s),new n(this.data,l,c,u,h,f,p,d,m,g,y,o)},i.step=function(t,e,r,i,a){var o=this.shape[0],s=this.shape[1],l=this.shape[2],c=this.shape[3],u=this.shape[4],h=this.stride[0],f=this.stride[1],p=this.stride[2],d=this.stride[3],m=this.stride[4],g=this.offset,y=0,v=Math.ceil;return\"number\"==typeof t&&((y=0|t)<0?(g+=h*(o-1),o=v(-o/y)):o=v(o/y),h*=y),\"number\"==typeof e&&((y=0|e)<0?(g+=f*(s-1),s=v(-s/y)):s=v(s/y),f*=y),\"number\"==typeof r&&((y=0|r)<0?(g+=p*(l-1),l=v(-l/y)):l=v(l/y),p*=y),\"number\"==typeof i&&((y=0|i)<0?(g+=d*(c-1),c=v(-c/y)):c=v(c/y),d*=y),\"number\"==typeof a&&((y=0|a)<0?(g+=m*(u-1),u=v(-u/y)):u=v(u/y),m*=y),new n(this.data,o,s,l,c,u,h,f,p,d,m,g)},i.transpose=function(t,e,r,i,a){t=void 0===t?0:0|t,e=void 0===e?1:0|e,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[t],o[e],o[r],o[i],o[a],s[t],s[e],s[r],s[i],s[a],this.offset)},i.pick=function(t,r,n,i,a){var o=[],s=[],l=this.offset;return\"number\"==typeof t&&t>=0?l=l+this.stride[0]*t|0:(o.push(this.shape[0]),s.push(this.stride[0])),\"number\"==typeof 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,e[o.length+1])(this.data,o,s,l)},function(t,e,r,i){return new n(t,e[0],e[1],e[2],e[3],e[4],r[0],r[1],r[2],r[3],r[4],i)}}};function l(t,e){var r=-1===e?\"T\":String(e),n=s[r];return-1===e?n(t):0===e?n(t,c[t][0]):n(t,c[t],o)}var c={generic:[],buffer:[],array:[],float32:[],float64:[],int8:[],int16:[],int32:[],uint8_clamped:[],uint8:[],uint16:[],uint32:[],bigint64:[],biguint64:[]};t.exports=function(t,e,r,a){if(void 0===t)return(0,c.array[0])([]);\"number\"==typeof t&&(t=[t]),void 0===e&&(e=[t.length]);var o=e.length;if(void 0===r){r=new Array(o);for(var s=o-1,u=1;s>=0;--s)r[s]=u,u*=e[s]}if(void 0===a)for(a=0,s=0;s<o;++s)r[s]<0&&(a-=(e[s]-1)*r[s]);for(var h=function(t){if(n(t))return\"buffer\";if(i)switch(Object.prototype.toString.call(t)){case\"[object Float64Array]\":return\"float64\";case\"[object Float32Array]\":return\"float32\";case\"[object Int8Array]\":return\"int8\";case\"[object Int16Array]\":return\"int16\";case\"[object Int32Array]\":return\"int32\";case\"[object Uint8ClampedArray]\":return\"uint8_clamped\";case\"[object Uint8Array]\":return\"uint8\";case\"[object Uint16Array]\":return\"uint16\";case\"[object Uint32Array]\":return\"uint32\";case\"[object BigInt64Array]\":return\"bigint64\";case\"[object BigUint64Array]\":return\"biguint64\"}return Array.isArray(t)?\"array\":\"generic\"}(t),f=c[h];f.length<=o+1;)f.push(l(h,f.length-1));return(0,f[o+1])(t,e,r,a)}},1278:function(t,e,r){\"use strict\";var n=r(2361),i=Math.pow(2,-1074),a=-1>>>0;t.exports=function(t,e){if(isNaN(t)||isNaN(e))return NaN;if(t===e)return t;if(0===t)return e<0?-i:i;var r=n.hi(t),o=n.lo(t);return e>t==t>0?o===a?(r+=1,o=0):o+=1:0===o?(o=a,r-=1):o-=1,n.pack(o,r)}},8406:function(t,e){e.vertexNormals=function(t,e,r){for(var n=e.length,i=new Array(n),a=void 0===r?1e-6:r,o=0;o<n;++o)i[o]=[0,0,0];for(o=0;o<t.length;++o)for(var s=t[o],l=0,c=s[s.length-1],u=s[0],h=0;h<s.length;++h){l=c,c=u,u=s[(h+1)%s.length];for(var f=e[l],p=e[c],d=e[u],m=new Array(3),g=0,y=new Array(3),v=0,x=0;x<3;++x)m[x]=f[x]-p[x],g+=m[x]*m[x],y[x]=d[x]-p[x],v+=y[x]*y[x];if(g*v>a){var _=i[c],b=1/Math.sqrt(g*v);for(x=0;x<3;++x){var w=(x+1)%3,T=(x+2)%3;_[x]+=b*(y[w]*m[T]-y[T]*m[w])}}}for(o=0;o<n;++o){_=i[o];var k=0;for(x=0;x<3;++x)k+=_[x]*_[x];if(k>a)for(b=1/Math.sqrt(k),x=0;x<3;++x)_[x]*=b;else for(x=0;x<3;++x)_[x]=0}return i},e.faceNormals=function(t,e,r){for(var n=t.length,i=new Array(n),a=void 0===r?1e-6:r,o=0;o<n;++o){for(var s=t[o],l=new Array(3),c=0;c<3;++c)l[c]=e[s[c]];var u=new Array(3),h=new Array(3);for(c=0;c<3;++c)u[c]=l[1][c]-l[0][c],h[c]=l[2][c]-l[0][c];var f=new Array(3),p=0;for(c=0;c<3;++c){var d=(c+1)%3,m=(c+2)%3;f[c]=u[d]*h[m]-u[m]*h[d],p+=f[c]*f[c]}for(p=p>a?1/Math.sqrt(p):0,c=0;c<3;++c)f[c]*=p;i[o]=f}return i}},4081:function(t){\"use strict\";t.exports=function(t,e,r,n,i,a,o,s,l,c){var u=e+a+c;if(h>0){var h=Math.sqrt(u+1);t[0]=.5*(o-l)/h,t[1]=.5*(s-n)/h,t[2]=.5*(r-a)/h,t[3]=.5*h}else{var f=Math.max(e,a,c);h=Math.sqrt(2*f-u+1),e>=f?(t[0]=.5*h,t[1]=.5*(i+r)/h,t[2]=.5*(s+n)/h,t[3]=.5*(o-l)/h):a>=f?(t[0]=.5*(r+i)/h,t[1]=.5*h,t[2]=.5*(l+o)/h,t[3]=.5*(s-n)/h):(t[0]=.5*(n+s)/h,t[1]=.5*(o+l)/h,t[2]=.5*h,t[3]=.5*(r-i)/h)}return t}},9977:function(t,e,r){\"use strict\";t.exports=function(t){var e=(t=t||{}).center||[0,0,0],r=t.rotation||[0,0,0,1],n=t.radius||1;e=[].slice.call(e,0,3),u(r=[].slice.call(r,0,4),r);var i=new h(r,e,Math.log(n));return i.setDistanceLimits(t.zoomMin,t.zoomMax),(\"eye\"in t||\"up\"in t)&&i.lookAt(0,t.eye,t.center,t.up),i};var n=r(9215),i=r(6582),a=r(7399),o=r(7608),s=r(4081);function l(t,e,r){return Math.sqrt(Math.pow(t,2)+Math.pow(e,2)+Math.pow(r,2))}function c(t,e,r,n){return Math.sqrt(Math.pow(t,2)+Math.pow(e,2)+Math.pow(r,2)+Math.pow(n,2))}function u(t,e){var r=e[0],n=e[1],i=e[2],a=e[3],o=c(r,n,i,a);o>1e-6?(t[0]=r/o,t[1]=n/o,t[2]=i/o,t[3]=a/o):(t[0]=t[1]=t[2]=0,t[3]=1)}function h(t,e,r){this.radius=n([r]),this.center=n(e),this.rotation=n(t),this.computedRadius=this.radius.curve(0),this.computedCenter=this.center.curve(0),this.computedRotation=this.rotation.curve(0),this.computedUp=[.1,0,0],this.computedEye=[.1,0,0],this.computedMatrix=[.1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],this.recalcMatrix(0)}var f=h.prototype;f.lastT=function(){return Math.max(this.radius.lastT(),this.center.lastT(),this.rotation.lastT())},f.recalcMatrix=function(t){this.radius.curve(t),this.center.curve(t),this.rotation.curve(t);var e=this.computedRotation;u(e,e);var r=this.computedMatrix;a(r,e);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 c=0,h=0;h<3;++h)c+=r[l+4*h]*i[h];r[12+l]=-c}},f.getMatrix=function(t,e){this.recalcMatrix(t);var r=this.computedMatrix;if(e){for(var n=0;n<16;++n)e[n]=r[n];return e}return r},f.idle=function(t){this.center.idle(t),this.radius.idle(t),this.rotation.idle(t)},f.flush=function(t){this.center.flush(t),this.radius.flush(t),this.rotation.flush(t)},f.pan=function(t,e,r,n){e=e||0,r=r||0,n=n||0,this.recalcMatrix(t);var i=this.computedMatrix,a=i[1],o=i[5],s=i[9],c=l(a,o,s);a/=c,o/=c,s/=c;var u=i[0],h=i[4],f=i[8],p=u*a+h*o+f*s,d=l(u-=a*p,h-=o*p,f-=s*p);u/=d,h/=d,f/=d;var m=i[2],g=i[6],y=i[10],v=m*a+g*o+y*s,x=m*u+g*h+y*f,_=l(m-=v*a+x*u,g-=v*o+x*h,y-=v*s+x*f);m/=_,g/=_,y/=_;var b=u*e+a*r,w=h*e+o*r,T=f*e+s*r;this.center.move(t,b,w,T);var k=Math.exp(this.computedRadius[0]);k=Math.max(1e-4,k+n),this.radius.set(t,Math.log(k))},f.rotate=function(t,e,r,n){this.recalcMatrix(t),e=e||0,r=r||0;var i=this.computedMatrix,a=i[0],o=i[4],s=i[8],u=i[1],h=i[5],f=i[9],p=i[2],d=i[6],m=i[10],g=e*a+r*u,y=e*o+r*h,v=e*s+r*f,x=-(d*v-m*y),_=-(m*g-p*v),b=-(p*y-d*g),w=Math.sqrt(Math.max(0,1-Math.pow(x,2)-Math.pow(_,2)-Math.pow(b,2))),T=c(x,_,b,w);T>1e-6?(x/=T,_/=T,b/=T,w/=T):(x=_=b=0,w=1);var k=this.computedRotation,A=k[0],M=k[1],S=k[2],E=k[3],C=A*w+E*x+M*b-S*_,L=M*w+E*_+S*x-A*b,I=S*w+E*b+A*_-M*x,P=E*w-A*x-M*_-S*b;if(n){x=p,_=d,b=m;var z=Math.sin(n)/l(x,_,b);x*=z,_*=z,b*=z,P=P*(w=Math.cos(e))-(C=C*w+P*x+L*b-I*_)*x-(L=L*w+P*_+I*x-C*b)*_-(I=I*w+P*b+C*_-L*x)*b}var O=c(C,L,I,P);O>1e-6?(C/=O,L/=O,I/=O,P/=O):(C=L=I=0,P=1),this.rotation.set(t,C,L,I,P)},f.lookAt=function(t,e,r,n){this.recalcMatrix(t),r=r||this.computedCenter,e=e||this.computedEye,n=n||this.computedUp;var a=this.computedMatrix;i(a,e,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]),u(o,o),this.rotation.set(t,o[0],o[1],o[2],o[3]);for(var l=0,c=0;c<3;++c)l+=Math.pow(r[c]-e[c],2);this.radius.set(t,.5*Math.log(Math.max(l,1e-6))),this.center.set(t,r[0],r[1],r[2])},f.translate=function(t,e,r,n){this.center.move(t,e||0,r||0,n||0)},f.setMatrix=function(t,e){var r=this.computedRotation;s(r,e[0],e[1],e[2],e[4],e[5],e[6],e[8],e[9],e[10]),u(r,r),this.rotation.set(t,r[0],r[1],r[2],r[3]);var n=this.computedMatrix;o(n,e);var i=n[15];if(Math.abs(i)>1e-6){var a=n[12]/i,l=n[13]/i,c=n[14]/i;this.recalcMatrix(t);var h=Math.exp(this.computedRadius[0]);this.center.set(t,a-n[2]*h,l-n[6]*h,c-n[10]*h),this.radius.idle(t)}else this.center.idle(t),this.radius.idle(t)},f.setDistance=function(t,e){e>0&&this.radius.set(t,Math.log(e))},f.setDistanceLimits=function(t,e){t=t>0?Math.log(t):-1/0,e=e>0?Math.log(e):1/0,e=Math.max(e,t),this.radius.bounds[0][0]=t,this.radius.bounds[1][0]=e},f.getDistanceLimits=function(t){var e=this.radius.bounds;return t?(t[0]=Math.exp(e[0][0]),t[1]=Math.exp(e[1][0]),t):[Math.exp(e[0][0]),Math.exp(e[1][0])]},f.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]}},f.fromJSON=function(t){var e=this.lastT(),r=t.center;r&&this.center.set(e,r[0],r[1],r[2]);var n=t.rotation;n&&this.rotation.set(e,n[0],n[1],n[2],n[3]);var i=t.distance;i&&i>0&&this.radius.set(e,Math.log(i)),this.setDistanceLimits(t.zoomMin,t.zoomMax)}},1371:function(t,e,r){\"use strict\";var n=r(3233);t.exports=function(t,e,r){return n(r=void 0!==r?r+\"\":\" \",e)+t}},3202:function(t){t.exports=function(t,e){e||(e=[0,\"\"]),t=String(t);var r=parseFloat(t,10);return e[0]=r,e[1]=t.match(/[\\d.\\-\\+]*\\s*(.*)/)[1]||\"\",e}},3088:function(t,e,r){\"use strict\";t.exports=function(t,e){for(var r=0|e.length,i=t.length,a=[new Array(r),new Array(r)],o=0;o<r;++o)a[0][o]=[],a[1][o]=[];for(o=0;o<i;++o){var s=t[o];a[0][s[0]].push(s),a[1][s[1]].push(s)}var l=[];for(o=0;o<r;++o)a[0][o].length+a[1][o].length===0&&l.push([o]);function c(t,e){var r=a[e][t[e]];r.splice(r.indexOf(t),1)}function u(t,r,i){for(var o,s,l,u=0;u<2;++u)if(a[u][r].length>0){o=a[u][r][0],l=u;break}s=o[1^l];for(var h=0;h<2;++h)for(var f=a[h][r],p=0;p<f.length;++p){var d=f[p],m=d[1^h];n(e[t],e[r],e[s],e[m])>0&&(o=d,s=m,l=h)}return i||o&&c(o,l),s}function h(t,r){var i=a[r][t][0],o=[t];c(i,r);for(var s=i[1^r];;){for(;s!==t;)o.push(s),s=u(o[o.length-2],s,!1);if(a[0][t].length+a[1][t].length===0)break;var l=o[o.length-1],h=t,f=o[1],p=u(l,h,!0);if(n(e[l],e[h],e[f],e[p])<0)break;o.push(t),s=u(l,h)}return o}function f(t,e){return e[1]===e[e.length-1]}for(o=0;o<r;++o)for(var p=0;p<2;++p){for(var d=[];a[p][o].length>0;){a[0][o].length;var m=h(o,p);f(0,m)?d.push.apply(d,m):(d.length>0&&l.push(d),d=m)}d.length>0&&l.push(d)}return l};var n=r(3140)},5609:function(t,e,r){\"use strict\";t.exports=function(t,e){for(var r=n(t,e.length),i=new Array(e.length),a=new Array(e.length),o=[],s=0;s<e.length;++s){var l=r[s].length;a[s]=l,i[s]=!0,l<=1&&o.push(s)}for(;o.length>0;){i[p=o.pop()]=!1;var c=r[p];for(s=0;s<c.length;++s){var u=c[s];0==--a[u]&&o.push(u)}}var h=new Array(e.length),f=[];for(s=0;s<e.length;++s)if(i[s]){var p=f.length;h[s]=p,f.push(e[s])}else h[s]=-1;var d=[];for(s=0;s<t.length;++s){var m=t[s];i[m[0]]&&i[m[1]]&&d.push([h[m[0]],h[m[1]]])}return[d,f]};var n=r(3134)},2095:function(t,e,r){\"use strict\";t.exports=function(t,e){var r=c(t,e);t=r[0];for(var h=(e=r[1]).length,f=(t.length,n(t,e.length)),p=0;p<h;++p)if(f[p].length%2==1)throw new Error(\"planar-graph-to-polyline: graph must be manifold\");var d=i(t,e),m=(d=d.filter((function(t){for(var r=t.length,n=[0],i=0;i<r;++i){var a=e[t[i]],l=e[t[(i+1)%r]],c=o(-a[0],a[1]),u=o(-a[0],l[1]),h=o(l[0],a[1]),f=o(l[0],l[1]);n=s(n,s(s(c,u),s(h,f)))}return n[n.length-1]>0}))).length,g=new Array(m),y=new Array(m);for(p=0;p<m;++p){g[p]=p;var v=new Array(m),x=d[p].map((function(t){return e[t]})),_=a([x]),b=0;t:for(var w=0;w<m;++w)if(v[w]=0,p!==w){for(var T=(q=d[w]).length,k=0;k<T;++k){var A=_(e[q[k]]);if(0!==A){A<0&&(v[w]=1,b+=1);continue t}}v[w]=1,b+=1}y[p]=[b,p,v]}for(y.sort((function(t,e){return e[0]-t[0]})),p=0;p<m;++p){var M=(v=y[p])[1],S=v[2];for(w=0;w<m;++w)S[w]&&(g[w]=M)}var E=function(t){for(var e=new Array(t),r=0;r<t;++r)e[r]=[];return e}(m);for(p=0;p<m;++p)E[p].push(g[p]),E[g[p]].push(p);var C={},L=u(h,!1);for(p=0;p<m;++p)for(T=(q=d[p]).length,w=0;w<T;++w){var I=q[w],P=q[(w+1)%T],z=Math.min(I,P)+\":\"+Math.max(I,P);if(z in C){var O=C[z];E[O].push(p),E[p].push(O),L[I]=L[P]=!0}else C[z]=p}function D(t){for(var e=t.length,r=0;r<e;++r)if(!L[t[r]])return!1;return!0}var R=[],F=u(m,-1);for(p=0;p<m;++p)g[p]!==p||D(d[p])?F[p]=-1:(R.push(p),F[p]=0);for(r=[];R.length>0;){var B=R.pop(),N=E[B];l(N,(function(t,e){return t-e}));var j,U=N.length,V=F[B];for(0===V&&(j=[q=d[B]]),p=0;p<U;++p){var q,H=N[p];F[H]>=0||(F[H]=1^V,R.push(H),0===V&&(D(q=d[H])||(q.reverse(),j.push(q))))}0===V&&r.push(j)}return r};var n=r(3134),i=r(3088),a=r(5085),o=r(5250),s=r(8210),l=r(1682),c=r(5609);function u(t,e){for(var r=new Array(t),n=0;n<t;++n)r[n]=e;return r}},5085:function(t,e,r){t.exports=function(t){for(var e=t.length,r=[],a=[],s=0;s<e;++s)for(var u=t[s],h=u.length,f=h-1,p=0;p<h;f=p++){var d=u[f],m=u[p];d[0]===m[0]?a.push([d,m]):r.push([d,m])}if(0===r.length)return 0===a.length?c:(g=l(a),function(t){return g(t[0],t[1])?0:1});var g,y=i(r),v=function(t,e){return function(r){var i=o.le(e,r[0]);if(i<0)return 1;var a=t[i];if(!a){if(!(i>0&&e[i]===r[0]))return 1;a=t[i-1]}for(var s=1;a;){var l=a.key,c=n(r,l[0],l[1]);if(l[0][0]<l[1][0])if(c<0)a=a.left;else{if(!(c>0))return 0;s=-1,a=a.right}else if(c>0)a=a.left;else{if(!(c<0))return 0;s=1,a=a.right}}return s}}(y.slabs,y.coordinates);return 0===a.length?v:function(t,e){return function(r){return t(r[0],r[1])?0:e(r)}}(l(a),v)};var n=r(3250)[3],i=r(4209),a=r(3352),o=r(2478);function s(){return!0}function l(t){for(var e={},r=0;r<t.length;++r){var n=t[r],i=n[0][0],o=n[0][1],l=n[1][1],c=[Math.min(o,l),Math.max(o,l)];i in e?e[i].push(c):e[i]=[c]}var u={},h=Object.keys(e);for(r=0;r<h.length;++r){var f=e[h[r]];u[h[r]]=a(f)}return function(t){return function(e,r){var n=t[e];return!!n&&!!n.queryPoint(r,s)}}(u)}function c(t){return 1}},9346:function(t){\"use strict\";var e=new Float64Array(4),r=new Float64Array(4),n=new Float64Array(4);t.exports=function(t,i,a,o,s){e.length<o.length&&(e=new Float64Array(o.length),r=new Float64Array(o.length),n=new Float64Array(o.length));for(var l=0;l<o.length;++l)e[l]=t[l]-o[l],r[l]=i[l]-t[l],n[l]=a[l]-t[l];var c=0,u=0,h=0,f=0,p=0,d=0;for(l=0;l<o.length;++l){var m=r[l],g=n[l],y=e[l];c+=m*m,u+=m*g,h+=g*g,f+=y*m,p+=y*g,d+=y*y}var v,x,_,b,w,T=Math.abs(c*h-u*u),k=u*p-h*f,A=u*f-c*p;if(k+A<=T)if(k<0)A<0&&f<0?(A=0,-f>=c?(k=1,v=c+2*f+d):v=f*(k=-f/c)+d):(k=0,p>=0?(A=0,v=d):-p>=h?(A=1,v=h+2*p+d):v=p*(A=-p/h)+d);else if(A<0)A=0,f>=0?(k=0,v=d):-f>=c?(k=1,v=c+2*f+d):v=f*(k=-f/c)+d;else{var M=1/T;v=(k*=M)*(c*k+u*(A*=M)+2*f)+A*(u*k+h*A+2*p)+d}else k<0?(_=h+p)>(x=u+f)?(b=_-x)>=(w=c-2*u+h)?(k=1,A=0,v=c+2*f+d):v=(k=b/w)*(c*k+u*(A=1-k)+2*f)+A*(u*k+h*A+2*p)+d:(k=0,_<=0?(A=1,v=h+2*p+d):p>=0?(A=0,v=d):v=p*(A=-p/h)+d):A<0?(_=c+f)>(x=u+p)?(b=_-x)>=(w=c-2*u+h)?(A=1,k=0,v=h+2*p+d):v=(k=1-(A=b/w))*(c*k+u*A+2*f)+A*(u*k+h*A+2*p)+d:(A=0,_<=0?(k=1,v=c+2*f+d):f>=0?(k=0,v=d):v=f*(k=-f/c)+d):(b=h+p-u-f)<=0?(k=0,A=1,v=h+2*p+d):b>=(w=c-2*u+h)?(k=1,A=0,v=c+2*f+d):v=(k=b/w)*(c*k+u*(A=1-k)+2*f)+A*(u*k+h*A+2*p)+d;var S=1-k-A;for(l=0;l<o.length;++l)s[l]=S*t[l]+k*i[l]+A*a[l];return v<0?0:v}},8648:function(t,e,r){t.exports=r(783)},2653:function(t,e,r){\"use strict\";var n=r(3865);t.exports=function(t,e){for(var r=t.length,i=new Array(r),a=0;a<r;++a)i[a]=n(t[a],e[a]);return i}},5838:function(t,e,r){\"use strict\";t.exports=function(t){for(var e=new Array(t.length),r=0;r<t.length;++r)e[r]=n(t[r]);return e};var n=r(7842)},8987:function(t,e,r){\"use strict\";var n=r(7842),i=r(6504);t.exports=function(t,e){for(var r=n(e),a=t.length,o=new Array(a),s=0;s<a;++s)o[s]=i(t[s],r);return o}},544:function(t,e,r){\"use strict\";var n=r(5572);t.exports=function(t,e){for(var r=t.length,i=new Array(r),a=0;a<r;++a)i[a]=n(t[a],e[a]);return i}},5771:function(t,e,r){\"use strict\";var n=r(8507),i=r(3788),a=r(2419);t.exports=function(t){t.sort(i);for(var e=t.length,r=0,o=0;o<e;++o){var s=t[o],l=a(s);if(0!==l){if(r>0){var c=t[r-1];if(0===n(s,c)&&a(c)!==l){r-=1;continue}}t[r++]=s}}return t.length=r,t}},3233:function(t){\"use strict\";var e,r=\"\";t.exports=function(t,n){if(\"string\"!=typeof t)throw new TypeError(\"expected a string\");if(1===n)return t;if(2===n)return t+t;var i=t.length*n;if(e!==t||void 0===e)e=t,r=\"\";else if(r.length>=i)return r.substr(0,i);for(;i>r.length&&n>1;)1&n&&(r+=t),n>>=1,t+=t;return r=(r+=t).substr(0,i)}},3025:function(t,e,r){t.exports=r.g.performance&&r.g.performance.now?function(){return performance.now()}:Date.now||function(){return+new Date}},7004:function(t){\"use strict\";t.exports=function(t){for(var e=t.length,r=t[t.length-1],n=e,i=e-2;i>=0;--i){var a=r;(l=(s=t[i])-((r=a+s)-a))&&(t[--n]=r,r=l)}var o=0;for(i=n;i<e;++i){var s,l;(l=(s=r)-((r=(a=t[i])+s)-a))&&(t[o++]=l)}return t[o++]=r,t.length=o,t}},2962:function(t,e,r){\"use strict\";var n=r(5250),i=r(8210),a=r(3012),o=r(7004);function s(t,e,r,n){return function(e){return n(t(r(e[0][0],e[1][1]),r(-e[0][1],e[1][0])))}}function l(t,e,r,n){return function(i){return n(t(e(t(r(i[1][1],i[2][2]),r(-i[1][2],i[2][1])),i[0][0]),t(e(t(r(i[1][0],i[2][2]),r(-i[1][2],i[2][0])),-i[0][1]),e(t(r(i[1][0],i[2][1]),r(-i[1][1],i[2][0])),i[0][2]))))}}function c(t,e,r,n){return function(i){return n(t(t(e(t(e(t(r(i[2][2],i[3][3]),r(-i[2][3],i[3][2])),i[1][1]),t(e(t(r(i[2][1],i[3][3]),r(-i[2][3],i[3][1])),-i[1][2]),e(t(r(i[2][1],i[3][2]),r(-i[2][2],i[3][1])),i[1][3]))),i[0][0]),e(t(e(t(r(i[2][2],i[3][3]),r(-i[2][3],i[3][2])),i[1][0]),t(e(t(r(i[2][0],i[3][3]),r(-i[2][3],i[3][0])),-i[1][2]),e(t(r(i[2][0],i[3][2]),r(-i[2][2],i[3][0])),i[1][3]))),-i[0][1])),t(e(t(e(t(r(i[2][1],i[3][3]),r(-i[2][3],i[3][1])),i[1][0]),t(e(t(r(i[2][0],i[3][3]),r(-i[2][3],i[3][0])),-i[1][1]),e(t(r(i[2][0],i[3][1]),r(-i[2][1],i[3][0])),i[1][3]))),i[0][2]),e(t(e(t(r(i[2][1],i[3][2]),r(-i[2][2],i[3][1])),i[1][0]),t(e(t(r(i[2][0],i[3][2]),r(-i[2][2],i[3][0])),-i[1][1]),e(t(r(i[2][0],i[3][1]),r(-i[2][1],i[3][0])),i[1][2]))),-i[0][3]))))}}function u(t,e,r,n){return function(i){return n(t(t(e(t(t(e(t(e(t(r(i[3][3],i[4][4]),r(-i[3][4],i[4][3])),i[2][2]),t(e(t(r(i[3][2],i[4][4]),r(-i[3][4],i[4][2])),-i[2][3]),e(t(r(i[3][2],i[4][3]),r(-i[3][3],i[4][2])),i[2][4]))),i[1][1]),e(t(e(t(r(i[3][3],i[4][4]),r(-i[3][4],i[4][3])),i[2][1]),t(e(t(r(i[3][1],i[4][4]),r(-i[3][4],i[4][1])),-i[2][3]),e(t(r(i[3][1],i[4][3]),r(-i[3][3],i[4][1])),i[2][4]))),-i[1][2])),t(e(t(e(t(r(i[3][2],i[4][4]),r(-i[3][4],i[4][2])),i[2][1]),t(e(t(r(i[3][1],i[4][4]),r(-i[3][4],i[4][1])),-i[2][2]),e(t(r(i[3][1],i[4][2]),r(-i[3][2],i[4][1])),i[2][4]))),i[1][3]),e(t(e(t(r(i[3][2],i[4][3]),r(-i[3][3],i[4][2])),i[2][1]),t(e(t(r(i[3][1],i[4][3]),r(-i[3][3],i[4][1])),-i[2][2]),e(t(r(i[3][1],i[4][2]),r(-i[3][2],i[4][1])),i[2][3]))),-i[1][4]))),i[0][0]),e(t(t(e(t(e(t(r(i[3][3],i[4][4]),r(-i[3][4],i[4][3])),i[2][2]),t(e(t(r(i[3][2],i[4][4]),r(-i[3][4],i[4][2])),-i[2][3]),e(t(r(i[3][2],i[4][3]),r(-i[3][3],i[4][2])),i[2][4]))),i[1][0]),e(t(e(t(r(i[3][3],i[4][4]),r(-i[3][4],i[4][3])),i[2][0]),t(e(t(r(i[3][0],i[4][4]),r(-i[3][4],i[4][0])),-i[2][3]),e(t(r(i[3][0],i[4][3]),r(-i[3][3],i[4][0])),i[2][4]))),-i[1][2])),t(e(t(e(t(r(i[3][2],i[4][4]),r(-i[3][4],i[4][2])),i[2][0]),t(e(t(r(i[3][0],i[4][4]),r(-i[3][4],i[4][0])),-i[2][2]),e(t(r(i[3][0],i[4][2]),r(-i[3][2],i[4][0])),i[2][4]))),i[1][3]),e(t(e(t(r(i[3][2],i[4][3]),r(-i[3][3],i[4][2])),i[2][0]),t(e(t(r(i[3][0],i[4][3]),r(-i[3][3],i[4][0])),-i[2][2]),e(t(r(i[3][0],i[4][2]),r(-i[3][2],i[4][0])),i[2][3]))),-i[1][4]))),-i[0][1])),t(e(t(t(e(t(e(t(r(i[3][3],i[4][4]),r(-i[3][4],i[4][3])),i[2][1]),t(e(t(r(i[3][1],i[4][4]),r(-i[3][4],i[4][1])),-i[2][3]),e(t(r(i[3][1],i[4][3]),r(-i[3][3],i[4][1])),i[2][4]))),i[1][0]),e(t(e(t(r(i[3][3],i[4][4]),r(-i[3][4],i[4][3])),i[2][0]),t(e(t(r(i[3][0],i[4][4]),r(-i[3][4],i[4][0])),-i[2][3]),e(t(r(i[3][0],i[4][3]),r(-i[3][3],i[4][0])),i[2][4]))),-i[1][1])),t(e(t(e(t(r(i[3][1],i[4][4]),r(-i[3][4],i[4][1])),i[2][0]),t(e(t(r(i[3][0],i[4][4]),r(-i[3][4],i[4][0])),-i[2][1]),e(t(r(i[3][0],i[4][1]),r(-i[3][1],i[4][0])),i[2][4]))),i[1][3]),e(t(e(t(r(i[3][1],i[4][3]),r(-i[3][3],i[4][1])),i[2][0]),t(e(t(r(i[3][0],i[4][3]),r(-i[3][3],i[4][0])),-i[2][1]),e(t(r(i[3][0],i[4][1]),r(-i[3][1],i[4][0])),i[2][3]))),-i[1][4]))),i[0][2]),t(e(t(t(e(t(e(t(r(i[3][2],i[4][4]),r(-i[3][4],i[4][2])),i[2][1]),t(e(t(r(i[3][1],i[4][4]),r(-i[3][4],i[4][1])),-i[2][2]),e(t(r(i[3][1],i[4][2]),r(-i[3][2],i[4][1])),i[2][4]))),i[1][0]),e(t(e(t(r(i[3][2],i[4][4]),r(-i[3][4],i[4][2])),i[2][0]),t(e(t(r(i[3][0],i[4][4]),r(-i[3][4],i[4][0])),-i[2][2]),e(t(r(i[3][0],i[4][2]),r(-i[3][2],i[4][0])),i[2][4]))),-i[1][1])),t(e(t(e(t(r(i[3][1],i[4][4]),r(-i[3][4],i[4][1])),i[2][0]),t(e(t(r(i[3][0],i[4][4]),r(-i[3][4],i[4][0])),-i[2][1]),e(t(r(i[3][0],i[4][1]),r(-i[3][1],i[4][0])),i[2][4]))),i[1][2]),e(t(e(t(r(i[3][1],i[4][2]),r(-i[3][2],i[4][1])),i[2][0]),t(e(t(r(i[3][0],i[4][2]),r(-i[3][2],i[4][0])),-i[2][1]),e(t(r(i[3][0],i[4][1]),r(-i[3][1],i[4][0])),i[2][2]))),-i[1][4]))),-i[0][3]),e(t(t(e(t(e(t(r(i[3][2],i[4][3]),r(-i[3][3],i[4][2])),i[2][1]),t(e(t(r(i[3][1],i[4][3]),r(-i[3][3],i[4][1])),-i[2][2]),e(t(r(i[3][1],i[4][2]),r(-i[3][2],i[4][1])),i[2][3]))),i[1][0]),e(t(e(t(r(i[3][2],i[4][3]),r(-i[3][3],i[4][2])),i[2][0]),t(e(t(r(i[3][0],i[4][3]),r(-i[3][3],i[4][0])),-i[2][2]),e(t(r(i[3][0],i[4][2]),r(-i[3][2],i[4][0])),i[2][3]))),-i[1][1])),t(e(t(e(t(r(i[3][1],i[4][3]),r(-i[3][3],i[4][1])),i[2][0]),t(e(t(r(i[3][0],i[4][3]),r(-i[3][3],i[4][0])),-i[2][1]),e(t(r(i[3][0],i[4][1]),r(-i[3][1],i[4][0])),i[2][3]))),i[1][2]),e(t(e(t(r(i[3][1],i[4][2]),r(-i[3][2],i[4][1])),i[2][0]),t(e(t(r(i[3][0],i[4][2]),r(-i[3][2],i[4][0])),-i[2][1]),e(t(r(i[3][0],i[4][1]),r(-i[3][1],i[4][0])),i[2][2]))),-i[1][3]))),i[0][4])))))}}function h(t){return(2===t?s:3===t?l:4===t?c:5===t?u:void 0)(i,a,n,o)}var f=[function(){return[0]},function(t){return[t[0][0]]}];function p(t,e,r,n,i,a,o,s){return function(l){switch(l.length){case 0:return t(l);case 1:return e(l);case 2:return r(l);case 3:return n(l);case 4:return i(l);case 5:return a(l)}var c=o[l.length];return c||(c=o[l.length]=s(l.length)),c(l)}}!function(){for(;f.length<6;)f.push(h(f.length));t.exports=p.apply(void 0,f.concat([f,h]));for(var e=0;e<f.length;++e)t.exports[e]=f[e]}()},1944:function(t,e,r){\"use strict\";var n=r(5250),i=r(8210);t.exports=function(t,e){for(var r=n(t[0],e[0]),a=1;a<t.length;++a)r=i(r,n(t[a],e[a]));return r}},2646:function(t,e,r){\"use strict\";var n=r(5250),i=r(8210),a=r(8545),o=r(3012);function s(t){return(3===t?l:4===t?c:5===t?u:h)(i,a,n,o)}function l(t,e,r,n){return function(i,a,o){var s=r(i[0],i[0]),l=n(s,a[0]),c=n(s,o[0]),u=r(a[0],a[0]),h=n(u,i[0]),f=n(u,o[0]),p=r(o[0],o[0]),d=n(p,i[0]),m=n(p,a[0]),g=t(e(m,f),e(h,l)),y=e(d,c),v=e(g,y);return v[v.length-1]}}function c(t,e,r,n){return function(i,a,o,s){var l=t(r(i[0],i[0]),r(i[1],i[1])),c=n(l,a[0]),u=n(l,o[0]),h=n(l,s[0]),f=t(r(a[0],a[0]),r(a[1],a[1])),p=n(f,i[0]),d=n(f,o[0]),m=n(f,s[0]),g=t(r(o[0],o[0]),r(o[1],o[1])),y=n(g,i[0]),v=n(g,a[0]),x=n(g,s[0]),_=t(r(s[0],s[0]),r(s[1],s[1])),b=n(_,i[0]),w=n(_,a[0]),T=n(_,o[0]),k=t(t(n(e(T,x),a[1]),t(n(e(w,m),-o[1]),n(e(v,d),s[1]))),t(n(e(w,m),i[1]),t(n(e(b,h),-a[1]),n(e(p,c),s[1])))),A=t(t(n(e(T,x),i[1]),t(n(e(b,h),-o[1]),n(e(y,u),s[1]))),t(n(e(v,d),i[1]),t(n(e(y,u),-a[1]),n(e(p,c),o[1])))),M=e(k,A);return M[M.length-1]}}function u(t,e,r,n){return function(i,a,o,s,l){var c=t(r(i[0],i[0]),t(r(i[1],i[1]),r(i[2],i[2]))),u=n(c,a[0]),h=n(c,o[0]),f=n(c,s[0]),p=n(c,l[0]),d=t(r(a[0],a[0]),t(r(a[1],a[1]),r(a[2],a[2]))),m=n(d,i[0]),g=n(d,o[0]),y=n(d,s[0]),v=n(d,l[0]),x=t(r(o[0],o[0]),t(r(o[1],o[1]),r(o[2],o[2]))),_=n(x,i[0]),b=n(x,a[0]),w=n(x,s[0]),T=n(x,l[0]),k=t(r(s[0],s[0]),t(r(s[1],s[1]),r(s[2],s[2]))),A=n(k,i[0]),M=n(k,a[0]),S=n(k,o[0]),E=n(k,l[0]),C=t(r(l[0],l[0]),t(r(l[1],l[1]),r(l[2],l[2]))),L=n(C,i[0]),I=n(C,a[0]),P=n(C,o[0]),z=n(C,s[0]),O=t(t(t(n(t(n(e(z,E),o[1]),t(n(e(P,T),-s[1]),n(e(S,w),l[1]))),a[2]),t(n(t(n(e(z,E),a[1]),t(n(e(I,v),-s[1]),n(e(M,y),l[1]))),-o[2]),n(t(n(e(P,T),a[1]),t(n(e(I,v),-o[1]),n(e(b,g),l[1]))),s[2]))),t(n(t(n(e(S,w),a[1]),t(n(e(M,y),-o[1]),n(e(b,g),s[1]))),-l[2]),t(n(t(n(e(z,E),a[1]),t(n(e(I,v),-s[1]),n(e(M,y),l[1]))),i[2]),n(t(n(e(z,E),i[1]),t(n(e(L,p),-s[1]),n(e(A,f),l[1]))),-a[2])))),t(t(n(t(n(e(I,v),i[1]),t(n(e(L,p),-a[1]),n(e(m,u),l[1]))),s[2]),t(n(t(n(e(M,y),i[1]),t(n(e(A,f),-a[1]),n(e(m,u),s[1]))),-l[2]),n(t(n(e(S,w),a[1]),t(n(e(M,y),-o[1]),n(e(b,g),s[1]))),i[2]))),t(n(t(n(e(S,w),i[1]),t(n(e(A,f),-o[1]),n(e(_,h),s[1]))),-a[2]),t(n(t(n(e(M,y),i[1]),t(n(e(A,f),-a[1]),n(e(m,u),s[1]))),o[2]),n(t(n(e(b,g),i[1]),t(n(e(_,h),-a[1]),n(e(m,u),o[1]))),-s[2]))))),D=t(t(t(n(t(n(e(z,E),o[1]),t(n(e(P,T),-s[1]),n(e(S,w),l[1]))),i[2]),n(t(n(e(z,E),i[1]),t(n(e(L,p),-s[1]),n(e(A,f),l[1]))),-o[2])),t(n(t(n(e(P,T),i[1]),t(n(e(L,p),-o[1]),n(e(_,h),l[1]))),s[2]),n(t(n(e(S,w),i[1]),t(n(e(A,f),-o[1]),n(e(_,h),s[1]))),-l[2]))),t(t(n(t(n(e(P,T),a[1]),t(n(e(I,v),-o[1]),n(e(b,g),l[1]))),i[2]),n(t(n(e(P,T),i[1]),t(n(e(L,p),-o[1]),n(e(_,h),l[1]))),-a[2])),t(n(t(n(e(I,v),i[1]),t(n(e(L,p),-a[1]),n(e(m,u),l[1]))),o[2]),n(t(n(e(b,g),i[1]),t(n(e(_,h),-a[1]),n(e(m,u),o[1]))),-l[2])))),R=e(O,D);return R[R.length-1]}}function h(t,e,r,n){return function(i,a,o,s,l,c){var u=t(t(r(i[0],i[0]),r(i[1],i[1])),t(r(i[2],i[2]),r(i[3],i[3]))),h=n(u,a[0]),f=n(u,o[0]),p=n(u,s[0]),d=n(u,l[0]),m=n(u,c[0]),g=t(t(r(a[0],a[0]),r(a[1],a[1])),t(r(a[2],a[2]),r(a[3],a[3]))),y=n(g,i[0]),v=n(g,o[0]),x=n(g,s[0]),_=n(g,l[0]),b=n(g,c[0]),w=t(t(r(o[0],o[0]),r(o[1],o[1])),t(r(o[2],o[2]),r(o[3],o[3]))),T=n(w,i[0]),k=n(w,a[0]),A=n(w,s[0]),M=n(w,l[0]),S=n(w,c[0]),E=t(t(r(s[0],s[0]),r(s[1],s[1])),t(r(s[2],s[2]),r(s[3],s[3]))),C=n(E,i[0]),L=n(E,a[0]),I=n(E,o[0]),P=n(E,l[0]),z=n(E,c[0]),O=t(t(r(l[0],l[0]),r(l[1],l[1])),t(r(l[2],l[2]),r(l[3],l[3]))),D=n(O,i[0]),R=n(O,a[0]),F=n(O,o[0]),B=n(O,s[0]),N=n(O,c[0]),j=t(t(r(c[0],c[0]),r(c[1],c[1])),t(r(c[2],c[2]),r(c[3],c[3]))),U=n(j,i[0]),V=n(j,a[0]),q=n(j,o[0]),H=n(j,s[0]),G=n(j,l[0]),Z=t(t(t(n(t(t(n(t(n(e(G,N),s[1]),t(n(e(H,z),-l[1]),n(e(B,P),c[1]))),o[2]),n(t(n(e(G,N),o[1]),t(n(e(q,S),-l[1]),n(e(F,M),c[1]))),-s[2])),t(n(t(n(e(H,z),o[1]),t(n(e(q,S),-s[1]),n(e(I,A),c[1]))),l[2]),n(t(n(e(B,P),o[1]),t(n(e(F,M),-s[1]),n(e(I,A),l[1]))),-c[2]))),a[3]),t(n(t(t(n(t(n(e(G,N),s[1]),t(n(e(H,z),-l[1]),n(e(B,P),c[1]))),a[2]),n(t(n(e(G,N),a[1]),t(n(e(V,b),-l[1]),n(e(R,_),c[1]))),-s[2])),t(n(t(n(e(H,z),a[1]),t(n(e(V,b),-s[1]),n(e(L,x),c[1]))),l[2]),n(t(n(e(B,P),a[1]),t(n(e(R,_),-s[1]),n(e(L,x),l[1]))),-c[2]))),-o[3]),n(t(t(n(t(n(e(G,N),o[1]),t(n(e(q,S),-l[1]),n(e(F,M),c[1]))),a[2]),n(t(n(e(G,N),a[1]),t(n(e(V,b),-l[1]),n(e(R,_),c[1]))),-o[2])),t(n(t(n(e(q,S),a[1]),t(n(e(V,b),-o[1]),n(e(k,v),c[1]))),l[2]),n(t(n(e(F,M),a[1]),t(n(e(R,_),-o[1]),n(e(k,v),l[1]))),-c[2]))),s[3]))),t(t(n(t(t(n(t(n(e(H,z),o[1]),t(n(e(q,S),-s[1]),n(e(I,A),c[1]))),a[2]),n(t(n(e(H,z),a[1]),t(n(e(V,b),-s[1]),n(e(L,x),c[1]))),-o[2])),t(n(t(n(e(q,S),a[1]),t(n(e(V,b),-o[1]),n(e(k,v),c[1]))),s[2]),n(t(n(e(I,A),a[1]),t(n(e(L,x),-o[1]),n(e(k,v),s[1]))),-c[2]))),-l[3]),n(t(t(n(t(n(e(B,P),o[1]),t(n(e(F,M),-s[1]),n(e(I,A),l[1]))),a[2]),n(t(n(e(B,P),a[1]),t(n(e(R,_),-s[1]),n(e(L,x),l[1]))),-o[2])),t(n(t(n(e(F,M),a[1]),t(n(e(R,_),-o[1]),n(e(k,v),l[1]))),s[2]),n(t(n(e(I,A),a[1]),t(n(e(L,x),-o[1]),n(e(k,v),s[1]))),-l[2]))),c[3])),t(n(t(t(n(t(n(e(G,N),s[1]),t(n(e(H,z),-l[1]),n(e(B,P),c[1]))),a[2]),n(t(n(e(G,N),a[1]),t(n(e(V,b),-l[1]),n(e(R,_),c[1]))),-s[2])),t(n(t(n(e(H,z),a[1]),t(n(e(V,b),-s[1]),n(e(L,x),c[1]))),l[2]),n(t(n(e(B,P),a[1]),t(n(e(R,_),-s[1]),n(e(L,x),l[1]))),-c[2]))),i[3]),n(t(t(n(t(n(e(G,N),s[1]),t(n(e(H,z),-l[1]),n(e(B,P),c[1]))),i[2]),n(t(n(e(G,N),i[1]),t(n(e(U,m),-l[1]),n(e(D,d),c[1]))),-s[2])),t(n(t(n(e(H,z),i[1]),t(n(e(U,m),-s[1]),n(e(C,p),c[1]))),l[2]),n(t(n(e(B,P),i[1]),t(n(e(D,d),-s[1]),n(e(C,p),l[1]))),-c[2]))),-a[3])))),t(t(t(n(t(t(n(t(n(e(G,N),a[1]),t(n(e(V,b),-l[1]),n(e(R,_),c[1]))),i[2]),n(t(n(e(G,N),i[1]),t(n(e(U,m),-l[1]),n(e(D,d),c[1]))),-a[2])),t(n(t(n(e(V,b),i[1]),t(n(e(U,m),-a[1]),n(e(y,h),c[1]))),l[2]),n(t(n(e(R,_),i[1]),t(n(e(D,d),-a[1]),n(e(y,h),l[1]))),-c[2]))),s[3]),n(t(t(n(t(n(e(H,z),a[1]),t(n(e(V,b),-s[1]),n(e(L,x),c[1]))),i[2]),n(t(n(e(H,z),i[1]),t(n(e(U,m),-s[1]),n(e(C,p),c[1]))),-a[2])),t(n(t(n(e(V,b),i[1]),t(n(e(U,m),-a[1]),n(e(y,h),c[1]))),s[2]),n(t(n(e(L,x),i[1]),t(n(e(C,p),-a[1]),n(e(y,h),s[1]))),-c[2]))),-l[3])),t(n(t(t(n(t(n(e(B,P),a[1]),t(n(e(R,_),-s[1]),n(e(L,x),l[1]))),i[2]),n(t(n(e(B,P),i[1]),t(n(e(D,d),-s[1]),n(e(C,p),l[1]))),-a[2])),t(n(t(n(e(R,_),i[1]),t(n(e(D,d),-a[1]),n(e(y,h),l[1]))),s[2]),n(t(n(e(L,x),i[1]),t(n(e(C,p),-a[1]),n(e(y,h),s[1]))),-l[2]))),c[3]),n(t(t(n(t(n(e(H,z),o[1]),t(n(e(q,S),-s[1]),n(e(I,A),c[1]))),a[2]),n(t(n(e(H,z),a[1]),t(n(e(V,b),-s[1]),n(e(L,x),c[1]))),-o[2])),t(n(t(n(e(q,S),a[1]),t(n(e(V,b),-o[1]),n(e(k,v),c[1]))),s[2]),n(t(n(e(I,A),a[1]),t(n(e(L,x),-o[1]),n(e(k,v),s[1]))),-c[2]))),i[3]))),t(t(n(t(t(n(t(n(e(H,z),o[1]),t(n(e(q,S),-s[1]),n(e(I,A),c[1]))),i[2]),n(t(n(e(H,z),i[1]),t(n(e(U,m),-s[1]),n(e(C,p),c[1]))),-o[2])),t(n(t(n(e(q,S),i[1]),t(n(e(U,m),-o[1]),n(e(T,f),c[1]))),s[2]),n(t(n(e(I,A),i[1]),t(n(e(C,p),-o[1]),n(e(T,f),s[1]))),-c[2]))),-a[3]),n(t(t(n(t(n(e(H,z),a[1]),t(n(e(V,b),-s[1]),n(e(L,x),c[1]))),i[2]),n(t(n(e(H,z),i[1]),t(n(e(U,m),-s[1]),n(e(C,p),c[1]))),-a[2])),t(n(t(n(e(V,b),i[1]),t(n(e(U,m),-a[1]),n(e(y,h),c[1]))),s[2]),n(t(n(e(L,x),i[1]),t(n(e(C,p),-a[1]),n(e(y,h),s[1]))),-c[2]))),o[3])),t(n(t(t(n(t(n(e(q,S),a[1]),t(n(e(V,b),-o[1]),n(e(k,v),c[1]))),i[2]),n(t(n(e(q,S),i[1]),t(n(e(U,m),-o[1]),n(e(T,f),c[1]))),-a[2])),t(n(t(n(e(V,b),i[1]),t(n(e(U,m),-a[1]),n(e(y,h),c[1]))),o[2]),n(t(n(e(k,v),i[1]),t(n(e(T,f),-a[1]),n(e(y,h),o[1]))),-c[2]))),-s[3]),n(t(t(n(t(n(e(I,A),a[1]),t(n(e(L,x),-o[1]),n(e(k,v),s[1]))),i[2]),n(t(n(e(I,A),i[1]),t(n(e(C,p),-o[1]),n(e(T,f),s[1]))),-a[2])),t(n(t(n(e(L,x),i[1]),t(n(e(C,p),-a[1]),n(e(y,h),s[1]))),o[2]),n(t(n(e(k,v),i[1]),t(n(e(T,f),-a[1]),n(e(y,h),o[1]))),-s[2]))),c[3]))))),W=t(t(t(n(t(t(n(t(n(e(G,N),s[1]),t(n(e(H,z),-l[1]),n(e(B,P),c[1]))),o[2]),n(t(n(e(G,N),o[1]),t(n(e(q,S),-l[1]),n(e(F,M),c[1]))),-s[2])),t(n(t(n(e(H,z),o[1]),t(n(e(q,S),-s[1]),n(e(I,A),c[1]))),l[2]),n(t(n(e(B,P),o[1]),t(n(e(F,M),-s[1]),n(e(I,A),l[1]))),-c[2]))),i[3]),t(n(t(t(n(t(n(e(G,N),s[1]),t(n(e(H,z),-l[1]),n(e(B,P),c[1]))),i[2]),n(t(n(e(G,N),i[1]),t(n(e(U,m),-l[1]),n(e(D,d),c[1]))),-s[2])),t(n(t(n(e(H,z),i[1]),t(n(e(U,m),-s[1]),n(e(C,p),c[1]))),l[2]),n(t(n(e(B,P),i[1]),t(n(e(D,d),-s[1]),n(e(C,p),l[1]))),-c[2]))),-o[3]),n(t(t(n(t(n(e(G,N),o[1]),t(n(e(q,S),-l[1]),n(e(F,M),c[1]))),i[2]),n(t(n(e(G,N),i[1]),t(n(e(U,m),-l[1]),n(e(D,d),c[1]))),-o[2])),t(n(t(n(e(q,S),i[1]),t(n(e(U,m),-o[1]),n(e(T,f),c[1]))),l[2]),n(t(n(e(F,M),i[1]),t(n(e(D,d),-o[1]),n(e(T,f),l[1]))),-c[2]))),s[3]))),t(t(n(t(t(n(t(n(e(H,z),o[1]),t(n(e(q,S),-s[1]),n(e(I,A),c[1]))),i[2]),n(t(n(e(H,z),i[1]),t(n(e(U,m),-s[1]),n(e(C,p),c[1]))),-o[2])),t(n(t(n(e(q,S),i[1]),t(n(e(U,m),-o[1]),n(e(T,f),c[1]))),s[2]),n(t(n(e(I,A),i[1]),t(n(e(C,p),-o[1]),n(e(T,f),s[1]))),-c[2]))),-l[3]),n(t(t(n(t(n(e(B,P),o[1]),t(n(e(F,M),-s[1]),n(e(I,A),l[1]))),i[2]),n(t(n(e(B,P),i[1]),t(n(e(D,d),-s[1]),n(e(C,p),l[1]))),-o[2])),t(n(t(n(e(F,M),i[1]),t(n(e(D,d),-o[1]),n(e(T,f),l[1]))),s[2]),n(t(n(e(I,A),i[1]),t(n(e(C,p),-o[1]),n(e(T,f),s[1]))),-l[2]))),c[3])),t(n(t(t(n(t(n(e(G,N),o[1]),t(n(e(q,S),-l[1]),n(e(F,M),c[1]))),a[2]),n(t(n(e(G,N),a[1]),t(n(e(V,b),-l[1]),n(e(R,_),c[1]))),-o[2])),t(n(t(n(e(q,S),a[1]),t(n(e(V,b),-o[1]),n(e(k,v),c[1]))),l[2]),n(t(n(e(F,M),a[1]),t(n(e(R,_),-o[1]),n(e(k,v),l[1]))),-c[2]))),i[3]),n(t(t(n(t(n(e(G,N),o[1]),t(n(e(q,S),-l[1]),n(e(F,M),c[1]))),i[2]),n(t(n(e(G,N),i[1]),t(n(e(U,m),-l[1]),n(e(D,d),c[1]))),-o[2])),t(n(t(n(e(q,S),i[1]),t(n(e(U,m),-o[1]),n(e(T,f),c[1]))),l[2]),n(t(n(e(F,M),i[1]),t(n(e(D,d),-o[1]),n(e(T,f),l[1]))),-c[2]))),-a[3])))),t(t(t(n(t(t(n(t(n(e(G,N),a[1]),t(n(e(V,b),-l[1]),n(e(R,_),c[1]))),i[2]),n(t(n(e(G,N),i[1]),t(n(e(U,m),-l[1]),n(e(D,d),c[1]))),-a[2])),t(n(t(n(e(V,b),i[1]),t(n(e(U,m),-a[1]),n(e(y,h),c[1]))),l[2]),n(t(n(e(R,_),i[1]),t(n(e(D,d),-a[1]),n(e(y,h),l[1]))),-c[2]))),o[3]),n(t(t(n(t(n(e(q,S),a[1]),t(n(e(V,b),-o[1]),n(e(k,v),c[1]))),i[2]),n(t(n(e(q,S),i[1]),t(n(e(U,m),-o[1]),n(e(T,f),c[1]))),-a[2])),t(n(t(n(e(V,b),i[1]),t(n(e(U,m),-a[1]),n(e(y,h),c[1]))),o[2]),n(t(n(e(k,v),i[1]),t(n(e(T,f),-a[1]),n(e(y,h),o[1]))),-c[2]))),-l[3])),t(n(t(t(n(t(n(e(F,M),a[1]),t(n(e(R,_),-o[1]),n(e(k,v),l[1]))),i[2]),n(t(n(e(F,M),i[1]),t(n(e(D,d),-o[1]),n(e(T,f),l[1]))),-a[2])),t(n(t(n(e(R,_),i[1]),t(n(e(D,d),-a[1]),n(e(y,h),l[1]))),o[2]),n(t(n(e(k,v),i[1]),t(n(e(T,f),-a[1]),n(e(y,h),o[1]))),-l[2]))),c[3]),n(t(t(n(t(n(e(B,P),o[1]),t(n(e(F,M),-s[1]),n(e(I,A),l[1]))),a[2]),n(t(n(e(B,P),a[1]),t(n(e(R,_),-s[1]),n(e(L,x),l[1]))),-o[2])),t(n(t(n(e(F,M),a[1]),t(n(e(R,_),-o[1]),n(e(k,v),l[1]))),s[2]),n(t(n(e(I,A),a[1]),t(n(e(L,x),-o[1]),n(e(k,v),s[1]))),-l[2]))),i[3]))),t(t(n(t(t(n(t(n(e(B,P),o[1]),t(n(e(F,M),-s[1]),n(e(I,A),l[1]))),i[2]),n(t(n(e(B,P),i[1]),t(n(e(D,d),-s[1]),n(e(C,p),l[1]))),-o[2])),t(n(t(n(e(F,M),i[1]),t(n(e(D,d),-o[1]),n(e(T,f),l[1]))),s[2]),n(t(n(e(I,A),i[1]),t(n(e(C,p),-o[1]),n(e(T,f),s[1]))),-l[2]))),-a[3]),n(t(t(n(t(n(e(B,P),a[1]),t(n(e(R,_),-s[1]),n(e(L,x),l[1]))),i[2]),n(t(n(e(B,P),i[1]),t(n(e(D,d),-s[1]),n(e(C,p),l[1]))),-a[2])),t(n(t(n(e(R,_),i[1]),t(n(e(D,d),-a[1]),n(e(y,h),l[1]))),s[2]),n(t(n(e(L,x),i[1]),t(n(e(C,p),-a[1]),n(e(y,h),s[1]))),-l[2]))),o[3])),t(n(t(t(n(t(n(e(F,M),a[1]),t(n(e(R,_),-o[1]),n(e(k,v),l[1]))),i[2]),n(t(n(e(F,M),i[1]),t(n(e(D,d),-o[1]),n(e(T,f),l[1]))),-a[2])),t(n(t(n(e(R,_),i[1]),t(n(e(D,d),-a[1]),n(e(y,h),l[1]))),o[2]),n(t(n(e(k,v),i[1]),t(n(e(T,f),-a[1]),n(e(y,h),o[1]))),-l[2]))),-s[3]),n(t(t(n(t(n(e(I,A),a[1]),t(n(e(L,x),-o[1]),n(e(k,v),s[1]))),i[2]),n(t(n(e(I,A),i[1]),t(n(e(C,p),-o[1]),n(e(T,f),s[1]))),-a[2])),t(n(t(n(e(L,x),i[1]),t(n(e(C,p),-a[1]),n(e(y,h),s[1]))),o[2]),n(t(n(e(k,v),i[1]),t(n(e(T,f),-a[1]),n(e(y,h),o[1]))),-s[2]))),l[3]))))),Y=e(Z,W);return Y[Y.length-1]}}var f=[function(){return 0},function(){return 0},function(){return 0}];function p(t){var e=f[t.length];return e||(e=f[t.length]=s(t.length)),e.apply(void 0,t)}function d(t,e,r,n,i,a,o,s){return function(e,r,l,c,u,h){switch(arguments.length){case 0:case 1:return 0;case 2:return n(e,r);case 3:return i(e,r,l);case 4:return a(e,r,l,c);case 5:return o(e,r,l,c,u);case 6:return s(e,r,l,c,u,h)}for(var f=new Array(arguments.length),p=0;p<arguments.length;++p)f[p]=arguments[p];return t(f)}}!function(){for(;f.length<=6;)f.push(s(f.length));t.exports=d.apply(void 0,[p].concat(f));for(var e=0;e<=6;++e)t.exports[e]=f[e]}()},727:function(t,e,r){\"use strict\";var n=r(2962);function i(t){return(2===t?a:3===t?o:4===t?s:5===t?l:c)(t<6?n[t]:n)}function a(t){return function(e,r){return[t([[+r[0],+e[0][1]],[+r[1],+e[1][1]]]),t([[+e[0][0],+r[0]],[+e[1][0],+r[1]]]),t(e)]}}function o(t){return function(e,r){return[t([[+r[0],+e[0][1],+e[0][2]],[+r[1],+e[1][1],+e[1][2]],[+r[2],+e[2][1],+e[2][2]]]),t([[+e[0][0],+r[0],+e[0][2]],[+e[1][0],+r[1],+e[1][2]],[+e[2][0],+r[2],+e[2][2]]]),t([[+e[0][0],+e[0][1],+r[0]],[+e[1][0],+e[1][1],+r[1]],[+e[2][0],+e[2][1],+r[2]]]),t(e)]}}function s(t){return function(e,r){return[t([[+r[0],+e[0][1],+e[0][2],+e[0][3]],[+r[1],+e[1][1],+e[1][2],+e[1][3]],[+r[2],+e[2][1],+e[2][2],+e[2][3]],[+r[3],+e[3][1],+e[3][2],+e[3][3]]]),t([[+e[0][0],+r[0],+e[0][2],+e[0][3]],[+e[1][0],+r[1],+e[1][2],+e[1][3]],[+e[2][0],+r[2],+e[2][2],+e[2][3]],[+e[3][0],+r[3],+e[3][2],+e[3][3]]]),t([[+e[0][0],+e[0][1],+r[0],+e[0][3]],[+e[1][0],+e[1][1],+r[1],+e[1][3]],[+e[2][0],+e[2][1],+r[2],+e[2][3]],[+e[3][0],+e[3][1],+r[3],+e[3][3]]]),t([[+e[0][0],+e[0][1],+e[0][2],+r[0]],[+e[1][0],+e[1][1],+e[1][2],+r[1]],[+e[2][0],+e[2][1],+e[2][2],+r[2]],[+e[3][0],+e[3][1],+e[3][2],+r[3]]]),t(e)]}}function l(t){return function(e,r){return[t([[+r[0],+e[0][1],+e[0][2],+e[0][3],+e[0][4]],[+r[1],+e[1][1],+e[1][2],+e[1][3],+e[1][4]],[+r[2],+e[2][1],+e[2][2],+e[2][3],+e[2][4]],[+r[3],+e[3][1],+e[3][2],+e[3][3],+e[3][4]],[+r[4],+e[4][1],+e[4][2],+e[4][3],+e[4][4]]]),t([[+e[0][0],+r[0],+e[0][2],+e[0][3],+e[0][4]],[+e[1][0],+r[1],+e[1][2],+e[1][3],+e[1][4]],[+e[2][0],+r[2],+e[2][2],+e[2][3],+e[2][4]],[+e[3][0],+r[3],+e[3][2],+e[3][3],+e[3][4]],[+e[4][0],+r[4],+e[4][2],+e[4][3],+e[4][4]]]),t([[+e[0][0],+e[0][1],+r[0],+e[0][3],+e[0][4]],[+e[1][0],+e[1][1],+r[1],+e[1][3],+e[1][4]],[+e[2][0],+e[2][1],+r[2],+e[2][3],+e[2][4]],[+e[3][0],+e[3][1],+r[3],+e[3][3],+e[3][4]],[+e[4][0],+e[4][1],+r[4],+e[4][3],+e[4][4]]]),t([[+e[0][0],+e[0][1],+e[0][2],+r[0],+e[0][4]],[+e[1][0],+e[1][1],+e[1][2],+r[1],+e[1][4]],[+e[2][0],+e[2][1],+e[2][2],+r[2],+e[2][4]],[+e[3][0],+e[3][1],+e[3][2],+r[3],+e[3][4]],[+e[4][0],+e[4][1],+e[4][2],+r[4],+e[4][4]]]),t([[+e[0][0],+e[0][1],+e[0][2],+e[0][3],+r[0]],[+e[1][0],+e[1][1],+e[1][2],+e[1][3],+r[1]],[+e[2][0],+e[2][1],+e[2][2],+e[2][3],+r[2]],[+e[3][0],+e[3][1],+e[3][2],+e[3][3],+r[3]],[+e[4][0],+e[4][1],+e[4][2],+e[4][3],+r[4]]]),t(e)]}}function c(t){return function(e,r){return[t([[+r[0],+e[0][1],+e[0][2],+e[0][3],+e[0][4],+e[0][5]],[+r[1],+e[1][1],+e[1][2],+e[1][3],+e[1][4],+e[1][5]],[+r[2],+e[2][1],+e[2][2],+e[2][3],+e[2][4],+e[2][5]],[+r[3],+e[3][1],+e[3][2],+e[3][3],+e[3][4],+e[3][5]],[+r[4],+e[4][1],+e[4][2],+e[4][3],+e[4][4],+e[4][5]],[+r[5],+e[5][1],+e[5][2],+e[5][3],+e[5][4],+e[5][5]]]),t([[+e[0][0],+r[0],+e[0][2],+e[0][3],+e[0][4],+e[0][5]],[+e[1][0],+r[1],+e[1][2],+e[1][3],+e[1][4],+e[1][5]],[+e[2][0],+r[2],+e[2][2],+e[2][3],+e[2][4],+e[2][5]],[+e[3][0],+r[3],+e[3][2],+e[3][3],+e[3][4],+e[3][5]],[+e[4][0],+r[4],+e[4][2],+e[4][3],+e[4][4],+e[4][5]],[+e[5][0],+r[5],+e[5][2],+e[5][3],+e[5][4],+e[5][5]]]),t([[+e[0][0],+e[0][1],+r[0],+e[0][3],+e[0][4],+e[0][5]],[+e[1][0],+e[1][1],+r[1],+e[1][3],+e[1][4],+e[1][5]],[+e[2][0],+e[2][1],+r[2],+e[2][3],+e[2][4],+e[2][5]],[+e[3][0],+e[3][1],+r[3],+e[3][3],+e[3][4],+e[3][5]],[+e[4][0],+e[4][1],+r[4],+e[4][3],+e[4][4],+e[4][5]],[+e[5][0],+e[5][1],+r[5],+e[5][3],+e[5][4],+e[5][5]]]),t([[+e[0][0],+e[0][1],+e[0][2],+r[0],+e[0][4],+e[0][5]],[+e[1][0],+e[1][1],+e[1][2],+r[1],+e[1][4],+e[1][5]],[+e[2][0],+e[2][1],+e[2][2],+r[2],+e[2][4],+e[2][5]],[+e[3][0],+e[3][1],+e[3][2],+r[3],+e[3][4],+e[3][5]],[+e[4][0],+e[4][1],+e[4][2],+r[4],+e[4][4],+e[4][5]],[+e[5][0],+e[5][1],+e[5][2],+r[5],+e[5][4],+e[5][5]]]),t([[+e[0][0],+e[0][1],+e[0][2],+e[0][3],+r[0],+e[0][5]],[+e[1][0],+e[1][1],+e[1][2],+e[1][3],+r[1],+e[1][5]],[+e[2][0],+e[2][1],+e[2][2],+e[2][3],+r[2],+e[2][5]],[+e[3][0],+e[3][1],+e[3][2],+e[3][3],+r[3],+e[3][5]],[+e[4][0],+e[4][1],+e[4][2],+e[4][3],+r[4],+e[4][5]],[+e[5][0],+e[5][1],+e[5][2],+e[5][3],+r[5],+e[5][5]]]),t([[+e[0][0],+e[0][1],+e[0][2],+e[0][3],+e[0][4],+r[0]],[+e[1][0],+e[1][1],+e[1][2],+e[1][3],+e[1][4],+r[1]],[+e[2][0],+e[2][1],+e[2][2],+e[2][3],+e[2][4],+r[2]],[+e[3][0],+e[3][1],+e[3][2],+e[3][3],+e[3][4],+r[3]],[+e[4][0],+e[4][1],+e[4][2],+e[4][3],+e[4][4],+r[4]],[+e[5][0],+e[5][1],+e[5][2],+e[5][3],+e[5][4],+r[5]]]),t(e)]}}var u=[function(){return[[0]]},function(t,e){return[[e[0]],[t[0][0]]]}];function h(t,e,r,n,i,a,o,s){return function(l,c){switch(l.length){case 0:return t(l,c);case 1:return e(l,c);case 2:return r(l,c);case 3:return n(l,c);case 4:return i(l,c);case 5:return a(l,c)}var u=o[l.length];return u||(u=o[l.length]=s(l.length)),u(l,c)}}!function(){for(;u.length<6;)u.push(i(u.length));t.exports=h.apply(void 0,u.concat([u,i]));for(var e=0;e<6;++e)t.exports[e]=u[e]}()},3250:function(t,e,r){\"use strict\";var n=r(5250),i=r(8210),a=r(3012),o=r(8545);function s(t,e,r,n){return function(r,i,a){var o=t(t(e(i[1],a[0]),e(-a[1],i[0])),t(e(r[1],i[0]),e(-i[1],r[0]))),s=t(e(r[1],a[0]),e(-a[1],r[0])),l=n(o,s);return l[l.length-1]}}function l(t,e,r,n){return function(i,a,o,s){var l=t(t(r(t(e(o[1],s[0]),e(-s[1],o[0])),a[2]),t(r(t(e(a[1],s[0]),e(-s[1],a[0])),-o[2]),r(t(e(a[1],o[0]),e(-o[1],a[0])),s[2]))),t(r(t(e(a[1],s[0]),e(-s[1],a[0])),i[2]),t(r(t(e(i[1],s[0]),e(-s[1],i[0])),-a[2]),r(t(e(i[1],a[0]),e(-a[1],i[0])),s[2])))),c=t(t(r(t(e(o[1],s[0]),e(-s[1],o[0])),i[2]),t(r(t(e(i[1],s[0]),e(-s[1],i[0])),-o[2]),r(t(e(i[1],o[0]),e(-o[1],i[0])),s[2]))),t(r(t(e(a[1],o[0]),e(-o[1],a[0])),i[2]),t(r(t(e(i[1],o[0]),e(-o[1],i[0])),-a[2]),r(t(e(i[1],a[0]),e(-a[1],i[0])),o[2])))),u=n(l,c);return u[u.length-1]}}function c(t,e,r,n){return function(i,a,o,s,l){var c=t(t(t(r(t(r(t(e(s[1],l[0]),e(-l[1],s[0])),o[2]),t(r(t(e(o[1],l[0]),e(-l[1],o[0])),-s[2]),r(t(e(o[1],s[0]),e(-s[1],o[0])),l[2]))),a[3]),t(r(t(r(t(e(s[1],l[0]),e(-l[1],s[0])),a[2]),t(r(t(e(a[1],l[0]),e(-l[1],a[0])),-s[2]),r(t(e(a[1],s[0]),e(-s[1],a[0])),l[2]))),-o[3]),r(t(r(t(e(o[1],l[0]),e(-l[1],o[0])),a[2]),t(r(t(e(a[1],l[0]),e(-l[1],a[0])),-o[2]),r(t(e(a[1],o[0]),e(-o[1],a[0])),l[2]))),s[3]))),t(r(t(r(t(e(o[1],s[0]),e(-s[1],o[0])),a[2]),t(r(t(e(a[1],s[0]),e(-s[1],a[0])),-o[2]),r(t(e(a[1],o[0]),e(-o[1],a[0])),s[2]))),-l[3]),t(r(t(r(t(e(s[1],l[0]),e(-l[1],s[0])),a[2]),t(r(t(e(a[1],l[0]),e(-l[1],a[0])),-s[2]),r(t(e(a[1],s[0]),e(-s[1],a[0])),l[2]))),i[3]),r(t(r(t(e(s[1],l[0]),e(-l[1],s[0])),i[2]),t(r(t(e(i[1],l[0]),e(-l[1],i[0])),-s[2]),r(t(e(i[1],s[0]),e(-s[1],i[0])),l[2]))),-a[3])))),t(t(r(t(r(t(e(a[1],l[0]),e(-l[1],a[0])),i[2]),t(r(t(e(i[1],l[0]),e(-l[1],i[0])),-a[2]),r(t(e(i[1],a[0]),e(-a[1],i[0])),l[2]))),s[3]),t(r(t(r(t(e(a[1],s[0]),e(-s[1],a[0])),i[2]),t(r(t(e(i[1],s[0]),e(-s[1],i[0])),-a[2]),r(t(e(i[1],a[0]),e(-a[1],i[0])),s[2]))),-l[3]),r(t(r(t(e(o[1],s[0]),e(-s[1],o[0])),a[2]),t(r(t(e(a[1],s[0]),e(-s[1],a[0])),-o[2]),r(t(e(a[1],o[0]),e(-o[1],a[0])),s[2]))),i[3]))),t(r(t(r(t(e(o[1],s[0]),e(-s[1],o[0])),i[2]),t(r(t(e(i[1],s[0]),e(-s[1],i[0])),-o[2]),r(t(e(i[1],o[0]),e(-o[1],i[0])),s[2]))),-a[3]),t(r(t(r(t(e(a[1],s[0]),e(-s[1],a[0])),i[2]),t(r(t(e(i[1],s[0]),e(-s[1],i[0])),-a[2]),r(t(e(i[1],a[0]),e(-a[1],i[0])),s[2]))),o[3]),r(t(r(t(e(a[1],o[0]),e(-o[1],a[0])),i[2]),t(r(t(e(i[1],o[0]),e(-o[1],i[0])),-a[2]),r(t(e(i[1],a[0]),e(-a[1],i[0])),o[2]))),-s[3]))))),u=t(t(t(r(t(r(t(e(s[1],l[0]),e(-l[1],s[0])),o[2]),t(r(t(e(o[1],l[0]),e(-l[1],o[0])),-s[2]),r(t(e(o[1],s[0]),e(-s[1],o[0])),l[2]))),i[3]),r(t(r(t(e(s[1],l[0]),e(-l[1],s[0])),i[2]),t(r(t(e(i[1],l[0]),e(-l[1],i[0])),-s[2]),r(t(e(i[1],s[0]),e(-s[1],i[0])),l[2]))),-o[3])),t(r(t(r(t(e(o[1],l[0]),e(-l[1],o[0])),i[2]),t(r(t(e(i[1],l[0]),e(-l[1],i[0])),-o[2]),r(t(e(i[1],o[0]),e(-o[1],i[0])),l[2]))),s[3]),r(t(r(t(e(o[1],s[0]),e(-s[1],o[0])),i[2]),t(r(t(e(i[1],s[0]),e(-s[1],i[0])),-o[2]),r(t(e(i[1],o[0]),e(-o[1],i[0])),s[2]))),-l[3]))),t(t(r(t(r(t(e(o[1],l[0]),e(-l[1],o[0])),a[2]),t(r(t(e(a[1],l[0]),e(-l[1],a[0])),-o[2]),r(t(e(a[1],o[0]),e(-o[1],a[0])),l[2]))),i[3]),r(t(r(t(e(o[1],l[0]),e(-l[1],o[0])),i[2]),t(r(t(e(i[1],l[0]),e(-l[1],i[0])),-o[2]),r(t(e(i[1],o[0]),e(-o[1],i[0])),l[2]))),-a[3])),t(r(t(r(t(e(a[1],l[0]),e(-l[1],a[0])),i[2]),t(r(t(e(i[1],l[0]),e(-l[1],i[0])),-a[2]),r(t(e(i[1],a[0]),e(-a[1],i[0])),l[2]))),o[3]),r(t(r(t(e(a[1],o[0]),e(-o[1],a[0])),i[2]),t(r(t(e(i[1],o[0]),e(-o[1],i[0])),-a[2]),r(t(e(i[1],a[0]),e(-a[1],i[0])),o[2]))),-l[3])))),h=n(c,u);return h[h.length-1]}}function u(t){return(3===t?s:4===t?l:c)(i,n,a,o)}var h=u(3),f=u(4),p=[function(){return 0},function(){return 0},function(t,e){return e[0]-t[0]},function(t,e,r){var n,i=(t[1]-r[1])*(e[0]-r[0]),a=(t[0]-r[0])*(e[1]-r[1]),o=i-a;if(i>0){if(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:h(t,e,r)},function(t,e,r,n){var i=t[0]-n[0],a=e[0]-n[0],o=r[0]-n[0],s=t[1]-n[1],l=e[1]-n[1],c=r[1]-n[1],u=t[2]-n[2],h=e[2]-n[2],p=r[2]-n[2],d=a*c,m=o*l,g=o*s,y=i*c,v=i*l,x=a*s,_=u*(d-m)+h*(g-y)+p*(v-x),b=7771561172376103e-31*((Math.abs(d)+Math.abs(m))*Math.abs(u)+(Math.abs(g)+Math.abs(y))*Math.abs(h)+(Math.abs(v)+Math.abs(x))*Math.abs(p));return _>b||-_>b?_:f(t,e,r,n)}];function d(t){var e=p[t.length];return e||(e=p[t.length]=u(t.length)),e.apply(void 0,t)}function m(t,e,r,n,i,a,o){return function(e,r,s,l,c){switch(arguments.length){case 0:case 1:return 0;case 2:return n(e,r);case 3:return i(e,r,s);case 4:return a(e,r,s,l);case 5:return o(e,r,s,l,c)}for(var u=new Array(arguments.length),h=0;h<arguments.length;++h)u[h]=arguments[h];return t(u)}}!function(){for(;p.length<=5;)p.push(u(p.length));t.exports=m.apply(void 0,[d].concat(p));for(var e=0;e<=5;++e)t.exports[e]=p[e]}()},5382:function(t,e,r){\"use strict\";var n=r(8210),i=r(3012);t.exports=function(t,e){if(1===t.length)return i(e,t[0]);if(1===e.length)return i(t,e[0]);if(0===t.length||0===e.length)return[0];var r=[0];if(t.length<e.length)for(var a=0;a<t.length;++a)r=n(r,i(e,t[a]));else for(a=0;a<e.length;++a)r=n(r,i(t,e[a]));return r}},3012:function(t,e,r){\"use strict\";var n=r(5250),i=r(9362);t.exports=function(t,e){var r=t.length;if(1===r){var a=n(t[0],e);return a[0]?a:[a[1]]}var o=new Array(2*r),s=[.1,.1],l=[.1,.1],c=0;n(t[0],e,s),s[0]&&(o[c++]=s[0]);for(var u=1;u<r;++u){n(t[u],e,l);var h=s[1];i(h,l[0],s),s[0]&&(o[c++]=s[0]);var f=l[1],p=s[1],d=f+p,m=p-(d-f);s[1]=d,m&&(o[c++]=m)}return s[1]&&(o[c++]=s[1]),0===c&&(o[c++]=0),o.length=c,o}},1125:function(t,e,r){\"use strict\";t.exports=function(t,e,r,i){var a=n(t,r,i),o=n(e,r,i);if(a>0&&o>0||a<0&&o<0)return!1;var s=n(r,t,e),l=n(i,t,e);return!(s>0&&l>0||s<0&&l<0)&&(0!==a||0!==o||0!==s||0!==l||function(t,e,r,n){for(var i=0;i<2;++i){var a=t[i],o=e[i],s=Math.min(a,o),l=Math.max(a,o),c=r[i],u=n[i],h=Math.min(c,u);if(Math.max(c,u)<s||l<h)return!1}return!0}(t,e,r,i))};var n=r(3250)[3]},8545:function(t){\"use strict\";t.exports=function(t,e){var r=0|t.length,n=0|e.length;if(1===r&&1===n)return function(t,e){var r=t+e,n=r-t,i=t-(r-n)+(e-n);return i?[i,r]:[r]}(t[0],-e[0]);var i,a,o=new Array(r+n),s=0,l=0,c=0,u=Math.abs,h=t[l],f=u(h),p=-e[c],d=u(p);f<d?(a=h,(l+=1)<r&&(f=u(h=t[l]))):(a=p,(c+=1)<n&&(d=u(p=-e[c]))),l<r&&f<d||c>=n?(i=h,(l+=1)<r&&(f=u(h=t[l]))):(i=p,(c+=1)<n&&(d=u(p=-e[c])));for(var m,g,y=i+a,v=y-i,x=a-v,_=x,b=y;l<r&&c<n;)f<d?(i=h,(l+=1)<r&&(f=u(h=t[l]))):(i=p,(c+=1)<n&&(d=u(p=-e[c]))),(x=(a=_)-(v=(y=i+a)-i))&&(o[s++]=x),_=b-((m=b+y)-(g=m-b))+(y-g),b=m;for(;l<r;)(x=(a=_)-(v=(y=(i=h)+a)-i))&&(o[s++]=x),_=b-((m=b+y)-(g=m-b))+(y-g),b=m,(l+=1)<r&&(h=t[l]);for(;c<n;)(x=(a=_)-(v=(y=(i=p)+a)-i))&&(o[s++]=x),_=b-((m=b+y)-(g=m-b))+(y-g),b=m,(c+=1)<n&&(p=-e[c]);return _&&(o[s++]=_),b&&(o[s++]=b),s||(o[s++]=0),o.length=s,o}},8210:function(t){\"use strict\";t.exports=function(t,e){var r=0|t.length,n=0|e.length;if(1===r&&1===n)return function(t,e){var r=t+e,n=r-t,i=t-(r-n)+(e-n);return i?[i,r]:[r]}(t[0],e[0]);var i,a,o=new Array(r+n),s=0,l=0,c=0,u=Math.abs,h=t[l],f=u(h),p=e[c],d=u(p);f<d?(a=h,(l+=1)<r&&(f=u(h=t[l]))):(a=p,(c+=1)<n&&(d=u(p=e[c]))),l<r&&f<d||c>=n?(i=h,(l+=1)<r&&(f=u(h=t[l]))):(i=p,(c+=1)<n&&(d=u(p=e[c])));for(var m,g,y=i+a,v=y-i,x=a-v,_=x,b=y;l<r&&c<n;)f<d?(i=h,(l+=1)<r&&(f=u(h=t[l]))):(i=p,(c+=1)<n&&(d=u(p=e[c]))),(x=(a=_)-(v=(y=i+a)-i))&&(o[s++]=x),_=b-((m=b+y)-(g=m-b))+(y-g),b=m;for(;l<r;)(x=(a=_)-(v=(y=(i=h)+a)-i))&&(o[s++]=x),_=b-((m=b+y)-(g=m-b))+(y-g),b=m,(l+=1)<r&&(h=t[l]);for(;c<n;)(x=(a=_)-(v=(y=(i=p)+a)-i))&&(o[s++]=x),_=b-((m=b+y)-(g=m-b))+(y-g),b=m,(c+=1)<n&&(p=e[c]);return _&&(o[s++]=_),b&&(o[s++]=b),s||(o[s++]=0),o.length=s,o}},9127:function(t,e,r){\"use strict\";t.exports=function(t){return i(n(t))};var n=r(6204),i=r(5771)},7765:function(t,e,r){\"use strict\";t.exports=function(t,e,r,s){if(r=r||0,void 0===s&&(s=function(t){for(var e=t.length,r=0,n=0;n<e;++n)r=0|Math.max(r,t[n].length);return r-1}(t)),0===t.length||s<1)return{cells:[],vertexIds:[],vertexWeights:[]};var l=function(t,e){for(var r=t.length,n=i.mallocUint8(r),a=0;a<r;++a)n[a]=t[a]<e|0;return n}(e,+r),c=function(t,e){for(var r=t.length,o=e*(e+1)/2*r|0,s=i.mallocUint32(2*o),l=0,c=0;c<r;++c)for(var u=t[c],h=(e=u.length,0);h<e;++h)for(var f=0;f<h;++f){var p=u[f],d=u[h];s[l++]=0|Math.min(p,d),s[l++]=0|Math.max(p,d)}a(n(s,[l/2|0,2]));var m=2;for(c=2;c<l;c+=2)s[c-2]===s[c]&&s[c-1]===s[c+1]||(s[m++]=s[c],s[m++]=s[c+1]);return n(s,[m/2|0,2])}(t,s),u=function(t,e,r,a){for(var o=t.data,s=t.shape[0],l=i.mallocDouble(s),c=0,u=0;u<s;++u){var h=o[2*u],f=o[2*u+1];if(r[h]!==r[f]){var p=e[h],d=e[f];o[2*c]=h,o[2*c+1]=f,l[c++]=(d-a)/(d-p)}}return t.shape[0]=c,n(l,[c])}(c,e,l,+r),h=function(t,e){var r=i.mallocInt32(2*e),n=t.shape[0],a=t.data;r[0]=0;for(var o=0,s=0;s<n;++s){var l=a[2*s];if(l!==o){for(r[2*o+1]=s;++o<l;)r[2*o]=s,r[2*o+1]=s;r[2*o]=s}}for(r[2*o+1]=n;++o<e;)r[2*o]=r[2*o+1]=n;return r}(c,0|e.length),f=o(s)(t,c.data,h,l),p=function(t){for(var e=0|t.shape[0],r=t.data,n=new Array(e),i=0;i<e;++i)n[i]=[r[2*i],r[2*i+1]];return n}(c),d=[].slice.call(u.data,0,u.shape[0]);return i.free(l),i.free(c.data),i.free(u.data),i.free(h),{cells:f,vertexIds:p,vertexWeights:d}};var n=r(9618),i=r(1888),a=r(446),o=r(1570)},1570:function(t){\"use strict\";t.exports=function(t){return e[t]()};var e=[function(){return function(t,e,r,n){for(var i=t.length,a=0;a<i;++a)t[a].length;return[]}},function(){function t(t,e,r,n){for(var i=0|Math.min(r,n),a=0|Math.max(r,n),o=t[2*i],s=t[2*i+1];o<s;){var l=o+s>>1,c=e[2*l+1];if(c===a)return l;a<c?s=l:o=l+1}return o}return function(e,r,n,i){for(var a=e.length,o=[],s=0;s<a;++s){var l=e[s];if(2===l.length){var c=(i[l[0]]<<0)+(i[l[1]]<<1);if(0===c||3===c)continue;switch(c){case 0:case 3:break;case 1:o.push([t(n,r,l[0],l[1])]);break;case 2:o.push([t(n,r,l[1],l[0])])}}}return o}},function(){function t(t,e,r,n){for(var i=0|Math.min(r,n),a=0|Math.max(r,n),o=t[2*i],s=t[2*i+1];o<s;){var l=o+s>>1,c=e[2*l+1];if(c===a)return l;a<c?s=l:o=l+1}return o}return function(e,r,n,i){for(var a=e.length,o=[],s=0;s<a;++s){var l=e[s],c=l.length;if(3===c){if(0==(u=(i[l[0]]<<0)+(i[l[1]]<<1)+(i[l[2]]<<2))||7===u)continue;switch(u){case 0:case 7:break;case 1:o.push([t(n,r,l[0],l[2]),t(n,r,l[0],l[1])]);break;case 2:o.push([t(n,r,l[1],l[0]),t(n,r,l[1],l[2])]);break;case 3:o.push([t(n,r,l[0],l[2]),t(n,r,l[1],l[2])]);break;case 4:o.push([t(n,r,l[2],l[1]),t(n,r,l[2],l[0])]);break;case 5:o.push([t(n,r,l[2],l[1]),t(n,r,l[0],l[1])]);break;case 6:o.push([t(n,r,l[1],l[0]),t(n,r,l[2],l[0])])}}else if(2===c){var u;if(0==(u=(i[l[0]]<<0)+(i[l[1]]<<1))||3===u)continue;switch(u){case 0:case 3:break;case 1:o.push([t(n,r,l[0],l[1])]);break;case 2:o.push([t(n,r,l[1],l[0])])}}}return o}},function(){function t(t,e,r,n){for(var i=0|Math.min(r,n),a=0|Math.max(r,n),o=t[2*i],s=t[2*i+1];o<s;){var l=o+s>>1,c=e[2*l+1];if(c===a)return l;a<c?s=l:o=l+1}return o}return function(e,r,n,i){for(var a=e.length,o=[],s=0;s<a;++s){var l=e[s],c=l.length;if(4===c){if(0==(u=(i[l[0]]<<0)+(i[l[1]]<<1)+(i[l[2]]<<2)+(i[l[3]]<<3))||15===u)continue;switch(u){case 0:case 15:break;case 1:o.push([t(n,r,l[0],l[1]),t(n,r,l[0],l[2]),t(n,r,l[0],l[3])]);break;case 2:o.push([t(n,r,l[1],l[2]),t(n,r,l[1],l[0]),t(n,r,l[1],l[3])]);break;case 3:o.push([t(n,r,l[1],l[2]),t(n,r,l[0],l[2]),t(n,r,l[0],l[3])],[t(n,r,l[1],l[3]),t(n,r,l[1],l[2]),t(n,r,l[0],l[3])]);break;case 4:o.push([t(n,r,l[2],l[0]),t(n,r,l[2],l[1]),t(n,r,l[2],l[3])]);break;case 5:o.push([t(n,r,l[0],l[1]),t(n,r,l[2],l[1]),t(n,r,l[0],l[3])],[t(n,r,l[2],l[1]),t(n,r,l[2],l[3]),t(n,r,l[0],l[3])]);break;case 6:o.push([t(n,r,l[2],l[0]),t(n,r,l[1],l[0]),t(n,r,l[1],l[3])],[t(n,r,l[2],l[3]),t(n,r,l[2],l[0]),t(n,r,l[1],l[3])]);break;case 7:o.push([t(n,r,l[0],l[3]),t(n,r,l[1],l[3]),t(n,r,l[2],l[3])]);break;case 8:o.push([t(n,r,l[3],l[1]),t(n,r,l[3],l[0]),t(n,r,l[3],l[2])]);break;case 9:o.push([t(n,r,l[3],l[1]),t(n,r,l[0],l[1]),t(n,r,l[0],l[2])],[t(n,r,l[3],l[2]),t(n,r,l[3],l[1]),t(n,r,l[0],l[2])]);break;case 10:o.push([t(n,r,l[1],l[0]),t(n,r,l[3],l[0]),t(n,r,l[1],l[2])],[t(n,r,l[3],l[0]),t(n,r,l[3],l[2]),t(n,r,l[1],l[2])]);break;case 11:o.push([t(n,r,l[1],l[2]),t(n,r,l[0],l[2]),t(n,r,l[3],l[2])]);break;case 12:o.push([t(n,r,l[3],l[0]),t(n,r,l[2],l[0]),t(n,r,l[2],l[1])],[t(n,r,l[3],l[1]),t(n,r,l[3],l[0]),t(n,r,l[2],l[1])]);break;case 13:o.push([t(n,r,l[0],l[1]),t(n,r,l[2],l[1]),t(n,r,l[3],l[1])]);break;case 14:o.push([t(n,r,l[2],l[0]),t(n,r,l[1],l[0]),t(n,r,l[3],l[0])])}}else if(3===c){if(0==(u=(i[l[0]]<<0)+(i[l[1]]<<1)+(i[l[2]]<<2))||7===u)continue;switch(u){case 0:case 7:break;case 1:o.push([t(n,r,l[0],l[2]),t(n,r,l[0],l[1])]);break;case 2:o.push([t(n,r,l[1],l[0]),t(n,r,l[1],l[2])]);break;case 3:o.push([t(n,r,l[0],l[2]),t(n,r,l[1],l[2])]);break;case 4:o.push([t(n,r,l[2],l[1]),t(n,r,l[2],l[0])]);break;case 5:o.push([t(n,r,l[2],l[1]),t(n,r,l[0],l[1])]);break;case 6:o.push([t(n,r,l[1],l[0]),t(n,r,l[2],l[0])])}}else if(2===c){var u;if(0==(u=(i[l[0]]<<0)+(i[l[1]]<<1))||3===u)continue;switch(u){case 0:case 3:break;case 1:o.push([t(n,r,l[0],l[1])]);break;case 2:o.push([t(n,r,l[1],l[0])])}}}return o}}]},6803:function(t,e,r){\"use strict\";r(8828),r(1755);function n(t,e){var r=t.length,n=t.length-e.length,i=Math.min;if(n)return n;switch(r){case 0:return 0;case 1:return t[0]-e[0];case 2:return(s=t[0]+t[1]-e[0]-e[1])||i(t[0],t[1])-i(e[0],e[1]);case 3:var a=t[0]+t[1],o=e[0]+e[1];if(s=a+t[2]-(o+e[2]))return s;var s,l=i(t[0],t[1]),c=i(e[0],e[1]);return(s=i(l,t[2])-i(c,e[2]))||i(l+t[2],a)-i(c+e[2],o);default:var u=t.slice(0);u.sort();var h=e.slice(0);h.sort();for(var f=0;f<r;++f)if(n=u[f]-h[f])return n;return 0}}e.Fw=n},3105:function(t,e){\"use strict\";function r(t){var e=32;return(t&=-t)&&e--,65535&t&&(e-=16),16711935&t&&(e-=8),252645135&t&&(e-=4),858993459&t&&(e-=2),1431655765&t&&(e-=1),e}e.INT_BITS=32,e.INT_MAX=2147483647,e.INT_MIN=-1<<31,e.sign=function(t){return(t>0)-(t<0)},e.abs=function(t){var e=t>>31;return(t^e)-e},e.min=function(t,e){return e^(t^e)&-(t<e)},e.max=function(t,e){return t^(t^e)&-(t<e)},e.isPow2=function(t){return!(t&t-1||!t)},e.log2=function(t){var e,r;return e=(t>65535)<<4,e|=r=((t>>>=e)>255)<<3,e|=r=((t>>>=r)>15)<<2,(e|=r=((t>>>=r)>3)<<1)|(t>>>=r)>>1},e.log10=function(t){return t>=1e9?9:t>=1e8?8:t>=1e7?7:t>=1e6?6:t>=1e5?5:t>=1e4?4:t>=1e3?3:t>=100?2:t>=10?1:0},e.popCount=function(t){return 16843009*((t=(858993459&(t-=t>>>1&1431655765))+(t>>>2&858993459))+(t>>>4)&252645135)>>>24},e.countTrailingZeros=r,e.nextPow2=function(t){return t+=0===t,--t,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,1+(t|=t>>>16)},e.prevPow2=function(t){return t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,(t|=t>>>16)-(t>>>1)},e.parity=function(t){return t^=t>>>16,t^=t>>>8,t^=t>>>4,27030>>>(t&=15)&1};var n=new Array(256);!function(t){for(var e=0;e<256;++e){var r=e,n=e,i=7;for(r>>>=1;r;r>>>=1)n<<=1,n|=1&r,--i;t[e]=n<<i&255}}(n),e.reverse=function(t){return n[255&t]<<24|n[t>>>8&255]<<16|n[t>>>16&255]<<8|n[t>>>24&255]},e.interleave2=function(t,e){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t&=65535)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e&=65535)|e<<8))|e<<4))|e<<2))|e<<1))<<1},e.deinterleave2=function(t,e){return(t=65535&((t=16711935&((t=252645135&((t=858993459&((t=t>>>e&1431655765)|t>>>1))|t>>>2))|t>>>4))|t>>>16))<<16>>16},e.interleave3=function(t,e,r){return t=1227133513&((t=3272356035&((t=251719695&((t=4278190335&((t&=1023)|t<<16))|t<<8))|t<<4))|t<<2),(t|=(e=1227133513&((e=3272356035&((e=251719695&((e=4278190335&((e&=1023)|e<<16))|e<<8))|e<<4))|e<<2))<<1)|(r=1227133513&((r=3272356035&((r=251719695&((r=4278190335&((r&=1023)|r<<16))|r<<8))|r<<4))|r<<2))<<2},e.deinterleave3=function(t,e){return(t=1023&((t=4278190335&((t=251719695&((t=3272356035&((t=t>>>e&1227133513)|t>>>2))|t>>>4))|t>>>8))|t>>>16))<<22>>22},e.nextCombination=function(t){var e=t|t-1;return e+1|(~e&-~e)-1>>>r(t)+1}},2014:function(t,e,r){\"use strict\";var n=r(3105),i=r(4623);function a(t,e){var r=t.length,n=t.length-e.length,i=Math.min;if(n)return n;switch(r){case 0:return 0;case 1:return t[0]-e[0];case 2:return(s=t[0]+t[1]-e[0]-e[1])||i(t[0],t[1])-i(e[0],e[1]);case 3:var a=t[0]+t[1],o=e[0]+e[1];if(s=a+t[2]-(o+e[2]))return s;var s,l=i(t[0],t[1]),c=i(e[0],e[1]);return(s=i(l,t[2])-i(c,e[2]))||i(l+t[2],a)-i(c+e[2],o);default:var u=t.slice(0);u.sort();var h=e.slice(0);h.sort();for(var f=0;f<r;++f)if(n=u[f]-h[f])return n;return 0}}function o(t,e){return a(t[0],e[0])}function s(t,e){if(e){for(var r=t.length,n=new Array(r),i=0;i<r;++i)n[i]=[t[i],e[i]];for(n.sort(o),i=0;i<r;++i)t[i]=n[i][0],e[i]=n[i][1];return t}return t.sort(a),t}function l(t){if(0===t.length)return[];for(var e=1,r=t.length,n=1;n<r;++n){var i=t[n];if(a(i,t[n-1])){if(n===e){e++;continue}t[e++]=i}}return t.length=e,t}function c(t,e){for(var r=0,n=t.length-1,i=-1;r<=n;){var o=r+n>>1,s=a(t[o],e);s<=0?(0===s&&(i=o),r=o+1):s>0&&(n=o-1)}return i}function u(t,e){for(var r=new Array(t.length),i=0,o=r.length;i<o;++i)r[i]=[];for(var s=[],l=(i=0,e.length);i<l;++i)for(var u=e[i],h=u.length,f=1,p=1<<h;f<p;++f){s.length=n.popCount(f);for(var d=0,m=0;m<h;++m)f&1<<m&&(s[d++]=u[m]);var g=c(t,s);if(!(g<0))for(;r[g++].push(i),!(g>=t.length||0!==a(t[g],s)););}return r}function h(t,e){if(e<0)return[];for(var r=[],i=(1<<e+1)-1,a=0;a<t.length;++a)for(var o=t[a],l=i;l<1<<o.length;l=n.nextCombination(l)){for(var c=new Array(e+1),u=0,h=0;h<o.length;++h)l&1<<h&&(c[u++]=o[h]);r.push(c)}return s(r)}e.dimension=function(t){for(var e=0,r=Math.max,n=0,i=t.length;n<i;++n)e=r(e,t[n].length);return e-1},e.countVertices=function(t){for(var e=-1,r=Math.max,n=0,i=t.length;n<i;++n)for(var a=t[n],o=0,s=a.length;o<s;++o)e=r(e,a[o]);return e+1},e.cloneCells=function(t){for(var e=new Array(t.length),r=0,n=t.length;r<n;++r)e[r]=t[r].slice(0);return e},e.compareCells=a,e.normalize=s,e.unique=l,e.findCell=c,e.incidence=u,e.dual=function(t,e){if(!e)return u(l(h(t,0)),t);for(var r=new Array(e),n=0;n<e;++n)r[n]=[];n=0;for(var i=t.length;n<i;++n)for(var a=t[n],o=0,s=a.length;o<s;++o)r[a[o]].push(n);return r},e.explode=function(t){for(var e=[],r=0,n=t.length;r<n;++r)for(var i=t[r],a=0|i.length,o=1,l=1<<a;o<l;++o){for(var c=[],u=0;u<a;++u)o>>>u&1&&c.push(i[u]);e.push(c)}return s(e)},e.skeleton=h,e.boundary=function(t){for(var e=[],r=0,n=t.length;r<n;++r)for(var i=t[r],a=0,o=i.length;a<o;++a){for(var l=new Array(i.length-1),c=0,u=0;c<o;++c)c!==a&&(l[u++]=i[c]);e.push(l)}return s(e)},e.connectedComponents=function(t,e){return e?function(t,e){for(var r=new i(e),n=0;n<t.length;++n)for(var a=t[n],o=0;o<a.length;++o)for(var s=o+1;s<a.length;++s)r.link(a[o],a[s]);var l=[],c=r.ranks;for(n=0;n<c.length;++n)c[n]=-1;for(n=0;n<t.length;++n){var u=r.find(t[n][0]);c[u]<0?(c[u]=l.length,l.push([t[n].slice(0)])):l[c[u]].push(t[n].slice(0))}return l}(t,e):function(t){for(var e=l(s(h(t,0))),r=new i(e.length),n=0;n<t.length;++n)for(var a=t[n],o=0;o<a.length;++o)for(var u=c(e,[a[o]]),f=o+1;f<a.length;++f)r.link(u,c(e,[a[f]]));var p=[],d=r.ranks;for(n=0;n<d.length;++n)d[n]=-1;for(n=0;n<t.length;++n){var m=r.find(c(e,[t[n][0]]));d[m]<0?(d[m]=p.length,p.push([t[n].slice(0)])):p[d[m]].push(t[n].slice(0))}return p}(t)}},4623:function(t){\"use strict\";function e(t){this.roots=new Array(t),this.ranks=new Array(t);for(var e=0;e<t;++e)this.roots[e]=e,this.ranks[e]=0}t.exports=e,e.prototype.length=function(){return this.roots.length},e.prototype.makeSet=function(){var t=this.roots.length;return this.roots.push(t),this.ranks.push(0),t},e.prototype.find=function(t){for(var e=this.roots;e[t]!==t;){var r=e[t];e[t]=e[r],t=r}return t},e.prototype.link=function(t,e){var r=this.find(t),n=this.find(e);if(r!==n){var i=this.ranks,a=this.roots,o=i[r],s=i[n];o<s?a[r]=n:s<o?a[n]=r:(a[n]=r,++i[r])}}},5878:function(t,e,r){\"use strict\";t.exports=function(t,e,r){for(var a=e.length,o=t.length,s=new Array(a),l=new Array(a),c=new Array(a),u=new Array(a),h=0;h<a;++h)s[h]=l[h]=-1,c[h]=1/0,u[h]=!1;for(h=0;h<o;++h){var f=t[h];if(2!==f.length)throw new Error(\"Input must be a graph\");var p=f[1],d=f[0];-1!==l[d]?l[d]=-2:l[d]=p,-1!==s[p]?s[p]=-2:s[p]=d}function m(t){if(u[t])return 1/0;var r,i,a,o=s[t],c=l[t];return o<0||c<0?1/0:(r=e[t],i=e[o],a=e[c],Math.abs(n(r,i,a))/Math.sqrt(Math.pow(i[0]-a[0],2)+Math.pow(i[1]-a[1],2)))}function g(t,e){var r=k[t],n=k[e];k[t]=n,k[e]=r,A[r]=e,A[n]=t}function y(t){return c[k[t]]}function v(t){return 1&t?t-1>>1:(t>>1)-1}function x(t){for(var e=y(t);;){var r=e,n=2*t+1,i=2*(t+1),a=t;if(n<M){var o=y(n);o<r&&(a=n,r=o)}if(i<M&&y(i)<r&&(a=i),a===t)return t;g(t,a),t=a}}function _(t){for(var e=y(t);t>0;){var r=v(t);if(!(r>=0&&e<y(r)))return t;g(t,r),t=r}}function b(){if(M>0){var t=k[0];return g(0,M-1),M-=1,x(0),t}return-1}function w(t,e){var r=k[t];return c[r]===e?t:(c[r]=-1/0,_(t),b(),c[r]=e,_((M+=1)-1))}function T(t){if(!u[t]){u[t]=!0;var e=s[t],r=l[t];s[r]>=0&&(s[r]=e),l[e]>=0&&(l[e]=r),A[e]>=0&&w(A[e],m(e)),A[r]>=0&&w(A[r],m(r))}}var k=[],A=new Array(a);for(h=0;h<a;++h)(c[h]=m(h))<1/0?(A[h]=k.length,k.push(h)):A[h]=-1;var M=k.length;for(h=M>>1;h>=0;--h)x(h);for(;;){var S=b();if(S<0||c[S]>r)break;T(S)}var E=[];for(h=0;h<a;++h)u[h]||(A[h]=E.length,E.push(e[h].slice()));function C(t,e){if(t[e]<0)return e;var r=e,n=e;do{var i=t[n];if(!u[n]||i<0||i===n)break;if(i=t[n=i],!u[n]||i<0||i===n)break;n=i,r=t[r]}while(r!==n);for(var a=e;a!==n;a=t[a])t[a]=n;return n}E.length;var L=[];return t.forEach((function(t){var e=C(s,t[0]),r=C(l,t[1]);if(e>=0&&r>=0&&e!==r){var n=A[e],i=A[r];n!==i&&L.push([n,i])}})),i.unique(i.normalize(L)),{positions:E,edges:L}};var n=r(3250),i=r(2014)},1303:function(t,e,r){\"use strict\";t.exports=function(t,e){var r,a,o,s;if(e[0][0]<e[1][0])r=e[0],a=e[1];else{if(!(e[0][0]>e[1][0]))return i(e,t);r=e[1],a=e[0]}if(t[0][0]<t[1][0])o=t[0],s=t[1];else{if(!(t[0][0]>t[1][0]))return-i(t,e);o=t[1],s=t[0]}var l=n(r,a,s),c=n(r,a,o);if(l<0){if(c<=0)return l}else if(l>0){if(c>=0)return l}else if(c)return c;if(l=n(s,o,a),c=n(s,o,r),l<0){if(c<=0)return l}else if(l>0){if(c>=0)return l}else if(c)return c;return a[0]-s[0]};var n=r(3250);function i(t,e){var r,i,a,o;if(e[0][0]<e[1][0])r=e[0],i=e[1];else{if(!(e[0][0]>e[1][0])){var s=Math.min(t[0][1],t[1][1]),l=Math.max(t[0][1],t[1][1]),c=Math.min(e[0][1],e[1][1]),u=Math.max(e[0][1],e[1][1]);return l<c?l-c:s>u?s-u:l-u}r=e[1],i=e[0]}t[0][1]<t[1][1]?(a=t[0],o=t[1]):(a=t[1],o=t[0]);var h=n(i,r,a);return h||(h=n(i,r,o))||o-i}},4209:function(t,e,r){\"use strict\";t.exports=function(t){for(var e=t.length,r=2*e,n=new Array(r),a=0;a<e;++a){var l=t[a],c=l[0][0]<l[1][0];n[2*a]=new h(l[0][0],l,c,a),n[2*a+1]=new h(l[1][0],l,!c,a)}n.sort((function(t,e){var r=t.x-e.x;return r||(r=t.create-e.create)||Math.min(t.segment[0][1],t.segment[1][1])-Math.min(e.segment[0][1],e.segment[1][1])}));var f=i(o),p=[],d=[],m=[];for(a=0;a<r;){for(var g=n[a].x,y=[];a<r;){var v=n[a];if(v.x!==g)break;a+=1,v.segment[0][0]===v.x&&v.segment[1][0]===v.x?v.create&&(v.segment[0][1]<v.segment[1][1]?(y.push(new u(v.segment[0][1],v.index,!0,!0)),y.push(new u(v.segment[1][1],v.index,!1,!1))):(y.push(new u(v.segment[1][1],v.index,!0,!1)),y.push(new u(v.segment[0][1],v.index,!1,!0)))):f=v.create?f.insert(v.segment,v.index):f.remove(v.segment)}p.push(f.root),d.push(g),m.push(y)}return new s(p,d,m)};var n=r(2478),i=r(3840),a=r(3250),o=r(1303);function s(t,e,r){this.slabs=t,this.coordinates=e,this.horizontal=r}function l(t,e){return t.y-e}function c(t,e){for(var r=null;t;){var n,i,o=t.key;o[0][0]<o[1][0]?(n=o[0],i=o[1]):(n=o[1],i=o[0]);var s=a(n,i,e);if(s<0)t=t.left;else if(s>0)if(e[0]!==o[1][0])r=t,t=t.right;else{if(l=c(t.right,e))return l;t=t.left}else{if(e[0]!==o[1][0])return t;var l;if(l=c(t.right,e))return l;t=t.left}}return r}function u(t,e,r,n){this.y=t,this.index=e,this.start=r,this.closed=n}function h(t,e,r,n){this.x=t,this.segment=e,this.create=r,this.index=n}s.prototype.castUp=function(t){var e=n.le(this.coordinates,t[0]);if(e<0)return-1;this.slabs[e];var r=c(this.slabs[e],t),i=-1;if(r&&(i=r.value),this.coordinates[e]===t[0]){var s=null;if(r&&(s=r.key),e>0){var u=c(this.slabs[e-1],t);u&&(s?o(u.key,s)>0&&(s=u.key,i=u.value):(i=u.value,s=u.key))}var h=this.horizontal[e];if(h.length>0){var f=n.ge(h,t[1],l);if(f<h.length){var p=h[f];if(t[1]===p.y){if(p.closed)return p.index;for(;f<h.length-1&&h[f+1].y===t[1];)if((p=h[f+=1]).closed)return p.index;if(p.y===t[1]&&!p.start){if((f+=1)>=h.length)return i;p=h[f]}}if(p.start)if(s){var d=a(s[0],s[1],[t[0],p.y]);s[0][0]>s[1][0]&&(d=-d),d>0&&(i=p.index)}else i=p.index;else p.y!==t[1]&&(i=p.index)}}}return i}},5202:function(t,e,r){\"use strict\";var n=r(1944),i=r(8210);function a(t,e){var r=i(n(t,e),[e[e.length-1]]);return r[r.length-1]}function o(t,e,r,n){var i=-e/(n-e);i<0?i=0:i>1&&(i=1);for(var a=1-i,o=t.length,s=new Array(o),l=0;l<o;++l)s[l]=i*t[l]+a*r[l];return s}t.exports=function(t,e){for(var r=[],n=[],i=a(t[t.length-1],e),s=t[t.length-1],l=t[0],c=0;c<t.length;++c,s=l){var u=a(l=t[c],e);if(i<0&&u>0||i>0&&u<0){var h=o(s,u,l,i);r.push(h),n.push(h.slice())}u<0?n.push(l.slice()):u>0?r.push(l.slice()):(r.push(l.slice()),n.push(l.slice())),i=u}return{positive:r,negative:n}},t.exports.positive=function(t,e){for(var r=[],n=a(t[t.length-1],e),i=t[t.length-1],s=t[0],l=0;l<t.length;++l,i=s){var c=a(s=t[l],e);(n<0&&c>0||n>0&&c<0)&&r.push(o(i,c,s,n)),c>=0&&r.push(s.slice()),n=c}return r},t.exports.negative=function(t,e){for(var r=[],n=a(t[t.length-1],e),i=t[t.length-1],s=t[0],l=0;l<t.length;++l,i=s){var c=a(s=t[l],e);(n<0&&c>0||n>0&&c<0)&&r.push(o(i,c,s,n)),c<=0&&r.push(s.slice()),n=c}return r}},3387:function(t,e,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(t){return function(t,e){var r,n,o,s,l,c,u,h,f,p=1,d=t.length,m=\"\";for(n=0;n<d;n++)if(\"string\"==typeof t[n])m+=t[n];else if(\"object\"==typeof t[n]){if((s=t[n]).keys)for(r=e[p],o=0;o<s.keys.length;o++){if(null==r)throw new Error(a('[sprintf] Cannot access property \"%s\" of undefined value \"%s\"',s.keys[o],s.keys[o-1]));r=r[s.keys[o]]}else r=s.param_no?e[s.param_no]:e[p++];if(i.not_type.test(s.type)&&i.not_primitive.test(s.type)&&r instanceof Function&&(r=r()),i.numeric_arg.test(s.type)&&\"number\"!=typeof r&&isNaN(r))throw new TypeError(a(\"[sprintf] expecting number but found %T\",r));switch(i.number.test(s.type)&&(h=r>=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)?m+=r:(!i.number.test(s.type)||h&&!s.sign?f=\"\":(f=h?\"+\":\"-\",r=r.toString().replace(i.sign,\"\")),c=s.pad_char?\"0\"===s.pad_char?\"0\":s.pad_char.charAt(1):\" \",u=s.width-(f+r).length,l=s.width&&u>0?c.repeat(u):\"\",m+=s.align?f+r+l:\"0\"===c?f+l+r:l+f+r)}return m}(function(t){if(s[t])return s[t];for(var e,r=t,n=[],a=0;r;){if(null!==(e=i.text.exec(r)))n.push(e[0]);else if(null!==(e=i.modulo.exec(r)))n.push(\"%\");else{if(null===(e=i.placeholder.exec(r)))throw new SyntaxError(\"[sprintf] unexpected placeholder\");if(e[2]){a|=1;var o=[],l=e[2],c=[];if(null===(c=i.key.exec(l)))throw new SyntaxError(\"[sprintf] failed to parse named argument key\");for(o.push(c[1]);\"\"!==(l=l.substring(c[0].length));)if(null!==(c=i.key_access.exec(l)))o.push(c[1]);else{if(null===(c=i.index_access.exec(l)))throw new SyntaxError(\"[sprintf] failed to parse named argument key\");o.push(c[1])}e[2]=o}else a|=2;if(3===a)throw new Error(\"[sprintf] mixing positional and named placeholders is not (yet) supported\");n.push({placeholder:e[0],param_no:e[1],keys:e[2],sign:e[3],pad_char:e[4],align:e[5],width:e[6],precision:e[7],type:e[8]})}r=r.substring(e[0].length)}return s[t]=n}(t),arguments)}function o(t,e){return a.apply(null,[t].concat(e||[]))}var s=Object.create(null);e.sprintf=a,e.vsprintf=o,\"undefined\"!=typeof window&&(window.sprintf=a,window.vsprintf=o,void 0===(n=function(){return{sprintf:a,vsprintf:o}}.call(e,r,e,t))||(t.exports=n))}()},3711:function(t,e,r){\"use strict\";t.exports=function(t,e){if(t.dimension<=0)return{positions:[],cells:[]};if(1===t.dimension)return function(t,e){for(var r=i(t,e),n=r.length,a=new Array(n),o=new Array(n),s=0;s<n;++s)a[s]=[r[s]],o[s]=[s];return{positions:a,cells:o}}(t,e);var r=t.order.join()+\"-\"+t.dtype,s=o[r];return e=+e||0,s||(s=o[r]=function(t,e){var r=t.length+\"d\",i=a[r];if(i)return i(n,t,e)}(t.order,t.dtype)),s(t,e)};var n=r(2640),i=r(781),a={\"2d\":function(t,e,r){var n=t({order:e,scalarArguments:3,getters:\"generic\"===r?[0]:void 0,phase:function(t,e,r,n){return t>n|0},vertex:function(t,e,r,n,i,a,o,s,l,c,u,h,f){var p=(o<<0)+(s<<1)+(l<<2)+(c<<3)|0;if(0!==p&&15!==p)switch(p){case 0:case 15:u.push([t-.5,e-.5]);break;case 1:u.push([t-.25-.25*(n+r-2*f)/(r-n),e-.25-.25*(i+r-2*f)/(r-i)]);break;case 2:u.push([t-.75-.25*(-n-r+2*f)/(n-r),e-.25-.25*(a+n-2*f)/(n-a)]);break;case 3:u.push([t-.5,e-.5-.5*(i+r+a+n-4*f)/(r-i+n-a)]);break;case 4:u.push([t-.25-.25*(a+i-2*f)/(i-a),e-.75-.25*(-i-r+2*f)/(i-r)]);break;case 5:u.push([t-.5-.5*(n+r+a+i-4*f)/(r-n+i-a),e-.5]);break;case 6:u.push([t-.5-.25*(-n-r+a+i)/(n-r+i-a),e-.5-.25*(-i-r+a+n)/(i-r+n-a)]);break;case 7:u.push([t-.75-.25*(a+i-2*f)/(i-a),e-.75-.25*(a+n-2*f)/(n-a)]);break;case 8:u.push([t-.75-.25*(-a-i+2*f)/(a-i),e-.75-.25*(-a-n+2*f)/(a-n)]);break;case 9:u.push([t-.5-.25*(n+r+-a-i)/(r-n+a-i),e-.5-.25*(i+r+-a-n)/(r-i+a-n)]);break;case 10:u.push([t-.5-.5*(-n-r-a-i+4*f)/(n-r+a-i),e-.5]);break;case 11:u.push([t-.25-.25*(-a-i+2*f)/(a-i),e-.75-.25*(i+r-2*f)/(r-i)]);break;case 12:u.push([t-.5,e-.5-.5*(-i-r-a-n+4*f)/(i-r+a-n)]);break;case 13:u.push([t-.75-.25*(n+r-2*f)/(r-n),e-.25-.25*(-a-n+2*f)/(a-n)]);break;case 14:u.push([t-.25-.25*(-n-r+2*f)/(n-r),e-.25-.25*(-i-r+2*f)/(i-r)])}},cell:function(t,e,r,n,i,a,o,s,l){i?s.push([t,e]):s.push([e,t])}});return function(t,e){var r=[],i=[];return n(t,r,i,e),{positions:r,cells:i}}}},o={}},529:function(t,e,r){\"use strict\";t.exports=function t(e,r,i){var a=(i=i||{}).fontStyle||\"normal\",s=i.fontWeight||\"normal\",l=i.fontVariant||\"normal\",c=[a,s,l,e].join(\"_\"),u=o[c];u||(u=o[c]={\" \":{data:new Float32Array(0),shape:.2}});var h=u[r];if(!h)if(r.length<=1||!/\\d/.test(r))h=u[r]=function(t){for(var e=t.cells,r=t.positions,n=new Float32Array(6*e.length),i=0,a=0,o=0;o<e.length;++o)for(var s=e[o],l=0;l<3;++l){var c=r[s[l]];n[i++]=c[0],n[i++]=c[1]+1.4,a=Math.max(c[0],a)}return{data:n,shape:a}}(n(r,{triangles:!0,font:e,fontStyle:a,fontWeight:s,fontVariant:l,textAlign:i.textAlign||\"left\",textBaseline:\"alphabetic\",styletags:{breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0}}));else{for(var f=r.split(/(\\d|\\s)/),p=new Array(f.length),d=0,m=0,g=0;g<f.length;++g)p[g]=t(e,f[g]),d+=p[g].data.length,m+=p[g].shape,g>0&&(m+=.02);var y=new Float32Array(d),v=0,x=-.5*m;for(g=0;g<p.length;++g){for(var _=p[g].data,b=0;b<_.length;b+=2)y[v++]=_[b]+x,y[v++]=_[b+1];x+=p[g].shape+.02}h=u[r]={data:y,shape:m}}return h};var n=r(4359),a=window||i.global||{},o=a.__TEXT_CACHE||{};a.__TEXT_CACHE={}},665:function(t,e,r){\"use strict\";var n=r(3202);t.exports=o;var i=96;function a(t,e){var r=n(getComputedStyle(t).getPropertyValue(e));return r[0]*o(r[1],t)}function o(t,e){switch(e=e||document.body,t=(t||\"px\").trim().toLowerCase(),e!==window&&e!==document||(e=document.body),t){case\"%\":return e.clientHeight/100;case\"ch\":case\"ex\":return function(t,e){var r=document.createElement(\"div\");r.style[\"font-size\"]=\"128\"+t,e.appendChild(r);var n=a(r,\"font-size\")/128;return e.removeChild(r),n}(t,e);case\"em\":return a(e,\"font-size\");case\"rem\":return a(document.body,\"font-size\");case\"vw\":return window.innerWidth/100;case\"vh\":return window.innerHeight/100;case\"vmin\":return Math.min(window.innerWidth,window.innerHeight)/100;case\"vmax\":return Math.max(window.innerWidth,window.innerHeight)/100;case\"in\":return i;case\"cm\":return i/2.54;case\"mm\":return i/25.4;case\"pt\":return i/72;case\"pc\":return i/6}return 1}},7261:function(t,e,r){\"use strict\";t.exports=function(t){var e=(t=t||{}).center||[0,0,0],r=t.up||[0,1,0],n=t.right||h(r),i=t.radius||1,a=t.theta||0,u=t.phi||0;if(e=[].slice.call(e,0,3),r=[].slice.call(r,0,3),s(r,r),n=[].slice.call(n,0,3),s(n,n),\"eye\"in t){var p=t.eye,d=[p[0]-e[0],p[1]-e[1],p[2]-e[2]];o(n,d,r),c(n[0],n[1],n[2])<1e-6?n=h(r):s(n,n),i=c(d[0],d[1],d[2]);var m=l(r,d)/i,g=l(n,d)/i;u=Math.acos(m),a=Math.acos(g)}return i=Math.log(i),new f(t.zoomMin,t.zoomMax,e,r,n,i,a,u)};var n=r(9215),i=r(7608),a=r(6079),o=r(5911),s=r(3536),l=r(244);function c(t,e,r){return Math.sqrt(Math.pow(t,2)+Math.pow(e,2)+Math.pow(r,2))}function u(t){return Math.min(1,Math.max(-1,t))}function h(t){var e=Math.abs(t[0]),r=Math.abs(t[1]),n=Math.abs(t[2]),i=[0,0,0];e>Math.max(r,n)?i[2]=1:r>Math.max(e,n)?i[0]=1:i[1]=1;for(var a=0,o=0,l=0;l<3;++l)a+=t[l]*t[l],o+=i[l]*t[l];for(l=0;l<3;++l)i[l]-=o/a*t[l];return s(i,i),i}function f(t,e,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(t,e),this.computedCenter=this.center.curve(0),this.computedUp=this.up.curve(0),this.computedRight=this.right.curve(0),this.computedRadius=this.radius.curve(0),this.computedAngle=this.angle.curve(0),this.computedToward=[0,0,0],this.computedEye=[0,0,0],this.computedMatrix=new Array(16);for(var c=0;c<16;++c)this.computedMatrix[c]=.5;this.recalcMatrix(0)}var p=f.prototype;p.setDistanceLimits=function(t,e){t=t>0?Math.log(t):-1/0,e=e>0?Math.log(e):1/0,e=Math.max(e,t),this.radius.bounds[0][0]=t,this.radius.bounds[1][0]=e},p.getDistanceLimits=function(t){var e=this.radius.bounds[0];return t?(t[0]=Math.exp(e[0][0]),t[1]=Math.exp(e[1][0]),t):[Math.exp(e[0][0]),Math.exp(e[1][0])]},p.recalcMatrix=function(t){this.center.curve(t),this.up.curve(t),this.right.curve(t),this.radius.curve(t),this.angle.curve(t);for(var e=this.computedUp,r=this.computedRight,n=0,i=0,a=0;a<3;++a)i+=e[a]*r[a],n+=e[a]*e[a];var l=Math.sqrt(n),u=0;for(a=0;a<3;++a)r[a]-=e[a]*i/n,u+=r[a]*r[a],e[a]/=l;var h=Math.sqrt(u);for(a=0;a<3;++a)r[a]/=h;var f=this.computedToward;o(f,e,r),s(f,f);var p=Math.exp(this.computedRadius[0]),d=this.computedAngle[0],m=this.computedAngle[1],g=Math.cos(d),y=Math.sin(d),v=Math.cos(m),x=Math.sin(m),_=this.computedCenter,b=g*v,w=y*v,T=x,k=-g*x,A=-y*x,M=v,S=this.computedEye,E=this.computedMatrix;for(a=0;a<3;++a){var C=b*r[a]+w*f[a]+T*e[a];E[4*a+1]=k*r[a]+A*f[a]+M*e[a],E[4*a+2]=C,E[4*a+3]=0}var L=E[1],I=E[5],P=E[9],z=E[2],O=E[6],D=E[10],R=I*D-P*O,F=P*z-L*D,B=L*O-I*z,N=c(R,F,B);for(R/=N,F/=N,B/=N,E[0]=R,E[4]=F,E[8]=B,a=0;a<3;++a)S[a]=_[a]+E[2+4*a]*p;for(a=0;a<3;++a){u=0;for(var j=0;j<3;++j)u+=E[a+4*j]*S[j];E[12+a]=-u}E[15]=1},p.getMatrix=function(t,e){this.recalcMatrix(t);var r=this.computedMatrix;if(e){for(var n=0;n<16;++n)e[n]=r[n];return e}return r};var d=[0,0,0];p.rotate=function(t,e,r,n){if(this.angle.move(t,e,r),n){this.recalcMatrix(t);var i=this.computedMatrix;d[0]=i[2],d[1]=i[6],d[2]=i[10];for(var o=this.computedUp,s=this.computedRight,l=this.computedToward,c=0;c<3;++c)i[4*c]=o[c],i[4*c+1]=s[c],i[4*c+2]=l[c];for(a(i,i,n,d),c=0;c<3;++c)o[c]=i[4*c],s[c]=i[4*c+1];this.up.set(t,o[0],o[1],o[2]),this.right.set(t,s[0],s[1],s[2])}},p.pan=function(t,e,r,n){e=e||0,r=r||0,n=n||0,this.recalcMatrix(t);var i=this.computedMatrix,a=(Math.exp(this.computedRadius[0]),i[1]),o=i[5],s=i[9],l=c(a,o,s);a/=l,o/=l,s/=l;var u=i[0],h=i[4],f=i[8],p=u*a+h*o+f*s,d=c(u-=a*p,h-=o*p,f-=s*p),m=(u/=d)*e+a*r,g=(h/=d)*e+o*r,y=(f/=d)*e+s*r;this.center.move(t,m,g,y);var v=Math.exp(this.computedRadius[0]);v=Math.max(1e-4,v+n),this.radius.set(t,Math.log(v))},p.translate=function(t,e,r,n){this.center.move(t,e||0,r||0,n||0)},p.setMatrix=function(t,e,r,n){var a=1;\"number\"==typeof r&&(a=0|r),(a<0||a>3)&&(a=1);var o=(a+2)%3;e||(this.recalcMatrix(t),e=this.computedMatrix);var s=e[a],l=e[a+4],h=e[a+8];if(n){var f=Math.abs(s),p=Math.abs(l),d=Math.abs(h),m=Math.max(f,p,d);f===m?(s=s<0?-1:1,l=h=0):d===m?(h=h<0?-1:1,s=l=0):(l=l<0?-1:1,s=h=0)}else{var g=c(s,l,h);s/=g,l/=g,h/=g}var y,v,x=e[o],_=e[o+4],b=e[o+8],w=x*s+_*l+b*h,T=c(x-=s*w,_-=l*w,b-=h*w),k=l*(b/=T)-h*(_/=T),A=h*(x/=T)-s*b,M=s*_-l*x,S=c(k,A,M);if(k/=S,A/=S,M/=S,this.center.jump(t,H,G,Z),this.radius.idle(t),this.up.jump(t,s,l,h),this.right.jump(t,x,_,b),2===a){var E=e[1],C=e[5],L=e[9],I=E*x+C*_+L*b,P=E*k+C*A+L*M;y=R<0?-Math.PI/2:Math.PI/2,v=Math.atan2(P,I)}else{var z=e[2],O=e[6],D=e[10],R=z*s+O*l+D*h,F=z*x+O*_+D*b,B=z*k+O*A+D*M;y=Math.asin(u(R)),v=Math.atan2(B,F)}this.angle.jump(t,v,y),this.recalcMatrix(t);var N=e[2],j=e[6],U=e[10],V=this.computedMatrix;i(V,e);var q=V[15],H=V[12]/q,G=V[13]/q,Z=V[14]/q,W=Math.exp(this.computedRadius[0]);this.center.jump(t,H-N*W,G-j*W,Z-U*W)},p.lastT=function(){return Math.max(this.center.lastT(),this.up.lastT(),this.right.lastT(),this.radius.lastT(),this.angle.lastT())},p.idle=function(t){this.center.idle(t),this.up.idle(t),this.right.idle(t),this.radius.idle(t),this.angle.idle(t)},p.flush=function(t){this.center.flush(t),this.up.flush(t),this.right.flush(t),this.radius.flush(t),this.angle.flush(t)},p.setDistance=function(t,e){e>0&&this.radius.set(t,Math.log(e))},p.lookAt=function(t,e,r,n){this.recalcMatrix(t),e=e||this.computedEye,r=r||this.computedCenter;var i=(n=n||this.computedUp)[0],a=n[1],o=n[2],s=c(i,a,o);if(!(s<1e-6)){i/=s,a/=s,o/=s;var l=e[0]-r[0],h=e[1]-r[1],f=e[2]-r[2],p=c(l,h,f);if(!(p<1e-6)){l/=p,h/=p,f/=p;var d=this.computedRight,m=d[0],g=d[1],y=d[2],v=i*m+a*g+o*y,x=c(m-=v*i,g-=v*a,y-=v*o);if(!(x<.01&&(x=c(m=a*f-o*h,g=o*l-i*f,y=i*h-a*l))<1e-6)){m/=x,g/=x,y/=x,this.up.set(t,i,a,o),this.right.set(t,m,g,y),this.center.set(t,r[0],r[1],r[2]),this.radius.set(t,Math.log(p));var _=a*y-o*g,b=o*m-i*y,w=i*g-a*m,T=c(_,b,w),k=i*l+a*h+o*f,A=m*l+g*h+y*f,M=(_/=T)*l+(b/=T)*h+(w/=T)*f,S=Math.asin(u(k)),E=Math.atan2(M,A),C=this.angle._state,L=C[C.length-1],I=C[C.length-2];L%=2*Math.PI;var P=Math.abs(L+2*Math.PI-E),z=Math.abs(L-E),O=Math.abs(L-2*Math.PI-E);P<z&&(L+=2*Math.PI),O<z&&(L-=2*Math.PI),this.angle.jump(this.angle.lastT(),L,I),this.angle.set(t,E,S)}}}}},5250:function(t){\"use strict\";t.exports=function(t,r,n){var i=t*r,a=e*t,o=a-(a-t),s=t-o,l=e*r,c=l-(l-r),u=r-c,h=s*u-(i-o*c-s*c-o*u);return n?(n[0]=h,n[1]=i,n):[h,i]};var e=+(Math.pow(2,27)+1)},9362:function(t){\"use strict\";t.exports=function(t,e,r){var n=t+e,i=n-t,a=e-i,o=t-(n-i);return r?(r[0]=o+a,r[1]=n,r):[o+a,n]}},1888:function(t,e,r){\"use strict\";var n=r(8828),i=r(1338),a=r(4793).hp;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,c=r.g.__TYPEDARRAY_POOL;c.UINT8C||(c.UINT8C=i([32,0])),c.BIGUINT64||(c.BIGUINT64=i([32,0])),c.BIGINT64||(c.BIGINT64=i([32,0])),c.BUFFER||(c.BUFFER=i([32,0]));var u=c.DATA,h=c.BUFFER;function f(t){if(t){var e=t.length||t.byteLength,r=n.log2(e);u[r].push(t)}}function p(t){t=n.nextPow2(t);var e=n.log2(t),r=u[e];return r.length>0?r.pop():new ArrayBuffer(t)}function d(t){return new Uint8Array(p(t),0,t)}function m(t){return new Uint16Array(p(2*t),0,t)}function g(t){return new Uint32Array(p(4*t),0,t)}function y(t){return new Int8Array(p(t),0,t)}function v(t){return new Int16Array(p(2*t),0,t)}function x(t){return new Int32Array(p(4*t),0,t)}function _(t){return new Float32Array(p(4*t),0,t)}function b(t){return new Float64Array(p(8*t),0,t)}function w(t){return o?new Uint8ClampedArray(p(t),0,t):d(t)}function T(t){return s?new BigUint64Array(p(8*t),0,t):null}function k(t){return l?new BigInt64Array(p(8*t),0,t):null}function A(t){return new DataView(p(t),0,t)}function M(t){t=n.nextPow2(t);var e=n.log2(t),r=h[e];return r.length>0?r.pop():new a(t)}e.free=function(t){if(a.isBuffer(t))h[n.log2(t.length)].push(t);else{if(\"[object ArrayBuffer]\"!==Object.prototype.toString.call(t)&&(t=t.buffer),!t)return;var e=t.length||t.byteLength,r=0|n.log2(e);u[r].push(t)}},e.freeUint8=e.freeUint16=e.freeUint32=e.freeBigUint64=e.freeInt8=e.freeInt16=e.freeInt32=e.freeBigInt64=e.freeFloat32=e.freeFloat=e.freeFloat64=e.freeDouble=e.freeUint8Clamped=e.freeDataView=function(t){f(t.buffer)},e.freeArrayBuffer=f,e.freeBuffer=function(t){h[n.log2(t.length)].push(t)},e.malloc=function(t,e){if(void 0===e||\"arraybuffer\"===e)return p(t);switch(e){case\"uint8\":return d(t);case\"uint16\":return m(t);case\"uint32\":return g(t);case\"int8\":return y(t);case\"int16\":return v(t);case\"int32\":return x(t);case\"float\":case\"float32\":return _(t);case\"double\":case\"float64\":return b(t);case\"uint8_clamped\":return w(t);case\"bigint64\":return k(t);case\"biguint64\":return T(t);case\"buffer\":return M(t);case\"data\":case\"dataview\":return A(t);default:return null}return null},e.mallocArrayBuffer=p,e.mallocUint8=d,e.mallocUint16=m,e.mallocUint32=g,e.mallocInt8=y,e.mallocInt16=v,e.mallocInt32=x,e.mallocFloat32=e.mallocFloat=_,e.mallocFloat64=e.mallocDouble=b,e.mallocUint8Clamped=w,e.mallocBigUint64=T,e.mallocBigInt64=k,e.mallocDataView=A,e.mallocBuffer=M,e.clearCache=function(){for(var t=0;t<32;++t)c.UINT8[t].length=0,c.UINT16[t].length=0,c.UINT32[t].length=0,c.INT8[t].length=0,c.INT16[t].length=0,c.INT32[t].length=0,c.FLOAT[t].length=0,c.DOUBLE[t].length=0,c.BIGUINT64[t].length=0,c.BIGINT64[t].length=0,c.UINT8C[t].length=0,u[t].length=0,h[t].length=0}},1755:function(t){\"use strict\";function e(t){this.roots=new Array(t),this.ranks=new Array(t);for(var e=0;e<t;++e)this.roots[e]=e,this.ranks[e]=0}t.exports=e;var r=e.prototype;Object.defineProperty(r,\"length\",{get:function(){return this.roots.length}}),r.makeSet=function(){var t=this.roots.length;return this.roots.push(t),this.ranks.push(0),t},r.find=function(t){for(var e=t,r=this.roots;r[t]!==t;)t=r[t];for(;r[e]!==t;){var n=r[e];r[e]=t,e=n}return t},r.link=function(t,e){var r=this.find(t),n=this.find(e);if(r!==n){var i=this.ranks,a=this.roots,o=i[r],s=i[n];o<s?a[r]=n:s<o?a[n]=r:(a[n]=r,++i[r])}}},1682:function(t){\"use strict\";t.exports=function(t,e,r){return 0===t.length?t:e?(r||t.sort(e),function(t,e){for(var r=1,n=t.length,i=t[0],a=t[0],o=1;o<n;++o)if(a=i,e(i=t[o],a)){if(o===r){r++;continue}t[r++]=i}return t.length=r,t}(t,e)):(r||t.sort(),function(t){for(var e=1,r=t.length,n=t[0],i=t[0],a=1;a<r;++a,i=n)if(i=n,(n=t[a])!==i){if(a===e){e++;continue}t[e++]=n}return t.length=e,t}(t))}},4359:function(t,e,r){\"use strict\";t.exports=function(t,e){return\"object\"==typeof e&&null!==e||(e={}),n(t,e.canvas||i,e.context||a,e)};var n=r(7718),i=null,a=null;\"undefined\"!=typeof document&&((i=document.createElement(\"canvas\")).width=8192,i.height=1024,a=i.getContext(\"2d\"))},7718:function(t,e,r){t.exports=function(t,e,r,n){var a=64,o=1.25,s={breaklines:!1,bolds:!1,italics:!1,subscripts:!1,superscripts:!1};return n&&(n.size&&n.size>0&&(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(t){return t})).join(\" \"),r.textAlign=\"start\",r.textBaseline=\"alphabetic\",r.direction=\"ltr\",w(function(t,e,r,n,a,o){r=r.replace(/\\n/g,\"\"),r=!0===o.breaklines?r.replace(/\\<br\\>/g,\"\\n\"):r.replace(/\\<br\\>/g,\" \");var s=\"\",l=[];for(T=0;T<r.length;++T)l[T]=s;!0===o.bolds&&(l=x(c,u,r,l)),!0===o.italics&&(l=x(h,f,r,l)),!0===o.superscripts&&(l=x(p,m,r,l)),!0===o.subscripts&&(l=x(g,v,r,l));var _=[],b=\"\";for(T=0;T<r.length;++T)null!==l[T]&&(b+=r[T],_.push(l[T]));var w,T,k,A,M,S=b.split(\"\\n\"),E=S.length,C=Math.round(a*n),L=n,I=2*n,P=0,z=E*C+I;t.height<z&&(t.height=z),e.fillStyle=\"#000\",e.fillRect(0,0,t.width,t.height),e.fillStyle=\"#fff\";var O=0,D=\"\";function R(){if(\"\"!==D){var t=e.measureText(D).width;e.fillText(D,L+k,I+A),k+=t}}function F(){return Math.round(M)+\"px \"}function B(t,r){var n=\"\"+e.font;if(!0===o.subscripts){var i=t.indexOf(y),a=r.indexOf(y),s=i>-1?parseInt(t[1+i]):0,l=a>-1?parseInt(r[1+a]):0;s!==l&&(n=n.replace(F(),\"?px \"),M*=Math.pow(.75,l-s),n=n.replace(\"?px \",F())),A+=.25*C*(l-s)}if(!0===o.superscripts){var c=t.indexOf(d),h=r.indexOf(d),p=c>-1?parseInt(t[1+c]):0,m=h>-1?parseInt(r[1+h]):0;p!==m&&(n=n.replace(F(),\"?px \"),M*=Math.pow(.75,m-p),n=n.replace(\"?px \",F())),A-=.25*C*(m-p)}if(!0===o.bolds){var g=t.indexOf(u)>-1,v=r.indexOf(u)>-1;!g&&v&&(n=x?n.replace(\"italic \",\"italic bold \"):\"bold \"+n),g&&!v&&(n=n.replace(\"bold \",\"\"))}if(!0===o.italics){var x=t.indexOf(f)>-1,_=r.indexOf(f)>-1;!x&&_&&(n=\"italic \"+n),x&&!_&&(n=n.replace(\"italic \",\"\"))}e.font=n}for(w=0;w<E;++w){var N=S[w]+\"\\n\";for(k=0,A=w*C,M=n,D=\"\",T=0;T<N.length;++T){var j=T+O<_.length?_[T+O]:_[_.length-1];s===j?D+=N[T]:(R(),D=N[T],void 0!==j&&(B(s,j),s=j))}R(),O+=N.length;var U=0|Math.round(k+2*L);P<U&&(P=U)}var V=P,q=I+C*E;return i(e.getImageData(0,0,V,q).data,[q,V,4]).pick(-1,-1,0).transpose(1,0)}(e,r,t,a,o,s),n,a)},t.exports.processPixels=w;var n=r(3711),i=r(9618),a=r(5878),o=r(332),s=r(2538),l=r(2095),c=\"b\",u=\"b|\",h=\"i\",f=\"i|\",p=\"sup\",d=\"+\",m=\"+1\",g=\"sub\",y=\"-\",v=\"-1\";function x(t,e,r,n){for(var i=\"<\"+t+\">\",a=\"</\"+t+\">\",o=i.length,s=a.length,l=e[0]===d||e[0]===y,c=0,u=-s;c>-1&&-1!==(c=r.indexOf(i,c))&&-1!==(u=r.indexOf(a,c+o))&&!(u<=c);){for(var h=c;h<u+s;++h)if(h<c+o||h>=u)n[h]=null,r=r.substr(0,h)+\" \"+r.substr(h+1);else if(null!==n[h]){var f=n[h].indexOf(e[0]);-1===f?n[h]+=e:l&&(n[h]=n[h].substr(0,f+1)+(1+parseInt(n[h][f+1]))+n[h].substr(f+2))}var p=c+o,m=r.substr(p,u-p).indexOf(i);c=-1!==m?m:u+s}return n}function _(t,e){var r=n(t,128);return e?a(r.cells,r.positions,.25):{edges:r.cells,positions:r.positions}}function b(t,e,r,n){var i=_(t,n),a=function(t,e,r){for(var n=e.textAlign||\"start\",i=e.textBaseline||\"alphabetic\",a=[1<<30,1<<30],o=[0,0],s=t.length,l=0;l<s;++l)for(var c=t[l],u=0;u<2;++u)a[u]=0|Math.min(a[u],c[u]),o[u]=0|Math.max(o[u],c[u]);var h=0;switch(n){case\"center\":h=-.5*(a[0]+o[0]);break;case\"right\":case\"end\":h=-o[0];break;case\"left\":case\"start\":h=-a[0];break;default:throw new Error(\"vectorize-text: Unrecognized textAlign: '\"+n+\"'\")}var f=0;switch(i){case\"hanging\":case\"top\":f=-a[1];break;case\"middle\":f=-.5*(a[1]+o[1]);break;case\"alphabetic\":case\"ideographic\":f=-3*r;break;case\"bottom\":f=-o[1];break;default:throw new Error(\"vectorize-text: Unrecoginized textBaseline: '\"+i+\"'\")}var p=1/r;return\"lineHeight\"in e?p*=+e.lineHeight:\"width\"in e?p=e.width/(o[0]-a[0]):\"height\"in e&&(p=e.height/(o[1]-a[1])),t.map((function(t){return[p*(t[0]+h),p*(t[1]+f)]}))}(i.positions,e,r),c=i.edges,u=\"ccw\"===e.orientation;if(o(a,c),e.polygons||e.polygon||e.polyline){for(var h=l(c,a),f=new Array(h.length),p=0;p<h.length;++p){for(var d=h[p],m=new Array(d.length),g=0;g<d.length;++g){for(var y=d[g],v=new Array(y.length),x=0;x<y.length;++x)v[x]=a[y[x]].slice();u&&v.reverse(),m[g]=v}f[p]=m}return f}return e.triangles||e.triangulate||e.triangle?{cells:s(a,c,{delaunay:!1,exterior:!1,interior:!0}),positions:a}:{edges:c,positions:a}}function w(t,e,r){try{return b(t,e,r,!0)}catch(t){}try{return b(t,e,r,!1)}catch(t){}return e.polygons||e.polyline||e.polygon?[]:e.triangles||e.triangulate||e.triangle?{cells:[],positions:[]}:{edges:[],positions:[]}}},1538:function(t){!function(){\"use strict\";if(\"undefined\"==typeof ses||!ses.ok||ses.ok()){\"undefined\"!=typeof ses&&(ses.weakMapPermitHostObjects=g);var e=!1;if(\"function\"==typeof WeakMap){var r=WeakMap;if(\"undefined\"!=typeof navigator&&/Firefox/.test(navigator.userAgent));else{var n=new r,i=Object.freeze({});if(n.set(i,1),1===n.get(i))return void(t.exports=WeakMap);e=!0}}Object.prototype.hasOwnProperty;var a=Object.getOwnPropertyNames,o=Object.defineProperty,s=Object.isExtensible,l=\"weakmap:\",c=l+\"ident:\"+Math.random()+\"___\";if(\"undefined\"!=typeof crypto&&\"function\"==typeof crypto.getRandomValues&&\"function\"==typeof ArrayBuffer&&\"function\"==typeof Uint8Array){var u=new ArrayBuffer(25),h=new Uint8Array(u);crypto.getRandomValues(h),c=l+\"rand:\"+Array.prototype.map.call(h,(function(t){return(t%36).toString(36)})).join(\"\")+\"___\"}if(o(Object,\"getOwnPropertyNames\",{value:function(t){return a(t).filter(y)}}),\"getPropertyNames\"in Object){var f=Object.getPropertyNames;o(Object,\"getPropertyNames\",{value:function(t){return f(t).filter(y)}})}!function(){var t=Object.freeze;o(Object,\"freeze\",{value:function(e){return v(e),t(e)}});var e=Object.seal;o(Object,\"seal\",{value:function(t){return v(t),e(t)}});var r=Object.preventExtensions;o(Object,\"preventExtensions\",{value:function(t){return v(t),r(t)}})}();var p=!1,d=0,m=function(){this instanceof m||_();var t=[],e=[],r=d++;return Object.create(m.prototype,{get___:{value:x((function(n,i){var a,o=v(n);return o?r in o?o[r]:i:(a=t.indexOf(n))>=0?e[a]:i}))},has___:{value:x((function(e){var n=v(e);return n?r in n:t.indexOf(e)>=0}))},set___:{value:x((function(n,i){var a,o=v(n);return o?o[r]=i:(a=t.indexOf(n))>=0?e[a]=i:(a=t.length,e[a]=i,t[a]=n),this}))},delete___:{value:x((function(n){var i,a,o=v(n);return o?r in o&&delete o[r]:!((i=t.indexOf(n))<0||(a=t.length-1,t[i]=void 0,e[i]=e[a],t[i]=t[a],t.length=a,e.length=a,0))}))}})};m.prototype=Object.create(Object.prototype,{get:{value:function(t,e){return this.get___(t,e)},writable:!0,configurable:!0},has:{value:function(t){return this.has___(t)},writable:!0,configurable:!0},set:{value:function(t,e){return this.set___(t,e)},writable:!0,configurable:!0},delete:{value:function(t){return this.delete___(t)},writable:!0,configurable:!0}}),\"function\"==typeof r?function(){function n(){this instanceof m||_();var t,n=new r,i=void 0,a=!1;return t=e?function(t,e){return n.set(t,e),n.has(t)||(i||(i=new m),i.set(t,e)),this}:function(t,e){if(a)try{n.set(t,e)}catch(r){i||(i=new m),i.set___(t,e)}else n.set(t,e);return this},Object.create(m.prototype,{get___:{value:x((function(t,e){return i?n.has(t)?n.get(t):i.get___(t,e):n.get(t,e)}))},has___:{value:x((function(t){return n.has(t)||!!i&&i.has___(t)}))},set___:{value:x(t)},delete___:{value:x((function(t){var e=!!n.delete(t);return i&&i.delete___(t)||e}))},permitHostObjects___:{value:x((function(t){if(t!==g)throw new Error(\"bogus call to permitHostObjects___\");a=!0}))}})}e&&\"undefined\"!=typeof Proxy&&(Proxy=void 0),n.prototype=m.prototype,t.exports=n,Object.defineProperty(WeakMap.prototype,\"constructor\",{value:WeakMap,enumerable:!1,configurable:!0,writable:!0})}():(\"undefined\"!=typeof Proxy&&(Proxy=void 0),t.exports=m)}function g(t){t.permitHostObjects___&&t.permitHostObjects___(g)}function y(t){return!(t.substr(0,8)==l&&\"___\"===t.substr(t.length-3))}function v(t){if(t!==Object(t))throw new TypeError(\"Not an object: \"+t);var e=t[c];if(e&&e.key===t)return e;if(s(t)){e={key:t};try{return o(t,c,{value:e,writable:!1,enumerable:!1,configurable:!1}),e}catch(t){return}}}function x(t){return t.prototype=null,Object.freeze(t)}function _(){p||\"undefined\"==typeof console||(p=!0,console.warn(\"WeakMap should be invoked as new WeakMap(), not WeakMap(). This will be an error in the future.\"))}}()},236:function(t,e,r){var n=r(8284);t.exports=function(){var t={};return function(e){if((\"object\"!=typeof e||null===e)&&\"function\"!=typeof e)throw new Error(\"Weakmap-shim: Key must be object\");var r=e.valueOf(t);return r&&r.identity===t?r:n(e,t)}}},8284:function(t){t.exports=function(t,e){var r={identity:e},n=t.valueOf;return Object.defineProperty(t,\"valueOf\",{value:function(t){return t!==e?n.apply(this,arguments):r},writable:!0}),r}},606:function(t,e,r){var n=r(236);t.exports=function(){var t=n();return{get:function(e,r){var n=t(e);return n.hasOwnProperty(\"value\")?n.value:r},set:function(e,r){return t(e).value=r,this},has:function(e){return\"value\"in t(e)},delete:function(e){return delete t(e).value}}}},3349:function(t){\"use strict\";t.exports=function(t){var e={};return function(r,n,i){var a=r.dtype,o=r.order,s=[a,o.join()].join(),l=e[s];return l||(e[s]=l=t([a,o])),l(r.shape.slice(0),r.data,r.stride,0|r.offset,n,i)}}(function(){return function(t,e,r,n,i,a){var o=t[0],s=r[0],l=[0],c=s;n|=0;var u=0,h=s;for(u=0;u<o;++u){var f=e[n]-a,p=e[n+c]-a;f>=0!=p>=0&&i.push(l[0]+.5+.5*(f+p)/(f-p)),n+=h,++l[0]}}}.bind(void 0,{funcName:\"zeroCrossings\"}))},781:function(t,e,r){\"use strict\";t.exports=function(t,e){var r=[];return e=+e||0,n(t.hi(t.shape[0]-1),r,e),r};var n=r(3349)},7790:function(){}},r={};function a(t){var n=r[t];if(void 0!==n)return n.exports;var i=r[t]={id:t,loaded:!1,exports:{}};return e[t].call(i.exports,i,i.exports,a),i.loaded=!0,i.exports}a.g=function(){if(\"object\"==typeof globalThis)return globalThis;try{return this||new Function(\"return this\")()}catch(t){if(\"object\"==typeof window)return window}}(),a.nmd=function(t){return t.paths=[],t.children||(t.children=[]),t};var o=a(1964);t.exports=o}()},45708:function(t,e,r){\"use strict\";function n(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(t,i(n.key),n)}}function i(t){var e=function(t,e){if(\"object\"!=c(t)||!t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,\"string\");if(\"object\"!=c(n))return n;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return String(t)}(t);return\"symbol\"==c(e)?e:e+\"\"}function a(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(a=function(){return!!t})()}function o(t){return o=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},o(t)}function s(t){if(void 0===t)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return t}function l(t,e){return l=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},l(t,e)}function c(t){return c=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},c(t)}var u=r(76226),h=r(27415),f=\"function\"==typeof Symbol&&\"function\"==typeof Symbol.for?Symbol.for(\"nodejs.util.inspect.custom\"):null;e.Buffer=m,e.SlowBuffer=function(t){return+t!=t&&(t=0),m.alloc(+t)},e.INSPECT_MAX_BYTES=50;var p=2147483647;function d(t){if(t>p)throw new RangeError('The value \"'+t+'\" is invalid for option \"size\"');var e=new Uint8Array(t);return Object.setPrototypeOf(e,m.prototype),e}function m(t,e,r){if(\"number\"==typeof t){if(\"string\"==typeof e)throw new TypeError('The \"string\" argument must be of type string. Received type number');return v(t)}return g(t,e,r)}function g(t,e,r){if(\"string\"==typeof t)return function(t,e){if(\"string\"==typeof e&&\"\"!==e||(e=\"utf8\"),!m.isEncoding(e))throw new TypeError(\"Unknown encoding: \"+e);var r=0|w(t,e),n=d(r),i=n.write(t,e);return i!==r&&(n=n.slice(0,i)),n}(t,e);if(ArrayBuffer.isView(t))return function(t){if(rt(t,Uint8Array)){var e=new Uint8Array(t);return _(e.buffer,e.byteOffset,e.byteLength)}return x(t)}(t);if(null==t)throw new TypeError(\"The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type \"+c(t));if(rt(t,ArrayBuffer)||t&&rt(t.buffer,ArrayBuffer))return _(t,e,r);if(\"undefined\"!=typeof SharedArrayBuffer&&(rt(t,SharedArrayBuffer)||t&&rt(t.buffer,SharedArrayBuffer)))return _(t,e,r);if(\"number\"==typeof t)throw new TypeError('The \"value\" argument must not be of type number. Received type number');var n=t.valueOf&&t.valueOf();if(null!=n&&n!==t)return m.from(n,e,r);var i=function(t){if(m.isBuffer(t)){var e=0|b(t.length),r=d(e);return 0===r.length||t.copy(r,0,0,e),r}return void 0!==t.length?\"number\"!=typeof t.length||nt(t.length)?d(0):x(t):\"Buffer\"===t.type&&Array.isArray(t.data)?x(t.data):void 0}(t);if(i)return i;if(\"undefined\"!=typeof Symbol&&null!=Symbol.toPrimitive&&\"function\"==typeof t[Symbol.toPrimitive])return m.from(t[Symbol.toPrimitive](\"string\"),e,r);throw new TypeError(\"The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type \"+c(t))}function y(t){if(\"number\"!=typeof t)throw new TypeError('\"size\" argument must be of type number');if(t<0)throw new RangeError('The value \"'+t+'\" is invalid for option \"size\"')}function v(t){return y(t),d(t<0?0:0|b(t))}function x(t){for(var e=t.length<0?0:0|b(t.length),r=d(e),n=0;n<e;n+=1)r[n]=255&t[n];return r}function _(t,e,r){if(e<0||t.byteLength<e)throw new RangeError('\"offset\" is outside of buffer bounds');if(t.byteLength<e+(r||0))throw new RangeError('\"length\" is outside of buffer bounds');var n;return n=void 0===e&&void 0===r?new Uint8Array(t):void 0===r?new Uint8Array(t,e):new Uint8Array(t,e,r),Object.setPrototypeOf(n,m.prototype),n}function b(t){if(t>=p)throw new RangeError(\"Attempt to allocate Buffer larger than maximum size: 0x\"+p.toString(16)+\" bytes\");return 0|t}function w(t,e){if(m.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||rt(t,ArrayBuffer))return t.byteLength;if(\"string\"!=typeof t)throw new TypeError('The \"string\" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+c(t));var r=t.length,n=arguments.length>2&&!0===arguments[2];if(!n&&0===r)return 0;for(var i=!1;;)switch(e){case\"ascii\":case\"latin1\":case\"binary\":return r;case\"utf8\":case\"utf-8\":return Q(t).length;case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return 2*r;case\"hex\":return r>>>1;case\"base64\":return tt(t).length;default:if(i)return n?-1:Q(t).length;e=(\"\"+e).toLowerCase(),i=!0}}function T(t,e,r){var n=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return\"\";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return\"\";if((r>>>=0)<=(e>>>=0))return\"\";for(t||(t=\"utf8\");;)switch(t){case\"hex\":return F(this,e,r);case\"utf8\":case\"utf-8\":return z(this,e,r);case\"ascii\":return D(this,e,r);case\"latin1\":case\"binary\":return R(this,e,r);case\"base64\":return P(this,e,r);case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return B(this,e,r);default:if(n)throw new TypeError(\"Unknown encoding: \"+t);t=(t+\"\").toLowerCase(),n=!0}}function k(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}function A(t,e,r,n,i){if(0===t.length)return-1;if(\"string\"==typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),nt(r=+r)&&(r=i?0:t.length-1),r<0&&(r=t.length+r),r>=t.length){if(i)return-1;r=t.length-1}else if(r<0){if(!i)return-1;r=0}if(\"string\"==typeof e&&(e=m.from(e,n)),m.isBuffer(e))return 0===e.length?-1:M(t,e,r,n,i);if(\"number\"==typeof e)return e&=255,\"function\"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(t,e,r):Uint8Array.prototype.lastIndexOf.call(t,e,r):M(t,[e],r,n,i);throw new TypeError(\"val must be string, number or Buffer\")}function M(t,e,r,n,i){var a,o=1,s=t.length,l=e.length;if(void 0!==n&&(\"ucs2\"===(n=String(n).toLowerCase())||\"ucs-2\"===n||\"utf16le\"===n||\"utf-16le\"===n)){if(t.length<2||e.length<2)return-1;o=2,s/=2,l/=2,r/=2}function c(t,e){return 1===o?t[e]:t.readUInt16BE(e*o)}if(i){var u=-1;for(a=r;a<s;a++)if(c(t,a)===c(e,-1===u?0:a-u)){if(-1===u&&(u=a),a-u+1===l)return u*o}else-1!==u&&(a-=a-u),u=-1}else for(r+l>s&&(r=s-l),a=r;a>=0;a--){for(var h=!0,f=0;f<l;f++)if(c(t,a+f)!==c(e,f)){h=!1;break}if(h)return a}return-1}function S(t,e,r,n){r=Number(r)||0;var i=t.length-r;n?(n=Number(n))>i&&(n=i):n=i;var a,o=e.length;for(n>o/2&&(n=o/2),a=0;a<n;++a){var s=parseInt(e.substr(2*a,2),16);if(nt(s))return a;t[r+a]=s}return a}function E(t,e,r,n){return et(Q(e,t.length-r),t,r,n)}function C(t,e,r,n){return et(function(t){for(var e=[],r=0;r<t.length;++r)e.push(255&t.charCodeAt(r));return e}(e),t,r,n)}function L(t,e,r,n){return et(tt(e),t,r,n)}function I(t,e,r,n){return et(function(t,e){for(var r,n,i,a=[],o=0;o<t.length&&!((e-=2)<0);++o)n=(r=t.charCodeAt(o))>>8,i=r%256,a.push(i),a.push(n);return a}(e,t.length-r),t,r,n)}function P(t,e,r){return 0===e&&r===t.length?u.fromByteArray(t):u.fromByteArray(t.slice(e,r))}function z(t,e,r){r=Math.min(t.length,r);for(var n=[],i=e;i<r;){var a=t[i],o=null,s=a>239?4:a>223?3:a>191?2:1;if(i+s<=r){var l=void 0,c=void 0,u=void 0,h=void 0;switch(s){case 1:a<128&&(o=a);break;case 2:128==(192&(l=t[i+1]))&&(h=(31&a)<<6|63&l)>127&&(o=h);break;case 3:l=t[i+1],c=t[i+2],128==(192&l)&&128==(192&c)&&(h=(15&a)<<12|(63&l)<<6|63&c)>2047&&(h<55296||h>57343)&&(o=h);break;case 4:l=t[i+1],c=t[i+2],u=t[i+3],128==(192&l)&&128==(192&c)&&128==(192&u)&&(h=(15&a)<<18|(63&l)<<12|(63&c)<<6|63&u)>65535&&h<1114112&&(o=h)}}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(t){var e=t.length;if(e<=O)return String.fromCharCode.apply(String,t);for(var r=\"\",n=0;n<e;)r+=String.fromCharCode.apply(String,t.slice(n,n+=O));return r}(n)}e.kMaxLength=p,m.TYPED_ARRAY_SUPPORT=function(){try{var t=new Uint8Array(1),e={foo:function(){return 42}};return Object.setPrototypeOf(e,Uint8Array.prototype),Object.setPrototypeOf(t,e),42===t.foo()}catch(t){return!1}}(),m.TYPED_ARRAY_SUPPORT||\"undefined\"==typeof console||\"function\"!=typeof console.error||console.error(\"This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.\"),Object.defineProperty(m.prototype,\"parent\",{enumerable:!0,get:function(){if(m.isBuffer(this))return this.buffer}}),Object.defineProperty(m.prototype,\"offset\",{enumerable:!0,get:function(){if(m.isBuffer(this))return this.byteOffset}}),m.poolSize=8192,m.from=function(t,e,r){return g(t,e,r)},Object.setPrototypeOf(m.prototype,Uint8Array.prototype),Object.setPrototypeOf(m,Uint8Array),m.alloc=function(t,e,r){return function(t,e,r){return y(t),t<=0?d(t):void 0!==e?\"string\"==typeof r?d(t).fill(e,r):d(t).fill(e):d(t)}(t,e,r)},m.allocUnsafe=function(t){return v(t)},m.allocUnsafeSlow=function(t){return v(t)},m.isBuffer=function(t){return null!=t&&!0===t._isBuffer&&t!==m.prototype},m.compare=function(t,e){if(rt(t,Uint8Array)&&(t=m.from(t,t.offset,t.byteLength)),rt(e,Uint8Array)&&(e=m.from(e,e.offset,e.byteLength)),!m.isBuffer(t)||!m.isBuffer(e))throw new TypeError('The \"buf1\", \"buf2\" arguments must be one of type Buffer or Uint8Array');if(t===e)return 0;for(var r=t.length,n=e.length,i=0,a=Math.min(r,n);i<a;++i)if(t[i]!==e[i]){r=t[i],n=e[i];break}return r<n?-1:n<r?1:0},m.isEncoding=function(t){switch(String(t).toLowerCase()){case\"hex\":case\"utf8\":case\"utf-8\":case\"ascii\":case\"latin1\":case\"binary\":case\"base64\":case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return!0;default:return!1}},m.concat=function(t,e){if(!Array.isArray(t))throw new TypeError('\"list\" argument must be an Array of Buffers');if(0===t.length)return m.alloc(0);var r;if(void 0===e)for(e=0,r=0;r<t.length;++r)e+=t[r].length;var n=m.allocUnsafe(e),i=0;for(r=0;r<t.length;++r){var a=t[r];if(rt(a,Uint8Array))i+a.length>n.length?(m.isBuffer(a)||(a=m.from(a)),a.copy(n,i)):Uint8Array.prototype.set.call(n,a,i);else{if(!m.isBuffer(a))throw new TypeError('\"list\" argument must be an Array of Buffers');a.copy(n,i)}i+=a.length}return n},m.byteLength=w,m.prototype._isBuffer=!0,m.prototype.swap16=function(){var t=this.length;if(t%2!=0)throw new RangeError(\"Buffer size must be a multiple of 16-bits\");for(var e=0;e<t;e+=2)k(this,e,e+1);return this},m.prototype.swap32=function(){var t=this.length;if(t%4!=0)throw new RangeError(\"Buffer size must be a multiple of 32-bits\");for(var e=0;e<t;e+=4)k(this,e,e+3),k(this,e+1,e+2);return this},m.prototype.swap64=function(){var t=this.length;if(t%8!=0)throw new RangeError(\"Buffer size must be a multiple of 64-bits\");for(var e=0;e<t;e+=8)k(this,e,e+7),k(this,e+1,e+6),k(this,e+2,e+5),k(this,e+3,e+4);return this},m.prototype.toString=function(){var t=this.length;return 0===t?\"\":0===arguments.length?z(this,0,t):T.apply(this,arguments)},m.prototype.toLocaleString=m.prototype.toString,m.prototype.equals=function(t){if(!m.isBuffer(t))throw new TypeError(\"Argument must be a Buffer\");return this===t||0===m.compare(this,t)},m.prototype.inspect=function(){var t=\"\",r=e.INSPECT_MAX_BYTES;return t=this.toString(\"hex\",0,r).replace(/(.{2})/g,\"$1 \").trim(),this.length>r&&(t+=\" ... \"),\"<Buffer \"+t+\">\"},f&&(m.prototype[f]=m.prototype.inspect),m.prototype.compare=function(t,e,r,n,i){if(rt(t,Uint8Array)&&(t=m.from(t,t.offset,t.byteLength)),!m.isBuffer(t))throw new TypeError('The \"target\" argument must be one of type Buffer or Uint8Array. Received type '+c(t));if(void 0===e&&(e=0),void 0===r&&(r=t?t.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),e<0||r>t.length||n<0||i>this.length)throw new RangeError(\"out of range index\");if(n>=i&&e>=r)return 0;if(n>=i)return-1;if(e>=r)return 1;if(this===t)return 0;for(var a=(i>>>=0)-(n>>>=0),o=(r>>>=0)-(e>>>=0),s=Math.min(a,o),l=this.slice(n,i),u=t.slice(e,r),h=0;h<s;++h)if(l[h]!==u[h]){a=l[h],o=u[h];break}return a<o?-1:o<a?1:0},m.prototype.includes=function(t,e,r){return-1!==this.indexOf(t,e,r)},m.prototype.indexOf=function(t,e,r){return A(this,t,e,r,!0)},m.prototype.lastIndexOf=function(t,e,r){return A(this,t,e,r,!1)},m.prototype.write=function(t,e,r,n){if(void 0===e)n=\"utf8\",r=this.length,e=0;else if(void 0===r&&\"string\"==typeof e)n=e,r=this.length,e=0;else{if(!isFinite(e))throw new Error(\"Buffer.write(string, encoding, offset[, length]) is no longer supported\");e>>>=0,isFinite(r)?(r>>>=0,void 0===n&&(n=\"utf8\")):(n=r,r=void 0)}var i=this.length-e;if((void 0===r||r>i)&&(r=i),t.length>0&&(r<0||e<0)||e>this.length)throw new RangeError(\"Attempt to write outside buffer bounds\");n||(n=\"utf8\");for(var a=!1;;)switch(n){case\"hex\":return S(this,t,e,r);case\"utf8\":case\"utf-8\":return E(this,t,e,r);case\"ascii\":case\"latin1\":case\"binary\":return C(this,t,e,r);case\"base64\":return L(this,t,e,r);case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return I(this,t,e,r);default:if(a)throw new TypeError(\"Unknown encoding: \"+n);n=(\"\"+n).toLowerCase(),a=!0}},m.prototype.toJSON=function(){return{type:\"Buffer\",data:Array.prototype.slice.call(this._arr||this,0)}};var O=4096;function D(t,e,r){var n=\"\";r=Math.min(t.length,r);for(var i=e;i<r;++i)n+=String.fromCharCode(127&t[i]);return n}function R(t,e,r){var n=\"\";r=Math.min(t.length,r);for(var i=e;i<r;++i)n+=String.fromCharCode(t[i]);return n}function F(t,e,r){var n=t.length;(!e||e<0)&&(e=0),(!r||r<0||r>n)&&(r=n);for(var i=\"\",a=e;a<r;++a)i+=it[t[a]];return i}function B(t,e,r){for(var n=t.slice(e,r),i=\"\",a=0;a<n.length-1;a+=2)i+=String.fromCharCode(n[a]+256*n[a+1]);return i}function N(t,e,r){if(t%1!=0||t<0)throw new RangeError(\"offset is not uint\");if(t+e>r)throw new RangeError(\"Trying to access beyond buffer length\")}function j(t,e,r,n,i,a){if(!m.isBuffer(t))throw new TypeError('\"buffer\" argument must be a Buffer instance');if(e>i||e<a)throw new RangeError('\"value\" argument is out of bounds');if(r+n>t.length)throw new RangeError(\"Index out of range\")}function U(t,e,r,n,i){X(e,n,i,t,r,7);var a=Number(e&BigInt(4294967295));t[r++]=a,a>>=8,t[r++]=a,a>>=8,t[r++]=a,a>>=8,t[r++]=a;var o=Number(e>>BigInt(32)&BigInt(4294967295));return t[r++]=o,o>>=8,t[r++]=o,o>>=8,t[r++]=o,o>>=8,t[r++]=o,r}function V(t,e,r,n,i){X(e,n,i,t,r,7);var a=Number(e&BigInt(4294967295));t[r+7]=a,a>>=8,t[r+6]=a,a>>=8,t[r+5]=a,a>>=8,t[r+4]=a;var o=Number(e>>BigInt(32)&BigInt(4294967295));return t[r+3]=o,o>>=8,t[r+2]=o,o>>=8,t[r+1]=o,o>>=8,t[r]=o,r+8}function q(t,e,r,n,i,a){if(r+n>t.length)throw new RangeError(\"Index out of range\");if(r<0)throw new RangeError(\"Index out of range\")}function H(t,e,r,n,i){return e=+e,r>>>=0,i||q(t,0,r,4),h.write(t,e,r,n,23,4),r+4}function G(t,e,r,n,i){return e=+e,r>>>=0,i||q(t,0,r,8),h.write(t,e,r,n,52,8),r+8}m.prototype.slice=function(t,e){var r=this.length;(t=~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),(e=void 0===e?r:~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),e<t&&(e=t);var n=this.subarray(t,e);return Object.setPrototypeOf(n,m.prototype),n},m.prototype.readUintLE=m.prototype.readUIntLE=function(t,e,r){t>>>=0,e>>>=0,r||N(t,e,this.length);for(var n=this[t],i=1,a=0;++a<e&&(i*=256);)n+=this[t+a]*i;return n},m.prototype.readUintBE=m.prototype.readUIntBE=function(t,e,r){t>>>=0,e>>>=0,r||N(t,e,this.length);for(var n=this[t+--e],i=1;e>0&&(i*=256);)n+=this[t+--e]*i;return n},m.prototype.readUint8=m.prototype.readUInt8=function(t,e){return t>>>=0,e||N(t,1,this.length),this[t]},m.prototype.readUint16LE=m.prototype.readUInt16LE=function(t,e){return t>>>=0,e||N(t,2,this.length),this[t]|this[t+1]<<8},m.prototype.readUint16BE=m.prototype.readUInt16BE=function(t,e){return t>>>=0,e||N(t,2,this.length),this[t]<<8|this[t+1]},m.prototype.readUint32LE=m.prototype.readUInt32LE=function(t,e){return t>>>=0,e||N(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},m.prototype.readUint32BE=m.prototype.readUInt32BE=function(t,e){return t>>>=0,e||N(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},m.prototype.readBigUInt64LE=at((function(t){$(t>>>=0,\"offset\");var e=this[t],r=this[t+7];void 0!==e&&void 0!==r||J(t,this.length-8);var n=e+this[++t]*Math.pow(2,8)+this[++t]*Math.pow(2,16)+this[++t]*Math.pow(2,24),i=this[++t]+this[++t]*Math.pow(2,8)+this[++t]*Math.pow(2,16)+r*Math.pow(2,24);return BigInt(n)+(BigInt(i)<<BigInt(32))})),m.prototype.readBigUInt64BE=at((function(t){$(t>>>=0,\"offset\");var e=this[t],r=this[t+7];void 0!==e&&void 0!==r||J(t,this.length-8);var n=e*Math.pow(2,24)+this[++t]*Math.pow(2,16)+this[++t]*Math.pow(2,8)+this[++t],i=this[++t]*Math.pow(2,24)+this[++t]*Math.pow(2,16)+this[++t]*Math.pow(2,8)+r;return(BigInt(n)<<BigInt(32))+BigInt(i)})),m.prototype.readIntLE=function(t,e,r){t>>>=0,e>>>=0,r||N(t,e,this.length);for(var n=this[t],i=1,a=0;++a<e&&(i*=256);)n+=this[t+a]*i;return n>=(i*=128)&&(n-=Math.pow(2,8*e)),n},m.prototype.readIntBE=function(t,e,r){t>>>=0,e>>>=0,r||N(t,e,this.length);for(var n=e,i=1,a=this[t+--n];n>0&&(i*=256);)a+=this[t+--n]*i;return a>=(i*=128)&&(a-=Math.pow(2,8*e)),a},m.prototype.readInt8=function(t,e){return t>>>=0,e||N(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},m.prototype.readInt16LE=function(t,e){t>>>=0,e||N(t,2,this.length);var r=this[t]|this[t+1]<<8;return 32768&r?4294901760|r:r},m.prototype.readInt16BE=function(t,e){t>>>=0,e||N(t,2,this.length);var r=this[t+1]|this[t]<<8;return 32768&r?4294901760|r:r},m.prototype.readInt32LE=function(t,e){return t>>>=0,e||N(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},m.prototype.readInt32BE=function(t,e){return t>>>=0,e||N(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},m.prototype.readBigInt64LE=at((function(t){$(t>>>=0,\"offset\");var e=this[t],r=this[t+7];void 0!==e&&void 0!==r||J(t,this.length-8);var n=this[t+4]+this[t+5]*Math.pow(2,8)+this[t+6]*Math.pow(2,16)+(r<<24);return(BigInt(n)<<BigInt(32))+BigInt(e+this[++t]*Math.pow(2,8)+this[++t]*Math.pow(2,16)+this[++t]*Math.pow(2,24))})),m.prototype.readBigInt64BE=at((function(t){$(t>>>=0,\"offset\");var e=this[t],r=this[t+7];void 0!==e&&void 0!==r||J(t,this.length-8);var n=(e<<24)+this[++t]*Math.pow(2,16)+this[++t]*Math.pow(2,8)+this[++t];return(BigInt(n)<<BigInt(32))+BigInt(this[++t]*Math.pow(2,24)+this[++t]*Math.pow(2,16)+this[++t]*Math.pow(2,8)+r)})),m.prototype.readFloatLE=function(t,e){return t>>>=0,e||N(t,4,this.length),h.read(this,t,!0,23,4)},m.prototype.readFloatBE=function(t,e){return t>>>=0,e||N(t,4,this.length),h.read(this,t,!1,23,4)},m.prototype.readDoubleLE=function(t,e){return t>>>=0,e||N(t,8,this.length),h.read(this,t,!0,52,8)},m.prototype.readDoubleBE=function(t,e){return t>>>=0,e||N(t,8,this.length),h.read(this,t,!1,52,8)},m.prototype.writeUintLE=m.prototype.writeUIntLE=function(t,e,r,n){t=+t,e>>>=0,r>>>=0,n||j(this,t,e,r,Math.pow(2,8*r)-1,0);var i=1,a=0;for(this[e]=255&t;++a<r&&(i*=256);)this[e+a]=t/i&255;return e+r},m.prototype.writeUintBE=m.prototype.writeUIntBE=function(t,e,r,n){t=+t,e>>>=0,r>>>=0,n||j(this,t,e,r,Math.pow(2,8*r)-1,0);var i=r-1,a=1;for(this[e+i]=255&t;--i>=0&&(a*=256);)this[e+i]=t/a&255;return e+r},m.prototype.writeUint8=m.prototype.writeUInt8=function(t,e,r){return t=+t,e>>>=0,r||j(this,t,e,1,255,0),this[e]=255&t,e+1},m.prototype.writeUint16LE=m.prototype.writeUInt16LE=function(t,e,r){return t=+t,e>>>=0,r||j(this,t,e,2,65535,0),this[e]=255&t,this[e+1]=t>>>8,e+2},m.prototype.writeUint16BE=m.prototype.writeUInt16BE=function(t,e,r){return t=+t,e>>>=0,r||j(this,t,e,2,65535,0),this[e]=t>>>8,this[e+1]=255&t,e+2},m.prototype.writeUint32LE=m.prototype.writeUInt32LE=function(t,e,r){return t=+t,e>>>=0,r||j(this,t,e,4,4294967295,0),this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t,e+4},m.prototype.writeUint32BE=m.prototype.writeUInt32BE=function(t,e,r){return t=+t,e>>>=0,r||j(this,t,e,4,4294967295,0),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},m.prototype.writeBigUInt64LE=at((function(t){return U(this,t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,BigInt(0),BigInt(\"0xffffffffffffffff\"))})),m.prototype.writeBigUInt64BE=at((function(t){return V(this,t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,BigInt(0),BigInt(\"0xffffffffffffffff\"))})),m.prototype.writeIntLE=function(t,e,r,n){if(t=+t,e>>>=0,!n){var i=Math.pow(2,8*r-1);j(this,t,e,r,i-1,-i)}var a=0,o=1,s=0;for(this[e]=255&t;++a<r&&(o*=256);)t<0&&0===s&&0!==this[e+a-1]&&(s=1),this[e+a]=(t/o>>0)-s&255;return e+r},m.prototype.writeIntBE=function(t,e,r,n){if(t=+t,e>>>=0,!n){var i=Math.pow(2,8*r-1);j(this,t,e,r,i-1,-i)}var a=r-1,o=1,s=0;for(this[e+a]=255&t;--a>=0&&(o*=256);)t<0&&0===s&&0!==this[e+a+1]&&(s=1),this[e+a]=(t/o>>0)-s&255;return e+r},m.prototype.writeInt8=function(t,e,r){return t=+t,e>>>=0,r||j(this,t,e,1,127,-128),t<0&&(t=255+t+1),this[e]=255&t,e+1},m.prototype.writeInt16LE=function(t,e,r){return t=+t,e>>>=0,r||j(this,t,e,2,32767,-32768),this[e]=255&t,this[e+1]=t>>>8,e+2},m.prototype.writeInt16BE=function(t,e,r){return t=+t,e>>>=0,r||j(this,t,e,2,32767,-32768),this[e]=t>>>8,this[e+1]=255&t,e+2},m.prototype.writeInt32LE=function(t,e,r){return t=+t,e>>>=0,r||j(this,t,e,4,2147483647,-2147483648),this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24,e+4},m.prototype.writeInt32BE=function(t,e,r){return t=+t,e>>>=0,r||j(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},m.prototype.writeBigInt64LE=at((function(t){return U(this,t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,-BigInt(\"0x8000000000000000\"),BigInt(\"0x7fffffffffffffff\"))})),m.prototype.writeBigInt64BE=at((function(t){return V(this,t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,-BigInt(\"0x8000000000000000\"),BigInt(\"0x7fffffffffffffff\"))})),m.prototype.writeFloatLE=function(t,e,r){return H(this,t,e,!0,r)},m.prototype.writeFloatBE=function(t,e,r){return H(this,t,e,!1,r)},m.prototype.writeDoubleLE=function(t,e,r){return G(this,t,e,!0,r)},m.prototype.writeDoubleBE=function(t,e,r){return G(this,t,e,!1,r)},m.prototype.copy=function(t,e,r,n){if(!m.isBuffer(t))throw new TypeError(\"argument should be a Buffer\");if(r||(r=0),n||0===n||(n=this.length),e>=t.length&&(e=t.length),e||(e=0),n>0&&n<r&&(n=r),n===r)return 0;if(0===t.length||0===this.length)return 0;if(e<0)throw new RangeError(\"targetStart out of bounds\");if(r<0||r>=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),t.length-e<n-r&&(n=t.length-e+r);var i=n-r;return this===t&&\"function\"==typeof Uint8Array.prototype.copyWithin?this.copyWithin(e,r,n):Uint8Array.prototype.set.call(t,this.subarray(r,n),e),i},m.prototype.fill=function(t,e,r,n){if(\"string\"==typeof t){if(\"string\"==typeof e?(n=e,e=0,r=this.length):\"string\"==typeof r&&(n=r,r=this.length),void 0!==n&&\"string\"!=typeof n)throw new TypeError(\"encoding must be a string\");if(\"string\"==typeof n&&!m.isEncoding(n))throw new TypeError(\"Unknown encoding: \"+n);if(1===t.length){var i=t.charCodeAt(0);(\"utf8\"===n&&i<128||\"latin1\"===n)&&(t=i)}}else\"number\"==typeof t?t&=255:\"boolean\"==typeof t&&(t=Number(t));if(e<0||this.length<e||this.length<r)throw new RangeError(\"Out of range index\");if(r<=e)return this;var a;if(e>>>=0,r=void 0===r?this.length:r>>>0,t||(t=0),\"number\"==typeof t)for(a=e;a<r;++a)this[a]=t;else{var o=m.isBuffer(t)?t:m.from(t,n),s=o.length;if(0===s)throw new TypeError('The value \"'+t+'\" is invalid for argument \"value\"');for(a=0;a<r-e;++a)this[a+e]=o[a%s]}return this};var Z={};function W(t,e,r){Z[t]=function(r){function i(){var r;return function(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}(this,i),r=function(t,e,r){return e=o(e),function(t,e){if(e&&(\"object\"==c(e)||\"function\"==typeof e))return e;if(void 0!==e)throw new TypeError(\"Derived constructors may only return object or undefined\");return s(t)}(t,a()?Reflect.construct(e,r||[],o(t).constructor):e.apply(t,r))}(this,i),Object.defineProperty(s(r),\"message\",{value:e.apply(s(r),arguments),writable:!0,configurable:!0}),r.name=\"\".concat(r.name,\" [\").concat(t,\"]\"),r.stack,delete r.name,r}var u,h;return function(t,e){if(\"function\"!=typeof e&&null!==e)throw new TypeError(\"Super expression must either be null or a function\");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,\"prototype\",{writable:!1}),e&&l(t,e)}(i,r),u=i,(h=[{key:\"code\",get:function(){return t},set:function(t){Object.defineProperty(this,\"code\",{configurable:!0,enumerable:!0,value:t,writable:!0})}},{key:\"toString\",value:function(){return\"\".concat(this.name,\" [\").concat(t,\"]: \").concat(this.message)}}])&&n(u.prototype,h),Object.defineProperty(u,\"prototype\",{writable:!1}),i}(r)}function Y(t){for(var e=\"\",r=t.length,n=\"-\"===t[0]?1:0;r>=n+4;r-=3)e=\"_\".concat(t.slice(r-3,r)).concat(e);return\"\".concat(t.slice(0,r)).concat(e)}function X(t,e,r,n,i,a){if(t>r||t<e){var o,s=\"bigint\"==typeof e?\"n\":\"\";throw o=a>3?0===e||e===BigInt(0)?\">= 0\".concat(s,\" and < 2\").concat(s,\" ** \").concat(8*(a+1)).concat(s):\">= -(2\".concat(s,\" ** \").concat(8*(a+1)-1).concat(s,\") and < 2 ** \")+\"\".concat(8*(a+1)-1).concat(s):\">= \".concat(e).concat(s,\" and <= \").concat(r).concat(s),new Z.ERR_OUT_OF_RANGE(\"value\",o,t)}!function(t,e,r){$(e,\"offset\"),void 0!==t[e]&&void 0!==t[e+r]||J(e,t.length-(r+1))}(n,i,a)}function $(t,e){if(\"number\"!=typeof t)throw new Z.ERR_INVALID_ARG_TYPE(e,\"number\",t)}function J(t,e,r){if(Math.floor(t)!==t)throw $(t,r),new Z.ERR_OUT_OF_RANGE(r||\"offset\",\"an integer\",t);if(e<0)throw new Z.ERR_BUFFER_OUT_OF_BOUNDS;throw new Z.ERR_OUT_OF_RANGE(r||\"offset\",\">= \".concat(r?1:0,\" and <= \").concat(e),t)}W(\"ERR_BUFFER_OUT_OF_BOUNDS\",(function(t){return t?\"\".concat(t,\" is outside of buffer bounds\"):\"Attempt to access memory outside buffer bounds\"}),RangeError),W(\"ERR_INVALID_ARG_TYPE\",(function(t,e){return'The \"'.concat(t,'\" argument must be of type number. Received type ').concat(c(e))}),TypeError),W(\"ERR_OUT_OF_RANGE\",(function(t,e,r){var n='The value of \"'.concat(t,'\" 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(e,\". Received \").concat(i)}),RangeError);var K=/[^+/0-9A-Za-z-_]/g;function Q(t,e){var r;e=e||1/0;for(var n=t.length,i=null,a=[],o=0;o<n;++o){if((r=t.charCodeAt(o))>55295&&r<57344){if(!i){if(r>56319){(e-=3)>-1&&a.push(239,191,189);continue}if(o+1===n){(e-=3)>-1&&a.push(239,191,189);continue}i=r;continue}if(r<56320){(e-=3)>-1&&a.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(e-=3)>-1&&a.push(239,191,189);if(i=null,r<128){if((e-=1)<0)break;a.push(r)}else if(r<2048){if((e-=2)<0)break;a.push(r>>6|192,63&r|128)}else if(r<65536){if((e-=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((e-=4)<0)break;a.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return a}function tt(t){return u.toByteArray(function(t){if((t=(t=t.split(\"=\")[0]).trim().replace(K,\"\")).length<2)return\"\";for(;t.length%4!=0;)t+=\"=\";return t}(t))}function et(t,e,r,n){var i;for(i=0;i<n&&!(i+r>=e.length||i>=t.length);++i)e[i+r]=t[i];return i}function rt(t,e){return t instanceof e||null!=t&&null!=t.constructor&&null!=t.constructor.name&&t.constructor.name===e.name}function nt(t){return t!=t}var it=function(){for(var t=\"0123456789abcdef\",e=new Array(256),r=0;r<16;++r)for(var n=16*r,i=0;i<16;++i)e[n+i]=t[r]+t[i];return e}();function at(t){return\"undefined\"==typeof BigInt?ot:t}function ot(){throw new Error(\"BigInt not supported\")}},13087:function(t){\"use strict\";t.exports=i,t.exports.isMobile=i,t.exports.default=i;var e=/(android|bb\\d+|meego).+mobile|armv7l|avantgo|bada\\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,r=/CrOS/,n=/android|ipad|playbook|silk/i;function i(t){t||(t={});var i=t.ua;if(i||\"undefined\"==typeof navigator||(i=navigator.userAgent),i&&i.headers&&\"string\"==typeof i.headers[\"user-agent\"]&&(i=i.headers[\"user-agent\"]),\"string\"!=typeof i)return!1;var a=e.test(i)&&!r.test(i)||!!t.tablet&&n.test(i);return!a&&t.tablet&&t.featureDetect&&navigator&&navigator.maxTouchPoints>1&&-1!==i.indexOf(\"Macintosh\")&&-1!==i.indexOf(\"Safari\")&&(a=!0),a}},5955:function(t,e,r){\"use strict\";var n=r(22413),i=r.n(n),a=r(51070),o=r.n(a),s=r(62133),l=r.n(s),c=new URL(r(77035),r.b),u=new URL(r(43470),r.b),h=new URL(r(68164),r.b),f=new URL(r(64665),r.b),p=new URL(r(4890),r.b),d=new URL(r(13363),r.b),m=new URL(r(13490),r.b),g=new URL(r(47603),r.b),y=new URL(r(13913),r.b),v=new URL(r(91413),r.b),x=new URL(r(64643),r.b),_=new URL(r(80216),r.b),b=new URL(r(61907),r.b),w=new URL(r(68605),r.b),T=new URL(r(25446),r.b),k=new URL(r(56694),r.b),A=new URL(r(24420),r.b),M=new URL(r(75796),r.b),S=new URL(r(92228),r.b),E=new URL(r(9819),r.b),C=new URL(r(47695),r.b),L=new URL(r(28869),r.b),I=new URL(r(30557),r.b),P=new URL(r(48460),r.b),z=new URL(r(56539),r.b),O=new URL(r(43737),r.b),D=new URL(r(47914),r.b),R=new URL(r(26117),r.b),F=new URL(r(66311),r.b),B=o()(i()),N=l()(c),j=l()(u),U=l()(h),V=l()(f),q=l()(p),H=l()(d),G=l()(m),Z=l()(g),W=l()(y),Y=l()(v),X=l()(x),$=l()(_),J=l()(b),K=l()(w),Q=l()(T),tt=l()(k),et=l()(A),rt=l()(M),nt=l()(S),it=l()(E),at=l()(C),ot=l()(L),st=l()(I),lt=l()(P),ct=l()(z),ut=l()(O),ht=l()(D),ft=l()(R),pt=l()(F);B.push([t.id,\".maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url(\"+N+\")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url(\"+j+\")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url(\"+U+\")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url(\"+V+\")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url(\"+q+\")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url(\"+H+\")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url(\"+G+\")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url(\"+Z+\")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url(\"+W+\")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url(\"+Y+\")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url(\"+X+\")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url(\"+Z+\")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url(\"+$+\")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url(\"+J+\")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url(\"+K+\")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url(\"+Q+\")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url(\"+tt+\")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url(\"+et+\")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url(\"+rt+\")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url(\"+nt+\")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url(\"+it+\")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url(\"+at+\")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url(\"+ot+\")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url(\"+st+\")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url(\"+lt+\")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url(\"+nt+\")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url(\"+it+\")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url(\"+at+\")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url(\"+ot+\")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url(\"+ct+\")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url(\"+ut+\")}}@keyframes maplibregl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url(\"+ht+\");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url(\"+ht+\")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url(\"+ht+\")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url(\"+ft+\");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url(\"+pt+\")}}@media screen and (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url(\"+ft+')}}.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:\"\";position:absolute}.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:\"\";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:rgba(0,0,0,.4);color:#fff;display:flex;font-size:1.4em;inset:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}',\"\"]),e.A=B},68735:function(t,e,r){\"use strict\";r.r(e),r.d(e,{sankeyCenter:function(){return f},sankeyCircular:function(){return L},sankeyJustify:function(){return h},sankeyLeft:function(){return c},sankeyRight:function(){return u}});var n=r(29725),i=r(4575),a=r(48544),o=r(96143),s=r.n(o);function l(t){return t.target.depth}function c(t){return t.depth}function u(t,e){return e-1-t.height}function h(t,e){return t.sourceLinks.length?t.depth:e-1}function f(t){return t.targetLinks.length?t.depth:t.sourceLinks.length?(0,n.jk)(t.sourceLinks,l)-1:0}function p(t){return function(){return t}}var d=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t};function m(t,e){return y(t.source,e.source)||t.index-e.index}function g(t,e){return y(t.target,e.target)||t.index-e.index}function y(t,e){return t.partOfCycle===e.partOfCycle?t.y0-e.y0:\"top\"===t.circularLinkType||\"bottom\"===e.circularLinkType?-1:1}function v(t){return t.value}function x(t){return(t.y0+t.y1)/2}function _(t){return x(t.source)}function b(t){return x(t.target)}function w(t){return t.index}function T(t){return t.nodes}function k(t){return t.links}function A(t,e){var r=t.get(e);if(!r)throw new Error(\"missing: \"+e);return r}function M(t,e){return e(t)}var S=25,E=10,C=.3;function L(){var t,e,r=0,a=0,o=1,l=1,c=24,u=w,f=h,M=T,L=k,P=32,O=2,D=null;function F(){var h={nodes:M.apply(null,arguments),links:L.apply(null,arguments)};!function(t){t.nodes.forEach((function(t,e){t.index=e,t.sourceLinks=[],t.targetLinks=[]}));var e=(0,i.Tj)(t.nodes,u);t.links.forEach((function(t,r){t.index=r;var n=t.source,i=t.target;\"object\"!==(void 0===n?\"undefined\":d(n))&&(n=t.source=A(e,n)),\"object\"!==(void 0===i?\"undefined\":d(i))&&(i=t.target=A(e,i)),n.sourceLinks.push(t),i.targetLinks.push(t)}))}(h),function(t,e,r){var n=0;if(null===r){for(var i=[],a=0;a<t.links.length;a++){var o=t.links[a],l=o.source.index,c=o.target.index;i[l]||(i[l]=[]),i[c]||(i[c]=[]),-1===i[l].indexOf(c)&&i[l].push(c)}var u=s()(i);u.sort((function(t,e){return t.length-e.length}));var h={};for(a=0;a<u.length;a++){var f=u[a].slice(-2);h[f[0]]||(h[f[0]]={}),h[f[0]][f[1]]=!0}t.links.forEach((function(t){var e=t.target.index,r=t.source.index;e===r||h[r]&&h[r][e]?(t.circular=!0,t.circularLinkID=n,n+=1):t.circular=!1}))}else t.links.forEach((function(t){t.source[r]<t.target[r]?t.circular=!1:(t.circular=!0,t.circularLinkID=n,n+=1)}))}(h,0,D),function(t){t.nodes.forEach((function(t){t.partOfCycle=!1,t.value=Math.max((0,n.cz)(t.sourceLinks,v),(0,n.cz)(t.targetLinks,v)),t.sourceLinks.forEach((function(e){e.circular&&(t.partOfCycle=!0,t.circularLinkType=e.circularLinkType)})),t.targetLinks.forEach((function(e){e.circular&&(t.partOfCycle=!0,t.circularLinkType=e.circularLinkType)}))}))}(h),function(t){var e,r,n;for(e=t.nodes,r=[],n=0;e.length;++n,e=r,r=[])e.forEach((function(t){t.depth=n,t.sourceLinks.forEach((function(t){r.indexOf(t.target)<0&&!t.circular&&r.push(t.target)}))}));for(e=t.nodes,r=[],n=0;e.length;++n,e=r,r=[])e.forEach((function(t){t.height=n,t.targetLinks.forEach((function(t){r.indexOf(t.source)<0&&!t.circular&&r.push(t.source)}))}));t.nodes.forEach((function(t){t.column=Math.floor(f.call(null,t,n))}))}(h),I(h,u),function(s,u,h){var f=(0,i.$I)().key((function(t){return t.column})).sortKeys(n.V_).entries(s.nodes).map((function(t){return t.values}));(function(i){if(e){var u=1/0;f.forEach((function(t){var r=l*e/(t.length+1);u=r<u?r:u})),t=u}var h=(0,n.jk)(f,(function(e){return(l-a-(e.length-1)*t)/(0,n.cz)(e,v)}));h*=C,s.links.forEach((function(t){t.width=t.value*h}));var p=function(t){var e=0,r=0,i=0,a=0,o=(0,n.T9)(t.nodes,(function(t){return t.column}));return t.links.forEach((function(t){t.circular&&(\"top\"==t.circularLinkType?e+=t.width:r+=t.width,0==t.target.column&&(a+=t.width),t.source.column==o&&(i+=t.width))})),{top:e=e>0?e+S+E:e,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),d=function(t,e){var i=(0,n.T9)(t.nodes,(function(t){return t.column})),s=o-r,u=l-a,h=s/(s+e.right+e.left),f=u/(u+e.top+e.bottom);return r=r*h+e.left,o=0==e.right?o:o*h,a=a*f+e.top,l*=f,t.nodes.forEach((function(t){t.x0=r+t.column*((o-r-c)/i),t.x1=t.x0+c})),f}(s,p);h*=d,s.links.forEach((function(t){t.width=t.value*h})),f.forEach((function(t){var e=t.length;t.forEach((function(t,r){t.depth==f.length-1&&1==e||0==t.depth&&1==e?(t.y0=l/2-t.value*h,t.y1=t.y0+t.value*h):t.partOfCycle?0==z(t,i)?(t.y0=l/2+r,t.y1=t.y0+t.value*h):\"top\"==t.circularLinkType?(t.y0=a+r,t.y1=t.y0+t.value*h):(t.y0=l-t.value*h-r,t.y1=t.y0+t.value*h):0==p.top||0==p.bottom?(t.y0=(l-a)/e*r,t.y1=t.y0+t.value*h):(t.y0=(l-a)/2-e/2+r,t.y1=t.y0+t.value*h)}))}))})(h),g();for(var p=1,d=u;d>0;--d)m(p*=.99,h),g();function m(t,e){var r=f.length;f.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&&z(i,e)>0);else if(0==o&&1==a)s=i.y1-i.y0,i.y0=l/2-s/2,i.y1=l/2+s/2;else if(o==r-1&&1==a)s=i.y1-i.y0,i.y0=l/2-s/2,i.y1=l/2+s/2;else{var c=(0,n.i2)(i.sourceLinks,b),u=(0,n.i2)(i.targetLinks,_),h=((c&&u?(c+u)/2:c||u)-x(i))*t;i.y0+=h,i.y1+=h}}))}))}function g(){f.forEach((function(e){var r,n,i,o=a,s=e.length;for(e.sort(y),i=0;i<s;++i)(n=o-(r=e[i]).y0)>0&&(r.y0+=n,r.y1+=n),o=r.y1+t;if((n=o-t-l)>0)for(o=r.y0-=n,r.y1-=n,i=s-2;i>=0;--i)(n=(r=e[i]).y1+t-o)>0&&(r.y0-=n,r.y1-=n),o=r.y0}))}}(h,P,u),B(h);for(var p=0;p<4;p++)Y(h,l,u),X(h,0,u),Z(h,a,l,u),Y(h,l,u),X(h,0,u);return function(t,e,r){var i=t.nodes,a=t.links,o=!1,s=!1;if(a.forEach((function(t){\"top\"==t.circularLinkType?o=!0:\"bottom\"==t.circularLinkType&&(s=!0)})),0==o||0==s){var l=(0,n.jk)(i,(function(t){return t.y0})),c=(r-e)/((0,n.T9)(i,(function(t){return t.y1}))-l);i.forEach((function(t){var e=(t.y1-t.y0)*c;t.y0=(t.y0-l)*c,t.y1=t.y0+e})),a.forEach((function(t){t.y0=(t.y0-l)*c,t.y1=(t.y1-l)*c,t.width=t.width*c}))}}(h,a,l),R(h,O,l,u),h}function B(t){t.nodes.forEach((function(t){t.sourceLinks.sort(g),t.targetLinks.sort(m)})),t.nodes.forEach((function(t){var e=t.y0,r=e,n=t.y1,i=n;t.sourceLinks.forEach((function(t){t.circular?(t.y0=n-t.width/2,n-=t.width):(t.y0=e+t.width/2,e+=t.width)})),t.targetLinks.forEach((function(t){t.circular?(t.y1=i-t.width/2,i-=t.width):(t.y1=r+t.width/2,r+=t.width)}))}))}return F.nodeId=function(t){return arguments.length?(u=\"function\"==typeof t?t:p(t),F):u},F.nodeAlign=function(t){return arguments.length?(f=\"function\"==typeof t?t:p(t),F):f},F.nodeWidth=function(t){return arguments.length?(c=+t,F):c},F.nodePadding=function(e){return arguments.length?(t=+e,F):t},F.nodes=function(t){return arguments.length?(M=\"function\"==typeof t?t:p(t),F):M},F.links=function(t){return arguments.length?(L=\"function\"==typeof t?t:p(t),F):L},F.size=function(t){return arguments.length?(r=a=0,o=+t[0],l=+t[1],F):[o-r,l-a]},F.extent=function(t){return arguments.length?(r=+t[0][0],o=+t[1][0],a=+t[0][1],l=+t[1][1],F):[[r,a],[o,l]]},F.iterations=function(t){return arguments.length?(P=+t,F):P},F.circularLinkGap=function(t){return arguments.length?(O=+t,F):O},F.nodePaddingRatio=function(t){return arguments.length?(e=+t,F):e},F.sortNodes=function(t){return arguments.length?(D=t,F):D},F.update=function(t){return I(t,u),B(t),t.links.forEach((function(t){t.circular&&(t.circularLinkType=t.y0+t.y1<l?\"top\":\"bottom\",t.source.circularLinkType=t.circularLinkType,t.target.circularLinkType=t.circularLinkType)})),Y(t,l,u,!1),X(t,0,u),R(t,O,l,u),t},F}function I(t,e){var r=0,n=0;t.links.forEach((function(i){i.circular&&(i.source.circularLinkType||i.target.circularLinkType?i.circularLinkType=i.source.circularLinkType?i.source.circularLinkType:i.target.circularLinkType:i.circularLinkType=r<n?\"top\":\"bottom\",\"top\"==i.circularLinkType?r+=1:n+=1,t.nodes.forEach((function(t){M(t,e)!=M(i.source,e)&&M(t,e)!=M(i.target,e)||(t.circularLinkType=i.circularLinkType)})))})),t.links.forEach((function(t){t.circular&&(t.source.circularLinkType==t.target.circularLinkType&&(t.circularLinkType=t.source.circularLinkType),K(t,e)&&(t.circularLinkType=t.source.circularLinkType))}))}function P(t){var e=Math.abs(t.y1-t.y0),r=Math.abs(t.target.x0-t.source.x1);return Math.atan(r/e)}function z(t,e){var r=0;t.sourceLinks.forEach((function(t){r=t.circular&&!K(t,e)?r+1:r}));var n=0;return t.targetLinks.forEach((function(t){n=t.circular&&!K(t,e)?n+1:n})),r+n}function O(t){var e=t.source.sourceLinks,r=0;e.forEach((function(t){r=t.circular?r+1:r}));var n=t.target.targetLinks,i=0;return n.forEach((function(t){i=t.circular?i+1:i})),!(r>1||i>1)}function D(t,e,r){return t.sort(F),t.forEach((function(n,i){var a,o,s=0;if(K(n,r)&&O(n))n.circularPathData.verticalBuffer=s+n.width/2;else{for(var l=0;l<i;l++)if(a=t[i],o=t[l],!(a.source.column<o.target.column||a.target.column>o.source.column)){var c=t[l].circularPathData.verticalBuffer+t[l].width/2+e;s=c>s?c:s}n.circularPathData.verticalBuffer=s+n.width/2}})),t}function R(t,e,r,i){var o=(0,n.jk)(t.links,(function(t){return t.source.y0}));t.links.forEach((function(t){t.circular&&(t.circularPathData={})})),D(t.links.filter((function(t){return\"top\"==t.circularLinkType})),e,i),D(t.links.filter((function(t){return\"bottom\"==t.circularLinkType})),e,i),t.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,K(n,i)&&O(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,c=t.links.filter((function(t){return t.source.column==s&&t.circularLinkType==l}));\"bottom\"==n.circularLinkType?c.sort(N):c.sort(B);var u=0;c.forEach((function(t,r){t.circularLinkID==n.circularLinkID&&(n.circularPathData.leftSmallArcRadius=E+n.width/2+u,n.circularPathData.leftLargeArcRadius=E+n.width/2+r*e+u),u+=t.width})),s=n.target.column,c=t.links.filter((function(t){return t.target.column==s&&t.circularLinkType==l})),\"bottom\"==n.circularLinkType?c.sort(U):c.sort(j),u=0,c.forEach((function(t,r){t.circularLinkID==n.circularLinkID&&(n.circularPathData.rightSmallArcRadius=E+n.width/2+u,n.circularPathData.rightLargeArcRadius=E+n.width/2+r*e+u),u+=t.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(t){return\"top\"==t.circularLinkType?\"M\"+t.circularPathData.sourceX+\" \"+t.circularPathData.sourceY+\" L\"+t.circularPathData.leftInnerExtent+\" \"+t.circularPathData.sourceY+\" A\"+t.circularPathData.leftLargeArcRadius+\" \"+t.circularPathData.leftSmallArcRadius+\" 0 0 0 \"+t.circularPathData.leftFullExtent+\" \"+(t.circularPathData.sourceY-t.circularPathData.leftSmallArcRadius)+\" L\"+t.circularPathData.leftFullExtent+\" \"+t.circularPathData.verticalLeftInnerExtent+\" A\"+t.circularPathData.leftLargeArcRadius+\" \"+t.circularPathData.leftLargeArcRadius+\" 0 0 0 \"+t.circularPathData.leftInnerExtent+\" \"+t.circularPathData.verticalFullExtent+\" L\"+t.circularPathData.rightInnerExtent+\" \"+t.circularPathData.verticalFullExtent+\" A\"+t.circularPathData.rightLargeArcRadius+\" \"+t.circularPathData.rightLargeArcRadius+\" 0 0 0 \"+t.circularPathData.rightFullExtent+\" \"+t.circularPathData.verticalRightInnerExtent+\" L\"+t.circularPathData.rightFullExtent+\" \"+(t.circularPathData.targetY-t.circularPathData.rightSmallArcRadius)+\" A\"+t.circularPathData.rightLargeArcRadius+\" \"+t.circularPathData.rightSmallArcRadius+\" 0 0 0 \"+t.circularPathData.rightInnerExtent+\" \"+t.circularPathData.targetY+\" L\"+t.circularPathData.targetX+\" \"+t.circularPathData.targetY:\"M\"+t.circularPathData.sourceX+\" \"+t.circularPathData.sourceY+\" L\"+t.circularPathData.leftInnerExtent+\" \"+t.circularPathData.sourceY+\" A\"+t.circularPathData.leftLargeArcRadius+\" \"+t.circularPathData.leftSmallArcRadius+\" 0 0 1 \"+t.circularPathData.leftFullExtent+\" \"+(t.circularPathData.sourceY+t.circularPathData.leftSmallArcRadius)+\" L\"+t.circularPathData.leftFullExtent+\" \"+t.circularPathData.verticalLeftInnerExtent+\" A\"+t.circularPathData.leftLargeArcRadius+\" \"+t.circularPathData.leftLargeArcRadius+\" 0 0 1 \"+t.circularPathData.leftInnerExtent+\" \"+t.circularPathData.verticalFullExtent+\" L\"+t.circularPathData.rightInnerExtent+\" \"+t.circularPathData.verticalFullExtent+\" A\"+t.circularPathData.rightLargeArcRadius+\" \"+t.circularPathData.rightLargeArcRadius+\" 0 0 1 \"+t.circularPathData.rightFullExtent+\" \"+t.circularPathData.verticalRightInnerExtent+\" L\"+t.circularPathData.rightFullExtent+\" \"+(t.circularPathData.targetY+t.circularPathData.rightSmallArcRadius)+\" A\"+t.circularPathData.rightLargeArcRadius+\" \"+t.circularPathData.rightSmallArcRadius+\" 0 0 1 \"+t.circularPathData.rightInnerExtent+\" \"+t.circularPathData.targetY+\" L\"+t.circularPathData.targetX+\" \"+t.circularPathData.targetY}(n);else{var h=(0,a.pq)().source((function(t){return[t.source.x0+(t.source.x1-t.source.x0),t.y0]})).target((function(t){return[t.target.x0,t.y1]}));n.path=h(n)}}))}function F(t,e){return V(t)==V(e)?\"bottom\"==t.circularLinkType?N(t,e):B(t,e):V(e)-V(t)}function B(t,e){return t.y0-e.y0}function N(t,e){return e.y0-t.y0}function j(t,e){return t.y1-e.y1}function U(t,e){return e.y1-t.y1}function V(t){return t.target.column-t.source.column}function q(t){return t.target.x0-t.source.x1}function H(t,e){var r=P(t),n=q(e)/Math.tan(r);return\"up\"==J(t)?t.y1+n:t.y1-n}function G(t,e){var r=P(t),n=q(e)/Math.tan(r);return\"up\"==J(t)?t.y1-n:t.y1+n}function Z(t,e,r,n){t.links.forEach((function(i){if(!i.circular&&i.target.column-i.source.column>1){var a=i.source.column+1,o=i.target.column-1,s=1,l=o-a+1;for(s=1;a<=o;a++,s++)t.nodes.forEach((function(o){if(o.column==a){var c,u=s/(l+1),h=Math.pow(1-u,3),f=3*u*Math.pow(1-u,2),p=3*Math.pow(u,2)*(1-u),d=Math.pow(u,3),m=h*i.y0+f*i.y0+p*i.y1+d*i.y1,g=m-i.width/2,y=m+i.width/2;g>o.y0&&g<o.y1?(c=o.y1-g+10,c=\"bottom\"==o.circularLinkType?c:-c,o=W(o,c,e,r),t.nodes.forEach((function(t){var i,a;M(t,n)!=M(o,n)&&t.column==o.column&&(a=t,(i=o).y0>a.y0&&i.y0<a.y1||i.y1>a.y0&&i.y1<a.y1||i.y0<a.y0&&i.y1>a.y1)&&W(t,c,e,r)}))):(y>o.y0&&y<o.y1||g<o.y0&&y>o.y1)&&(c=y-o.y0+10,o=W(o,c,e,r),t.nodes.forEach((function(t){M(t,n)!=M(o,n)&&t.column==o.column&&t.y0<o.y1&&t.y1>o.y1&&W(t,c,e,r)})))}}))}}))}function W(t,e,r,n){return t.y0+e>=r&&t.y1+e<=n&&(t.y0=t.y0+e,t.y1=t.y1+e,t.targetLinks.forEach((function(t){t.y1=t.y1+e})),t.sourceLinks.forEach((function(t){t.y0=t.y0+e}))),t}function Y(t,e,r,n){t.nodes.forEach((function(i){n&&i.y+(i.y1-i.y0)>e&&(i.y=i.y-(i.y+(i.y1-i.y0)-e));var a=t.links.filter((function(t){return M(t.source,r)==M(i,r)})),o=a.length;o>1&&a.sort((function(t,e){if(!t.circular&&!e.circular){if(t.target.column==e.target.column)return t.y1-e.y1;if(!$(t,e))return t.y1-e.y1;if(t.target.column>e.target.column){var r=G(e,t);return t.y1-r}if(e.target.column>t.target.column)return G(t,e)-e.y1}return t.circular&&!e.circular?\"top\"==t.circularLinkType?-1:1:e.circular&&!t.circular?\"top\"==e.circularLinkType?1:-1:t.circular&&e.circular?t.circularLinkType===e.circularLinkType&&\"top\"==t.circularLinkType?t.target.column===e.target.column?t.target.y1-e.target.y1:e.target.column-t.target.column:t.circularLinkType===e.circularLinkType&&\"bottom\"==t.circularLinkType?t.target.column===e.target.column?e.target.y1-t.target.y1:t.target.column-e.target.column:\"top\"==t.circularLinkType?-1:1:void 0}));var s=i.y0;a.forEach((function(t){t.y0=s+t.width/2,s+=t.width})),a.forEach((function(t,e){if(\"bottom\"==t.circularLinkType){for(var r=e+1,n=0;r<o;r++)n+=a[r].width;t.y0=i.y1-n-t.width/2}}))}))}function X(t,e,r){t.nodes.forEach((function(e){var n=t.links.filter((function(t){return M(t.target,r)==M(e,r)})),i=n.length;i>1&&n.sort((function(t,e){if(!t.circular&&!e.circular){if(t.source.column==e.source.column)return t.y0-e.y0;if(!$(t,e))return t.y0-e.y0;if(e.source.column<t.source.column){var r=H(e,t);return t.y0-r}if(t.source.column<e.source.column)return H(t,e)-e.y0}return t.circular&&!e.circular?\"top\"==t.circularLinkType?-1:1:e.circular&&!t.circular?\"top\"==e.circularLinkType?1:-1:t.circular&&e.circular?t.circularLinkType===e.circularLinkType&&\"top\"==t.circularLinkType?t.source.column===e.source.column?t.source.y1-e.source.y1:t.source.column-e.source.column:t.circularLinkType===e.circularLinkType&&\"bottom\"==t.circularLinkType?t.source.column===e.source.column?t.source.y1-e.source.y1:e.source.column-t.source.column:\"top\"==t.circularLinkType?-1:1:void 0}));var a=e.y0;n.forEach((function(t){t.y1=a+t.width/2,a+=t.width})),n.forEach((function(t,r){if(\"bottom\"==t.circularLinkType){for(var a=r+1,o=0;a<i;a++)o+=n[a].width;t.y1=e.y1-o-t.width/2}}))}))}function $(t,e){return J(t)==J(e)}function J(t){return t.y0-t.y1>0?\"up\":\"down\"}function K(t,e){return M(t.source,e)==M(t.target,e)}},62369:function(t,e,r){\"use strict\";r.r(e),r.d(e,{sankey:function(){return w},sankeyCenter:function(){return c},sankeyJustify:function(){return l},sankeyLeft:function(){return o},sankeyLinkHorizontal:function(){return M},sankeyRight:function(){return s}});var n=r(29725),i=r(4575);function a(t){return t.target.depth}function o(t){return t.depth}function s(t,e){return e-1-t.height}function l(t,e){return t.sourceLinks.length?t.depth:e-1}function c(t){return t.targetLinks.length?t.depth:t.sourceLinks.length?(0,n.jk)(t.sourceLinks,a)-1:0}function u(t){return function(){return t}}function h(t,e){return p(t.source,e.source)||t.index-e.index}function f(t,e){return p(t.target,e.target)||t.index-e.index}function p(t,e){return t.y0-e.y0}function d(t){return t.value}function m(t){return(t.y0+t.y1)/2}function g(t){return m(t.source)*t.value}function y(t){return m(t.target)*t.value}function v(t){return t.index}function x(t){return t.nodes}function _(t){return t.links}function b(t,e){var r=t.get(e);if(!r)throw new Error(\"missing: \"+e);return r}function w(){var t=0,e=0,r=1,a=1,o=24,s=8,c=v,w=l,T=x,k=_,A=32;function M(){var l={nodes:T.apply(null,arguments),links:k.apply(null,arguments)};return function(t){t.nodes.forEach((function(t,e){t.index=e,t.sourceLinks=[],t.targetLinks=[]}));var e=(0,i.Tj)(t.nodes,c);t.links.forEach((function(t,r){t.index=r;var n=t.source,i=t.target;\"object\"!=typeof n&&(n=t.source=b(e,n)),\"object\"!=typeof i&&(i=t.target=b(e,i)),n.sourceLinks.push(t),i.targetLinks.push(t)}))}(l),function(t){t.nodes.forEach((function(t){t.value=Math.max((0,n.cz)(t.sourceLinks,d),(0,n.cz)(t.targetLinks,d))}))}(l),function(e){var n,i,a;for(n=e.nodes,i=[],a=0;n.length;++a,n=i,i=[])n.forEach((function(t){t.depth=a,t.sourceLinks.forEach((function(t){i.indexOf(t.target)<0&&i.push(t.target)}))}));for(n=e.nodes,i=[],a=0;n.length;++a,n=i,i=[])n.forEach((function(t){t.height=a,t.targetLinks.forEach((function(t){i.indexOf(t.source)<0&&i.push(t.source)}))}));var s=(r-t-o)/(a-1);e.nodes.forEach((function(e){e.x1=(e.x0=t+Math.max(0,Math.min(a-1,Math.floor(w.call(null,e,a))))*s)+o}))}(l),function(t){var r=(0,i.$I)().key((function(t){return t.x0})).sortKeys(n.V_).entries(t.nodes).map((function(t){return t.values}));(function(){var i=(0,n.T9)(r,(function(t){return t.length})),o=.6666666666666666*(a-e)/(i-1);s>o&&(s=o);var l=(0,n.jk)(r,(function(t){return(a-e-(t.length-1)*s)/(0,n.cz)(t,d)}));r.forEach((function(t){t.forEach((function(t,e){t.y1=(t.y0=e)+t.value*l}))})),t.links.forEach((function(t){t.width=t.value*l}))})(),h();for(var o=1,l=A;l>0;--l)u(o*=.99),h(),c(o),h();function c(t){r.forEach((function(e){e.forEach((function(e){if(e.targetLinks.length){var r=((0,n.cz)(e.targetLinks,g)/(0,n.cz)(e.targetLinks,d)-m(e))*t;e.y0+=r,e.y1+=r}}))}))}function u(t){r.slice().reverse().forEach((function(e){e.forEach((function(e){if(e.sourceLinks.length){var r=((0,n.cz)(e.sourceLinks,y)/(0,n.cz)(e.sourceLinks,d)-m(e))*t;e.y0+=r,e.y1+=r}}))}))}function h(){r.forEach((function(t){var r,n,i,o=e,l=t.length;for(t.sort(p),i=0;i<l;++i)(n=o-(r=t[i]).y0)>0&&(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=t[i]).y1+s-o)>0&&(r.y0-=n,r.y1-=n),o=r.y0}))}}(l),S(l),l}function S(t){t.nodes.forEach((function(t){t.sourceLinks.sort(f),t.targetLinks.sort(h)})),t.nodes.forEach((function(t){var e=t.y0,r=e;t.sourceLinks.forEach((function(t){t.y0=e+t.width/2,e+=t.width})),t.targetLinks.forEach((function(t){t.y1=r+t.width/2,r+=t.width}))}))}return M.update=function(t){return S(t),t},M.nodeId=function(t){return arguments.length?(c=\"function\"==typeof t?t:u(t),M):c},M.nodeAlign=function(t){return arguments.length?(w=\"function\"==typeof t?t:u(t),M):w},M.nodeWidth=function(t){return arguments.length?(o=+t,M):o},M.nodePadding=function(t){return arguments.length?(s=+t,M):s},M.nodes=function(t){return arguments.length?(T=\"function\"==typeof t?t:u(t),M):T},M.links=function(t){return arguments.length?(k=\"function\"==typeof t?t:u(t),M):k},M.size=function(n){return arguments.length?(t=e=0,r=+n[0],a=+n[1],M):[r-t,a-e]},M.extent=function(n){return arguments.length?(t=+n[0][0],r=+n[1][0],e=+n[0][1],a=+n[1][1],M):[[t,e],[r,a]]},M.iterations=function(t){return arguments.length?(A=+t,M):A},M}var T=r(48544);function k(t){return[t.source.x1,t.y0]}function A(t){return[t.target.x0,t.y1]}function M(){return(0,T.pq)().source(k).target(A)}},45568:function(t,e,r){var n,i;(function(){var a={version:\"3.8.2\"},o=[].slice,s=function(t){return o.call(t)},l=self.document;function c(t){return t&&(t.ownerDocument||t.document||t).documentElement}function u(t){return t&&(t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView)}if(l)try{s(l.documentElement.childNodes)[0].nodeType}catch(t){s=function(t){for(var e=t.length,r=new Array(e);e--;)r[e]=t[e];return r}}if(Date.now||(Date.now=function(){return+new Date}),l)try{l.createElement(\"DIV\").style.setProperty(\"opacity\",0,\"\")}catch(t){var h=this.Element.prototype,f=h.setAttribute,p=h.setAttributeNS,d=this.CSSStyleDeclaration.prototype,m=d.setProperty;h.setAttribute=function(t,e){f.call(this,t,e+\"\")},h.setAttributeNS=function(t,e,r){p.call(this,t,e,r+\"\")},d.setProperty=function(t,e,r){m.call(this,t,e+\"\",r)}}function g(t,e){return t<e?-1:t>e?1:t>=e?0:NaN}function y(t){return null===t?NaN:+t}function v(t){return!isNaN(t)}function x(t){return{left:function(e,r,n,i){for(arguments.length<3&&(n=0),arguments.length<4&&(i=e.length);n<i;){var a=n+i>>>1;t(e[a],r)<0?n=a+1:i=a}return n},right:function(e,r,n,i){for(arguments.length<3&&(n=0),arguments.length<4&&(i=e.length);n<i;){var a=n+i>>>1;t(e[a],r)>0?i=a:n=a+1}return n}}}a.ascending=g,a.descending=function(t,e){return e<t?-1:e>t?1:e>=t?0:NaN},a.min=function(t,e){var r,n,i=-1,a=t.length;if(1===arguments.length){for(;++i<a;)if(null!=(n=t[i])&&n>=n){r=n;break}for(;++i<a;)null!=(n=t[i])&&r>n&&(r=n)}else{for(;++i<a;)if(null!=(n=e.call(t,t[i],i))&&n>=n){r=n;break}for(;++i<a;)null!=(n=e.call(t,t[i],i))&&r>n&&(r=n)}return r},a.max=function(t,e){var r,n,i=-1,a=t.length;if(1===arguments.length){for(;++i<a;)if(null!=(n=t[i])&&n>=n){r=n;break}for(;++i<a;)null!=(n=t[i])&&n>r&&(r=n)}else{for(;++i<a;)if(null!=(n=e.call(t,t[i],i))&&n>=n){r=n;break}for(;++i<a;)null!=(n=e.call(t,t[i],i))&&n>r&&(r=n)}return r},a.extent=function(t,e){var r,n,i,a=-1,o=t.length;if(1===arguments.length){for(;++a<o;)if(null!=(n=t[a])&&n>=n){r=i=n;break}for(;++a<o;)null!=(n=t[a])&&(r>n&&(r=n),i<n&&(i=n))}else{for(;++a<o;)if(null!=(n=e.call(t,t[a],a))&&n>=n){r=i=n;break}for(;++a<o;)null!=(n=e.call(t,t[a],a))&&(r>n&&(r=n),i<n&&(i=n))}return[r,i]},a.sum=function(t,e){var r,n=0,i=t.length,a=-1;if(1===arguments.length)for(;++a<i;)v(r=+t[a])&&(n+=r);else for(;++a<i;)v(r=+e.call(t,t[a],a))&&(n+=r);return n},a.mean=function(t,e){var r,n=0,i=t.length,a=-1,o=i;if(1===arguments.length)for(;++a<i;)v(r=y(t[a]))?n+=r:--o;else for(;++a<i;)v(r=y(e.call(t,t[a],a)))?n+=r:--o;if(o)return n/o},a.quantile=function(t,e){var r=(t.length-1)*e+1,n=Math.floor(r),i=+t[n-1],a=r-n;return a?i+a*(t[n]-i):i},a.median=function(t,e){var r,n=[],i=t.length,o=-1;if(1===arguments.length)for(;++o<i;)v(r=y(t[o]))&&n.push(r);else for(;++o<i;)v(r=y(e.call(t,t[o],o)))&&n.push(r);if(n.length)return a.quantile(n.sort(g),.5)},a.variance=function(t,e){var r,n,i=t.length,a=0,o=0,s=-1,l=0;if(1===arguments.length)for(;++s<i;)v(r=y(t[s]))&&(o+=(n=r-a)*(r-(a+=n/++l)));else for(;++s<i;)v(r=y(e.call(t,t[s],s)))&&(o+=(n=r-a)*(r-(a+=n/++l)));if(l>1)return o/(l-1)},a.deviation=function(){var t=a.variance.apply(this,arguments);return t?Math.sqrt(t):t};var _=x(g);function b(t){return t.length}a.bisectLeft=_.left,a.bisect=a.bisectRight=_.right,a.bisector=function(t){return x(1===t.length?function(e,r){return g(t(e),r)}:t)},a.shuffle=function(t,e,r){(a=arguments.length)<3&&(r=t.length,a<2&&(e=0));for(var n,i,a=r-e;a;)i=Math.random()*a--|0,n=t[a+e],t[a+e]=t[i+e],t[i+e]=n;return t},a.permute=function(t,e){for(var r=e.length,n=new Array(r);r--;)n[r]=t[e[r]];return n},a.pairs=function(t){for(var e=0,r=t.length-1,n=t[0],i=new Array(r<0?0:r);e<r;)i[e]=[n,n=t[++e]];return i},a.transpose=function(t){if(!(i=t.length))return[];for(var e=-1,r=a.min(t,b),n=new Array(r);++e<r;)for(var i,o=-1,s=n[e]=new Array(i);++o<i;)s[o]=t[o][e];return n},a.zip=function(){return a.transpose(arguments)},a.keys=function(t){var e=[];for(var r in t)e.push(r);return e},a.values=function(t){var e=[];for(var r in t)e.push(t[r]);return e},a.entries=function(t){var e=[];for(var r in t)e.push({key:r,value:t[r]});return e},a.merge=function(t){for(var e,r,n,i=t.length,a=-1,o=0;++a<i;)o+=t[a].length;for(r=new Array(o);--i>=0;)for(e=(n=t[i]).length;--e>=0;)r[--o]=n[e];return r};var w=Math.abs;function T(t,e){for(var r in e)Object.defineProperty(t.prototype,r,{value:e[r],enumerable:!1})}function k(){this._=Object.create(null)}a.range=function(t,e,r){if(arguments.length<3&&(r=1,arguments.length<2&&(e=t,t=0)),(e-t)/r==1/0)throw new Error(\"infinite range\");var n,i=[],a=function(t){for(var e=1;t*e%1;)e*=10;return e}(w(r)),o=-1;if(t*=a,e*=a,(r*=a)<0)for(;(n=t+r*++o)>e;)i.push(n/a);else for(;(n=t+r*++o)<e;)i.push(n/a);return i},a.map=function(t,e){var r=new k;if(t instanceof k)t.forEach((function(t,e){r.set(t,e)}));else if(Array.isArray(t)){var n,i=-1,a=t.length;if(1===arguments.length)for(;++i<a;)r.set(i,t[i]);else for(;++i<a;)r.set(e.call(t,n=t[i],i),n)}else for(var o in t)r.set(o,t[o]);return r};var A=\"__proto__\",M=\"\\0\";function S(t){return(t+=\"\")===A||t[0]===M?M+t:t}function E(t){return(t+=\"\")[0]===M?t.slice(1):t}function C(t){return S(t)in this._}function L(t){return(t=S(t))in this._&&delete this._[t]}function I(){var t=[];for(var e in this._)t.push(E(e));return t}function P(){var t=0;for(var e in this._)++t;return t}function z(){for(var t in this._)return!1;return!0}function O(){this._=Object.create(null)}function D(t){return t}function R(t,e,r){return function(){var n=r.apply(e,arguments);return n===e?t:n}}function F(t,e){if(e in t)return e;e=e.charAt(0).toUpperCase()+e.slice(1);for(var r=0,n=B.length;r<n;++r){var i=B[r]+e;if(i in t)return i}}T(k,{has:C,get:function(t){return this._[S(t)]},set:function(t,e){return this._[S(t)]=e},remove:L,keys:I,values:function(){var t=[];for(var e in this._)t.push(this._[e]);return t},entries:function(){var t=[];for(var e in this._)t.push({key:E(e),value:this._[e]});return t},size:P,empty:z,forEach:function(t){for(var e in this._)t.call(this,E(e),this._[e])}}),a.nest=function(){var t,e,r={},n=[],i=[];function o(i,a,s){if(s>=n.length)return e?e.call(r,a):t?a.sort(t):a;for(var l,c,u,h,f=-1,p=a.length,d=n[s++],m=new k;++f<p;)(h=m.get(l=d(c=a[f])))?h.push(c):m.set(l,[c]);return i?(c=i(),u=function(t,e){c.set(t,o(i,e,s))}):(c={},u=function(t,e){c[t]=o(i,e,s)}),m.forEach(u),c}function s(t,e){if(e>=n.length)return t;var r=[],a=i[e++];return t.forEach((function(t,n){r.push({key:t,values:s(n,e)})})),a?r.sort((function(t,e){return a(t.key,e.key)})):r}return r.map=function(t,e){return o(e,t,0)},r.entries=function(t){return s(o(a.map,t,0),0)},r.key=function(t){return n.push(t),r},r.sortKeys=function(t){return i[n.length-1]=t,r},r.sortValues=function(e){return t=e,r},r.rollup=function(t){return e=t,r},r},a.set=function(t){var e=new O;if(t)for(var r=0,n=t.length;r<n;++r)e.add(t[r]);return e},T(O,{has:C,add:function(t){return this._[S(t+=\"\")]=!0,t},remove:L,values:I,size:P,empty:z,forEach:function(t){for(var e in this._)t.call(this,E(e))}}),a.behavior={},a.rebind=function(t,e){for(var r,n=1,i=arguments.length;++n<i;)t[r=arguments[n]]=R(t,e,e[r]);return t};var B=[\"webkit\",\"ms\",\"moz\",\"Moz\",\"o\",\"O\"];function N(){}function j(){}function U(t){var e=[],r=new k;function n(){for(var r,n=e,i=-1,a=n.length;++i<a;)(r=n[i].on)&&r.apply(this,arguments);return t}return n.on=function(n,i){var a,o=r.get(n);return arguments.length<2?o&&o.on:(o&&(o.on=null,e=e.slice(0,a=e.indexOf(o)).concat(e.slice(a+1)),r.remove(n)),i&&e.push(r.set(n,{on:i})),t)},n}function V(){a.event.preventDefault()}function q(){for(var t,e=a.event;t=e.sourceEvent;)e=t;return e}function H(t){for(var e=new j,r=0,n=arguments.length;++r<n;)e[arguments[r]]=U(e);return e.of=function(r,n){return function(i){try{var o=i.sourceEvent=a.event;i.target=t,a.event=i,e[i.type].apply(r,n)}finally{a.event=o}}},e}a.dispatch=function(){for(var t=new j,e=-1,r=arguments.length;++e<r;)t[arguments[e]]=U(t);return t},j.prototype.on=function(t,e){var r=t.indexOf(\".\"),n=\"\";if(r>=0&&(n=t.slice(r+1),t=t.slice(0,r)),t)return arguments.length<2?this[t].on(n):this[t].on(n,e);if(2===arguments.length){if(null==e)for(t in this)this.hasOwnProperty(t)&&this[t].on(n,null);return this}},a.event=null,a.requote=function(t){return t.replace(G,\"\\\\$&\")};var G=/[\\\\\\^\\$\\*\\+\\?\\|\\[\\]\\(\\)\\.\\{\\}]/g,Z={}.__proto__?function(t,e){t.__proto__=e}:function(t,e){for(var r in e)t[r]=e[r]};function W(t){return Z(t,J),t}var Y=function(t,e){return e.querySelector(t)},X=function(t,e){return e.querySelectorAll(t)},$=function(t,e){var r=t.matches||t[F(t,\"matchesSelector\")];return $=function(t,e){return r.call(t,e)},$(t,e)};\"function\"==typeof Sizzle&&(Y=function(t,e){return Sizzle(t,e)[0]||null},X=Sizzle,$=Sizzle.matchesSelector),a.selection=function(){return a.select(l.documentElement)};var J=a.selection.prototype=[];function K(t){return\"function\"==typeof t?t:function(){return Y(t,this)}}function Q(t){return\"function\"==typeof t?t:function(){return X(t,this)}}J.select=function(t){var e,r,n,i,a=[];t=K(t);for(var o=-1,s=this.length;++o<s;){a.push(e=[]),e.parentNode=(n=this[o]).parentNode;for(var l=-1,c=n.length;++l<c;)(i=n[l])?(e.push(r=t.call(i,i.__data__,l,o)),r&&\"__data__\"in i&&(r.__data__=i.__data__)):e.push(null)}return W(a)},J.selectAll=function(t){var e,r,n=[];t=Q(t);for(var i=-1,a=this.length;++i<a;)for(var o=this[i],l=-1,c=o.length;++l<c;)(r=o[l])&&(n.push(e=s(t.call(r,r.__data__,l,i))),e.parentNode=r);return W(n)};var tt=\"http://www.w3.org/1999/xhtml\",et={svg:\"http://www.w3.org/2000/svg\",xhtml:tt,xlink:\"http://www.w3.org/1999/xlink\",xml:\"http://www.w3.org/XML/1998/namespace\",xmlns:\"http://www.w3.org/2000/xmlns/\"};function rt(t,e){return t=a.ns.qualify(t),null==e?t.local?function(){this.removeAttributeNS(t.space,t.local)}:function(){this.removeAttribute(t)}:\"function\"==typeof e?t.local?function(){var r=e.apply(this,arguments);null==r?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,r)}:function(){var r=e.apply(this,arguments);null==r?this.removeAttribute(t):this.setAttribute(t,r)}:t.local?function(){this.setAttributeNS(t.space,t.local,e)}:function(){this.setAttribute(t,e)}}function nt(t){return t.trim().replace(/\\s+/g,\" \")}function it(t){return new RegExp(\"(?:^|\\\\s+)\"+a.requote(t)+\"(?:\\\\s+|$)\",\"g\")}function at(t){return(t+\"\").trim().split(/^|\\s+/)}function ot(t,e){var r=(t=at(t).map(st)).length;return\"function\"==typeof e?function(){for(var n=-1,i=e.apply(this,arguments);++n<r;)t[n](this,i)}:function(){for(var n=-1;++n<r;)t[n](this,e)}}function st(t){var e=it(t);return function(r,n){if(i=r.classList)return n?i.add(t):i.remove(t);var i=r.getAttribute(\"class\")||\"\";n?(e.lastIndex=0,e.test(i)||r.setAttribute(\"class\",nt(i+\" \"+t))):r.setAttribute(\"class\",nt(i.replace(e,\" \")))}}function lt(t,e,r){return null==e?function(){this.style.removeProperty(t)}:\"function\"==typeof e?function(){var n=e.apply(this,arguments);null==n?this.style.removeProperty(t):this.style.setProperty(t,n,r)}:function(){this.style.setProperty(t,e,r)}}function ct(t,e){return null==e?function(){delete this[t]}:\"function\"==typeof e?function(){var r=e.apply(this,arguments);null==r?delete this[t]:this[t]=r}:function(){this[t]=e}}function ut(t){return\"function\"==typeof t?t:(t=a.ns.qualify(t)).local?function(){return this.ownerDocument.createElementNS(t.space,t.local)}:function(){var e=this.ownerDocument,r=this.namespaceURI;return r===tt&&e.documentElement.namespaceURI===tt?e.createElement(t):e.createElementNS(r,t)}}function ht(){var t=this.parentNode;t&&t.removeChild(this)}function ft(t){return{__data__:t}}function pt(t){return function(){return $(this,t)}}function dt(t){return arguments.length||(t=g),function(e,r){return e&&r?t(e.__data__,r.__data__):!e-!r}}function mt(t,e){for(var r=0,n=t.length;r<n;r++)for(var i,a=t[r],o=0,s=a.length;o<s;o++)(i=a[o])&&e(i,o,r);return t}function gt(t){return Z(t,yt),t}a.ns={prefix:et,qualify:function(t){var e=t.indexOf(\":\"),r=t;return e>=0&&\"xmlns\"!==(r=t.slice(0,e))&&(t=t.slice(e+1)),et.hasOwnProperty(r)?{space:et[r],local:t}:t}},J.attr=function(t,e){if(arguments.length<2){if(\"string\"==typeof t){var r=this.node();return(t=a.ns.qualify(t)).local?r.getAttributeNS(t.space,t.local):r.getAttribute(t)}for(e in t)this.each(rt(e,t[e]));return this}return this.each(rt(t,e))},J.classed=function(t,e){if(arguments.length<2){if(\"string\"==typeof t){var r=this.node(),n=(t=at(t)).length,i=-1;if(e=r.classList){for(;++i<n;)if(!e.contains(t[i]))return!1}else for(e=r.getAttribute(\"class\");++i<n;)if(!it(t[i]).test(e))return!1;return!0}for(e in t)this.each(ot(e,t[e]));return this}return this.each(ot(t,e))},J.style=function(t,e,r){var n=arguments.length;if(n<3){if(\"string\"!=typeof t){for(r in n<2&&(e=\"\"),t)this.each(lt(r,t[r],e));return this}if(n<2){var i=this.node();return u(i).getComputedStyle(i,null).getPropertyValue(t)}r=\"\"}return this.each(lt(t,e,r))},J.property=function(t,e){if(arguments.length<2){if(\"string\"==typeof t)return this.node()[t];for(e in t)this.each(ct(e,t[e]));return this}return this.each(ct(t,e))},J.text=function(t){return arguments.length?this.each(\"function\"==typeof t?function(){var e=t.apply(this,arguments);this.textContent=null==e?\"\":e}:null==t?function(){this.textContent=\"\"}:function(){this.textContent=t}):this.node().textContent},J.html=function(t){return arguments.length?this.each(\"function\"==typeof t?function(){var e=t.apply(this,arguments);this.innerHTML=null==e?\"\":e}:null==t?function(){this.innerHTML=\"\"}:function(){this.innerHTML=t}):this.node().innerHTML},J.append=function(t){return t=ut(t),this.select((function(){return this.appendChild(t.apply(this,arguments))}))},J.insert=function(t,e){return t=ut(t),e=K(e),this.select((function(){return this.insertBefore(t.apply(this,arguments),e.apply(this,arguments)||null)}))},J.remove=function(){return this.each(ht)},J.data=function(t,e){var r,n,i=-1,a=this.length;if(!arguments.length){for(t=new Array(a=(r=this[0]).length);++i<a;)(n=r[i])&&(t[i]=n.__data__);return t}function o(t,r){var n,i,a,o=t.length,u=r.length,h=Math.min(o,u),f=new Array(u),p=new Array(u),d=new Array(o);if(e){var m,g=new k,y=new Array(o);for(n=-1;++n<o;)(i=t[n])&&(g.has(m=e.call(i,i.__data__,n))?d[n]=i:g.set(m,i),y[n]=m);for(n=-1;++n<u;)(i=g.get(m=e.call(r,a=r[n],n)))?!0!==i&&(f[n]=i,i.__data__=a):p[n]=ft(a),g.set(m,!0);for(n=-1;++n<o;)n in y&&!0!==g.get(y[n])&&(d[n]=t[n])}else{for(n=-1;++n<h;)i=t[n],a=r[n],i?(i.__data__=a,f[n]=i):p[n]=ft(a);for(;n<u;++n)p[n]=ft(r[n]);for(;n<o;++n)d[n]=t[n]}p.update=f,p.parentNode=f.parentNode=d.parentNode=t.parentNode,s.push(p),l.push(f),c.push(d)}var s=gt([]),l=W([]),c=W([]);if(\"function\"==typeof t)for(;++i<a;)o(r=this[i],t.call(r,r.parentNode.__data__,i));else for(;++i<a;)o(r=this[i],t);return l.enter=function(){return s},l.exit=function(){return c},l},J.datum=function(t){return arguments.length?this.property(\"__data__\",t):this.property(\"__data__\")},J.filter=function(t){var e,r,n,i=[];\"function\"!=typeof t&&(t=pt(t));for(var a=0,o=this.length;a<o;a++){i.push(e=[]),e.parentNode=(r=this[a]).parentNode;for(var s=0,l=r.length;s<l;s++)(n=r[s])&&t.call(n,n.__data__,s,a)&&e.push(n)}return W(i)},J.order=function(){for(var t=-1,e=this.length;++t<e;)for(var r,n=this[t],i=n.length-1,a=n[i];--i>=0;)(r=n[i])&&(a&&a!==r.nextSibling&&a.parentNode.insertBefore(r,a),a=r);return this},J.sort=function(t){t=dt.apply(this,arguments);for(var e=-1,r=this.length;++e<r;)this[e].sort(t);return this.order()},J.each=function(t){return mt(this,(function(e,r,n){t.call(e,e.__data__,r,n)}))},J.call=function(t){var e=s(arguments);return t.apply(e[0]=this,e),this},J.empty=function(){return!this.node()},J.node=function(){for(var t=0,e=this.length;t<e;t++)for(var r=this[t],n=0,i=r.length;n<i;n++){var a=r[n];if(a)return a}return null},J.size=function(){var t=0;return mt(this,(function(){++t})),t};var yt=[];function vt(t,e,r){var n=\"__on\"+t,i=t.indexOf(\".\"),o=_t;i>0&&(t=t.slice(0,i));var l=xt.get(t);function c(){var e=this[n];e&&(this.removeEventListener(t,e,e.$),delete this[n])}return l&&(t=l,o=bt),i?e?function(){var i=o(e,s(arguments));c.call(this),this.addEventListener(t,this[n]=i,i.$=r),i._=e}:c:e?N:function(){var e,r=new RegExp(\"^__on([^.]+)\"+a.requote(t)+\"$\");for(var n in this)if(e=n.match(r)){var i=this[n];this.removeEventListener(e[1],i,i.$),delete this[n]}}}a.selection.enter=gt,a.selection.enter.prototype=yt,yt.append=J.append,yt.empty=J.empty,yt.node=J.node,yt.call=J.call,yt.size=J.size,yt.select=function(t){for(var e,r,n,i,a,o=[],s=-1,l=this.length;++s<l;){n=(i=this[s]).update,o.push(e=[]),e.parentNode=i.parentNode;for(var c=-1,u=i.length;++c<u;)(a=i[c])?(e.push(n[c]=r=t.call(i.parentNode,a.__data__,c,s)),r.__data__=a.__data__):e.push(null)}return W(o)},yt.insert=function(t,e){var r,n,i;return arguments.length<2&&(r=this,e=function(t,e,a){var o,s=r[a].update,l=s.length;for(a!=i&&(i=a,n=0),e>=n&&(n=e+1);!(o=s[n])&&++n<l;);return o}),J.insert.call(this,t,e)},a.select=function(t){var e;return\"string\"==typeof t?(e=[Y(t,l)]).parentNode=l.documentElement:(e=[t]).parentNode=c(t),W([e])},a.selectAll=function(t){var e;return\"string\"==typeof t?(e=s(X(t,l))).parentNode=l.documentElement:(e=s(t)).parentNode=null,W([e])},J.on=function(t,e,r){var n=arguments.length;if(n<3){if(\"string\"!=typeof t){for(r in n<2&&(e=!1),t)this.each(vt(r,t[r],e));return this}if(n<2)return(n=this.node()[\"__on\"+t])&&n._;r=!1}return this.each(vt(t,e,r))};var xt=a.map({mouseenter:\"mouseover\",mouseleave:\"mouseout\"});function _t(t,e){return function(r){var n=a.event;a.event=r,e[0]=this.__data__;try{t.apply(this,e)}finally{a.event=n}}}function bt(t,e){var r=_t(t,e);return function(t){var e=this,n=t.relatedTarget;n&&(n===e||8&n.compareDocumentPosition(e))||r.call(e,t)}}l&&xt.forEach((function(t){\"on\"+t in l&&xt.remove(t)}));var wt,Tt=0;function kt(t){var e=\".dragsuppress-\"+ ++Tt,r=\"click\"+e,n=a.select(u(t)).on(\"touchmove\"+e,V).on(\"dragstart\"+e,V).on(\"selectstart\"+e,V);if(null==wt&&(wt=!(\"onselectstart\"in t)&&F(t.style,\"userSelect\")),wt){var i=c(t).style,o=i[wt];i[wt]=\"none\"}return function(t){if(n.on(e,null),wt&&(i[wt]=o),t){var a=function(){n.on(r,null)};n.on(r,(function(){V(),a()}),!0),setTimeout(a,0)}}}a.mouse=function(t){return Mt(t,q())};var At=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function Mt(t,e){e.changedTouches&&(e=e.changedTouches[0]);var r=t.ownerSVGElement||t;if(r.createSVGPoint){var n=r.createSVGPoint();if(At<0){var i=u(t);if(i.scrollX||i.scrollY){var o=(r=a.select(\"body\").append(\"svg\").style({position:\"absolute\",top:0,left:0,margin:0,padding:0,border:\"none\"},\"important\"))[0][0].getScreenCTM();At=!(o.f||o.e),r.remove()}}return At?(n.x=e.pageX,n.y=e.pageY):(n.x=e.clientX,n.y=e.clientY),[(n=n.matrixTransform(t.getScreenCTM().inverse())).x,n.y]}var s=t.getBoundingClientRect();return[e.clientX-s.left-t.clientLeft,e.clientY-s.top-t.clientTop]}function St(){return a.event.changedTouches[0].identifier}a.touch=function(t,e,r){if(arguments.length<3&&(r=e,e=q().changedTouches),e)for(var n,i=0,a=e.length;i<a;++i)if((n=e[i]).identifier===r)return Mt(t,n)},a.behavior.drag=function(){var t=H(i,\"drag\",\"dragstart\",\"dragend\"),e=null,r=o(N,a.mouse,u,\"mousemove\",\"mouseup\"),n=o(St,a.touch,D,\"touchmove\",\"touchend\");function i(){this.on(\"mousedown.drag\",r).on(\"touchstart.drag\",n)}function o(r,n,i,o,s){return function(){var l,c=this,u=a.event.target.correspondingElement||a.event.target,h=c.parentNode,f=t.of(c,arguments),p=0,d=r(),m=\".drag\"+(null==d?\"\":\"-\"+d),g=a.select(i(u)).on(o+m,(function(){var t,e,r=n(h,d);r&&(t=r[0]-v[0],e=r[1]-v[1],p|=t|e,v=r,f({type:\"drag\",x:r[0]+l[0],y:r[1]+l[1],dx:t,dy:e}))})).on(s+m,(function(){n(h,d)&&(g.on(o+m,null).on(s+m,null),y(p),f({type:\"dragend\"}))})),y=kt(u),v=n(h,d);l=e?[(l=e.apply(c,arguments)).x-v[0],l.y-v[1]]:[0,0],f({type:\"dragstart\"})}}return i.origin=function(t){return arguments.length?(e=t,i):e},a.rebind(i,t,\"on\")},a.touches=function(t,e){return arguments.length<2&&(e=q().touches),e?s(e).map((function(e){var r=Mt(t,e);return r.identifier=e.identifier,r})):[]};var Et=1e-6,Ct=Et*Et,Lt=Math.PI,It=2*Lt,Pt=It-Et,zt=Lt/2,Ot=Lt/180,Dt=180/Lt;function Rt(t){return t>1?zt:t<-1?-zt:Math.asin(t)}function Ft(t){return((t=Math.exp(t))+1/t)/2}var Bt=Math.SQRT2;a.interpolateZoom=function(t,e){var r,n,i=t[0],a=t[1],o=t[2],s=e[0],l=e[1],c=e[2],u=s-i,h=l-a,f=u*u+h*h;if(f<Ct)n=Math.log(c/o)/Bt,r=function(t){return[i+t*u,a+t*h,o*Math.exp(Bt*t*n)]};else{var p=Math.sqrt(f),d=(c*c-o*o+4*f)/(2*o*2*p),m=(c*c-o*o-4*f)/(2*c*2*p),g=Math.log(Math.sqrt(d*d+1)-d),y=Math.log(Math.sqrt(m*m+1)-m);n=(y-g)/Bt,r=function(t){var e,r=t*n,s=Ft(g),l=o/(2*p)*(s*(e=Bt*r+g,((e=Math.exp(2*e))-1)/(e+1))-function(t){return((t=Math.exp(t))-1/t)/2}(g));return[i+l*u,a+l*h,o*s/Ft(Bt*r+g)]}}return r.duration=1e3*n,r},a.behavior.zoom=function(){var t,e,r,n,i,o,s,c,h,f={x:0,y:0,k:1},p=[960,500],d=Ut,m=250,g=0,y=\"mousedown.zoom\",v=\"mousemove.zoom\",x=\"mouseup.zoom\",_=\"touchstart.zoom\",b=H(w,\"zoomstart\",\"zoom\",\"zoomend\");function w(t){t.on(y,I).on(jt+\".zoom\",z).on(\"dblclick.zoom\",O).on(_,P)}function T(t){return[(t[0]-f.x)/f.k,(t[1]-f.y)/f.k]}function k(t){f.k=Math.max(d[0],Math.min(d[1],t))}function A(t,e){e=function(t){return[t[0]*f.k+f.x,t[1]*f.k+f.y]}(e),f.x+=t[0]-e[0],f.y+=t[1]-e[1]}function M(t,r,n,i){t.__chart__={x:f.x,y:f.y,k:f.k},k(Math.pow(2,i)),A(e=r,n),t=a.select(t),m>0&&(t=t.transition().duration(m)),t.call(w.event)}function S(){s&&s.domain(o.range().map((function(t){return(t-f.x)/f.k})).map(o.invert)),h&&h.domain(c.range().map((function(t){return(t-f.y)/f.k})).map(c.invert))}function E(t){g++||t({type:\"zoomstart\"})}function C(t){S(),t({type:\"zoom\",scale:f.k,translate:[f.x,f.y]})}function L(t){--g||(t({type:\"zoomend\"}),e=null)}function I(){var t=this,e=b.of(t,arguments),r=0,n=a.select(u(t)).on(v,(function(){r=1,A(a.mouse(t),i),C(e)})).on(x,(function(){n.on(v,null).on(x,null),o(r),L(e)})),i=T(a.mouse(t)),o=kt(t);$i.call(t),E(e)}function P(){var t,e=this,r=b.of(e,arguments),n={},o=0,s=\".zoom-\"+a.event.changedTouches[0].identifier,l=\"touchmove\"+s,c=\"touchend\"+s,u=[],h=a.select(e),p=kt(e);function d(){var r=a.touches(e);return t=f.k,r.forEach((function(t){t.identifier in n&&(n[t.identifier]=T(t))})),r}function m(){var t=a.event.target;a.select(t).on(l,g).on(c,v),u.push(t);for(var r=a.event.changedTouches,s=0,h=r.length;s<h;++s)n[r[s].identifier]=null;var p=d(),m=Date.now();if(1===p.length){if(m-i<500){var y=p[0];M(e,y,n[y.identifier],Math.floor(Math.log(f.k)/Math.LN2)+1),V()}i=m}else if(p.length>1){y=p[0];var x=p[1],_=y[0]-x[0],b=y[1]-x[1];o=_*_+b*b}}function g(){var s,l,c,u,h=a.touches(e);$i.call(e);for(var f=0,p=h.length;f<p;++f,u=null)if(c=h[f],u=n[c.identifier]){if(l)break;s=c,l=u}if(u){var d=(d=c[0]-s[0])*d+(d=c[1]-s[1])*d,m=o&&Math.sqrt(d/o);s=[(s[0]+c[0])/2,(s[1]+c[1])/2],l=[(l[0]+u[0])/2,(l[1]+u[1])/2],k(m*t)}i=null,A(s,l),C(r)}function v(){if(a.event.touches.length){for(var t=a.event.changedTouches,e=0,i=t.length;e<i;++e)delete n[t[e].identifier];for(var o in n)return void d()}a.selectAll(u).on(s,null),h.on(y,I).on(_,P),p(),L(r)}m(),E(r),h.on(y,null).on(_,m)}function z(){var i=b.of(this,arguments);n?clearTimeout(n):($i.call(this),t=T(e=r||a.mouse(this)),E(i)),n=setTimeout((function(){n=null,L(i)}),50),V(),k(Math.pow(2,.002*Nt())*f.k),A(e,t),C(i)}function O(){var t=a.mouse(this),e=Math.log(f.k)/Math.LN2;M(this,t,T(t),a.event.shiftKey?Math.ceil(e)-1:Math.floor(e)+1)}return jt||(jt=\"onwheel\"in l?(Nt=function(){return-a.event.deltaY*(a.event.deltaMode?120:1)},\"wheel\"):\"onmousewheel\"in l?(Nt=function(){return a.event.wheelDelta},\"mousewheel\"):(Nt=function(){return-a.event.detail},\"MozMousePixelScroll\")),w.event=function(t){t.each((function(){var t=b.of(this,arguments),r=f;Qi?a.select(this).transition().each(\"start.zoom\",(function(){f=this.__chart__||{x:0,y:0,k:1},E(t)})).tween(\"zoom:zoom\",(function(){var n=p[0],i=p[1],o=e?e[0]:n/2,s=e?e[1]:i/2,l=a.interpolateZoom([(o-f.x)/f.k,(s-f.y)/f.k,n/f.k],[(o-r.x)/r.k,(s-r.y)/r.k,n/r.k]);return function(e){var r=l(e),i=n/r[2];this.__chart__=f={x:o-r[0]*i,y:s-r[1]*i,k:i},C(t)}})).each(\"interrupt.zoom\",(function(){L(t)})).each(\"end.zoom\",(function(){L(t)})):(this.__chart__=f,E(t),C(t),L(t))}))},w.translate=function(t){return arguments.length?(f={x:+t[0],y:+t[1],k:f.k},S(),w):[f.x,f.y]},w.scale=function(t){return arguments.length?(f={x:f.x,y:f.y,k:null},k(+t),S(),w):f.k},w.scaleExtent=function(t){return arguments.length?(d=null==t?Ut:[+t[0],+t[1]],w):d},w.center=function(t){return arguments.length?(r=t&&[+t[0],+t[1]],w):r},w.size=function(t){return arguments.length?(p=t&&[+t[0],+t[1]],w):p},w.duration=function(t){return arguments.length?(m=+t,w):m},w.x=function(t){return arguments.length?(s=t,o=t.copy(),f={x:0,y:0,k:1},w):s},w.y=function(t){return arguments.length?(h=t,c=t.copy(),f={x:0,y:0,k:1},w):h},a.rebind(w,b,\"on\")};var Nt,jt,Ut=[0,1/0];function Vt(){}function qt(t,e,r){return this instanceof qt?(this.h=+t,this.s=+e,void(this.l=+r)):arguments.length<2?t instanceof qt?new qt(t.h,t.s,t.l):ue(\"\"+t,he,qt):new qt(t,e,r)}a.color=Vt,Vt.prototype.toString=function(){return this.rgb()+\"\"},a.hsl=qt;var Ht=qt.prototype=new Vt;function Gt(t,e,r){var n,i;function a(t){return Math.round(255*function(t){return t>360?t-=360:t<0&&(t+=360),t<60?n+(i-n)*t/60:t<180?i:t<240?n+(i-n)*(240-t)/60:n}(t))}return t=isNaN(t)?0:(t%=360)<0?t+360:t,e=isNaN(e)||e<0?0:e>1?1:e,n=2*(r=r<0?0:r>1?1:r)-(i=r<=.5?r*(1+e):r+e-r*e),new ae(a(t+120),a(t),a(t-120))}function Zt(t,e,r){return this instanceof Zt?(this.h=+t,this.c=+e,void(this.l=+r)):arguments.length<2?t instanceof Zt?new Zt(t.h,t.c,t.l):function(t,e,r){return t>0?new Zt(Math.atan2(r,e)*Dt,Math.sqrt(e*e+r*r),t):new Zt(NaN,NaN,t)}(t instanceof Xt?t.l:(t=fe((t=a.rgb(t)).r,t.g,t.b)).l,t.a,t.b):new Zt(t,e,r)}Ht.brighter=function(t){return t=Math.pow(.7,arguments.length?t:1),new qt(this.h,this.s,this.l/t)},Ht.darker=function(t){return t=Math.pow(.7,arguments.length?t:1),new qt(this.h,this.s,t*this.l)},Ht.rgb=function(){return Gt(this.h,this.s,this.l)},a.hcl=Zt;var Wt=Zt.prototype=new Vt;function Yt(t,e,r){return isNaN(t)&&(t=0),isNaN(e)&&(e=0),new Xt(r,Math.cos(t*=Ot)*e,Math.sin(t)*e)}function Xt(t,e,r){return this instanceof Xt?(this.l=+t,this.a=+e,void(this.b=+r)):arguments.length<2?t instanceof Xt?new Xt(t.l,t.a,t.b):t instanceof Zt?Yt(t.h,t.c,t.l):fe((t=ae(t)).r,t.g,t.b):new Xt(t,e,r)}Wt.brighter=function(t){return new Zt(this.h,this.c,Math.min(100,this.l+$t*(arguments.length?t:1)))},Wt.darker=function(t){return new Zt(this.h,this.c,Math.max(0,this.l-$t*(arguments.length?t:1)))},Wt.rgb=function(){return Yt(this.h,this.c,this.l).rgb()},a.lab=Xt;var $t=18,Jt=.95047,Kt=1,Qt=1.08883,te=Xt.prototype=new Vt;function ee(t,e,r){var n=(t+16)/116,i=n+e/500,a=n-r/200;return new ae(ie(3.2404542*(i=re(i)*Jt)-1.5371385*(n=re(n)*Kt)-.4985314*(a=re(a)*Qt)),ie(-.969266*i+1.8760108*n+.041556*a),ie(.0556434*i-.2040259*n+1.0572252*a))}function re(t){return t>.206893034?t*t*t:(t-4/29)/7.787037}function ne(t){return t>.008856?Math.pow(t,1/3):7.787037*t+4/29}function ie(t){return Math.round(255*(t<=.00304?12.92*t:1.055*Math.pow(t,1/2.4)-.055))}function ae(t,e,r){return this instanceof ae?(this.r=~~t,this.g=~~e,void(this.b=~~r)):arguments.length<2?t instanceof ae?new ae(t.r,t.g,t.b):ue(\"\"+t,ae,Gt):new ae(t,e,r)}function oe(t){return new ae(t>>16,t>>8&255,255&t)}function se(t){return oe(t)+\"\"}te.brighter=function(t){return new Xt(Math.min(100,this.l+$t*(arguments.length?t:1)),this.a,this.b)},te.darker=function(t){return new Xt(Math.max(0,this.l-$t*(arguments.length?t:1)),this.a,this.b)},te.rgb=function(){return ee(this.l,this.a,this.b)},a.rgb=ae;var le=ae.prototype=new Vt;function ce(t){return t<16?\"0\"+Math.max(0,t).toString(16):Math.min(255,t).toString(16)}function ue(t,e,r){var n,i,a,o=0,s=0,l=0;if(n=/([a-z]+)\\((.*)\\)/.exec(t=t.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 e(de(i[0]),de(i[1]),de(i[2]))}return(a=me.get(t))?e(a.r,a.g,a.b):(null==t||\"#\"!==t.charAt(0)||isNaN(a=parseInt(t.slice(1),16))||(4===t.length?(o=(3840&a)>>4,o|=o>>4,s=240&a,s|=s>>4,l=15&a,l|=l<<4):7===t.length&&(o=(16711680&a)>>16,s=(65280&a)>>8,l=255&a)),e(o,s,l))}function he(t,e,r){var n,i,a=Math.min(t/=255,e/=255,r/=255),o=Math.max(t,e,r),s=o-a,l=(o+a)/2;return s?(i=l<.5?s/(o+a):s/(2-o-a),n=t==o?(e-r)/s+(e<r?6:0):e==o?(r-t)/s+2:(t-e)/s+4,n*=60):(n=NaN,i=l>0&&l<1?0:n),new qt(n,i,l)}function fe(t,e,r){var n=ne((.4124564*(t=pe(t))+.3575761*(e=pe(e))+.1804375*(r=pe(r)))/Jt),i=ne((.2126729*t+.7151522*e+.072175*r)/Kt);return Xt(116*i-16,500*(n-i),200*(i-ne((.0193339*t+.119192*e+.9503041*r)/Qt)))}function pe(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function de(t){var e=parseFloat(t);return\"%\"===t.charAt(t.length-1)?Math.round(2.55*e):e}le.brighter=function(t){t=Math.pow(.7,arguments.length?t:1);var e=this.r,r=this.g,n=this.b,i=30;return e||r||n?(e&&e<i&&(e=i),r&&r<i&&(r=i),n&&n<i&&(n=i),new ae(Math.min(255,e/t),Math.min(255,r/t),Math.min(255,n/t))):new ae(i,i,i)},le.darker=function(t){return new ae((t=Math.pow(.7,arguments.length?t:1))*this.r,t*this.g,t*this.b)},le.hsl=function(){return he(this.r,this.g,this.b)},le.toString=function(){return\"#\"+ce(this.r)+ce(this.g)+ce(this.b)};var me=a.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});function ge(t){return\"function\"==typeof t?t:function(){return t}}function ye(t){return function(e,r,n){return 2===arguments.length&&\"function\"==typeof r&&(n=r,r=null),ve(e,r,t,n)}}function ve(t,e,r,n){var i={},o=a.dispatch(\"beforesend\",\"progress\",\"load\",\"error\"),l={},c=new XMLHttpRequest,u=null;function h(){var t,e=c.status;if(!e&&function(t){var e=t.responseType;return e&&\"text\"!==e?t.response:t.responseText}(c)||e>=200&&e<300||304===e){try{t=r.call(i,c)}catch(t){return void o.error.call(i,t)}o.load.call(i,t)}else o.error.call(i,c)}return self.XDomainRequest&&!(\"withCredentials\"in c)&&/^(http(s)?:)?\\/\\//.test(t)&&(c=new XDomainRequest),\"onload\"in c?c.onload=c.onerror=h:c.onreadystatechange=function(){c.readyState>3&&h()},c.onprogress=function(t){var e=a.event;a.event=t;try{o.progress.call(i,c)}finally{a.event=e}},i.header=function(t,e){return t=(t+\"\").toLowerCase(),arguments.length<2?l[t]:(null==e?delete l[t]:l[t]=e+\"\",i)},i.mimeType=function(t){return arguments.length?(e=null==t?null:t+\"\",i):e},i.responseType=function(t){return arguments.length?(u=t,i):u},i.response=function(t){return r=t,i},[\"get\",\"post\"].forEach((function(t){i[t]=function(){return i.send.apply(i,[t].concat(s(arguments)))}})),i.send=function(r,n,a){if(2===arguments.length&&\"function\"==typeof n&&(a=n,n=null),c.open(r,t,!0),null==e||\"accept\"in l||(l.accept=e+\",*/*\"),c.setRequestHeader)for(var s in l)c.setRequestHeader(s,l[s]);return null!=e&&c.overrideMimeType&&c.overrideMimeType(e),null!=u&&(c.responseType=u),null!=a&&i.on(\"error\",a).on(\"load\",(function(t){a(null,t)})),o.beforesend.call(i,c),c.send(null==n?null:n),i},i.abort=function(){return c.abort(),i},a.rebind(i,o,\"on\"),null==n?i:i.get(function(t){return 1===t.length?function(e,r){t(null==e?r:null)}:t}(n))}me.forEach((function(t,e){me.set(t,oe(e))})),a.functor=ge,a.xhr=ye(D),a.dsv=function(t,e){var r=new RegExp('[\"'+t+\"\\n]\"),n=t.charCodeAt(0);function i(t,r,n){arguments.length<3&&(n=r,r=null);var i=ve(t,e,null==r?a:o(r),n);return i.row=function(t){return arguments.length?i.response(null==(r=t)?a:o(t)):r},i}function a(t){return i.parse(t.responseText)}function o(t){return function(e){return i.parse(e.responseText,t)}}function s(e){return e.map(l).join(t)}function l(t){return r.test(t)?'\"'+t.replace(/\\\"/g,'\"\"')+'\"':t}return i.parse=function(t,e){var r;return i.parseRows(t,(function(t,n){if(r)return r(t,n-1);var i=function(e){for(var r={},n=t.length,i=0;i<n;++i)r[t[i]]=e[i];return r};r=e?function(t,r){return e(i(t),r)}:i}))},i.parseRows=function(t,e){var r,i,a={},o={},s=[],l=t.length,c=0,u=0;function h(){if(c>=l)return o;if(i)return i=!1,a;var e=c;if(34===t.charCodeAt(e)){for(var r=e;r++<l;)if(34===t.charCodeAt(r)){if(34!==t.charCodeAt(r+1))break;++r}return c=r+2,13===(s=t.charCodeAt(r+1))?(i=!0,10===t.charCodeAt(r+2)&&++c):10===s&&(i=!0),t.slice(e+1,r).replace(/\"\"/g,'\"')}for(;c<l;){var s,u=1;if(10===(s=t.charCodeAt(c++)))i=!0;else if(13===s)i=!0,10===t.charCodeAt(c)&&(++c,++u);else if(s!==n)continue;return t.slice(e,c-u)}return t.slice(e)}for(;(r=h())!==o;){for(var f=[];r!==a&&r!==o;)f.push(r),r=h();e&&null==(f=e(f,u++))||s.push(f)}return s},i.format=function(e){if(Array.isArray(e[0]))return i.formatRows(e);var r=new O,n=[];return e.forEach((function(t){for(var e in t)r.has(e)||n.push(r.add(e))})),[n.map(l).join(t)].concat(e.map((function(e){return n.map((function(t){return l(e[t])})).join(t)}))).join(\"\\n\")},i.formatRows=function(t){return t.map(s).join(\"\\n\")},i},a.csv=a.dsv(\",\",\"text/csv\"),a.tsv=a.dsv(\"\\t\",\"text/tab-separated-values\");var xe,_e,be,we,Te=this[F(this,\"requestAnimationFrame\")]||function(t){setTimeout(t,17)};function ke(t,e,r){var n=arguments.length;n<2&&(e=0),n<3&&(r=Date.now());var i={c:t,t:r+e,n:null};return _e?_e.n=i:xe=i,_e=i,be||(we=clearTimeout(we),be=1,Te(Ae)),i}function Ae(){var t=Me(),e=Se()-t;e>24?(isFinite(e)&&(clearTimeout(we),we=setTimeout(Ae,e)),be=0):(be=1,Te(Ae))}function Me(){for(var t=Date.now(),e=xe;e;)t>=e.t&&e.c(t-e.t)&&(e.c=null),e=e.n;return t}function Se(){for(var t,e=xe,r=1/0;e;)e.c?(e.t<r&&(r=e.t),e=(t=e).n):e=t?t.n=e.n:xe=e.n;return _e=t,r}function Ee(t){return t[0]}function Ce(t){return t[1]}function Le(t){for(var e,r,n,i=t.length,a=[0,1],o=2,s=2;s<i;s++){for(;o>1&&(e=t[a[o-2]],r=t[a[o-1]],n=t[s],(r[0]-e[0])*(n[1]-e[1])-(r[1]-e[1])*(n[0]-e[0])<=0);)--o;a[o++]=s}return a.slice(0,o)}function Ie(t,e){return t[0]-e[0]||t[1]-e[1]}a.timer=function(){ke.apply(this,arguments)},a.timer.flush=function(){Me(),Se()},a.round=function(t,e){return e?Math.round(t*(e=Math.pow(10,e)))/e:Math.round(t)},a.geom={},a.geom.hull=function(t){var e=Ee,r=Ce;if(arguments.length)return n(t);function n(t){if(t.length<3)return[];var n,i=ge(e),a=ge(r),o=t.length,s=[],l=[];for(n=0;n<o;n++)s.push([+i.call(this,t[n],n),+a.call(this,t[n],n),n]);for(s.sort(Ie),n=0;n<o;n++)l.push([s[n][0],-s[n][1]]);var c=Le(s),u=Le(l),h=u[0]===c[0],f=u[u.length-1]===c[c.length-1],p=[];for(n=c.length-1;n>=0;--n)p.push(t[s[c[n]][2]]);for(n=+h;n<u.length-f;++n)p.push(t[s[u[n]][2]]);return p}return n.x=function(t){return arguments.length?(e=t,n):e},n.y=function(t){return arguments.length?(r=t,n):r},n},a.geom.polygon=function(t){return Z(t,Pe),t};var Pe=a.geom.polygon.prototype=[];function ze(t,e,r){return(r[0]-e[0])*(t[1]-e[1])<(r[1]-e[1])*(t[0]-e[0])}function Oe(t,e,r,n){var i=t[0],a=r[0],o=e[0]-i,s=n[0]-a,l=t[1],c=r[1],u=e[1]-l,h=n[1]-c,f=(s*(l-c)-h*(i-a))/(h*o-s*u);return[i+f*o,l+f*u]}function De(t){var e=t[0],r=t[t.length-1];return!(e[0]-r[0]||e[1]-r[1])}Pe.area=function(){for(var t,e=-1,r=this.length,n=this[r-1],i=0;++e<r;)t=n,n=this[e],i+=t[1]*n[0]-t[0]*n[1];return.5*i},Pe.centroid=function(t){var e,r,n=-1,i=this.length,a=0,o=0,s=this[i-1];for(arguments.length||(t=-1/(6*this.area()));++n<i;)e=s,s=this[n],r=e[0]*s[1]-s[0]*e[1],a+=(e[0]+s[0])*r,o+=(e[1]+s[1])*r;return[a*t,o*t]},Pe.clip=function(t){for(var e,r,n,i,a,o,s=De(t),l=-1,c=this.length-De(this),u=this[c-1];++l<c;){for(e=t.slice(),t.length=0,i=this[l],a=e[(n=e.length-s)-1],r=-1;++r<n;)ze(o=e[r],u,i)?(ze(a,u,i)||t.push(Oe(a,o,u,i)),t.push(o)):ze(a,u,i)&&t.push(Oe(a,o,u,i)),a=o;s&&t.push(t[0]),u=i}return t};var Re,Fe,Be,Ne,je,Ue=[],Ve=[];function qe(){sr(this),this.edge=this.site=this.circle=null}function He(t){var e=Ue.pop()||new qe;return e.site=t,e}function Ge(t){tr(t),Be.remove(t),Ue.push(t),sr(t)}function Ze(t){var e=t.circle,r=e.x,n=e.cy,i={x:r,y:n},a=t.P,o=t.N,s=[t];Ge(t);for(var l=a;l.circle&&w(r-l.circle.x)<Et&&w(n-l.circle.cy)<Et;)a=l.P,s.unshift(l),Ge(l),l=a;s.unshift(l),tr(l);for(var c=o;c.circle&&w(r-c.circle.x)<Et&&w(n-c.circle.cy)<Et;)o=c.N,s.push(c),Ge(c),c=o;s.push(c),tr(c);var u,h=s.length;for(u=1;u<h;++u)c=s[u],l=s[u-1],ir(c.edge,l.site,c.site,i);l=s[0],(c=s[h-1]).edge=nr(l.site,c.site,null,i),Qe(l),Qe(c)}function We(t){for(var e,r,n,i,a=t.x,o=t.y,s=Be._;s;)if((n=Ye(s,o)-a)>Et)s=s.L;else{if(!((i=a-Xe(s,o))>Et)){n>-Et?(e=s.P,r=s):i>-Et?(e=s,r=s.N):e=r=s;break}if(!s.R){e=s;break}s=s.R}var l=He(t);if(Be.insert(e,l),e||r){if(e===r)return tr(e),r=He(e.site),Be.insert(l,r),l.edge=r.edge=nr(e.site,l.site),Qe(e),void Qe(r);if(r){tr(e),tr(r);var c=e.site,u=c.x,h=c.y,f=t.x-u,p=t.y-h,d=r.site,m=d.x-u,g=d.y-h,y=2*(f*g-p*m),v=f*f+p*p,x=m*m+g*g,_={x:(g*v-p*x)/y+u,y:(f*x-m*v)/y+h};ir(r.edge,c,d,_),l.edge=nr(c,t,null,_),r.edge=nr(t,d,null,_),Qe(e),Qe(r)}else l.edge=nr(e.site,l.site)}}function Ye(t,e){var r=t.site,n=r.x,i=r.y,a=i-e;if(!a)return n;var o=t.P;if(!o)return-1/0;var s=(r=o.site).x,l=r.y,c=l-e;if(!c)return s;var u=s-n,h=1/a-1/c,f=u/c;return h?(-f+Math.sqrt(f*f-2*h*(u*u/(-2*c)-l+c/2+i-a/2)))/h+n:(n+s)/2}function Xe(t,e){var r=t.N;if(r)return Ye(r,e);var n=t.site;return n.y===e?n.x:1/0}function $e(t){this.site=t,this.edges=[]}function Je(t,e){return e.angle-t.angle}function Ke(){sr(this),this.x=this.y=this.arc=this.site=this.cy=null}function Qe(t){var e=t.P,r=t.N;if(e&&r){var n=e.site,i=t.site,a=r.site;if(n!==a){var o=i.x,s=i.y,l=n.x-o,c=n.y-s,u=a.x-o,h=2*(l*(g=a.y-s)-c*u);if(!(h>=-Ct)){var f=l*l+c*c,p=u*u+g*g,d=(g*f-c*p)/h,m=(l*p-u*f)/h,g=m+s,y=Ve.pop()||new Ke;y.arc=t,y.site=i,y.x=d+o,y.y=g+Math.sqrt(d*d+m*m),y.cy=g,t.circle=y;for(var v=null,x=je._;x;)if(y.y<x.y||y.y===x.y&&y.x<=x.x){if(!x.L){v=x.P;break}x=x.L}else{if(!x.R){v=x;break}x=x.R}je.insert(v,y),v||(Ne=y)}}}}function tr(t){var e=t.circle;e&&(e.P||(Ne=e.N),je.remove(e),Ve.push(e),sr(e),t.circle=null)}function er(t,e){var r=t.b;if(r)return!0;var n,i,a=t.a,o=e[0][0],s=e[1][0],l=e[0][1],c=e[1][1],u=t.l,h=t.r,f=u.x,p=u.y,d=h.x,m=h.y,g=(f+d)/2,y=(p+m)/2;if(m===p){if(g<o||g>=s)return;if(f>d){if(a){if(a.y>=c)return}else a={x:g,y:l};r={x:g,y:c}}else{if(a){if(a.y<l)return}else a={x:g,y:c};r={x:g,y:l}}}else if(i=y-(n=(f-d)/(m-p))*g,n<-1||n>1)if(f>d){if(a){if(a.y>=c)return}else a={x:(l-i)/n,y:l};r={x:(c-i)/n,y:c}}else{if(a){if(a.y<l)return}else a={x:(c-i)/n,y:c};r={x:(l-i)/n,y:l}}else if(p<m){if(a){if(a.x>=s)return}else a={x:o,y:n*o+i};r={x:s,y:n*s+i}}else{if(a){if(a.x<o)return}else a={x:s,y:n*s+i};r={x:o,y:n*o+i}}return t.a=a,t.b=r,!0}function rr(t,e){this.l=t,this.r=e,this.a=this.b=null}function nr(t,e,r,n){var i=new rr(t,e);return Re.push(i),r&&ir(i,t,e,r),n&&ir(i,e,t,n),Fe[t.i].edges.push(new ar(i,t,e)),Fe[e.i].edges.push(new ar(i,e,t)),i}function ir(t,e,r,n){t.a||t.b?t.l===r?t.b=n:t.a=n:(t.a=n,t.l=e,t.r=r)}function ar(t,e,r){var n=t.a,i=t.b;this.edge=t,this.site=e,this.angle=r?Math.atan2(r.y-e.y,r.x-e.x):t.l===e?Math.atan2(i.x-n.x,n.y-i.y):Math.atan2(n.x-i.x,i.y-n.y)}function or(){this._=null}function sr(t){t.U=t.C=t.L=t.R=t.P=t.N=null}function lr(t,e){var r=e,n=e.R,i=r.U;i?i.L===r?i.L=n:i.R=n:t._=n,n.U=i,r.U=n,r.R=n.L,r.R&&(r.R.U=r),n.L=r}function cr(t,e){var r=e,n=e.L,i=r.U;i?i.L===r?i.L=n:i.R=n:t._=n,n.U=i,r.U=n,r.L=n.R,r.L&&(r.L.U=r),n.R=r}function ur(t){for(;t.L;)t=t.L;return t}function hr(t,e){var r,n,i,a=t.sort(fr).pop();for(Re=[],Fe=new Array(t.length),Be=new or,je=new or;;)if(i=Ne,a&&(!i||a.y<i.y||a.y===i.y&&a.x<i.x))a.x===r&&a.y===n||(Fe[a.i]=new $e(a),We(a),r=a.x,n=a.y),a=t.pop();else{if(!i)break;Ze(i.arc)}e&&(function(t){for(var e,r,n,i,a,o=Re,s=(r=t[0][0],n=t[0][1],i=t[1][0],a=t[1][1],function(t){var e,o=t.a,s=t.b,l=o.x,c=o.y,u=0,h=1,f=s.x-l,p=s.y-c;if(e=r-l,f||!(e>0)){if(e/=f,f<0){if(e<u)return;e<h&&(h=e)}else if(f>0){if(e>h)return;e>u&&(u=e)}if(e=i-l,f||!(e<0)){if(e/=f,f<0){if(e>h)return;e>u&&(u=e)}else if(f>0){if(e<u)return;e<h&&(h=e)}if(e=n-c,p||!(e>0)){if(e/=p,p<0){if(e<u)return;e<h&&(h=e)}else if(p>0){if(e>h)return;e>u&&(u=e)}if(e=a-c,p||!(e<0)){if(e/=p,p<0){if(e>h)return;e>u&&(u=e)}else if(p>0){if(e<u)return;e<h&&(h=e)}return u>0&&(t.a={x:l+u*f,y:c+u*p}),h<1&&(t.b={x:l+h*f,y:c+h*p}),t}}}}}),l=o.length;l--;)(!er(e=o[l],t)||!s(e)||w(e.a.x-e.b.x)<Et&&w(e.a.y-e.b.y)<Et)&&(e.a=e.b=null,o.splice(l,1))}(e),function(t){for(var e,r,n,i,a,o,s,l,c,u,h=t[0][0],f=t[1][0],p=t[0][1],d=t[1][1],m=Fe,g=m.length;g--;)if((a=m[g])&&a.prepare())for(l=(s=a.edges).length,o=0;o<l;)n=(u=s[o].end()).x,i=u.y,e=(c=s[++o%l].start()).x,r=c.y,(w(n-e)>Et||w(i-r)>Et)&&(s.splice(o,0,new ar((y=a.site,v=u,x=w(n-h)<Et&&d-i>Et?{x:h,y:w(e-h)<Et?r:d}:w(i-d)<Et&&f-n>Et?{x:w(r-d)<Et?e:f,y:d}:w(n-f)<Et&&i-p>Et?{x:f,y:w(e-f)<Et?r:p}:w(i-p)<Et&&n-h>Et?{x:w(r-p)<Et?e:h,y:p}:null,_=void 0,(_=new rr(y,null)).a=v,_.b=x,Re.push(_),_),a.site,null)),++l);var y,v,x,_}(e));var o={cells:Fe,edges:Re};return Be=je=Re=Fe=null,o}function fr(t,e){return e.y-t.y||e.x-t.x}$e.prototype.prepare=function(){for(var t,e=this.edges,r=e.length;r--;)(t=e[r].edge).b&&t.a||e.splice(r,1);return e.sort(Je),e.length},ar.prototype={start:function(){return this.edge.l===this.site?this.edge.a:this.edge.b},end:function(){return this.edge.l===this.site?this.edge.b:this.edge.a}},or.prototype={insert:function(t,e){var r,n,i;if(t){if(e.P=t,e.N=t.N,t.N&&(t.N.P=e),t.N=e,t.R){for(t=t.R;t.L;)t=t.L;t.L=e}else t.R=e;r=t}else this._?(t=ur(this._),e.P=null,e.N=t,t.P=t.L=e,r=t):(e.P=e.N=null,this._=e,r=null);for(e.L=e.R=null,e.U=r,e.C=!0,t=e;r&&r.C;)r===(n=r.U).L?(i=n.R)&&i.C?(r.C=i.C=!1,n.C=!0,t=n):(t===r.R&&(lr(this,r),r=(t=r).U),r.C=!1,n.C=!0,cr(this,n)):(i=n.L)&&i.C?(r.C=i.C=!1,n.C=!0,t=n):(t===r.L&&(cr(this,r),r=(t=r).U),r.C=!1,n.C=!0,lr(this,n)),r=t.U;this._.C=!1},remove:function(t){t.N&&(t.N.P=t.P),t.P&&(t.P.N=t.N),t.N=t.P=null;var e,r,n,i=t.U,a=t.L,o=t.R;if(r=a?o?ur(o):a:o,i?i.L===t?i.L=r:i.R=r:this._=r,a&&o?(n=r.C,r.C=t.C,r.L=a,a.U=r,r!==o?(i=r.U,r.U=t.U,t=r.R,i.L=t,r.R=o,o.U=r):(r.U=i,i=r,t=r.R)):(n=t.C,t=r),t&&(t.U=i),!n)if(t&&t.C)t.C=!1;else{do{if(t===this._)break;if(t===i.L){if((e=i.R).C&&(e.C=!1,i.C=!0,lr(this,i),e=i.R),e.L&&e.L.C||e.R&&e.R.C){e.R&&e.R.C||(e.L.C=!1,e.C=!0,cr(this,e),e=i.R),e.C=i.C,i.C=e.R.C=!1,lr(this,i),t=this._;break}}else if((e=i.L).C&&(e.C=!1,i.C=!0,cr(this,i),e=i.L),e.L&&e.L.C||e.R&&e.R.C){e.L&&e.L.C||(e.R.C=!1,e.C=!0,lr(this,e),e=i.L),e.C=i.C,i.C=e.L.C=!1,cr(this,i),t=this._;break}e.C=!0,t=i,i=i.U}while(!t.C);t&&(t.C=!1)}}},a.geom.voronoi=function(t){var e=Ee,r=Ce,n=e,i=r,a=pr;if(t)return o(t);function o(t){var e=new Array(t.length),r=a[0][0],n=a[0][1],i=a[1][0],o=a[1][1];return hr(s(t),a).cells.forEach((function(a,s){var l=a.edges,c=a.site;(e[s]=l.length?l.map((function(t){var e=t.start();return[e.x,e.y]})):c.x>=r&&c.x<=i&&c.y>=n&&c.y<=o?[[r,o],[i,o],[i,n],[r,n]]:[]).point=t[s]})),e}function s(t){return t.map((function(t,e){return{x:Math.round(n(t,e)/Et)*Et,y:Math.round(i(t,e)/Et)*Et,i:e}}))}return o.links=function(t){return hr(s(t)).edges.filter((function(t){return t.l&&t.r})).map((function(e){return{source:t[e.l.i],target:t[e.r.i]}}))},o.triangles=function(t){var e=[];return hr(s(t)).cells.forEach((function(r,n){for(var i,a,o,s,l=r.site,c=r.edges.sort(Je),u=-1,h=c.length,f=c[h-1].edge,p=f.l===l?f.r:f.l;++u<h;)i=p,p=(f=c[u].edge).l===l?f.r:f.l,n<i.i&&n<p.i&&(o=i,s=p,((a=l).x-s.x)*(o.y-a.y)-(a.x-o.x)*(s.y-a.y)<0)&&e.push([t[n],t[i.i],t[p.i]])})),e},o.x=function(t){return arguments.length?(n=ge(e=t),o):e},o.y=function(t){return arguments.length?(i=ge(r=t),o):r},o.clipExtent=function(t){return arguments.length?(a=null==t?pr:t,o):a===pr?null:a},o.size=function(t){return arguments.length?o.clipExtent(t&&[[0,0],t]):a===pr?null:a&&a[1]},o};var pr=[[-1e6,-1e6],[1e6,1e6]];function dr(t){return t.x}function mr(t){return t.y}function gr(t,e,r,n,i,a){if(!t(e,r,n,i,a)){var o=.5*(r+i),s=.5*(n+a),l=e.nodes;l[0]&&gr(t,l[0],r,n,o,s),l[1]&&gr(t,l[1],o,n,i,s),l[2]&&gr(t,l[2],r,s,o,a),l[3]&&gr(t,l[3],o,s,i,a)}}function yr(t,e){t=a.rgb(t),e=a.rgb(e);var r=t.r,n=t.g,i=t.b,o=e.r-r,s=e.g-n,l=e.b-i;return function(t){return\"#\"+ce(Math.round(r+o*t))+ce(Math.round(n+s*t))+ce(Math.round(i+l*t))}}function vr(t,e){var r,n={},i={};for(r in t)r in e?n[r]=Tr(t[r],e[r]):i[r]=t[r];for(r in e)r in t||(i[r]=e[r]);return function(t){for(r in n)i[r]=n[r](t);return i}}function xr(t,e){return t=+t,e=+e,function(r){return t*(1-r)+e*r}}function _r(t,e){var r,n,i,a=br.lastIndex=wr.lastIndex=0,o=-1,s=[],l=[];for(t+=\"\",e+=\"\";(r=br.exec(t))&&(n=wr.exec(e));)(i=n.index)>a&&(i=e.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:xr(r,n)})),a=wr.lastIndex;return a<e.length&&(i=e.slice(a),s[o]?s[o]+=i:s[++o]=i),s.length<2?l[0]?(e=l[0].x,function(t){return e(t)+\"\"}):function(){return e}:(e=l.length,function(t){for(var r,n=0;n<e;++n)s[(r=l[n]).i]=r.x(t);return s.join(\"\")})}a.geom.delaunay=function(t){return a.geom.voronoi().triangles(t)},a.geom.quadtree=function(t,e,r,n,i){var a,o=Ee,s=Ce;if(a=arguments.length)return o=dr,s=mr,3===a&&(i=r,n=e,r=e=0),l(t);function l(t){var l,c,u,h,f,p,d,m,g,y=ge(o),v=ge(s);if(null!=e)p=e,d=r,m=n,g=i;else if(m=g=-(p=d=1/0),c=[],u=[],f=t.length,a)for(h=0;h<f;++h)(l=t[h]).x<p&&(p=l.x),l.y<d&&(d=l.y),l.x>m&&(m=l.x),l.y>g&&(g=l.y),c.push(l.x),u.push(l.y);else for(h=0;h<f;++h){var x=+y(l=t[h],h),_=+v(l,h);x<p&&(p=x),_<d&&(d=_),x>m&&(m=x),_>g&&(g=_),c.push(x),u.push(_)}var b=m-p,T=g-d;function k(t,e,r,n,i,a,o,s){if(!isNaN(r)&&!isNaN(n))if(t.leaf){var l=t.x,c=t.y;if(null!=l)if(w(l-r)+w(c-n)<.01)A(t,e,r,n,i,a,o,s);else{var u=t.point;t.x=t.y=t.point=null,A(t,u,l,c,i,a,o,s),A(t,e,r,n,i,a,o,s)}else t.x=r,t.y=n,t.point=e}else A(t,e,r,n,i,a,o,s)}function A(t,e,r,n,i,a,o,s){var l=.5*(i+o),c=.5*(a+s),u=r>=l,h=n>=c,f=h<<1|u;t.leaf=!1,u?i=l:o=l,h?a=c:s=c,k(t=t.nodes[f]||(t.nodes[f]={leaf:!0,nodes:[],point:null,x:null,y:null}),e,r,n,i,a,o,s)}b>T?g=d+b:m=p+T;var M={leaf:!0,nodes:[],point:null,x:null,y:null,add:function(t){k(M,t,+y(t,++h),+v(t,h),p,d,m,g)}};if(M.visit=function(t){gr(t,M,p,d,m,g)},M.find=function(t){return function(t,e,r,n,i,a,o){var s,l=1/0;return function t(c,u,h,f,p){if(!(u>a||h>o||f<n||p<i)){if(d=c.point){var d,m=e-c.x,g=r-c.y,y=m*m+g*g;if(y<l){var v=Math.sqrt(l=y);n=e-v,i=r-v,a=e+v,o=r+v,s=d}}for(var x=c.nodes,_=.5*(u+f),b=.5*(h+p),w=(r>=b)<<1|e>=_,T=w+4;w<T;++w)if(c=x[3&w])switch(3&w){case 0:t(c,u,h,_,b);break;case 1:t(c,_,h,f,b);break;case 2:t(c,u,b,_,p);break;case 3:t(c,_,b,f,p)}}}(t,n,i,a,o),s}(M,t[0],t[1],p,d,m,g)},h=-1,null==e){for(;++h<f;)k(M,t[h],c[h],u[h],p,d,m,g);--h}else t.forEach(M.add);return c=u=t=l=null,M}return l.x=function(t){return arguments.length?(o=t,l):o},l.y=function(t){return arguments.length?(s=t,l):s},l.extent=function(t){return arguments.length?(null==t?e=r=n=i=null:(e=+t[0][0],r=+t[0][1],n=+t[1][0],i=+t[1][1]),l):null==e?null:[[e,r],[n,i]]},l.size=function(t){return arguments.length?(null==t?e=r=n=i=null:(e=r=0,n=+t[0],i=+t[1]),l):null==e?null:[n-e,i-r]},l},a.interpolateRgb=yr,a.interpolateObject=vr,a.interpolateNumber=xr,a.interpolateString=_r;var br=/[-+]?(?:\\d+\\.?\\d*|\\.?\\d+)(?:[eE][-+]?\\d+)?/g,wr=new RegExp(br.source,\"g\");function Tr(t,e){for(var r,n=a.interpolators.length;--n>=0&&!(r=a.interpolators[n](t,e)););return r}function kr(t,e){var r,n=[],i=[],a=t.length,o=e.length,s=Math.min(t.length,e.length);for(r=0;r<s;++r)n.push(Tr(t[r],e[r]));for(;r<a;++r)i[r]=t[r];for(;r<o;++r)i[r]=e[r];return function(t){for(r=0;r<s;++r)i[r]=n[r](t);return i}}a.interpolate=Tr,a.interpolators=[function(t,e){var r=typeof e;return(\"string\"===r?me.has(e.toLowerCase())||/^(#|rgb\\(|hsl\\()/i.test(e)?yr:_r:e instanceof Vt?yr:Array.isArray(e)?kr:\"object\"===r&&isNaN(e)?vr:xr)(t,e)}],a.interpolateArray=kr;var Ar=function(){return D},Mr=a.map({linear:Ar,poly:function(t){return function(e){return Math.pow(e,t)}},quad:function(){return Lr},cubic:function(){return Ir},sin:function(){return zr},exp:function(){return Or},circle:function(){return Dr},elastic:function(t,e){var r;return arguments.length<2&&(e=.45),arguments.length?r=e/It*Math.asin(1/t):(t=1,r=e/4),function(n){return 1+t*Math.pow(2,-10*n)*Math.sin((n-r)*It/e)}},back:function(t){return t||(t=1.70158),function(e){return e*e*((t+1)*e-t)}},bounce:function(){return Rr}}),Sr=a.map({in:D,out:Er,\"in-out\":Cr,\"out-in\":function(t){return Cr(Er(t))}});function Er(t){return function(e){return 1-t(1-e)}}function Cr(t){return function(e){return.5*(e<.5?t(2*e):2-t(2-2*e))}}function Lr(t){return t*t}function Ir(t){return t*t*t}function Pr(t){if(t<=0)return 0;if(t>=1)return 1;var e=t*t,r=e*t;return 4*(t<.5?r:3*(t-e)+r-.75)}function zr(t){return 1-Math.cos(t*zt)}function Or(t){return Math.pow(2,10*(t-1))}function Dr(t){return 1-Math.sqrt(1-t*t)}function Rr(t){return t<1/2.75?7.5625*t*t:t<2/2.75?7.5625*(t-=1.5/2.75)*t+.75:t<2.5/2.75?7.5625*(t-=2.25/2.75)*t+.9375:7.5625*(t-=2.625/2.75)*t+.984375}function Fr(t,e){return e-=t,function(r){return Math.round(t+e*r)}}function Br(t){var e,r,n,i=[t.a,t.b],a=[t.c,t.d],o=jr(i),s=Nr(i,a),l=jr(((e=a)[0]+=(n=-s)*(r=i)[0],e[1]+=n*r[1],e))||0;i[0]*a[1]<a[0]*i[1]&&(i[0]*=-1,i[1]*=-1,o*=-1,s*=-1),this.rotate=(o?Math.atan2(i[1],i[0]):Math.atan2(-a[0],a[1]))*Dt,this.translate=[t.e,t.f],this.scale=[o,l],this.skew=l?Math.atan2(s,l)*Dt:0}function Nr(t,e){return t[0]*e[0]+t[1]*e[1]}function jr(t){var e=Math.sqrt(Nr(t,t));return e&&(t[0]/=e,t[1]/=e),e}a.ease=function(t){var e,r=t.indexOf(\"-\"),n=r>=0?t.slice(0,r):t,i=r>=0?t.slice(r+1):\"in\";return n=Mr.get(n)||Ar,i=Sr.get(i)||D,e=i(n.apply(null,o.call(arguments,1))),function(t){return t<=0?0:t>=1?1:e(t)}},a.interpolateHcl=function(t,e){t=a.hcl(t),e=a.hcl(e);var r=t.h,n=t.c,i=t.l,o=e.h-r,s=e.c-n,l=e.l-i;return isNaN(s)&&(s=0,n=isNaN(n)?e.c:n),isNaN(o)?(o=0,r=isNaN(r)?e.h:r):o>180?o-=360:o<-180&&(o+=360),function(t){return Yt(r+o*t,n+s*t,i+l*t)+\"\"}},a.interpolateHsl=function(t,e){t=a.hsl(t),e=a.hsl(e);var r=t.h,n=t.s,i=t.l,o=e.h-r,s=e.s-n,l=e.l-i;return isNaN(s)&&(s=0,n=isNaN(n)?e.s:n),isNaN(o)?(o=0,r=isNaN(r)?e.h:r):o>180?o-=360:o<-180&&(o+=360),function(t){return Gt(r+o*t,n+s*t,i+l*t)+\"\"}},a.interpolateLab=function(t,e){t=a.lab(t),e=a.lab(e);var r=t.l,n=t.a,i=t.b,o=e.l-r,s=e.a-n,l=e.b-i;return function(t){return ee(r+o*t,n+s*t,i+l*t)+\"\"}},a.interpolateRound=Fr,a.transform=function(t){var e=l.createElementNS(a.ns.prefix.svg,\"g\");return(a.transform=function(t){if(null!=t){e.setAttribute(\"transform\",t);var r=e.transform.baseVal.consolidate()}return new Br(r?r.matrix:Ur)})(t)},Br.prototype.toString=function(){return\"translate(\"+this.translate+\")rotate(\"+this.rotate+\")skewX(\"+this.skew+\")scale(\"+this.scale+\")\"};var Ur={a:1,b:0,c:0,d:1,e:0,f:0};function Vr(t){return t.length?t.pop()+\",\":\"\"}function qr(t,e){var r=[],n=[];return t=a.transform(t),e=a.transform(e),function(t,e,r,n){if(t[0]!==e[0]||t[1]!==e[1]){var i=r.push(\"translate(\",null,\",\",null,\")\");n.push({i:i-4,x:xr(t[0],e[0])},{i:i-2,x:xr(t[1],e[1])})}else(e[0]||e[1])&&r.push(\"translate(\"+e+\")\")}(t.translate,e.translate,r,n),function(t,e,r,n){t!==e?(t-e>180?e+=360:e-t>180&&(t+=360),n.push({i:r.push(Vr(r)+\"rotate(\",null,\")\")-2,x:xr(t,e)})):e&&r.push(Vr(r)+\"rotate(\"+e+\")\")}(t.rotate,e.rotate,r,n),function(t,e,r,n){t!==e?n.push({i:r.push(Vr(r)+\"skewX(\",null,\")\")-2,x:xr(t,e)}):e&&r.push(Vr(r)+\"skewX(\"+e+\")\")}(t.skew,e.skew,r,n),function(t,e,r,n){if(t[0]!==e[0]||t[1]!==e[1]){var i=r.push(Vr(r)+\"scale(\",null,\",\",null,\")\");n.push({i:i-4,x:xr(t[0],e[0])},{i:i-2,x:xr(t[1],e[1])})}else 1===e[0]&&1===e[1]||r.push(Vr(r)+\"scale(\"+e+\")\")}(t.scale,e.scale,r,n),t=e=null,function(t){for(var e,i=-1,a=n.length;++i<a;)r[(e=n[i]).i]=e.x(t);return r.join(\"\")}}function Hr(t,e){return e=(e-=t=+t)||1/e,function(r){return(r-t)/e}}function Gr(t,e){return e=(e-=t=+t)||1/e,function(r){return Math.max(0,Math.min(1,(r-t)/e))}}function Zr(t){for(var e=t.source,r=t.target,n=function(t,e){if(t===e)return t;for(var r=Wr(t),n=Wr(e),i=r.pop(),a=n.pop(),o=null;i===a;)o=i,i=r.pop(),a=n.pop();return o}(e,r),i=[e];e!==n;)e=e.parent,i.push(e);for(var a=i.length;r!==n;)i.splice(a,0,r),r=r.parent;return i}function Wr(t){for(var e=[],r=t.parent;null!=r;)e.push(t),t=r,r=r.parent;return e.push(t),e}function Yr(t){t.fixed|=2}function Xr(t){t.fixed&=-7}function $r(t){t.fixed|=4,t.px=t.x,t.py=t.y}function Jr(t){t.fixed&=-5}function Kr(t,e,r){var n=0,i=0;if(t.charge=0,!t.leaf)for(var a,o=t.nodes,s=o.length,l=-1;++l<s;)null!=(a=o[l])&&(Kr(a,e,r),t.charge+=a.charge,n+=a.charge*a.cx,i+=a.charge*a.cy);if(t.point){t.leaf||(t.point.x+=Math.random()-.5,t.point.y+=Math.random()-.5);var c=e*r[t.point.index];t.charge+=t.pointCharge=c,n+=c*t.point.x,i+=c*t.point.y}t.cx=n/t.charge,t.cy=i/t.charge}a.interpolateTransform=qr,a.layout={},a.layout.bundle=function(){return function(t){for(var e=[],r=-1,n=t.length;++r<n;)e.push(Zr(t[r]));return e}},a.layout.chord=function(){var t,e,r,n,i,o,s,l={},c=0;function u(){var l,u,f,p,d,m={},g=[],y=a.range(n),v=[];for(t=[],e=[],l=0,p=-1;++p<n;){for(u=0,d=-1;++d<n;)u+=r[p][d];g.push(u),v.push(a.range(n)),l+=u}for(i&&y.sort((function(t,e){return i(g[t],g[e])})),o&&v.forEach((function(t,e){t.sort((function(t,n){return o(r[e][t],r[e][n])}))})),l=(It-c*n)/l,u=0,p=-1;++p<n;){for(f=u,d=-1;++d<n;){var x=y[p],_=v[x][d],b=r[x][_],w=u,T=u+=b*l;m[x+\"-\"+_]={index:x,subindex:_,startAngle:w,endAngle:T,value:b}}e[x]={index:x,startAngle:f,endAngle:u,value:g[x]},u+=c}for(p=-1;++p<n;)for(d=p-1;++d<n;){var k=m[p+\"-\"+d],A=m[d+\"-\"+p];(k.value||A.value)&&t.push(k.value<A.value?{source:A,target:k}:{source:k,target:A})}s&&h()}function h(){t.sort((function(t,e){return s((t.source.value+t.target.value)/2,(e.source.value+e.target.value)/2)}))}return l.matrix=function(i){return arguments.length?(n=(r=i)&&r.length,t=e=null,l):r},l.padding=function(r){return arguments.length?(c=r,t=e=null,l):c},l.sortGroups=function(r){return arguments.length?(i=r,t=e=null,l):i},l.sortSubgroups=function(e){return arguments.length?(o=e,t=null,l):o},l.sortChords=function(e){return arguments.length?(s=e,t&&h(),l):s},l.chords=function(){return t||u(),t},l.groups=function(){return e||u(),e},l},a.layout.force=function(){var t,e,r,n,i,o,s={},l=a.dispatch(\"start\",\"tick\",\"end\"),c=[1,1],u=.9,h=Qr,f=tn,p=-30,d=en,m=.1,g=.64,y=[],v=[];function x(t){return function(e,r,n,i){if(e.point!==t){var a=e.cx-t.x,o=e.cy-t.y,s=i-r,l=a*a+o*o;if(s*s/g<l){if(l<d){var c=e.charge/l;t.px-=a*c,t.py-=o*c}return!0}e.point&&l&&l<d&&(c=e.pointCharge/l,t.px-=a*c,t.py-=o*c)}return!e.charge}}function _(t){t.px=a.event.x,t.py=a.event.y,s.resume()}return s.tick=function(){if((r*=.99)<.005)return t=null,l.end({type:\"end\",alpha:r=0}),!0;var e,s,h,f,d,g,_,b,w,T=y.length,k=v.length;for(s=0;s<k;++s)f=(h=v[s]).source,(g=(b=(d=h.target).x-f.x)*b+(w=d.y-f.y)*w)&&(b*=g=r*i[s]*((g=Math.sqrt(g))-n[s])/g,w*=g,d.x-=b*(_=f.weight+d.weight?f.weight/(f.weight+d.weight):.5),d.y-=w*_,f.x+=b*(_=1-_),f.y+=w*_);if((_=r*m)&&(b=c[0]/2,w=c[1]/2,s=-1,_))for(;++s<T;)(h=y[s]).x+=(b-h.x)*_,h.y+=(w-h.y)*_;if(p)for(Kr(e=a.geom.quadtree(y),r,o),s=-1;++s<T;)(h=y[s]).fixed||e.visit(x(h));for(s=-1;++s<T;)(h=y[s]).fixed?(h.x=h.px,h.y=h.py):(h.x-=(h.px-(h.px=h.x))*u,h.y-=(h.py-(h.py=h.y))*u);l.tick({type:\"tick\",alpha:r})},s.nodes=function(t){return arguments.length?(y=t,s):y},s.links=function(t){return arguments.length?(v=t,s):v},s.size=function(t){return arguments.length?(c=t,s):c},s.linkDistance=function(t){return arguments.length?(h=\"function\"==typeof t?t:+t,s):h},s.distance=s.linkDistance,s.linkStrength=function(t){return arguments.length?(f=\"function\"==typeof t?t:+t,s):f},s.friction=function(t){return arguments.length?(u=+t,s):u},s.charge=function(t){return arguments.length?(p=\"function\"==typeof t?t:+t,s):p},s.chargeDistance=function(t){return arguments.length?(d=t*t,s):Math.sqrt(d)},s.gravity=function(t){return arguments.length?(m=+t,s):m},s.theta=function(t){return arguments.length?(g=t*t,s):Math.sqrt(g)},s.alpha=function(e){return arguments.length?(e=+e,r?e>0?r=e:(t.c=null,t.t=NaN,t=null,l.end({type:\"end\",alpha:r=0})):e>0&&(l.start({type:\"start\",alpha:r=e}),t=ke(s.tick)),s):r},s.start=function(){var t,e,r,a=y.length,l=v.length,u=c[0],d=c[1];for(t=0;t<a;++t)(r=y[t]).index=t,r.weight=0;for(t=0;t<l;++t)\"number\"==typeof(r=v[t]).source&&(r.source=y[r.source]),\"number\"==typeof r.target&&(r.target=y[r.target]),++r.source.weight,++r.target.weight;for(t=0;t<a;++t)r=y[t],isNaN(r.x)&&(r.x=m(\"x\",u)),isNaN(r.y)&&(r.y=m(\"y\",d)),isNaN(r.px)&&(r.px=r.x),isNaN(r.py)&&(r.py=r.y);if(n=[],\"function\"==typeof h)for(t=0;t<l;++t)n[t]=+h.call(this,v[t],t);else for(t=0;t<l;++t)n[t]=h;if(i=[],\"function\"==typeof f)for(t=0;t<l;++t)i[t]=+f.call(this,v[t],t);else for(t=0;t<l;++t)i[t]=f;if(o=[],\"function\"==typeof p)for(t=0;t<a;++t)o[t]=+p.call(this,y[t],t);else for(t=0;t<a;++t)o[t]=p;function m(r,n){if(!e){for(e=new Array(a),c=0;c<a;++c)e[c]=[];for(c=0;c<l;++c){var i=v[c];e[i.source.index].push(i.target),e[i.target.index].push(i.source)}}for(var o,s=e[t],c=-1,u=s.length;++c<u;)if(!isNaN(o=s[c][r]))return o;return Math.random()*n}return s.resume()},s.resume=function(){return s.alpha(.1)},s.stop=function(){return s.alpha(0)},s.drag=function(){if(e||(e=a.behavior.drag().origin(D).on(\"dragstart.force\",Yr).on(\"drag.force\",_).on(\"dragend.force\",Xr)),!arguments.length)return e;this.on(\"mouseover.force\",$r).on(\"mouseout.force\",Jr).call(e)},a.rebind(s,l,\"on\")};var Qr=20,tn=1,en=1/0;function rn(t,e){return a.rebind(t,e,\"sort\",\"children\",\"value\"),t.nodes=t,t.links=cn,t}function nn(t,e){for(var r=[t];null!=(t=r.pop());)if(e(t),(i=t.children)&&(n=i.length))for(var n,i;--n>=0;)r.push(i[n])}function an(t,e){for(var r=[t],n=[];null!=(t=r.pop());)if(n.push(t),(a=t.children)&&(i=a.length))for(var i,a,o=-1;++o<i;)r.push(a[o]);for(;null!=(t=n.pop());)e(t)}function on(t){return t.children}function sn(t){return t.value}function ln(t,e){return e.value-t.value}function cn(t){return a.merge(t.map((function(t){return(t.children||[]).map((function(e){return{source:t,target:e}}))})))}a.layout.hierarchy=function(){var t=ln,e=on,r=sn;function n(i){var a,o=[i],s=[];for(i.depth=0;null!=(a=o.pop());)if(s.push(a),(c=e.call(n,a,a.depth))&&(l=c.length)){for(var l,c,u;--l>=0;)o.push(u=c[l]),u.parent=a,u.depth=a.depth+1;r&&(a.value=0),a.children=c}else r&&(a.value=+r.call(n,a,a.depth)||0),delete a.children;return an(i,(function(e){var n,i;t&&(n=e.children)&&n.sort(t),r&&(i=e.parent)&&(i.value+=e.value)})),s}return n.sort=function(e){return arguments.length?(t=e,n):t},n.children=function(t){return arguments.length?(e=t,n):e},n.value=function(t){return arguments.length?(r=t,n):r},n.revalue=function(t){return r&&(nn(t,(function(t){t.children&&(t.value=0)})),an(t,(function(t){var e;t.children||(t.value=+r.call(n,t,t.depth)||0),(e=t.parent)&&(e.value+=t.value)}))),t},n},a.layout.partition=function(){var t=a.layout.hierarchy(),e=[1,1];function r(t,e,n,i){var a=t.children;if(t.x=e,t.y=t.depth*i,t.dx=n,t.dy=i,a&&(o=a.length)){var o,s,l,c=-1;for(n=t.value?n/t.value:0;++c<o;)r(s=a[c],e,l=s.value*n,i),e+=l}}function n(t){var e=t.children,r=0;if(e&&(i=e.length))for(var i,a=-1;++a<i;)r=Math.max(r,n(e[a]));return 1+r}function i(i,a){var o=t.call(this,i,a);return r(o[0],0,e[0],e[1]/n(o[0])),o}return i.size=function(t){return arguments.length?(e=t,i):e},rn(i,t)},a.layout.pie=function(){var t=Number,e=un,r=0,n=It,i=0;function o(s){var l,c=s.length,u=s.map((function(e,r){return+t.call(o,e,r)})),h=+(\"function\"==typeof r?r.apply(this,arguments):r),f=(\"function\"==typeof n?n.apply(this,arguments):n)-h,p=Math.min(Math.abs(f)/c,+(\"function\"==typeof i?i.apply(this,arguments):i)),d=p*(f<0?-1:1),m=a.sum(u),g=m?(f-c*d)/m:0,y=a.range(c),v=[];return null!=e&&y.sort(e===un?function(t,e){return u[e]-u[t]}:function(t,r){return e(s[t],s[r])}),y.forEach((function(t){v[t]={data:s[t],value:l=u[t],startAngle:h,endAngle:h+=l*g+d,padAngle:p}})),v}return o.value=function(e){return arguments.length?(t=e,o):t},o.sort=function(t){return arguments.length?(e=t,o):e},o.startAngle=function(t){return arguments.length?(r=t,o):r},o.endAngle=function(t){return arguments.length?(n=t,o):n},o.padAngle=function(t){return arguments.length?(i=t,o):i},o};var un={};function hn(t){return t.x}function fn(t){return t.y}function pn(t,e,r){t.y0=e,t.y=r}a.layout.stack=function(){var t=D,e=gn,r=yn,n=pn,i=hn,o=fn;function s(l,c){if(!(p=l.length))return l;var u=l.map((function(e,r){return t.call(s,e,r)})),h=u.map((function(t){return t.map((function(t,e){return[i.call(s,t,e),o.call(s,t,e)]}))})),f=e.call(s,h,c);u=a.permute(u,f),h=a.permute(h,f);var p,d,m,g,y=r.call(s,h,c),v=u[0].length;for(m=0;m<v;++m)for(n.call(s,u[0][m],g=y[m],h[0][m][1]),d=1;d<p;++d)n.call(s,u[d][m],g+=h[d-1][m][1],h[d][m][1]);return l}return s.values=function(e){return arguments.length?(t=e,s):t},s.order=function(t){return arguments.length?(e=\"function\"==typeof t?t:dn.get(t)||gn,s):e},s.offset=function(t){return arguments.length?(r=\"function\"==typeof t?t:mn.get(t)||yn,s):r},s.x=function(t){return arguments.length?(i=t,s):i},s.y=function(t){return arguments.length?(o=t,s):o},s.out=function(t){return arguments.length?(n=t,s):n},s};var dn=a.map({\"inside-out\":function(t){var e,r,n=t.length,i=t.map(vn),o=t.map(xn),s=a.range(n).sort((function(t,e){return i[t]-i[e]})),l=0,c=0,u=[],h=[];for(e=0;e<n;++e)r=s[e],l<c?(l+=o[r],u.push(r)):(c+=o[r],h.push(r));return h.reverse().concat(u)},reverse:function(t){return a.range(t.length).reverse()},default:gn}),mn=a.map({silhouette:function(t){var e,r,n,i=t.length,a=t[0].length,o=[],s=0,l=[];for(r=0;r<a;++r){for(e=0,n=0;e<i;e++)n+=t[e][r][1];n>s&&(s=n),o.push(n)}for(r=0;r<a;++r)l[r]=(s-o[r])/2;return l},wiggle:function(t){var e,r,n,i,a,o,s,l,c,u=t.length,h=t[0],f=h.length,p=[];for(p[0]=l=c=0,r=1;r<f;++r){for(e=0,i=0;e<u;++e)i+=t[e][r][1];for(e=0,a=0,s=h[r][0]-h[r-1][0];e<u;++e){for(n=0,o=(t[e][r][1]-t[e][r-1][1])/(2*s);n<e;++n)o+=(t[n][r][1]-t[n][r-1][1])/s;a+=o*t[e][r][1]}p[r]=l-=i?a/i*s:0,l<c&&(c=l)}for(r=0;r<f;++r)p[r]-=c;return p},expand:function(t){var e,r,n,i=t.length,a=t[0].length,o=1/i,s=[];for(r=0;r<a;++r){for(e=0,n=0;e<i;e++)n+=t[e][r][1];if(n)for(e=0;e<i;e++)t[e][r][1]/=n;else for(e=0;e<i;e++)t[e][r][1]=o}for(r=0;r<a;++r)s[r]=0;return s},zero:yn});function gn(t){return a.range(t.length)}function yn(t){for(var e=-1,r=t[0].length,n=[];++e<r;)n[e]=0;return n}function vn(t){for(var e,r=1,n=0,i=t[0][1],a=t.length;r<a;++r)(e=t[r][1])>i&&(n=r,i=e);return n}function xn(t){return t.reduce(_n,0)}function _n(t,e){return t+e[1]}function bn(t,e){return wn(t,Math.ceil(Math.log(e.length)/Math.LN2+1))}function wn(t,e){for(var r=-1,n=+t[0],i=(t[1]-n)/e,a=[];++r<=e;)a[r]=i*r+n;return a}function Tn(t){return[a.min(t),a.max(t)]}function kn(t,e){return t.value-e.value}function An(t,e){var r=t._pack_next;t._pack_next=e,e._pack_prev=t,e._pack_next=r,r._pack_prev=e}function Mn(t,e){t._pack_next=e,e._pack_prev=t}function Sn(t,e){var r=e.x-t.x,n=e.y-t.y,i=t.r+e.r;return.999*i*i>r*r+n*n}function En(t){if((e=t.children)&&(l=e.length)){var e,r,n,i,a,o,s,l,c=1/0,u=-1/0,h=1/0,f=-1/0;if(e.forEach(Cn),(r=e[0]).x=-r.r,r.y=0,x(r),l>1&&((n=e[1]).x=n.r,n.y=0,x(n),l>2))for(Pn(r,n,i=e[2]),x(i),An(r,i),r._pack_prev=i,An(i,n),n=r._pack_next,a=3;a<l;a++){Pn(r,n,i=e[a]);var p=0,d=1,m=1;for(o=n._pack_next;o!==n;o=o._pack_next,d++)if(Sn(o,i)){p=1;break}if(1==p)for(s=r._pack_prev;s!==o._pack_prev&&!Sn(s,i);s=s._pack_prev,m++);p?(d<m||d==m&&n.r<r.r?Mn(r,n=o):Mn(r=s,n),a--):(An(r,i),n=i,x(i))}var g=(c+u)/2,y=(h+f)/2,v=0;for(a=0;a<l;a++)(i=e[a]).x-=g,i.y-=y,v=Math.max(v,i.r+Math.sqrt(i.x*i.x+i.y*i.y));t.r=v,e.forEach(Ln)}function x(t){c=Math.min(t.x-t.r,c),u=Math.max(t.x+t.r,u),h=Math.min(t.y-t.r,h),f=Math.max(t.y+t.r,f)}}function Cn(t){t._pack_next=t._pack_prev=t}function Ln(t){delete t._pack_next,delete t._pack_prev}function In(t,e,r,n){var i=t.children;if(t.x=e+=n*t.x,t.y=r+=n*t.y,t.r*=n,i)for(var a=-1,o=i.length;++a<o;)In(i[a],e,r,n)}function Pn(t,e,r){var n=t.r+r.r,i=e.x-t.x,a=e.y-t.y;if(n&&(i||a)){var o=e.r+r.r,s=i*i+a*a,l=.5+((n*=n)-(o*=o))/(2*s),c=Math.sqrt(Math.max(0,2*o*(n+s)-(n-=s)*n-o*o))/(2*s);r.x=t.x+l*i+c*a,r.y=t.y+l*a-c*i}else r.x=t.x+n,r.y=t.y}function zn(t,e){return t.parent==e.parent?1:2}function On(t){var e=t.children;return e.length?e[0]:t.t}function Dn(t){var e,r=t.children;return(e=r.length)?r[e-1]:t.t}function Rn(t,e,r){var n=r/(e.i-t.i);e.c-=n,e.s+=r,t.c+=n,e.z+=r,e.m+=r}function Fn(t,e,r){return t.a.parent===e.parent?t.a:r}function Bn(t){var e=t.children;return e&&e.length?Bn(e[0]):t}function Nn(t){var e,r=t.children;return r&&(e=r.length)?Nn(r[e-1]):t}function jn(t){return{x:t.x,y:t.y,dx:t.dx,dy:t.dy}}function Un(t,e){var r=t.x+e[3],n=t.y+e[0],i=t.dx-e[1]-e[3],a=t.dy-e[0]-e[2];return i<0&&(r+=i/2,i=0),a<0&&(n+=a/2,a=0),{x:r,y:n,dx:i,dy:a}}function Vn(t){var e=t[0],r=t[t.length-1];return e<r?[e,r]:[r,e]}function qn(t){return t.rangeExtent?t.rangeExtent():Vn(t.range())}function Hn(t,e,r,n){var i=r(t[0],t[1]),a=n(e[0],e[1]);return function(t){return a(i(t))}}function Gn(t,e){var r,n=0,i=t.length-1,a=t[n],o=t[i];return o<a&&(r=n,n=i,i=r,r=a,a=o,o=r),t[n]=e.floor(a),t[i]=e.ceil(o),t}function Zn(t){return t?{floor:function(e){return Math.floor(e/t)*t},ceil:function(e){return Math.ceil(e/t)*t}}:Wn}a.layout.histogram=function(){var t=!0,e=Number,r=Tn,n=bn;function i(i,o){for(var s,l,c=[],u=i.map(e,this),h=r.call(this,u,o),f=n.call(this,h,u,o),p=(o=-1,u.length),d=f.length-1,m=t?1:1/p;++o<d;)(s=c[o]=[]).dx=f[o+1]-(s.x=f[o]),s.y=0;if(d>0)for(o=-1;++o<p;)(l=u[o])>=h[0]&&l<=h[1]&&((s=c[a.bisect(f,l,1,d)-1]).y+=m,s.push(i[o]));return c}return i.value=function(t){return arguments.length?(e=t,i):e},i.range=function(t){return arguments.length?(r=ge(t),i):r},i.bins=function(t){return arguments.length?(n=\"number\"==typeof t?function(e){return wn(e,t)}:ge(t),i):n},i.frequency=function(e){return arguments.length?(t=!!e,i):t},i},a.layout.pack=function(){var t,e=a.layout.hierarchy().sort(kn),r=0,n=[1,1];function i(i,a){var o=e.call(this,i,a),s=o[0],l=n[0],c=n[1],u=null==t?Math.sqrt:\"function\"==typeof t?t:function(){return t};if(s.x=s.y=0,an(s,(function(t){t.r=+u(t.value)})),an(s,En),r){var h=r*(t?1:Math.max(2*s.r/l,2*s.r/c))/2;an(s,(function(t){t.r+=h})),an(s,En),an(s,(function(t){t.r-=h}))}return In(s,l/2,c/2,t?1:1/Math.max(2*s.r/l,2*s.r/c)),o}return i.size=function(t){return arguments.length?(n=t,i):n},i.radius=function(e){return arguments.length?(t=null==e||\"function\"==typeof e?e:+e,i):t},i.padding=function(t){return arguments.length?(r=+t,i):r},rn(i,e)},a.layout.tree=function(){var t=a.layout.hierarchy().sort(null).value(null),e=zn,r=[1,1],n=null;function i(i,a){var c=t.call(this,i,a),u=c[0],h=function(t){for(var e,r={A:null,children:[t]},n=[r];null!=(e=n.pop());)for(var i,a=e.children,o=0,s=a.length;o<s;++o)n.push((a[o]=i={_:a[o],parent:e,children:(i=a[o].children)&&i.slice()||[],A:null,a:null,z:0,m:0,c:0,s:0,t:null,i:o}).a=i);return r.children[0]}(u);if(an(h,o),h.parent.m=-h.z,nn(h,s),n)nn(u,l);else{var f=u,p=u,d=u;nn(u,(function(t){t.x<f.x&&(f=t),t.x>p.x&&(p=t),t.depth>d.depth&&(d=t)}));var m=e(f,p)/2-f.x,g=r[0]/(p.x+e(p,f)/2+m),y=r[1]/(d.depth||1);nn(u,(function(t){t.x=(t.x+m)*g,t.y=t.depth*y}))}return c}function o(t){var r=t.children,n=t.parent.children,i=t.i?n[t.i-1]:null;if(r.length){!function(t){for(var e,r=0,n=0,i=t.children,a=i.length;--a>=0;)(e=i[a]).z+=r,e.m+=r,r+=e.s+(n+=e.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],c=a.m,u=o.m,h=s.m,f=l.m;s=Dn(s),a=On(a),s&&a;)l=On(l),(o=Dn(o)).a=t,(i=s.z+h-a.z-c+e(s._,a._))>0&&(Rn(Fn(s,t,n),t,i),c+=i,u+=i),h+=s.m,c+=a.m,f+=l.m,u+=o.m;s&&!Dn(o)&&(o.t=s,o.m+=h-u),a&&!On(l)&&(l.t=a,l.m+=c-f,n=t)}return n}(t,i,t.parent.A||n[0])}function s(t){t._.x=t.z+t.parent.m,t.m+=t.parent.m}function l(t){t.x*=r[0],t.y=t.depth*r[1]}return i.separation=function(t){return arguments.length?(e=t,i):e},i.size=function(t){return arguments.length?(n=null==(r=t)?l:null,i):n?null:r},i.nodeSize=function(t){return arguments.length?(n=null==(r=t)?null:l,i):n?r:null},rn(i,t)},a.layout.cluster=function(){var t=a.layout.hierarchy().sort(null).value(null),e=zn,r=[1,1],n=!1;function i(i,o){var s,l=t.call(this,i,o),c=l[0],u=0;an(c,(function(t){var r=t.children;r&&r.length?(t.x=function(t){return t.reduce((function(t,e){return t+e.x}),0)/t.length}(r),t.y=function(t){return 1+a.max(t,(function(t){return t.y}))}(r)):(t.x=s?u+=e(t,s):0,t.y=0,s=t)}));var h=Bn(c),f=Nn(c),p=h.x-e(h,f)/2,d=f.x+e(f,h)/2;return an(c,n?function(t){t.x=(t.x-c.x)*r[0],t.y=(c.y-t.y)*r[1]}:function(t){t.x=(t.x-p)/(d-p)*r[0],t.y=(1-(c.y?t.y/c.y:1))*r[1]}),l}return i.separation=function(t){return arguments.length?(e=t,i):e},i.size=function(t){return arguments.length?(n=null==(r=t),i):n?null:r},i.nodeSize=function(t){return arguments.length?(n=null!=(r=t),i):n?r:null},rn(i,t)},a.layout.treemap=function(){var t,e=a.layout.hierarchy(),r=Math.round,n=[1,1],i=null,o=jn,s=!1,l=\"squarify\",c=.5*(1+Math.sqrt(5));function u(t,e){for(var r,n,i=-1,a=t.length;++i<a;)n=(r=t[i]).value*(e<0?0:e),r.area=isNaN(n)||n<=0?0:n}function h(t){var e=t.children;if(e&&e.length){var r,n,i,a=o(t),s=[],c=e.slice(),f=1/0,m=\"slice\"===l?a.dx:\"dice\"===l?a.dy:\"slice-dice\"===l?1&t.depth?a.dy:a.dx:Math.min(a.dx,a.dy);for(u(c,a.dx*a.dy/t.value),s.area=0;(i=c.length)>0;)s.push(r=c[i-1]),s.area+=r.area,\"squarify\"!==l||(n=p(s,m))<=f?(c.pop(),f=n):(s.area-=s.pop().area,d(s,m,a,!1),m=Math.min(a.dx,a.dy),s.length=s.area=0,f=1/0);s.length&&(d(s,m,a,!0),s.length=s.area=0),e.forEach(h)}}function f(t){var e=t.children;if(e&&e.length){var r,n=o(t),i=e.slice(),a=[];for(u(i,n.dx*n.dy/t.value),a.area=0;r=i.pop();)a.push(r),a.area+=r.area,null!=r.z&&(d(a,r.z?n.dx:n.dy,n,!i.length),a.length=a.area=0);e.forEach(f)}}function p(t,e){for(var r,n=t.area,i=0,a=1/0,o=-1,s=t.length;++o<s;)(r=t[o].area)&&(r<a&&(a=r),r>i&&(i=r));return e*=e,(n*=n)?Math.max(e*i*c/n,n/(e*a*c)):1/0}function d(t,e,n,i){var a,o=-1,s=t.length,l=n.x,c=n.y,u=e?r(t.area/e):0;if(e==n.dx){for((i||u>n.dy)&&(u=n.dy);++o<s;)(a=t[o]).x=l,a.y=c,a.dy=u,l+=a.dx=Math.min(n.x+n.dx-l,u?r(a.area/u):0);a.z=!0,a.dx+=n.x+n.dx-l,n.y+=u,n.dy-=u}else{for((i||u>n.dx)&&(u=n.dx);++o<s;)(a=t[o]).x=l,a.y=c,a.dx=u,c+=a.dy=Math.min(n.y+n.dy-c,u?r(a.area/u):0);a.z=!1,a.dy+=n.y+n.dy-c,n.x+=u,n.dx-=u}}function m(r){var i=t||e(r),a=i[0];return a.x=a.y=0,a.value?(a.dx=n[0],a.dy=n[1]):a.dx=a.dy=0,t&&e.revalue(a),u([a],a.dx*a.dy/a.value),(t?f:h)(a),s&&(t=i),i}return m.size=function(t){return arguments.length?(n=t,m):n},m.padding=function(t){if(!arguments.length)return i;function e(e){return Un(e,t)}var r;return o=null==(i=t)?jn:\"function\"==(r=typeof t)?function(e){var r=t.call(m,e,e.depth);return null==r?jn(e):Un(e,\"number\"==typeof r?[r,r,r,r]:r)}:\"number\"===r?(t=[t,t,t,t],e):e,m},m.round=function(t){return arguments.length?(r=t?Math.round:Number,m):r!=Number},m.sticky=function(e){return arguments.length?(s=e,t=null,m):s},m.ratio=function(t){return arguments.length?(c=t,m):c},m.mode=function(t){return arguments.length?(l=t+\"\",m):l},rn(m,e)},a.random={normal:function(t,e){var r=arguments.length;return r<2&&(e=1),r<1&&(t=0),function(){var r,n,i;do{i=(r=2*Math.random()-1)*r+(n=2*Math.random()-1)*n}while(!i||i>1);return t+e*r*Math.sqrt(-2*Math.log(i)/i)}},logNormal:function(){var t=a.random.normal.apply(a,arguments);return function(){return Math.exp(t())}},bates:function(t){var e=a.random.irwinHall(t);return function(){return e()/t}},irwinHall:function(t){return function(){for(var e=0,r=0;r<t;r++)e+=Math.random();return e}}},a.scale={};var Wn={floor:D,ceil:D};function Yn(t,e,r,n){var i=[],o=[],s=0,l=Math.min(t.length,e.length)-1;for(t[l]<t[0]&&(t=t.slice().reverse(),e=e.slice().reverse());++s<=l;)i.push(r(t[s-1],t[s])),o.push(n(e[s-1],e[s]));return function(e){var r=a.bisect(t,e,1,l)-1;return o[r](i[r](e))}}function Xn(t,e,r,n){var i,a;function o(){var o=Math.min(t.length,e.length)>2?Yn:Hn,l=n?Gr:Hr;return i=o(t,e,l,r),a=o(e,t,l,Tr),s}function s(t){return i(t)}return s.invert=function(t){return a(t)},s.domain=function(e){return arguments.length?(t=e.map(Number),o()):t},s.range=function(t){return arguments.length?(e=t,o()):e},s.rangeRound=function(t){return s.range(t).interpolate(Fr)},s.clamp=function(t){return arguments.length?(n=t,o()):n},s.interpolate=function(t){return arguments.length?(r=t,o()):r},s.ticks=function(e){return Qn(t,e)},s.tickFormat=function(e,r){return d3_scale_linearTickFormat(t,e,r)},s.nice=function(e){return Jn(t,e),o()},s.copy=function(){return Xn(t,e,r,n)},o()}function $n(t,e){return a.rebind(t,e,\"range\",\"rangeRound\",\"interpolate\",\"clamp\")}function Jn(t,e){return Gn(t,Zn(Kn(t,e)[2])),Gn(t,Zn(Kn(t,e)[2])),t}function Kn(t,e){null==e&&(e=10);var r=Vn(t),n=r[1]-r[0],i=Math.pow(10,Math.floor(Math.log(n/e)/Math.LN10)),a=e/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 Qn(t,e){return a.range.apply(a,Kn(t,e))}function ti(t,e,r,n){function i(t){return(r?Math.log(t<0?0:t):-Math.log(t>0?0:-t))/Math.log(e)}function a(t){return r?Math.pow(e,t):-Math.pow(e,-t)}function o(e){return t(i(e))}return o.invert=function(e){return a(t.invert(e))},o.domain=function(e){return arguments.length?(r=e[0]>=0,t.domain((n=e.map(Number)).map(i)),o):n},o.base=function(r){return arguments.length?(e=+r,t.domain(n.map(i)),o):e},o.nice=function(){var e=Gn(n.map(i),r?Math:ei);return t.domain(e),n=e.map(a),o},o.ticks=function(){var t=Vn(n),o=[],s=t[0],l=t[1],c=Math.floor(i(s)),u=Math.ceil(i(l)),h=e%1?2:e;if(isFinite(u-c)){if(r){for(;c<u;c++)for(var f=1;f<h;f++)o.push(a(c)*f);o.push(a(c))}else for(o.push(a(c));c++<u;)for(f=h-1;f>0;f--)o.push(a(c)*f);for(c=0;o[c]<s;c++);for(u=o.length;o[u-1]>l;u--);o=o.slice(c,u)}return o},o.copy=function(){return ti(t.copy(),e,r,n)},$n(o,t)}a.scale.linear=function(){return Xn([0,1],[0,1],Tr,!1)},a.scale.log=function(){return ti(a.scale.linear().domain([0,1]),10,!0,[1,10])};var ei={floor:function(t){return-Math.ceil(-t)},ceil:function(t){return-Math.floor(-t)}};function ri(t,e,r){var n=ni(e),i=ni(1/e);function a(e){return t(n(e))}return a.invert=function(e){return i(t.invert(e))},a.domain=function(e){return arguments.length?(t.domain((r=e.map(Number)).map(n)),a):r},a.ticks=function(t){return Qn(r,t)},a.tickFormat=function(t,e){return d3_scale_linearTickFormat(r,t,e)},a.nice=function(t){return a.domain(Jn(r,t))},a.exponent=function(o){return arguments.length?(n=ni(e=o),i=ni(1/e),t.domain(r.map(n)),a):e},a.copy=function(){return ri(t.copy(),e,r)},$n(a,t)}function ni(t){return function(e){return e<0?-Math.pow(-e,t):Math.pow(e,t)}}function ii(t,e){var r,n,i;function o(i){return n[((r.get(i)||(\"range\"===e.t?r.set(i,t.push(i)):NaN))-1)%n.length]}function s(e,r){return a.range(t.length).map((function(t){return e+r*t}))}return o.domain=function(n){if(!arguments.length)return t;t=[],r=new k;for(var i,a=-1,s=n.length;++a<s;)r.has(i=n[a])||r.set(i,t.push(i));return o[e.t].apply(o,e.a)},o.range=function(t){return arguments.length?(n=t,i=0,e={t:\"range\",a:arguments},o):n},o.rangePoints=function(r,a){arguments.length<2&&(a=0);var l=r[0],c=r[1],u=t.length<2?(l=(l+c)/2,0):(c-l)/(t.length-1+a);return n=s(l+u*a/2,u),i=0,e={t:\"rangePoints\",a:arguments},o},o.rangeRoundPoints=function(r,a){arguments.length<2&&(a=0);var l=r[0],c=r[1],u=t.length<2?(l=c=Math.round((l+c)/2),0):(c-l)/(t.length-1+a)|0;return n=s(l+Math.round(u*a/2+(c-l-(t.length-1+a)*u)/2),u),i=0,e={t:\"rangeRoundPoints\",a:arguments},o},o.rangeBands=function(r,a,l){arguments.length<2&&(a=0),arguments.length<3&&(l=a);var c=r[1]<r[0],u=r[c-0],h=(r[1-c]-u)/(t.length-a+2*l);return n=s(u+h*l,h),c&&n.reverse(),i=h*(1-a),e={t:\"rangeBands\",a:arguments},o},o.rangeRoundBands=function(r,a,l){arguments.length<2&&(a=0),arguments.length<3&&(l=a);var c=r[1]<r[0],u=r[c-0],h=r[1-c],f=Math.floor((h-u)/(t.length-a+2*l));return n=s(u+Math.round((h-u-(t.length-a)*f)/2),f),c&&n.reverse(),i=Math.round(f*(1-a)),e={t:\"rangeRoundBands\",a:arguments},o},o.rangeBand=function(){return i},o.rangeExtent=function(){return Vn(e.a[0])},o.copy=function(){return ii(t,e)},o.domain(t)}a.scale.pow=function(){return ri(a.scale.linear(),1,[0,1])},a.scale.sqrt=function(){return a.scale.pow().exponent(.5)},a.scale.ordinal=function(){return ii([],{t:\"range\",a:[[]]})},a.scale.category10=function(){return a.scale.ordinal().range(ai)},a.scale.category20=function(){return a.scale.ordinal().range(oi)},a.scale.category20b=function(){return a.scale.ordinal().range(si)},a.scale.category20c=function(){return a.scale.ordinal().range(li)};var ai=[2062260,16744206,2924588,14034728,9725885,9197131,14907330,8355711,12369186,1556175].map(se),oi=[2062260,11454440,16744206,16759672,2924588,10018698,14034728,16750742,9725885,12955861,9197131,12885140,14907330,16234194,8355711,13092807,12369186,14408589,1556175,10410725].map(se),si=[3750777,5395619,7040719,10264286,6519097,9216594,11915115,13556636,9202993,12426809,15186514,15190932,8666169,11356490,14049643,15177372,8077683,10834324,13528509,14589654].map(se),li=[3244733,7057110,10406625,13032431,15095053,16616764,16625259,16634018,3253076,7652470,10607003,13101504,7695281,10394312,12369372,14342891,6513507,9868950,12434877,14277081].map(se);function ci(t,e){var r;function n(){var n=0,o=e.length;for(r=[];++n<o;)r[n-1]=a.quantile(t,n/o);return i}function i(t){if(!isNaN(t=+t))return e[a.bisect(r,t)]}return i.domain=function(e){return arguments.length?(t=e.map(y).filter(v).sort(g),n()):t},i.range=function(t){return arguments.length?(e=t,n()):e},i.quantiles=function(){return r},i.invertExtent=function(n){return(n=e.indexOf(n))<0?[NaN,NaN]:[n>0?r[n-1]:t[0],n<r.length?r[n]:t[t.length-1]]},i.copy=function(){return ci(t,e)},n()}function ui(t,e,r){var n,i;function a(e){return r[Math.max(0,Math.min(i,Math.floor(n*(e-t))))]}function o(){return n=r.length/(e-t),i=r.length-1,a}return a.domain=function(r){return arguments.length?(t=+r[0],e=+r[r.length-1],o()):[t,e]},a.range=function(t){return arguments.length?(r=t,o()):r},a.invertExtent=function(e){return[e=(e=r.indexOf(e))<0?NaN:e/n+t,e+1/n]},a.copy=function(){return ui(t,e,r)},o()}function hi(t,e){function r(r){if(r<=r)return e[a.bisect(t,r)]}return r.domain=function(e){return arguments.length?(t=e,r):t},r.range=function(t){return arguments.length?(e=t,r):e},r.invertExtent=function(r){return r=e.indexOf(r),[t[r-1],t[r]]},r.copy=function(){return hi(t,e)},r}function fi(t){function e(t){return+t}return e.invert=e,e.domain=e.range=function(r){return arguments.length?(t=r.map(e),e):t},e.ticks=function(e){return Qn(t,e)},e.tickFormat=function(e,r){return d3_scale_linearTickFormat(t,e,r)},e.copy=function(){return fi(t)},e}function pi(){return 0}a.scale.quantile=function(){return ci([],[])},a.scale.quantize=function(){return ui(0,1,[0,1])},a.scale.threshold=function(){return hi([.5],[0,1])},a.scale.identity=function(){return fi([0,1])},a.svg={},a.svg.arc=function(){var t=mi,e=gi,r=pi,n=di,i=yi,a=vi,o=xi;function s(){var s=Math.max(0,+t.apply(this,arguments)),c=Math.max(0,+e.apply(this,arguments)),u=i.apply(this,arguments)-zt,h=a.apply(this,arguments)-zt,f=Math.abs(h-u),p=u>h?0:1;if(c<s&&(d=c,c=s,s=d),f>=Pt)return l(c,p)+(s?l(s,1-p):\"\")+\"Z\";var d,m,g,y,v,x,_,b,w,T,k,A,M=0,S=0,E=[];if((y=(+o.apply(this,arguments)||0)/2)&&(g=n===di?Math.sqrt(s*s+c*c):+n.apply(this,arguments),p||(S*=-1),c&&(S=Rt(g/c*Math.sin(y))),s&&(M=Rt(g/s*Math.sin(y)))),c){v=c*Math.cos(u+S),x=c*Math.sin(u+S),_=c*Math.cos(h-S),b=c*Math.sin(h-S);var C=Math.abs(h-u-2*S)<=Lt?0:1;if(S&&_i(v,x,_,b)===p^C){var L=(u+h)/2;v=c*Math.cos(L),x=c*Math.sin(L),_=b=null}}else v=x=0;if(s){w=s*Math.cos(h-M),T=s*Math.sin(h-M),k=s*Math.cos(u+M),A=s*Math.sin(u+M);var I=Math.abs(u-h+2*M)<=Lt?0:1;if(M&&_i(w,T,k,A)===1-p^I){var P=(u+h)/2;w=s*Math.cos(P),T=s*Math.sin(P),k=A=null}}else w=T=0;if(f>Et&&(d=Math.min(Math.abs(c-s)/2,+r.apply(this,arguments)))>.001){m=s<c^p?0:1;var z=d,O=d;if(f<Lt){var D=null==k?[w,T]:null==_?[v,x]:Oe([v,x],[k,A],[_,b],[w,T]),R=v-D[0],F=x-D[1],B=_-D[0],N=b-D[1],j=1/Math.sin(Math.acos((R*B+F*N)/(Math.sqrt(R*R+F*F)*Math.sqrt(B*B+N*N)))/2),U=Math.sqrt(D[0]*D[0]+D[1]*D[1]);O=Math.min(d,(s-U)/(j-1)),z=Math.min(d,(c-U)/(j+1))}if(null!=_){var V=bi(null==k?[w,T]:[k,A],[v,x],c,z,p),q=bi([_,b],[w,T],c,z,p);d===z?E.push(\"M\",V[0],\"A\",z,\",\",z,\" 0 0,\",m,\" \",V[1],\"A\",c,\",\",c,\" 0 \",1-p^_i(V[1][0],V[1][1],q[1][0],q[1][1]),\",\",p,\" \",q[1],\"A\",z,\",\",z,\" 0 0,\",m,\" \",q[0]):E.push(\"M\",V[0],\"A\",z,\",\",z,\" 0 1,\",m,\" \",q[0])}else E.push(\"M\",v,\",\",x);if(null!=k){var H=bi([v,x],[k,A],s,-O,p),G=bi([w,T],null==_?[v,x]:[_,b],s,-O,p);d===O?E.push(\"L\",G[0],\"A\",O,\",\",O,\" 0 0,\",m,\" \",G[1],\"A\",s,\",\",s,\" 0 \",p^_i(G[1][0],G[1][1],H[1][0],H[1][1]),\",\",1-p,\" \",H[1],\"A\",O,\",\",O,\" 0 0,\",m,\" \",H[0]):E.push(\"L\",G[0],\"A\",O,\",\",O,\" 0 0,\",m,\" \",H[0])}else E.push(\"L\",w,\",\",T)}else E.push(\"M\",v,\",\",x),null!=_&&E.push(\"A\",c,\",\",c,\" 0 \",C,\",\",p,\" \",_,\",\",b),E.push(\"L\",w,\",\",T),null!=k&&E.push(\"A\",s,\",\",s,\" 0 \",I,\",\",1-p,\" \",k,\",\",A);return E.push(\"Z\"),E.join(\"\")}function l(t,e){return\"M0,\"+t+\"A\"+t+\",\"+t+\" 0 1,\"+e+\" 0,\"+-t+\"A\"+t+\",\"+t+\" 0 1,\"+e+\" 0,\"+t}return s.innerRadius=function(e){return arguments.length?(t=ge(e),s):t},s.outerRadius=function(t){return arguments.length?(e=ge(t),s):e},s.cornerRadius=function(t){return arguments.length?(r=ge(t),s):r},s.padRadius=function(t){return arguments.length?(n=t==di?di:ge(t),s):n},s.startAngle=function(t){return arguments.length?(i=ge(t),s):i},s.endAngle=function(t){return arguments.length?(a=ge(t),s):a},s.padAngle=function(t){return arguments.length?(o=ge(t),s):o},s.centroid=function(){var r=(+t.apply(this,arguments)+ +e.apply(this,arguments))/2,n=(+i.apply(this,arguments)+ +a.apply(this,arguments))/2-zt;return[Math.cos(n)*r,Math.sin(n)*r]},s};var di=\"auto\";function mi(t){return t.innerRadius}function gi(t){return t.outerRadius}function yi(t){return t.startAngle}function vi(t){return t.endAngle}function xi(t){return t&&t.padAngle}function _i(t,e,r,n){return(t-r)*e-(e-n)*t>0?0:1}function bi(t,e,r,n,i){var a=t[0]-e[0],o=t[1]-e[1],s=(i?n:-n)/Math.sqrt(a*a+o*o),l=s*o,c=-s*a,u=t[0]+l,h=t[1]+c,f=e[0]+l,p=e[1]+c,d=(u+f)/2,m=(h+p)/2,g=f-u,y=p-h,v=g*g+y*y,x=r-n,_=u*p-f*h,b=(y<0?-1:1)*Math.sqrt(Math.max(0,x*x*v-_*_)),w=(_*y-g*b)/v,T=(-_*g-y*b)/v,k=(_*y+g*b)/v,A=(-_*g+y*b)/v,M=w-d,S=T-m,E=k-d,C=A-m;return M*M+S*S>E*E+C*C&&(w=k,T=A),[[w-l,T-c],[w*r/x,T*r/x]]}function wi(){return!0}function Ti(t){var e=Ee,r=Ce,n=wi,i=Ai,a=i.key,o=.7;function s(a){var s,l=[],c=[],u=-1,h=a.length,f=ge(e),p=ge(r);function d(){l.push(\"M\",i(t(c),o))}for(;++u<h;)n.call(this,s=a[u],u)?c.push([+f.call(this,s,u),+p.call(this,s,u)]):c.length&&(d(),c=[]);return c.length&&d(),l.length?l.join(\"\"):null}return s.x=function(t){return arguments.length?(e=t,s):e},s.y=function(t){return arguments.length?(r=t,s):r},s.defined=function(t){return arguments.length?(n=t,s):n},s.interpolate=function(t){return arguments.length?(a=\"function\"==typeof t?i=t:(i=ki.get(t)||Ai).key,s):a},s.tension=function(t){return arguments.length?(o=t,s):o},s}a.svg.line=function(){return Ti(D)};var ki=a.map({linear:Ai,\"linear-closed\":Mi,step:function(t){for(var e=0,r=t.length,n=t[0],i=[n[0],\",\",n[1]];++e<r;)i.push(\"H\",(n[0]+(n=t[e])[0])/2,\"V\",n[1]);return r>1&&i.push(\"H\",n[0]),i.join(\"\")},\"step-before\":Si,\"step-after\":Ei,basis:Ii,\"basis-open\":function(t){if(t.length<4)return Ai(t);for(var e,r=[],n=-1,i=t.length,a=[0],o=[0];++n<3;)e=t[n],a.push(e[0]),o.push(e[1]);for(r.push(Pi(Di,a)+\",\"+Pi(Di,o)),--n;++n<i;)e=t[n],a.shift(),a.push(e[0]),o.shift(),o.push(e[1]),Ri(r,a,o);return r.join(\"\")},\"basis-closed\":function(t){for(var e,r,n=-1,i=t.length,a=i+4,o=[],s=[];++n<4;)r=t[n%i],o.push(r[0]),s.push(r[1]);for(e=[Pi(Di,o),\",\",Pi(Di,s)],--n;++n<a;)r=t[n%i],o.shift(),o.push(r[0]),s.shift(),s.push(r[1]),Ri(e,o,s);return e.join(\"\")},bundle:function(t,e){var r=t.length-1;if(r)for(var n,i,a=t[0][0],o=t[0][1],s=t[r][0]-a,l=t[r][1]-o,c=-1;++c<=r;)i=c/r,(n=t[c])[0]=e*n[0]+(1-e)*(a+i*s),n[1]=e*n[1]+(1-e)*(o+i*l);return Ii(t)},cardinal:function(t,e){return t.length<3?Ai(t):t[0]+Ci(t,Li(t,e))},\"cardinal-open\":function(t,e){return t.length<4?Ai(t):t[1]+Ci(t.slice(1,-1),Li(t,e))},\"cardinal-closed\":function(t,e){return t.length<3?Mi(t):t[0]+Ci((t.push(t[0]),t),Li([t[t.length-2]].concat(t,[t[1]]),e))},monotone:function(t){return t.length<3?Ai(t):t[0]+Ci(t,function(t){for(var e,r,n,i,a=[],o=function(t){for(var e=0,r=t.length-1,n=[],i=t[0],a=t[1],o=n[0]=Fi(i,a);++e<r;)n[e]=(o+(o=Fi(i=a,a=t[e+1])))/2;return n[e]=o,n}(t),s=-1,l=t.length-1;++s<l;)e=Fi(t[s],t[s+1]),w(e)<Et?o[s]=o[s+1]=0:(i=(r=o[s]/e)*r+(n=o[s+1]/e)*n)>9&&(i=3*e/Math.sqrt(i),o[s]=i*r,o[s+1]=i*n);for(s=-1;++s<=l;)i=(t[Math.min(l,s+1)][0]-t[Math.max(0,s-1)][0])/(6*(1+o[s]*o[s])),a.push([i||0,o[s]*i||0]);return a}(t))}});function Ai(t){return t.length>1?t.join(\"L\"):t+\"Z\"}function Mi(t){return t.join(\"L\")+\"Z\"}function Si(t){for(var e=0,r=t.length,n=t[0],i=[n[0],\",\",n[1]];++e<r;)i.push(\"V\",(n=t[e])[1],\"H\",n[0]);return i.join(\"\")}function Ei(t){for(var e=0,r=t.length,n=t[0],i=[n[0],\",\",n[1]];++e<r;)i.push(\"H\",(n=t[e])[0],\"V\",n[1]);return i.join(\"\")}function Ci(t,e){if(e.length<1||t.length!=e.length&&t.length!=e.length+2)return Ai(t);var r=t.length!=e.length,n=\"\",i=t[0],a=t[1],o=e[0],s=o,l=1;if(r&&(n+=\"Q\"+(a[0]-2*o[0]/3)+\",\"+(a[1]-2*o[1]/3)+\",\"+a[0]+\",\"+a[1],i=t[1],l=2),e.length>1){s=e[1],a=t[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 c=2;c<e.length;c++,l++)a=t[l],s=e[c],n+=\"S\"+(a[0]-s[0])+\",\"+(a[1]-s[1])+\",\"+a[0]+\",\"+a[1]}if(r){var u=t[l];n+=\"Q\"+(a[0]+2*s[0]/3)+\",\"+(a[1]+2*s[1]/3)+\",\"+u[0]+\",\"+u[1]}return n}function Li(t,e){for(var r,n=[],i=(1-e)/2,a=t[0],o=t[1],s=1,l=t.length;++s<l;)r=a,a=o,o=t[s],n.push([i*(o[0]-r[0]),i*(o[1]-r[1])]);return n}function Ii(t){if(t.length<3)return Ai(t);var e=1,r=t.length,n=t[0],i=n[0],a=n[1],o=[i,i,i,(n=t[1])[0]],s=[a,a,a,n[1]],l=[i,\",\",a,\"L\",Pi(Di,o),\",\",Pi(Di,s)];for(t.push(t[r-1]);++e<=r;)n=t[e],o.shift(),o.push(n[0]),s.shift(),s.push(n[1]),Ri(l,o,s);return t.pop(),l.push(\"L\",n),l.join(\"\")}function Pi(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]+t[3]*e[3]}ki.forEach((function(t,e){e.key=t,e.closed=/-closed$/.test(t)}));var zi=[0,2/3,1/3,0],Oi=[0,1/3,2/3,0],Di=[0,1/6,2/3,1/6];function Ri(t,e,r){t.push(\"C\",Pi(zi,e),\",\",Pi(zi,r),\",\",Pi(Oi,e),\",\",Pi(Oi,r),\",\",Pi(Di,e),\",\",Pi(Di,r))}function Fi(t,e){return(e[1]-t[1])/(e[0]-t[0])}function Bi(t){for(var e,r,n,i=-1,a=t.length;++i<a;)r=(e=t[i])[0],n=e[1]-zt,e[0]=r*Math.cos(n),e[1]=r*Math.sin(n);return t}function Ni(t){var e=Ee,r=Ee,n=0,i=Ce,a=wi,o=Ai,s=o.key,l=o,c=\"L\",u=.7;function h(s){var h,f,p,d=[],m=[],g=[],y=-1,v=s.length,x=ge(e),_=ge(n),b=e===r?function(){return f}:ge(r),w=n===i?function(){return p}:ge(i);function T(){d.push(\"M\",o(t(g),u),c,l(t(m.reverse()),u),\"Z\")}for(;++y<v;)a.call(this,h=s[y],y)?(m.push([f=+x.call(this,h,y),p=+_.call(this,h,y)]),g.push([+b.call(this,h,y),+w.call(this,h,y)])):m.length&&(T(),m=[],g=[]);return m.length&&T(),d.length?d.join(\"\"):null}return h.x=function(t){return arguments.length?(e=r=t,h):r},h.x0=function(t){return arguments.length?(e=t,h):e},h.x1=function(t){return arguments.length?(r=t,h):r},h.y=function(t){return arguments.length?(n=i=t,h):i},h.y0=function(t){return arguments.length?(n=t,h):n},h.y1=function(t){return arguments.length?(i=t,h):i},h.defined=function(t){return arguments.length?(a=t,h):a},h.interpolate=function(t){return arguments.length?(s=\"function\"==typeof t?o=t:(o=ki.get(t)||Ai).key,l=o.reverse||o,c=o.closed?\"M\":\"L\",h):s},h.tension=function(t){return arguments.length?(u=t,h):u},h}function ji(t){return t.source}function Ui(t){return t.target}function Vi(t){return t.radius}function qi(t){return[t.x,t.y]}function Hi(){return 64}function Gi(){return\"circle\"}function Zi(t){var e=Math.sqrt(t/Lt);return\"M0,\"+e+\"A\"+e+\",\"+e+\" 0 1,1 0,\"+-e+\"A\"+e+\",\"+e+\" 0 1,1 0,\"+e+\"Z\"}a.svg.line.radial=function(){var t=Ti(Bi);return t.radius=t.x,delete t.x,t.angle=t.y,delete t.y,t},Si.reverse=Ei,Ei.reverse=Si,a.svg.area=function(){return Ni(D)},a.svg.area.radial=function(){var t=Ni(Bi);return t.radius=t.x,delete t.x,t.innerRadius=t.x0,delete t.x0,t.outerRadius=t.x1,delete t.x1,t.angle=t.y,delete t.y,t.startAngle=t.y0,delete t.y0,t.endAngle=t.y1,delete t.y1,t},a.svg.chord=function(){var t=ji,e=Ui,r=Vi,n=yi,i=vi;function a(r,n){var i,a,c=o(this,t,r,n),u=o(this,e,r,n);return\"M\"+c.p0+s(c.r,c.p1,c.a1-c.a0)+(a=u,((i=c).a0==a.a0&&i.a1==a.a1?l(c.r,c.p1,c.r,c.p0):l(c.r,c.p1,u.r,u.p0)+s(u.r,u.p1,u.a1-u.a0)+l(u.r,u.p1,c.r,c.p0))+\"Z\")}function o(t,e,a,o){var s=e.call(t,a,o),l=r.call(t,s,o),c=n.call(t,s,o)-zt,u=i.call(t,s,o)-zt;return{r:l,a0:c,a1:u,p0:[l*Math.cos(c),l*Math.sin(c)],p1:[l*Math.cos(u),l*Math.sin(u)]}}function s(t,e,r){return\"A\"+t+\",\"+t+\" 0 \"+ +(r>Lt)+\",1 \"+e}function l(t,e,r,n){return\"Q 0,0 \"+n}return a.radius=function(t){return arguments.length?(r=ge(t),a):r},a.source=function(e){return arguments.length?(t=ge(e),a):t},a.target=function(t){return arguments.length?(e=ge(t),a):e},a.startAngle=function(t){return arguments.length?(n=ge(t),a):n},a.endAngle=function(t){return arguments.length?(i=ge(t),a):i},a},a.svg.diagonal=function(){var t=ji,e=Ui,r=qi;function n(n,i){var a=t.call(this,n,i),o=e.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(e){return arguments.length?(t=ge(e),n):t},n.target=function(t){return arguments.length?(e=ge(t),n):e},n.projection=function(t){return arguments.length?(r=t,n):r},n},a.svg.diagonal.radial=function(){var t=a.svg.diagonal(),e=qi,r=t.projection;return t.projection=function(t){return arguments.length?r(function(t){return function(){var e=t.apply(this,arguments),r=e[0],n=e[1]-zt;return[r*Math.cos(n),r*Math.sin(n)]}}(e=t)):e},t},a.svg.symbol=function(){var t=Gi,e=Hi;function r(r,n){return(Wi.get(t.call(this,r,n))||Zi)(e.call(this,r,n))}return r.type=function(e){return arguments.length?(t=ge(e),r):t},r.size=function(t){return arguments.length?(e=ge(t),r):e},r};var Wi=a.map({circle:Zi,cross:function(t){var e=Math.sqrt(t/5)/2;return\"M\"+-3*e+\",\"+-e+\"H\"+-e+\"V\"+-3*e+\"H\"+e+\"V\"+-e+\"H\"+3*e+\"V\"+e+\"H\"+e+\"V\"+3*e+\"H\"+-e+\"V\"+e+\"H\"+-3*e+\"Z\"},diamond:function(t){var e=Math.sqrt(t/(2*Xi)),r=e*Xi;return\"M0,\"+-e+\"L\"+r+\",0 0,\"+e+\" \"+-r+\",0Z\"},square:function(t){var e=Math.sqrt(t)/2;return\"M\"+-e+\",\"+-e+\"L\"+e+\",\"+-e+\" \"+e+\",\"+e+\" \"+-e+\",\"+e+\"Z\"},\"triangle-down\":function(t){var e=Math.sqrt(t/Yi),r=e*Yi/2;return\"M0,\"+r+\"L\"+e+\",\"+-r+\" \"+-e+\",\"+-r+\"Z\"},\"triangle-up\":function(t){var e=Math.sqrt(t/Yi),r=e*Yi/2;return\"M0,\"+-r+\"L\"+e+\",\"+r+\" \"+-e+\",\"+r+\"Z\"}});a.svg.symbolTypes=Wi.keys();var Yi=Math.sqrt(3),Xi=Math.tan(30*Ot);J.transition=function(t){for(var e,r,n=Qi||++ra,i=aa(t),a=[],o=ta||{time:Date.now(),ease:Pr,delay:0,duration:250},s=-1,l=this.length;++s<l;){a.push(e=[]);for(var c=this[s],u=-1,h=c.length;++u<h;)(r=c[u])&&oa(r,u,i,n,o),e.push(r)}return Ki(a,i,n)},J.interrupt=function(t){return this.each(null==t?$i:Ji(aa(t)))};var $i=Ji(aa());function Ji(t){return function(){var e,r,n;(e=this[t])&&(n=e[r=e.active])&&(n.timer.c=null,n.timer.t=NaN,--e.count?delete e[r]:delete this[t],e.active+=.5,n.event&&n.event.interrupt.call(this,this.__data__,n.index))}}function Ki(t,e,r){return Z(t,ea),t.namespace=e,t.id=r,t}var Qi,ta,ea=[],ra=0;function na(t,e,r,n){var i=t.id,a=t.namespace;return mt(t,\"function\"==typeof r?function(t,o,s){t[a][i].tween.set(e,n(r.call(t,t.__data__,o,s)))}:(r=n(r),function(t){t[a][i].tween.set(e,r)}))}function ia(t){return null==t&&(t=\"\"),function(){this.textContent=t}}function aa(t){return null==t?\"__transition__\":\"__transition_\"+t+\"__\"}function oa(t,e,r,n,i){var a,o,s,l,c,u=t[r]||(t[r]={active:0,count:0}),h=u[n];function f(r){var i=u.active,f=u[i];for(var d in f&&(f.timer.c=null,f.timer.t=NaN,--u.count,delete u[i],f.event&&f.event.interrupt.call(t,t.__data__,f.index)),u)if(+d<n){var m=u[d];m.timer.c=null,m.timer.t=NaN,--u.count,delete u[d]}o.c=p,ke((function(){return o.c&&p(r||1)&&(o.c=null,o.t=NaN),1}),0,a),u.active=n,h.event&&h.event.start.call(t,t.__data__,e),c=[],h.tween.forEach((function(r,n){(n=n.call(t,t.__data__,e))&&c.push(n)})),l=h.ease,s=h.duration}function p(i){for(var a=i/s,o=l(a),f=c.length;f>0;)c[--f].call(t,o);if(a>=1)return h.event&&h.event.end.call(t,t.__data__,e),--u.count?delete u[n]:delete t[r],1}h||(a=i.time,o=ke((function(t){var e=h.delay;if(o.t=e+a,e<=t)return f(t-e);o.c=f}),0,a),h=u[n]={tween:new k,time:a,timer:o,delay:i.delay,duration:i.duration,ease:i.ease,index:e},i=null,++u.count)}ea.call=J.call,ea.empty=J.empty,ea.node=J.node,ea.size=J.size,a.transition=function(t,e){return t&&t.transition?Qi?t.transition(e):t:a.selection().transition(t)},a.transition.prototype=ea,ea.select=function(t){var e,r,n,i=this.id,a=this.namespace,o=[];t=K(t);for(var s=-1,l=this.length;++s<l;){o.push(e=[]);for(var c=this[s],u=-1,h=c.length;++u<h;)(n=c[u])&&(r=t.call(n,n.__data__,u,s))?(\"__data__\"in n&&(r.__data__=n.__data__),oa(r,u,a,i,n[a][i]),e.push(r)):e.push(null)}return Ki(o,a,i)},ea.selectAll=function(t){var e,r,n,i,a,o=this.id,s=this.namespace,l=[];t=Q(t);for(var c=-1,u=this.length;++c<u;)for(var h=this[c],f=-1,p=h.length;++f<p;)if(n=h[f]){a=n[s][o],r=t.call(n,n.__data__,f,c),l.push(e=[]);for(var d=-1,m=r.length;++d<m;)(i=r[d])&&oa(i,d,s,o,a),e.push(i)}return Ki(l,s,o)},ea.filter=function(t){var e,r,n=[];\"function\"!=typeof t&&(t=pt(t));for(var i=0,a=this.length;i<a;i++){n.push(e=[]);for(var o,s=0,l=(o=this[i]).length;s<l;s++)(r=o[s])&&t.call(r,r.__data__,s,i)&&e.push(r)}return Ki(n,this.namespace,this.id)},ea.tween=function(t,e){var r=this.id,n=this.namespace;return arguments.length<2?this.node()[n][r].tween.get(t):mt(this,null==e?function(e){e[n][r].tween.remove(t)}:function(i){i[n][r].tween.set(t,e)})},ea.attr=function(t,e){if(arguments.length<2){for(e in t)this.attr(e,t[e]);return this}var r=\"transform\"==t?qr:Tr,n=a.ns.qualify(t);function i(){this.removeAttribute(n)}function o(){this.removeAttributeNS(n.space,n.local)}return na(this,\"attr.\"+t,e,n.local?function(t){return null==t?o:(t+=\"\",function(){var e,i=this.getAttributeNS(n.space,n.local);return i!==t&&(e=r(i,t),function(t){this.setAttributeNS(n.space,n.local,e(t))})})}:function(t){return null==t?i:(t+=\"\",function(){var e,i=this.getAttribute(n);return i!==t&&(e=r(i,t),function(t){this.setAttribute(n,e(t))})})})},ea.attrTween=function(t,e){var r=a.ns.qualify(t);return this.tween(\"attr.\"+t,r.local?function(t,n){var i=e.call(this,t,n,this.getAttributeNS(r.space,r.local));return i&&function(t){this.setAttributeNS(r.space,r.local,i(t))}}:function(t,n){var i=e.call(this,t,n,this.getAttribute(r));return i&&function(t){this.setAttribute(r,i(t))}})},ea.style=function(t,e,r){var n=arguments.length;if(n<3){if(\"string\"!=typeof t){for(r in n<2&&(e=\"\"),t)this.style(r,t[r],e);return this}r=\"\"}function i(){this.style.removeProperty(t)}return na(this,\"style.\"+t,e,(function(e){return null==e?i:(e+=\"\",function(){var n,i=u(this).getComputedStyle(this,null).getPropertyValue(t);return i!==e&&(n=Tr(i,e),function(e){this.style.setProperty(t,n(e),r)})})}))},ea.styleTween=function(t,e,r){return arguments.length<3&&(r=\"\"),this.tween(\"style.\"+t,(function(n,i){var a=e.call(this,n,i,u(this).getComputedStyle(this,null).getPropertyValue(t));return a&&function(e){this.style.setProperty(t,a(e),r)}}))},ea.text=function(t){return na(this,\"text\",t,ia)},ea.remove=function(){var t=this.namespace;return this.each(\"end.transition\",(function(){var e;this[t].count<2&&(e=this.parentNode)&&e.removeChild(this)}))},ea.ease=function(t){var e=this.id,r=this.namespace;return arguments.length<1?this.node()[r][e].ease:(\"function\"!=typeof t&&(t=a.ease.apply(a,arguments)),mt(this,(function(n){n[r][e].ease=t})))},ea.delay=function(t){var e=this.id,r=this.namespace;return arguments.length<1?this.node()[r][e].delay:mt(this,\"function\"==typeof t?function(n,i,a){n[r][e].delay=+t.call(n,n.__data__,i,a)}:(t=+t,function(n){n[r][e].delay=t}))},ea.duration=function(t){var e=this.id,r=this.namespace;return arguments.length<1?this.node()[r][e].duration:mt(this,\"function\"==typeof t?function(n,i,a){n[r][e].duration=Math.max(1,t.call(n,n.__data__,i,a))}:(t=Math.max(1,t),function(n){n[r][e].duration=t}))},ea.each=function(t,e){var r=this.id,n=this.namespace;if(arguments.length<2){var i=ta,o=Qi;try{Qi=r,mt(this,(function(e,i,a){ta=e[n][r],t.call(e,e.__data__,i,a)}))}finally{ta=i,Qi=o}}else mt(this,(function(i){var o=i[n][r];(o.event||(o.event=a.dispatch(\"start\",\"end\",\"interrupt\"))).on(t,e)}));return this},ea.transition=function(){for(var t,e,r,n=this.id,i=++ra,a=this.namespace,o=[],s=0,l=this.length;s<l;s++){o.push(t=[]);for(var c,u=0,h=(c=this[s]).length;u<h;u++)(e=c[u])&&oa(e,u,a,i,{time:(r=e[a][n]).time,ease:r.ease,delay:r.delay+r.duration,duration:r.duration}),t.push(e)}return Ki(o,a,i)},a.svg.axis=function(){var t,e=a.scale.linear(),r=sa,n=6,i=6,o=3,l=[10],c=null;function u(s){s.each((function(){var s,u=a.select(this),h=this.__chart__||e,f=this.__chart__=e.copy(),p=null==c?f.ticks?f.ticks.apply(f,l):f.domain():c,d=null==t?f.tickFormat?f.tickFormat.apply(f,l):D:t,m=u.selectAll(\".tick\").data(p,f),g=m.enter().insert(\"g\",\".domain\").attr(\"class\",\"tick\").style(\"opacity\",Et),y=a.transition(m.exit()).style(\"opacity\",Et).remove(),v=a.transition(m.order()).style(\"opacity\",1),x=Math.max(n,0)+o,_=qn(f),b=u.selectAll(\".domain\").data([0]),w=(b.enter().append(\"path\").attr(\"class\",\"domain\"),a.transition(b));g.append(\"line\"),g.append(\"text\");var T,k,A,M,S=g.select(\"line\"),E=v.select(\"line\"),C=m.select(\"text\").text(d),L=g.select(\"text\"),I=v.select(\"text\"),P=\"top\"===r||\"left\"===r?-1:1;if(\"bottom\"===r||\"top\"===r?(s=ca,T=\"x\",A=\"y\",k=\"x2\",M=\"y2\",C.attr(\"dy\",P<0?\"0em\":\".71em\").style(\"text-anchor\",\"middle\"),w.attr(\"d\",\"M\"+_[0]+\",\"+P*i+\"V0H\"+_[1]+\"V\"+P*i)):(s=ua,T=\"y\",A=\"x\",k=\"y2\",M=\"x2\",C.attr(\"dy\",\".32em\").style(\"text-anchor\",P<0?\"end\":\"start\"),w.attr(\"d\",\"M\"+P*i+\",\"+_[0]+\"H0V\"+_[1]+\"H\"+P*i)),S.attr(M,P*n),L.attr(A,P*x),E.attr(k,0).attr(M,P*n),I.attr(T,0).attr(A,P*x),f.rangeBand){var z=f,O=z.rangeBand()/2;h=f=function(t){return z(t)+O}}else h.rangeBand?h=f:y.call(s,f,h);g.call(s,h,f),v.call(s,f,f)}))}return u.scale=function(t){return arguments.length?(e=t,u):e},u.orient=function(t){return arguments.length?(r=t in la?t+\"\":sa,u):r},u.ticks=function(){return arguments.length?(l=s(arguments),u):l},u.tickValues=function(t){return arguments.length?(c=t,u):c},u.tickFormat=function(e){return arguments.length?(t=e,u):t},u.tickSize=function(t){var e=arguments.length;return e?(n=+t,i=+arguments[e-1],u):n},u.innerTickSize=function(t){return arguments.length?(n=+t,u):n},u.outerTickSize=function(t){return arguments.length?(i=+t,u):i},u.tickPadding=function(t){return arguments.length?(o=+t,u):o},u.tickSubdivide=function(){return arguments.length&&u},u};var sa=\"bottom\",la={top:1,right:1,bottom:1,left:1};function ca(t,e,r){t.attr(\"transform\",(function(t){var n=e(t);return\"translate(\"+(isFinite(n)?n:r(t))+\",0)\"}))}function ua(t,e,r){t.attr(\"transform\",(function(t){var n=e(t);return\"translate(0,\"+(isFinite(n)?n:r(t))+\")\"}))}a.svg.brush=function(){var t,e,r=H(f,\"brushstart\",\"brush\",\"brushend\"),n=null,i=null,o=[0,0],s=[0,0],l=!0,c=!0,h=fa[0];function f(t){t.each((function(){var t=a.select(this).style(\"pointer-events\",\"all\").style(\"-webkit-tap-highlight-color\",\"rgba(0,0,0,0)\").on(\"mousedown.brush\",g).on(\"touchstart.brush\",g),e=t.selectAll(\".background\").data([0]);e.enter().append(\"rect\").attr(\"class\",\"background\").style(\"visibility\",\"hidden\").style(\"cursor\",\"crosshair\"),t.selectAll(\".extent\").data([0]).enter().append(\"rect\").attr(\"class\",\"extent\").style(\"cursor\",\"move\");var r=t.selectAll(\".resize\").data(h,D);r.exit().remove(),r.enter().append(\"g\").attr(\"class\",(function(t){return\"resize \"+t})).style(\"cursor\",(function(t){return ha[t]})).append(\"rect\").attr(\"x\",(function(t){return/[ew]$/.test(t)?-3:null})).attr(\"y\",(function(t){return/^[ns]/.test(t)?-3:null})).attr(\"width\",6).attr(\"height\",6).style(\"visibility\",\"hidden\"),r.style(\"display\",f.empty()?\"none\":null);var o,s=a.transition(t),l=a.transition(e);n&&(o=qn(n),l.attr(\"x\",o[0]).attr(\"width\",o[1]-o[0]),d(s)),i&&(o=qn(i),l.attr(\"y\",o[0]).attr(\"height\",o[1]-o[0]),m(s)),p(s)}))}function p(t){t.selectAll(\".resize\").attr(\"transform\",(function(t){return\"translate(\"+o[+/e$/.test(t)]+\",\"+s[+/^s/.test(t)]+\")\"}))}function d(t){t.select(\".extent\").attr(\"x\",o[0]),t.selectAll(\".extent,.n>rect,.s>rect\").attr(\"width\",o[1]-o[0])}function m(t){t.select(\".extent\").attr(\"y\",s[0]),t.selectAll(\".extent,.e>rect,.w>rect\").attr(\"height\",s[1]-s[0])}function g(){var h,g,y=this,v=a.select(a.event.target),x=r.of(y,arguments),_=a.select(y),b=v.datum(),w=!/^(n|s)$/.test(b)&&n,T=!/^(e|w)$/.test(b)&&i,k=v.classed(\"extent\"),A=kt(y),M=a.mouse(y),S=a.select(u(y)).on(\"keydown.brush\",(function(){32==a.event.keyCode&&(k||(h=null,M[0]-=o[1],M[1]-=s[1],k=2),V())})).on(\"keyup.brush\",(function(){32==a.event.keyCode&&2==k&&(M[0]+=o[1],M[1]+=s[1],k=0,V())}));if(a.event.changedTouches?S.on(\"touchmove.brush\",L).on(\"touchend.brush\",P):S.on(\"mousemove.brush\",L).on(\"mouseup.brush\",P),_.interrupt().selectAll(\"*\").interrupt(),k)M[0]=o[0]-M[0],M[1]=s[0]-M[1];else if(b){var E=+/w$/.test(b),C=+/^n/.test(b);g=[o[1-E]-M[0],s[1-C]-M[1]],M[0]=o[E],M[1]=s[C]}else a.event.altKey&&(h=M.slice());function L(){var t=a.mouse(y),e=!1;g&&(t[0]+=g[0],t[1]+=g[1]),k||(a.event.altKey?(h||(h=[(o[0]+o[1])/2,(s[0]+s[1])/2]),M[0]=o[+(t[0]<h[0])],M[1]=s[+(t[1]<h[1])]):h=null),w&&I(t,n,0)&&(d(_),e=!0),T&&I(t,i,1)&&(m(_),e=!0),e&&(p(_),x({type:\"brush\",mode:k?\"move\":\"resize\"}))}function I(r,n,i){var a,u,f=qn(n),p=f[0],d=f[1],m=M[i],g=i?s:o,y=g[1]-g[0];if(k&&(p-=m,d-=y+m),a=(i?c:l)?Math.max(p,Math.min(d,r[i])):r[i],k?u=(a+=m)+y:(h&&(m=Math.max(p,Math.min(d,2*h[i]-a))),m<a?(u=a,a=m):u=m),g[0]!=a||g[1]!=u)return i?e=null:t=null,g[0]=a,g[1]=u,!0}function P(){L(),_.style(\"pointer-events\",\"all\").selectAll(\".resize\").style(\"display\",f.empty()?\"none\":null),a.select(\"body\").style(\"cursor\",null),S.on(\"mousemove.brush\",null).on(\"mouseup.brush\",null).on(\"touchmove.brush\",null).on(\"touchend.brush\",null).on(\"keydown.brush\",null).on(\"keyup.brush\",null),A(),x({type:\"brushend\"})}_.style(\"pointer-events\",\"none\").selectAll(\".resize\").style(\"display\",null),a.select(\"body\").style(\"cursor\",v.style(\"cursor\")),x({type:\"brushstart\"}),L()}return f.event=function(n){n.each((function(){var n=r.of(this,arguments),i={x:o,y:s,i:t,j:e},l=this.__chart__||i;this.__chart__=i,Qi?a.select(this).transition().each(\"start.brush\",(function(){t=l.i,e=l.j,o=l.x,s=l.y,n({type:\"brushstart\"})})).tween(\"brush:brush\",(function(){var r=kr(o,i.x),a=kr(s,i.y);return t=e=null,function(t){o=i.x=r(t),s=i.y=a(t),n({type:\"brush\",mode:\"resize\"})}})).each(\"end.brush\",(function(){t=i.i,e=i.j,n({type:\"brush\",mode:\"resize\"}),n({type:\"brushend\"})})):(n({type:\"brushstart\"}),n({type:\"brush\",mode:\"resize\"}),n({type:\"brushend\"}))}))},f.x=function(t){return arguments.length?(h=fa[!(n=t)<<1|!i],f):n},f.y=function(t){return arguments.length?(h=fa[!n<<1|!(i=t)],f):i},f.clamp=function(t){return arguments.length?(n&&i?(l=!!t[0],c=!!t[1]):n?l=!!t:i&&(c=!!t),f):n&&i?[l,c]:n?l:i?c:null},f.extent=function(r){var a,l,c,u,h;return arguments.length?(n&&(a=r[0],l=r[1],i&&(a=a[0],l=l[0]),t=[a,l],n.invert&&(a=n(a),l=n(l)),l<a&&(h=a,a=l,l=h),a==o[0]&&l==o[1]||(o=[a,l])),i&&(c=r[0],u=r[1],n&&(c=c[1],u=u[1]),e=[c,u],i.invert&&(c=i(c),u=i(u)),u<c&&(h=c,c=u,u=h),c==s[0]&&u==s[1]||(s=[c,u])),f):(n&&(t?(a=t[0],l=t[1]):(a=o[0],l=o[1],n.invert&&(a=n.invert(a),l=n.invert(l)),l<a&&(h=a,a=l,l=h))),i&&(e?(c=e[0],u=e[1]):(c=s[0],u=s[1],i.invert&&(c=i.invert(c),u=i.invert(u)),u<c&&(h=c,c=u,u=h))),n&&i?[[a,c],[l,u]]:n?[a,l]:i&&[c,u])},f.clear=function(){return f.empty()||(o=[0,0],s=[0,0],t=e=null),f},f.empty=function(){return!!n&&o[0]==o[1]||!!i&&s[0]==s[1]},a.rebind(f,r,\"on\")};var ha={n:\"ns-resize\",e:\"ew-resize\",s:\"ns-resize\",w:\"ew-resize\",nw:\"nwse-resize\",ne:\"nesw-resize\",se:\"nwse-resize\",sw:\"nesw-resize\"},fa=[[\"n\",\"e\",\"s\",\"w\",\"nw\",\"ne\",\"se\",\"sw\"],[\"e\",\"w\"],[\"n\",\"s\"],[]];function pa(t){return JSON.parse(t.responseText)}function da(t){var e=l.createRange();return e.selectNode(l.body),e.createContextualFragment(t.responseText)}a.text=ye((function(t){return t.responseText})),a.json=function(t,e){return ve(t,\"application/json\",pa,e)},a.html=function(t,e){return ve(t,\"text/html\",da,e)},a.xml=ye((function(t){return t.responseXML})),void 0===(i=\"function\"==typeof(n=a)?n.call(e,r,e,t):n)||(t.exports=i)}).apply(self)},32280:function(t){t.exports=function(){\"use strict\";var t,e,r;function n(n,i){if(t)if(e){var a=\"var sharedChunk = {}; (\"+t+\")(sharedChunk); (\"+e+\")(sharedChunk);\",o={};t(o),r=i(o),\"undefined\"!=typeof window&&(r.workerUrl=window.URL.createObjectURL(new Blob([a],{type:\"text/javascript\"})))}else e=i;else t=i}return n(0,(function(t){function e(t,e){return t(e={exports:{}},e.exports),e.exports}var r=\"1.13.4\",n=i;function i(t,e,r,n){this.cx=3*t,this.bx=3*(r-t)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*e,this.by=3*(n-e)-this.cy,this.ay=1-this.cy-this.by,this.p1x=t,this.p1y=n,this.p2x=r,this.p2y=n}i.prototype.sampleCurveX=function(t){return((this.ax*t+this.bx)*t+this.cx)*t},i.prototype.sampleCurveY=function(t){return((this.ay*t+this.by)*t+this.cy)*t},i.prototype.sampleCurveDerivativeX=function(t){return(3*this.ax*t+2*this.bx)*t+this.cx},i.prototype.solveCurveX=function(t,e){var r,n,i,a,o;for(void 0===e&&(e=1e-6),i=t,o=0;o<8;o++){if(a=this.sampleCurveX(i)-t,Math.abs(a)<e)return i;var s=this.sampleCurveDerivativeX(i);if(Math.abs(s)<1e-6)break;i-=a/s}if((i=t)<(r=0))return r;if(i>(n=1))return n;for(;r<n;){if(a=this.sampleCurveX(i),Math.abs(a-t)<e)return i;t>a?r=i:n=i,i=.5*(n-r)+r}return i},i.prototype.solve=function(t,e){return this.sampleCurveY(this.solveCurveX(t,e))};var a=o;function o(t,e){this.x=t,this.y=e}o.prototype={clone:function(){return new o(this.x,this.y)},add:function(t){return this.clone()._add(t)},sub:function(t){return this.clone()._sub(t)},multByPoint:function(t){return this.clone()._multByPoint(t)},divByPoint:function(t){return this.clone()._divByPoint(t)},mult:function(t){return this.clone()._mult(t)},div:function(t){return this.clone()._div(t)},rotate:function(t){return this.clone()._rotate(t)},rotateAround:function(t,e){return this.clone()._rotateAround(t,e)},matMult:function(t){return this.clone()._matMult(t)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(t){return this.x===t.x&&this.y===t.y},dist:function(t){return Math.sqrt(this.distSqr(t))},distSqr:function(t){var e=t.x-this.x,r=t.y-this.y;return e*e+r*r},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(t){return Math.atan2(this.y-t.y,this.x-t.x)},angleWith:function(t){return this.angleWithSep(t.x,t.y)},angleWithSep:function(t,e){return Math.atan2(this.x*e-this.y*t,this.x*t+this.y*e)},_matMult:function(t){var e=t[0]*this.x+t[1]*this.y,r=t[2]*this.x+t[3]*this.y;return this.x=e,this.y=r,this},_add:function(t){return this.x+=t.x,this.y+=t.y,this},_sub:function(t){return this.x-=t.x,this.y-=t.y,this},_mult:function(t){return this.x*=t,this.y*=t,this},_div:function(t){return this.x/=t,this.y/=t,this},_multByPoint:function(t){return this.x*=t.x,this.y*=t.y,this},_divByPoint:function(t){return this.x/=t.x,this.y/=t.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var t=this.y;return this.y=this.x,this.x=-t,this},_rotate:function(t){var e=Math.cos(t),r=Math.sin(t),n=e*this.x-r*this.y,i=r*this.x+e*this.y;return this.x=n,this.y=i,this},_rotateAround:function(t,e){var r=Math.cos(t),n=Math.sin(t),i=e.x+r*(this.x-e.x)-n*(this.y-e.y),a=e.y+n*(this.x-e.x)+r*(this.y-e.y);return this.x=i,this.y=a,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},o.convert=function(t){return t instanceof o?t:Array.isArray(t)?new o(t[0],t[1]):t};var s=\"undefined\"!=typeof self?self:{};var l=Math.pow(2,53)-1;function c(t,e,r,i){var a=new n(t,e,r,i);return function(t){return a.solve(t)}}var u=c(.25,.1,.25,1);function h(t,e,r){return Math.min(r,Math.max(e,t))}function f(t,e,r){var n=r-e,i=((t-e)%n+n)%n+e;return i===e?r:i}function p(t){for(var e=[],r=arguments.length-1;r-- >0;)e[r]=arguments[r+1];for(var n=0,i=e;n<i.length;n+=1){var a=i[n];for(var o in a)t[o]=a[o]}return t}var d=1;function m(){return d++}function g(){return function t(e){return e?(e^16*Math.random()>>e/4).toString(16):([1e7]+-[1e3]+-4e3+-8e3+-1e11).replace(/[018]/g,t)}()}function y(t){return!!t&&/^[0-9a-f]{8}-[0-9a-f]{4}-[4][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(t)}function v(t,e){t.forEach((function(t){e[t]&&(e[t]=e[t].bind(e))}))}function x(t,e){return-1!==t.indexOf(e,t.length-e.length)}function _(t,e,r){var n={};for(var i in t)n[i]=e.call(r||this,t[i],i,t);return n}function b(t,e,r){var n={};for(var i in t)e.call(r||this,t[i],i,t)&&(n[i]=t[i]);return n}function w(t){return Array.isArray(t)?t.map(w):\"object\"==typeof t&&t?_(t,w):t}var T={};function k(t){T[t]||(\"undefined\"!=typeof console&&console.warn(t),T[t]=!0)}function A(t,e,r){return(r.y-t.y)*(e.x-t.x)>(e.y-t.y)*(r.x-t.x)}function M(t){for(var e=0,r=0,n=t.length,i=n-1,a=void 0,o=void 0;r<n;i=r++)a=t[r],e+=((o=t[i]).x-a.x)*(a.y+o.y);return e}function S(){return\"undefined\"!=typeof WorkerGlobalScope&&\"undefined\"!=typeof self&&self instanceof WorkerGlobalScope}function E(t){var e={};if(t.replace(/(?:^|(?:\\s*\\,\\s*))([^\\x00-\\x20\\(\\)<>@\\,;\\:\\\\\"\\/\\[\\]\\?\\=\\{\\}\\x7F]+)(?:\\=(?:([^\\x00-\\x20\\(\\)<>@\\,;\\:\\\\\"\\/\\[\\]\\?\\=\\{\\}\\x7F]+)|(?:\\\"((?:[^\"\\\\]|\\\\.)*)\\\")))?/g,(function(t,r,n,i){var a=n||i;return e[r]=!a||a.toLowerCase(),\"\"})),e[\"max-age\"]){var r=parseInt(e[\"max-age\"],10);isNaN(r)?delete e[\"max-age\"]:e[\"max-age\"]=r}return e}var C=null;function L(t){if(null==C){var e=t.navigator?t.navigator.userAgent:null;C=!!t.safari||!(!e||!(/\\b(iPad|iPhone|iPod)\\b/.test(e)||e.match(\"Safari\")&&!e.match(\"Chrome\")))}return C}function I(t){try{var e=s[t];return e.setItem(\"_mapbox_test_\",1),e.removeItem(\"_mapbox_test_\"),!0}catch(t){return!1}}var P,z,O,D,R=s.performance&&s.performance.now?s.performance.now.bind(s.performance):Date.now.bind(Date),F=s.requestAnimationFrame||s.mozRequestAnimationFrame||s.webkitRequestAnimationFrame||s.msRequestAnimationFrame,B=s.cancelAnimationFrame||s.mozCancelAnimationFrame||s.webkitCancelAnimationFrame||s.msCancelAnimationFrame,N={now:R,frame:function(t){var e=F(t);return{cancel:function(){return B(e)}}},getImageData:function(t,e){void 0===e&&(e=0);var r=s.document.createElement(\"canvas\"),n=r.getContext(\"2d\");if(!n)throw new Error(\"failed to create canvas 2d context\");return r.width=t.width,r.height=t.height,n.drawImage(t,0,0,t.width,t.height),n.getImageData(-e,-e,t.width+2*e,t.height+2*e)},resolveURL:function(t){return P||(P=s.document.createElement(\"a\")),P.href=t,P.href},hardwareConcurrency:s.navigator&&s.navigator.hardwareConcurrency||4,get devicePixelRatio(){return s.devicePixelRatio},get prefersReducedMotion(){return!!s.matchMedia&&(null==z&&(z=s.matchMedia(\"(prefers-reduced-motion: reduce)\")),z.matches)}},j={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},U={supported:!1,testSupport:function(t){!V&&D&&(q?H(t):O=t)}},V=!1,q=!1;function H(t){var e=t.createTexture();t.bindTexture(t.TEXTURE_2D,e);try{if(t.texImage2D(t.TEXTURE_2D,0,t.RGBA,t.RGBA,t.UNSIGNED_BYTE,D),t.isContextLost())return;U.supported=!0}catch(t){}t.deleteTexture(e),V=!0}s.document&&((D=s.document.createElement(\"img\")).onload=function(){O&&H(O),O=null,q=!0},D.onerror=function(){V=!0,O=null},D.src=\"data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=\");var G=\"01\";var Z=function(t,e){this._transformRequestFn=t,this._customAccessToken=e,this._createSkuToken()};function W(t){return 0===t.indexOf(\"mapbox:\")}Z.prototype._createSkuToken=function(){var t=function(){for(var t=\"\",e=0;e<10;e++)t+=\"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ\"[Math.floor(62*Math.random())];return{token:[\"1\",G,t].join(\"\"),tokenExpiresAt:Date.now()+432e5}}();this._skuToken=t.token,this._skuTokenExpiresAt=t.tokenExpiresAt},Z.prototype._isSkuTokenExpired=function(){return Date.now()>this._skuTokenExpiresAt},Z.prototype.transformRequest=function(t,e){return this._transformRequestFn&&this._transformRequestFn(t,e)||{url:t}},Z.prototype.normalizeStyleURL=function(t,e){if(!W(t))return t;var r=J(t);return r.path=\"/styles/v1\"+r.path,this._makeAPIURL(r,this._customAccessToken||e)},Z.prototype.normalizeGlyphsURL=function(t,e){if(!W(t))return t;var r=J(t);return r.path=\"/fonts/v1\"+r.path,this._makeAPIURL(r,this._customAccessToken||e)},Z.prototype.normalizeSourceURL=function(t,e){if(!W(t))return t;var r=J(t);return r.path=\"/v4/\"+r.authority+\".json\",r.params.push(\"secure\"),this._makeAPIURL(r,this._customAccessToken||e)},Z.prototype.normalizeSpriteURL=function(t,e,r,n){var i=J(t);return W(t)?(i.path=\"/styles/v1\"+i.path+\"/sprite\"+e+r,this._makeAPIURL(i,this._customAccessToken||n)):(i.path+=\"\"+e+r,K(i))},Z.prototype.normalizeTileURL=function(t,e){if(this._isSkuTokenExpired()&&this._createSkuToken(),t&&!W(t))return t;var r=J(t),n=N.devicePixelRatio>=2||512===e?\"@2x\":\"\",i=U.supported?\".webp\":\"$1\";r.path=r.path.replace(/(\\.(png|jpg)\\d*)(?=$)/,\"\"+n+i),r.path=r.path.replace(/^.+\\/v4\\//,\"/\"),r.path=\"/v4\"+r.path;var a=this._customAccessToken||function(t){for(var e=0,r=t;e<r.length;e+=1){var n=r[e].match(/^access_token=(.*)$/);if(n)return n[1]}return null}(r.params)||j.ACCESS_TOKEN;return j.REQUIRE_ACCESS_TOKEN&&a&&this._skuToken&&r.params.push(\"sku=\"+this._skuToken),this._makeAPIURL(r,a)},Z.prototype.canonicalizeTileURL=function(t,e){var r=J(t);if(!r.path.match(/(^\\/v4\\/)/)||!r.path.match(/\\.[\\w]+$/))return t;var n=\"mapbox://tiles/\";n+=r.path.replace(\"/v4/\",\"\");var i=r.params;return e&&(i=i.filter((function(t){return!t.match(/^access_token=/)}))),i.length&&(n+=\"?\"+i.join(\"&\")),n},Z.prototype.canonicalizeTileset=function(t,e){for(var r=!!e&&W(e),n=[],i=0,a=t.tiles||[];i<a.length;i+=1){var o=a[i];X(o)?n.push(this.canonicalizeTileURL(o,r)):n.push(o)}return n},Z.prototype._makeAPIURL=function(t,e){var r=\"See https://www.mapbox.com/api-documentation/#access-tokens-and-token-scopes\",n=J(j.API_URL);if(t.protocol=n.protocol,t.authority=n.authority,\"http\"===t.protocol){var i=t.params.indexOf(\"secure\");i>=0&&t.params.splice(i,1)}if(\"/\"!==n.path&&(t.path=\"\"+n.path+t.path),!j.REQUIRE_ACCESS_TOKEN)return K(t);if(!(e=e||j.ACCESS_TOKEN))throw new Error(\"An API access token is required to use Mapbox GL. \"+r);if(\"s\"===e[0])throw new Error(\"Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). \"+r);return t.params=t.params.filter((function(t){return-1===t.indexOf(\"access_token\")})),t.params.push(\"access_token=\"+e),K(t)};var Y=/^((https?:)?\\/\\/)?([^\\/]+\\.)?mapbox\\.c(n|om)(\\/|\\?|$)/i;function X(t){return Y.test(t)}var $=/^(\\w+):\\/\\/([^/?]*)(\\/[^?]+)?\\??(.+)?/;function J(t){var e=t.match($);if(!e)throw new Error(\"Unable to parse URL object\");return{protocol:e[1],authority:e[2],path:e[3]||\"/\",params:e[4]?e[4].split(\"&\"):[]}}function K(t){var e=t.params.length?\"?\"+t.params.join(\"&\"):\"\";return t.protocol+\"://\"+t.authority+t.path+e}var Q=\"mapbox.eventData\";function tt(t){if(!t)return null;var e,r=t.split(\".\");if(!r||3!==r.length)return null;try{return JSON.parse((e=r[1],decodeURIComponent(s.atob(e).split(\"\").map((function(t){return\"%\"+(\"00\"+t.charCodeAt(0).toString(16)).slice(-2)})).join(\"\"))))}catch(t){return null}}var et=function(t){this.type=t,this.anonId=null,this.eventData={},this.queue=[],this.pendingRequest=null};et.prototype.getStorageKey=function(t){var e,r,n=tt(j.ACCESS_TOKEN);return e=n&&n.u?(r=n.u,s.btoa(encodeURIComponent(r).replace(/%([0-9A-F]{2})/g,(function(t,e){return String.fromCharCode(Number(\"0x\"+e))})))):j.ACCESS_TOKEN||\"\",t?Q+\".\"+t+\":\"+e:Q+\":\"+e},et.prototype.fetchEventData=function(){var t=I(\"localStorage\"),e=this.getStorageKey(),r=this.getStorageKey(\"uuid\");if(t)try{var n=s.localStorage.getItem(e);n&&(this.eventData=JSON.parse(n));var i=s.localStorage.getItem(r);i&&(this.anonId=i)}catch(t){k(\"Unable to read from LocalStorage\")}},et.prototype.saveEventData=function(){var t=I(\"localStorage\"),e=this.getStorageKey(),r=this.getStorageKey(\"uuid\");if(t)try{s.localStorage.setItem(r,this.anonId),Object.keys(this.eventData).length>=1&&s.localStorage.setItem(e,JSON.stringify(this.eventData))}catch(t){k(\"Unable to write to LocalStorage\")}},et.prototype.processRequests=function(t){},et.prototype.postEvent=function(t,e,n,i){var a=this;if(j.EVENTS_URL){var o=J(j.EVENTS_URL);o.params.push(\"access_token=\"+(i||j.ACCESS_TOKEN||\"\"));var s={event:this.type,created:new Date(t).toISOString(),sdkIdentifier:\"mapbox-gl-js\",sdkVersion:r,skuId:G,userId:this.anonId},l=e?p(s,e):s,c={url:K(o),headers:{\"Content-Type\":\"text/plain\"},body:JSON.stringify([l])};this.pendingRequest=St(c,(function(t){a.pendingRequest=null,n(t),a.saveEventData(),a.processRequests(i)}))}},et.prototype.queueRequest=function(t,e){this.queue.push(t),this.processRequests(e)};var rt,nt,it=function(t){function e(){t.call(this,\"map.load\"),this.success={},this.skuToken=\"\"}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.postMapLoadEvent=function(t,e,r,n){this.skuToken=r,(j.EVENTS_URL&&n||j.ACCESS_TOKEN&&Array.isArray(t)&&t.some((function(t){return W(t)||X(t)})))&&this.queueRequest({id:e,timestamp:Date.now()},n)},e.prototype.processRequests=function(t){var e=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(),y(this.anonId)||(this.anonId=g()),this.postEvent(i,{skuToken:this.skuToken},(function(t){t||n&&(e.success[n]=!0)}),t))}},e}(et),at=function(t){function e(e){t.call(this,\"appUserTurnstile\"),this._customAccessToken=e}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.postTurnstileEvent=function(t,e){j.EVENTS_URL&&j.ACCESS_TOKEN&&Array.isArray(t)&&t.some((function(t){return W(t)||X(t)}))&&this.queueRequest(Date.now(),e)},e.prototype.processRequests=function(t){var e=this;if(!this.pendingRequest&&0!==this.queue.length){this.anonId&&this.eventData.lastSuccess&&this.eventData.tokenU||this.fetchEventData();var r=tt(j.ACCESS_TOKEN),n=r?r.u:j.ACCESS_TOKEN,i=n!==this.eventData.tokenU;y(this.anonId)||(this.anonId=g(),i=!0);var a=this.queue.shift();if(this.eventData.lastSuccess){var o=new Date(this.eventData.lastSuccess),s=new Date(a),l=(a-this.eventData.lastSuccess)/864e5;i=i||l>=1||l<-1||o.getDate()!==s.getDate()}else i=!0;if(!i)return this.processRequests();this.postEvent(a,{\"enabled.telemetry\":!1},(function(t){t||(e.eventData.lastSuccess=a,e.eventData.tokenU=n)}),t)}},e}(et),ot=new at,st=ot.postTurnstileEvent.bind(ot),lt=new it,ct=lt.postMapLoadEvent.bind(lt),ut=\"mapbox-tiles\",ht=500,ft=50,pt=42e4;function dt(){s.caches&&!rt&&(rt=s.caches.open(ut))}function mt(t,e,r){if(dt(),rt){var n={status:e.status,statusText:e.statusText,headers:new s.Headers};e.headers.forEach((function(t,e){return n.headers.set(e,t)}));var i=E(e.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()-r<pt||function(t,e){if(void 0===nt)try{new Response(new ReadableStream),nt=!0}catch(t){nt=!1}nt?e(t.body):t.blob().then(e)}(e,(function(e){var r=new s.Response(e,n);dt(),rt&&rt.then((function(e){return e.put(gt(t.url),r)})).catch((function(t){return k(t.message)}))})))}}function gt(t){var e=t.indexOf(\"?\");return e<0?t:t.slice(0,e)}function yt(t,e){if(dt(),!rt)return e(null);var r=gt(t.url);rt.then((function(t){t.match(r).then((function(n){var i=function(t){if(!t)return!1;var e=new Date(t.headers.get(\"Expires\")||0),r=E(t.headers.get(\"Cache-Control\")||\"\");return e>Date.now()&&!r[\"no-cache\"]}(n);t.delete(r),i&&t.put(r,n.clone()),e(null,n,i)})).catch(e)})).catch(e)}var vt,xt=1/0;function _t(){return null==vt&&(vt=s.OffscreenCanvas&&new s.OffscreenCanvas(1,1).getContext(\"2d\")&&\"function\"==typeof s.createImageBitmap),vt}var bt={Unknown:\"Unknown\",Style:\"Style\",Source:\"Source\",Tile:\"Tile\",Glyphs:\"Glyphs\",SpriteImage:\"SpriteImage\",SpriteJSON:\"SpriteJSON\",Image:\"Image\"};\"function\"==typeof Object.freeze&&Object.freeze(bt);var wt=function(t){function e(e,r,n){401===r&&X(n)&&(e+=\": you may have provided an invalid Mapbox access token. See https://www.mapbox.com/api-documentation/#access-tokens-and-token-scopes\"),t.call(this,e),this.status=r,this.url=n,this.name=this.constructor.name,this.message=e}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.toString=function(){return this.name+\": \"+this.message+\" (\"+this.status+\"): \"+this.url},e}(Error),Tt=S()?function(){return self.worker&&self.worker.referrer}:function(){return(\"blob:\"===s.location.protocol?s.parent:s).location.href};function kt(t,e){var r,n=new s.AbortController,i=new s.Request(t.url,{method:t.method||\"GET\",body:t.body,credentials:t.credentials,headers:t.headers,referrer:Tt(),signal:n.signal}),a=!1,o=!1,l=(r=i.url).indexOf(\"sku=\")>0&&X(r);\"json\"===t.type&&i.headers.set(\"Accept\",\"application/json\");var c=function(r,n,a){if(!o){if(r&&\"SecurityError\"!==r.message&&k(r),n&&a)return u(n);var c=Date.now();s.fetch(i).then((function(r){if(r.ok){var n=l?r.clone():null;return u(r,n,c)}return e(new wt(r.statusText,r.status,t.url))})).catch((function(t){20!==t.code&&e(new Error(t.message))}))}},u=function(r,n,s){(\"arrayBuffer\"===t.type?r.arrayBuffer():\"json\"===t.type?r.json():r.text()).then((function(t){o||(n&&s&&mt(i,n,s),a=!0,e(null,t,r.headers.get(\"Cache-Control\"),r.headers.get(\"Expires\")))})).catch((function(t){o||e(new Error(t.message))}))};return l?yt(i,c):c(null,null),{cancel:function(){o=!0,a||n.abort()}}}var At=function(t,e){if(r=t.url,!(/^file:/.test(r)||/^file:/.test(Tt())&&!/^\\w+:/.test(r))){if(s.fetch&&s.Request&&s.AbortController&&s.Request.prototype.hasOwnProperty(\"signal\"))return kt(t,e);if(S()&&self.worker&&self.worker.actor){return self.worker.actor.send(\"getResource\",t,e,void 0,!0)}}var r;return function(t,e){var r=new s.XMLHttpRequest;for(var n in r.open(t.method||\"GET\",t.url,!0),\"arrayBuffer\"===t.type&&(r.responseType=\"arraybuffer\"),t.headers)r.setRequestHeader(n,t.headers[n]);return\"json\"===t.type&&(r.responseType=\"text\",r.setRequestHeader(\"Accept\",\"application/json\")),r.withCredentials=\"include\"===t.credentials,r.onerror=function(){e(new Error(r.statusText))},r.onload=function(){if((r.status>=200&&r.status<300||0===r.status)&&null!==r.response){var n=r.response;if(\"json\"===t.type)try{n=JSON.parse(r.response)}catch(t){return e(t)}e(null,n,r.getResponseHeader(\"Cache-Control\"),r.getResponseHeader(\"Expires\"))}else e(new wt(r.statusText,r.status,t.url))},r.send(t.body),{cancel:function(){return r.abort()}}}(t,e)},Mt=function(t,e){return At(p(t,{type:\"arrayBuffer\"}),e)},St=function(t,e){return At(p(t,{method:\"POST\"}),e)};var Et,Ct,Lt=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=\";Et=[],Ct=0;var It=function(t,e){if(U.supported&&(t.headers||(t.headers={}),t.headers.accept=\"image/webp,*/*\"),Ct>=j.MAX_PARALLEL_IMAGE_REQUESTS){var r={requestParameters:t,callback:e,cancelled:!1,cancel:function(){this.cancelled=!0}};return Et.push(r),r}Ct++;var n=!1,i=function(){if(!n)for(n=!0,Ct--;Et.length&&Ct<j.MAX_PARALLEL_IMAGE_REQUESTS;){var t=Et.shift(),e=t.requestParameters,r=t.callback;t.cancelled||(t.cancel=It(e,r).cancel)}},a=Mt(t,(function(t,r,n,a){i(),t?e(t):r&&(_t()?function(t,e){var r=new s.Blob([new Uint8Array(t)],{type:\"image/png\"});s.createImageBitmap(r).then((function(t){e(null,t)})).catch((function(t){e(new Error(\"Could not load image because of \"+t.message+\". Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported.\"))}))}(r,e):function(t,e,r,n){var i=new s.Image,a=s.URL;i.onload=function(){e(null,i),a.revokeObjectURL(i.src),i.onload=null,s.requestAnimationFrame((function(){i.src=Lt}))},i.onerror=function(){return e(new Error(\"Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported.\"))};var o=new s.Blob([new Uint8Array(t)],{type:\"image/png\"});i.cacheControl=r,i.expires=n,i.src=t.byteLength?a.createObjectURL(o):Lt}(r,e,n,a))}));return{cancel:function(){a.cancel(),i()}}};function Pt(t,e,r){r[t]&&-1!==r[t].indexOf(e)||(r[t]=r[t]||[],r[t].push(e))}function zt(t,e,r){if(r&&r[t]){var n=r[t].indexOf(e);-1!==n&&r[t].splice(n,1)}}var Ot=function(t,e){void 0===e&&(e={}),p(this,e),this.type=t},Dt=function(t){function e(e,r){void 0===r&&(r={}),t.call(this,\"error\",p({error:e},r))}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(Ot),Rt=function(){};Rt.prototype.on=function(t,e){return this._listeners=this._listeners||{},Pt(t,e,this._listeners),this},Rt.prototype.off=function(t,e){return zt(t,e,this._listeners),zt(t,e,this._oneTimeListeners),this},Rt.prototype.once=function(t,e){return this._oneTimeListeners=this._oneTimeListeners||{},Pt(t,e,this._oneTimeListeners),this},Rt.prototype.fire=function(t,e){\"string\"==typeof t&&(t=new Ot(t,e||{}));var r=t.type;if(this.listens(r)){t.target=this;for(var n=0,i=this._listeners&&this._listeners[r]?this._listeners[r].slice():[];n<i.length;n+=1)i[n].call(this,t);for(var a=0,o=this._oneTimeListeners&&this._oneTimeListeners[r]?this._oneTimeListeners[r].slice():[];a<o.length;a+=1){var s=o[a];zt(r,s,this._oneTimeListeners),s.call(this,t)}var l=this._eventedParent;l&&(p(t,\"function\"==typeof this._eventedParentData?this._eventedParentData():this._eventedParentData),l.fire(t))}else t instanceof Dt&&console.error(t.error);return this},Rt.prototype.listens=function(t){return this._listeners&&this._listeners[t]&&this._listeners[t].length>0||this._oneTimeListeners&&this._oneTimeListeners[t]&&this._oneTimeListeners[t].length>0||this._eventedParent&&this._eventedParent.listens(t)},Rt.prototype.setEventedParent=function(t,e){return this._eventedParent=t,this._eventedParentData=e,this};var Ft={$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\"},volatile:{type:\"boolean\",default:!1},\"*\":{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\"},volatile:{type:\"boolean\",default:!1},\"*\":{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\"},volatile:{type:\"boolean\",default:!1},\"*\":{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},filter:{type:\"*\"},tolerance:{type:\"number\",default:.375},cluster:{type:\"boolean\",default:!1},clusterRadius:{type:\"number\",default:50,minimum:0},clusterMaxZoom:{type:\"number\"},clusterMinPoints:{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},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\"}}},Bt=function(t,e,r,n){this.message=(t?t+\": \":\"\")+r,n&&(this.identifier=n),null!=e&&e.__line__&&(this.line=e.__line__)};function Nt(t){var e=t.key,r=t.value;return r?[new Bt(e,r,\"constants have been deprecated as of v8\")]:[]}function jt(t){for(var e=[],r=arguments.length-1;r-- >0;)e[r]=arguments[r+1];for(var n=0,i=e;n<i.length;n+=1){var a=i[n];for(var o in a)t[o]=a[o]}return t}function Ut(t){return t instanceof Number||t instanceof String||t instanceof Boolean?t.valueOf():t}function Vt(t){if(Array.isArray(t))return t.map(Vt);if(t instanceof Object&&!(t instanceof Number||t instanceof String||t instanceof Boolean)){var e={};for(var r in t)e[r]=Vt(t[r]);return e}return Ut(t)}var qt=function(t){function e(e,r){t.call(this,r),this.message=r,this.key=e}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(Error),Ht=function(t,e){void 0===e&&(e=[]),this.parent=t,this.bindings={};for(var r=0,n=e;r<n.length;r+=1){var i=n[r],a=i[0],o=i[1];this.bindings[a]=o}};Ht.prototype.concat=function(t){return new Ht(this,t)},Ht.prototype.get=function(t){if(this.bindings[t])return this.bindings[t];if(this.parent)return this.parent.get(t);throw new Error(t+\" not found in scope.\")},Ht.prototype.has=function(t){return!!this.bindings[t]||!!this.parent&&this.parent.has(t)};var Gt={kind:\"null\"},Zt={kind:\"number\"},Wt={kind:\"string\"},Yt={kind:\"boolean\"},Xt={kind:\"color\"},$t={kind:\"object\"},Jt={kind:\"value\"},Kt={kind:\"collator\"},Qt={kind:\"formatted\"},te={kind:\"resolvedImage\"};function ee(t,e){return{kind:\"array\",itemType:t,N:e}}function re(t){if(\"array\"===t.kind){var e=re(t.itemType);return\"number\"==typeof t.N?\"array<\"+e+\", \"+t.N+\">\":\"value\"===t.itemType.kind?\"array\":\"array<\"+e+\">\"}return t.kind}var ne=[Gt,Zt,Wt,Yt,Xt,Qt,$t,ee(Jt),te];function ie(t,e){if(\"error\"===e.kind)return null;if(\"array\"===t.kind){if(\"array\"===e.kind&&(0===e.N&&\"value\"===e.itemType.kind||!ie(t.itemType,e.itemType))&&(\"number\"!=typeof t.N||t.N===e.N))return null}else{if(t.kind===e.kind)return null;if(\"value\"===t.kind)for(var r=0,n=ne;r<n.length;r+=1)if(!ie(n[r],e))return null}return\"Expected \"+re(t)+\" but found \"+re(e)+\" instead.\"}function ae(t,e){return e.some((function(e){return e.kind===t.kind}))}function oe(t,e){return e.some((function(e){return\"null\"===e?null===t:\"array\"===e?Array.isArray(t):\"object\"===e?t&&!Array.isArray(t)&&\"object\"==typeof t:e===typeof t}))}var se=e((function(t,e){var r={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],rebeccapurple:[102,51,153,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};function n(t){return(t=Math.round(t))<0?0:t>255?255:t}function i(t){return t<0?0:t>1?1:t}function a(t){return\"%\"===t[t.length-1]?n(parseFloat(t)/100*255):n(parseInt(t))}function o(t){return\"%\"===t[t.length-1]?i(parseFloat(t)/100):i(parseFloat(t))}function s(t,e,r){return r<0?r+=1:r>1&&(r-=1),6*r<1?t+(e-t)*r*6:2*r<1?e:3*r<2?t+(e-t)*(2/3-r)*6:t}try{e.parseCSSColor=function(t){var e,i=t.replace(/ /g,\"\").toLowerCase();if(i in r)return r[i].slice();if(\"#\"===i[0])return 4===i.length?(e=parseInt(i.substr(1),16))>=0&&e<=4095?[(3840&e)>>4|(3840&e)>>8,240&e|(240&e)>>4,15&e|(15&e)<<4,1]:null:7===i.length&&(e=parseInt(i.substr(1),16))>=0&&e<=16777215?[(16711680&e)>>16,(65280&e)>>8,255&e,1]:null;var l=i.indexOf(\"(\"),c=i.indexOf(\")\");if(-1!==l&&c+1===i.length){var u=i.substr(0,l),h=i.substr(l+1,c-(l+1)).split(\",\"),f=1;switch(u){case\"rgba\":if(4!==h.length)return null;f=o(h.pop());case\"rgb\":return 3!==h.length?null:[a(h[0]),a(h[1]),a(h[2]),f];case\"hsla\":if(4!==h.length)return null;f=o(h.pop());case\"hsl\":if(3!==h.length)return null;var p=(parseFloat(h[0])%360+360)%360/360,d=o(h[1]),m=o(h[2]),g=m<=.5?m*(d+1):m+d-m*d,y=2*m-g;return[n(255*s(y,g,p+1/3)),n(255*s(y,g,p)),n(255*s(y,g,p-1/3)),f];default:return null}}return null}}catch(t){}})),le=se.parseCSSColor,ce=function(t,e,r,n){void 0===n&&(n=1),this.r=t,this.g=e,this.b=r,this.a=n};ce.parse=function(t){if(t){if(t instanceof ce)return t;if(\"string\"==typeof t){var e=le(t);if(e)return new ce(e[0]/255*e[3],e[1]/255*e[3],e[2]/255*e[3],e[3])}}},ce.prototype.toString=function(){var t=this.toArray(),e=t[0],r=t[1],n=t[2],i=t[3];return\"rgba(\"+Math.round(e)+\",\"+Math.round(r)+\",\"+Math.round(n)+\",\"+i+\")\"},ce.prototype.toArray=function(){var t=this,e=t.r,r=t.g,n=t.b,i=t.a;return 0===i?[0,0,0,0]:[255*e/i,255*r/i,255*n/i,i]},ce.black=new ce(0,0,0,1),ce.white=new ce(1,1,1,1),ce.transparent=new ce(0,0,0,0),ce.red=new ce(1,0,0,1);var ue=function(t,e,r){this.sensitivity=t?e?\"variant\":\"case\":e?\"accent\":\"base\",this.locale=r,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:\"search\"})};ue.prototype.compare=function(t,e){return this.collator.compare(t,e)},ue.prototype.resolvedLocale=function(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale};var he=function(t,e,r,n,i){this.text=t,this.image=e,this.scale=r,this.fontStack=n,this.textColor=i},fe=function(t){this.sections=t};fe.fromString=function(t){return new fe([new he(t,null,null,null,null)])},fe.prototype.isEmpty=function(){return 0===this.sections.length||!this.sections.some((function(t){return 0!==t.text.length||t.image&&0!==t.image.name.length}))},fe.factory=function(t){return t instanceof fe?t:fe.fromString(t)},fe.prototype.toString=function(){return 0===this.sections.length?\"\":this.sections.map((function(t){return t.text})).join(\"\")},fe.prototype.serialize=function(){for(var t=[\"format\"],e=0,r=this.sections;e<r.length;e+=1){var n=r[e];if(n.image)t.push([\"image\",n.image.name]);else{t.push(n.text);var i={};n.fontStack&&(i[\"text-font\"]=[\"literal\",n.fontStack.split(\",\")]),n.scale&&(i[\"font-scale\"]=n.scale),n.textColor&&(i[\"text-color\"]=[\"rgba\"].concat(n.textColor.toArray())),t.push(i)}}return t};var pe=function(t){this.name=t.name,this.available=t.available};function de(t,e,r,n){return\"number\"==typeof t&&t>=0&&t<=255&&\"number\"==typeof e&&e>=0&&e<=255&&\"number\"==typeof r&&r>=0&&r<=255?void 0===n||\"number\"==typeof n&&n>=0&&n<=1?null:\"Invalid rgba value [\"+[t,e,r,n].join(\", \")+\"]: 'a' must be between 0 and 1.\":\"Invalid rgba value [\"+(\"number\"==typeof n?[t,e,r,n]:[t,e,r]).join(\", \")+\"]: 'r', 'g', and 'b' must be between 0 and 255.\"}function me(t){if(null===t)return!0;if(\"string\"==typeof t)return!0;if(\"boolean\"==typeof t)return!0;if(\"number\"==typeof t)return!0;if(t instanceof ce)return!0;if(t instanceof ue)return!0;if(t instanceof fe)return!0;if(t instanceof pe)return!0;if(Array.isArray(t)){for(var e=0,r=t;e<r.length;e+=1)if(!me(r[e]))return!1;return!0}if(\"object\"==typeof t){for(var n in t)if(!me(t[n]))return!1;return!0}return!1}function ge(t){if(null===t)return Gt;if(\"string\"==typeof t)return Wt;if(\"boolean\"==typeof t)return Yt;if(\"number\"==typeof t)return Zt;if(t instanceof ce)return Xt;if(t instanceof ue)return Kt;if(t instanceof fe)return Qt;if(t instanceof pe)return te;if(Array.isArray(t)){for(var e,r=t.length,n=0,i=t;n<i.length;n+=1){var a=ge(i[n]);if(e){if(e===a)continue;e=Jt;break}e=a}return ee(e||Jt,r)}return $t}function ye(t){var e=typeof t;return null===t?\"\":\"string\"===e||\"number\"===e||\"boolean\"===e?String(t):t instanceof ce||t instanceof fe||t instanceof pe?t.toString():JSON.stringify(t)}pe.prototype.toString=function(){return this.name},pe.fromString=function(t){return t?new pe({name:t,available:!1}):null},pe.prototype.serialize=function(){return[\"image\",this.name]};var ve=function(t,e){this.type=t,this.value=e};ve.parse=function(t,e){if(2!==t.length)return e.error(\"'literal' expression requires exactly one argument, but found \"+(t.length-1)+\" instead.\");if(!me(t[1]))return e.error(\"invalid value\");var r=t[1],n=ge(r),i=e.expectedType;return\"array\"!==n.kind||0!==n.N||!i||\"array\"!==i.kind||\"number\"==typeof i.N&&0!==i.N||(n=i),new ve(n,r)},ve.prototype.evaluate=function(){return this.value},ve.prototype.eachChild=function(){},ve.prototype.outputDefined=function(){return!0},ve.prototype.serialize=function(){return\"array\"===this.type.kind||\"object\"===this.type.kind?[\"literal\",this.value]:this.value instanceof ce?[\"rgba\"].concat(this.value.toArray()):this.value instanceof fe?this.value.serialize():this.value};var xe=function(t){this.name=\"ExpressionEvaluationError\",this.message=t};xe.prototype.toJSON=function(){return this.message};var _e={string:Wt,number:Zt,boolean:Yt,object:$t},be=function(t,e){this.type=t,this.args=e};be.parse=function(t,e){if(t.length<2)return e.error(\"Expected at least one argument.\");var r,n=1,i=t[0];if(\"array\"===i){var a,o;if(t.length>2){var s=t[1];if(\"string\"!=typeof s||!(s in _e)||\"object\"===s)return e.error('The item type argument of \"array\" must be one of string, number, boolean',1);a=_e[s],n++}else a=Jt;if(t.length>3){if(null!==t[2]&&(\"number\"!=typeof t[2]||t[2]<0||t[2]!==Math.floor(t[2])))return e.error('The length argument to \"array\" must be a positive integer literal',2);o=t[2],n++}r=ee(a,o)}else r=_e[i];for(var l=[];n<t.length;n++){var c=e.parse(t[n],n,Jt);if(!c)return null;l.push(c)}return new be(r,l)},be.prototype.evaluate=function(t){for(var e=0;e<this.args.length;e++){var r=this.args[e].evaluate(t);if(!ie(this.type,ge(r)))return r;if(e===this.args.length-1)throw new xe(\"Expected value to be of type \"+re(this.type)+\", but found \"+re(ge(r))+\" instead.\")}return null},be.prototype.eachChild=function(t){this.args.forEach(t)},be.prototype.outputDefined=function(){return this.args.every((function(t){return t.outputDefined()}))},be.prototype.serialize=function(){var t=this.type,e=[t.kind];if(\"array\"===t.kind){var r=t.itemType;if(\"string\"===r.kind||\"number\"===r.kind||\"boolean\"===r.kind){e.push(r.kind);var n=t.N;(\"number\"==typeof n||this.args.length>1)&&e.push(n)}}return e.concat(this.args.map((function(t){return t.serialize()})))};var we=function(t){this.type=Qt,this.sections=t};we.parse=function(t,e){if(t.length<2)return e.error(\"Expected at least one argument.\");var r=t[1];if(!Array.isArray(r)&&\"object\"==typeof r)return e.error(\"First argument must be an image or text section.\");for(var n=[],i=!1,a=1;a<=t.length-1;++a){var o=t[a];if(i&&\"object\"==typeof o&&!Array.isArray(o)){i=!1;var s=null;if(o[\"font-scale\"]&&!(s=e.parse(o[\"font-scale\"],1,Zt)))return null;var l=null;if(o[\"text-font\"]&&!(l=e.parse(o[\"text-font\"],1,ee(Wt))))return null;var c=null;if(o[\"text-color\"]&&!(c=e.parse(o[\"text-color\"],1,Xt)))return null;var u=n[n.length-1];u.scale=s,u.font=l,u.textColor=c}else{var h=e.parse(t[a],1,Jt);if(!h)return null;var f=h.type.kind;if(\"string\"!==f&&\"value\"!==f&&\"null\"!==f&&\"resolvedImage\"!==f)return e.error(\"Formatted text type must be 'string', 'value', 'image' or 'null'.\");i=!0,n.push({content:h,scale:null,font:null,textColor:null})}}return new we(n)},we.prototype.evaluate=function(t){return new fe(this.sections.map((function(e){var r=e.content.evaluate(t);return ge(r)===te?new he(\"\",r,null,null,null):new he(ye(r),null,e.scale?e.scale.evaluate(t):null,e.font?e.font.evaluate(t).join(\",\"):null,e.textColor?e.textColor.evaluate(t):null)})))},we.prototype.eachChild=function(t){for(var e=0,r=this.sections;e<r.length;e+=1){var n=r[e];t(n.content),n.scale&&t(n.scale),n.font&&t(n.font),n.textColor&&t(n.textColor)}},we.prototype.outputDefined=function(){return!1},we.prototype.serialize=function(){for(var t=[\"format\"],e=0,r=this.sections;e<r.length;e+=1){var n=r[e];t.push(n.content.serialize());var i={};n.scale&&(i[\"font-scale\"]=n.scale.serialize()),n.font&&(i[\"text-font\"]=n.font.serialize()),n.textColor&&(i[\"text-color\"]=n.textColor.serialize()),t.push(i)}return t};var Te=function(t){this.type=te,this.input=t};Te.parse=function(t,e){if(2!==t.length)return e.error(\"Expected two arguments.\");var r=e.parse(t[1],1,Wt);return r?new Te(r):e.error(\"No image name provided.\")},Te.prototype.evaluate=function(t){var e=this.input.evaluate(t),r=pe.fromString(e);return r&&t.availableImages&&(r.available=t.availableImages.indexOf(e)>-1),r},Te.prototype.eachChild=function(t){t(this.input)},Te.prototype.outputDefined=function(){return!1},Te.prototype.serialize=function(){return[\"image\",this.input.serialize()]};var ke={\"to-boolean\":Yt,\"to-color\":Xt,\"to-number\":Zt,\"to-string\":Wt},Ae=function(t,e){this.type=t,this.args=e};Ae.parse=function(t,e){if(t.length<2)return e.error(\"Expected at least one argument.\");var r=t[0];if((\"to-boolean\"===r||\"to-string\"===r)&&2!==t.length)return e.error(\"Expected one argument.\");for(var n=ke[r],i=[],a=1;a<t.length;a++){var o=e.parse(t[a],a,Jt);if(!o)return null;i.push(o)}return new Ae(n,i)},Ae.prototype.evaluate=function(t){if(\"boolean\"===this.type.kind)return Boolean(this.args[0].evaluate(t));if(\"color\"===this.type.kind){for(var e,r,n=0,i=this.args;n<i.length;n+=1){if(r=null,(e=i[n].evaluate(t))instanceof ce)return e;if(\"string\"==typeof e){var a=t.parseColor(e);if(a)return a}else if(Array.isArray(e)&&!(r=e.length<3||e.length>4?\"Invalid rbga value \"+JSON.stringify(e)+\": expected an array containing either three or four numeric values.\":de(e[0],e[1],e[2],e[3])))return new ce(e[0]/255,e[1]/255,e[2]/255,e[3])}throw new xe(r||\"Could not parse color from value '\"+(\"string\"==typeof e?e:String(JSON.stringify(e)))+\"'\")}if(\"number\"===this.type.kind){for(var o=null,s=0,l=this.args;s<l.length;s+=1){if(null===(o=l[s].evaluate(t)))return 0;var c=Number(o);if(!isNaN(c))return c}throw new xe(\"Could not convert \"+JSON.stringify(o)+\" to number.\")}return\"formatted\"===this.type.kind?fe.fromString(ye(this.args[0].evaluate(t))):\"resolvedImage\"===this.type.kind?pe.fromString(ye(this.args[0].evaluate(t))):ye(this.args[0].evaluate(t))},Ae.prototype.eachChild=function(t){this.args.forEach(t)},Ae.prototype.outputDefined=function(){return this.args.every((function(t){return t.outputDefined()}))},Ae.prototype.serialize=function(){if(\"formatted\"===this.type.kind)return new we([{content:this.args[0],scale:null,font:null,textColor:null}]).serialize();if(\"resolvedImage\"===this.type.kind)return new Te(this.args[0]).serialize();var t=[\"to-\"+this.type.kind];return this.eachChild((function(e){t.push(e.serialize())})),t};var Me=[\"Unknown\",\"Point\",\"LineString\",\"Polygon\"],Se=function(){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache={},this.availableImages=null,this.canonical=null};Se.prototype.id=function(){return this.feature&&\"id\"in this.feature?this.feature.id:null},Se.prototype.geometryType=function(){return this.feature?\"number\"==typeof this.feature.type?Me[this.feature.type]:this.feature.type:null},Se.prototype.geometry=function(){return this.feature&&\"geometry\"in this.feature?this.feature.geometry:null},Se.prototype.canonicalID=function(){return this.canonical},Se.prototype.properties=function(){return this.feature&&this.feature.properties||{}},Se.prototype.parseColor=function(t){var e=this._parseColorCache[t];return e||(e=this._parseColorCache[t]=ce.parse(t)),e};var Ee=function(t,e,r,n){this.name=t,this.type=e,this._evaluate=r,this.args=n};Ee.prototype.evaluate=function(t){return this._evaluate(t,this.args)},Ee.prototype.eachChild=function(t){this.args.forEach(t)},Ee.prototype.outputDefined=function(){return!1},Ee.prototype.serialize=function(){return[this.name].concat(this.args.map((function(t){return t.serialize()})))},Ee.parse=function(t,e){var r,n=t[0],i=Ee.definitions[n];if(!i)return e.error('Unknown expression \"'+n+'\". If you wanted a literal array, use [\"literal\", [...]].',0);for(var a=Array.isArray(i)?i[0]:i.type,o=Array.isArray(i)?[[i[1],i[2]]]:i.overloads,s=o.filter((function(e){var r=e[0];return!Array.isArray(r)||r.length===t.length-1})),l=null,c=0,u=s;c<u.length;c+=1){var h=u[c],f=h[0],p=h[1];l=new Je(e.registry,e.path,null,e.scope);for(var d=[],m=!1,g=1;g<t.length;g++){var y=t[g],v=Array.isArray(f)?f[g-1]:f.type,x=l.parse(y,1+d.length,v);if(!x){m=!0;break}d.push(x)}if(!m)if(Array.isArray(f)&&f.length!==d.length)l.error(\"Expected \"+f.length+\" arguments, but found \"+d.length+\" instead.\");else{for(var _=0;_<d.length;_++){var b=Array.isArray(f)?f[_]:f.type,w=d[_];l.concat(_+1).checkSubtype(b,w.type)}if(0===l.errors.length)return new Ee(n,a,p,d)}}if(1===s.length)(r=e.errors).push.apply(r,l.errors);else{for(var T=(s.length?s:o).map((function(t){return e=t[0],Array.isArray(e)?\"(\"+e.map(re).join(\", \")+\")\":\"(\"+re(e.type)+\"...)\";var e})).join(\" | \"),k=[],A=1;A<t.length;A++){var M=e.parse(t[A],1+k.length);if(!M)return null;k.push(re(M.type))}e.error(\"Expected arguments of type \"+T+\", but found (\"+k.join(\", \")+\") instead.\")}return null},Ee.register=function(t,e){for(var r in Ee.definitions=e,e)t[r]=Ee};var Ce=function(t,e,r){this.type=Kt,this.locale=r,this.caseSensitive=t,this.diacriticSensitive=e};Ce.parse=function(t,e){if(2!==t.length)return e.error(\"Expected one argument.\");var r=t[1];if(\"object\"!=typeof r||Array.isArray(r))return e.error(\"Collator options argument must be an object.\");var n=e.parse(void 0!==r[\"case-sensitive\"]&&r[\"case-sensitive\"],1,Yt);if(!n)return null;var i=e.parse(void 0!==r[\"diacritic-sensitive\"]&&r[\"diacritic-sensitive\"],1,Yt);if(!i)return null;var a=null;return r.locale&&!(a=e.parse(r.locale,1,Wt))?null:new Ce(n,i,a)},Ce.prototype.evaluate=function(t){return new ue(this.caseSensitive.evaluate(t),this.diacriticSensitive.evaluate(t),this.locale?this.locale.evaluate(t):null)},Ce.prototype.eachChild=function(t){t(this.caseSensitive),t(this.diacriticSensitive),this.locale&&t(this.locale)},Ce.prototype.outputDefined=function(){return!1},Ce.prototype.serialize=function(){var t={};return t[\"case-sensitive\"]=this.caseSensitive.serialize(),t[\"diacritic-sensitive\"]=this.diacriticSensitive.serialize(),this.locale&&(t.locale=this.locale.serialize()),[\"collator\",t]};var Le=8192;function Ie(t,e){t[0]=Math.min(t[0],e[0]),t[1]=Math.min(t[1],e[1]),t[2]=Math.max(t[2],e[0]),t[3]=Math.max(t[3],e[1])}function Pe(t,e){return!(t[0]<=e[0]||t[2]>=e[2]||t[1]<=e[1]||t[3]>=e[3])}function ze(t,e){var r,n=(180+t[0])/360,i=(r=t[1],(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+r*Math.PI/360)))/360),a=Math.pow(2,e.z);return[Math.round(n*a*Le),Math.round(i*a*Le)]}function Oe(t,e,r){return e[1]>t[1]!=r[1]>t[1]&&t[0]<(r[0]-e[0])*(t[1]-e[1])/(r[1]-e[1])+e[0]}function De(t,e){for(var r=!1,n=0,i=e.length;n<i;n++)for(var a=e[n],o=0,s=a.length;o<s-1;o++){if(l=t,c=a[o],u=a[o+1],h=void 0,f=void 0,p=void 0,d=void 0,h=l[0]-c[0],f=l[1]-c[1],p=l[0]-u[0],d=l[1]-u[1],h*d-p*f==0&&h*p<=0&&f*d<=0)return!1;Oe(t,a[o],a[o+1])&&(r=!r)}var l,c,u,h,f,p,d;return r}function Re(t,e){for(var r=0;r<e.length;r++)if(De(t,e[r]))return!0;return!1}function Fe(t,e,r,n){var i=t[0]-r[0],a=t[1]-r[1],o=e[0]-r[0],s=e[1]-r[1],l=n[0]-r[0],c=n[1]-r[1],u=i*c-l*a,h=o*c-l*s;return u>0&&h<0||u<0&&h>0}function Be(t,e,r){for(var n=0,i=r;n<i.length;n+=1)for(var a=i[n],o=0;o<a.length-1;++o)if(s=t,l=e,c=a[o],u=a[o+1],h=void 0,f=void 0,p=void 0,p=[l[0]-s[0],l[1]-s[1]],0!=(h=[u[0]-c[0],u[1]-c[1]],f=p,h[0]*f[1]-h[1]*f[0])&&Fe(s,l,c,u)&&Fe(c,u,s,l))return!0;var s,l,c,u,h,f,p;return!1}function Ne(t,e){for(var r=0;r<t.length;++r)if(!De(t[r],e))return!1;for(var n=0;n<t.length-1;++n)if(Be(t[n],t[n+1],e))return!1;return!0}function je(t,e){for(var r=0;r<e.length;r++)if(Ne(t,e[r]))return!0;return!1}function Ue(t,e,r){for(var n=[],i=0;i<t.length;i++){for(var a=[],o=0;o<t[i].length;o++){var s=ze(t[i][o],r);Ie(e,s),a.push(s)}n.push(a)}return n}function Ve(t,e,r){for(var n=[],i=0;i<t.length;i++){var a=Ue(t[i],e,r);n.push(a)}return n}function qe(t,e,r,n){if(t[0]<r[0]||t[0]>r[2]){var i=.5*n,a=t[0]-r[0]>i?-n:r[0]-t[0]>i?n:0;0===a&&(a=t[0]-r[2]>i?-n:r[2]-t[0]>i?n:0),t[0]+=a}Ie(e,t)}function He(t,e,r,n){for(var i=Math.pow(2,n.z)*Le,a=[n.x*Le,n.y*Le],o=[],s=0,l=t;s<l.length;s+=1)for(var c=0,u=l[s];c<u.length;c+=1){var h=u[c],f=[h.x+a[0],h.y+a[1]];qe(f,e,r,i),o.push(f)}return o}function Ge(t,e,r,n){for(var i=Math.pow(2,n.z)*Le,a=[n.x*Le,n.y*Le],o=[],s=0,l=t;s<l.length;s+=1){for(var c=[],u=0,h=l[s];u<h.length;u+=1){var f=h[u],p=[f.x+a[0],f.y+a[1]];Ie(e,p),c.push(p)}o.push(c)}if(e[2]-e[0]<=i/2){(v=e)[0]=v[1]=1/0,v[2]=v[3]=-1/0;for(var d=0,m=o;d<m.length;d+=1)for(var g=0,y=m[d];g<y.length;g+=1)qe(y[g],e,r,i)}var v;return o}var Ze=function(t,e){this.type=Yt,this.geojson=t,this.geometries=e};function We(t){if(t instanceof Ee){if(\"get\"===t.name&&1===t.args.length)return!1;if(\"feature-state\"===t.name)return!1;if(\"has\"===t.name&&1===t.args.length)return!1;if(\"properties\"===t.name||\"geometry-type\"===t.name||\"id\"===t.name)return!1;if(/^filter-/.test(t.name))return!1}if(t instanceof Ze)return!1;var e=!0;return t.eachChild((function(t){e&&!We(t)&&(e=!1)})),e}function Ye(t){if(t instanceof Ee&&\"feature-state\"===t.name)return!1;var e=!0;return t.eachChild((function(t){e&&!Ye(t)&&(e=!1)})),e}function Xe(t,e){if(t instanceof Ee&&e.indexOf(t.name)>=0)return!1;var r=!0;return t.eachChild((function(t){r&&!Xe(t,e)&&(r=!1)})),r}Ze.parse=function(t,e){if(2!==t.length)return e.error(\"'within' expression requires exactly one argument, but found \"+(t.length-1)+\" instead.\");if(me(t[1])){var r=t[1];if(\"FeatureCollection\"===r.type)for(var n=0;n<r.features.length;++n){var i=r.features[n].geometry.type;if(\"Polygon\"===i||\"MultiPolygon\"===i)return new Ze(r,r.features[n].geometry)}else if(\"Feature\"===r.type){var a=r.geometry.type;if(\"Polygon\"===a||\"MultiPolygon\"===a)return new Ze(r,r.geometry)}else if(\"Polygon\"===r.type||\"MultiPolygon\"===r.type)return new Ze(r,r)}return e.error(\"'within' expression requires valid geojson object that contains polygon geometry type.\")},Ze.prototype.evaluate=function(t){if(null!=t.geometry()&&null!=t.canonicalID()){if(\"Point\"===t.geometryType())return function(t,e){var r=[1/0,1/0,-1/0,-1/0],n=[1/0,1/0,-1/0,-1/0],i=t.canonicalID();if(\"Polygon\"===e.type){var a=Ue(e.coordinates,n,i),o=He(t.geometry(),r,n,i);if(!Pe(r,n))return!1;for(var s=0,l=o;s<l.length;s+=1)if(!De(l[s],a))return!1}if(\"MultiPolygon\"===e.type){var c=Ve(e.coordinates,n,i),u=He(t.geometry(),r,n,i);if(!Pe(r,n))return!1;for(var h=0,f=u;h<f.length;h+=1)if(!Re(f[h],c))return!1}return!0}(t,this.geometries);if(\"LineString\"===t.geometryType())return function(t,e){var r=[1/0,1/0,-1/0,-1/0],n=[1/0,1/0,-1/0,-1/0],i=t.canonicalID();if(\"Polygon\"===e.type){var a=Ue(e.coordinates,n,i),o=Ge(t.geometry(),r,n,i);if(!Pe(r,n))return!1;for(var s=0,l=o;s<l.length;s+=1)if(!Ne(l[s],a))return!1}if(\"MultiPolygon\"===e.type){var c=Ve(e.coordinates,n,i),u=Ge(t.geometry(),r,n,i);if(!Pe(r,n))return!1;for(var h=0,f=u;h<f.length;h+=1)if(!je(f[h],c))return!1}return!0}(t,this.geometries)}return!1},Ze.prototype.eachChild=function(){},Ze.prototype.outputDefined=function(){return!0},Ze.prototype.serialize=function(){return[\"within\",this.geojson]};var $e=function(t,e){this.type=e.type,this.name=t,this.boundExpression=e};$e.parse=function(t,e){if(2!==t.length||\"string\"!=typeof t[1])return e.error(\"'var' expression requires exactly one string literal argument.\");var r=t[1];return e.scope.has(r)?new $e(r,e.scope.get(r)):e.error('Unknown variable \"'+r+'\". Make sure \"'+r+'\" has been bound in an enclosing \"let\" expression before using it.',1)},$e.prototype.evaluate=function(t){return this.boundExpression.evaluate(t)},$e.prototype.eachChild=function(){},$e.prototype.outputDefined=function(){return!1},$e.prototype.serialize=function(){return[\"var\",this.name]};var Je=function(t,e,r,n,i){void 0===e&&(e=[]),void 0===n&&(n=new Ht),void 0===i&&(i=[]),this.registry=t,this.path=e,this.key=e.map((function(t){return\"[\"+t+\"]\"})).join(\"\"),this.scope=n,this.errors=i,this.expectedType=r};function Ke(t){if(t instanceof $e)return Ke(t.boundExpression);if(t instanceof Ee&&\"error\"===t.name)return!1;if(t instanceof Ce)return!1;if(t instanceof Ze)return!1;var e=t instanceof Ae||t instanceof be,r=!0;return t.eachChild((function(t){r=e?r&&Ke(t):r&&t instanceof ve})),!!r&&We(t)&&Xe(t,[\"zoom\",\"heatmap-density\",\"line-progress\",\"accumulated\",\"is-supported-script\"])}function Qe(t,e){for(var r,n,i=t.length-1,a=0,o=i,s=0;a<=o;)if(r=t[s=Math.floor((a+o)/2)],n=t[s+1],r<=e){if(s===i||e<n)return s;a=s+1}else{if(!(r>e))throw new xe(\"Input is not a number.\");o=s-1}return 0}Je.prototype.parse=function(t,e,r,n,i){return void 0===i&&(i={}),e?this.concat(e,r,n)._parse(t,i):this._parse(t,i)},Je.prototype._parse=function(t,e){function r(t,e,r){return\"assert\"===r?new be(e,[t]):\"coerce\"===r?new Ae(e,[t]):t}if(null!==t&&\"string\"!=typeof t&&\"boolean\"!=typeof t&&\"number\"!=typeof t||(t=[\"literal\",t]),Array.isArray(t)){if(0===t.length)return this.error('Expected an array with at least one element. If you wanted a literal array, use [\"literal\", []].');var n=t[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(t,this);if(!a)return null;if(this.expectedType){var o=this.expectedType,s=a.type;if(\"string\"!==o.kind&&\"number\"!==o.kind&&\"boolean\"!==o.kind&&\"object\"!==o.kind&&\"array\"!==o.kind||\"value\"!==s.kind)if(\"color\"!==o.kind&&\"formatted\"!==o.kind&&\"resolvedImage\"!==o.kind||\"value\"!==s.kind&&\"string\"!==s.kind){if(this.checkSubtype(o,s))return null}else a=r(a,o,e.typeAnnotation||\"coerce\");else a=r(a,o,e.typeAnnotation||\"assert\")}if(!(a instanceof ve)&&\"resolvedImage\"!==a.type.kind&&Ke(a)){var l=new Se;try{a=new ve(a.type,a.evaluate(l))}catch(t){return this.error(t.message),null}}return a}return this.error('Unknown expression \"'+n+'\". If you wanted a literal array, use [\"literal\", [...]].',0)}return void 0===t?this.error(\"'undefined' value invalid. Use null instead.\"):\"object\"==typeof t?this.error('Bare objects invalid. Use [\"literal\", {...}] instead.'):this.error(\"Expected an array, but found \"+typeof t+\" instead.\")},Je.prototype.concat=function(t,e,r){var n=\"number\"==typeof t?this.path.concat(t):this.path,i=r?this.scope.concat(r):this.scope;return new Je(this.registry,n,e||null,i,this.errors)},Je.prototype.error=function(t){for(var e=[],r=arguments.length-1;r-- >0;)e[r]=arguments[r+1];var n=\"\"+this.key+e.map((function(t){return\"[\"+t+\"]\"})).join(\"\");this.errors.push(new qt(n,t))},Je.prototype.checkSubtype=function(t,e){var r=ie(t,e);return r&&this.error(r),r};var tr=function(t,e,r){this.type=t,this.input=e,this.labels=[],this.outputs=[];for(var n=0,i=r;n<i.length;n+=1){var a=i[n],o=a[0],s=a[1];this.labels.push(o),this.outputs.push(s)}};function er(t,e,r){return t*(1-r)+e*r}tr.parse=function(t,e){if(t.length-1<4)return e.error(\"Expected at least 4 arguments, but found only \"+(t.length-1)+\".\");if((t.length-1)%2!=0)return e.error(\"Expected an even number of arguments.\");var r=e.parse(t[1],1,Zt);if(!r)return null;var n=[],i=null;e.expectedType&&\"value\"!==e.expectedType.kind&&(i=e.expectedType);for(var a=1;a<t.length;a+=2){var o=1===a?-1/0:t[a],s=t[a+1],l=a,c=a+1;if(\"number\"!=typeof o)return e.error('Input/output pairs for \"step\" expressions must be defined using literal numeric values (not computed expressions) for the input values.',l);if(n.length&&n[n.length-1][0]>=o)return e.error('Input/output pairs for \"step\" expressions must be arranged with input values in strictly ascending order.',l);var u=e.parse(s,c,i);if(!u)return null;i=i||u.type,n.push([o,u])}return new tr(i,r,n)},tr.prototype.evaluate=function(t){var e=this.labels,r=this.outputs;if(1===e.length)return r[0].evaluate(t);var n=this.input.evaluate(t);if(n<=e[0])return r[0].evaluate(t);var i=e.length;return n>=e[i-1]?r[i-1].evaluate(t):r[Qe(e,n)].evaluate(t)},tr.prototype.eachChild=function(t){t(this.input);for(var e=0,r=this.outputs;e<r.length;e+=1)t(r[e])},tr.prototype.outputDefined=function(){return this.outputs.every((function(t){return t.outputDefined()}))},tr.prototype.serialize=function(){for(var t=[\"step\",this.input.serialize()],e=0;e<this.labels.length;e++)e>0&&t.push(this.labels[e]),t.push(this.outputs[e].serialize());return t};var rr=Object.freeze({__proto__:null,number:er,color:function(t,e,r){return new ce(er(t.r,e.r,r),er(t.g,e.g,r),er(t.b,e.b,r),er(t.a,e.a,r))},array:function(t,e,r){return t.map((function(t,n){return er(t,e[n],r)}))}}),nr=.95047,ir=1,ar=1.08883,or=4/29,sr=6/29,lr=3*sr*sr,cr=sr*sr*sr,ur=Math.PI/180,hr=180/Math.PI;function fr(t){return t>cr?Math.pow(t,1/3):t/lr+or}function pr(t){return t>sr?t*t*t:lr*(t-or)}function dr(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function mr(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function gr(t){var e=mr(t.r),r=mr(t.g),n=mr(t.b),i=fr((.4124564*e+.3575761*r+.1804375*n)/nr),a=fr((.2126729*e+.7151522*r+.072175*n)/ir);return{l:116*a-16,a:500*(i-a),b:200*(a-fr((.0193339*e+.119192*r+.9503041*n)/ar)),alpha:t.a}}function yr(t){var e=(t.l+16)/116,r=isNaN(t.a)?e:e+t.a/500,n=isNaN(t.b)?e:e-t.b/200;return e=ir*pr(e),r=nr*pr(r),n=ar*pr(n),new ce(dr(3.2404542*r-1.5371385*e-.4985314*n),dr(-.969266*r+1.8760108*e+.041556*n),dr(.0556434*r-.2040259*e+1.0572252*n),t.alpha)}function vr(t,e,r){var n=e-t;return t+r*(n>180||n<-180?n-360*Math.round(n/360):n)}var xr={forward:gr,reverse:yr,interpolate:function(t,e,r){return{l:er(t.l,e.l,r),a:er(t.a,e.a,r),b:er(t.b,e.b,r),alpha:er(t.alpha,e.alpha,r)}}},_r={forward:function(t){var e=gr(t),r=e.l,n=e.a,i=e.b,a=Math.atan2(i,n)*hr;return{h:a<0?a+360:a,c:Math.sqrt(n*n+i*i),l:r,alpha:t.a}},reverse:function(t){var e=t.h*ur,r=t.c;return yr({l:t.l,a:Math.cos(e)*r,b:Math.sin(e)*r,alpha:t.alpha})},interpolate:function(t,e,r){return{h:vr(t.h,e.h,r),c:er(t.c,e.c,r),l:er(t.l,e.l,r),alpha:er(t.alpha,e.alpha,r)}}},br=Object.freeze({__proto__:null,lab:xr,hcl:_r}),wr=function(t,e,r,n,i){this.type=t,this.operator=e,this.interpolation=r,this.input=n,this.labels=[],this.outputs=[];for(var a=0,o=i;a<o.length;a+=1){var s=o[a],l=s[0],c=s[1];this.labels.push(l),this.outputs.push(c)}};function Tr(t,e,r,n){var i=n-r,a=t-r;return 0===i?0:1===e?a/i:(Math.pow(e,a)-1)/(Math.pow(e,i)-1)}wr.interpolationFactor=function(t,e,r,i){var a=0;if(\"exponential\"===t.name)a=Tr(e,t.base,r,i);else if(\"linear\"===t.name)a=Tr(e,1,r,i);else if(\"cubic-bezier\"===t.name){var o=t.controlPoints;a=new n(o[0],o[1],o[2],o[3]).solve(Tr(e,1,r,i))}return a},wr.parse=function(t,e){var r=t[0],n=t[1],i=t[2],a=t.slice(3);if(!Array.isArray(n)||0===n.length)return e.error(\"Expected an interpolation type expression.\",1);if(\"linear\"===n[0])n={name:\"linear\"};else if(\"exponential\"===n[0]){var o=n[1];if(\"number\"!=typeof o)return e.error(\"Exponential interpolation requires a numeric base.\",1,1);n={name:\"exponential\",base:o}}else{if(\"cubic-bezier\"!==n[0])return e.error(\"Unknown interpolation type \"+String(n[0]),1,0);var s=n.slice(1);if(4!==s.length||s.some((function(t){return\"number\"!=typeof t||t<0||t>1})))return e.error(\"Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.\",1);n={name:\"cubic-bezier\",controlPoints:s}}if(t.length-1<4)return e.error(\"Expected at least 4 arguments, but found only \"+(t.length-1)+\".\");if((t.length-1)%2!=0)return e.error(\"Expected an even number of arguments.\");if(!(i=e.parse(i,2,Zt)))return null;var l=[],c=null;\"interpolate-hcl\"===r||\"interpolate-lab\"===r?c=Xt:e.expectedType&&\"value\"!==e.expectedType.kind&&(c=e.expectedType);for(var u=0;u<a.length;u+=2){var h=a[u],f=a[u+1],p=u+3,d=u+4;if(\"number\"!=typeof h)return e.error('Input/output pairs for \"interpolate\" expressions must be defined using literal numeric values (not computed expressions) for the input values.',p);if(l.length&&l[l.length-1][0]>=h)return e.error('Input/output pairs for \"interpolate\" expressions must be arranged with input values in strictly ascending order.',p);var m=e.parse(f,d,c);if(!m)return null;c=c||m.type,l.push([h,m])}return\"number\"===c.kind||\"color\"===c.kind||\"array\"===c.kind&&\"number\"===c.itemType.kind&&\"number\"==typeof c.N?new wr(c,r,n,i,l):e.error(\"Type \"+re(c)+\" is not interpolatable.\")},wr.prototype.evaluate=function(t){var e=this.labels,r=this.outputs;if(1===e.length)return r[0].evaluate(t);var n=this.input.evaluate(t);if(n<=e[0])return r[0].evaluate(t);var i=e.length;if(n>=e[i-1])return r[i-1].evaluate(t);var a=Qe(e,n),o=e[a],s=e[a+1],l=wr.interpolationFactor(this.interpolation,n,o,s),c=r[a].evaluate(t),u=r[a+1].evaluate(t);return\"interpolate\"===this.operator?rr[this.type.kind.toLowerCase()](c,u,l):\"interpolate-hcl\"===this.operator?_r.reverse(_r.interpolate(_r.forward(c),_r.forward(u),l)):xr.reverse(xr.interpolate(xr.forward(c),xr.forward(u),l))},wr.prototype.eachChild=function(t){t(this.input);for(var e=0,r=this.outputs;e<r.length;e+=1)t(r[e])},wr.prototype.outputDefined=function(){return this.outputs.every((function(t){return t.outputDefined()}))},wr.prototype.serialize=function(){var t;t=\"linear\"===this.interpolation.name?[\"linear\"]:\"exponential\"===this.interpolation.name?1===this.interpolation.base?[\"linear\"]:[\"exponential\",this.interpolation.base]:[\"cubic-bezier\"].concat(this.interpolation.controlPoints);for(var e=[this.operator,t,this.input.serialize()],r=0;r<this.labels.length;r++)e.push(this.labels[r],this.outputs[r].serialize());return e};var kr=function(t,e){this.type=t,this.args=e};kr.parse=function(t,e){if(t.length<2)return e.error(\"Expectected at least one argument.\");var r=null,n=e.expectedType;n&&\"value\"!==n.kind&&(r=n);for(var i=[],a=0,o=t.slice(1);a<o.length;a+=1){var s=o[a],l=e.parse(s,1+i.length,r,void 0,{typeAnnotation:\"omit\"});if(!l)return null;r=r||l.type,i.push(l)}var c=n&&i.some((function(t){return ie(n,t.type)}));return new kr(c?Jt:r,i)},kr.prototype.evaluate=function(t){for(var e,r=null,n=0,i=0,a=this.args;i<a.length&&(n++,(r=a[i].evaluate(t))&&r instanceof pe&&!r.available&&(e||(e=r.name),r=null,n===this.args.length&&(r=e)),null===r);i+=1);return r},kr.prototype.eachChild=function(t){this.args.forEach(t)},kr.prototype.outputDefined=function(){return this.args.every((function(t){return t.outputDefined()}))},kr.prototype.serialize=function(){var t=[\"coalesce\"];return this.eachChild((function(e){t.push(e.serialize())})),t};var Ar=function(t,e){this.type=e.type,this.bindings=[].concat(t),this.result=e};Ar.prototype.evaluate=function(t){return this.result.evaluate(t)},Ar.prototype.eachChild=function(t){for(var e=0,r=this.bindings;e<r.length;e+=1)t(r[e][1]);t(this.result)},Ar.parse=function(t,e){if(t.length<4)return e.error(\"Expected at least 3 arguments, but found \"+(t.length-1)+\" instead.\");for(var r=[],n=1;n<t.length-1;n+=2){var i=t[n];if(\"string\"!=typeof i)return e.error(\"Expected string, but found \"+typeof i+\" instead.\",n);if(/[^a-zA-Z0-9_]/.test(i))return e.error(\"Variable names must contain only alphanumeric characters or '_'.\",n);var a=e.parse(t[n+1],n+1);if(!a)return null;r.push([i,a])}var o=e.parse(t[t.length-1],t.length-1,e.expectedType,r);return o?new Ar(r,o):null},Ar.prototype.outputDefined=function(){return this.result.outputDefined()},Ar.prototype.serialize=function(){for(var t=[\"let\"],e=0,r=this.bindings;e<r.length;e+=1){var n=r[e],i=n[0],a=n[1];t.push(i,a.serialize())}return t.push(this.result.serialize()),t};var Mr=function(t,e,r){this.type=t,this.index=e,this.input=r};Mr.parse=function(t,e){if(3!==t.length)return e.error(\"Expected 2 arguments, but found \"+(t.length-1)+\" instead.\");var r=e.parse(t[1],1,Zt),n=e.parse(t[2],2,ee(e.expectedType||Jt));if(!r||!n)return null;var i=n.type;return new Mr(i.itemType,r,n)},Mr.prototype.evaluate=function(t){var e=this.index.evaluate(t),r=this.input.evaluate(t);if(e<0)throw new xe(\"Array index out of bounds: \"+e+\" < 0.\");if(e>=r.length)throw new xe(\"Array index out of bounds: \"+e+\" > \"+(r.length-1)+\".\");if(e!==Math.floor(e))throw new xe(\"Array index must be an integer, but found \"+e+\" instead.\");return r[e]},Mr.prototype.eachChild=function(t){t(this.index),t(this.input)},Mr.prototype.outputDefined=function(){return!1},Mr.prototype.serialize=function(){return[\"at\",this.index.serialize(),this.input.serialize()]};var Sr=function(t,e){this.type=Yt,this.needle=t,this.haystack=e};Sr.parse=function(t,e){if(3!==t.length)return e.error(\"Expected 2 arguments, but found \"+(t.length-1)+\" instead.\");var r=e.parse(t[1],1,Jt),n=e.parse(t[2],2,Jt);return r&&n?ae(r.type,[Yt,Wt,Zt,Gt,Jt])?new Sr(r,n):e.error(\"Expected first argument to be of type boolean, string, number or null, but found \"+re(r.type)+\" instead\"):null},Sr.prototype.evaluate=function(t){var e=this.needle.evaluate(t),r=this.haystack.evaluate(t);if(!r)return!1;if(!oe(e,[\"boolean\",\"string\",\"number\",\"null\"]))throw new xe(\"Expected first argument to be of type boolean, string, number or null, but found \"+re(ge(e))+\" instead.\");if(!oe(r,[\"string\",\"array\"]))throw new xe(\"Expected second argument to be of type array or string, but found \"+re(ge(r))+\" instead.\");return r.indexOf(e)>=0},Sr.prototype.eachChild=function(t){t(this.needle),t(this.haystack)},Sr.prototype.outputDefined=function(){return!0},Sr.prototype.serialize=function(){return[\"in\",this.needle.serialize(),this.haystack.serialize()]};var Er=function(t,e,r){this.type=Zt,this.needle=t,this.haystack=e,this.fromIndex=r};Er.parse=function(t,e){if(t.length<=2||t.length>=5)return e.error(\"Expected 3 or 4 arguments, but found \"+(t.length-1)+\" instead.\");var r=e.parse(t[1],1,Jt),n=e.parse(t[2],2,Jt);if(!r||!n)return null;if(!ae(r.type,[Yt,Wt,Zt,Gt,Jt]))return e.error(\"Expected first argument to be of type boolean, string, number or null, but found \"+re(r.type)+\" instead\");if(4===t.length){var i=e.parse(t[3],3,Zt);return i?new Er(r,n,i):null}return new Er(r,n)},Er.prototype.evaluate=function(t){var e=this.needle.evaluate(t),r=this.haystack.evaluate(t);if(!oe(e,[\"boolean\",\"string\",\"number\",\"null\"]))throw new xe(\"Expected first argument to be of type boolean, string, number or null, but found \"+re(ge(e))+\" instead.\");if(!oe(r,[\"string\",\"array\"]))throw new xe(\"Expected second argument to be of type array or string, but found \"+re(ge(r))+\" instead.\");if(this.fromIndex){var n=this.fromIndex.evaluate(t);return r.indexOf(e,n)}return r.indexOf(e)},Er.prototype.eachChild=function(t){t(this.needle),t(this.haystack),this.fromIndex&&t(this.fromIndex)},Er.prototype.outputDefined=function(){return!1},Er.prototype.serialize=function(){if(null!=this.fromIndex&&void 0!==this.fromIndex){var t=this.fromIndex.serialize();return[\"index-of\",this.needle.serialize(),this.haystack.serialize(),t]}return[\"index-of\",this.needle.serialize(),this.haystack.serialize()]};var Cr=function(t,e,r,n,i,a){this.inputType=t,this.type=e,this.input=r,this.cases=n,this.outputs=i,this.otherwise=a};Cr.parse=function(t,e){if(t.length<5)return e.error(\"Expected at least 4 arguments, but found only \"+(t.length-1)+\".\");if(t.length%2!=1)return e.error(\"Expected an even number of arguments.\");var r,n;e.expectedType&&\"value\"!==e.expectedType.kind&&(n=e.expectedType);for(var i={},a=[],o=2;o<t.length-1;o+=2){var s=t[o],l=t[o+1];Array.isArray(s)||(s=[s]);var c=e.concat(o);if(0===s.length)return c.error(\"Expected at least one branch label.\");for(var u=0,h=s;u<h.length;u+=1){var f=h[u];if(\"number\"!=typeof f&&\"string\"!=typeof f)return c.error(\"Branch labels must be numbers or strings.\");if(\"number\"==typeof f&&Math.abs(f)>Number.MAX_SAFE_INTEGER)return c.error(\"Branch labels must be integers no larger than \"+Number.MAX_SAFE_INTEGER+\".\");if(\"number\"==typeof f&&Math.floor(f)!==f)return c.error(\"Numeric branch labels must be integer values.\");if(r){if(c.checkSubtype(r,ge(f)))return null}else r=ge(f);if(void 0!==i[String(f)])return c.error(\"Branch labels must be unique.\");i[String(f)]=a.length}var p=e.parse(l,o,n);if(!p)return null;n=n||p.type,a.push(p)}var d=e.parse(t[1],1,Jt);if(!d)return null;var m=e.parse(t[t.length-1],t.length-1,n);return m?\"value\"!==d.type.kind&&e.concat(1).checkSubtype(r,d.type)?null:new Cr(r,n,d,i,a,m):null},Cr.prototype.evaluate=function(t){var e=this.input.evaluate(t);return(ge(e)===this.inputType&&this.outputs[this.cases[e]]||this.otherwise).evaluate(t)},Cr.prototype.eachChild=function(t){t(this.input),this.outputs.forEach(t),t(this.otherwise)},Cr.prototype.outputDefined=function(){return this.outputs.every((function(t){return t.outputDefined()}))&&this.otherwise.outputDefined()},Cr.prototype.serialize=function(){for(var t=this,e=[\"match\",this.input.serialize()],r=[],n={},i=0,a=Object.keys(this.cases).sort();i<a.length;i+=1){var o=a[i];void 0===(h=n[this.cases[o]])?(n[this.cases[o]]=r.length,r.push([this.cases[o],[o]])):r[h][1].push(o)}for(var s=function(e){return\"number\"===t.inputType.kind?Number(e):e},l=0,c=r;l<c.length;l+=1){var u=c[l],h=u[0],f=u[1];1===f.length?e.push(s(f[0])):e.push(f.map(s)),e.push(this.outputs[outputIndex$1].serialize())}return e.push(this.otherwise.serialize()),e};var Lr=function(t,e,r){this.type=t,this.branches=e,this.otherwise=r};Lr.parse=function(t,e){if(t.length<4)return e.error(\"Expected at least 3 arguments, but found only \"+(t.length-1)+\".\");if(t.length%2!=0)return e.error(\"Expected an odd number of arguments.\");var r;e.expectedType&&\"value\"!==e.expectedType.kind&&(r=e.expectedType);for(var n=[],i=1;i<t.length-1;i+=2){var a=e.parse(t[i],i,Yt);if(!a)return null;var o=e.parse(t[i+1],i+1,r);if(!o)return null;n.push([a,o]),r=r||o.type}var s=e.parse(t[t.length-1],t.length-1,r);return s?new Lr(r,n,s):null},Lr.prototype.evaluate=function(t){for(var e=0,r=this.branches;e<r.length;e+=1){var n=r[e],i=n[0],a=n[1];if(i.evaluate(t))return a.evaluate(t)}return this.otherwise.evaluate(t)},Lr.prototype.eachChild=function(t){for(var e=0,r=this.branches;e<r.length;e+=1){var n=r[e],i=n[0],a=n[1];t(i),t(a)}t(this.otherwise)},Lr.prototype.outputDefined=function(){return this.branches.every((function(t){return t[0],t[1].outputDefined()}))&&this.otherwise.outputDefined()},Lr.prototype.serialize=function(){var t=[\"case\"];return this.eachChild((function(e){t.push(e.serialize())})),t};var Ir=function(t,e,r,n){this.type=t,this.input=e,this.beginIndex=r,this.endIndex=n};function Pr(t,e){return\"==\"===t||\"!=\"===t?\"boolean\"===e.kind||\"string\"===e.kind||\"number\"===e.kind||\"null\"===e.kind||\"value\"===e.kind:\"string\"===e.kind||\"number\"===e.kind||\"value\"===e.kind}function zr(t,e,r,n){return 0===n.compare(e,r)}function Or(t,e,r){var n=\"==\"!==t&&\"!=\"!==t;return function(){function i(t,e,r){this.type=Yt,this.lhs=t,this.rhs=e,this.collator=r,this.hasUntypedArgument=\"value\"===t.type.kind||\"value\"===e.type.kind}return i.parse=function(t,e){if(3!==t.length&&4!==t.length)return e.error(\"Expected two or three arguments.\");var r=t[0],a=e.parse(t[1],1,Jt);if(!a)return null;if(!Pr(r,a.type))return e.concat(1).error('\"'+r+\"\\\" comparisons are not supported for type '\"+re(a.type)+\"'.\");var o=e.parse(t[2],2,Jt);if(!o)return null;if(!Pr(r,o.type))return e.concat(2).error('\"'+r+\"\\\" comparisons are not supported for type '\"+re(o.type)+\"'.\");if(a.type.kind!==o.type.kind&&\"value\"!==a.type.kind&&\"value\"!==o.type.kind)return e.error(\"Cannot compare types '\"+re(a.type)+\"' and '\"+re(o.type)+\"'.\");n&&(\"value\"===a.type.kind&&\"value\"!==o.type.kind?a=new be(o.type,[a]):\"value\"!==a.type.kind&&\"value\"===o.type.kind&&(o=new be(a.type,[o])));var s=null;if(4===t.length){if(\"string\"!==a.type.kind&&\"string\"!==o.type.kind&&\"value\"!==a.type.kind&&\"value\"!==o.type.kind)return e.error(\"Cannot use collator to compare non-string types.\");if(!(s=e.parse(t[3],3,Kt)))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=ge(a),l=ge(o);if(s.kind!==l.kind||\"string\"!==s.kind&&\"number\"!==s.kind)throw new xe('Expected arguments for \"'+t+'\" to be (string, string) or (number, number), but found ('+s.kind+\", \"+l.kind+\") instead.\")}if(this.collator&&!n&&this.hasUntypedArgument){var c=ge(a),u=ge(o);if(\"string\"!==c.kind||\"string\"!==u.kind)return e(i,a,o)}return this.collator?r(i,a,o,this.collator.evaluate(i)):e(i,a,o)},i.prototype.eachChild=function(t){t(this.lhs),t(this.rhs),this.collator&&t(this.collator)},i.prototype.outputDefined=function(){return!0},i.prototype.serialize=function(){var e=[t];return this.eachChild((function(t){e.push(t.serialize())})),e},i}()}Ir.parse=function(t,e){if(t.length<=2||t.length>=5)return e.error(\"Expected 3 or 4 arguments, but found \"+(t.length-1)+\" instead.\");var r=e.parse(t[1],1,Jt),n=e.parse(t[2],2,Zt);if(!r||!n)return null;if(!ae(r.type,[ee(Jt),Wt,Jt]))return e.error(\"Expected first argument to be of type array or string, but found \"+re(r.type)+\" instead\");if(4===t.length){var i=e.parse(t[3],3,Zt);return i?new Ir(r.type,r,n,i):null}return new Ir(r.type,r,n)},Ir.prototype.evaluate=function(t){var e=this.input.evaluate(t),r=this.beginIndex.evaluate(t);if(!oe(e,[\"string\",\"array\"]))throw new xe(\"Expected first argument to be of type array or string, but found \"+re(ge(e))+\" instead.\");if(this.endIndex){var n=this.endIndex.evaluate(t);return e.slice(r,n)}return e.slice(r)},Ir.prototype.eachChild=function(t){t(this.input),t(this.beginIndex),this.endIndex&&t(this.endIndex)},Ir.prototype.outputDefined=function(){return!1},Ir.prototype.serialize=function(){if(null!=this.endIndex&&void 0!==this.endIndex){var t=this.endIndex.serialize();return[\"slice\",this.input.serialize(),this.beginIndex.serialize(),t]}return[\"slice\",this.input.serialize(),this.beginIndex.serialize()]};var Dr=Or(\"==\",(function(t,e,r){return e===r}),zr),Rr=Or(\"!=\",(function(t,e,r){return e!==r}),(function(t,e,r,n){return!zr(0,e,r,n)})),Fr=Or(\"<\",(function(t,e,r){return e<r}),(function(t,e,r,n){return n.compare(e,r)<0})),Br=Or(\">\",(function(t,e,r){return e>r}),(function(t,e,r,n){return n.compare(e,r)>0})),Nr=Or(\"<=\",(function(t,e,r){return e<=r}),(function(t,e,r,n){return n.compare(e,r)<=0})),jr=Or(\">=\",(function(t,e,r){return e>=r}),(function(t,e,r,n){return n.compare(e,r)>=0})),Ur=function(t,e,r,n,i){this.type=Wt,this.number=t,this.locale=e,this.currency=r,this.minFractionDigits=n,this.maxFractionDigits=i};Ur.parse=function(t,e){if(3!==t.length)return e.error(\"Expected two arguments.\");var r=e.parse(t[1],1,Zt);if(!r)return null;var n=t[2];if(\"object\"!=typeof n||Array.isArray(n))return e.error(\"NumberFormat options argument must be an object.\");var i=null;if(n.locale&&!(i=e.parse(n.locale,1,Wt)))return null;var a=null;if(n.currency&&!(a=e.parse(n.currency,1,Wt)))return null;var o=null;if(n[\"min-fraction-digits\"]&&!(o=e.parse(n[\"min-fraction-digits\"],1,Zt)))return null;var s=null;return n[\"max-fraction-digits\"]&&!(s=e.parse(n[\"max-fraction-digits\"],1,Zt))?null:new Ur(r,i,a,o,s)},Ur.prototype.evaluate=function(t){return new Intl.NumberFormat(this.locale?this.locale.evaluate(t):[],{style:this.currency?\"currency\":\"decimal\",currency:this.currency?this.currency.evaluate(t):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(t):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(t):void 0}).format(this.number.evaluate(t))},Ur.prototype.eachChild=function(t){t(this.number),this.locale&&t(this.locale),this.currency&&t(this.currency),this.minFractionDigits&&t(this.minFractionDigits),this.maxFractionDigits&&t(this.maxFractionDigits)},Ur.prototype.outputDefined=function(){return!1},Ur.prototype.serialize=function(){var t={};return this.locale&&(t.locale=this.locale.serialize()),this.currency&&(t.currency=this.currency.serialize()),this.minFractionDigits&&(t[\"min-fraction-digits\"]=this.minFractionDigits.serialize()),this.maxFractionDigits&&(t[\"max-fraction-digits\"]=this.maxFractionDigits.serialize()),[\"number-format\",this.number.serialize(),t]};var Vr=function(t){this.type=Zt,this.input=t};Vr.parse=function(t,e){if(2!==t.length)return e.error(\"Expected 1 argument, but found \"+(t.length-1)+\" instead.\");var r=e.parse(t[1],1);return r?\"array\"!==r.type.kind&&\"string\"!==r.type.kind&&\"value\"!==r.type.kind?e.error(\"Expected argument of type string or array, but found \"+re(r.type)+\" instead.\"):new Vr(r):null},Vr.prototype.evaluate=function(t){var e=this.input.evaluate(t);if(\"string\"==typeof e)return e.length;if(Array.isArray(e))return e.length;throw new xe(\"Expected value to be of type string or array, but found \"+re(ge(e))+\" instead.\")},Vr.prototype.eachChild=function(t){t(this.input)},Vr.prototype.outputDefined=function(){return!1},Vr.prototype.serialize=function(){var t=[\"length\"];return this.eachChild((function(e){t.push(e.serialize())})),t};var qr={\"==\":Dr,\"!=\":Rr,\">\":Br,\"<\":Fr,\">=\":jr,\"<=\":Nr,array:be,at:Mr,boolean:be,case:Lr,coalesce:kr,collator:Ce,format:we,image:Te,in:Sr,\"index-of\":Er,interpolate:wr,\"interpolate-hcl\":wr,\"interpolate-lab\":wr,length:Vr,let:Ar,literal:ve,match:Cr,number:be,\"number-format\":Ur,object:be,slice:Ir,step:tr,string:be,\"to-boolean\":Ae,\"to-color\":Ae,\"to-number\":Ae,\"to-string\":Ae,var:$e,within:Ze};function Hr(t,e){var r=e[0],n=e[1],i=e[2],a=e[3];r=r.evaluate(t),n=n.evaluate(t),i=i.evaluate(t);var o=a?a.evaluate(t):1,s=de(r,n,i,o);if(s)throw new xe(s);return new ce(r/255*o,n/255*o,i/255*o,o)}function Gr(t,e){return t in e}function Zr(t,e){var r=e[t];return void 0===r?null:r}function Wr(t){return{type:t}}function Yr(t){return{result:\"success\",value:t}}function Xr(t){return{result:\"error\",value:t}}function $r(t){return\"data-driven\"===t[\"property-type\"]||\"cross-faded-data-driven\"===t[\"property-type\"]}function Jr(t){return!!t.expression&&t.expression.parameters.indexOf(\"zoom\")>-1}function Kr(t){return!!t.expression&&t.expression.interpolated}function Qr(t){return t instanceof Number?\"number\":t instanceof String?\"string\":t instanceof Boolean?\"boolean\":Array.isArray(t)?\"array\":null===t?\"null\":typeof t}function tn(t){return\"object\"==typeof t&&null!==t&&!Array.isArray(t)}function en(t){return t}function rn(t,e){var r,n,i,a=\"color\"===e.type,o=t.stops&&\"object\"==typeof t.stops[0][0],s=o||void 0!==t.property,l=o||!s,c=t.type||(Kr(e)?\"exponential\":\"interval\");if(a&&((t=jt({},t)).stops&&(t.stops=t.stops.map((function(t){return[t[0],ce.parse(t[1])]}))),t.default?t.default=ce.parse(t.default):t.default=ce.parse(e.default)),t.colorSpace&&\"rgb\"!==t.colorSpace&&!br[t.colorSpace])throw new Error(\"Unknown color space: \"+t.colorSpace);if(\"exponential\"===c)r=sn;else if(\"interval\"===c)r=on;else if(\"categorical\"===c){r=an,n=Object.create(null);for(var u=0,h=t.stops;u<h.length;u+=1){var f=h[u];n[f[0]]=f[1]}i=typeof t.stops[0][0]}else{if(\"identity\"!==c)throw new Error('Unknown function type \"'+c+'\"');r=ln}if(o){for(var p={},d=[],m=0;m<t.stops.length;m++){var g=t.stops[m],y=g[0].zoom;void 0===p[y]&&(p[y]={zoom:y,type:t.type,property:t.property,default:t.default,stops:[]},d.push(y)),p[y].stops.push([g[0].value,g[1]])}for(var v=[],x=0,_=d;x<_.length;x+=1){var b=_[x];v.push([p[b].zoom,rn(p[b],e)])}var w={name:\"linear\"};return{kind:\"composite\",interpolationType:w,interpolationFactor:wr.interpolationFactor.bind(void 0,w),zoomStops:v.map((function(t){return t[0]})),evaluate:function(r,n){var i=r.zoom;return sn({stops:v,base:t.base},e,i).evaluate(i,n)}}}if(l){var T=\"exponential\"===c?{name:\"exponential\",base:void 0!==t.base?t.base:1}:null;return{kind:\"camera\",interpolationType:T,interpolationFactor:wr.interpolationFactor.bind(void 0,T),zoomStops:t.stops.map((function(t){return t[0]})),evaluate:function(a){var o=a.zoom;return r(t,e,o,n,i)}}}return{kind:\"source\",evaluate:function(a,o){var s=o&&o.properties?o.properties[t.property]:void 0;return void 0===s?nn(t.default,e.default):r(t,e,s,n,i)}}}function nn(t,e,r){return void 0!==t?t:void 0!==e?e:void 0!==r?r:void 0}function an(t,e,r,n,i){return nn(typeof r===i?n[r]:void 0,t.default,e.default)}function on(t,e,r){if(\"number\"!==Qr(r))return nn(t.default,e.default);var n=t.stops.length;if(1===n)return t.stops[0][1];if(r<=t.stops[0][0])return t.stops[0][1];if(r>=t.stops[n-1][0])return t.stops[n-1][1];var i=Qe(t.stops.map((function(t){return t[0]})),r);return t.stops[i][1]}function sn(t,e,r){var n=void 0!==t.base?t.base:1;if(\"number\"!==Qr(r))return nn(t.default,e.default);var i=t.stops.length;if(1===i)return t.stops[0][1];if(r<=t.stops[0][0])return t.stops[0][1];if(r>=t.stops[i-1][0])return t.stops[i-1][1];var a=Qe(t.stops.map((function(t){return t[0]})),r),o=function(t,e,r,n){var i=n-r,a=t-r;return 0===i?0:1===e?a/i:(Math.pow(e,a)-1)/(Math.pow(e,i)-1)}(r,n,t.stops[a][0],t.stops[a+1][0]),s=t.stops[a][1],l=t.stops[a+1][1],c=rr[e.type]||en;if(t.colorSpace&&\"rgb\"!==t.colorSpace){var u=br[t.colorSpace];c=function(t,e){return u.reverse(u.interpolate(u.forward(t),u.forward(e),o))}}return\"function\"==typeof s.evaluate?{evaluate:function(){for(var t=[],e=arguments.length;e--;)t[e]=arguments[e];var r=s.evaluate.apply(void 0,t),n=l.evaluate.apply(void 0,t);if(void 0!==r&&void 0!==n)return c(r,n,o)}}:c(s,l,o)}function ln(t,e,r){return\"color\"===e.type?r=ce.parse(r):\"formatted\"===e.type?r=fe.fromString(r.toString()):\"resolvedImage\"===e.type?r=pe.fromString(r.toString()):Qr(r)===e.type||\"enum\"===e.type&&e.values[r]||(r=void 0),nn(r,t.default,e.default)}Ee.register(qr,{error:[{kind:\"error\"},[Wt],function(t,e){var r=e[0];throw new xe(r.evaluate(t))}],typeof:[Wt,[Jt],function(t,e){return re(ge(e[0].evaluate(t)))}],\"to-rgba\":[ee(Zt,4),[Xt],function(t,e){return e[0].evaluate(t).toArray()}],rgb:[Xt,[Zt,Zt,Zt],Hr],rgba:[Xt,[Zt,Zt,Zt,Zt],Hr],has:{type:Yt,overloads:[[[Wt],function(t,e){return Gr(e[0].evaluate(t),t.properties())}],[[Wt,$t],function(t,e){var r=e[0],n=e[1];return Gr(r.evaluate(t),n.evaluate(t))}]]},get:{type:Jt,overloads:[[[Wt],function(t,e){return Zr(e[0].evaluate(t),t.properties())}],[[Wt,$t],function(t,e){var r=e[0],n=e[1];return Zr(r.evaluate(t),n.evaluate(t))}]]},\"feature-state\":[Jt,[Wt],function(t,e){return Zr(e[0].evaluate(t),t.featureState||{})}],properties:[$t,[],function(t){return t.properties()}],\"geometry-type\":[Wt,[],function(t){return t.geometryType()}],id:[Jt,[],function(t){return t.id()}],zoom:[Zt,[],function(t){return t.globals.zoom}],\"heatmap-density\":[Zt,[],function(t){return t.globals.heatmapDensity||0}],\"line-progress\":[Zt,[],function(t){return t.globals.lineProgress||0}],accumulated:[Jt,[],function(t){return void 0===t.globals.accumulated?null:t.globals.accumulated}],\"+\":[Zt,Wr(Zt),function(t,e){for(var r=0,n=0,i=e;n<i.length;n+=1)r+=i[n].evaluate(t);return r}],\"*\":[Zt,Wr(Zt),function(t,e){for(var r=1,n=0,i=e;n<i.length;n+=1)r*=i[n].evaluate(t);return r}],\"-\":{type:Zt,overloads:[[[Zt,Zt],function(t,e){var r=e[0],n=e[1];return r.evaluate(t)-n.evaluate(t)}],[[Zt],function(t,e){return-e[0].evaluate(t)}]]},\"/\":[Zt,[Zt,Zt],function(t,e){var r=e[0],n=e[1];return r.evaluate(t)/n.evaluate(t)}],\"%\":[Zt,[Zt,Zt],function(t,e){var r=e[0],n=e[1];return r.evaluate(t)%n.evaluate(t)}],ln2:[Zt,[],function(){return Math.LN2}],pi:[Zt,[],function(){return Math.PI}],e:[Zt,[],function(){return Math.E}],\"^\":[Zt,[Zt,Zt],function(t,e){var r=e[0],n=e[1];return Math.pow(r.evaluate(t),n.evaluate(t))}],sqrt:[Zt,[Zt],function(t,e){var r=e[0];return Math.sqrt(r.evaluate(t))}],log10:[Zt,[Zt],function(t,e){var r=e[0];return Math.log(r.evaluate(t))/Math.LN10}],ln:[Zt,[Zt],function(t,e){var r=e[0];return Math.log(r.evaluate(t))}],log2:[Zt,[Zt],function(t,e){var r=e[0];return Math.log(r.evaluate(t))/Math.LN2}],sin:[Zt,[Zt],function(t,e){var r=e[0];return Math.sin(r.evaluate(t))}],cos:[Zt,[Zt],function(t,e){var r=e[0];return Math.cos(r.evaluate(t))}],tan:[Zt,[Zt],function(t,e){var r=e[0];return Math.tan(r.evaluate(t))}],asin:[Zt,[Zt],function(t,e){var r=e[0];return Math.asin(r.evaluate(t))}],acos:[Zt,[Zt],function(t,e){var r=e[0];return Math.acos(r.evaluate(t))}],atan:[Zt,[Zt],function(t,e){var r=e[0];return Math.atan(r.evaluate(t))}],min:[Zt,Wr(Zt),function(t,e){return Math.min.apply(Math,e.map((function(e){return e.evaluate(t)})))}],max:[Zt,Wr(Zt),function(t,e){return Math.max.apply(Math,e.map((function(e){return e.evaluate(t)})))}],abs:[Zt,[Zt],function(t,e){var r=e[0];return Math.abs(r.evaluate(t))}],round:[Zt,[Zt],function(t,e){var r=e[0].evaluate(t);return r<0?-Math.round(-r):Math.round(r)}],floor:[Zt,[Zt],function(t,e){var r=e[0];return Math.floor(r.evaluate(t))}],ceil:[Zt,[Zt],function(t,e){var r=e[0];return Math.ceil(r.evaluate(t))}],\"filter-==\":[Yt,[Wt,Jt],function(t,e){var r=e[0],n=e[1];return t.properties()[r.value]===n.value}],\"filter-id-==\":[Yt,[Jt],function(t,e){var r=e[0];return t.id()===r.value}],\"filter-type-==\":[Yt,[Wt],function(t,e){var r=e[0];return t.geometryType()===r.value}],\"filter-<\":[Yt,[Wt,Jt],function(t,e){var r=e[0],n=e[1],i=t.properties()[r.value],a=n.value;return typeof i==typeof a&&i<a}],\"filter-id-<\":[Yt,[Jt],function(t,e){var r=e[0],n=t.id(),i=r.value;return typeof n==typeof i&&n<i}],\"filter->\":[Yt,[Wt,Jt],function(t,e){var r=e[0],n=e[1],i=t.properties()[r.value],a=n.value;return typeof i==typeof a&&i>a}],\"filter-id->\":[Yt,[Jt],function(t,e){var r=e[0],n=t.id(),i=r.value;return typeof n==typeof i&&n>i}],\"filter-<=\":[Yt,[Wt,Jt],function(t,e){var r=e[0],n=e[1],i=t.properties()[r.value],a=n.value;return typeof i==typeof a&&i<=a}],\"filter-id-<=\":[Yt,[Jt],function(t,e){var r=e[0],n=t.id(),i=r.value;return typeof n==typeof i&&n<=i}],\"filter->=\":[Yt,[Wt,Jt],function(t,e){var r=e[0],n=e[1],i=t.properties()[r.value],a=n.value;return typeof i==typeof a&&i>=a}],\"filter-id->=\":[Yt,[Jt],function(t,e){var r=e[0],n=t.id(),i=r.value;return typeof n==typeof i&&n>=i}],\"filter-has\":[Yt,[Jt],function(t,e){return e[0].value in t.properties()}],\"filter-has-id\":[Yt,[],function(t){return null!==t.id()&&void 0!==t.id()}],\"filter-type-in\":[Yt,[ee(Wt)],function(t,e){return e[0].value.indexOf(t.geometryType())>=0}],\"filter-id-in\":[Yt,[ee(Jt)],function(t,e){return e[0].value.indexOf(t.id())>=0}],\"filter-in-small\":[Yt,[Wt,ee(Jt)],function(t,e){var r=e[0];return e[1].value.indexOf(t.properties()[r.value])>=0}],\"filter-in-large\":[Yt,[Wt,ee(Jt)],function(t,e){var r=e[0],n=e[1];return function(t,e,r,n){for(;r<=n;){var i=r+n>>1;if(e[i]===t)return!0;e[i]>t?n=i-1:r=i+1}return!1}(t.properties()[r.value],n.value,0,n.value.length-1)}],all:{type:Yt,overloads:[[[Yt,Yt],function(t,e){var r=e[0],n=e[1];return r.evaluate(t)&&n.evaluate(t)}],[Wr(Yt),function(t,e){for(var r=0,n=e;r<n.length;r+=1)if(!n[r].evaluate(t))return!1;return!0}]]},any:{type:Yt,overloads:[[[Yt,Yt],function(t,e){var r=e[0],n=e[1];return r.evaluate(t)||n.evaluate(t)}],[Wr(Yt),function(t,e){for(var r=0,n=e;r<n.length;r+=1)if(n[r].evaluate(t))return!0;return!1}]]},\"!\":[Yt,[Yt],function(t,e){return!e[0].evaluate(t)}],\"is-supported-script\":[Yt,[Wt],function(t,e){var r=e[0],n=t.globals&&t.globals.isSupportedScript;return!n||n(r.evaluate(t))}],upcase:[Wt,[Wt],function(t,e){return e[0].evaluate(t).toUpperCase()}],downcase:[Wt,[Wt],function(t,e){return e[0].evaluate(t).toLowerCase()}],concat:[Wt,Wr(Jt),function(t,e){return e.map((function(e){return ye(e.evaluate(t))})).join(\"\")}],\"resolved-locale\":[Wt,[Kt],function(t,e){return e[0].evaluate(t).resolvedLocale()}]});var cn=function(t,e){this.expression=t,this._warningHistory={},this._evaluator=new Se,this._defaultValue=e?function(t){return\"color\"===t.type&&tn(t.default)?new ce(0,0,0,0):\"color\"===t.type?ce.parse(t.default)||null:void 0===t.default?null:t.default}(e):null,this._enumValues=e&&\"enum\"===e.type?e.values:null};function un(t){return Array.isArray(t)&&t.length>0&&\"string\"==typeof t[0]&&t[0]in qr}function hn(t,e){var r=new Je(qr,[],e?function(t){var e={color:Xt,string:Wt,number:Zt,enum:Wt,boolean:Yt,formatted:Qt,resolvedImage:te};return\"array\"===t.type?ee(e[t.value]||Jt,t.length):e[t.type]}(e):void 0),n=r.parse(t,void 0,void 0,void 0,e&&\"string\"===e.type?{typeAnnotation:\"coerce\"}:void 0);return n?Yr(new cn(n,e)):Xr(r.errors)}cn.prototype.evaluateWithoutErrorHandling=function(t,e,r,n,i,a){return this._evaluator.globals=t,this._evaluator.feature=e,this._evaluator.featureState=r,this._evaluator.canonical=n,this._evaluator.availableImages=i||null,this._evaluator.formattedSection=a,this.expression.evaluate(this._evaluator)},cn.prototype.evaluate=function(t,e,r,n,i,a){this._evaluator.globals=t,this._evaluator.feature=e||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||\"number\"==typeof o&&o!=o)return this._defaultValue;if(this._enumValues&&!(o in this._enumValues))throw new xe(\"Expected value to be one of \"+Object.keys(this._enumValues).map((function(t){return JSON.stringify(t)})).join(\", \")+\", but found \"+JSON.stringify(o)+\" instead.\");return o}catch(t){return this._warningHistory[t.message]||(this._warningHistory[t.message]=!0,\"undefined\"!=typeof console&&console.warn(t.message)),this._defaultValue}};var fn=function(t,e){this.kind=t,this._styleExpression=e,this.isStateDependent=\"constant\"!==t&&!Ye(e.expression)};fn.prototype.evaluateWithoutErrorHandling=function(t,e,r,n,i,a){return this._styleExpression.evaluateWithoutErrorHandling(t,e,r,n,i,a)},fn.prototype.evaluate=function(t,e,r,n,i,a){return this._styleExpression.evaluate(t,e,r,n,i,a)};var pn=function(t,e,r,n){this.kind=t,this.zoomStops=r,this._styleExpression=e,this.isStateDependent=\"camera\"!==t&&!Ye(e.expression),this.interpolationType=n};function dn(t,e){if(\"error\"===(t=hn(t,e)).result)return t;var r=t.value.expression,n=We(r);if(!n&&!$r(e))return Xr([new qt(\"\",\"data expressions not supported\")]);var i=Xe(r,[\"zoom\"]);if(!i&&!Jr(e))return Xr([new qt(\"\",\"zoom expressions not supported\")]);var a=gn(r);if(!a&&!i)return Xr([new qt(\"\",'\"zoom\" expression may only be used as input to a top-level \"step\" or \"interpolate\" expression.')]);if(a instanceof qt)return Xr([a]);if(a instanceof wr&&!Kr(e))return Xr([new qt(\"\",'\"interpolate\" expressions cannot be used with this property')]);if(!a)return Yr(new fn(n?\"constant\":\"source\",t.value));var o=a instanceof wr?a.interpolation:void 0;return Yr(new pn(n?\"camera\":\"composite\",t.value,a.labels,o))}pn.prototype.evaluateWithoutErrorHandling=function(t,e,r,n,i,a){return this._styleExpression.evaluateWithoutErrorHandling(t,e,r,n,i,a)},pn.prototype.evaluate=function(t,e,r,n,i,a){return this._styleExpression.evaluate(t,e,r,n,i,a)},pn.prototype.interpolationFactor=function(t,e,r){return this.interpolationType?wr.interpolationFactor(this.interpolationType,t,e,r):0};var mn=function(t,e){this._parameters=t,this._specification=e,jt(this,rn(this._parameters,this._specification))};function gn(t){var e=null;if(t instanceof Ar)e=gn(t.result);else if(t instanceof kr)for(var r=0,n=t.args;r<n.length;r+=1){var i=n[r];if(e=gn(i))break}else(t instanceof tr||t instanceof wr)&&t.input instanceof Ee&&\"zoom\"===t.input.name&&(e=t);return e instanceof qt||t.eachChild((function(t){var r=gn(t);r instanceof qt?e=r:!e&&r?e=new qt(\"\",'\"zoom\" expression may only be used as input to a top-level \"step\" or \"interpolate\" expression.'):e&&r&&e!==r&&(e=new qt(\"\",'Only one zoom-based \"step\" or \"interpolate\" subexpression may be used in an expression.'))})),e}function yn(t){var e=t.key,r=t.value,n=t.valueSpec||{},i=t.objectElementValidators||{},a=t.style,o=t.styleSpec,s=[],l=Qr(r);if(\"object\"!==l)return[new Bt(e,r,\"object expected, \"+l+\" found\")];for(var c in r){var u=c.split(\".\")[0],h=n[u]||n[\"*\"],f=void 0;if(i[u])f=i[u];else if(n[u])f=Hn;else if(i[\"*\"])f=i[\"*\"];else{if(!n[\"*\"]){s.push(new Bt(e,r[c],'unknown property \"'+c+'\"'));continue}f=Hn}s=s.concat(f({key:(e?e+\".\":e)+c,value:r[c],valueSpec:h,style:a,styleSpec:o,object:r,objectKey:c},r))}for(var p in n)i[p]||n[p].required&&void 0===n[p].default&&void 0===r[p]&&s.push(new Bt(e,r,'missing required property \"'+p+'\"'));return s}function vn(t){var e=t.value,r=t.valueSpec,n=t.style,i=t.styleSpec,a=t.key,o=t.arrayElementValidator||Hn;if(\"array\"!==Qr(e))return[new Bt(a,e,\"array expected, \"+Qr(e)+\" found\")];if(r.length&&e.length!==r.length)return[new Bt(a,e,\"array length \"+r.length+\" expected, length \"+e.length+\" found\")];if(r[\"min-length\"]&&e.length<r[\"min-length\"])return[new Bt(a,e,\"array length at least \"+r[\"min-length\"]+\" expected, length \"+e.length+\" found\")];var s={type:r.value,values:r.values};i.$version<7&&(s.function=r.function),\"object\"===Qr(r.value)&&(s=r.value);for(var l=[],c=0;c<e.length;c++)l=l.concat(o({array:e,arrayIndex:c,value:e[c],valueSpec:s,style:n,styleSpec:i,key:a+\"[\"+c+\"]\"}));return l}function xn(t){var e=t.key,r=t.value,n=t.valueSpec,i=Qr(r);return\"number\"===i&&r!=r&&(i=\"NaN\"),\"number\"!==i?[new Bt(e,r,\"number expected, \"+i+\" found\")]:\"minimum\"in n&&r<n.minimum?[new Bt(e,r,r+\" is less than the minimum value \"+n.minimum)]:\"maximum\"in n&&r>n.maximum?[new Bt(e,r,r+\" is greater than the maximum value \"+n.maximum)]:[]}function _n(t){var e,r,n,i=t.valueSpec,a=Ut(t.value.type),o={},s=\"categorical\"!==a&&void 0===t.value.property,l=!s,c=\"array\"===Qr(t.value.stops)&&\"array\"===Qr(t.value.stops[0])&&\"object\"===Qr(t.value.stops[0][0]),u=yn({key:t.key,value:t.value,valueSpec:t.styleSpec.function,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{stops:function(t){if(\"identity\"===a)return[new Bt(t.key,t.value,'identity function may not have a \"stops\" property')];var e=[],r=t.value;return e=e.concat(vn({key:t.key,value:r,valueSpec:t.valueSpec,style:t.style,styleSpec:t.styleSpec,arrayElementValidator:h})),\"array\"===Qr(r)&&0===r.length&&e.push(new Bt(t.key,r,\"array must have at least one stop\")),e},default:function(t){return Hn({key:t.key,value:t.value,valueSpec:i,style:t.style,styleSpec:t.styleSpec})}}});return\"identity\"===a&&s&&u.push(new Bt(t.key,t.value,'missing required property \"property\"')),\"identity\"===a||t.value.stops||u.push(new Bt(t.key,t.value,'missing required property \"stops\"')),\"exponential\"===a&&t.valueSpec.expression&&!Kr(t.valueSpec)&&u.push(new Bt(t.key,t.value,\"exponential functions not supported\")),t.styleSpec.$version>=8&&(l&&!$r(t.valueSpec)?u.push(new Bt(t.key,t.value,\"property functions not supported\")):s&&!Jr(t.valueSpec)&&u.push(new Bt(t.key,t.value,\"zoom functions not supported\"))),\"categorical\"!==a&&!c||void 0!==t.value.property||u.push(new Bt(t.key,t.value,'\"property\" property is required')),u;function h(t){var e=[],a=t.value,s=t.key;if(\"array\"!==Qr(a))return[new Bt(s,a,\"array expected, \"+Qr(a)+\" found\")];if(2!==a.length)return[new Bt(s,a,\"array length 2 expected, length \"+a.length+\" found\")];if(c){if(\"object\"!==Qr(a[0]))return[new Bt(s,a,\"object expected, \"+Qr(a[0])+\" found\")];if(void 0===a[0].zoom)return[new Bt(s,a,\"object stop key must have zoom\")];if(void 0===a[0].value)return[new Bt(s,a,\"object stop key must have value\")];if(n&&n>Ut(a[0].zoom))return[new Bt(s,a[0].zoom,\"stop zoom values must appear in ascending order\")];Ut(a[0].zoom)!==n&&(n=Ut(a[0].zoom),r=void 0,o={}),e=e.concat(yn({key:s+\"[0]\",value:a[0],valueSpec:{zoom:{}},style:t.style,styleSpec:t.styleSpec,objectElementValidators:{zoom:xn,value:f}}))}else e=e.concat(f({key:s+\"[0]\",value:a[0],valueSpec:{},style:t.style,styleSpec:t.styleSpec},a));return un(Vt(a[1]))?e.concat([new Bt(s+\"[1]\",a[1],\"expressions are not allowed in function stops.\")]):e.concat(Hn({key:s+\"[1]\",value:a[1],valueSpec:i,style:t.style,styleSpec:t.styleSpec}))}function f(t,n){var s=Qr(t.value),l=Ut(t.value),c=null!==t.value?t.value:n;if(e){if(s!==e)return[new Bt(t.key,c,s+\" stop domain type must match previous stop domain type \"+e)]}else e=s;if(\"number\"!==s&&\"string\"!==s&&\"boolean\"!==s)return[new Bt(t.key,c,\"stop domain value must be a number, string, or boolean\")];if(\"number\"!==s&&\"categorical\"!==a){var u=\"number expected, \"+s+\" found\";return $r(i)&&void 0===a&&(u+='\\nIf you intended to use a categorical function, specify `\"type\": \"categorical\"`.'),[new Bt(t.key,c,u)]}return\"categorical\"!==a||\"number\"!==s||isFinite(l)&&Math.floor(l)===l?\"categorical\"!==a&&\"number\"===s&&void 0!==r&&l<r?[new Bt(t.key,c,\"stop domain values must appear in ascending order\")]:(r=l,\"categorical\"===a&&l in o?[new Bt(t.key,c,\"stop domain values must be unique\")]:(o[l]=!0,[])):[new Bt(t.key,c,\"integer expected, found \"+l)]}}function bn(t){var e=(\"property\"===t.expressionContext?dn:hn)(Vt(t.value),t.valueSpec);if(\"error\"===e.result)return e.value.map((function(e){return new Bt(\"\"+t.key+e.key,t.value,e.message)}));var r=e.value.expression||e.value._styleExpression.expression;if(\"property\"===t.expressionContext&&\"text-font\"===t.propertyKey&&!r.outputDefined())return[new Bt(t.key,t.value,'Invalid data expression for \"'+t.propertyKey+'\". Output values must be contained as literals within the expression.')];if(\"property\"===t.expressionContext&&\"layout\"===t.propertyType&&!Ye(r))return[new Bt(t.key,t.value,'\"feature-state\" data expressions are not supported with layout properties.')];if(\"filter\"===t.expressionContext&&!Ye(r))return[new Bt(t.key,t.value,'\"feature-state\" data expressions are not supported with filters.')];if(t.expressionContext&&0===t.expressionContext.indexOf(\"cluster\")){if(!Xe(r,[\"zoom\",\"feature-state\"]))return[new Bt(t.key,t.value,'\"zoom\" and \"feature-state\" expressions are not supported with cluster properties.')];if(\"cluster-initial\"===t.expressionContext&&!We(r))return[new Bt(t.key,t.value,\"Feature data expressions are not supported with initial expression part of cluster properties.\")]}return[]}function wn(t){var e=t.key,r=t.value,n=t.valueSpec,i=[];return Array.isArray(n.values)?-1===n.values.indexOf(Ut(r))&&i.push(new Bt(e,r,\"expected one of [\"+n.values.join(\", \")+\"], \"+JSON.stringify(r)+\" found\")):-1===Object.keys(n.values).indexOf(Ut(r))&&i.push(new Bt(e,r,\"expected one of [\"+Object.keys(n.values).join(\", \")+\"], \"+JSON.stringify(r)+\" found\")),i}function Tn(t){if(!0===t||!1===t)return!0;if(!Array.isArray(t)||0===t.length)return!1;switch(t[0]){case\"has\":return t.length>=2&&\"$id\"!==t[1]&&\"$type\"!==t[1];case\"in\":return t.length>=3&&(\"string\"!=typeof t[1]||Array.isArray(t[2]));case\"!in\":case\"!has\":case\"none\":return!1;case\"==\":case\"!=\":case\">\":case\">=\":case\"<\":case\"<=\":return 3!==t.length||Array.isArray(t[1])||Array.isArray(t[2]);case\"any\":case\"all\":for(var e=0,r=t.slice(1);e<r.length;e+=1){var n=r[e];if(!Tn(n)&&\"boolean\"!=typeof n)return!1}return!0;default:return!0}}mn.deserialize=function(t){return new mn(t._parameters,t._specification)},mn.serialize=function(t){return{_parameters:t._parameters,_specification:t._specification}};var kn={type:\"boolean\",default:!1,transition:!1,\"property-type\":\"data-driven\",expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]}};function An(t){if(null==t)return{filter:function(){return!0},needGeometry:!1};Tn(t)||(t=En(t));var e=hn(t,kn);if(\"error\"===e.result)throw new Error(e.value.map((function(t){return t.key+\": \"+t.message})).join(\", \"));return{filter:function(t,r,n){return e.value.evaluate(t,r,{},n)},needGeometry:Sn(t)}}function Mn(t,e){return t<e?-1:t>e?1:0}function Sn(t){if(!Array.isArray(t))return!1;if(\"within\"===t[0])return!0;for(var e=1;e<t.length;e++)if(Sn(t[e]))return!0;return!1}function En(t){if(!t)return!0;var e,r=t[0];return t.length<=1?\"any\"!==r:\"==\"===r?Cn(t[1],t[2],\"==\"):\"!=\"===r?Pn(Cn(t[1],t[2],\"==\")):\"<\"===r||\">\"===r||\"<=\"===r||\">=\"===r?Cn(t[1],t[2],r):\"any\"===r?(e=t.slice(1),[\"any\"].concat(e.map(En))):\"all\"===r?[\"all\"].concat(t.slice(1).map(En)):\"none\"===r?[\"all\"].concat(t.slice(1).map(En).map(Pn)):\"in\"===r?Ln(t[1],t.slice(2)):\"!in\"===r?Pn(Ln(t[1],t.slice(2))):\"has\"===r?In(t[1]):\"!has\"===r?Pn(In(t[1])):\"within\"!==r||t}function Cn(t,e,r){switch(t){case\"$type\":return[\"filter-type-\"+r,e];case\"$id\":return[\"filter-id-\"+r,e];default:return[\"filter-\"+r,t,e]}}function Ln(t,e){if(0===e.length)return!1;switch(t){case\"$type\":return[\"filter-type-in\",[\"literal\",e]];case\"$id\":return[\"filter-id-in\",[\"literal\",e]];default:return e.length>200&&!e.some((function(t){return typeof t!=typeof e[0]}))?[\"filter-in-large\",t,[\"literal\",e.sort(Mn)]]:[\"filter-in-small\",t,[\"literal\",e]]}}function In(t){switch(t){case\"$type\":return!0;case\"$id\":return[\"filter-has-id\"];default:return[\"filter-has\",t]}}function Pn(t){return[\"!\",t]}function zn(t){return Tn(Vt(t.value))?bn(jt({},t,{expressionContext:\"filter\",valueSpec:{value:\"boolean\"}})):On(t)}function On(t){var e=t.value,r=t.key;if(\"array\"!==Qr(e))return[new Bt(r,e,\"array expected, \"+Qr(e)+\" found\")];var n,i=t.styleSpec,a=[];if(e.length<1)return[new Bt(r,e,\"filter array must have at least 1 element\")];switch(a=a.concat(wn({key:r+\"[0]\",value:e[0],valueSpec:i.filter_operator,style:t.style,styleSpec:t.styleSpec})),Ut(e[0])){case\"<\":case\"<=\":case\">\":case\">=\":e.length>=2&&\"$type\"===Ut(e[1])&&a.push(new Bt(r,e,'\"$type\" cannot be use with operator \"'+e[0]+'\"'));case\"==\":case\"!=\":3!==e.length&&a.push(new Bt(r,e,'filter array for operator \"'+e[0]+'\" must have 3 elements'));case\"in\":case\"!in\":e.length>=2&&\"string\"!==(n=Qr(e[1]))&&a.push(new Bt(r+\"[1]\",e[1],\"string expected, \"+n+\" found\"));for(var o=2;o<e.length;o++)n=Qr(e[o]),\"$type\"===Ut(e[1])?a=a.concat(wn({key:r+\"[\"+o+\"]\",value:e[o],valueSpec:i.geometry_type,style:t.style,styleSpec:t.styleSpec})):\"string\"!==n&&\"number\"!==n&&\"boolean\"!==n&&a.push(new Bt(r+\"[\"+o+\"]\",e[o],\"string, number, or boolean expected, \"+n+\" found\"));break;case\"any\":case\"all\":case\"none\":for(var s=1;s<e.length;s++)a=a.concat(On({key:r+\"[\"+s+\"]\",value:e[s],style:t.style,styleSpec:t.styleSpec}));break;case\"has\":case\"!has\":n=Qr(e[1]),2!==e.length?a.push(new Bt(r,e,'filter array for \"'+e[0]+'\" operator must have 2 elements')):\"string\"!==n&&a.push(new Bt(r+\"[1]\",e[1],\"string expected, \"+n+\" found\"));break;case\"within\":n=Qr(e[1]),2!==e.length?a.push(new Bt(r,e,'filter array for \"'+e[0]+'\" operator must have 2 elements')):\"object\"!==n&&a.push(new Bt(r+\"[1]\",e[1],\"object expected, \"+n+\" found\"))}return a}function Dn(t,e){var r=t.key,n=t.style,i=t.styleSpec,a=t.value,o=t.objectKey,s=i[e+\"_\"+t.layerType];if(!s)return[];var l=o.match(/^(.*)-transition$/);if(\"paint\"===e&&l&&s[l[1]]&&s[l[1]].transition)return Hn({key:r,value:a,valueSpec:i.transition,style:n,styleSpec:i});var c,u=t.valueSpec||s[o];if(!u)return[new Bt(r,a,'unknown property \"'+o+'\"')];if(\"string\"===Qr(a)&&$r(u)&&!u.tokens&&(c=/^{([^}]+)}$/.exec(a)))return[new Bt(r,a,'\"'+o+'\" does not support interpolation syntax\\nUse an identity property function instead: `{ \"type\": \"identity\", \"property\": '+JSON.stringify(c[1])+\" }`.\")];var h=[];return\"symbol\"===t.layerType&&(\"text-field\"===o&&n&&!n.glyphs&&h.push(new Bt(r,a,'use of \"text-field\" requires a style \"glyphs\" property')),\"text-font\"===o&&tn(Vt(a))&&\"identity\"===Ut(a.type)&&h.push(new Bt(r,a,'\"text-font\" does not support identity functions'))),h.concat(Hn({key:t.key,value:a,valueSpec:u,style:n,styleSpec:i,expressionContext:\"property\",propertyType:e,propertyKey:o}))}function Rn(t){return Dn(t,\"paint\")}function Fn(t){return Dn(t,\"layout\")}function Bn(t){var e=[],r=t.value,n=t.key,i=t.style,a=t.styleSpec;r.type||r.ref||e.push(new Bt(n,r,'either \"type\" or \"ref\" is required'));var o,s=Ut(r.type),l=Ut(r.ref);if(r.id)for(var c=Ut(r.id),u=0;u<t.arrayIndex;u++){var h=i.layers[u];Ut(h.id)===c&&e.push(new Bt(n,r.id,'duplicate layer id \"'+r.id+'\", previously used at line '+h.id.__line__))}if(\"ref\"in r)[\"type\",\"source\",\"source-layer\",\"filter\",\"layout\"].forEach((function(t){t in r&&e.push(new Bt(n,r[t],'\"'+t+'\" is prohibited for ref layers'))})),i.layers.forEach((function(t){Ut(t.id)===l&&(o=t)})),o?o.ref?e.push(new Bt(n,r.ref,\"ref cannot reference another ref layer\")):s=Ut(o.type):e.push(new Bt(n,r.ref,'ref layer \"'+l+'\" not found'));else if(\"background\"!==s)if(r.source){var f=i.sources&&i.sources[r.source],p=f&&Ut(f.type);f?\"vector\"===p&&\"raster\"===s?e.push(new Bt(n,r.source,'layer \"'+r.id+'\" requires a raster source')):\"raster\"===p&&\"raster\"!==s?e.push(new Bt(n,r.source,'layer \"'+r.id+'\" requires a vector source')):\"vector\"!==p||r[\"source-layer\"]?\"raster-dem\"===p&&\"hillshade\"!==s?e.push(new Bt(n,r.source,\"raster-dem source can only be used with layer type 'hillshade'.\")):\"line\"!==s||!r.paint||!r.paint[\"line-gradient\"]||\"geojson\"===p&&f.lineMetrics||e.push(new Bt(n,r,'layer \"'+r.id+'\" specifies a line-gradient, which requires a GeoJSON source with `lineMetrics` enabled.')):e.push(new Bt(n,r,'layer \"'+r.id+'\" must specify a \"source-layer\"')):e.push(new Bt(n,r.source,'source \"'+r.source+'\" not found'))}else e.push(new Bt(n,r,'missing required property \"source\"'));return e=e.concat(yn({key:n,value:r,valueSpec:a.layer,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{\"*\":function(){return[]},type:function(){return Hn({key:n+\".type\",value:r.type,valueSpec:a.layer.type,style:t.style,styleSpec:t.styleSpec,object:r,objectKey:\"type\"})},filter:zn,layout:function(t){return yn({layer:r,key:t.key,value:t.value,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{\"*\":function(t){return Fn(jt({layerType:s},t))}}})},paint:function(t){return yn({layer:r,key:t.key,value:t.value,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{\"*\":function(t){return Rn(jt({layerType:s},t))}}})}}})),e}function Nn(t){var e=t.value,r=t.key,n=Qr(e);return\"string\"!==n?[new Bt(r,e,\"string expected, \"+n+\" found\")]:[]}var jn={promoteId:function(t){var e=t.key,r=t.value;if(\"string\"===Qr(r))return Nn({key:e,value:r});var n=[];for(var i in r)n.push.apply(n,Nn({key:e+\".\"+i,value:r[i]}));return n}};function Un(t){var e=t.value,r=t.key,n=t.styleSpec,i=t.style;if(!e.type)return[new Bt(r,e,'\"type\" is required')];var a,o=Ut(e.type);switch(o){case\"vector\":case\"raster\":case\"raster-dem\":return yn({key:r,value:e,valueSpec:n[\"source_\"+o.replace(\"-\",\"_\")],style:t.style,styleSpec:n,objectElementValidators:jn});case\"geojson\":if(a=yn({key:r,value:e,valueSpec:n.source_geojson,style:i,styleSpec:n,objectElementValidators:jn}),e.cluster)for(var s in e.clusterProperties){var l=e.clusterProperties[s],c=l[0],u=l[1],h=\"string\"==typeof c?[c,[\"accumulated\"],[\"get\",s]]:c;a.push.apply(a,bn({key:r+\".\"+s+\".map\",value:u,expressionContext:\"cluster-map\"})),a.push.apply(a,bn({key:r+\".\"+s+\".reduce\",value:h,expressionContext:\"cluster-reduce\"}))}return a;case\"video\":return yn({key:r,value:e,valueSpec:n.source_video,style:i,styleSpec:n});case\"image\":return yn({key:r,value:e,valueSpec:n.source_image,style:i,styleSpec:n});case\"canvas\":return[new Bt(r,null,\"Please use runtime APIs to add canvas sources, rather than including them in stylesheets.\",\"source.canvas\")];default:return wn({key:r+\".type\",value:e.type,valueSpec:{values:[\"vector\",\"raster\",\"raster-dem\",\"geojson\",\"video\",\"image\"]},style:i,styleSpec:n})}}function Vn(t){var e=t.value,r=t.styleSpec,n=r.light,i=t.style,a=[],o=Qr(e);if(void 0===e)return a;if(\"object\"!==o)return a.concat([new Bt(\"light\",e,\"object expected, \"+o+\" found\")]);for(var s in e){var l=s.match(/^(.*)-transition$/);a=l&&n[l[1]]&&n[l[1]].transition?a.concat(Hn({key:s,value:e[s],valueSpec:r.transition,style:i,styleSpec:r})):n[s]?a.concat(Hn({key:s,value:e[s],valueSpec:n[s],style:i,styleSpec:r})):a.concat([new Bt(s,e[s],'unknown property \"'+s+'\"')])}return a}var qn={\"*\":function(){return[]},array:vn,boolean:function(t){var e=t.value,r=t.key,n=Qr(e);return\"boolean\"!==n?[new Bt(r,e,\"boolean expected, \"+n+\" found\")]:[]},number:xn,color:function(t){var e=t.key,r=t.value,n=Qr(r);return\"string\"!==n?[new Bt(e,r,\"color expected, \"+n+\" found\")]:null===le(r)?[new Bt(e,r,'color expected, \"'+r+'\" found')]:[]},constants:Nt,enum:wn,filter:zn,function:_n,layer:Bn,object:yn,source:Un,light:Vn,string:Nn,formatted:function(t){return 0===Nn(t).length?[]:bn(t)},resolvedImage:function(t){return 0===Nn(t).length?[]:bn(t)}};function Hn(t){var e=t.value,r=t.valueSpec,n=t.styleSpec;return r.expression&&tn(Ut(e))?_n(t):r.expression&&un(Vt(e))?bn(t):r.type&&qn[r.type]?qn[r.type](t):yn(jt({},t,{valueSpec:r.type?n[r.type]:r}))}function Gn(t){var e=t.value,r=t.key,n=Nn(t);return n.length||(-1===e.indexOf(\"{fontstack}\")&&n.push(new Bt(r,e,'\"glyphs\" url must include a \"{fontstack}\" token')),-1===e.indexOf(\"{range}\")&&n.push(new Bt(r,e,'\"glyphs\" url must include a \"{range}\" token'))),n}function Zn(t,e){void 0===e&&(e=Ft);var r=[];return r=r.concat(Hn({key:\"\",value:t,valueSpec:e.$root,styleSpec:e,style:t,objectElementValidators:{glyphs:Gn,\"*\":function(){return[]}}})),t.constants&&(r=r.concat(Nt({key:\"constants\",value:t.constants,style:t,styleSpec:e}))),Wn(r)}function Wn(t){return[].concat(t).sort((function(t,e){return t.line-e.line}))}function Yn(t){return function(){for(var e=[],r=arguments.length;r--;)e[r]=arguments[r];return Wn(t.apply(this,e))}}Zn.source=Yn(Un),Zn.light=Yn(Vn),Zn.layer=Yn(Bn),Zn.filter=Yn(zn),Zn.paintProperty=Yn(Rn),Zn.layoutProperty=Yn(Fn);var Xn=Zn,$n=Xn.light,Jn=Xn.paintProperty,Kn=Xn.layoutProperty;function Qn(t,e){var r=!1;if(e&&e.length)for(var n=0,i=e;n<i.length;n+=1){var a=i[n];t.fire(new Dt(new Error(a.message))),r=!0}return r}var ti=ri,ei=3;function ri(t,e,r){var n=this.cells=[];if(t instanceof ArrayBuffer){this.arrayBuffer=t;var i=new Int32Array(this.arrayBuffer);t=i[0],e=i[1],r=i[2],this.d=e+2*r;for(var a=0;a<this.d*this.d;a++){var o=i[ei+a],s=i[ei+a+1];n.push(o===s?null:i.subarray(o,s))}var l=i[ei+n.length],c=i[ei+n.length+1];this.keys=i.subarray(l,c),this.bboxes=i.subarray(c),this.insert=this._insertReadonly}else{this.d=e+2*r;for(var u=0;u<this.d*this.d;u++)n.push([]);this.keys=[],this.bboxes=[]}this.n=e,this.extent=t,this.padding=r,this.scale=e/t,this.uid=0;var h=r/e*t;this.min=-h,this.max=t+h}ri.prototype.insert=function(t,e,r,n,i){this._forEachCell(e,r,n,i,this._insertCell,this.uid++),this.keys.push(t),this.bboxes.push(e),this.bboxes.push(r),this.bboxes.push(n),this.bboxes.push(i)},ri.prototype._insertReadonly=function(){throw\"Cannot insert into a GridIndex created from an ArrayBuffer.\"},ri.prototype._insertCell=function(t,e,r,n,i,a){this.cells[i].push(a)},ri.prototype.query=function(t,e,r,n,i){var a=this.min,o=this.max;if(t<=a&&e<=a&&o<=r&&o<=n&&!i)return Array.prototype.slice.call(this.keys);var s=[];return this._forEachCell(t,e,r,n,this._queryCell,s,{},i),s},ri.prototype._queryCell=function(t,e,r,n,i,a,o,s){var l=this.cells[i];if(null!==l)for(var c=this.keys,u=this.bboxes,h=0;h<l.length;h++){var f=l[h];if(void 0===o[f]){var p=4*f;(s?s(u[p+0],u[p+1],u[p+2],u[p+3]):t<=u[p+2]&&e<=u[p+3]&&r>=u[p+0]&&n>=u[p+1])?(o[f]=!0,a.push(c[f])):o[f]=!1}}},ri.prototype._forEachCell=function(t,e,r,n,i,a,o,s){for(var l=this._convertToCellCoord(t),c=this._convertToCellCoord(e),u=this._convertToCellCoord(r),h=this._convertToCellCoord(n),f=l;f<=u;f++)for(var p=c;p<=h;p++){var d=this.d*p+f;if((!s||s(this._convertFromCellCoord(f),this._convertFromCellCoord(p),this._convertFromCellCoord(f+1),this._convertFromCellCoord(p+1)))&&i.call(this,t,e,r,n,d,a,o,s))return}},ri.prototype._convertFromCellCoord=function(t){return(t-this.padding)/this.scale},ri.prototype._convertToCellCoord=function(t){return Math.max(0,Math.min(this.d-1,Math.floor(t*this.scale)+this.padding))},ri.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var t=this.cells,e=ei+this.cells.length+1+1,r=0,n=0;n<this.cells.length;n++)r+=this.cells[n].length;var i=new Int32Array(e+r+this.keys.length+this.bboxes.length);i[0]=this.extent,i[1]=this.n,i[2]=this.padding;for(var a=e,o=0;o<t.length;o++){var s=t[o];i[ei+o]=a,i.set(s,a),a+=s.length}return i[ei+t.length]=a,i.set(this.keys,a),a+=this.keys.length,i[ei+t.length+1]=a,i.set(this.bboxes,a),a+=this.bboxes.length,i.buffer};var ni=s.ImageData,ii=s.ImageBitmap,ai={};function oi(t,e,r){void 0===r&&(r={}),Object.defineProperty(e,\"_classRegistryKey\",{value:t,writeable:!1}),ai[t]={klass:e,omit:r.omit||[],shallow:r.shallow||[]}}for(var si in oi(\"Object\",Object),ti.serialize=function(t,e){var r=t.toArrayBuffer();return e&&e.push(r),{buffer:r}},ti.deserialize=function(t){return new ti(t.buffer)},oi(\"Grid\",ti),oi(\"Color\",ce),oi(\"Error\",Error),oi(\"ResolvedImage\",pe),oi(\"StylePropertyFunction\",mn),oi(\"StyleExpression\",cn,{omit:[\"_evaluator\"]}),oi(\"ZoomDependentExpression\",pn),oi(\"ZoomConstantExpression\",fn),oi(\"CompoundExpression\",Ee,{omit:[\"_evaluate\"]}),qr)qr[si]._classRegistryKey||oi(\"Expression_\"+si,qr[si]);function li(t){return t&&\"undefined\"!=typeof ArrayBuffer&&(t instanceof ArrayBuffer||t.constructor&&\"ArrayBuffer\"===t.constructor.name)}function ci(t){return ii&&t instanceof ii}function ui(t,e){if(null==t||\"boolean\"==typeof t||\"number\"==typeof t||\"string\"==typeof t||t instanceof Boolean||t instanceof Number||t instanceof String||t instanceof Date||t instanceof RegExp)return t;if(li(t)||ci(t))return e&&e.push(t),t;if(ArrayBuffer.isView(t)){var r=t;return e&&e.push(r.buffer),r}if(t instanceof ni)return e&&e.push(t.data.buffer),t;if(Array.isArray(t)){for(var n=[],i=0,a=t;i<a.length;i+=1){var o=a[i];n.push(ui(o,e))}return n}if(\"object\"==typeof t){var s=t.constructor,l=s._classRegistryKey;if(!l)throw new Error(\"can't serialize object of unregistered class\");var c=s.serialize?s.serialize(t,e):{};if(!s.serialize){for(var u in t)if(t.hasOwnProperty(u)&&!(ai[l].omit.indexOf(u)>=0)){var h=t[u];c[u]=ai[l].shallow.indexOf(u)>=0?h:ui(h,e)}t instanceof Error&&(c.message=t.message)}if(c.$name)throw new Error(\"$name property is reserved for worker serialization logic.\");return\"Object\"!==l&&(c.$name=l),c}throw new Error(\"can't serialize object of type \"+typeof t)}function hi(t){if(null==t||\"boolean\"==typeof t||\"number\"==typeof t||\"string\"==typeof t||t instanceof Boolean||t instanceof Number||t instanceof String||t instanceof Date||t instanceof RegExp||li(t)||ci(t)||ArrayBuffer.isView(t)||t instanceof ni)return t;if(Array.isArray(t))return t.map(hi);if(\"object\"==typeof t){var e=t.$name||\"Object\",r=ai[e].klass;if(!r)throw new Error(\"can't deserialize unregistered class \"+e);if(r.deserialize)return r.deserialize(t);for(var n=Object.create(r.prototype),i=0,a=Object.keys(t);i<a.length;i+=1){var o=a[i];if(\"$name\"!==o){var s=t[o];n[o]=ai[e].shallow.indexOf(o)>=0?s:hi(s)}}return n}throw new Error(\"can't deserialize object of type \"+typeof t)}var fi=function(){this.first=!0};fi.prototype.update=function(t,e){var r=Math.floor(t);return this.first?(this.first=!1,this.lastIntegerZoom=r,this.lastIntegerZoomTime=0,this.lastZoom=t,this.lastFloorZoom=r,!0):(this.lastFloorZoom>r?(this.lastIntegerZoom=r+1,this.lastIntegerZoomTime=e):this.lastFloorZoom<r&&(this.lastIntegerZoom=r,this.lastIntegerZoomTime=e),t!==this.lastZoom&&(this.lastZoom=t,this.lastFloorZoom=r,!0))};var pi={\"Latin-1 Supplement\":function(t){return t>=128&&t<=255},Arabic:function(t){return t>=1536&&t<=1791},\"Arabic Supplement\":function(t){return t>=1872&&t<=1919},\"Arabic Extended-A\":function(t){return t>=2208&&t<=2303},\"Hangul Jamo\":function(t){return t>=4352&&t<=4607},\"Unified Canadian Aboriginal Syllabics\":function(t){return t>=5120&&t<=5759},Khmer:function(t){return t>=6016&&t<=6143},\"Unified Canadian Aboriginal Syllabics Extended\":function(t){return t>=6320&&t<=6399},\"General Punctuation\":function(t){return t>=8192&&t<=8303},\"Letterlike Symbols\":function(t){return t>=8448&&t<=8527},\"Number Forms\":function(t){return t>=8528&&t<=8591},\"Miscellaneous Technical\":function(t){return t>=8960&&t<=9215},\"Control Pictures\":function(t){return t>=9216&&t<=9279},\"Optical Character Recognition\":function(t){return t>=9280&&t<=9311},\"Enclosed Alphanumerics\":function(t){return t>=9312&&t<=9471},\"Geometric Shapes\":function(t){return t>=9632&&t<=9727},\"Miscellaneous Symbols\":function(t){return t>=9728&&t<=9983},\"Miscellaneous Symbols and Arrows\":function(t){return t>=11008&&t<=11263},\"CJK Radicals Supplement\":function(t){return t>=11904&&t<=12031},\"Kangxi Radicals\":function(t){return t>=12032&&t<=12255},\"Ideographic Description Characters\":function(t){return t>=12272&&t<=12287},\"CJK Symbols and Punctuation\":function(t){return t>=12288&&t<=12351},Hiragana:function(t){return t>=12352&&t<=12447},Katakana:function(t){return t>=12448&&t<=12543},Bopomofo:function(t){return t>=12544&&t<=12591},\"Hangul Compatibility Jamo\":function(t){return t>=12592&&t<=12687},Kanbun:function(t){return t>=12688&&t<=12703},\"Bopomofo Extended\":function(t){return t>=12704&&t<=12735},\"CJK Strokes\":function(t){return t>=12736&&t<=12783},\"Katakana Phonetic Extensions\":function(t){return t>=12784&&t<=12799},\"Enclosed CJK Letters and Months\":function(t){return t>=12800&&t<=13055},\"CJK Compatibility\":function(t){return t>=13056&&t<=13311},\"CJK Unified Ideographs Extension A\":function(t){return t>=13312&&t<=19903},\"Yijing Hexagram Symbols\":function(t){return t>=19904&&t<=19967},\"CJK Unified Ideographs\":function(t){return t>=19968&&t<=40959},\"Yi Syllables\":function(t){return t>=40960&&t<=42127},\"Yi Radicals\":function(t){return t>=42128&&t<=42191},\"Hangul Jamo Extended-A\":function(t){return t>=43360&&t<=43391},\"Hangul Syllables\":function(t){return t>=44032&&t<=55215},\"Hangul Jamo Extended-B\":function(t){return t>=55216&&t<=55295},\"Private Use Area\":function(t){return t>=57344&&t<=63743},\"CJK Compatibility Ideographs\":function(t){return t>=63744&&t<=64255},\"Arabic Presentation Forms-A\":function(t){return t>=64336&&t<=65023},\"Vertical Forms\":function(t){return t>=65040&&t<=65055},\"CJK Compatibility Forms\":function(t){return t>=65072&&t<=65103},\"Small Form Variants\":function(t){return t>=65104&&t<=65135},\"Arabic Presentation Forms-B\":function(t){return t>=65136&&t<=65279},\"Halfwidth and Fullwidth Forms\":function(t){return t>=65280&&t<=65519}};function di(t){for(var e=0,r=t;e<r.length;e+=1)if(mi(r[e].charCodeAt(0)))return!0;return!1}function mi(t){return!(746!==t&&747!==t&&(t<4352||!(pi[\"Bopomofo Extended\"](t)||pi.Bopomofo(t)||pi[\"CJK Compatibility Forms\"](t)&&!(t>=65097&&t<=65103)||pi[\"CJK Compatibility Ideographs\"](t)||pi[\"CJK Compatibility\"](t)||pi[\"CJK Radicals Supplement\"](t)||pi[\"CJK Strokes\"](t)||!(!pi[\"CJK Symbols and Punctuation\"](t)||t>=12296&&t<=12305||t>=12308&&t<=12319||12336===t)||pi[\"CJK Unified Ideographs Extension A\"](t)||pi[\"CJK Unified Ideographs\"](t)||pi[\"Enclosed CJK Letters and Months\"](t)||pi[\"Hangul Compatibility Jamo\"](t)||pi[\"Hangul Jamo Extended-A\"](t)||pi[\"Hangul Jamo Extended-B\"](t)||pi[\"Hangul Jamo\"](t)||pi[\"Hangul Syllables\"](t)||pi.Hiragana(t)||pi[\"Ideographic Description Characters\"](t)||pi.Kanbun(t)||pi[\"Kangxi Radicals\"](t)||pi[\"Katakana Phonetic Extensions\"](t)||pi.Katakana(t)&&12540!==t||!(!pi[\"Halfwidth and Fullwidth Forms\"](t)||65288===t||65289===t||65293===t||t>=65306&&t<=65310||65339===t||65341===t||65343===t||t>=65371&&t<=65503||65507===t||t>=65512&&t<=65519)||!(!pi[\"Small Form Variants\"](t)||t>=65112&&t<=65118||t>=65123&&t<=65126)||pi[\"Unified Canadian Aboriginal Syllabics\"](t)||pi[\"Unified Canadian Aboriginal Syllabics Extended\"](t)||pi[\"Vertical Forms\"](t)||pi[\"Yijing Hexagram Symbols\"](t)||pi[\"Yi Syllables\"](t)||pi[\"Yi Radicals\"](t))))}function gi(t){return!(mi(t)||function(t){return!!(pi[\"Latin-1 Supplement\"](t)&&(167===t||169===t||174===t||177===t||188===t||189===t||190===t||215===t||247===t)||pi[\"General Punctuation\"](t)&&(8214===t||8224===t||8225===t||8240===t||8241===t||8251===t||8252===t||8258===t||8263===t||8264===t||8265===t||8273===t)||pi[\"Letterlike Symbols\"](t)||pi[\"Number Forms\"](t)||pi[\"Miscellaneous Technical\"](t)&&(t>=8960&&t<=8967||t>=8972&&t<=8991||t>=8996&&t<=9e3||9003===t||t>=9085&&t<=9114||t>=9150&&t<=9165||9167===t||t>=9169&&t<=9179||t>=9186&&t<=9215)||pi[\"Control Pictures\"](t)&&9251!==t||pi[\"Optical Character Recognition\"](t)||pi[\"Enclosed Alphanumerics\"](t)||pi[\"Geometric Shapes\"](t)||pi[\"Miscellaneous Symbols\"](t)&&!(t>=9754&&t<=9759)||pi[\"Miscellaneous Symbols and Arrows\"](t)&&(t>=11026&&t<=11055||t>=11088&&t<=11097||t>=11192&&t<=11243)||pi[\"CJK Symbols and Punctuation\"](t)||pi.Katakana(t)||pi[\"Private Use Area\"](t)||pi[\"CJK Compatibility Forms\"](t)||pi[\"Small Form Variants\"](t)||pi[\"Halfwidth and Fullwidth Forms\"](t)||8734===t||8756===t||8757===t||t>=9984&&t<=10087||t>=10102&&t<=10131||65532===t||65533===t)}(t))}function yi(t){return pi.Arabic(t)||pi[\"Arabic Supplement\"](t)||pi[\"Arabic Extended-A\"](t)||pi[\"Arabic Presentation Forms-A\"](t)||pi[\"Arabic Presentation Forms-B\"](t)}function vi(t){return t>=1424&&t<=2303||pi[\"Arabic Presentation Forms-A\"](t)||pi[\"Arabic Presentation Forms-B\"](t)}function xi(t,e){return!(!e&&vi(t)||t>=2304&&t<=3583||t>=3840&&t<=4255||pi.Khmer(t))}function _i(t){for(var e=0,r=t;e<r.length;e+=1)if(vi(r[e].charCodeAt(0)))return!0;return!1}var bi=\"deferred\",wi=\"loading\",Ti=\"loaded\",ki=\"error\",Ai=null,Mi=\"unavailable\",Si=null,Ei=function(t){t&&\"string\"==typeof t&&t.indexOf(\"NetworkError\")>-1&&(Mi=ki),Ai&&Ai(t)};function Ci(){Li.fire(new Ot(\"pluginStateChange\",{pluginStatus:Mi,pluginURL:Si}))}var Li=new Rt,Ii=function(){return Mi},Pi=function(){if(Mi!==bi||!Si)throw new Error(\"rtl-text-plugin cannot be downloaded unless a pluginURL is specified\");Mi=wi,Ci(),Si&&Mt({url:Si},(function(t){t?Ei(t):(Mi=Ti,Ci())}))},zi={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:function(){return Mi===Ti||null!=zi.applyArabicShaping},isLoading:function(){return Mi===wi},setState:function(t){Mi=t.pluginStatus,Si=t.pluginURL},isParsed:function(){return null!=zi.applyArabicShaping&&null!=zi.processBidirectionalText&&null!=zi.processStyledBidirectionalText},getPluginURL:function(){return Si}},Oi=function(t,e){this.zoom=t,e?(this.now=e.now,this.fadeDuration=e.fadeDuration,this.zoomHistory=e.zoomHistory,this.transition=e.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new fi,this.transition={})};Oi.prototype.isSupportedScript=function(t){return function(t,e){for(var r=0,n=t;r<n.length;r+=1)if(!xi(n[r].charCodeAt(0),e))return!1;return!0}(t,zi.isLoaded())},Oi.prototype.crossFadingFactor=function(){return 0===this.fadeDuration?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)},Oi.prototype.getCrossfadeParameters=function(){var t=this.zoom,e=t-Math.floor(t),r=this.crossFadingFactor();return t>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:e+(1-e)*r}:{fromScale:.5,toScale:1,t:1-(1-r)*e}};var Di=function(t,e){this.property=t,this.value=e,this.expression=function(t,e){if(tn(t))return new mn(t,e);if(un(t)){var r=dn(t,e);if(\"error\"===r.result)throw new Error(r.value.map((function(t){return t.key+\": \"+t.message})).join(\", \"));return r.value}var n=t;return\"string\"==typeof t&&\"color\"===e.type&&(n=ce.parse(t)),{kind:\"constant\",evaluate:function(){return n}}}(void 0===e?t.specification.default:e,t.specification)};Di.prototype.isDataDriven=function(){return\"source\"===this.expression.kind||\"composite\"===this.expression.kind},Di.prototype.possiblyEvaluate=function(t,e,r){return this.property.possiblyEvaluate(this,t,e,r)};var Ri=function(t){this.property=t,this.value=new Di(t,void 0)};Ri.prototype.transitioned=function(t,e){return new Bi(this.property,this.value,e,p({},t.transition,this.transition),t.now)},Ri.prototype.untransitioned=function(){return new Bi(this.property,this.value,null,{},0)};var Fi=function(t){this._properties=t,this._values=Object.create(t.defaultTransitionablePropertyValues)};Fi.prototype.getValue=function(t){return w(this._values[t].value.value)},Fi.prototype.setValue=function(t,e){this._values.hasOwnProperty(t)||(this._values[t]=new Ri(this._values[t].property)),this._values[t].value=new Di(this._values[t].property,null===e?void 0:w(e))},Fi.prototype.getTransition=function(t){return w(this._values[t].transition)},Fi.prototype.setTransition=function(t,e){this._values.hasOwnProperty(t)||(this._values[t]=new Ri(this._values[t].property)),this._values[t].transition=w(e)||void 0},Fi.prototype.serialize=function(){for(var t={},e=0,r=Object.keys(this._values);e<r.length;e+=1){var n=r[e],i=this.getValue(n);void 0!==i&&(t[n]=i);var a=this.getTransition(n);void 0!==a&&(t[n+\"-transition\"]=a)}return t},Fi.prototype.transitioned=function(t,e){for(var r=new Ni(this._properties),n=0,i=Object.keys(this._values);n<i.length;n+=1){var a=i[n];r._values[a]=this._values[a].transitioned(t,e._values[a])}return r},Fi.prototype.untransitioned=function(){for(var t=new Ni(this._properties),e=0,r=Object.keys(this._values);e<r.length;e+=1){var n=r[e];t._values[n]=this._values[n].untransitioned()}return t};var Bi=function(t,e,r,n,i){this.property=t,this.value=e,this.begin=i+n.delay||0,this.end=this.begin+n.duration||0,t.specification.transition&&(n.delay||n.duration)&&(this.prior=r)};Bi.prototype.possiblyEvaluate=function(t,e,r){var n=t.now||0,i=this.value.possiblyEvaluate(t,e,r),a=this.prior;if(a){if(n>this.end)return this.prior=null,i;if(this.value.isDataDriven())return this.prior=null,i;if(n<this.begin)return a.possiblyEvaluate(t,e,r);var o=(n-this.begin)/(this.end-this.begin);return this.property.interpolate(a.possiblyEvaluate(t,e,r),i,function(t){if(t<=0)return 0;if(t>=1)return 1;var e=t*t,r=e*t;return 4*(t<.5?r:3*(t-e)+r-.75)}(o))}return i};var Ni=function(t){this._properties=t,this._values=Object.create(t.defaultTransitioningPropertyValues)};Ni.prototype.possiblyEvaluate=function(t,e,r){for(var n=new Vi(this._properties),i=0,a=Object.keys(this._values);i<a.length;i+=1){var o=a[i];n._values[o]=this._values[o].possiblyEvaluate(t,e,r)}return n},Ni.prototype.hasTransition=function(){for(var t=0,e=Object.keys(this._values);t<e.length;t+=1){var r=e[t];if(this._values[r].prior)return!0}return!1};var ji=function(t){this._properties=t,this._values=Object.create(t.defaultPropertyValues)};ji.prototype.getValue=function(t){return w(this._values[t].value)},ji.prototype.setValue=function(t,e){this._values[t]=new Di(this._values[t].property,null===e?void 0:w(e))},ji.prototype.serialize=function(){for(var t={},e=0,r=Object.keys(this._values);e<r.length;e+=1){var n=r[e],i=this.getValue(n);void 0!==i&&(t[n]=i)}return t},ji.prototype.possiblyEvaluate=function(t,e,r){for(var n=new Vi(this._properties),i=0,a=Object.keys(this._values);i<a.length;i+=1){var o=a[i];n._values[o]=this._values[o].possiblyEvaluate(t,e,r)}return n};var Ui=function(t,e,r){this.property=t,this.value=e,this.parameters=r};Ui.prototype.isConstant=function(){return\"constant\"===this.value.kind},Ui.prototype.constantOr=function(t){return\"constant\"===this.value.kind?this.value.value:t},Ui.prototype.evaluate=function(t,e,r,n){return this.property.evaluate(this.value,this.parameters,t,e,r,n)};var Vi=function(t){this._properties=t,this._values=Object.create(t.defaultPossiblyEvaluatedValues)};Vi.prototype.get=function(t){return this._values[t]};var qi=function(t){this.specification=t};qi.prototype.possiblyEvaluate=function(t,e){return t.expression.evaluate(e)},qi.prototype.interpolate=function(t,e,r){var n=rr[this.specification.type];return n?n(t,e,r):t};var Hi=function(t,e){this.specification=t,this.overrides=e};Hi.prototype.possiblyEvaluate=function(t,e,r,n){return\"constant\"===t.expression.kind||\"camera\"===t.expression.kind?new Ui(this,{kind:\"constant\",value:t.expression.evaluate(e,null,{},r,n)},e):new Ui(this,t.expression,e)},Hi.prototype.interpolate=function(t,e,r){if(\"constant\"!==t.value.kind||\"constant\"!==e.value.kind)return t;if(void 0===t.value.value||void 0===e.value.value)return new Ui(this,{kind:\"constant\",value:void 0},t.parameters);var n=rr[this.specification.type];return n?new Ui(this,{kind:\"constant\",value:n(t.value.value,e.value.value,r)},t.parameters):t},Hi.prototype.evaluate=function(t,e,r,n,i,a){return\"constant\"===t.kind?t.value:t.evaluate(e,r,n,i,a)};var Gi=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.possiblyEvaluate=function(t,e,r,n){if(void 0===t.value)return new Ui(this,{kind:\"constant\",value:void 0},e);if(\"constant\"===t.expression.kind){var i=t.expression.evaluate(e,null,{},r,n),a=\"resolvedImage\"===t.property.specification.type&&\"string\"!=typeof i?i.name:i,o=this._calculate(a,a,a,e);return new Ui(this,{kind:\"constant\",value:o},e)}if(\"camera\"===t.expression.kind){var s=this._calculate(t.expression.evaluate({zoom:e.zoom-1}),t.expression.evaluate({zoom:e.zoom}),t.expression.evaluate({zoom:e.zoom+1}),e);return new Ui(this,{kind:\"constant\",value:s},e)}return new Ui(this,t.expression,e)},e.prototype.evaluate=function(t,e,r,n,i,a){if(\"source\"===t.kind){var o=t.evaluate(e,r,n,i,a);return this._calculate(o,o,o,e)}return\"composite\"===t.kind?this._calculate(t.evaluate({zoom:Math.floor(e.zoom)-1},r,n),t.evaluate({zoom:Math.floor(e.zoom)},r,n),t.evaluate({zoom:Math.floor(e.zoom)+1},r,n),e):t.value},e.prototype._calculate=function(t,e,r,n){return n.zoom>n.zoomHistory.lastIntegerZoom?{from:t,to:e}:{from:r,to:e}},e.prototype.interpolate=function(t){return t},e}(Hi),Zi=function(t){this.specification=t};Zi.prototype.possiblyEvaluate=function(t,e,r,n){if(void 0!==t.value){if(\"constant\"===t.expression.kind){var i=t.expression.evaluate(e,null,{},r,n);return this._calculate(i,i,i,e)}return this._calculate(t.expression.evaluate(new Oi(Math.floor(e.zoom-1),e)),t.expression.evaluate(new Oi(Math.floor(e.zoom),e)),t.expression.evaluate(new Oi(Math.floor(e.zoom+1),e)),e)}},Zi.prototype._calculate=function(t,e,r,n){return n.zoom>n.zoomHistory.lastIntegerZoom?{from:t,to:e}:{from:r,to:e}},Zi.prototype.interpolate=function(t){return t};var Wi=function(t){this.specification=t};Wi.prototype.possiblyEvaluate=function(t,e,r,n){return!!t.expression.evaluate(e,null,{},r,n)},Wi.prototype.interpolate=function(){return!1};var Yi=function(t){for(var e in this.properties=t,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[],t){var r=t[e];r.specification.overridable&&this.overridableProperties.push(e);var n=this.defaultPropertyValues[e]=new Di(r,void 0),i=this.defaultTransitionablePropertyValues[e]=new Ri(r);this.defaultTransitioningPropertyValues[e]=i.untransitioned(),this.defaultPossiblyEvaluatedValues[e]=n.possiblyEvaluate({})}};oi(\"DataDrivenProperty\",Hi),oi(\"DataConstantProperty\",qi),oi(\"CrossFadedDataDrivenProperty\",Gi),oi(\"CrossFadedProperty\",Zi),oi(\"ColorRampProperty\",Wi);var Xi=\"-transition\",$i=function(t){function e(e,r){if(t.call(this),this.id=e.id,this.type=e.type,this._featureFilter={filter:function(){return!0},needGeometry:!1},\"custom\"!==e.type&&(this.metadata=e.metadata,this.minzoom=e.minzoom,this.maxzoom=e.maxzoom,\"background\"!==e.type&&(this.source=e.source,this.sourceLayer=e[\"source-layer\"],this.filter=e.filter),r.layout&&(this._unevaluatedLayout=new ji(r.layout)),r.paint)){for(var n in this._transitionablePaint=new Fi(r.paint),e.paint)this.setPaintProperty(n,e.paint[n],{validate:!1});for(var i in e.layout)this.setLayoutProperty(i,e.layout[i],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new Vi(r.paint)}}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getCrossfadeParameters=function(){return this._crossfadeParameters},e.prototype.getLayoutProperty=function(t){return\"visibility\"===t?this.visibility:this._unevaluatedLayout.getValue(t)},e.prototype.setLayoutProperty=function(t,e,r){if(void 0===r&&(r={}),null!=e){var n=\"layers.\"+this.id+\".layout.\"+t;if(this._validate(Kn,n,t,e,r))return}\"visibility\"!==t?this._unevaluatedLayout.setValue(t,e):this.visibility=e},e.prototype.getPaintProperty=function(t){return x(t,Xi)?this._transitionablePaint.getTransition(t.slice(0,-11)):this._transitionablePaint.getValue(t)},e.prototype.setPaintProperty=function(t,e,r){if(void 0===r&&(r={}),null!=e){var n=\"layers.\"+this.id+\".paint.\"+t;if(this._validate(Jn,n,t,e,r))return!1}if(x(t,Xi))return this._transitionablePaint.setTransition(t.slice(0,-11),e||void 0),!1;var i=this._transitionablePaint._values[t],a=\"cross-faded-data-driven\"===i.property.specification[\"property-type\"],o=i.value.isDataDriven(),s=i.value;this._transitionablePaint.setValue(t,e),this._handleSpecialPaintPropertyUpdate(t);var l=this._transitionablePaint._values[t].value;return l.isDataDriven()||o||a||this._handleOverridablePaintPropertyUpdate(t,s,l)},e.prototype._handleSpecialPaintPropertyUpdate=function(t){},e.prototype._handleOverridablePaintPropertyUpdate=function(t,e,r){return!1},e.prototype.isHidden=function(t){return!!(this.minzoom&&t<this.minzoom)||!!(this.maxzoom&&t>=this.maxzoom)||\"none\"===this.visibility},e.prototype.updateTransitions=function(t){this._transitioningPaint=this._transitionablePaint.transitioned(t,this._transitioningPaint)},e.prototype.hasTransition=function(){return this._transitioningPaint.hasTransition()},e.prototype.recalculate=function(t,e){t.getCrossfadeParameters&&(this._crossfadeParameters=t.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(t,void 0,e)),this.paint=this._transitioningPaint.possiblyEvaluate(t,void 0,e)},e.prototype.serialize=function(){var t={id:this.id,type:this.type,source:this.source,\"source-layer\":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(t.layout=t.layout||{},t.layout.visibility=this.visibility),b(t,(function(t,e){return!(void 0===t||\"layout\"===e&&!Object.keys(t).length||\"paint\"===e&&!Object.keys(t).length)}))},e.prototype._validate=function(t,e,r,n,i){return void 0===i&&(i={}),(!i||!1!==i.validate)&&Qn(this,t.call(Xn,{key:e,layerType:this.type,objectKey:r,value:n,styleSpec:Ft,style:{glyphs:!0,sprite:!0}}))},e.prototype.is3D=function(){return!1},e.prototype.isTileClipped=function(){return!1},e.prototype.hasOffscreenPass=function(){return!1},e.prototype.resize=function(){},e.prototype.isStateDependent=function(){for(var t in this.paint._values){var e=this.paint.get(t);if(e instanceof Ui&&$r(e.property.specification)&&(\"source\"===e.value.kind||\"composite\"===e.value.kind)&&e.value.isStateDependent)return!0}return!1},e}(Rt),Ji={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array},Ki=function(t,e){this._structArray=t,this._pos1=e*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8},Qi=function(){this.isTransferred=!1,this.capacity=-1,this.resize(0)};function ta(t,e){void 0===e&&(e=1);var r=0,n=0;return{members:t.map((function(t){var i,a=(i=t.type,Ji[i].BYTES_PER_ELEMENT),o=r=ea(r,Math.max(e,a)),s=t.components||1;return n=Math.max(n,a),r+=a*s,{name:t.name,type:t.type,components:s,offset:o}})),size:ea(r,Math.max(n,e)),alignment:e}}function ea(t,e){return Math.ceil(t/e)*e}Qi.serialize=function(t,e){return t._trim(),e&&(t.isTransferred=!0,e.push(t.arrayBuffer)),{length:t.length,arrayBuffer:t.arrayBuffer}},Qi.deserialize=function(t){var e=Object.create(this.prototype);return e.arrayBuffer=t.arrayBuffer,e.length=t.length,e.capacity=t.arrayBuffer.byteLength/e.bytesPerElement,e._refreshViews(),e},Qi.prototype._trim=function(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())},Qi.prototype.clear=function(){this.length=0},Qi.prototype.resize=function(t){this.reserve(t),this.length=t},Qi.prototype.reserve=function(t){if(t>this.capacity){this.capacity=Math.max(t,Math.floor(5*this.capacity),128),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var e=this.uint8;this._refreshViews(),e&&this.uint8.set(e)}},Qi.prototype._refreshViews=function(){throw new Error(\"_refreshViews() must be implemented by each concrete StructArray layout\")};var ra=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e){var r=this.length;return this.resize(r+1),this.emplace(r,t,e)},e.prototype.emplace=function(t,e,r){var n=2*t;return this.int16[n+0]=e,this.int16[n+1]=r,t},e}(Qi);ra.prototype.bytesPerElement=4,oi(\"StructArrayLayout2i4\",ra);var na=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n){var i=this.length;return this.resize(i+1),this.emplace(i,t,e,r,n)},e.prototype.emplace=function(t,e,r,n,i){var a=4*t;return this.int16[a+0]=e,this.int16[a+1]=r,this.int16[a+2]=n,this.int16[a+3]=i,t},e}(Qi);na.prototype.bytesPerElement=8,oi(\"StructArrayLayout4i8\",na);var ia=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,i,a){var o=this.length;return this.resize(o+1),this.emplace(o,t,e,r,n,i,a)},e.prototype.emplace=function(t,e,r,n,i,a,o){var s=6*t;return this.int16[s+0]=e,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,t},e}(Qi);ia.prototype.bytesPerElement=12,oi(\"StructArrayLayout2i4i12\",ia);var aa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,i,a){var o=this.length;return this.resize(o+1),this.emplace(o,t,e,r,n,i,a)},e.prototype.emplace=function(t,e,r,n,i,a,o){var s=4*t,l=8*t;return this.int16[s+0]=e,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,t},e}(Qi);aa.prototype.bytesPerElement=8,oi(\"StructArrayLayout2i4ub8\",aa);var oa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e){var r=this.length;return this.resize(r+1),this.emplace(r,t,e)},e.prototype.emplace=function(t,e,r){var n=2*t;return this.float32[n+0]=e,this.float32[n+1]=r,t},e}(Qi);oa.prototype.bytesPerElement=8,oi(\"StructArrayLayout2f8\",oa);var sa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,i,a,o,s,l,c){var u=this.length;return this.resize(u+1),this.emplace(u,t,e,r,n,i,a,o,s,l,c)},e.prototype.emplace=function(t,e,r,n,i,a,o,s,l,c,u){var h=10*t;return this.uint16[h+0]=e,this.uint16[h+1]=r,this.uint16[h+2]=n,this.uint16[h+3]=i,this.uint16[h+4]=a,this.uint16[h+5]=o,this.uint16[h+6]=s,this.uint16[h+7]=l,this.uint16[h+8]=c,this.uint16[h+9]=u,t},e}(Qi);sa.prototype.bytesPerElement=20,oi(\"StructArrayLayout10ui20\",sa);var la=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,i,a,o,s,l,c,u,h){var f=this.length;return this.resize(f+1),this.emplace(f,t,e,r,n,i,a,o,s,l,c,u,h)},e.prototype.emplace=function(t,e,r,n,i,a,o,s,l,c,u,h,f){var p=12*t;return this.int16[p+0]=e,this.int16[p+1]=r,this.int16[p+2]=n,this.int16[p+3]=i,this.uint16[p+4]=a,this.uint16[p+5]=o,this.uint16[p+6]=s,this.uint16[p+7]=l,this.int16[p+8]=c,this.int16[p+9]=u,this.int16[p+10]=h,this.int16[p+11]=f,t},e}(Qi);la.prototype.bytesPerElement=24,oi(\"StructArrayLayout4i4ui4i24\",la);var ca=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r){var n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)},e.prototype.emplace=function(t,e,r,n){var i=3*t;return this.float32[i+0]=e,this.float32[i+1]=r,this.float32[i+2]=n,t},e}(Qi);ca.prototype.bytesPerElement=12,oi(\"StructArrayLayout3f12\",ca);var ua=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t){var e=this.length;return this.resize(e+1),this.emplace(e,t)},e.prototype.emplace=function(t,e){var r=1*t;return this.uint32[r+0]=e,t},e}(Qi);ua.prototype.bytesPerElement=4,oi(\"StructArrayLayout1ul4\",ua);var ha=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,i,a,o,s,l){var c=this.length;return this.resize(c+1),this.emplace(c,t,e,r,n,i,a,o,s,l)},e.prototype.emplace=function(t,e,r,n,i,a,o,s,l,c){var u=10*t,h=5*t;return this.int16[u+0]=e,this.int16[u+1]=r,this.int16[u+2]=n,this.int16[u+3]=i,this.int16[u+4]=a,this.int16[u+5]=o,this.uint32[h+3]=s,this.uint16[u+8]=l,this.uint16[u+9]=c,t},e}(Qi);ha.prototype.bytesPerElement=20,oi(\"StructArrayLayout6i1ul2ui20\",ha);var fa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,i,a){var o=this.length;return this.resize(o+1),this.emplace(o,t,e,r,n,i,a)},e.prototype.emplace=function(t,e,r,n,i,a,o){var s=6*t;return this.int16[s+0]=e,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,t},e}(Qi);fa.prototype.bytesPerElement=12,oi(\"StructArrayLayout2i2i2i12\",fa);var pa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,i){var a=this.length;return this.resize(a+1),this.emplace(a,t,e,r,n,i)},e.prototype.emplace=function(t,e,r,n,i,a){var o=4*t,s=8*t;return this.float32[o+0]=e,this.float32[o+1]=r,this.float32[o+2]=n,this.int16[s+6]=i,this.int16[s+7]=a,t},e}(Qi);pa.prototype.bytesPerElement=16,oi(\"StructArrayLayout2f1f2i16\",pa);var da=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n){var i=this.length;return this.resize(i+1),this.emplace(i,t,e,r,n)},e.prototype.emplace=function(t,e,r,n,i){var a=12*t,o=3*t;return this.uint8[a+0]=e,this.uint8[a+1]=r,this.float32[o+1]=n,this.float32[o+2]=i,t},e}(Qi);da.prototype.bytesPerElement=12,oi(\"StructArrayLayout2ub2f12\",da);var ma=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r){var n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)},e.prototype.emplace=function(t,e,r,n){var i=3*t;return this.uint16[i+0]=e,this.uint16[i+1]=r,this.uint16[i+2]=n,t},e}(Qi);ma.prototype.bytesPerElement=6,oi(\"StructArrayLayout3ui6\",ma);var ga=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,i,a,o,s,l,c,u,h,f,p,d,m,g){var y=this.length;return this.resize(y+1),this.emplace(y,t,e,r,n,i,a,o,s,l,c,u,h,f,p,d,m,g)},e.prototype.emplace=function(t,e,r,n,i,a,o,s,l,c,u,h,f,p,d,m,g,y){var v=24*t,x=12*t,_=48*t;return this.int16[v+0]=e,this.int16[v+1]=r,this.uint16[v+2]=n,this.uint16[v+3]=i,this.uint32[x+2]=a,this.uint32[x+3]=o,this.uint32[x+4]=s,this.uint16[v+10]=l,this.uint16[v+11]=c,this.uint16[v+12]=u,this.float32[x+7]=h,this.float32[x+8]=f,this.uint8[_+36]=p,this.uint8[_+37]=d,this.uint8[_+38]=m,this.uint32[x+10]=g,this.int16[v+22]=y,t},e}(Qi);ga.prototype.bytesPerElement=48,oi(\"StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48\",ga);var ya=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,i,a,o,s,l,c,u,h,f,p,d,m,g,y,v,x,_,b,w,T,k,A,M,S){var E=this.length;return this.resize(E+1),this.emplace(E,t,e,r,n,i,a,o,s,l,c,u,h,f,p,d,m,g,y,v,x,_,b,w,T,k,A,M,S)},e.prototype.emplace=function(t,e,r,n,i,a,o,s,l,c,u,h,f,p,d,m,g,y,v,x,_,b,w,T,k,A,M,S,E){var C=34*t,L=17*t;return this.int16[C+0]=e,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]=c,this.uint16[C+9]=u,this.uint16[C+10]=h,this.uint16[C+11]=f,this.uint16[C+12]=p,this.uint16[C+13]=d,this.uint16[C+14]=m,this.uint16[C+15]=g,this.uint16[C+16]=y,this.uint16[C+17]=v,this.uint16[C+18]=x,this.uint16[C+19]=_,this.uint16[C+20]=b,this.uint16[C+21]=w,this.uint16[C+22]=T,this.uint32[L+12]=k,this.float32[L+13]=A,this.float32[L+14]=M,this.float32[L+15]=S,this.float32[L+16]=E,t},e}(Qi);ya.prototype.bytesPerElement=68,oi(\"StructArrayLayout8i15ui1ul4f68\",ya);var va=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t){var e=this.length;return this.resize(e+1),this.emplace(e,t)},e.prototype.emplace=function(t,e){var r=1*t;return this.float32[r+0]=e,t},e}(Qi);va.prototype.bytesPerElement=4,oi(\"StructArrayLayout1f4\",va);var xa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r){var n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)},e.prototype.emplace=function(t,e,r,n){var i=3*t;return this.int16[i+0]=e,this.int16[i+1]=r,this.int16[i+2]=n,t},e}(Qi);xa.prototype.bytesPerElement=6,oi(\"StructArrayLayout3i6\",xa);var _a=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r){var n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)},e.prototype.emplace=function(t,e,r,n){var i=2*t,a=4*t;return this.uint32[i+0]=e,this.uint16[a+2]=r,this.uint16[a+3]=n,t},e}(Qi);_a.prototype.bytesPerElement=8,oi(\"StructArrayLayout1ul2ui8\",_a);var ba=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e){var r=this.length;return this.resize(r+1),this.emplace(r,t,e)},e.prototype.emplace=function(t,e,r){var n=2*t;return this.uint16[n+0]=e,this.uint16[n+1]=r,t},e}(Qi);ba.prototype.bytesPerElement=4,oi(\"StructArrayLayout2ui4\",ba);var wa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t){var e=this.length;return this.resize(e+1),this.emplace(e,t)},e.prototype.emplace=function(t,e){var r=1*t;return this.uint16[r+0]=e,t},e}(Qi);wa.prototype.bytesPerElement=2,oi(\"StructArrayLayout1ui2\",wa);var Ta=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n){var i=this.length;return this.resize(i+1),this.emplace(i,t,e,r,n)},e.prototype.emplace=function(t,e,r,n,i){var a=4*t;return this.float32[a+0]=e,this.float32[a+1]=r,this.float32[a+2]=n,this.float32[a+3]=i,t},e}(Qi);Ta.prototype.bytesPerElement=16,oi(\"StructArrayLayout4f16\",Ta);var ka=function(t){function e(){t.apply(this,arguments)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;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(e.prototype,r),e}(Ki);ka.prototype.size=20;var Aa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.get=function(t){return new ka(this,t)},e}(ha);oi(\"CollisionBoxArray\",Aa);var Ma=function(t){function e(){t.apply(this,arguments)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;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(t){this._structArray.uint8[this._pos1+37]=t},r.hidden.get=function(){return this._structArray.uint8[this._pos1+38]},r.hidden.set=function(t){this._structArray.uint8[this._pos1+38]=t},r.crossTileID.get=function(){return this._structArray.uint32[this._pos4+10]},r.crossTileID.set=function(t){this._structArray.uint32[this._pos4+10]=t},r.associatedIconIndex.get=function(){return this._structArray.int16[this._pos2+22]},Object.defineProperties(e.prototype,r),e}(Ki);Ma.prototype.size=48;var Sa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.get=function(t){return new Ma(this,t)},e}(ga);oi(\"PlacedSymbolArray\",Sa);var Ea=function(t){function e(){t.apply(this,arguments)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;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(t){this._structArray.uint32[this._pos4+12]=t},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(e.prototype,r),e}(Ki);Ea.prototype.size=68;var Ca=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.get=function(t){return new Ea(this,t)},e}(ya);oi(\"SymbolInstanceArray\",Ca);var La=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getoffsetX=function(t){return this.float32[1*t+0]},e}(va);oi(\"GlyphOffsetArray\",La);var Ia=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getx=function(t){return this.int16[3*t+0]},e.prototype.gety=function(t){return this.int16[3*t+1]},e.prototype.gettileUnitDistanceFromAnchor=function(t){return this.int16[3*t+2]},e}(xa);oi(\"SymbolLineVertexArray\",Ia);var Pa=function(t){function e(){t.apply(this,arguments)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;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(e.prototype,r),e}(Ki);Pa.prototype.size=8;var za=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.get=function(t){return new Pa(this,t)},e}(_a);oi(\"FeatureIndexArray\",za);var Oa=ta([{name:\"a_pos\",components:2,type:\"Int16\"}],4).members,Da=function(t){void 0===t&&(t=[]),this.segments=t};function Ra(t,e){return 256*(t=h(Math.floor(t),0,255))+h(Math.floor(e),0,255)}Da.prototype.prepareSegment=function(t,e,r,n){var i=this.segments[this.segments.length-1];return t>Da.MAX_VERTEX_ARRAY_LENGTH&&k(\"Max vertices per segment is \"+Da.MAX_VERTEX_ARRAY_LENGTH+\": bucket requested \"+t),(!i||i.vertexLength+t>Da.MAX_VERTEX_ARRAY_LENGTH||i.sortKey!==n)&&(i={vertexOffset:e.length,primitiveOffset:r.length,vertexLength:0,primitiveLength:0},void 0!==n&&(i.sortKey=n),this.segments.push(i)),i},Da.prototype.get=function(){return this.segments},Da.prototype.destroy=function(){for(var t=0,e=this.segments;t<e.length;t+=1){var r=e[t];for(var n in r.vaos)r.vaos[n].destroy()}},Da.simpleSegment=function(t,e,r,n){return new Da([{vertexOffset:t,primitiveOffset:e,vertexLength:r,primitiveLength:n,vaos:{},sortKey:0}])},Da.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,oi(\"SegmentVector\",Da);var Fa=ta([{name:\"a_pattern_from\",components:4,type:\"Uint16\"},{name:\"a_pattern_to\",components:4,type:\"Uint16\"},{name:\"a_pixel_ratio_from\",components:1,type:\"Uint16\"},{name:\"a_pixel_ratio_to\",components:1,type:\"Uint16\"}]),Ba=e((function(t){t.exports=function(t,e){var r,n,i,a,o,s,l,c;for(r=3&t.length,n=t.length-r,i=e,o=3432918353,s=461845907,c=0;c<n;)l=255&t.charCodeAt(c)|(255&t.charCodeAt(++c))<<8|(255&t.charCodeAt(++c))<<16|(255&t.charCodeAt(++c))<<24,++c,i=27492+(65535&(a=5*(65535&(i=(i^=l=(65535&(l=(l=(65535&l)*o+(((l>>>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&t.charCodeAt(c+2))<<16;case 2:l^=(255&t.charCodeAt(c+1))<<8;case 1:i^=l=(65535&(l=(l=(65535&(l^=255&t.charCodeAt(c)))*o+(((l>>>16)*o&65535)<<16)&4294967295)<<15|l>>>17))*s+(((l>>>16)*s&65535)<<16)&4294967295}return i^=t.length,i=2246822507*(65535&(i^=i>>>16))+((2246822507*(i>>>16)&65535)<<16)&4294967295,i=3266489909*(65535&(i^=i>>>13))+((3266489909*(i>>>16)&65535)<<16)&4294967295,(i^=i>>>16)>>>0}})),Na=e((function(t){t.exports=function(t,e){for(var r,n=t.length,i=e^n,a=0;n>=4;)r=1540483477*(65535&(r=255&t.charCodeAt(a)|(255&t.charCodeAt(++a))<<8|(255&t.charCodeAt(++a))<<16|(255&t.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&t.charCodeAt(a+2))<<16;case 2:i^=(255&t.charCodeAt(a+1))<<8;case 1:i=1540483477*(65535&(i^=255&t.charCodeAt(a)))+((1540483477*(i>>>16)&65535)<<16)}return i=1540483477*(65535&(i^=i>>>13))+((1540483477*(i>>>16)&65535)<<16),(i^=i>>>15)>>>0}})),ja=Ba,Ua=Ba,Va=Na;ja.murmur3=Ua,ja.murmur2=Va;var qa=function(){this.ids=[],this.positions=[],this.indexed=!1};qa.prototype.add=function(t,e,r,n){this.ids.push(Ga(t)),this.positions.push(e,r,n)},qa.prototype.getPositions=function(t){for(var e=Ga(t),r=0,n=this.ids.length-1;r<n;){var i=r+n>>1;this.ids[i]>=e?n=i:r=i+1}for(var a=[];this.ids[r]===e;){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},qa.serialize=function(t,e){var r=new Float64Array(t.ids),n=new Uint32Array(t.positions);return Za(r,n,0,r.length-1),e&&e.push(r.buffer,n.buffer),{ids:r,positions:n}},qa.deserialize=function(t){var e=new qa;return e.ids=t.ids,e.positions=t.positions,e.indexed=!0,e};var Ha=Math.pow(2,53)-1;function Ga(t){var e=+t;return!isNaN(e)&&e<=Ha?e:ja(String(t))}function Za(t,e,r,n){for(;r<n;){for(var i=t[r+n>>1],a=r-1,o=n+1;;){do{a++}while(t[a]<i);do{o--}while(t[o]>i);if(a>=o)break;Wa(t,a,o),Wa(e,3*a,3*o),Wa(e,3*a+1,3*o+1),Wa(e,3*a+2,3*o+2)}o-r<n-o?(Za(t,e,r,o),r=o+1):(Za(t,e,o+1,n),n=o)}}function Wa(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}oi(\"FeaturePositionMap\",qa);var Ya=function(t,e){this.gl=t.gl,this.location=e},Xa=function(t){function e(e,r){t.call(this,e,r),this.current=0}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.set=function(t){this.current!==t&&(this.current=t,this.gl.uniform1i(this.location,t))},e}(Ya),$a=function(t){function e(e,r){t.call(this,e,r),this.current=0}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.set=function(t){this.current!==t&&(this.current=t,this.gl.uniform1f(this.location,t))},e}(Ya),Ja=function(t){function e(e,r){t.call(this,e,r),this.current=[0,0]}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.set=function(t){t[0]===this.current[0]&&t[1]===this.current[1]||(this.current=t,this.gl.uniform2f(this.location,t[0],t[1]))},e}(Ya),Ka=function(t){function e(e,r){t.call(this,e,r),this.current=[0,0,0]}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.set=function(t){t[0]===this.current[0]&&t[1]===this.current[1]&&t[2]===this.current[2]||(this.current=t,this.gl.uniform3f(this.location,t[0],t[1],t[2]))},e}(Ya),Qa=function(t){function e(e,r){t.call(this,e,r),this.current=[0,0,0,0]}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.set=function(t){t[0]===this.current[0]&&t[1]===this.current[1]&&t[2]===this.current[2]&&t[3]===this.current[3]||(this.current=t,this.gl.uniform4f(this.location,t[0],t[1],t[2],t[3]))},e}(Ya),to=function(t){function e(e,r){t.call(this,e,r),this.current=ce.transparent}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.set=function(t){t.r===this.current.r&&t.g===this.current.g&&t.b===this.current.b&&t.a===this.current.a||(this.current=t,this.gl.uniform4f(this.location,t.r,t.g,t.b,t.a))},e}(Ya),eo=new Float32Array(16),ro=function(t){function e(e,r){t.call(this,e,r),this.current=eo}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.set=function(t){if(t[12]!==this.current[12]||t[0]!==this.current[0])return this.current=t,void this.gl.uniformMatrix4fv(this.location,!1,t);for(var e=1;e<16;e++)if(t[e]!==this.current[e]){this.current=t,this.gl.uniformMatrix4fv(this.location,!1,t);break}},e}(Ya);function no(t){return[Ra(255*t.r,255*t.g),Ra(255*t.b,255*t.a)]}var io=function(t,e,r){this.value=t,this.uniformNames=e.map((function(t){return\"u_\"+t})),this.type=r};io.prototype.setUniform=function(t,e,r){t.set(r.constantOr(this.value))},io.prototype.getBinding=function(t,e,r){return\"color\"===this.type?new to(t,e):new $a(t,e)};var ao=function(t,e){this.uniformNames=e.map((function(t){return\"u_\"+t})),this.patternFrom=null,this.patternTo=null,this.pixelRatioFrom=1,this.pixelRatioTo=1};ao.prototype.setConstantPatternPositions=function(t,e){this.pixelRatioFrom=e.pixelRatio,this.pixelRatioTo=t.pixelRatio,this.patternFrom=e.tlbr,this.patternTo=t.tlbr},ao.prototype.setUniform=function(t,e,r,n){var i=\"u_pattern_to\"===n?this.patternTo:\"u_pattern_from\"===n?this.patternFrom:\"u_pixel_ratio_to\"===n?this.pixelRatioTo:\"u_pixel_ratio_from\"===n?this.pixelRatioFrom:null;i&&t.set(i)},ao.prototype.getBinding=function(t,e,r){return\"u_pattern\"===r.substr(0,9)?new Qa(t,e):new $a(t,e)};var oo=function(t,e,r,n){this.expression=t,this.type=r,this.maxValue=0,this.paintVertexAttributes=e.map((function(t){return{name:\"a_\"+t,type:\"Float32\",components:\"color\"===r?2:1,offset:0}})),this.paintVertexArray=new n};oo.prototype.populatePaintArray=function(t,e,r,n,i){var a=this.paintVertexArray.length,o=this.expression.evaluate(new Oi(0),e,{},n,[],i);this.paintVertexArray.resize(t),this._setPaintValue(a,t,o)},oo.prototype.updatePaintArray=function(t,e,r,n){var i=this.expression.evaluate({zoom:0},r,n);this._setPaintValue(t,e,i)},oo.prototype._setPaintValue=function(t,e,r){if(\"color\"===this.type)for(var n=no(r),i=t;i<e;i++)this.paintVertexArray.emplace(i,n[0],n[1]);else{for(var a=t;a<e;a++)this.paintVertexArray.emplace(a,r);this.maxValue=Math.max(this.maxValue,Math.abs(r))}},oo.prototype.upload=function(t){this.paintVertexArray&&this.paintVertexArray.arrayBuffer&&(this.paintVertexBuffer&&this.paintVertexBuffer.buffer?this.paintVertexBuffer.updateData(this.paintVertexArray):this.paintVertexBuffer=t.createVertexBuffer(this.paintVertexArray,this.paintVertexAttributes,this.expression.isStateDependent))},oo.prototype.destroy=function(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()};var so=function(t,e,r,n,i,a){this.expression=t,this.uniformNames=e.map((function(t){return\"u_\"+t+\"_t\"})),this.type=r,this.useIntegerZoom=n,this.zoom=i,this.maxValue=0,this.paintVertexAttributes=e.map((function(t){return{name:\"a_\"+t,type:\"Float32\",components:\"color\"===r?4:2,offset:0}})),this.paintVertexArray=new a};so.prototype.populatePaintArray=function(t,e,r,n,i){var a=this.expression.evaluate(new Oi(this.zoom),e,{},n,[],i),o=this.expression.evaluate(new Oi(this.zoom+1),e,{},n,[],i),s=this.paintVertexArray.length;this.paintVertexArray.resize(t),this._setPaintValue(s,t,a,o)},so.prototype.updatePaintArray=function(t,e,r,n){var i=this.expression.evaluate({zoom:this.zoom},r,n),a=this.expression.evaluate({zoom:this.zoom+1},r,n);this._setPaintValue(t,e,i,a)},so.prototype._setPaintValue=function(t,e,r,n){if(\"color\"===this.type)for(var i=no(r),a=no(n),o=t;o<e;o++)this.paintVertexArray.emplace(o,i[0],i[1],a[0],a[1]);else{for(var s=t;s<e;s++)this.paintVertexArray.emplace(s,r,n);this.maxValue=Math.max(this.maxValue,Math.abs(r),Math.abs(n))}},so.prototype.upload=function(t){this.paintVertexArray&&this.paintVertexArray.arrayBuffer&&(this.paintVertexBuffer&&this.paintVertexBuffer.buffer?this.paintVertexBuffer.updateData(this.paintVertexArray):this.paintVertexBuffer=t.createVertexBuffer(this.paintVertexArray,this.paintVertexAttributes,this.expression.isStateDependent))},so.prototype.destroy=function(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()},so.prototype.setUniform=function(t,e){var r=this.useIntegerZoom?Math.floor(e.zoom):e.zoom,n=h(this.expression.interpolationFactor(r,this.zoom,this.zoom+1),0,1);t.set(n)},so.prototype.getBinding=function(t,e,r){return new $a(t,e)};var lo=function(t,e,r,n,i,a){this.expression=t,this.type=e,this.useIntegerZoom=r,this.zoom=n,this.layerId=a,this.zoomInPaintVertexArray=new i,this.zoomOutPaintVertexArray=new i};lo.prototype.populatePaintArray=function(t,e,r){var n=this.zoomInPaintVertexArray.length;this.zoomInPaintVertexArray.resize(t),this.zoomOutPaintVertexArray.resize(t),this._setPaintValues(n,t,e.patterns&&e.patterns[this.layerId],r)},lo.prototype.updatePaintArray=function(t,e,r,n,i){this._setPaintValues(t,e,r.patterns&&r.patterns[this.layerId],i)},lo.prototype._setPaintValues=function(t,e,r,n){if(n&&r){var i=r.min,a=r.mid,o=r.max,s=n[i],l=n[a],c=n[o];if(s&&l&&c)for(var u=t;u<e;u++)this.zoomInPaintVertexArray.emplace(u,l.tl[0],l.tl[1],l.br[0],l.br[1],s.tl[0],s.tl[1],s.br[0],s.br[1],l.pixelRatio,s.pixelRatio),this.zoomOutPaintVertexArray.emplace(u,l.tl[0],l.tl[1],l.br[0],l.br[1],c.tl[0],c.tl[1],c.br[0],c.br[1],l.pixelRatio,c.pixelRatio)}},lo.prototype.upload=function(t){this.zoomInPaintVertexArray&&this.zoomInPaintVertexArray.arrayBuffer&&this.zoomOutPaintVertexArray&&this.zoomOutPaintVertexArray.arrayBuffer&&(this.zoomInPaintVertexBuffer=t.createVertexBuffer(this.zoomInPaintVertexArray,Fa.members,this.expression.isStateDependent),this.zoomOutPaintVertexBuffer=t.createVertexBuffer(this.zoomOutPaintVertexArray,Fa.members,this.expression.isStateDependent))},lo.prototype.destroy=function(){this.zoomOutPaintVertexBuffer&&this.zoomOutPaintVertexBuffer.destroy(),this.zoomInPaintVertexBuffer&&this.zoomInPaintVertexBuffer.destroy()};var co=function(t,e,r){this.binders={},this._buffers=[];var n=[];for(var i in t.paint._values)if(r(i)){var a=t.paint.get(i);if(a instanceof Ui&&$r(a.property.specification)){var o=ho(i,t.type),s=a.value,l=a.property.specification.type,c=a.property.useIntegerZoom,u=a.property.specification[\"property-type\"],h=\"cross-faded\"===u||\"cross-faded-data-driven\"===u;if(\"constant\"===s.kind)this.binders[i]=h?new ao(s.value,o):new io(s.value,o,l),n.push(\"/u_\"+i);else if(\"source\"===s.kind||h){var f=fo(i,l,\"source\");this.binders[i]=h?new lo(s,l,c,e,f,t.id):new oo(s,o,l,f),n.push(\"/a_\"+i)}else{var p=fo(i,l,\"composite\");this.binders[i]=new so(s,o,l,c,e,p),n.push(\"/z_\"+i)}}}this.cacheKey=n.sort().join(\"\")};co.prototype.getMaxValue=function(t){var e=this.binders[t];return e instanceof oo||e instanceof so?e.maxValue:0},co.prototype.populatePaintArrays=function(t,e,r,n,i){for(var a in this.binders){var o=this.binders[a];(o instanceof oo||o instanceof so||o instanceof lo)&&o.populatePaintArray(t,e,r,n,i)}},co.prototype.setConstantPatternPositions=function(t,e){for(var r in this.binders){var n=this.binders[r];n instanceof ao&&n.setConstantPatternPositions(t,e)}},co.prototype.updatePaintArrays=function(t,e,r,n,i){var a=!1;for(var o in t)for(var s=0,l=e.getPositions(o);s<l.length;s+=1){var c=l[s],u=r.feature(c.index);for(var h in this.binders){var f=this.binders[h];if((f instanceof oo||f instanceof so||f instanceof lo)&&!0===f.expression.isStateDependent){var p=n.paint.get(h);f.expression=p.value,f.updatePaintArray(c.start,c.end,u,t[o],i),a=!0}}}return a},co.prototype.defines=function(){var t=[];for(var e in this.binders){var r=this.binders[e];(r instanceof io||r instanceof ao)&&t.push.apply(t,r.uniformNames.map((function(t){return\"#define HAS_UNIFORM_\"+t})))}return t},co.prototype.getBinderAttributes=function(){var t=[];for(var e in this.binders){var r=this.binders[e];if(r instanceof oo||r instanceof so)for(var n=0;n<r.paintVertexAttributes.length;n++)t.push(r.paintVertexAttributes[n].name);else if(r instanceof lo)for(var i=0;i<Fa.members.length;i++)t.push(Fa.members[i].name)}return t},co.prototype.getBinderUniforms=function(){var t=[];for(var e in this.binders){var r=this.binders[e];if(r instanceof io||r instanceof ao||r instanceof so)for(var n=0,i=r.uniformNames;n<i.length;n+=1){var a=i[n];t.push(a)}}return t},co.prototype.getPaintVertexBuffers=function(){return this._buffers},co.prototype.getUniforms=function(t,e){var r=[];for(var n in this.binders){var i=this.binders[n];if(i instanceof io||i instanceof ao||i instanceof so)for(var a=0,o=i.uniformNames;a<o.length;a+=1){var s=o[a];if(e[s]){var l=i.getBinding(t,e[s],s);r.push({name:s,property:n,binding:l})}}}return r},co.prototype.setUniforms=function(t,e,r,n){for(var i=0,a=e;i<a.length;i+=1){var o=a[i],s=o.name,l=o.property,c=o.binding;this.binders[l].setUniform(c,n,r.get(l),s)}},co.prototype.updatePaintBuffers=function(t){for(var e in this._buffers=[],this.binders){var r=this.binders[e];if(t&&r instanceof lo){var n=2===t.fromScale?r.zoomInPaintVertexBuffer:r.zoomOutPaintVertexBuffer;n&&this._buffers.push(n)}else(r instanceof oo||r instanceof so)&&r.paintVertexBuffer&&this._buffers.push(r.paintVertexBuffer)}},co.prototype.upload=function(t){for(var e in this.binders){var r=this.binders[e];(r instanceof oo||r instanceof so||r instanceof lo)&&r.upload(t)}this.updatePaintBuffers()},co.prototype.destroy=function(){for(var t in this.binders){var e=this.binders[t];(e instanceof oo||e instanceof so||e instanceof lo)&&e.destroy()}};var uo=function(t,e,r){void 0===r&&(r=function(){return!0}),this.programConfigurations={};for(var n=0,i=t;n<i.length;n+=1){var a=i[n];this.programConfigurations[a.id]=new co(a,e,r)}this.needsUpload=!1,this._featureMap=new qa,this._bufferOffset=0};function ho(t,e){return{\"text-opacity\":[\"opacity\"],\"icon-opacity\":[\"opacity\"],\"text-color\":[\"fill_color\"],\"icon-color\":[\"fill_color\"],\"text-halo-color\":[\"halo_color\"],\"icon-halo-color\":[\"halo_color\"],\"text-halo-blur\":[\"halo_blur\"],\"icon-halo-blur\":[\"halo_blur\"],\"text-halo-width\":[\"halo_width\"],\"icon-halo-width\":[\"halo_width\"],\"line-gap-width\":[\"gapwidth\"],\"line-pattern\":[\"pattern_to\",\"pattern_from\",\"pixel_ratio_to\",\"pixel_ratio_from\"],\"fill-pattern\":[\"pattern_to\",\"pattern_from\",\"pixel_ratio_to\",\"pixel_ratio_from\"],\"fill-extrusion-pattern\":[\"pattern_to\",\"pattern_from\",\"pixel_ratio_to\",\"pixel_ratio_from\"]}[t]||[t.replace(e+\"-\",\"\").replace(/-/g,\"_\")]}function fo(t,e,r){var n={color:{source:oa,composite:Ta},number:{source:va,composite:oa}},i=function(t){return{\"line-pattern\":{source:sa,composite:sa},\"fill-pattern\":{source:sa,composite:sa},\"fill-extrusion-pattern\":{source:sa,composite:sa}}[t]}(t);return i&&i[r]||n[e][r]}uo.prototype.populatePaintArrays=function(t,e,r,n,i,a){for(var o in this.programConfigurations)this.programConfigurations[o].populatePaintArrays(t,e,n,i,a);void 0!==e.id&&this._featureMap.add(e.id,r,this._bufferOffset,t),this._bufferOffset=t,this.needsUpload=!0},uo.prototype.updatePaintArrays=function(t,e,r,n){for(var i=0,a=r;i<a.length;i+=1){var o=a[i];this.needsUpload=this.programConfigurations[o.id].updatePaintArrays(t,this._featureMap,e,o,n)||this.needsUpload}},uo.prototype.get=function(t){return this.programConfigurations[t]},uo.prototype.upload=function(t){if(this.needsUpload){for(var e in this.programConfigurations)this.programConfigurations[e].upload(t);this.needsUpload=!1}},uo.prototype.destroy=function(){for(var t in this.programConfigurations)this.programConfigurations[t].destroy()},oi(\"ConstantBinder\",io),oi(\"CrossFadedConstantBinder\",ao),oi(\"SourceExpressionBinder\",oo),oi(\"CrossFadedCompositeBinder\",lo),oi(\"CompositeExpressionBinder\",so),oi(\"ProgramConfiguration\",co,{omit:[\"_buffers\"]}),oi(\"ProgramConfigurationSet\",uo);var po=8192,mo=Math.pow(2,14)-1,go=-mo-1;function yo(t){for(var e=po/t.extent,r=t.loadGeometry(),n=0;n<r.length;n++)for(var i=r[n],a=0;a<i.length;a++){var o=i[a],s=Math.round(o.x*e),l=Math.round(o.y*e);o.x=h(s,go,mo),o.y=h(l,go,mo),(s<o.x||s>o.x+1||l<o.y||l>o.y+1)&&k(\"Geometry exceeds allowed extent, reduce your vector tile buffer size\")}return r}function vo(t,e){return{type:t.type,id:t.id,properties:t.properties,geometry:e?yo(t):[]}}function xo(t,e,r,n,i){t.emplaceBack(2*e+(n+1)/2,2*r+(i+1)/2)}var _o=function(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((function(t){return t.id})),this.index=t.index,this.hasPattern=!1,this.layoutVertexArray=new ra,this.indexArray=new ma,this.segments=new Da,this.programConfigurations=new uo(t.layers,t.zoom),this.stateDependentLayerIds=this.layers.filter((function(t){return t.isStateDependent()})).map((function(t){return t.id}))};function bo(t,e){for(var r=0;r<t.length;r++)if(Lo(e,t[r]))return!0;for(var n=0;n<e.length;n++)if(Lo(t,e[n]))return!0;return!!Ao(t,e)}function wo(t,e,r){return!!Lo(t,e)||!!So(e,t,r)}function To(t,e){if(1===t.length)return Co(e,t[0]);for(var r=0;r<e.length;r++)for(var n=e[r],i=0;i<n.length;i++)if(Lo(t,n[i]))return!0;for(var a=0;a<t.length;a++)if(Co(e,t[a]))return!0;for(var o=0;o<e.length;o++)if(Ao(t,e[o]))return!0;return!1}function ko(t,e,r){if(t.length>1){if(Ao(t,e))return!0;for(var n=0;n<e.length;n++)if(So(e[n],t,r))return!0}for(var i=0;i<t.length;i++)if(So(t[i],e,r))return!0;return!1}function Ao(t,e){if(0===t.length||0===e.length)return!1;for(var r=0;r<t.length-1;r++)for(var n=t[r],i=t[r+1],a=0;a<e.length-1;a++)if(Mo(n,i,e[a],e[a+1]))return!0;return!1}function Mo(t,e,r,n){return A(t,r,n)!==A(e,r,n)&&A(t,e,r)!==A(t,e,n)}function So(t,e,r){var n=r*r;if(1===e.length)return t.distSqr(e[0])<n;for(var i=1;i<e.length;i++)if(Eo(t,e[i-1],e[i])<n)return!0;return!1}function Eo(t,e,r){var n=e.distSqr(r);if(0===n)return t.distSqr(e);var i=((t.x-e.x)*(r.x-e.x)+(t.y-e.y)*(r.y-e.y))/n;return i<0?t.distSqr(e):i>1?t.distSqr(r):t.distSqr(r.sub(e)._mult(i)._add(e))}function Co(t,e){for(var r,n,i,a=!1,o=0;o<t.length;o++)for(var s=0,l=(r=t[o]).length-1;s<r.length;l=s++)n=r[s],i=r[l],n.y>e.y!=i.y>e.y&&e.x<(i.x-n.x)*(e.y-n.y)/(i.y-n.y)+n.x&&(a=!a);return a}function Lo(t,e){for(var r=!1,n=0,i=t.length-1;n<t.length;i=n++){var a=t[n],o=t[i];a.y>e.y!=o.y>e.y&&e.x<(o.x-a.x)*(e.y-a.y)/(o.y-a.y)+a.x&&(r=!r)}return r}function Io(t,e,r){var n=r[0],i=r[2];if(t.x<n.x&&e.x<n.x||t.x>i.x&&e.x>i.x||t.y<n.y&&e.y<n.y||t.y>i.y&&e.y>i.y)return!1;var a=A(t,e,r[0]);return a!==A(t,e,r[1])||a!==A(t,e,r[2])||a!==A(t,e,r[3])}function Po(t,e,r){var n=e.paint.get(t).value;return\"constant\"===n.kind?n.value:r.programConfigurations.get(e.id).getMaxValue(t)}function zo(t){return Math.sqrt(t[0]*t[0]+t[1]*t[1])}function Oo(t,e,r,n,i){if(!e[0]&&!e[1])return t;var o=a.convert(e)._mult(i);\"viewport\"===r&&o._rotate(-n);for(var s=[],l=0;l<t.length;l++){var c=t[l];s.push(c.sub(o))}return s}_o.prototype.populate=function(t,e,r){var n=this.layers[0],i=[],a=null;\"circle\"===n.type&&(a=n.layout.get(\"circle-sort-key\"));for(var o=0,s=t;o<s.length;o+=1){var l=s[o],c=l.feature,u=l.id,h=l.index,f=l.sourceLayerIndex,p=this.layers[0]._featureFilter.needGeometry,d=vo(c,p);if(this.layers[0]._featureFilter.filter(new Oi(this.zoom),d,r)){var m=a?a.evaluate(d,{},r):void 0,g={id:u,properties:c.properties,type:c.type,sourceLayerIndex:f,index:h,geometry:p?d.geometry:yo(c),patterns:{},sortKey:m};i.push(g)}}a&&i.sort((function(t,e){return t.sortKey-e.sortKey}));for(var y=0,v=i;y<v.length;y+=1){var x=v[y],_=x,b=_.geometry,w=_.index,T=_.sourceLayerIndex,k=t[w].feature;this.addFeature(x,b,w,r),e.featureIndex.insert(k,b,w,T,this.index)}},_o.prototype.update=function(t,e,r){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(t,e,this.stateDependentLayers,r)},_o.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},_o.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},_o.prototype.upload=function(t){this.uploaded||(this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,Oa),this.indexBuffer=t.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(t),this.uploaded=!0},_o.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},_o.prototype.addFeature=function(t,e,r,n){for(var i=0,a=e;i<a.length;i+=1)for(var o=0,s=a[i];o<s.length;o+=1){var l=s[o],c=l.x,u=l.y;if(!(c<0||c>=po||u<0||u>=po)){var h=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,t.sortKey),f=h.vertexLength;xo(this.layoutVertexArray,c,u,-1,-1),xo(this.layoutVertexArray,c,u,1,-1),xo(this.layoutVertexArray,c,u,1,1),xo(this.layoutVertexArray,c,u,-1,1),this.indexArray.emplaceBack(f,f+1,f+2),this.indexArray.emplaceBack(f,f+3,f+2),h.vertexLength+=4,h.primitiveLength+=2}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t,r,{},n)},oi(\"CircleBucket\",_o,{omit:[\"layers\"]});var Do=new Yi({\"circle-sort-key\":new Hi(Ft.layout_circle[\"circle-sort-key\"])}),Ro={paint:new Yi({\"circle-radius\":new Hi(Ft.paint_circle[\"circle-radius\"]),\"circle-color\":new Hi(Ft.paint_circle[\"circle-color\"]),\"circle-blur\":new Hi(Ft.paint_circle[\"circle-blur\"]),\"circle-opacity\":new Hi(Ft.paint_circle[\"circle-opacity\"]),\"circle-translate\":new qi(Ft.paint_circle[\"circle-translate\"]),\"circle-translate-anchor\":new qi(Ft.paint_circle[\"circle-translate-anchor\"]),\"circle-pitch-scale\":new qi(Ft.paint_circle[\"circle-pitch-scale\"]),\"circle-pitch-alignment\":new qi(Ft.paint_circle[\"circle-pitch-alignment\"]),\"circle-stroke-width\":new Hi(Ft.paint_circle[\"circle-stroke-width\"]),\"circle-stroke-color\":new Hi(Ft.paint_circle[\"circle-stroke-color\"]),\"circle-stroke-opacity\":new Hi(Ft.paint_circle[\"circle-stroke-opacity\"])}),layout:Do},Fo=\"undefined\"!=typeof Float32Array?Float32Array:Array;function Bo(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function No(t,e,r){var n=e[0],i=e[1],a=e[2],o=e[3],s=e[4],l=e[5],c=e[6],u=e[7],h=e[8],f=e[9],p=e[10],d=e[11],m=e[12],g=e[13],y=e[14],v=e[15],x=r[0],_=r[1],b=r[2],w=r[3];return t[0]=x*n+_*s+b*h+w*m,t[1]=x*i+_*l+b*f+w*g,t[2]=x*a+_*c+b*p+w*y,t[3]=x*o+_*u+b*d+w*v,x=r[4],_=r[5],b=r[6],w=r[7],t[4]=x*n+_*s+b*h+w*m,t[5]=x*i+_*l+b*f+w*g,t[6]=x*a+_*c+b*p+w*y,t[7]=x*o+_*u+b*d+w*v,x=r[8],_=r[9],b=r[10],w=r[11],t[8]=x*n+_*s+b*h+w*m,t[9]=x*i+_*l+b*f+w*g,t[10]=x*a+_*c+b*p+w*y,t[11]=x*o+_*u+b*d+w*v,x=r[12],_=r[13],b=r[14],w=r[15],t[12]=x*n+_*s+b*h+w*m,t[13]=x*i+_*l+b*f+w*g,t[14]=x*a+_*c+b*p+w*y,t[15]=x*o+_*u+b*d+w*v,t}Math.hypot||(Math.hypot=function(){for(var t=arguments,e=0,r=arguments.length;r--;)e+=t[r]*t[r];return Math.sqrt(e)});var jo=No;var Uo,Vo=function(t,e,r){return t[0]=e[0]-r[0],t[1]=e[1]-r[1],t[2]=e[2]-r[2],t};function qo(t,e,r){var n=e[0],i=e[1],a=e[2],o=e[3];return t[0]=r[0]*n+r[4]*i+r[8]*a+r[12]*o,t[1]=r[1]*n+r[5]*i+r[9]*a+r[13]*o,t[2]=r[2]*n+r[6]*i+r[10]*a+r[14]*o,t[3]=r[3]*n+r[7]*i+r[11]*a+r[15]*o,t}Uo=new Fo(3),Fo!=Float32Array&&(Uo[0]=0,Uo[1]=0,Uo[2]=0),function(){var t=new Fo(4);Fo!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0,t[3]=0)}();var Ho=function(t){var e=t[0],r=t[1];return e*e+r*r},Go=(function(){var t=new Fo(2);Fo!=Float32Array&&(t[0]=0,t[1]=0)}(),function(t){function e(e){t.call(this,e,Ro)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.createBucket=function(t){return new _o(t)},e.prototype.queryRadius=function(t){var e=t;return Po(\"circle-radius\",this,e)+Po(\"circle-stroke-width\",this,e)+zo(this.paint.get(\"circle-translate\"))},e.prototype.queryIntersectsFeature=function(t,e,r,n,i,a,o,s){for(var l=Oo(t,this.paint.get(\"circle-translate\"),this.paint.get(\"circle-translate-anchor\"),a.angle,o),c=this.paint.get(\"circle-radius\").evaluate(e,r)+this.paint.get(\"circle-stroke-width\").evaluate(e,r),u=\"map\"===this.paint.get(\"circle-pitch-alignment\"),h=u?l:function(t,e){return t.map((function(t){return Zo(t,e)}))}(l,s),f=u?c*o:c,p=0,d=n;p<d.length;p+=1)for(var m=0,g=d[p];m<g.length;m+=1){var y=g[m],v=u?y:Zo(y,s),x=f,_=qo([],[y.x,y.y,0,1],s);if(\"viewport\"===this.paint.get(\"circle-pitch-scale\")&&\"map\"===this.paint.get(\"circle-pitch-alignment\")?x*=_[3]/a.cameraToCenterDistance:\"map\"===this.paint.get(\"circle-pitch-scale\")&&\"viewport\"===this.paint.get(\"circle-pitch-alignment\")&&(x*=a.cameraToCenterDistance/_[3]),wo(h,v,x))return!0}return!1},e}($i));function Zo(t,e){var r=qo([],[t.x,t.y,0,1],e);return new a(r[0]/r[3],r[1]/r[3])}var Wo=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(_o);function Yo(t,e,r,n){var i=e.width,a=e.height;if(n){if(n instanceof Uint8ClampedArray)n=new Uint8Array(n.buffer);else if(n.length!==i*a*r)throw new RangeError(\"mismatched image size\")}else n=new Uint8Array(i*a*r);return t.width=i,t.height=a,t.data=n,t}function Xo(t,e,r){var n=e.width,i=e.height;if(n!==t.width||i!==t.height){var a=Yo({},{width:n,height:i},r);$o(t,a,{x:0,y:0},{x:0,y:0},{width:Math.min(t.width,n),height:Math.min(t.height,i)},r),t.width=n,t.height=i,t.data=a.data}}function $o(t,e,r,n,i,a){if(0===i.width||0===i.height)return e;if(i.width>t.width||i.height>t.height||r.x>t.width-i.width||r.y>t.height-i.height)throw new RangeError(\"out of range source coordinates for image copy\");if(i.width>e.width||i.height>e.height||n.x>e.width-i.width||n.y>e.height-i.height)throw new RangeError(\"out of range destination coordinates for image copy\");for(var o=t.data,s=e.data,l=0;l<i.height;l++)for(var c=((r.y+l)*t.width+r.x)*a,u=((n.y+l)*e.width+n.x)*a,h=0;h<i.width*a;h++)s[u+h]=o[c+h];return e}oi(\"HeatmapBucket\",Wo,{omit:[\"layers\"]});var Jo=function(t,e){Yo(this,t,1,e)};Jo.prototype.resize=function(t){Xo(this,t,1)},Jo.prototype.clone=function(){return new Jo({width:this.width,height:this.height},new Uint8Array(this.data))},Jo.copy=function(t,e,r,n,i){$o(t,e,r,n,i,1)};var Ko=function(t,e){Yo(this,t,4,e)};Ko.prototype.resize=function(t){Xo(this,t,4)},Ko.prototype.replace=function(t,e){e?this.data.set(t):t instanceof Uint8ClampedArray?this.data=new Uint8Array(t.buffer):this.data=t},Ko.prototype.clone=function(){return new Ko({width:this.width,height:this.height},new Uint8Array(this.data))},Ko.copy=function(t,e,r,n,i){$o(t,e,r,n,i,4)},oi(\"AlphaImage\",Jo),oi(\"RGBAImage\",Ko);var Qo={paint:new Yi({\"heatmap-radius\":new Hi(Ft.paint_heatmap[\"heatmap-radius\"]),\"heatmap-weight\":new Hi(Ft.paint_heatmap[\"heatmap-weight\"]),\"heatmap-intensity\":new qi(Ft.paint_heatmap[\"heatmap-intensity\"]),\"heatmap-color\":new Wi(Ft.paint_heatmap[\"heatmap-color\"]),\"heatmap-opacity\":new qi(Ft.paint_heatmap[\"heatmap-opacity\"])})};function ts(t){var e={},r=t.resolution||256,n=t.clips?t.clips.length:1,i=t.image||new Ko({width:r,height:n}),a=function(r,n,a){e[t.evaluationKey]=a;var o=t.expression.evaluate(e);i.data[r+n+0]=Math.floor(255*o.r/o.a),i.data[r+n+1]=Math.floor(255*o.g/o.a),i.data[r+n+2]=Math.floor(255*o.b/o.a),i.data[r+n+3]=Math.floor(255*o.a)};if(t.clips)for(var o=0,s=0;o<n;++o,s+=4*r)for(var l=0,c=0;l<r;l++,c+=4){var u=l/(r-1),h=t.clips[o];a(s,c,h.start*(1-u)+h.end*u)}else for(var f=0,p=0;f<r;f++,p+=4)a(0,p,f/(r-1));return i}var es=function(t){function e(e){t.call(this,e,Qo),this._updateColorRamp()}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.createBucket=function(t){return new Wo(t)},e.prototype._handleSpecialPaintPropertyUpdate=function(t){\"heatmap-color\"===t&&this._updateColorRamp()},e.prototype._updateColorRamp=function(){var t=this._transitionablePaint._values[\"heatmap-color\"].value.expression;this.colorRamp=ts({expression:t,evaluationKey:\"heatmapDensity\",image:this.colorRamp}),this.colorRampTexture=null},e.prototype.resize=function(){this.heatmapFbo&&(this.heatmapFbo.destroy(),this.heatmapFbo=null)},e.prototype.queryRadius=function(){return 0},e.prototype.queryIntersectsFeature=function(){return!1},e.prototype.hasOffscreenPass=function(){return 0!==this.paint.get(\"heatmap-opacity\")&&\"none\"!==this.visibility},e}($i),rs={paint:new Yi({\"hillshade-illumination-direction\":new qi(Ft.paint_hillshade[\"hillshade-illumination-direction\"]),\"hillshade-illumination-anchor\":new qi(Ft.paint_hillshade[\"hillshade-illumination-anchor\"]),\"hillshade-exaggeration\":new qi(Ft.paint_hillshade[\"hillshade-exaggeration\"]),\"hillshade-shadow-color\":new qi(Ft.paint_hillshade[\"hillshade-shadow-color\"]),\"hillshade-highlight-color\":new qi(Ft.paint_hillshade[\"hillshade-highlight-color\"]),\"hillshade-accent-color\":new qi(Ft.paint_hillshade[\"hillshade-accent-color\"])})},ns=function(t){function e(e){t.call(this,e,rs)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.hasOffscreenPass=function(){return 0!==this.paint.get(\"hillshade-exaggeration\")&&\"none\"!==this.visibility},e}($i),is=ta([{name:\"a_pos\",components:2,type:\"Int16\"}],4).members,as=ss,os=ss;function ss(t,e,r){r=r||2;var n,i,a,o,s,l,c,u=e&&e.length,h=u?e[0]*r:t.length,f=ls(t,0,h,r,!0),p=[];if(!f||f.next===f.prev)return p;if(u&&(f=function(t,e,r,n){var i,a,o,s=[];for(i=0,a=e.length;i<a;i++)(o=ls(t,e[i]*n,i<a-1?e[i+1]*n:t.length,n,!1))===o.next&&(o.steiner=!0),s.push(xs(o));for(s.sort(ms),i=0;i<s.length;i++)gs(s[i],r),r=cs(r,r.next);return r}(t,e,f,r)),t.length>80*r){n=a=t[0],i=o=t[1];for(var d=r;d<h;d+=r)(s=t[d])<n&&(n=s),(l=t[d+1])<i&&(i=l),s>a&&(a=s),l>o&&(o=l);c=0!==(c=Math.max(a-n,o-i))?1/c:0}return us(f,p,r,n,i,c),p}function ls(t,e,r,n,i){var a,o;if(i===Ps(t,e,r,n)>0)for(a=e;a<r;a+=n)o=Cs(a,t[a],t[a+1],o);else for(a=r-n;a>=e;a-=n)o=Cs(a,t[a],t[a+1],o);return o&&Ts(o,o.next)&&(Ls(o),o=o.next),o}function cs(t,e){if(!t)return t;e||(e=t);var r,n=t;do{if(r=!1,n.steiner||!Ts(n,n.next)&&0!==ws(n.prev,n,n.next))n=n.next;else{if(Ls(n),(n=e=n.prev)===n.next)break;r=!0}}while(r||n!==e);return e}function us(t,e,r,n,i,a,o){if(t){!o&&a&&function(t,e,r,n){var i=t;do{null===i.z&&(i.z=vs(i.x,i.y,e,r,n)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next}while(i!==t);i.prevZ.nextZ=null,i.prevZ=null,function(t){var e,r,n,i,a,o,s,l,c=1;do{for(r=t,t=null,a=null,o=0;r;){for(o++,n=r,s=0,e=0;e<c&&(s++,n=n.nextZ);e++);for(l=c;s>0||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:t=i,i.prevZ=a,a=i;r=n}a.nextZ=null,c*=2}while(o>1)}(i)}(t,n,i,a);for(var s,l,c=t;t.prev!==t.next;)if(s=t.prev,l=t.next,a?fs(t,n,i,a):hs(t))e.push(s.i/r),e.push(t.i/r),e.push(l.i/r),Ls(t),t=l.next,c=l.next;else if((t=l)===c){o?1===o?us(t=ps(cs(t),e,r),e,r,n,i,a,2):2===o&&ds(t,e,r,n,i,a):us(cs(t),e,r,n,i,a,1);break}}}function hs(t){var e=t.prev,r=t,n=t.next;if(ws(e,r,n)>=0)return!1;for(var i=t.next.next;i!==t.prev;){if(_s(e.x,e.y,r.x,r.y,n.x,n.y,i.x,i.y)&&ws(i.prev,i,i.next)>=0)return!1;i=i.next}return!0}function fs(t,e,r,n){var i=t.prev,a=t,o=t.next;if(ws(i,a,o)>=0)return!1;for(var s=i.x<a.x?i.x<o.x?i.x:o.x:a.x<o.x?a.x:o.x,l=i.y<a.y?i.y<o.y?i.y:o.y:a.y<o.y?a.y:o.y,c=i.x>a.x?i.x>o.x?i.x:o.x:a.x>o.x?a.x:o.x,u=i.y>a.y?i.y>o.y?i.y:o.y:a.y>o.y?a.y:o.y,h=vs(s,l,e,r,n),f=vs(c,u,e,r,n),p=t.prevZ,d=t.nextZ;p&&p.z>=h&&d&&d.z<=f;){if(p!==t.prev&&p!==t.next&&_s(i.x,i.y,a.x,a.y,o.x,o.y,p.x,p.y)&&ws(p.prev,p,p.next)>=0)return!1;if(p=p.prevZ,d!==t.prev&&d!==t.next&&_s(i.x,i.y,a.x,a.y,o.x,o.y,d.x,d.y)&&ws(d.prev,d,d.next)>=0)return!1;d=d.nextZ}for(;p&&p.z>=h;){if(p!==t.prev&&p!==t.next&&_s(i.x,i.y,a.x,a.y,o.x,o.y,p.x,p.y)&&ws(p.prev,p,p.next)>=0)return!1;p=p.prevZ}for(;d&&d.z<=f;){if(d!==t.prev&&d!==t.next&&_s(i.x,i.y,a.x,a.y,o.x,o.y,d.x,d.y)&&ws(d.prev,d,d.next)>=0)return!1;d=d.nextZ}return!0}function ps(t,e,r){var n=t;do{var i=n.prev,a=n.next.next;!Ts(i,a)&&ks(i,n,n.next,a)&&Ss(i,a)&&Ss(a,i)&&(e.push(i.i/r),e.push(n.i/r),e.push(a.i/r),Ls(n),Ls(n.next),n=t=a),n=n.next}while(n!==t);return cs(n)}function ds(t,e,r,n,i,a){var o=t;do{for(var s=o.next.next;s!==o.prev;){if(o.i!==s.i&&bs(o,s)){var l=Es(o,s);return o=cs(o,o.next),l=cs(l,l.next),us(o,e,r,n,i,a),void us(l,e,r,n,i,a)}s=s.next}o=o.next}while(o!==t)}function ms(t,e){return t.x-e.x}function gs(t,e){if(e=function(t,e){var r,n=e,i=t.x,a=t.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.next.x?n:n.next}}n=n.next}while(n!==e);if(!r)return null;if(i===o)return r;var l,c=r,u=r.x,h=r.y,f=1/0;n=r;do{i>=n.x&&n.x>=u&&i!==n.x&&_s(a<h?i:o,a,u,h,a<h?o:i,a,n.x,n.y)&&(l=Math.abs(a-n.y)/(i-n.x),Ss(n,t)&&(l<f||l===f&&(n.x>r.x||n.x===r.x&&ys(r,n)))&&(r=n,f=l)),n=n.next}while(n!==c);return r}(t,e)){var r=Es(e,t);cs(e,e.next),cs(r,r.next)}}function ys(t,e){return ws(t.prev,t,e.prev)<0&&ws(e.next,t,t.next)<0}function vs(t,e,r,n,i){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=32767*(t-r)*i)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767*(e-n)*i)|e<<8))|e<<4))|e<<2))|e<<1))<<1}function xs(t){var e=t,r=t;do{(e.x<r.x||e.x===r.x&&e.y<r.y)&&(r=e),e=e.next}while(e!==t);return r}function _s(t,e,r,n,i,a,o,s){return(i-o)*(e-s)-(t-o)*(a-s)>=0&&(t-o)*(n-s)-(r-o)*(e-s)>=0&&(r-o)*(a-s)-(i-o)*(n-s)>=0}function bs(t,e){return t.next.i!==e.i&&t.prev.i!==e.i&&!function(t,e){var r=t;do{if(r.i!==t.i&&r.next.i!==t.i&&r.i!==e.i&&r.next.i!==e.i&&ks(r,r.next,t,e))return!0;r=r.next}while(r!==t);return!1}(t,e)&&(Ss(t,e)&&Ss(e,t)&&function(t,e){var r=t,n=!1,i=(t.x+e.x)/2,a=(t.y+e.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!==t);return n}(t,e)&&(ws(t.prev,t,e.prev)||ws(t,e.prev,e))||Ts(t,e)&&ws(t.prev,t,t.next)>0&&ws(e.prev,e,e.next)>0)}function ws(t,e,r){return(e.y-t.y)*(r.x-e.x)-(e.x-t.x)*(r.y-e.y)}function Ts(t,e){return t.x===e.x&&t.y===e.y}function ks(t,e,r,n){var i=Ms(ws(t,e,r)),a=Ms(ws(t,e,n)),o=Ms(ws(r,n,t)),s=Ms(ws(r,n,e));return i!==a&&o!==s||!(0!==i||!As(t,r,e))||!(0!==a||!As(t,n,e))||!(0!==o||!As(r,t,n))||!(0!==s||!As(r,e,n))}function As(t,e,r){return e.x<=Math.max(t.x,r.x)&&e.x>=Math.min(t.x,r.x)&&e.y<=Math.max(t.y,r.y)&&e.y>=Math.min(t.y,r.y)}function Ms(t){return t>0?1:t<0?-1:0}function Ss(t,e){return ws(t.prev,t,t.next)<0?ws(t,e,t.next)>=0&&ws(t,t.prev,e)>=0:ws(t,e,t.prev)<0||ws(t,t.next,e)<0}function Es(t,e){var r=new Is(t.i,t.x,t.y),n=new Is(e.i,e.x,e.y),i=t.next,a=e.prev;return t.next=e,e.prev=t,r.next=i,i.prev=r,n.next=r,r.prev=n,a.next=n,n.prev=a,n}function Cs(t,e,r,n){var i=new Is(t,e,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 Ls(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)}function Is(t,e,r){this.i=t,this.x=e,this.y=r,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function Ps(t,e,r,n){for(var i=0,a=e,o=r-n;a<r;a+=n)i+=(t[o]-t[a])*(t[a+1]+t[o+1]),o=a;return i}function zs(t,e,r,n,i){Os(t,e,r||0,n||t.length-1,i||Rs)}function Os(t,e,r,n,i){for(;n>r;){if(n-r>600){var a=n-r+1,o=e-r+1,s=Math.log(a),l=.5*Math.exp(2*s/3),c=.5*Math.sqrt(s*l*(a-l)/a)*(o-a/2<0?-1:1);Os(t,e,Math.max(r,Math.floor(e-o*l/a+c)),Math.min(n,Math.floor(e+(a-o)*l/a+c)),i)}var u=t[e],h=r,f=n;for(Ds(t,r,e),i(t[n],u)>0&&Ds(t,r,n);h<f;){for(Ds(t,h,f),h++,f--;i(t[h],u)<0;)h++;for(;i(t[f],u)>0;)f--}0===i(t[r],u)?Ds(t,r,f):Ds(t,++f,n),f<=e&&(r=f+1),e<=f&&(n=f-1)}}function Ds(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}function Rs(t,e){return t<e?-1:t>e?1:0}function Fs(t,e){var r=t.length;if(r<=1)return[t];for(var n,i,a=[],o=0;o<r;o++){var s=M(t[o]);0!==s&&(t[o].area=Math.abs(s),void 0===i&&(i=s<0),i===s<0?(n&&a.push(n),n=[t[o]]):n.push(t[o]))}if(n&&a.push(n),e>1)for(var l=0;l<a.length;l++)a[l].length<=e||(zs(a[l],e,1,a[l].length-1,Bs),a[l]=a[l].slice(0,e));return a}function Bs(t,e){return e.area-t.area}function Ns(t,e,r){for(var n=r.patternDependencies,i=!1,a=0,o=e;a<o.length;a+=1){var s=o[a].paint.get(t+\"-pattern\");s.isConstant()||(i=!0);var l=s.constantOr(null);l&&(i=!0,n[l.to]=!0,n[l.from]=!0)}return i}function js(t,e,r,n,i){for(var a=i.patternDependencies,o=0,s=e;o<s.length;o+=1){var l=s[o],c=l.paint.get(t+\"-pattern\").value;if(\"constant\"!==c.kind){var u=c.evaluate({zoom:n-1},r,{},i.availableImages),h=c.evaluate({zoom:n},r,{},i.availableImages),f=c.evaluate({zoom:n+1},r,{},i.availableImages);u=u&&u.name?u.name:u,h=h&&h.name?h.name:h,f=f&&f.name?f.name:f,a[u]=!0,a[h]=!0,a[f]=!0,r.patterns[l.id]={min:u,mid:h,max:f}}}return r}ss.deviation=function(t,e,r,n){var i=e&&e.length,a=i?e[0]*r:t.length,o=Math.abs(Ps(t,0,a,r));if(i)for(var s=0,l=e.length;s<l;s++){var c=e[s]*r,u=s<l-1?e[s+1]*r:t.length;o-=Math.abs(Ps(t,c,u,r))}var h=0;for(s=0;s<n.length;s+=3){var f=n[s]*r,p=n[s+1]*r,d=n[s+2]*r;h+=Math.abs((t[f]-t[d])*(t[p+1]-t[f+1])-(t[f]-t[p])*(t[d+1]-t[f+1]))}return 0===o&&0===h?0:Math.abs((h-o)/o)},ss.flatten=function(t){for(var e=t[0][0].length,r={vertices:[],holes:[],dimensions:e},n=0,i=0;i<t.length;i++){for(var a=0;a<t[i].length;a++)for(var o=0;o<e;o++)r.vertices.push(t[i][a][o]);i>0&&(n+=t[i-1].length,r.holes.push(n))}return r},as.default=os;var Us=function(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((function(t){return t.id})),this.index=t.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new ra,this.indexArray=new ma,this.indexArray2=new ba,this.programConfigurations=new uo(t.layers,t.zoom),this.segments=new Da,this.segments2=new Da,this.stateDependentLayerIds=this.layers.filter((function(t){return t.isStateDependent()})).map((function(t){return t.id}))};Us.prototype.populate=function(t,e,r){this.hasPattern=Ns(\"fill\",this.layers,e);for(var n=this.layers[0].layout.get(\"fill-sort-key\"),i=[],a=0,o=t;a<o.length;a+=1){var s=o[a],l=s.feature,c=s.id,u=s.index,h=s.sourceLayerIndex,f=this.layers[0]._featureFilter.needGeometry,p=vo(l,f);if(this.layers[0]._featureFilter.filter(new Oi(this.zoom),p,r)){var d=n?n.evaluate(p,{},r,e.availableImages):void 0,m={id:c,properties:l.properties,type:l.type,sourceLayerIndex:h,index:u,geometry:f?p.geometry:yo(l),patterns:{},sortKey:d};i.push(m)}}n&&i.sort((function(t,e){return t.sortKey-e.sortKey}));for(var g=0,y=i;g<y.length;g+=1){var v=y[g],x=v,_=x.geometry,b=x.index,w=x.sourceLayerIndex;if(this.hasPattern){var T=js(\"fill\",this.layers,v,this.zoom,e);this.patternFeatures.push(T)}else this.addFeature(v,_,b,r,{});var k=t[b].feature;e.featureIndex.insert(k,_,b,w,this.index)}},Us.prototype.update=function(t,e,r){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(t,e,this.stateDependentLayers,r)},Us.prototype.addFeatures=function(t,e,r){for(var n=0,i=this.patternFeatures;n<i.length;n+=1){var a=i[n];this.addFeature(a,a.geometry,a.index,e,r)}},Us.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},Us.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},Us.prototype.upload=function(t){this.uploaded||(this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,is),this.indexBuffer=t.createIndexBuffer(this.indexArray),this.indexBuffer2=t.createIndexBuffer(this.indexArray2)),this.programConfigurations.upload(t),this.uploaded=!0},Us.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())},Us.prototype.addFeature=function(t,e,r,n,i){for(var a=0,o=Fs(e,500);a<o.length;a+=1){for(var s=o[a],l=0,c=0,u=s;c<u.length;c+=1)l+=u[c].length;for(var h=this.segments.prepareSegment(l,this.layoutVertexArray,this.indexArray),f=h.vertexLength,p=[],d=[],m=0,g=s;m<g.length;m+=1){var y=g[m];if(0!==y.length){y!==s[0]&&d.push(p.length/2);var v=this.segments2.prepareSegment(y.length,this.layoutVertexArray,this.indexArray2),x=v.vertexLength;this.layoutVertexArray.emplaceBack(y[0].x,y[0].y),this.indexArray2.emplaceBack(x+y.length-1,x),p.push(y[0].x),p.push(y[0].y);for(var _=1;_<y.length;_++)this.layoutVertexArray.emplaceBack(y[_].x,y[_].y),this.indexArray2.emplaceBack(x+_-1,x+_),p.push(y[_].x),p.push(y[_].y);v.vertexLength+=y.length,v.primitiveLength+=y.length}}for(var b=as(p,d),w=0;w<b.length;w+=3)this.indexArray.emplaceBack(f+b[w],f+b[w+1],f+b[w+2]);h.vertexLength+=l,h.primitiveLength+=b.length/3}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t,r,i,n)},oi(\"FillBucket\",Us,{omit:[\"layers\",\"patternFeatures\"]});var Vs=new Yi({\"fill-sort-key\":new Hi(Ft.layout_fill[\"fill-sort-key\"])}),qs={paint:new Yi({\"fill-antialias\":new qi(Ft.paint_fill[\"fill-antialias\"]),\"fill-opacity\":new Hi(Ft.paint_fill[\"fill-opacity\"]),\"fill-color\":new Hi(Ft.paint_fill[\"fill-color\"]),\"fill-outline-color\":new Hi(Ft.paint_fill[\"fill-outline-color\"]),\"fill-translate\":new qi(Ft.paint_fill[\"fill-translate\"]),\"fill-translate-anchor\":new qi(Ft.paint_fill[\"fill-translate-anchor\"]),\"fill-pattern\":new Gi(Ft.paint_fill[\"fill-pattern\"])}),layout:Vs},Hs=function(t){function e(e){t.call(this,e,qs)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.recalculate=function(e,r){t.prototype.recalculate.call(this,e,r);var n=this.paint._values[\"fill-outline-color\"];\"constant\"===n.value.kind&&void 0===n.value.value&&(this.paint._values[\"fill-outline-color\"]=this.paint._values[\"fill-color\"])},e.prototype.createBucket=function(t){return new Us(t)},e.prototype.queryRadius=function(){return zo(this.paint.get(\"fill-translate\"))},e.prototype.queryIntersectsFeature=function(t,e,r,n,i,a,o){return To(Oo(t,this.paint.get(\"fill-translate\"),this.paint.get(\"fill-translate-anchor\"),a.angle,o),n)},e.prototype.isTileClipped=function(){return!0},e}($i),Gs=ta([{name:\"a_pos\",components:2,type:\"Int16\"},{name:\"a_normal_ed\",components:4,type:\"Int16\"}],4).members,Zs=Ws;function Ws(t,e,r,n,i){this.properties={},this.extent=r,this.type=0,this._pbf=t,this._geometry=-1,this._keys=n,this._values=i,t.readFields(Ys,this,e)}function Ys(t,e,r){1==t?e.id=r.readVarint():2==t?function(t,e){for(var r=t.readVarint()+t.pos;t.pos<r;){var n=e._keys[t.readVarint()],i=e._values[t.readVarint()];e.properties[n]=i}}(r,e):3==t?e.type=r.readVarint():4==t&&(e._geometry=r.pos)}function Xs(t){for(var e,r,n=0,i=0,a=t.length,o=a-1;i<a;o=i++)e=t[i],n+=((r=t[o]).x-e.x)*(e.y+r.y);return n}Ws.types=[\"Unknown\",\"Point\",\"LineString\",\"Polygon\"],Ws.prototype.loadGeometry=function(){var t=this._pbf;t.pos=this._geometry;for(var e,r=t.readVarint()+t.pos,n=1,i=0,o=0,s=0,l=[];t.pos<r;){if(i<=0){var c=t.readVarint();n=7&c,i=c>>3}if(i--,1===n||2===n)o+=t.readSVarint(),s+=t.readSVarint(),1===n&&(e&&l.push(e),e=[]),e.push(new a(o,s));else{if(7!==n)throw new Error(\"unknown command \"+n);e&&e.push(e[0].clone())}}return e&&l.push(e),l},Ws.prototype.bbox=function(){var t=this._pbf;t.pos=this._geometry;for(var e=t.readVarint()+t.pos,r=1,n=0,i=0,a=0,o=1/0,s=-1/0,l=1/0,c=-1/0;t.pos<e;){if(n<=0){var u=t.readVarint();r=7&u,n=u>>3}if(n--,1===r||2===r)(i+=t.readSVarint())<o&&(o=i),i>s&&(s=i),(a+=t.readSVarint())<l&&(l=a),a>c&&(c=a);else if(7!==r)throw new Error(\"unknown command \"+r)}return[o,l,s,c]},Ws.prototype.toGeoJSON=function(t,e,r){var n,i,a=this.extent*Math.pow(2,r),o=this.extent*t,s=this.extent*e,l=this.loadGeometry(),c=Ws.types[this.type];function u(t){for(var e=0;e<t.length;e++){var r=t[e],n=180-360*(r.y+s)/a;t[e]=[360*(r.x+o)/a-180,360/Math.PI*Math.atan(Math.exp(n*Math.PI/180))-90]}}switch(this.type){case 1:var h=[];for(n=0;n<l.length;n++)h[n]=l[n][0];u(l=h);break;case 2:for(n=0;n<l.length;n++)u(l[n]);break;case 3:for(l=function(t){var e=t.length;if(e<=1)return[t];for(var r,n,i=[],a=0;a<e;a++){var o=Xs(t[a]);0!==o&&(void 0===n&&(n=o<0),n===o<0?(r&&i.push(r),r=[t[a]]):r.push(t[a]))}return r&&i.push(r),i}(l),n=0;n<l.length;n++)for(i=0;i<l[n].length;i++)u(l[n][i])}1===l.length?l=l[0]:c=\"Multi\"+c;var f={type:\"Feature\",geometry:{type:c,coordinates:l},properties:this.properties};return\"id\"in this&&(f.id=this.id),f};var $s=Js;function Js(t,e){this.version=1,this.name=null,this.extent=4096,this.length=0,this._pbf=t,this._keys=[],this._values=[],this._features=[],t.readFields(Ks,this,e),this.length=this._features.length}function Ks(t,e,r){15===t?e.version=r.readVarint():1===t?e.name=r.readString():5===t?e.extent=r.readVarint():2===t?e._features.push(r.pos):3===t?e._keys.push(r.readString()):4===t&&e._values.push(function(t){for(var e=null,r=t.readVarint()+t.pos;t.pos<r;){var n=t.readVarint()>>3;e=1===n?t.readString():2===n?t.readFloat():3===n?t.readDouble():4===n?t.readVarint64():5===n?t.readVarint():6===n?t.readSVarint():7===n?t.readBoolean():null}return e}(r))}function Qs(t,e,r){if(3===t){var n=new $s(r,r.readVarint()+r.pos);n.length&&(e[n.name]=n)}}Js.prototype.feature=function(t){if(t<0||t>=this._features.length)throw new Error(\"feature index out of bounds\");this._pbf.pos=this._features[t];var e=this._pbf.readVarint()+this._pbf.pos;return new Zs(this._pbf,e,this.extent,this._keys,this._values)};var tl={VectorTile:function(t,e){this.layers=t.readFields(Qs,{},e)},VectorTileFeature:Zs,VectorTileLayer:$s},el=tl.VectorTileFeature.types,rl=Math.pow(2,13);function nl(t,e,r,n,i,a,o,s){t.emplaceBack(e,r,2*Math.floor(n*rl)+o,i*rl*2,a*rl*2,Math.round(s))}var il=function(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((function(t){return t.id})),this.index=t.index,this.hasPattern=!1,this.layoutVertexArray=new ia,this.indexArray=new ma,this.programConfigurations=new uo(t.layers,t.zoom),this.segments=new Da,this.stateDependentLayerIds=this.layers.filter((function(t){return t.isStateDependent()})).map((function(t){return t.id}))};function al(t,e){return t.x===e.x&&(t.x<0||t.x>po)||t.y===e.y&&(t.y<0||t.y>po)}il.prototype.populate=function(t,e,r){this.features=[],this.hasPattern=Ns(\"fill-extrusion\",this.layers,e);for(var n=0,i=t;n<i.length;n+=1){var a=i[n],o=a.feature,s=a.id,l=a.index,c=a.sourceLayerIndex,u=this.layers[0]._featureFilter.needGeometry,h=vo(o,u);if(this.layers[0]._featureFilter.filter(new Oi(this.zoom),h,r)){var f={id:s,sourceLayerIndex:c,index:l,geometry:u?h.geometry:yo(o),properties:o.properties,type:o.type,patterns:{}};this.hasPattern?this.features.push(js(\"fill-extrusion\",this.layers,f,this.zoom,e)):this.addFeature(f,f.geometry,l,r,{}),e.featureIndex.insert(o,f.geometry,l,c,this.index,!0)}}},il.prototype.addFeatures=function(t,e,r){for(var n=0,i=this.features;n<i.length;n+=1){var a=i[n],o=a.geometry;this.addFeature(a,o,a.index,e,r)}},il.prototype.update=function(t,e,r){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(t,e,this.stateDependentLayers,r)},il.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},il.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},il.prototype.upload=function(t){this.uploaded||(this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,Gs),this.indexBuffer=t.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(t),this.uploaded=!0},il.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},il.prototype.addFeature=function(t,e,r,n,i){for(var a=0,o=Fs(e,500);a<o.length;a+=1){for(var s=o[a],l=0,c=0,u=s;c<u.length;c+=1)l+=u[c].length;for(var h=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray),f=0,p=s;f<p.length;f+=1){var d=p[f];if(0!==d.length&&!((P=d).every((function(t){return t.x<0}))||P.every((function(t){return t.x>po}))||P.every((function(t){return t.y<0}))||P.every((function(t){return t.y>po}))))for(var m=0,g=0;g<d.length;g++){var y=d[g];if(g>=1){var v=d[g-1];if(!al(y,v)){h.vertexLength+4>Da.MAX_VERTEX_ARRAY_LENGTH&&(h=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));var x=y.sub(v)._perp()._unit(),_=v.dist(y);m+_>32768&&(m=0),nl(this.layoutVertexArray,y.x,y.y,x.x,x.y,0,0,m),nl(this.layoutVertexArray,y.x,y.y,x.x,x.y,0,1,m),m+=_,nl(this.layoutVertexArray,v.x,v.y,x.x,x.y,0,0,m),nl(this.layoutVertexArray,v.x,v.y,x.x,x.y,0,1,m);var b=h.vertexLength;this.indexArray.emplaceBack(b,b+2,b+1),this.indexArray.emplaceBack(b+1,b+2,b+3),h.vertexLength+=4,h.primitiveLength+=2}}}}if(h.vertexLength+l>Da.MAX_VERTEX_ARRAY_LENGTH&&(h=this.segments.prepareSegment(l,this.layoutVertexArray,this.indexArray)),\"Polygon\"===el[t.type]){for(var w=[],T=[],k=h.vertexLength,A=0,M=s;A<M.length;A+=1){var S=M[A];if(0!==S.length){S!==s[0]&&T.push(w.length/2);for(var E=0;E<S.length;E++){var C=S[E];nl(this.layoutVertexArray,C.x,C.y,0,0,1,1,0),w.push(C.x),w.push(C.y)}}}for(var L=as(w,T),I=0;I<L.length;I+=3)this.indexArray.emplaceBack(k+L[I],k+L[I+2],k+L[I+1]);h.primitiveLength+=L.length/3,h.vertexLength+=l}}var P;this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t,r,i,n)},oi(\"FillExtrusionBucket\",il,{omit:[\"layers\",\"features\"]});var ol={paint:new Yi({\"fill-extrusion-opacity\":new qi(Ft[\"paint_fill-extrusion\"][\"fill-extrusion-opacity\"]),\"fill-extrusion-color\":new Hi(Ft[\"paint_fill-extrusion\"][\"fill-extrusion-color\"]),\"fill-extrusion-translate\":new qi(Ft[\"paint_fill-extrusion\"][\"fill-extrusion-translate\"]),\"fill-extrusion-translate-anchor\":new qi(Ft[\"paint_fill-extrusion\"][\"fill-extrusion-translate-anchor\"]),\"fill-extrusion-pattern\":new Gi(Ft[\"paint_fill-extrusion\"][\"fill-extrusion-pattern\"]),\"fill-extrusion-height\":new Hi(Ft[\"paint_fill-extrusion\"][\"fill-extrusion-height\"]),\"fill-extrusion-base\":new Hi(Ft[\"paint_fill-extrusion\"][\"fill-extrusion-base\"]),\"fill-extrusion-vertical-gradient\":new qi(Ft[\"paint_fill-extrusion\"][\"fill-extrusion-vertical-gradient\"])})},sl=function(t){function e(e){t.call(this,e,ol)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.createBucket=function(t){return new il(t)},e.prototype.queryRadius=function(){return zo(this.paint.get(\"fill-extrusion-translate\"))},e.prototype.is3D=function(){return!0},e.prototype.queryIntersectsFeature=function(t,e,r,n,i,o,s,l){var c=Oo(t,this.paint.get(\"fill-extrusion-translate\"),this.paint.get(\"fill-extrusion-translate-anchor\"),o.angle,s),u=this.paint.get(\"fill-extrusion-height\").evaluate(e,r),h=this.paint.get(\"fill-extrusion-base\").evaluate(e,r),f=function(t,e,r,n){for(var i=[],o=0,s=t;o<s.length;o+=1){var l=s[o],c=[l.x,l.y,n,1];qo(c,c,e),i.push(new a(c[0]/c[3],c[1]/c[3]))}return i}(c,l,0,0),p=function(t,e,r,n){for(var i=[],o=[],s=n[8]*e,l=n[9]*e,c=n[10]*e,u=n[11]*e,h=n[8]*r,f=n[9]*r,p=n[10]*r,d=n[11]*r,m=0,g=t;m<g.length;m+=1){for(var y=[],v=[],x=0,_=g[m];x<_.length;x+=1){var b=_[x],w=b.x,T=b.y,k=n[0]*w+n[4]*T+n[12],A=n[1]*w+n[5]*T+n[13],M=n[2]*w+n[6]*T+n[14],S=n[3]*w+n[7]*T+n[15],E=M+c,C=S+u,L=k+h,I=A+f,P=M+p,z=S+d,O=new a((k+s)/C,(A+l)/C);O.z=E/C,y.push(O);var D=new a(L/z,I/z);D.z=P/z,v.push(D)}i.push(y),o.push(v)}return[i,o]}(n,h,u,l);return function(t,e,r){var n=1/0;To(r,e)&&(n=cl(r,e[0]));for(var i=0;i<e.length;i++)for(var a=e[i],o=t[i],s=0;s<a.length-1;s++){var l=a[s],c=a[s+1],u=o[s],h=[l,c,o[s+1],u,l];bo(r,h)&&(n=Math.min(n,cl(r,h)))}return n!==1/0&&n}(p[0],p[1],f)},e}($i);function ll(t,e){return t.x*e.x+t.y*e.y}function cl(t,e){if(1===t.length){for(var r,n=0,i=e[n++];!r||i.equals(r);)if(!(r=e[n++]))return 1/0;for(;n<e.length;n++){var a=e[n],o=t[0],s=r.sub(i),l=a.sub(i),c=o.sub(i),u=ll(s,s),h=ll(s,l),f=ll(l,l),p=ll(c,s),d=ll(c,l),m=u*f-h*h,g=(f*p-h*d)/m,y=(u*d-h*p)/m,v=1-g-y,x=i.z*v+r.z*g+a.z*y;if(isFinite(x))return x}return 1/0}for(var _=1/0,b=0,w=e;b<w.length;b+=1){var T=w[b];_=Math.min(_,T.z)}return _}var ul=ta([{name:\"a_pos_normal\",components:2,type:\"Int16\"},{name:\"a_data\",components:4,type:\"Uint8\"}],4).members,hl=ta([{name:\"a_uv_x\",components:1,type:\"Float32\"},{name:\"a_split_index\",components:1,type:\"Float32\"}]).members,fl=tl.VectorTileFeature.types,pl=Math.cos(Math.PI/180*37.5),dl=Math.pow(2,14)/.5,ml=function(t){var e=this;this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((function(t){return t.id})),this.index=t.index,this.hasPattern=!1,this.patternFeatures=[],this.lineClipsArray=[],this.gradients={},this.layers.forEach((function(t){e.gradients[t.id]={}})),this.layoutVertexArray=new aa,this.layoutVertexArray2=new oa,this.indexArray=new ma,this.programConfigurations=new uo(t.layers,t.zoom),this.segments=new Da,this.maxLineLength=0,this.stateDependentLayerIds=this.layers.filter((function(t){return t.isStateDependent()})).map((function(t){return t.id}))};ml.prototype.populate=function(t,e,r){this.hasPattern=Ns(\"line\",this.layers,e);for(var n=this.layers[0].layout.get(\"line-sort-key\"),i=[],a=0,o=t;a<o.length;a+=1){var s=o[a],l=s.feature,c=s.id,u=s.index,h=s.sourceLayerIndex,f=this.layers[0]._featureFilter.needGeometry,p=vo(l,f);if(this.layers[0]._featureFilter.filter(new Oi(this.zoom),p,r)){var d=n?n.evaluate(p,{},r):void 0,m={id:c,properties:l.properties,type:l.type,sourceLayerIndex:h,index:u,geometry:f?p.geometry:yo(l),patterns:{},sortKey:d};i.push(m)}}n&&i.sort((function(t,e){return t.sortKey-e.sortKey}));for(var g=0,y=i;g<y.length;g+=1){var v=y[g],x=v,_=x.geometry,b=x.index,w=x.sourceLayerIndex;if(this.hasPattern){var T=js(\"line\",this.layers,v,this.zoom,e);this.patternFeatures.push(T)}else this.addFeature(v,_,b,r,{});var k=t[b].feature;e.featureIndex.insert(k,_,b,w,this.index)}},ml.prototype.update=function(t,e,r){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(t,e,this.stateDependentLayers,r)},ml.prototype.addFeatures=function(t,e,r){for(var n=0,i=this.patternFeatures;n<i.length;n+=1){var a=i[n];this.addFeature(a,a.geometry,a.index,e,r)}},ml.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length},ml.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},ml.prototype.upload=function(t){this.uploaded||(0!==this.layoutVertexArray2.length&&(this.layoutVertexBuffer2=t.createVertexBuffer(this.layoutVertexArray2,hl)),this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,ul),this.indexBuffer=t.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(t),this.uploaded=!0},ml.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},ml.prototype.lineFeatureClips=function(t){if(t.properties&&t.properties.hasOwnProperty(\"mapbox_clip_start\")&&t.properties.hasOwnProperty(\"mapbox_clip_end\"))return{start:+t.properties.mapbox_clip_start,end:+t.properties.mapbox_clip_end}},ml.prototype.addFeature=function(t,e,r,n,i){var a=this.layers[0].layout,o=a.get(\"line-join\").evaluate(t,{}),s=a.get(\"line-cap\"),l=a.get(\"line-miter-limit\"),c=a.get(\"line-round-limit\");this.lineClips=this.lineFeatureClips(t);for(var u=0,h=e;u<h.length;u+=1){var f=h[u];this.addLine(f,t,o,s,l,c)}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t,r,i,n)},ml.prototype.addLine=function(t,e,r,n,i,a){if(this.distance=0,this.scaledDistance=0,this.totalDistance=0,this.lineClips){this.lineClipsArray.push(this.lineClips);for(var o=0;o<t.length-1;o++)this.totalDistance+=t[o].dist(t[o+1]);this.updateScaledDistance(),this.maxLineLength=Math.max(this.maxLineLength,this.totalDistance)}for(var s=\"Polygon\"===fl[e.type],l=t.length;l>=2&&t[l-1].equals(t[l-2]);)l--;for(var c=0;c<l-1&&t[c].equals(t[c+1]);)c++;if(!(l<(s?3:2))){\"bevel\"===r&&(i=1.05);var u,h=this.overscaling<=16?15*po/(512*this.overscaling):0,f=this.segments.prepareSegment(10*l,this.layoutVertexArray,this.indexArray),p=void 0,d=void 0,m=void 0,g=void 0;this.e1=this.e2=-1,s&&(u=t[l-2],g=t[c].sub(u)._unit()._perp());for(var y=c;y<l;y++)if(!(d=y===l-1?s?t[c+1]:void 0:t[y+1])||!t[y].equals(d)){g&&(m=g),u&&(p=u),u=t[y],g=d?d.sub(u)._unit()._perp():m;var v=(m=m||g).add(g);0===v.x&&0===v.y||v._unit();var x=m.x*g.x+m.y*g.y,_=v.x*g.x+v.y*g.y,b=0!==_?1/_:1/0,w=2*Math.sqrt(2-2*_),T=_<pl&&p&&d,k=m.x*g.y-m.y*g.x>0;if(T&&y>c){var A=u.dist(p);if(A>2*h){var M=u.sub(u.sub(p)._mult(h/A)._round());this.updateDistance(p,M),this.addCurrentVertex(M,m,0,0,f),p=M}}var S=p&&d,E=S?r:s?\"butt\":n;if(S&&\"round\"===E&&(b<a?E=\"miter\":b<=2&&(E=\"fakeround\")),\"miter\"===E&&b>i&&(E=\"bevel\"),\"bevel\"===E&&(b>2&&(E=\"flipbevel\"),b<i&&(E=\"miter\")),p&&this.updateDistance(p,u),\"miter\"===E)v._mult(b),this.addCurrentVertex(u,v,0,0,f);else if(\"flipbevel\"===E){if(b>100)v=g.mult(-1);else{var C=b*m.add(g).mag()/m.sub(g).mag();v._perp()._mult(C*(k?-1:1))}this.addCurrentVertex(u,v,0,0,f),this.addCurrentVertex(u,v.mult(-1),0,0,f)}else if(\"bevel\"===E||\"fakeround\"===E){var L=-Math.sqrt(b*b-1),I=k?L:0,P=k?0:L;if(p&&this.addCurrentVertex(u,m,I,P,f),\"fakeround\"===E)for(var z=Math.round(180*w/Math.PI/20),O=1;O<z;O++){var D=O/z;if(.5!==D){var R=D-.5;D+=D*R*(D-1)*((1.0904+x*(x*(3.55645-1.43519*x)-3.2452))*R*R+(.848013+x*(.215638*x-1.06021)))}var F=g.sub(m)._mult(D)._add(m)._unit()._mult(k?-1:1);this.addHalfVertex(u,F.x,F.y,!1,k,0,f)}d&&this.addCurrentVertex(u,g,-I,-P,f)}else if(\"butt\"===E)this.addCurrentVertex(u,v,0,0,f);else if(\"square\"===E){var B=p?1:-1;this.addCurrentVertex(u,v,B,B,f)}else\"round\"===E&&(p&&(this.addCurrentVertex(u,m,0,0,f),this.addCurrentVertex(u,m,1,1,f,!0)),d&&(this.addCurrentVertex(u,g,-1,-1,f,!0),this.addCurrentVertex(u,g,0,0,f)));if(T&&y<l-1){var N=u.dist(d);if(N>2*h){var j=u.add(d.sub(u)._mult(h/N)._round());this.updateDistance(u,j),this.addCurrentVertex(j,g,0,0,f),u=j}}}}},ml.prototype.addCurrentVertex=function(t,e,r,n,i,a){void 0===a&&(a=!1);var o=e.x+e.y*r,s=e.y-e.x*r,l=-e.x+e.y*n,c=-e.y-e.x*n;this.addHalfVertex(t,o,s,a,!1,r,i),this.addHalfVertex(t,l,c,a,!0,-n,i),this.distance>dl/2&&0===this.totalDistance&&(this.distance=0,this.addCurrentVertex(t,e,r,n,i,a))},ml.prototype.addHalfVertex=function(t,e,r,n,i,a,o){var s=t.x,l=t.y,c=.5*(this.lineClips?this.scaledDistance*(dl-1):this.scaledDistance);if(this.layoutVertexArray.emplaceBack((s<<1)+(n?1:0),(l<<1)+(i?1:0),Math.round(63*e)+128,Math.round(63*r)+128,1+(0===a?0:a<0?-1:1)|(63&c)<<2,c>>6),this.lineClips){var u=(this.scaledDistance-this.lineClips.start)/(this.lineClips.end-this.lineClips.start);this.layoutVertexArray2.emplaceBack(u,this.lineClipsArray.length)}var h=o.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,h),o.primitiveLength++),i?this.e2=h:this.e1=h},ml.prototype.updateScaledDistance=function(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance},ml.prototype.updateDistance=function(t,e){this.distance+=t.dist(e),this.updateScaledDistance()},oi(\"LineBucket\",ml,{omit:[\"layers\",\"patternFeatures\"]});var gl=new Yi({\"line-cap\":new qi(Ft.layout_line[\"line-cap\"]),\"line-join\":new Hi(Ft.layout_line[\"line-join\"]),\"line-miter-limit\":new qi(Ft.layout_line[\"line-miter-limit\"]),\"line-round-limit\":new qi(Ft.layout_line[\"line-round-limit\"]),\"line-sort-key\":new Hi(Ft.layout_line[\"line-sort-key\"])}),yl={paint:new Yi({\"line-opacity\":new Hi(Ft.paint_line[\"line-opacity\"]),\"line-color\":new Hi(Ft.paint_line[\"line-color\"]),\"line-translate\":new qi(Ft.paint_line[\"line-translate\"]),\"line-translate-anchor\":new qi(Ft.paint_line[\"line-translate-anchor\"]),\"line-width\":new Hi(Ft.paint_line[\"line-width\"]),\"line-gap-width\":new Hi(Ft.paint_line[\"line-gap-width\"]),\"line-offset\":new Hi(Ft.paint_line[\"line-offset\"]),\"line-blur\":new Hi(Ft.paint_line[\"line-blur\"]),\"line-dasharray\":new Zi(Ft.paint_line[\"line-dasharray\"]),\"line-pattern\":new Gi(Ft.paint_line[\"line-pattern\"]),\"line-gradient\":new Wi(Ft.paint_line[\"line-gradient\"])}),layout:gl},vl=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.possiblyEvaluate=function(e,r){return r=new Oi(Math.floor(r.zoom),{now:r.now,fadeDuration:r.fadeDuration,zoomHistory:r.zoomHistory,transition:r.transition}),t.prototype.possiblyEvaluate.call(this,e,r)},e.prototype.evaluate=function(e,r,n,i){return r=p({},r,{zoom:Math.floor(r.zoom)}),t.prototype.evaluate.call(this,e,r,n,i)},e}(Hi),xl=new vl(yl.paint.properties[\"line-width\"].specification);xl.useIntegerZoom=!0;var _l=function(t){function e(e){t.call(this,e,yl),this.gradientVersion=0}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._handleSpecialPaintPropertyUpdate=function(t){if(\"line-gradient\"===t){var e=this._transitionablePaint._values[\"line-gradient\"].value.expression;this.stepInterpolant=e._styleExpression.expression instanceof tr,this.gradientVersion=(this.gradientVersion+1)%l}},e.prototype.gradientExpression=function(){return this._transitionablePaint._values[\"line-gradient\"].value.expression},e.prototype.recalculate=function(e,r){t.prototype.recalculate.call(this,e,r),this.paint._values[\"line-floorwidth\"]=xl.possiblyEvaluate(this._transitioningPaint._values[\"line-width\"].value,e)},e.prototype.createBucket=function(t){return new ml(t)},e.prototype.queryRadius=function(t){var e=t,r=bl(Po(\"line-width\",this,e),Po(\"line-gap-width\",this,e)),n=Po(\"line-offset\",this,e);return r/2+Math.abs(n)+zo(this.paint.get(\"line-translate\"))},e.prototype.queryIntersectsFeature=function(t,e,r,n,i,o,s){var l=Oo(t,this.paint.get(\"line-translate\"),this.paint.get(\"line-translate-anchor\"),o.angle,s),c=s/2*bl(this.paint.get(\"line-width\").evaluate(e,r),this.paint.get(\"line-gap-width\").evaluate(e,r)),u=this.paint.get(\"line-offset\").evaluate(e,r);return u&&(n=function(t,e){for(var r=[],n=new a(0,0),i=0;i<t.length;i++){for(var o=t[i],s=[],l=0;l<o.length;l++){var c=o[l-1],u=o[l],h=o[l+1],f=0===l?n:u.sub(c)._unit()._perp(),p=l===o.length-1?n:h.sub(u)._unit()._perp(),d=f._add(p)._unit(),m=d.x*p.x+d.y*p.y;d._mult(1/m),s.push(d._mult(e)._add(u))}r.push(s)}return r}(n,u*s)),function(t,e,r){for(var n=0;n<e.length;n++){var i=e[n];if(t.length>=3)for(var a=0;a<i.length;a++)if(Lo(t,i[a]))return!0;if(ko(t,i,r))return!0}return!1}(l,n,c)},e.prototype.isTileClipped=function(){return!0},e}($i);function bl(t,e){return e>0?e+2*t:t}var wl=ta([{name:\"a_pos_offset\",components:4,type:\"Int16\"},{name:\"a_data\",components:4,type:\"Uint16\"},{name:\"a_pixeloffset\",components:4,type:\"Int16\"}],4),Tl=ta([{name:\"a_projected_pos\",components:3,type:\"Float32\"}],4),kl=(ta([{name:\"a_fade_opacity\",components:1,type:\"Uint32\"}],4),ta([{name:\"a_placed\",components:2,type:\"Uint8\"},{name:\"a_shift\",components:2,type:\"Float32\"}])),Al=(ta([{type:\"Int16\",name:\"anchorPointX\"},{type:\"Int16\",name:\"anchorPointY\"},{type:\"Int16\",name:\"x1\"},{type:\"Int16\",name:\"y1\"},{type:\"Int16\",name:\"x2\"},{type:\"Int16\",name:\"y2\"},{type:\"Uint32\",name:\"featureIndex\"},{type:\"Uint16\",name:\"sourceLayerIndex\"},{type:\"Uint16\",name:\"bucketIndex\"}]),ta([{name:\"a_pos\",components:2,type:\"Int16\"},{name:\"a_anchor_pos\",components:2,type:\"Int16\"},{name:\"a_extrude\",components:2,type:\"Int16\"}],4)),Ml=ta([{name:\"a_pos\",components:2,type:\"Float32\"},{name:\"a_radius\",components:1,type:\"Float32\"},{name:\"a_flags\",components:2,type:\"Int16\"}],4);function Sl(t,e,r){return t.sections.forEach((function(t){t.text=function(t,e,r){var n=e.layout.get(\"text-transform\").evaluate(r,{});return\"uppercase\"===n?t=t.toLocaleUpperCase():\"lowercase\"===n&&(t=t.toLocaleLowerCase()),zi.applyArabicShaping&&(t=zi.applyArabicShaping(t)),t}(t.text,e,r)})),t}ta([{name:\"triangle\",components:3,type:\"Uint16\"}]),ta([{type:\"Int16\",name:\"anchorX\"},{type:\"Int16\",name:\"anchorY\"},{type:\"Uint16\",name:\"glyphStartIndex\"},{type:\"Uint16\",name:\"numGlyphs\"},{type:\"Uint32\",name:\"vertexStartIndex\"},{type:\"Uint32\",name:\"lineStartIndex\"},{type:\"Uint32\",name:\"lineLength\"},{type:\"Uint16\",name:\"segment\"},{type:\"Uint16\",name:\"lowerSize\"},{type:\"Uint16\",name:\"upperSize\"},{type:\"Float32\",name:\"lineOffsetX\"},{type:\"Float32\",name:\"lineOffsetY\"},{type:\"Uint8\",name:\"writingMode\"},{type:\"Uint8\",name:\"placedOrientation\"},{type:\"Uint8\",name:\"hidden\"},{type:\"Uint32\",name:\"crossTileID\"},{type:\"Int16\",name:\"associatedIconIndex\"}]),ta([{type:\"Int16\",name:\"anchorX\"},{type:\"Int16\",name:\"anchorY\"},{type:\"Int16\",name:\"rightJustifiedTextSymbolIndex\"},{type:\"Int16\",name:\"centerJustifiedTextSymbolIndex\"},{type:\"Int16\",name:\"leftJustifiedTextSymbolIndex\"},{type:\"Int16\",name:\"verticalPlacedTextSymbolIndex\"},{type:\"Int16\",name:\"placedIconSymbolIndex\"},{type:\"Int16\",name:\"verticalPlacedIconSymbolIndex\"},{type:\"Uint16\",name:\"key\"},{type:\"Uint16\",name:\"textBoxStartIndex\"},{type:\"Uint16\",name:\"textBoxEndIndex\"},{type:\"Uint16\",name:\"verticalTextBoxStartIndex\"},{type:\"Uint16\",name:\"verticalTextBoxEndIndex\"},{type:\"Uint16\",name:\"iconBoxStartIndex\"},{type:\"Uint16\",name:\"iconBoxEndIndex\"},{type:\"Uint16\",name:\"verticalIconBoxStartIndex\"},{type:\"Uint16\",name:\"verticalIconBoxEndIndex\"},{type:\"Uint16\",name:\"featureIndex\"},{type:\"Uint16\",name:\"numHorizontalGlyphVertices\"},{type:\"Uint16\",name:\"numVerticalGlyphVertices\"},{type:\"Uint16\",name:\"numIconVertices\"},{type:\"Uint16\",name:\"numVerticalIconVertices\"},{type:\"Uint16\",name:\"useRuntimeCollisionCircles\"},{type:\"Uint32\",name:\"crossTileID\"},{type:\"Float32\",name:\"textBoxScale\"},{type:\"Float32\",components:2,name:\"textOffset\"},{type:\"Float32\",name:\"collisionCircleDiameter\"}]),ta([{type:\"Float32\",name:\"offsetX\"}]),ta([{type:\"Int16\",name:\"x\"},{type:\"Int16\",name:\"y\"},{type:\"Int16\",name:\"tileUnitDistanceFromAnchor\"}]);var El={\"!\":\"︕\",\"#\":\"\",$:\"\",\"%\":\"\",\"&\":\"\",\"(\":\"︵\",\")\":\"︶\",\"*\":\"\",\"+\":\"\",\",\":\"︐\",\"-\":\"︲\",\".\":\"・\",\"/\":\"\",\":\":\"︓\",\";\":\"︔\",\"<\":\"︿\",\"=\":\"\",\">\":\"﹀\",\"?\":\"︖\",\"@\":\"\",\"[\":\"﹇\",\"\\\\\":\"\",\"]\":\"﹈\",\"^\":\"\",_:\"︳\",\"`\":\"\",\"{\":\"︷\",\"|\":\"―\",\"}\":\"︸\",\"~\":\"\",\"¢\":\"¢\",\"£\":\"£\",\"¥\":\"¥\",\"¦\":\"¦\",\"¬\":\"¬\",\"¯\":\" ̄\",\"\":\"︲\",\"—\":\"︱\",\"\":\"﹃\",\"\":\"﹄\",\"“\":\"﹁\",\"”\":\"﹂\",\"…\":\"︙\",\"‧\":\"・\",\"₩\":\"₩\",\"、\":\"︑\",\"。\":\"︒\",\"〈\":\"︿\",\"〉\":\"﹀\",\"《\":\"︽\",\"》\":\"︾\",\"「\":\"﹁\",\"」\":\"﹂\",\"『\":\"﹃\",\"』\":\"﹄\",\"【\":\"︻\",\"】\":\"︼\",\"\":\"︹\",\"\":\"︺\",\"〖\":\"︗\",\"〗\":\"︘\",\"\":\"︕\",\"\":\"︵\",\"\":\"︶\",\"\":\"︐\",\"\":\"︲\",\"\":\"・\",\"\":\"︓\",\"\":\"︔\",\"\":\"︿\",\"\":\"﹀\",\"\":\"︖\",\"\":\"﹇\",\"\":\"﹈\",\"_\":\"︳\",\"\":\"︷\",\"\":\"―\",\"\":\"︸\",\"⦅\":\"︵\",\"⦆\":\"︶\",\"。\":\"︒\",\"「\":\"﹁\",\"」\":\"﹂\"};var Cl=24,Ll=function(t,e,r,n,i){var a,o,s=8*i-n-1,l=(1<<s)-1,c=l>>1,u=-7,h=r?i-1:0,f=r?-1:1,p=t[e+h];for(h+=f,a=p&(1<<-u)-1,p>>=-u,u+=s;u>0;a=256*a+t[e+h],h+=f,u-=8);for(o=a&(1<<-u)-1,a>>=-u,u+=n;u>0;o=256*o+t[e+h],h+=f,u-=8);if(0===a)a=1-c;else{if(a===l)return o?NaN:1/0*(p?-1:1);o+=Math.pow(2,n),a-=c}return(p?-1:1)*o*Math.pow(2,a-n)},Il=function(t,e,r,n,i,a){var o,s,l,c=8*a-i-1,u=(1<<c)-1,h=u>>1,f=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,p=n?0:a-1,d=n?1:-1,m=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,o=u):(o=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-o))<1&&(o--,l*=2),(e+=o+h>=1?f/l:f*Math.pow(2,1-h))*l>=2&&(o++,l/=2),o+h>=u?(s=0,o=u):o+h>=1?(s=(e*l-1)*Math.pow(2,i),o+=h):(s=e*Math.pow(2,h-1)*Math.pow(2,i),o=0));i>=8;t[r+p]=255&s,p+=d,s/=256,i-=8);for(o=o<<i|s,c+=i;c>0;t[r+p]=255&o,p+=d,o/=256,c-=8);t[r+p-d]|=128*m},Pl=zl;function zl(t){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(t)?t:new Uint8Array(t||0),this.pos=0,this.type=0,this.length=this.buf.length}zl.Varint=0,zl.Fixed64=1,zl.Bytes=2,zl.Fixed32=5;var Ol=4294967296,Dl=1/Ol,Rl=\"undefined\"==typeof TextDecoder?null:new TextDecoder(\"utf8\");function Fl(t){return t.type===zl.Bytes?t.readVarint()+t.pos:t.pos+1}function Bl(t,e,r){return r?4294967296*e+(t>>>0):4294967296*(e>>>0)+(t>>>0)}function Nl(t,e,r){var n=e<=16383?1:e<=2097151?2:e<=268435455?3:Math.floor(Math.log(e)/(7*Math.LN2));r.realloc(n);for(var i=r.pos-1;i>=t;i--)r.buf[i+n]=r.buf[i]}function jl(t,e){for(var r=0;r<t.length;r++)e.writeVarint(t[r])}function Ul(t,e){for(var r=0;r<t.length;r++)e.writeSVarint(t[r])}function Vl(t,e){for(var r=0;r<t.length;r++)e.writeFloat(t[r])}function ql(t,e){for(var r=0;r<t.length;r++)e.writeDouble(t[r])}function Hl(t,e){for(var r=0;r<t.length;r++)e.writeBoolean(t[r])}function Gl(t,e){for(var r=0;r<t.length;r++)e.writeFixed32(t[r])}function Zl(t,e){for(var r=0;r<t.length;r++)e.writeSFixed32(t[r])}function Wl(t,e){for(var r=0;r<t.length;r++)e.writeFixed64(t[r])}function Yl(t,e){for(var r=0;r<t.length;r++)e.writeSFixed64(t[r])}function Xl(t,e){return(t[e]|t[e+1]<<8|t[e+2]<<16)+16777216*t[e+3]}function $l(t,e,r){t[r]=e,t[r+1]=e>>>8,t[r+2]=e>>>16,t[r+3]=e>>>24}function Jl(t,e){return(t[e]|t[e+1]<<8|t[e+2]<<16)+(t[e+3]<<24)}zl.prototype={destroy:function(){this.buf=null},readFields:function(t,e,r){for(r=r||this.length;this.pos<r;){var n=this.readVarint(),i=n>>3,a=this.pos;this.type=7&n,t(i,e,this),this.pos===a&&this.skip(n)}return e},readMessage:function(t,e){return this.readFields(t,e,this.readVarint()+this.pos)},readFixed32:function(){var t=Xl(this.buf,this.pos);return this.pos+=4,t},readSFixed32:function(){var t=Jl(this.buf,this.pos);return this.pos+=4,t},readFixed64:function(){var t=Xl(this.buf,this.pos)+Xl(this.buf,this.pos+4)*Ol;return this.pos+=8,t},readSFixed64:function(){var t=Xl(this.buf,this.pos)+Jl(this.buf,this.pos+4)*Ol;return this.pos+=8,t},readFloat:function(){var t=Ll(this.buf,this.pos,!0,23,4);return this.pos+=4,t},readDouble:function(){var t=Ll(this.buf,this.pos,!0,52,8);return this.pos+=8,t},readVarint:function(t){var e,r,n=this.buf;return e=127&(r=n[this.pos++]),r<128?e:(e|=(127&(r=n[this.pos++]))<<7,r<128?e:(e|=(127&(r=n[this.pos++]))<<14,r<128?e:(e|=(127&(r=n[this.pos++]))<<21,r<128?e:function(t,e,r){var n,i,a=r.buf;if(n=(112&(i=a[r.pos++]))>>4,i<128)return Bl(t,n,e);if(n|=(127&(i=a[r.pos++]))<<3,i<128)return Bl(t,n,e);if(n|=(127&(i=a[r.pos++]))<<10,i<128)return Bl(t,n,e);if(n|=(127&(i=a[r.pos++]))<<17,i<128)return Bl(t,n,e);if(n|=(127&(i=a[r.pos++]))<<24,i<128)return Bl(t,n,e);if(n|=(1&(i=a[r.pos++]))<<31,i<128)return Bl(t,n,e);throw new Error(\"Expected varint not more than 10 bytes\")}(e|=(15&(r=n[this.pos]))<<28,t,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var t=this.readVarint();return t%2==1?(t+1)/-2:t/2},readBoolean:function(){return Boolean(this.readVarint())},readString:function(){var t=this.readVarint()+this.pos,e=this.pos;return this.pos=t,t-e>=12&&Rl?function(t,e,r){return Rl.decode(t.subarray(e,r))}(this.buf,e,t):function(t,e,r){for(var n=\"\",i=e;i<r;){var a,o,s,l=t[i],c=null,u=l>239?4:l>223?3:l>191?2:1;if(i+u>r)break;1===u?l<128&&(c=l):2===u?128==(192&(a=t[i+1]))&&(c=(31&l)<<6|63&a)<=127&&(c=null):3===u?(a=t[i+1],o=t[i+2],128==(192&a)&&128==(192&o)&&((c=(15&l)<<12|(63&a)<<6|63&o)<=2047||c>=55296&&c<=57343)&&(c=null)):4===u&&(a=t[i+1],o=t[i+2],s=t[i+3],128==(192&a)&&128==(192&o)&&128==(192&s)&&((c=(15&l)<<18|(63&a)<<12|(63&o)<<6|63&s)<=65535||c>=1114112)&&(c=null)),null===c?(c=65533,u=1):c>65535&&(c-=65536,n+=String.fromCharCode(c>>>10&1023|55296),c=56320|1023&c),n+=String.fromCharCode(c),i+=u}return n}(this.buf,e,t)},readBytes:function(){var t=this.readVarint()+this.pos,e=this.buf.subarray(this.pos,t);return this.pos=t,e},readPackedVarint:function(t,e){if(this.type!==zl.Bytes)return t.push(this.readVarint(e));var r=Fl(this);for(t=t||[];this.pos<r;)t.push(this.readVarint(e));return t},readPackedSVarint:function(t){if(this.type!==zl.Bytes)return t.push(this.readSVarint());var e=Fl(this);for(t=t||[];this.pos<e;)t.push(this.readSVarint());return t},readPackedBoolean:function(t){if(this.type!==zl.Bytes)return t.push(this.readBoolean());var e=Fl(this);for(t=t||[];this.pos<e;)t.push(this.readBoolean());return t},readPackedFloat:function(t){if(this.type!==zl.Bytes)return t.push(this.readFloat());var e=Fl(this);for(t=t||[];this.pos<e;)t.push(this.readFloat());return t},readPackedDouble:function(t){if(this.type!==zl.Bytes)return t.push(this.readDouble());var e=Fl(this);for(t=t||[];this.pos<e;)t.push(this.readDouble());return t},readPackedFixed32:function(t){if(this.type!==zl.Bytes)return t.push(this.readFixed32());var e=Fl(this);for(t=t||[];this.pos<e;)t.push(this.readFixed32());return t},readPackedSFixed32:function(t){if(this.type!==zl.Bytes)return t.push(this.readSFixed32());var e=Fl(this);for(t=t||[];this.pos<e;)t.push(this.readSFixed32());return t},readPackedFixed64:function(t){if(this.type!==zl.Bytes)return t.push(this.readFixed64());var e=Fl(this);for(t=t||[];this.pos<e;)t.push(this.readFixed64());return t},readPackedSFixed64:function(t){if(this.type!==zl.Bytes)return t.push(this.readSFixed64());var e=Fl(this);for(t=t||[];this.pos<e;)t.push(this.readSFixed64());return t},skip:function(t){var e=7&t;if(e===zl.Varint)for(;this.buf[this.pos++]>127;);else if(e===zl.Bytes)this.pos=this.readVarint()+this.pos;else if(e===zl.Fixed32)this.pos+=4;else{if(e!==zl.Fixed64)throw new Error(\"Unimplemented type: \"+e);this.pos+=8}},writeTag:function(t,e){this.writeVarint(t<<3|e)},realloc:function(t){for(var e=this.length||16;e<this.pos+t;)e*=2;if(e!==this.length){var r=new Uint8Array(e);r.set(this.buf),this.buf=r,this.length=e}},finish:function(){return this.length=this.pos,this.pos=0,this.buf.subarray(0,this.length)},writeFixed32:function(t){this.realloc(4),$l(this.buf,t,this.pos),this.pos+=4},writeSFixed32:function(t){this.realloc(4),$l(this.buf,t,this.pos),this.pos+=4},writeFixed64:function(t){this.realloc(8),$l(this.buf,-1&t,this.pos),$l(this.buf,Math.floor(t*Dl),this.pos+4),this.pos+=8},writeSFixed64:function(t){this.realloc(8),$l(this.buf,-1&t,this.pos),$l(this.buf,Math.floor(t*Dl),this.pos+4),this.pos+=8},writeVarint:function(t){(t=+t||0)>268435455||t<0?function(t,e){var r,n;if(t>=0?(r=t%4294967296|0,n=t/4294967296|0):(n=~(-t/4294967296),4294967295^(r=~(-t%4294967296))?r=r+1|0:(r=0,n=n+1|0)),t>=0x10000000000000000||t<-0x10000000000000000)throw new Error(\"Given varint doesn't fit into 10 bytes\");e.realloc(10),function(t,e,r){r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos]=127&t}(r,0,e),function(t,e){var r=(7&t)<<4;e.buf[e.pos++]|=r|((t>>>=3)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t)))))}(n,e)}(t,this):(this.realloc(4),this.buf[this.pos++]=127&t|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=t>>>7&127))))},writeSVarint:function(t){this.writeVarint(t<0?2*-t-1:2*t)},writeBoolean:function(t){this.writeVarint(Boolean(t))},writeString:function(t){t=String(t),this.realloc(4*t.length),this.pos++;var e=this.pos;this.pos=function(t,e,r){for(var n,i,a=0;a<e.length;a++){if((n=e.charCodeAt(a))>55295&&n<57344){if(!i){n>56319||a+1===e.length?(t[r++]=239,t[r++]=191,t[r++]=189):i=n;continue}if(n<56320){t[r++]=239,t[r++]=191,t[r++]=189,i=n;continue}n=i-55296<<10|n-56320|65536,i=null}else i&&(t[r++]=239,t[r++]=191,t[r++]=189,i=null);n<128?t[r++]=n:(n<2048?t[r++]=n>>6|192:(n<65536?t[r++]=n>>12|224:(t[r++]=n>>18|240,t[r++]=n>>12&63|128),t[r++]=n>>6&63|128),t[r++]=63&n|128)}return r}(this.buf,t,this.pos);var r=this.pos-e;r>=128&&Nl(e,r,this),this.pos=e-1,this.writeVarint(r),this.pos+=r},writeFloat:function(t){this.realloc(4),Il(this.buf,t,this.pos,!0,23,4),this.pos+=4},writeDouble:function(t){this.realloc(8),Il(this.buf,t,this.pos,!0,52,8),this.pos+=8},writeBytes:function(t){var e=t.length;this.writeVarint(e),this.realloc(e);for(var r=0;r<e;r++)this.buf[this.pos++]=t[r]},writeRawMessage:function(t,e){this.pos++;var r=this.pos;t(e,this);var n=this.pos-r;n>=128&&Nl(r,n,this),this.pos=r-1,this.writeVarint(n),this.pos+=n},writeMessage:function(t,e,r){this.writeTag(t,zl.Bytes),this.writeRawMessage(e,r)},writePackedVarint:function(t,e){e.length&&this.writeMessage(t,jl,e)},writePackedSVarint:function(t,e){e.length&&this.writeMessage(t,Ul,e)},writePackedBoolean:function(t,e){e.length&&this.writeMessage(t,Hl,e)},writePackedFloat:function(t,e){e.length&&this.writeMessage(t,Vl,e)},writePackedDouble:function(t,e){e.length&&this.writeMessage(t,ql,e)},writePackedFixed32:function(t,e){e.length&&this.writeMessage(t,Gl,e)},writePackedSFixed32:function(t,e){e.length&&this.writeMessage(t,Zl,e)},writePackedFixed64:function(t,e){e.length&&this.writeMessage(t,Wl,e)},writePackedSFixed64:function(t,e){e.length&&this.writeMessage(t,Yl,e)},writeBytesField:function(t,e){this.writeTag(t,zl.Bytes),this.writeBytes(e)},writeFixed32Field:function(t,e){this.writeTag(t,zl.Fixed32),this.writeFixed32(e)},writeSFixed32Field:function(t,e){this.writeTag(t,zl.Fixed32),this.writeSFixed32(e)},writeFixed64Field:function(t,e){this.writeTag(t,zl.Fixed64),this.writeFixed64(e)},writeSFixed64Field:function(t,e){this.writeTag(t,zl.Fixed64),this.writeSFixed64(e)},writeVarintField:function(t,e){this.writeTag(t,zl.Varint),this.writeVarint(e)},writeSVarintField:function(t,e){this.writeTag(t,zl.Varint),this.writeSVarint(e)},writeStringField:function(t,e){this.writeTag(t,zl.Bytes),this.writeString(e)},writeFloatField:function(t,e){this.writeTag(t,zl.Fixed32),this.writeFloat(e)},writeDoubleField:function(t,e){this.writeTag(t,zl.Fixed64),this.writeDouble(e)},writeBooleanField:function(t,e){this.writeVarintField(t,Boolean(e))}};var Kl=3;function Ql(t,e,r){1===t&&r.readMessage(tc,e)}function tc(t,e,r){if(3===t){var n=r.readMessage(ec,{}),i=n.id,a=n.bitmap,o=n.width,s=n.height,l=n.left,c=n.top,u=n.advance;e.push({id:i,bitmap:new Jo({width:o+2*Kl,height:s+2*Kl},a),metrics:{width:o,height:s,left:l,top:c,advance:u}})}}function ec(t,e,r){1===t?e.id=r.readVarint():2===t?e.bitmap=r.readBytes():3===t?e.width=r.readVarint():4===t?e.height=r.readVarint():5===t?e.left=r.readSVarint():6===t?e.top=r.readSVarint():7===t&&(e.advance=r.readVarint())}var rc=Kl;function nc(t){for(var e=0,r=0,n=0,i=t;n<i.length;n+=1){var a=i[n];e+=a.w*a.h,r=Math.max(r,a.w)}t.sort((function(t,e){return e.h-t.h}));for(var o=[{x:0,y:0,w:Math.max(Math.ceil(Math.sqrt(e/.95)),r),h:1/0}],s=0,l=0,c=0,u=t;c<u.length;c+=1)for(var h=u[c],f=o.length-1;f>=0;f--){var p=o[f];if(!(h.w>p.w||h.h>p.h)){if(h.x=p.x,h.y=p.y,l=Math.max(l,h.y+h.h),s=Math.max(s,h.x+h.w),h.w===p.w&&h.h===p.h){var d=o.pop();f<o.length&&(o[f]=d)}else h.h===p.h?(p.x+=h.w,p.w-=h.w):h.w===p.w?(p.y+=h.h,p.h-=h.h):(o.push({x:p.x+h.w,y:p.y,w:p.w-h.w,h:h.h}),p.y+=h.h,p.h-=h.h);break}}return{w:s,h:l,fill:e/(s*l)||0}}var ic=1,ac=function(t,e){var r=e.pixelRatio,n=e.version,i=e.stretchX,a=e.stretchY,o=e.content;this.paddedRect=t,this.pixelRatio=r,this.stretchX=i,this.stretchY=a,this.content=o,this.version=n},oc={tl:{configurable:!0},br:{configurable:!0},tlbr:{configurable:!0},displaySize:{configurable:!0}};oc.tl.get=function(){return[this.paddedRect.x+ic,this.paddedRect.y+ic]},oc.br.get=function(){return[this.paddedRect.x+this.paddedRect.w-ic,this.paddedRect.y+this.paddedRect.h-ic]},oc.tlbr.get=function(){return this.tl.concat(this.br)},oc.displaySize.get=function(){return[(this.paddedRect.w-2*ic)/this.pixelRatio,(this.paddedRect.h-2*ic)/this.pixelRatio]},Object.defineProperties(ac.prototype,oc);var sc=function(t,e){var r={},n={};this.haveRenderCallbacks=[];var i=[];this.addImages(t,r,i),this.addImages(e,n,i);var a=nc(i),o=a.w,s=a.h,l=new Ko({width:o||1,height:s||1});for(var c in t){var u=t[c],h=r[c].paddedRect;Ko.copy(u.data,l,{x:0,y:0},{x:h.x+ic,y:h.y+ic},u.data)}for(var f in e){var p=e[f],d=n[f].paddedRect,m=d.x+ic,g=d.y+ic,y=p.data.width,v=p.data.height;Ko.copy(p.data,l,{x:0,y:0},{x:m,y:g},p.data),Ko.copy(p.data,l,{x:0,y:v-1},{x:m,y:g-1},{width:y,height:1}),Ko.copy(p.data,l,{x:0,y:0},{x:m,y:g+v},{width:y,height:1}),Ko.copy(p.data,l,{x:y-1,y:0},{x:m-1,y:g},{width:1,height:v}),Ko.copy(p.data,l,{x:0,y:0},{x:m+y,y:g},{width:1,height:v})}this.image=l,this.iconPositions=r,this.patternPositions=n};sc.prototype.addImages=function(t,e,r){for(var n in t){var i=t[n],a={x:0,y:0,w:i.data.width+2*ic,h:i.data.height+2*ic};r.push(a),e[n]=new ac(a,i),i.hasRenderCallback&&this.haveRenderCallbacks.push(n)}},sc.prototype.patchUpdatedImages=function(t,e){for(var r in t.dispatchRenderCallbacks(this.haveRenderCallbacks),t.updatedImages)this.patchUpdatedImage(this.iconPositions[r],t.getImage(r),e),this.patchUpdatedImage(this.patternPositions[r],t.getImage(r),e)},sc.prototype.patchUpdatedImage=function(t,e,r){if(t&&e&&t.version!==e.version){t.version=e.version;var n=t.tl,i=n[0],a=n[1];r.update(e.data,void 0,{x:i,y:a})}},oi(\"ImagePosition\",ac),oi(\"ImageAtlas\",sc);var lc={horizontal:1,vertical:2,horizontalOnly:3},cc=-17;var uc=function(){this.scale=1,this.fontStack=\"\",this.imageName=null};uc.forText=function(t,e){var r=new uc;return r.scale=t||1,r.fontStack=e,r},uc.forImage=function(t){var e=new uc;return e.imageName=t,e};var hc=function(){this.text=\"\",this.sectionIndex=[],this.sections=[],this.imageSectionID=null};function fc(t,e,r,n,i,a,o,s,l,c,u,h,f,p,d,m){var g,y=hc.fromFeature(t,i);h===lc.vertical&&y.verticalizePunctuation();var v=zi.processBidirectionalText,x=zi.processStyledBidirectionalText;if(v&&1===y.sections.length){g=[];for(var _=0,b=v(y.toString(),_c(y,c,a,e,n,p,d));_<b.length;_+=1){var w=b[_],T=new hc;T.text=w,T.sections=y.sections;for(var k=0;k<w.length;k++)T.sectionIndex.push(0);g.push(T)}}else if(x){g=[];for(var A=0,M=x(y.text,y.sectionIndex,_c(y,c,a,e,n,p,d));A<M.length;A+=1){var S=M[A],E=new hc;E.text=S[0],E.sectionIndex=S[1],E.sections=y.sections,g.push(E)}}else g=function(t,e){for(var r=[],n=t.text,i=0,a=0,o=e;a<o.length;a+=1){var s=o[a];r.push(t.substring(i,s)),i=s}return i<n.length&&r.push(t.substring(i,n.length)),r}(y,_c(y,c,a,e,n,p,d));var C=[],L={positionedLines:C,text:y.toString(),top:u[1],bottom:u[1],left:u[0],right:u[0],writingMode:h,iconsInText:!1,verticalizable:!1};return function(t,e,r,n,i,a,o,s,l,c,u,h){for(var f=0,p=cc,d=0,m=0,g=\"right\"===s?1:\"left\"===s?0:.5,y=0,v=0,x=i;v<x.length;v+=1){var _=x[v];_.trim();var b=_.getMaxScale(),w=(b-1)*Cl,T={positionedGlyphs:[],lineOffset:0};t.positionedLines[y]=T;var k=T.positionedGlyphs,A=0;if(_.length()){for(var M=0;M<_.length();M++){var S=_.getSection(M),E=_.getSectionIndex(M),C=_.getCharCode(M),L=0,I=null,P=null,z=null,O=Cl,D=!(l===lc.horizontal||!u&&!mi(C)||u&&(pc[C]||yi(C)));if(S.imageName){var R=n[S.imageName];if(!R)continue;z=S.imageName,t.iconsInText=t.iconsInText||!0,P=R.paddedRect;var F=R.displaySize;S.scale=S.scale*Cl/h,I={width:F[0],height:F[1],left:ic,top:-rc,advance:D?F[1]:F[0]},L=w+(Cl-F[1]*S.scale),O=I.advance;var B=D?F[0]*S.scale-Cl*b:F[1]*S.scale-Cl*b;B>0&&B>A&&(A=B)}else{var N=r[S.fontStack],j=N&&N[C];if(j&&j.rect)P=j.rect,I=j.metrics;else{var U=e[S.fontStack],V=U&&U[C];if(!V)continue;I=V.metrics}L=(b-S.scale)*Cl}D?(t.verticalizable=!0,k.push({glyph:C,imageName:z,x:f,y:p+L,vertical:D,scale:S.scale,fontStack:S.fontStack,sectionIndex:E,metrics:I,rect:P}),f+=O*S.scale+c):(k.push({glyph:C,imageName:z,x:f,y:p+L,vertical:D,scale:S.scale,fontStack:S.fontStack,sectionIndex:E,metrics:I,rect:P}),f+=I.advance*S.scale+c)}if(0!==k.length){var q=f-c;d=Math.max(q,d),wc(k,0,k.length-1,g,A)}f=0;var H=a*b+A;T.lineOffset=Math.max(A,w),p+=H,m=Math.max(H,m),++y}else p+=a,++y}var G=p-cc,Z=bc(o),W=Z.horizontalAlign,Y=Z.verticalAlign;(function(t,e,r,n,i,a,o,s,l){var c=(e-r)*i,u=0;u=a!==o?-s*n-cc:(-n*l+.5)*o;for(var h=0,f=t;h<f.length;h+=1)for(var p=0,d=f[h].positionedGlyphs;p<d.length;p+=1){var m=d[p];m.x+=c,m.y+=u}})(t.positionedLines,g,W,Y,d,m,a,G,i.length),t.top+=-Y*G,t.bottom=t.top+G,t.left+=-W*d,t.right=t.left+d}(L,e,r,n,g,o,s,l,h,c,f,m),!function(t){for(var e=0,r=t;e<r.length;e+=1)if(0!==r[e].positionedGlyphs.length)return!1;return!0}(C)&&L}hc.fromFeature=function(t,e){for(var r=new hc,n=0;n<t.sections.length;n++){var i=t.sections[n];i.image?r.addImageSection(i):r.addTextSection(i,e)}return r},hc.prototype.length=function(){return this.text.length},hc.prototype.getSection=function(t){return this.sections[this.sectionIndex[t]]},hc.prototype.getSectionIndex=function(t){return this.sectionIndex[t]},hc.prototype.getCharCode=function(t){return this.text.charCodeAt(t)},hc.prototype.verticalizePunctuation=function(){this.text=function(t){for(var e=\"\",r=0;r<t.length;r++){var n=t.charCodeAt(r+1)||null,i=t.charCodeAt(r-1)||null;n&&gi(n)&&!El[t[r+1]]||i&&gi(i)&&!El[t[r-1]]||!El[t[r]]?e+=t[r]:e+=El[t[r]]}return e}(this.text)},hc.prototype.trim=function(){for(var t=0,e=0;e<this.text.length&&pc[this.text.charCodeAt(e)];e++)t++;for(var r=this.text.length,n=this.text.length-1;n>=0&&n>=t&&pc[this.text.charCodeAt(n)];n--)r--;this.text=this.text.substring(t,r),this.sectionIndex=this.sectionIndex.slice(t,r)},hc.prototype.substring=function(t,e){var r=new hc;return r.text=this.text.substring(t,e),r.sectionIndex=this.sectionIndex.slice(t,e),r.sections=this.sections,r},hc.prototype.toString=function(){return this.text},hc.prototype.getMaxScale=function(){var t=this;return this.sectionIndex.reduce((function(e,r){return Math.max(e,t.sections[r].scale)}),0)},hc.prototype.addTextSection=function(t,e){this.text+=t.text,this.sections.push(uc.forText(t.scale,t.fontStack||e));for(var r=this.sections.length-1,n=0;n<t.text.length;++n)this.sectionIndex.push(r)},hc.prototype.addImageSection=function(t){var e=t.image?t.image.name:\"\";if(0!==e.length){var r=this.getNextImageSectionCharCode();r?(this.text+=String.fromCharCode(r),this.sections.push(uc.forImage(e)),this.sectionIndex.push(this.sections.length-1)):k(\"Reached maximum number of images 6401\")}else k(\"Can't add FormattedSection with an empty image.\")},hc.prototype.getNextImageSectionCharCode=function(){return this.imageSectionID?this.imageSectionID>=63743?null:++this.imageSectionID:(this.imageSectionID=57344,this.imageSectionID)};var pc={9:!0,10:!0,11:!0,12:!0,13:!0,32:!0},dc={};function mc(t,e,r,n,i,a){if(e.imageName){var o=n[e.imageName];return o?o.displaySize[0]*e.scale*Cl/a+i:0}var s=r[e.fontStack],l=s&&s[t];return l?l.metrics.advance*e.scale+i:0}function gc(t,e,r,n){var i=Math.pow(t-e,2);return n?t<e?i/2:2*i:i+Math.abs(r)*r}function yc(t,e,r){var n=0;return 10===t&&(n-=1e4),r&&(n+=150),40!==t&&65288!==t||(n+=50),41!==e&&65289!==e||(n+=50),n}function vc(t,e,r,n,i,a){for(var o=null,s=gc(e,r,i,a),l=0,c=n;l<c.length;l+=1){var u=c[l],h=gc(e-u.x,r,i,a)+u.badness;h<=s&&(o=u,s=h)}return{index:t,x:e,priorBreak:o,badness:s}}function xc(t){return t?xc(t.priorBreak).concat(t.index):[]}function _c(t,e,r,n,i,a,o){if(\"point\"!==a)return[];if(!t)return[];for(var s=[],l=function(t,e,r,n,i,a){for(var o=0,s=0;s<t.length();s++){var l=t.getSection(s);o+=mc(t.getCharCode(s),l,n,i,e,a)}return o/Math.max(1,Math.ceil(o/r))}(t,e,r,n,i,o),c=t.text.indexOf(\"\")>=0,u=0,h=0;h<t.length();h++){var f=t.getSection(h),p=t.getCharCode(h);if(pc[p]||(u+=mc(p,f,n,i,e,o)),h<t.length()-1){var d=!((m=p)<11904||!(pi[\"Bopomofo Extended\"](m)||pi.Bopomofo(m)||pi[\"CJK Compatibility Forms\"](m)||pi[\"CJK Compatibility Ideographs\"](m)||pi[\"CJK Compatibility\"](m)||pi[\"CJK Radicals Supplement\"](m)||pi[\"CJK Strokes\"](m)||pi[\"CJK Symbols and Punctuation\"](m)||pi[\"CJK Unified Ideographs Extension A\"](m)||pi[\"CJK Unified Ideographs\"](m)||pi[\"Enclosed CJK Letters and Months\"](m)||pi[\"Halfwidth and Fullwidth Forms\"](m)||pi.Hiragana(m)||pi[\"Ideographic Description Characters\"](m)||pi[\"Kangxi Radicals\"](m)||pi[\"Katakana Phonetic Extensions\"](m)||pi.Katakana(m)||pi[\"Vertical Forms\"](m)||pi[\"Yi Radicals\"](m)||pi[\"Yi Syllables\"](m)));(dc[p]||d||f.imageName)&&s.push(vc(h+1,u,l,s,yc(p,t.getCharCode(h+1),d&&c),!1))}}var m;return xc(vc(t.length(),u,l,s,0,!0))}function bc(t){var e=.5,r=.5;switch(t){case\"right\":case\"top-right\":case\"bottom-right\":e=1;break;case\"left\":case\"top-left\":case\"bottom-left\":e=0}switch(t){case\"bottom\":case\"bottom-right\":case\"bottom-left\":r=1;break;case\"top\":case\"top-right\":case\"top-left\":r=0}return{horizontalAlign:e,verticalAlign:r}}function wc(t,e,r,n,i){if(n||i)for(var a=t[r],o=a.metrics.advance*a.scale,s=(t[r].x+o)*n,l=e;l<=r;l++)t[l].x-=s,t[l].y+=i}function Tc(t,e,r,n,i,a){var o,s=t.image;if(s.content){var l=s.content,c=s.pixelRatio||1;o=[l[0]/c,l[1]/c,s.displaySize[0]-l[2]/c,s.displaySize[1]-l[3]/c]}var u,h,f,p,d=e.left*a,m=e.right*a;\"width\"===r||\"both\"===r?(p=i[0]+d-n[3],h=i[0]+m+n[1]):h=(p=i[0]+(d+m-s.displaySize[0])/2)+s.displaySize[0];var g=e.top*a,y=e.bottom*a;return\"height\"===r||\"both\"===r?(u=i[1]+g-n[0],f=i[1]+y+n[2]):f=(u=i[1]+(g+y-s.displaySize[1])/2)+s.displaySize[1],{image:s,top:u,right:h,bottom:f,left:p,collisionPadding:o}}dc[10]=!0,dc[32]=!0,dc[38]=!0,dc[40]=!0,dc[41]=!0,dc[43]=!0,dc[45]=!0,dc[47]=!0,dc[173]=!0,dc[183]=!0,dc[8203]=!0,dc[8208]=!0,dc[8211]=!0,dc[8231]=!0;var kc=function(t){function e(e,r,n,i){t.call(this,e,r),this.angle=n,void 0!==i&&(this.segment=i)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.clone=function(){return new e(this.x,this.y,this.angle,this.segment)},e}(a);oi(\"Anchor\",kc);var Ac=128;function Mc(t,e){var r=e.expression;if(\"constant\"===r.kind)return{kind:\"constant\",layoutSize:r.evaluate(new Oi(t+1))};if(\"source\"===r.kind)return{kind:\"source\"};for(var n=r.zoomStops,i=r.interpolationType,a=0;a<n.length&&n[a]<=t;)a++;for(var o=a=Math.max(0,a-1);o<n.length&&n[o]<t+1;)o++;o=Math.min(n.length-1,o);var s=n[a],l=n[o];return\"composite\"===r.kind?{kind:\"composite\",minZoom:s,maxZoom:l,interpolationType:i}:{kind:\"camera\",minZoom:s,maxZoom:l,minSize:r.evaluate(new Oi(s)),maxSize:r.evaluate(new Oi(l)),interpolationType:i}}function Sc(t,e,r){var n=e.uSize,i=e.uSizeT,a=r.lowerSize,o=r.upperSize;return\"source\"===t.kind?a/Ac:\"composite\"===t.kind?er(a/Ac,o/Ac,i):n}function Ec(t,e){var r=0,n=0;if(\"constant\"===t.kind)n=t.layoutSize;else if(\"source\"!==t.kind){var i=t.interpolationType,a=t.minZoom,o=t.maxZoom,s=i?h(wr.interpolationFactor(i,e,a,o),0,1):0;\"camera\"===t.kind?n=er(t.minSize,t.maxSize,s):r=s}return{uSizeT:r,uSize:n}}var Cc=Object.freeze({__proto__:null,getSizeData:Mc,evaluateSizeForFeature:Sc,evaluateSizeForZoom:Ec,SIZE_PACK_FACTOR:Ac});function Lc(t,e,r,n,i){if(void 0===e.segment)return!0;for(var a=e,o=e.segment+1,s=0;s>-r/2;){if(--o<0)return!1;s-=t[o].dist(a),a=t[o]}s+=t[o].dist(t[o+1]),o++;for(var l=[],c=0;s<r/2;){var u=t[o-1],h=t[o],f=t[o+1];if(!f)return!1;var p=u.angleTo(h)-h.angleTo(f);for(p=Math.abs((p+3*Math.PI)%(2*Math.PI)-Math.PI),l.push({distance:s,angleDelta:p}),c+=p;s-l[0].distance>n;)c-=l.shift().angleDelta;if(c>i)return!1;o++,s+=h.dist(f)}return!0}function Ic(t){for(var e=0,r=0;r<t.length-1;r++)e+=t[r].dist(t[r+1]);return e}function Pc(t,e,r){return t?.6*e*r:0}function zc(t,e){return Math.max(t?t.right-t.left:0,e?e.right-e.left:0)}function Oc(t,e,r,n,i,a){for(var o=Pc(r,i,a),s=zc(r,n)*a,l=0,c=Ic(t)/2,u=0;u<t.length-1;u++){var h=t[u],f=t[u+1],p=h.dist(f);if(l+p>c){var d=(c-l)/p,m=er(h.x,f.x,d),g=er(h.y,f.y,d),y=new kc(m,g,f.angleTo(h),u);return y._round(),!o||Lc(t,y,s,o,e)?y:void 0}l+=p}}function Dc(t,e,r,n,i,a,o,s,l){var c=Pc(n,a,o),u=zc(n,i),h=u*o,f=0===t[0].x||t[0].x===l||0===t[0].y||t[0].y===l;return e-h<e/4&&(e=h+e/4),Rc(t,f?e/2*s%e:(u/2+2*a)*o*s%e,e,c,r,h,f,!1,l)}function Rc(t,e,r,n,i,a,o,s,l){for(var c=a/2,u=Ic(t),h=0,f=e-r,p=[],d=0;d<t.length-1;d++){for(var m=t[d],g=t[d+1],y=m.dist(g),v=g.angleTo(m);f+r<h+y;){var x=((f+=r)-h)/y,_=er(m.x,g.x,x),b=er(m.y,g.y,x);if(_>=0&&_<l&&b>=0&&b<l&&f-c>=0&&f+c<=u){var w=new kc(_,b,v,d);w._round(),n&&!Lc(t,w,a,n,i)||p.push(w)}}h+=y}return s||p.length||o||(p=Rc(t,h/2,r,n,i,a,o,!0,l)),p}function Fc(t,e,r,n,i){for(var o=[],s=0;s<t.length;s++)for(var l=t[s],c=void 0,u=0;u<l.length-1;u++){var h=l[u],f=l[u+1];h.x<e&&f.x<e||(h.x<e?h=new a(e,h.y+(f.y-h.y)*((e-h.x)/(f.x-h.x)))._round():f.x<e&&(f=new a(e,h.y+(f.y-h.y)*((e-h.x)/(f.x-h.x)))._round()),h.y<r&&f.y<r||(h.y<r?h=new a(h.x+(f.x-h.x)*((r-h.y)/(f.y-h.y)),r)._round():f.y<r&&(f=new a(h.x+(f.x-h.x)*((r-h.y)/(f.y-h.y)),r)._round()),h.x>=n&&f.x>=n||(h.x>=n?h=new a(n,h.y+(f.y-h.y)*((n-h.x)/(f.x-h.x)))._round():f.x>=n&&(f=new a(n,h.y+(f.y-h.y)*((n-h.x)/(f.x-h.x)))._round()),h.y>=i&&f.y>=i||(h.y>=i?h=new a(h.x+(f.x-h.x)*((i-h.y)/(f.y-h.y)),i)._round():f.y>=i&&(f=new a(h.x+(f.x-h.x)*((i-h.y)/(f.y-h.y)),i)._round()),c&&h.equals(c[c.length-1])||(c=[h],o.push(c)),c.push(f)))))}return o}var Bc=ic;function Nc(t,e,r,n){var i=[],o=t.image,s=o.pixelRatio,l=o.paddedRect.w-2*Bc,c=o.paddedRect.h-2*Bc,u=t.right-t.left,h=t.bottom-t.top,f=o.stretchX||[[0,l]],p=o.stretchY||[[0,c]],d=function(t,e){return t+e[1]-e[0]},m=f.reduce(d,0),g=p.reduce(d,0),y=l-m,v=c-g,x=0,_=m,b=0,w=g,T=0,k=y,A=0,M=v;if(o.content&&n){var S=o.content;x=jc(f,0,S[0]),b=jc(p,0,S[1]),_=jc(f,S[0],S[2]),w=jc(p,S[1],S[3]),T=S[0]-x,A=S[1]-b,k=S[2]-S[0]-_,M=S[3]-S[1]-w}var E=function(n,i,l,c){var f=Vc(n.stretch-x,_,u,t.left),p=qc(n.fixed-T,k,n.stretch,m),d=Vc(i.stretch-b,w,h,t.top),y=qc(i.fixed-A,M,i.stretch,g),v=Vc(l.stretch-x,_,u,t.left),S=qc(l.fixed-T,k,l.stretch,m),E=Vc(c.stretch-b,w,h,t.top),C=qc(c.fixed-A,M,c.stretch,g),L=new a(f,d),I=new a(v,d),P=new a(v,E),z=new a(f,E),O=new a(p/s,y/s),D=new a(S/s,C/s),R=e*Math.PI/180;if(R){var F=Math.sin(R),B=Math.cos(R),N=[B,-F,F,B];L._matMult(N),I._matMult(N),z._matMult(N),P._matMult(N)}var j=n.stretch+n.fixed,U=l.stretch+l.fixed,V=i.stretch+i.fixed,q=c.stretch+c.fixed;return{tl:L,tr:I,bl:z,br:P,tex:{x:o.paddedRect.x+Bc+j,y:o.paddedRect.y+Bc+V,w:U-j,h:q-V},writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:O,pixelOffsetBR:D,minFontScaleX:k/s/u,minFontScaleY:M/s/h,isSDF:r}};if(n&&(o.stretchX||o.stretchY))for(var C=Uc(f,y,m),L=Uc(p,v,g),I=0;I<C.length-1;I++)for(var P=C[I],z=C[I+1],O=0;O<L.length-1;O++){var D=L[O],R=L[O+1];i.push(E(P,D,z,R))}else i.push(E({fixed:0,stretch:-1},{fixed:0,stretch:-1},{fixed:0,stretch:l+1},{fixed:0,stretch:c+1}));return i}function jc(t,e,r){for(var n=0,i=0,a=t;i<a.length;i+=1){var o=a[i];n+=Math.max(e,Math.min(r,o[1]))-Math.max(e,Math.min(r,o[0]))}return n}function Uc(t,e,r){for(var n=[{fixed:-Bc,stretch:0}],i=0,a=t;i<a.length;i+=1){var o=a[i],s=o[0],l=o[1],c=n[n.length-1];n.push({fixed:s-c.stretch,stretch:c.stretch}),n.push({fixed:s-c.stretch,stretch:c.stretch+(l-s)})}return n.push({fixed:e+Bc,stretch:r}),n}function Vc(t,e,r,n){return t/e*r+n}function qc(t,e,r,n){return t-e*r/n}var Hc=function(t,e,r,n,i,o,s,l,c,u){if(this.boxStartIndex=t.length,c){var h=o.top,f=o.bottom,p=o.collisionPadding;p&&(h-=p[1],f+=p[3]);var d=f-h;d>0&&(d=Math.max(10,d),this.circleDiameter=d)}else{var m=o.top*s-l,g=o.bottom*s+l,y=o.left*s-l,v=o.right*s+l,x=o.collisionPadding;if(x&&(y-=x[0]*s,m-=x[1]*s,v+=x[2]*s,g+=x[3]*s),u){var _=new a(y,m),b=new a(v,m),w=new a(y,g),T=new a(v,g),k=u*Math.PI/180;_._rotate(k),b._rotate(k),w._rotate(k),T._rotate(k),y=Math.min(_.x,b.x,w.x,T.x),v=Math.max(_.x,b.x,w.x,T.x),m=Math.min(_.y,b.y,w.y,T.y),g=Math.max(_.y,b.y,w.y,T.y)}t.emplaceBack(e.x,e.y,y,m,v,g,r,n,i)}this.boxEndIndex=t.length},Gc=function(t,e){if(void 0===t&&(t=[]),void 0===e&&(e=Zc),this.data=t,this.length=this.data.length,this.compare=e,this.length>0)for(var r=(this.length>>1)-1;r>=0;r--)this._down(r)};function Zc(t,e){return t<e?-1:t>e?1:0}function Wc(t,e,r){void 0===e&&(e=1),void 0===r&&(r=!1);for(var n=1/0,i=1/0,o=-1/0,s=-1/0,l=t[0],c=0;c<l.length;c++){var u=l[c];(!c||u.x<n)&&(n=u.x),(!c||u.y<i)&&(i=u.y),(!c||u.x>o)&&(o=u.x),(!c||u.y>s)&&(s=u.y)}var h=o-n,f=s-i,p=Math.min(h,f),d=p/2,m=new Gc([],Yc);if(0===p)return new a(n,i);for(var g=n;g<o;g+=p)for(var y=i;y<s;y+=p)m.push(new Xc(g+d,y+d,d,t));for(var v=function(t){for(var e=0,r=0,n=0,i=t[0],a=0,o=i.length,s=o-1;a<o;s=a++){var l=i[a],c=i[s],u=l.x*c.y-c.x*l.y;r+=(l.x+c.x)*u,n+=(l.y+c.y)*u,e+=3*u}return new Xc(r/e,n/e,0,t)}(t),x=m.length;m.length;){var _=m.pop();(_.d>v.d||!v.d)&&(v=_,r&&console.log(\"found best %d after %d probes\",Math.round(1e4*_.d)/1e4,x)),_.max-v.d<=e||(d=_.h/2,m.push(new Xc(_.p.x-d,_.p.y-d,d,t)),m.push(new Xc(_.p.x+d,_.p.y-d,d,t)),m.push(new Xc(_.p.x-d,_.p.y+d,d,t)),m.push(new Xc(_.p.x+d,_.p.y+d,d,t)),x+=4)}return r&&(console.log(\"num probes: \"+x),console.log(\"best distance: \"+v.d)),v.p}function Yc(t,e){return e.max-t.max}function Xc(t,e,r,n){this.p=new a(t,e),this.h=r,this.d=function(t,e){for(var r=!1,n=1/0,i=0;i<e.length;i++)for(var a=e[i],o=0,s=a.length,l=s-1;o<s;l=o++){var c=a[o],u=a[l];c.y>t.y!=u.y>t.y&&t.x<(u.x-c.x)*(t.y-c.y)/(u.y-c.y)+c.x&&(r=!r),n=Math.min(n,Eo(t,c,u))}return(r?1:-1)*Math.sqrt(n)}(this.p,n),this.max=this.d+this.h*Math.SQRT2}Gc.prototype.push=function(t){this.data.push(t),this.length++,this._up(this.length-1)},Gc.prototype.pop=function(){if(0!==this.length){var t=this.data[0],e=this.data.pop();return this.length--,this.length>0&&(this.data[0]=e,this._down(0)),t}},Gc.prototype.peek=function(){return this.data[0]},Gc.prototype._up=function(t){for(var e=this.data,r=this.compare,n=e[t];t>0;){var i=t-1>>1,a=e[i];if(r(n,a)>=0)break;e[t]=a,t=i}e[t]=n},Gc.prototype._down=function(t){for(var e=this.data,r=this.compare,n=this.length>>1,i=e[t];t<n;){var a=1+(t<<1),o=e[a],s=a+1;if(s<this.length&&r(e[s],o)<0&&(a=s,o=e[s]),r(o,i)>=0)break;e[t]=o,t=a}e[t]=i};var $c=7,Jc=Number.POSITIVE_INFINITY;function Kc(t,e){return e[1]!==Jc?function(t,e,r){var n=0,i=0;switch(e=Math.abs(e),r=Math.abs(r),t){case\"top-right\":case\"top-left\":case\"top\":i=r-$c;break;case\"bottom-right\":case\"bottom-left\":case\"bottom\":i=-r+$c}switch(t){case\"top-right\":case\"bottom-right\":case\"right\":n=-e;break;case\"top-left\":case\"bottom-left\":case\"left\":n=e}return[n,i]}(t,e[0],e[1]):function(t,e){var r=0,n=0;e<0&&(e=0);var i=e/Math.sqrt(2);switch(t){case\"top-right\":case\"top-left\":n=i-$c;break;case\"bottom-right\":case\"bottom-left\":n=-i+$c;break;case\"bottom\":n=-e+$c;break;case\"top\":n=e-$c}switch(t){case\"top-right\":case\"bottom-right\":r=-i;break;case\"top-left\":case\"bottom-left\":r=i;break;case\"left\":r=e;break;case\"right\":r=-e}return[r,n]}(t,e[0])}function Qc(t){switch(t){case\"right\":case\"top-right\":case\"bottom-right\":return\"right\";case\"left\":case\"top-left\":case\"bottom-left\":return\"left\"}return\"center\"}var tu=255,eu=tu*Ac;function ru(t,e,r,n,i,o,s,l,c,u,h,f,p,d,m){var g=function(t,e,r,n,i,o,s,l){for(var c=n.layout.get(\"text-rotate\").evaluate(o,{})*Math.PI/180,u=[],h=0,f=e.positionedLines;h<f.length;h+=1)for(var p=f[h],d=0,m=p.positionedGlyphs;d<m.length;d+=1){var g=m[d];if(g.rect){var y=g.rect||{},v=rc+1,x=!0,_=1,b=0,w=(i||l)&&g.vertical,T=g.metrics.advance*g.scale/2;if(l&&e.verticalizable){var k=(g.scale-1)*Cl,A=(Cl-g.metrics.width*g.scale)/2;b=p.lineOffset/2-(g.imageName?-A:k)}if(g.imageName){var M=s[g.imageName];x=M.sdf,_=M.pixelRatio,v=ic/_}var S=i?[g.x+T,g.y]:[0,0],E=i?[0,0]:[g.x+T+r[0],g.y+r[1]-b],C=[0,0];w&&(C=E,E=[0,0]);var L=(g.metrics.left-v)*g.scale-T+E[0],I=(-g.metrics.top-v)*g.scale+E[1],P=L+y.w*g.scale/_,z=I+y.h*g.scale/_,O=new a(L,I),D=new a(P,I),R=new a(L,z),F=new a(P,z);if(w){var B=new a(-T,T-cc),N=-Math.PI/2,j=Cl/2-T,U=g.imageName?j:0,V=new a(5-cc-j,-U),q=new(Function.prototype.bind.apply(a,[null].concat(C)));O._rotateAround(N,B)._add(V)._add(q),D._rotateAround(N,B)._add(V)._add(q),R._rotateAround(N,B)._add(V)._add(q),F._rotateAround(N,B)._add(V)._add(q)}if(c){var H=Math.sin(c),G=Math.cos(c),Z=[G,-H,H,G];O._matMult(Z),D._matMult(Z),R._matMult(Z),F._matMult(Z)}var W=new a(0,0),Y=new a(0,0);u.push({tl:O,tr:D,bl:R,br:F,tex:y,writingMode:e.writingMode,glyphOffset:S,sectionIndex:g.sectionIndex,isSDF:x,pixelOffsetTL:W,pixelOffsetBR:Y,minFontScaleX:0,minFontScaleY:0})}}return u}(0,r,l,i,o,s,n,t.allowVerticalPlacement),y=t.textSizeData,v=null;\"source\"===y.kind?(v=[Ac*i.layout.get(\"text-size\").evaluate(s,{})])[0]>eu&&k(t.layerIds[0]+': Value for \"text-size\" is >= '+tu+'. Reduce your \"text-size\".'):\"composite\"===y.kind&&((v=[Ac*d.compositeTextSizes[0].evaluate(s,{},m),Ac*d.compositeTextSizes[1].evaluate(s,{},m)])[0]>eu||v[1]>eu)&&k(t.layerIds[0]+': Value for \"text-size\" is >= '+tu+'. Reduce your \"text-size\".'),t.addSymbols(t.text,g,v,l,o,s,u,e,c.lineStartIndex,c.lineLength,p,m);for(var x=0,_=h;x<_.length;x+=1)f[_[x]]=t.text.placedSymbolArray.length-1;return 4*g.length}function nu(t){for(var e in t)return t[e];return null}function iu(t,e,r,n){var i=t.compareText;if(e in i){for(var a=i[e],o=a.length-1;o>=0;o--)if(n.dist(a[o])<r)return!0}else i[e]=[];return i[e].push(n),!1}var au=tl.VectorTileFeature.types,ou=[{name:\"a_fade_opacity\",components:1,type:\"Uint8\",offset:0}];function su(t,e,r,n,i,a,o,s,l,c,u,h,f){var p=s?Math.min(eu,Math.round(s[0])):0,d=s?Math.min(eu,Math.round(s[1])):0;t.emplaceBack(e,r,Math.round(32*n),Math.round(32*i),a,o,(p<<1)+(l?1:0),d,16*c,16*u,256*h,256*f)}function lu(t,e,r){t.emplaceBack(e.x,e.y,r),t.emplaceBack(e.x,e.y,r),t.emplaceBack(e.x,e.y,r),t.emplaceBack(e.x,e.y,r)}function cu(t){for(var e=0,r=t.sections;e<r.length;e+=1)if(_i(r[e].text))return!0;return!1}var uu=function(t){this.layoutVertexArray=new la,this.indexArray=new ma,this.programConfigurations=t,this.segments=new Da,this.dynamicLayoutVertexArray=new ca,this.opacityVertexArray=new ua,this.placedSymbolArray=new Sa};uu.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length&&0===this.indexArray.length&&0===this.dynamicLayoutVertexArray.length&&0===this.opacityVertexArray.length},uu.prototype.upload=function(t,e,r,n){this.isEmpty()||(r&&(this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,wl.members),this.indexBuffer=t.createIndexBuffer(this.indexArray,e),this.dynamicLayoutVertexBuffer=t.createVertexBuffer(this.dynamicLayoutVertexArray,Tl.members,!0),this.opacityVertexBuffer=t.createVertexBuffer(this.opacityVertexArray,ou,!0),this.opacityVertexBuffer.itemSize=1),(r||n)&&this.programConfigurations.upload(t))},uu.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.dynamicLayoutVertexBuffer.destroy(),this.opacityVertexBuffer.destroy())},oi(\"SymbolBuffers\",uu);var hu=function(t,e,r){this.layoutVertexArray=new t,this.layoutAttributes=e,this.indexArray=new r,this.segments=new Da,this.collisionVertexArray=new da};hu.prototype.upload=function(t){this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,this.layoutAttributes),this.indexBuffer=t.createIndexBuffer(this.indexArray),this.collisionVertexBuffer=t.createVertexBuffer(this.collisionVertexArray,kl.members,!0)},hu.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.collisionVertexBuffer.destroy())},oi(\"CollisionBuffers\",hu);var fu=function(t){this.collisionBoxArray=t.collisionBoxArray,this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((function(t){return t.id})),this.index=t.index,this.pixelRatio=t.pixelRatio,this.sourceLayerIndex=t.sourceLayerIndex,this.hasPattern=!1,this.hasRTLText=!1,this.sortKeyRanges=[],this.collisionCircleArray=[],this.placementInvProjMatrix=Bo([]),this.placementViewportMatrix=Bo([]);var e=this.layers[0]._unevaluatedLayout._values;this.textSizeData=Mc(this.zoom,e[\"text-size\"]),this.iconSizeData=Mc(this.zoom,e[\"icon-size\"]);var r=this.layers[0].layout,n=r.get(\"symbol-sort-key\"),i=r.get(\"symbol-z-order\");this.canOverlap=r.get(\"text-allow-overlap\")||r.get(\"icon-allow-overlap\")||r.get(\"text-ignore-placement\")||r.get(\"icon-ignore-placement\"),this.sortFeaturesByKey=\"viewport-y\"!==i&&void 0!==n.constantOr(1);var a=\"viewport-y\"===i||\"auto\"===i&&!this.sortFeaturesByKey;this.sortFeaturesByY=a&&this.canOverlap,\"point\"===r.get(\"symbol-placement\")&&(this.writingModes=r.get(\"text-writing-mode\").map((function(t){return lc[t]}))),this.stateDependentLayerIds=this.layers.filter((function(t){return t.isStateDependent()})).map((function(t){return t.id})),this.sourceID=t.sourceID};fu.prototype.createArrays=function(){this.text=new uu(new uo(this.layers,this.zoom,(function(t){return/^text/.test(t)}))),this.icon=new uu(new uo(this.layers,this.zoom,(function(t){return/^icon/.test(t)}))),this.glyphOffsetArray=new La,this.lineVertexArray=new Ia,this.symbolInstances=new Ca},fu.prototype.calculateGlyphDependencies=function(t,e,r,n,i){for(var a=0;a<t.length;a++)if(e[t.charCodeAt(a)]=!0,(r||n)&&i){var o=El[t.charAt(a)];o&&(e[o.charCodeAt(0)]=!0)}},fu.prototype.populate=function(t,e,r){var n=this.layers[0],i=n.layout,a=i.get(\"text-font\"),o=i.get(\"text-field\"),s=i.get(\"icon-image\"),l=(\"constant\"!==o.value.kind||o.value.value instanceof fe&&!o.value.value.isEmpty()||o.value.value.toString().length>0)&&(\"constant\"!==a.value.kind||a.value.value.length>0),c=\"constant\"!==s.value.kind||!!s.value.value||Object.keys(s.parameters).length>0,u=i.get(\"symbol-sort-key\");if(this.features=[],l||c){for(var h=e.iconDependencies,f=e.glyphDependencies,p=e.availableImages,d=new Oi(this.zoom),m=0,g=t;m<g.length;m+=1){var y=g[m],v=y.feature,x=y.id,_=y.index,b=y.sourceLayerIndex,w=n._featureFilter.needGeometry,T=vo(v,w);if(n._featureFilter.filter(d,T,r)){w||(T.geometry=yo(v));var k=void 0;if(l){var A=n.getValueAndResolveTokens(\"text-field\",T,r,p),M=fe.factory(A);cu(M)&&(this.hasRTLText=!0),(!this.hasRTLText||\"unavailable\"===Ii()||this.hasRTLText&&zi.isParsed())&&(k=Sl(M,n,T))}var S=void 0;if(c){var E=n.getValueAndResolveTokens(\"icon-image\",T,r,p);S=E instanceof pe?E:pe.fromString(E)}if(k||S){var C=this.sortFeaturesByKey?u.evaluate(T,{},r):void 0,L={id:x,text:k,icon:S,index:_,sourceLayerIndex:b,geometry:T.geometry,properties:v.properties,type:au[v.type],sortKey:C};if(this.features.push(L),S&&(h[S.name]=!0),k){var I=a.evaluate(T,{},r).join(\",\"),P=\"map\"===i.get(\"text-rotation-alignment\")&&\"point\"!==i.get(\"symbol-placement\");this.allowVerticalPlacement=this.writingModes&&this.writingModes.indexOf(lc.vertical)>=0;for(var z=0,O=k.sections;z<O.length;z+=1){var D=O[z];if(D.image)h[D.image.name]=!0;else{var R=di(k.toString()),F=D.fontStack||I,B=f[F]=f[F]||{};this.calculateGlyphDependencies(D.text,B,P,this.allowVerticalPlacement,R)}}}}}}\"line\"===i.get(\"symbol-placement\")&&(this.features=function(t){var e={},r={},n=[],i=0;function a(e){n.push(t[e]),i++}function o(t,e,i){var a=r[t];return delete r[t],r[e]=a,n[a].geometry[0].pop(),n[a].geometry[0]=n[a].geometry[0].concat(i[0]),a}function s(t,r,i){var a=e[r];return delete e[r],e[t]=a,n[a].geometry[0].shift(),n[a].geometry[0]=i[0].concat(n[a].geometry[0]),a}function l(t,e,r){var n=r?e[0][e[0].length-1]:e[0][0];return t+\":\"+n.x+\":\"+n.y}for(var c=0;c<t.length;c++){var u=t[c],h=u.geometry,f=u.text?u.text.toString():null;if(f){var p=l(f,h),d=l(f,h,!0);if(p in r&&d in e&&r[p]!==e[d]){var m=s(p,d,h),g=o(p,d,n[m].geometry);delete e[p],delete r[d],r[l(f,n[g].geometry,!0)]=g,n[m].geometry=null}else p in r?o(p,d,h):d in e?s(p,d,h):(a(c),e[p]=i-1,r[d]=i-1)}else a(c)}return n.filter((function(t){return t.geometry}))}(this.features)),this.sortFeaturesByKey&&this.features.sort((function(t,e){return t.sortKey-e.sortKey}))}},fu.prototype.update=function(t,e,r){this.stateDependentLayers.length&&(this.text.programConfigurations.updatePaintArrays(t,e,this.layers,r),this.icon.programConfigurations.updatePaintArrays(t,e,this.layers,r))},fu.prototype.isEmpty=function(){return 0===this.symbolInstances.length&&!this.hasRTLText},fu.prototype.uploadPending=function(){return!this.uploaded||this.text.programConfigurations.needsUpload||this.icon.programConfigurations.needsUpload},fu.prototype.upload=function(t){!this.uploaded&&this.hasDebugData()&&(this.textCollisionBox.upload(t),this.iconCollisionBox.upload(t)),this.text.upload(t,this.sortFeaturesByY,!this.uploaded,this.text.programConfigurations.needsUpload),this.icon.upload(t,this.sortFeaturesByY,!this.uploaded,this.icon.programConfigurations.needsUpload),this.uploaded=!0},fu.prototype.destroyDebugData=function(){this.textCollisionBox.destroy(),this.iconCollisionBox.destroy()},fu.prototype.destroy=function(){this.text.destroy(),this.icon.destroy(),this.hasDebugData()&&this.destroyDebugData()},fu.prototype.addToLineVertexArray=function(t,e){var r=this.lineVertexArray.length;if(void 0!==t.segment){for(var n=t.dist(e[t.segment+1]),i=t.dist(e[t.segment]),a={},o=t.segment+1;o<e.length;o++)a[o]={x:e[o].x,y:e[o].y,tileUnitDistanceFromAnchor:n},o<e.length-1&&(n+=e[o+1].dist(e[o]));for(var s=t.segment||0;s>=0;s--)a[s]={x:e[s].x,y:e[s].y,tileUnitDistanceFromAnchor:i},s>0&&(i+=e[s-1].dist(e[s]));for(var l=0;l<e.length;l++){var c=a[l];this.lineVertexArray.emplaceBack(c.x,c.y,c.tileUnitDistanceFromAnchor)}}return{lineStartIndex:r,lineLength:this.lineVertexArray.length-r}},fu.prototype.addSymbols=function(t,e,r,n,i,a,o,s,l,c,u,h){for(var f=t.indexArray,p=t.layoutVertexArray,d=t.segments.prepareSegment(4*e.length,p,f,this.canOverlap?a.sortKey:void 0),m=this.glyphOffsetArray.length,g=d.vertexLength,y=this.allowVerticalPlacement&&o===lc.vertical?Math.PI/2:0,v=a.text&&a.text.sections,x=0;x<e.length;x++){var _=e[x],b=_.tl,w=_.tr,T=_.bl,k=_.br,A=_.tex,M=_.pixelOffsetTL,S=_.pixelOffsetBR,E=_.minFontScaleX,C=_.minFontScaleY,L=_.glyphOffset,I=_.isSDF,P=_.sectionIndex,z=d.vertexLength,O=L[1];su(p,s.x,s.y,b.x,O+b.y,A.x,A.y,r,I,M.x,M.y,E,C),su(p,s.x,s.y,w.x,O+w.y,A.x+A.w,A.y,r,I,S.x,M.y,E,C),su(p,s.x,s.y,T.x,O+T.y,A.x,A.y+A.h,r,I,M.x,S.y,E,C),su(p,s.x,s.y,k.x,O+k.y,A.x+A.w,A.y+A.h,r,I,S.x,S.y,E,C),lu(t.dynamicLayoutVertexArray,s,y),f.emplaceBack(z,z+1,z+2),f.emplaceBack(z+1,z+2,z+3),d.vertexLength+=4,d.primitiveLength+=2,this.glyphOffsetArray.emplaceBack(L[0]),x!==e.length-1&&P===e[x+1].sectionIndex||t.programConfigurations.populatePaintArrays(p.length,a,a.index,{},h,v&&v[P])}t.placedSymbolArray.emplaceBack(s.x,s.y,m,this.glyphOffsetArray.length-m,g,l,c,s.segment,r?r[0]:0,r?r[1]:0,n[0],n[1],o,0,!1,0,u)},fu.prototype._addCollisionDebugVertex=function(t,e,r,n,i,a){return e.emplaceBack(0,0),t.emplaceBack(r.x,r.y,n,i,Math.round(a.x),Math.round(a.y))},fu.prototype.addCollisionDebugVertices=function(t,e,r,n,i,o,s){var l=i.segments.prepareSegment(4,i.layoutVertexArray,i.indexArray),c=l.vertexLength,u=i.layoutVertexArray,h=i.collisionVertexArray,f=s.anchorX,p=s.anchorY;this._addCollisionDebugVertex(u,h,o,f,p,new a(t,e)),this._addCollisionDebugVertex(u,h,o,f,p,new a(r,e)),this._addCollisionDebugVertex(u,h,o,f,p,new a(r,n)),this._addCollisionDebugVertex(u,h,o,f,p,new a(t,n)),l.vertexLength+=4;var d=i.indexArray;d.emplaceBack(c,c+1),d.emplaceBack(c+1,c+2),d.emplaceBack(c+2,c+3),d.emplaceBack(c+3,c),l.primitiveLength+=4},fu.prototype.addDebugCollisionBoxes=function(t,e,r,n){for(var i=t;i<e;i++){var a=this.collisionBoxArray.get(i),o=a.x1,s=a.y1,l=a.x2,c=a.y2;this.addCollisionDebugVertices(o,s,l,c,n?this.textCollisionBox:this.iconCollisionBox,a.anchorPoint,r)}},fu.prototype.generateCollisionDebugBuffers=function(){this.hasDebugData()&&this.destroyDebugData(),this.textCollisionBox=new hu(fa,Al.members,ba),this.iconCollisionBox=new hu(fa,Al.members,ba);for(var t=0;t<this.symbolInstances.length;t++){var e=this.symbolInstances.get(t);this.addDebugCollisionBoxes(e.textBoxStartIndex,e.textBoxEndIndex,e,!0),this.addDebugCollisionBoxes(e.verticalTextBoxStartIndex,e.verticalTextBoxEndIndex,e,!0),this.addDebugCollisionBoxes(e.iconBoxStartIndex,e.iconBoxEndIndex,e,!1),this.addDebugCollisionBoxes(e.verticalIconBoxStartIndex,e.verticalIconBoxEndIndex,e,!1)}},fu.prototype._deserializeCollisionBoxesForSymbol=function(t,e,r,n,i,a,o,s,l){for(var c={},u=e;u<r;u++){var h=t.get(u);c.textBox={x1:h.x1,y1:h.y1,x2:h.x2,y2:h.y2,anchorPointX:h.anchorPointX,anchorPointY:h.anchorPointY},c.textFeatureIndex=h.featureIndex;break}for(var f=n;f<i;f++){var p=t.get(f);c.verticalTextBox={x1:p.x1,y1:p.y1,x2:p.x2,y2:p.y2,anchorPointX:p.anchorPointX,anchorPointY:p.anchorPointY},c.verticalTextFeatureIndex=p.featureIndex;break}for(var d=a;d<o;d++){var m=t.get(d);c.iconBox={x1:m.x1,y1:m.y1,x2:m.x2,y2:m.y2,anchorPointX:m.anchorPointX,anchorPointY:m.anchorPointY},c.iconFeatureIndex=m.featureIndex;break}for(var g=s;g<l;g++){var y=t.get(g);c.verticalIconBox={x1:y.x1,y1:y.y1,x2:y.x2,y2:y.y2,anchorPointX:y.anchorPointX,anchorPointY:y.anchorPointY},c.verticalIconFeatureIndex=y.featureIndex;break}return c},fu.prototype.deserializeCollisionBoxes=function(t){this.collisionArrays=[];for(var e=0;e<this.symbolInstances.length;e++){var r=this.symbolInstances.get(e);this.collisionArrays.push(this._deserializeCollisionBoxesForSymbol(t,r.textBoxStartIndex,r.textBoxEndIndex,r.verticalTextBoxStartIndex,r.verticalTextBoxEndIndex,r.iconBoxStartIndex,r.iconBoxEndIndex,r.verticalIconBoxStartIndex,r.verticalIconBoxEndIndex))}},fu.prototype.hasTextData=function(){return this.text.segments.get().length>0},fu.prototype.hasIconData=function(){return this.icon.segments.get().length>0},fu.prototype.hasDebugData=function(){return this.textCollisionBox&&this.iconCollisionBox},fu.prototype.hasTextCollisionBoxData=function(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0},fu.prototype.hasIconCollisionBoxData=function(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0},fu.prototype.addIndicesForPlacedSymbol=function(t,e){for(var r=t.placedSymbolArray.get(e),n=r.vertexStartIndex+4*r.numGlyphs,i=r.vertexStartIndex;i<n;i+=4)t.indexArray.emplaceBack(i,i+1,i+2),t.indexArray.emplaceBack(i+1,i+2,i+3)},fu.prototype.getSortedSymbolIndexes=function(t){if(this.sortedAngle===t&&void 0!==this.symbolInstanceIndexes)return this.symbolInstanceIndexes;for(var e=Math.sin(t),r=Math.cos(t),n=[],i=[],a=[],o=0;o<this.symbolInstances.length;++o){a.push(o);var s=this.symbolInstances.get(o);n.push(0|Math.round(e*s.anchorX+r*s.anchorY)),i.push(s.featureIndex)}return a.sort((function(t,e){return n[t]-n[e]||i[e]-i[t]})),a},fu.prototype.addToSortKeyRanges=function(t,e){var r=this.sortKeyRanges[this.sortKeyRanges.length-1];r&&r.sortKey===e?r.symbolInstanceEnd=t+1:this.sortKeyRanges.push({sortKey:e,symbolInstanceStart:t,symbolInstanceEnd:t+1})},fu.prototype.sortFeatures=function(t){var e=this;if(this.sortFeaturesByY&&this.sortedAngle!==t&&!(this.text.segments.get().length>1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(t),this.sortedAngle=t,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(var r=0,n=this.symbolInstanceIndexes;r<n.length;r+=1){var i=n[r],a=this.symbolInstances.get(i);this.featureSortOrder.push(a.featureIndex),[a.rightJustifiedTextSymbolIndex,a.centerJustifiedTextSymbolIndex,a.leftJustifiedTextSymbolIndex].forEach((function(t,r,n){t>=0&&n.indexOf(t)===r&&e.addIndicesForPlacedSymbol(e.text,t)})),a.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,a.verticalPlacedTextSymbolIndex),a.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,a.placedIconSymbolIndex),a.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,a.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}},oi(\"SymbolBucket\",fu,{omit:[\"layers\",\"collisionBoxArray\",\"features\",\"compareText\"]}),fu.MAX_GLYPHS=65535,fu.addDynamicAttributes=lu;var pu=new Yi({\"symbol-placement\":new qi(Ft.layout_symbol[\"symbol-placement\"]),\"symbol-spacing\":new qi(Ft.layout_symbol[\"symbol-spacing\"]),\"symbol-avoid-edges\":new qi(Ft.layout_symbol[\"symbol-avoid-edges\"]),\"symbol-sort-key\":new Hi(Ft.layout_symbol[\"symbol-sort-key\"]),\"symbol-z-order\":new qi(Ft.layout_symbol[\"symbol-z-order\"]),\"icon-allow-overlap\":new qi(Ft.layout_symbol[\"icon-allow-overlap\"]),\"icon-ignore-placement\":new qi(Ft.layout_symbol[\"icon-ignore-placement\"]),\"icon-optional\":new qi(Ft.layout_symbol[\"icon-optional\"]),\"icon-rotation-alignment\":new qi(Ft.layout_symbol[\"icon-rotation-alignment\"]),\"icon-size\":new Hi(Ft.layout_symbol[\"icon-size\"]),\"icon-text-fit\":new qi(Ft.layout_symbol[\"icon-text-fit\"]),\"icon-text-fit-padding\":new qi(Ft.layout_symbol[\"icon-text-fit-padding\"]),\"icon-image\":new Hi(Ft.layout_symbol[\"icon-image\"]),\"icon-rotate\":new Hi(Ft.layout_symbol[\"icon-rotate\"]),\"icon-padding\":new qi(Ft.layout_symbol[\"icon-padding\"]),\"icon-keep-upright\":new qi(Ft.layout_symbol[\"icon-keep-upright\"]),\"icon-offset\":new Hi(Ft.layout_symbol[\"icon-offset\"]),\"icon-anchor\":new Hi(Ft.layout_symbol[\"icon-anchor\"]),\"icon-pitch-alignment\":new qi(Ft.layout_symbol[\"icon-pitch-alignment\"]),\"text-pitch-alignment\":new qi(Ft.layout_symbol[\"text-pitch-alignment\"]),\"text-rotation-alignment\":new qi(Ft.layout_symbol[\"text-rotation-alignment\"]),\"text-field\":new Hi(Ft.layout_symbol[\"text-field\"]),\"text-font\":new Hi(Ft.layout_symbol[\"text-font\"]),\"text-size\":new Hi(Ft.layout_symbol[\"text-size\"]),\"text-max-width\":new Hi(Ft.layout_symbol[\"text-max-width\"]),\"text-line-height\":new qi(Ft.layout_symbol[\"text-line-height\"]),\"text-letter-spacing\":new Hi(Ft.layout_symbol[\"text-letter-spacing\"]),\"text-justify\":new Hi(Ft.layout_symbol[\"text-justify\"]),\"text-radial-offset\":new Hi(Ft.layout_symbol[\"text-radial-offset\"]),\"text-variable-anchor\":new qi(Ft.layout_symbol[\"text-variable-anchor\"]),\"text-anchor\":new Hi(Ft.layout_symbol[\"text-anchor\"]),\"text-max-angle\":new qi(Ft.layout_symbol[\"text-max-angle\"]),\"text-writing-mode\":new qi(Ft.layout_symbol[\"text-writing-mode\"]),\"text-rotate\":new Hi(Ft.layout_symbol[\"text-rotate\"]),\"text-padding\":new qi(Ft.layout_symbol[\"text-padding\"]),\"text-keep-upright\":new qi(Ft.layout_symbol[\"text-keep-upright\"]),\"text-transform\":new Hi(Ft.layout_symbol[\"text-transform\"]),\"text-offset\":new Hi(Ft.layout_symbol[\"text-offset\"]),\"text-allow-overlap\":new qi(Ft.layout_symbol[\"text-allow-overlap\"]),\"text-ignore-placement\":new qi(Ft.layout_symbol[\"text-ignore-placement\"]),\"text-optional\":new qi(Ft.layout_symbol[\"text-optional\"])}),du={paint:new Yi({\"icon-opacity\":new Hi(Ft.paint_symbol[\"icon-opacity\"]),\"icon-color\":new Hi(Ft.paint_symbol[\"icon-color\"]),\"icon-halo-color\":new Hi(Ft.paint_symbol[\"icon-halo-color\"]),\"icon-halo-width\":new Hi(Ft.paint_symbol[\"icon-halo-width\"]),\"icon-halo-blur\":new Hi(Ft.paint_symbol[\"icon-halo-blur\"]),\"icon-translate\":new qi(Ft.paint_symbol[\"icon-translate\"]),\"icon-translate-anchor\":new qi(Ft.paint_symbol[\"icon-translate-anchor\"]),\"text-opacity\":new Hi(Ft.paint_symbol[\"text-opacity\"]),\"text-color\":new Hi(Ft.paint_symbol[\"text-color\"],{runtimeType:Xt,getOverride:function(t){return t.textColor},hasOverride:function(t){return!!t.textColor}}),\"text-halo-color\":new Hi(Ft.paint_symbol[\"text-halo-color\"]),\"text-halo-width\":new Hi(Ft.paint_symbol[\"text-halo-width\"]),\"text-halo-blur\":new Hi(Ft.paint_symbol[\"text-halo-blur\"]),\"text-translate\":new qi(Ft.paint_symbol[\"text-translate\"]),\"text-translate-anchor\":new qi(Ft.paint_symbol[\"text-translate-anchor\"])}),layout:pu},mu=function(t){this.type=t.property.overrides?t.property.overrides.runtimeType:Gt,this.defaultValue=t};mu.prototype.evaluate=function(t){if(t.formattedSection){var e=this.defaultValue.property.overrides;if(e&&e.hasOverride(t.formattedSection))return e.getOverride(t.formattedSection)}return t.feature&&t.featureState?this.defaultValue.evaluate(t.feature,t.featureState):this.defaultValue.property.specification.default},mu.prototype.eachChild=function(t){this.defaultValue.isConstant()||t(this.defaultValue.value._styleExpression.expression)},mu.prototype.outputDefined=function(){return!1},mu.prototype.serialize=function(){return null},oi(\"FormatSectionOverride\",mu,{omit:[\"defaultValue\"]});var gu=function(t){function e(e){t.call(this,e,du)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.recalculate=function(e,r){if(t.prototype.recalculate.call(this,e,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<o.length;a+=1){var s=o[a];i.indexOf(s)<0&&i.push(s)}this.layout._values[\"text-writing-mode\"]=i}else this.layout._values[\"text-writing-mode\"]=[\"horizontal\"]}this._setPaintOverrides()},e.prototype.getValueAndResolveTokens=function(t,e,r,n){var i=this.layout.get(t).evaluate(e,{},r,n),a=this._unevaluatedLayout._values[t];return a.isDataDriven()||un(a.value)||!i?i:function(t,e){return e.replace(/{([^{}]+)}/g,(function(e,r){return r in t?String(t[r]):\"\"}))}(e.properties,i)},e.prototype.createBucket=function(t){return new fu(t)},e.prototype.queryRadius=function(){return 0},e.prototype.queryIntersectsFeature=function(){return!1},e.prototype._setPaintOverrides=function(){for(var t=0,r=du.paint.overridableProperties;t<r.length;t+=1){var n=r[t];if(e.hasPaintOverride(this.layout,n)){var i,a=this.paint.get(n),o=new mu(a),s=new cn(o,a.property.specification);i=\"constant\"===a.value.kind||\"source\"===a.value.kind?new fn(\"source\",s):new pn(\"composite\",s,a.value.zoomStops,a.value._interpolationType),this.paint._values[n]=new Ui(a.property,i,a.parameters)}}},e.prototype._handleOverridablePaintPropertyUpdate=function(t,r,n){return!(!this.layout||r.isDataDriven()||n.isDataDriven())&&e.hasPaintOverride(this.layout,t)},e.hasPaintOverride=function(t,e){var r=t.get(\"text-field\"),n=du.paint.properties[e],i=!1,a=function(t){for(var e=0,r=t;e<r.length;e+=1){var a=r[e];if(n.overrides&&n.overrides.hasOverride(a))return void(i=!0)}};if(\"constant\"===r.value.kind&&r.value.value instanceof fe)a(r.value.value.sections);else if(\"source\"===r.value.kind){var o=function(t){if(!i)if(t instanceof ve&&ge(t.value)===Qt){var e=t.value;a(e.sections)}else t instanceof we?a(t.sections):t.eachChild(o)},s=r.value;s._styleExpression&&o(s._styleExpression.expression)}return i},e}($i),yu={paint:new Yi({\"background-color\":new qi(Ft.paint_background[\"background-color\"]),\"background-pattern\":new Zi(Ft.paint_background[\"background-pattern\"]),\"background-opacity\":new qi(Ft.paint_background[\"background-opacity\"])})},vu=function(t){function e(e){t.call(this,e,yu)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}($i),xu={paint:new Yi({\"raster-opacity\":new qi(Ft.paint_raster[\"raster-opacity\"]),\"raster-hue-rotate\":new qi(Ft.paint_raster[\"raster-hue-rotate\"]),\"raster-brightness-min\":new qi(Ft.paint_raster[\"raster-brightness-min\"]),\"raster-brightness-max\":new qi(Ft.paint_raster[\"raster-brightness-max\"]),\"raster-saturation\":new qi(Ft.paint_raster[\"raster-saturation\"]),\"raster-contrast\":new qi(Ft.paint_raster[\"raster-contrast\"]),\"raster-resampling\":new qi(Ft.paint_raster[\"raster-resampling\"]),\"raster-fade-duration\":new qi(Ft.paint_raster[\"raster-fade-duration\"])})},_u=function(t){function e(e){t.call(this,e,xu)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}($i);var bu=function(t){function e(e){t.call(this,e,{}),this.implementation=e}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.is3D=function(){return\"3d\"===this.implementation.renderingMode},e.prototype.hasOffscreenPass=function(){return void 0!==this.implementation.prerender},e.prototype.recalculate=function(){},e.prototype.updateTransitions=function(){},e.prototype.hasTransition=function(){},e.prototype.serialize=function(){},e.prototype.onAdd=function(t){this.implementation.onAdd&&this.implementation.onAdd(t,t.painter.context.gl)},e.prototype.onRemove=function(t){this.implementation.onRemove&&this.implementation.onRemove(t,t.painter.context.gl)},e}($i),wu={circle:Go,heatmap:es,hillshade:ns,fill:Hs,\"fill-extrusion\":sl,line:_l,symbol:gu,background:vu,raster:_u};var Tu=s.HTMLImageElement,ku=s.HTMLCanvasElement,Au=s.HTMLVideoElement,Mu=s.ImageData,Su=s.ImageBitmap,Eu=function(t,e,r,n){this.context=t,this.format=r,this.texture=t.gl.createTexture(),this.update(e,n)};Eu.prototype.update=function(t,e,r){var n=t.width,i=t.height,a=!(this.size&&this.size[0]===n&&this.size[1]===i||r),o=this.context,s=o.gl;if(this.useMipmap=Boolean(e&&e.useMipmap),s.bindTexture(s.TEXTURE_2D,this.texture),o.pixelStoreUnpackFlipY.set(!1),o.pixelStoreUnpack.set(1),o.pixelStoreUnpackPremultiplyAlpha.set(this.format===s.RGBA&&(!e||!1!==e.premultiply)),a)this.size=[n,i],t instanceof Tu||t instanceof ku||t instanceof Au||t instanceof Mu||Su&&t instanceof Su?s.texImage2D(s.TEXTURE_2D,0,this.format,this.format,s.UNSIGNED_BYTE,t):s.texImage2D(s.TEXTURE_2D,0,this.format,n,i,0,this.format,s.UNSIGNED_BYTE,t.data);else{var l=r||{x:0,y:0},c=l.x,u=l.y;t instanceof Tu||t instanceof ku||t instanceof Au||t instanceof Mu||Su&&t instanceof Su?s.texSubImage2D(s.TEXTURE_2D,0,c,u,s.RGBA,s.UNSIGNED_BYTE,t):s.texSubImage2D(s.TEXTURE_2D,0,c,u,n,i,s.RGBA,s.UNSIGNED_BYTE,t.data)}this.useMipmap&&this.isSizePowerOfTwo()&&s.generateMipmap(s.TEXTURE_2D)},Eu.prototype.bind=function(t,e,r){var n=this.context.gl;n.bindTexture(n.TEXTURE_2D,this.texture),r!==n.LINEAR_MIPMAP_NEAREST||this.isSizePowerOfTwo()||(r=n.LINEAR),t!==this.filter&&(n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MAG_FILTER,t),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MIN_FILTER,r||t),this.filter=t),e!==this.wrap&&(n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_S,e),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_T,e),this.wrap=e)},Eu.prototype.isSizePowerOfTwo=function(){return this.size[0]===this.size[1]&&Math.log(this.size[0])/Math.LN2%1==0},Eu.prototype.destroy=function(){this.context.gl.deleteTexture(this.texture),this.texture=null};var Cu=function(t){var e=this;this._callback=t,this._triggered=!1,\"undefined\"!=typeof MessageChannel&&(this._channel=new MessageChannel,this._channel.port2.onmessage=function(){e._triggered=!1,e._callback()})};Cu.prototype.trigger=function(){var t=this;this._triggered||(this._triggered=!0,this._channel?this._channel.port1.postMessage(!0):setTimeout((function(){t._triggered=!1,t._callback()}),0))},Cu.prototype.remove=function(){delete this._channel,this._callback=function(){}};var Lu=function(t,e,r){this.target=t,this.parent=e,this.mapId=r,this.callbacks={},this.tasks={},this.taskQueue=[],this.cancelCallbacks={},v([\"receive\",\"process\"],this),this.invoker=new Cu(this.process),this.target.addEventListener(\"message\",this.receive,!1),this.globalScope=S()?t:s};function Iu(t,e,r){var n=2*Math.PI*6378137/256/Math.pow(2,r);return[t*n-2*Math.PI*6378137/2,e*n-2*Math.PI*6378137/2]}Lu.prototype.send=function(t,e,r,n,i){var a=this;void 0===i&&(i=!1);var o=Math.round(1e18*Math.random()).toString(36).substring(0,10);r&&(this.callbacks[o]=r);var s=L(this.globalScope)?void 0:[];return this.target.postMessage({id:o,type:t,hasCallback:!!r,targetMapId:n,mustQueue:i,sourceMapId:this.mapId,data:ui(e,s)},s),{cancel:function(){r&&delete a.callbacks[o],a.target.postMessage({id:o,type:\"<cancel>\",targetMapId:n,sourceMapId:a.mapId})}}},Lu.prototype.receive=function(t){var e=t.data,r=e.id;if(r&&(!e.targetMapId||this.mapId===e.targetMapId))if(\"<cancel>\"===e.type){delete this.tasks[r];var n=this.cancelCallbacks[r];delete this.cancelCallbacks[r],n&&n()}else S()||e.mustQueue?(this.tasks[r]=e,this.taskQueue.push(r),this.invoker.trigger()):this.processTask(r,e)},Lu.prototype.process=function(){if(this.taskQueue.length){var t=this.taskQueue.shift(),e=this.tasks[t];delete this.tasks[t],this.taskQueue.length&&this.invoker.trigger(),e&&this.processTask(t,e)}},Lu.prototype.processTask=function(t,e){var r=this;if(\"<response>\"===e.type){var n=this.callbacks[t];delete this.callbacks[t],n&&(e.error?n(hi(e.error)):n(null,hi(e.data)))}else{var i=!1,a=L(this.globalScope)?void 0:[],o=e.hasCallback?function(e,n){i=!0,delete r.cancelCallbacks[t],r.target.postMessage({id:t,type:\"<response>\",sourceMapId:r.mapId,error:e?ui(e):null,data:ui(n,a)},a)}:function(t){i=!0},s=null,l=hi(e.data);if(this.parent[e.type])s=this.parent[e.type](e.sourceMapId,l,o);else if(this.parent.getWorkerSource){var c=e.type.split(\".\");s=this.parent.getWorkerSource(e.sourceMapId,c[0],l.source)[c[1]](l,o)}else o(new Error(\"Could not find function \"+e.type));!i&&s&&s.cancel&&(this.cancelCallbacks[t]=s.cancel)}},Lu.prototype.remove=function(){this.invoker.remove(),this.target.removeEventListener(\"message\",this.receive,!1)};var Pu=function(t,e){t&&(e?this.setSouthWest(t).setNorthEast(e):4===t.length?this.setSouthWest([t[0],t[1]]).setNorthEast([t[2],t[3]]):this.setSouthWest(t[0]).setNorthEast(t[1]))};Pu.prototype.setNorthEast=function(t){return this._ne=t instanceof Ou?new Ou(t.lng,t.lat):Ou.convert(t),this},Pu.prototype.setSouthWest=function(t){return this._sw=t instanceof Ou?new Ou(t.lng,t.lat):Ou.convert(t),this},Pu.prototype.extend=function(t){var e,r,n=this._sw,i=this._ne;if(t instanceof Ou)e=t,r=t;else{if(!(t instanceof Pu)){if(Array.isArray(t)){if(4===t.length||t.every(Array.isArray)){var a=t;return this.extend(Pu.convert(a))}var o=t;return this.extend(Ou.convert(o))}return this}if(e=t._sw,r=t._ne,!e||!r)return this}return n||i?(n.lng=Math.min(e.lng,n.lng),n.lat=Math.min(e.lat,n.lat),i.lng=Math.max(r.lng,i.lng),i.lat=Math.max(r.lat,i.lat)):(this._sw=new Ou(e.lng,e.lat),this._ne=new Ou(r.lng,r.lat)),this},Pu.prototype.getCenter=function(){return new Ou((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},Pu.prototype.getSouthWest=function(){return this._sw},Pu.prototype.getNorthEast=function(){return this._ne},Pu.prototype.getNorthWest=function(){return new Ou(this.getWest(),this.getNorth())},Pu.prototype.getSouthEast=function(){return new Ou(this.getEast(),this.getSouth())},Pu.prototype.getWest=function(){return this._sw.lng},Pu.prototype.getSouth=function(){return this._sw.lat},Pu.prototype.getEast=function(){return this._ne.lng},Pu.prototype.getNorth=function(){return this._ne.lat},Pu.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},Pu.prototype.toString=function(){return\"LngLatBounds(\"+this._sw.toString()+\", \"+this._ne.toString()+\")\"},Pu.prototype.isEmpty=function(){return!(this._sw&&this._ne)},Pu.prototype.contains=function(t){var e=Ou.convert(t),r=e.lng,n=e.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},Pu.convert=function(t){return!t||t instanceof Pu?t:new Pu(t)};var zu=6371008.8,Ou=function(t,e){if(isNaN(t)||isNaN(e))throw new Error(\"Invalid LngLat object: (\"+t+\", \"+e+\")\");if(this.lng=+t,this.lat=+e,this.lat>90||this.lat<-90)throw new Error(\"Invalid LngLat latitude value: must be between -90 and 90\")};Ou.prototype.wrap=function(){return new Ou(f(this.lng,-180,180),this.lat)},Ou.prototype.toArray=function(){return[this.lng,this.lat]},Ou.prototype.toString=function(){return\"LngLat(\"+this.lng+\", \"+this.lat+\")\"},Ou.prototype.distanceTo=function(t){var e=Math.PI/180,r=this.lat*e,n=t.lat*e,i=Math.sin(r)*Math.sin(n)+Math.cos(r)*Math.cos(n)*Math.cos((t.lng-this.lng)*e);return zu*Math.acos(Math.min(i,1))},Ou.prototype.toBounds=function(t){void 0===t&&(t=0);var e=360*t/40075017,r=e/Math.cos(Math.PI/180*this.lat);return new Pu(new Ou(this.lng-r,this.lat-e),new Ou(this.lng+r,this.lat+e))},Ou.convert=function(t){if(t instanceof Ou)return t;if(Array.isArray(t)&&(2===t.length||3===t.length))return new Ou(Number(t[0]),Number(t[1]));if(!Array.isArray(t)&&\"object\"==typeof t&&null!==t)return new Ou(Number(\"lng\"in t?t.lng:t.lon),Number(t.lat));throw new Error(\"`LngLatLike` argument must be specified as a LngLat instance, an object {lng: <lng>, lat: <lat>}, an object {lon: <lng>, lat: <lat>}, or an array of [<lng>, <lat>]\")};var Du=2*Math.PI*zu;function Ru(t){return Du*Math.cos(t*Math.PI/180)}function Fu(t){return(180+t)/360}function Bu(t){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+t*Math.PI/360)))/360}function Nu(t,e){return t/Ru(e)}function ju(t){var e=180-360*t;return 360/Math.PI*Math.atan(Math.exp(e*Math.PI/180))-90}var Uu=function(t,e,r){void 0===r&&(r=0),this.x=+t,this.y=+e,this.z=+r};Uu.fromLngLat=function(t,e){void 0===e&&(e=0);var r=Ou.convert(t);return new Uu(Fu(r.lng),Bu(r.lat),Nu(e,r.lat))},Uu.prototype.toLngLat=function(){return new Ou(360*this.x-180,ju(this.y))},Uu.prototype.toAltitude=function(){return t=this.z,e=this.y,t*Ru(ju(e));var t,e},Uu.prototype.meterInMercatorCoordinateUnits=function(){return 1/Du*(t=ju(this.y),1/Math.cos(t*Math.PI/180));var t};var Vu=function(t,e,r){this.z=t,this.x=e,this.y=r,this.key=Gu(0,t,t,e,r)};Vu.prototype.equals=function(t){return this.z===t.z&&this.x===t.x&&this.y===t.y},Vu.prototype.url=function(t,e){var r,n,i,a,o,s=(r=this.x,n=this.y,i=this.z,a=Iu(256*r,256*(n=Math.pow(2,i)-n-1),i),o=Iu(256*(r+1),256*(n+1),i),a[0]+\",\"+a[1]+\",\"+o[0]+\",\"+o[1]),l=function(t,e,r){for(var n,i=\"\",a=t;a>0;a--)i+=(e&(n=1<<a-1)?1:0)+(r&n?2:0);return i}(this.z,this.x,this.y);return t[(this.x+this.y)%t.length].replace(\"{prefix}\",(this.x%16).toString(16)+(this.y%16).toString(16)).replace(\"{z}\",String(this.z)).replace(\"{x}\",String(this.x)).replace(\"{y}\",String(\"tms\"===e?Math.pow(2,this.z)-this.y-1:this.y)).replace(\"{quadkey}\",l).replace(\"{bbox-epsg-3857}\",s)},Vu.prototype.getTilePoint=function(t){var e=Math.pow(2,this.z);return new a((t.x*e-this.x)*po,(t.y*e-this.y)*po)},Vu.prototype.toString=function(){return this.z+\"/\"+this.x+\"/\"+this.y};var qu=function(t,e){this.wrap=t,this.canonical=e,this.key=Gu(t,e.z,e.z,e.x,e.y)},Hu=function(t,e,r,n,i){this.overscaledZ=t,this.wrap=e,this.canonical=new Vu(r,+n,+i),this.key=Gu(e,t,r,n,i)};function Gu(t,e,r,n,i){(t*=2)<0&&(t=-1*t-1);var a=1<<r;return(a*a*t+a*i+n).toString(36)+r.toString(36)+e.toString(36)}Hu.prototype.equals=function(t){return this.overscaledZ===t.overscaledZ&&this.wrap===t.wrap&&this.canonical.equals(t.canonical)},Hu.prototype.scaledTo=function(t){var e=this.canonical.z-t;return t>this.canonical.z?new Hu(t,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new Hu(t,this.wrap,t,this.canonical.x>>e,this.canonical.y>>e)},Hu.prototype.calculateScaledKey=function(t,e){var r=this.canonical.z-t;return t>this.canonical.z?Gu(this.wrap*+e,t,this.canonical.z,this.canonical.x,this.canonical.y):Gu(this.wrap*+e,t,t,this.canonical.x>>r,this.canonical.y>>r)},Hu.prototype.isChildOf=function(t){if(t.wrap!==this.wrap)return!1;var e=this.canonical.z-t.canonical.z;return 0===t.overscaledZ||t.overscaledZ<this.overscaledZ&&t.canonical.x===this.canonical.x>>e&&t.canonical.y===this.canonical.y>>e},Hu.prototype.children=function(t){if(this.overscaledZ>=t)return[new Hu(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];var e=this.canonical.z+1,r=2*this.canonical.x,n=2*this.canonical.y;return[new Hu(e,this.wrap,e,r,n),new Hu(e,this.wrap,e,r+1,n),new Hu(e,this.wrap,e,r,n+1),new Hu(e,this.wrap,e,r+1,n+1)]},Hu.prototype.isLessThan=function(t){return this.wrap<t.wrap||!(this.wrap>t.wrap)&&(this.overscaledZ<t.overscaledZ||!(this.overscaledZ>t.overscaledZ)&&(this.canonical.x<t.canonical.x||!(this.canonical.x>t.canonical.x)&&this.canonical.y<t.canonical.y))},Hu.prototype.wrapped=function(){return new Hu(this.overscaledZ,0,this.canonical.z,this.canonical.x,this.canonical.y)},Hu.prototype.unwrapTo=function(t){return new Hu(this.overscaledZ,t,this.canonical.z,this.canonical.x,this.canonical.y)},Hu.prototype.overscaleFactor=function(){return Math.pow(2,this.overscaledZ-this.canonical.z)},Hu.prototype.toUnwrapped=function(){return new qu(this.wrap,this.canonical)},Hu.prototype.toString=function(){return this.overscaledZ+\"/\"+this.canonical.x+\"/\"+this.canonical.y},Hu.prototype.getTilePoint=function(t){return this.canonical.getTilePoint(new Uu(t.x-this.wrap,t.y))},oi(\"CanonicalTileID\",Vu),oi(\"OverscaledTileID\",Hu,{omit:[\"posMatrix\"]});var Zu=function(t,e,r){if(this.uid=t,e.height!==e.width)throw new RangeError(\"DEM tiles must be square\");if(r&&\"mapbox\"!==r&&\"terrarium\"!==r)return k('\"'+r+'\" is not a valid encoding type. Valid types include \"mapbox\" and \"terrarium\".');this.stride=e.height;var n=this.dim=e.height-2;this.data=new Uint32Array(e.data.buffer),this.encoding=r||\"mapbox\";for(var i=0;i<n;i++)this.data[this._idx(-1,i)]=this.data[this._idx(0,i)],this.data[this._idx(n,i)]=this.data[this._idx(n-1,i)],this.data[this._idx(i,-1)]=this.data[this._idx(i,0)],this.data[this._idx(i,n)]=this.data[this._idx(i,n-1)];this.data[this._idx(-1,-1)]=this.data[this._idx(0,0)],this.data[this._idx(n,-1)]=this.data[this._idx(n-1,0)],this.data[this._idx(-1,n)]=this.data[this._idx(0,n-1)],this.data[this._idx(n,n)]=this.data[this._idx(n-1,n-1)]};Zu.prototype.get=function(t,e){var r=new Uint8Array(this.data.buffer),n=4*this._idx(t,e);return(\"terrarium\"===this.encoding?this._unpackTerrarium:this._unpackMapbox)(r[n],r[n+1],r[n+2])},Zu.prototype.getUnpackVector=function(){return\"terrarium\"===this.encoding?[256,1,1/256,32768]:[6553.6,25.6,.1,1e4]},Zu.prototype._idx=function(t,e){if(t<-1||t>=this.dim+1||e<-1||e>=this.dim+1)throw new RangeError(\"out of range source coordinates for DEM data\");return(e+1)*this.stride+(t+1)},Zu.prototype._unpackMapbox=function(t,e,r){return(256*t*256+256*e+r)/10-1e4},Zu.prototype._unpackTerrarium=function(t,e,r){return 256*t+e+r/256-32768},Zu.prototype.getPixels=function(){return new Ko({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))},Zu.prototype.backfillBorder=function(t,e,r){if(this.dim!==t.dim)throw new Error(\"dem dimension mismatch\");var n=e*this.dim,i=e*this.dim+this.dim,a=r*this.dim,o=r*this.dim+this.dim;switch(e){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=-e*this.dim,l=-r*this.dim,c=a;c<o;c++)for(var u=n;u<i;u++)this.data[this._idx(u,c)]=t.data[this._idx(u+s,c+l)]},oi(\"DEMData\",Zu);var Wu=function(t){this._stringToNumber={},this._numberToString=[];for(var e=0;e<t.length;e++){var r=t[e];this._stringToNumber[r]=e,this._numberToString[e]=r}};Wu.prototype.encode=function(t){return this._stringToNumber[t]},Wu.prototype.decode=function(t){return this._numberToString[t]};var Yu=function(t,e,r,n,i){this.type=\"Feature\",this._vectorTileFeature=t,t._z=e,t._x=r,t._y=n,this.properties=t.properties,this.id=i},Xu={geometry:{configurable:!0}};Xu.geometry.get=function(){return void 0===this._geometry&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry},Xu.geometry.set=function(t){this._geometry=t},Yu.prototype.toJSON=function(){var t={geometry:this.geometry};for(var e in this)\"_geometry\"!==e&&\"_vectorTileFeature\"!==e&&(t[e]=this[e]);return t},Object.defineProperties(Yu.prototype,Xu);var $u=function(){this.state={},this.stateChanges={},this.deletedStates={}};$u.prototype.updateState=function(t,e,r){var n=String(e);if(this.stateChanges[t]=this.stateChanges[t]||{},this.stateChanges[t][n]=this.stateChanges[t][n]||{},p(this.stateChanges[t][n],r),null===this.deletedStates[t])for(var i in this.deletedStates[t]={},this.state[t])i!==n&&(this.deletedStates[t][i]=null);else if(this.deletedStates[t]&&null===this.deletedStates[t][n])for(var a in this.deletedStates[t][n]={},this.state[t][n])r[a]||(this.deletedStates[t][n][a]=null);else for(var o in r)this.deletedStates[t]&&this.deletedStates[t][n]&&null===this.deletedStates[t][n][o]&&delete this.deletedStates[t][n][o]},$u.prototype.removeFeatureState=function(t,e,r){if(null!==this.deletedStates[t]){var n=String(e);if(this.deletedStates[t]=this.deletedStates[t]||{},r&&void 0!==e)null!==this.deletedStates[t][n]&&(this.deletedStates[t][n]=this.deletedStates[t][n]||{},this.deletedStates[t][n][r]=null);else if(void 0!==e)if(this.stateChanges[t]&&this.stateChanges[t][n])for(r in this.deletedStates[t][n]={},this.stateChanges[t][n])this.deletedStates[t][n][r]=null;else this.deletedStates[t][n]=null;else this.deletedStates[t]=null}},$u.prototype.getState=function(t,e){var r=String(e),n=this.state[t]||{},i=this.stateChanges[t]||{},a=p({},n[r],i[r]);if(null===this.deletedStates[t])return{};if(this.deletedStates[t]){var o=this.deletedStates[t][e];if(null===o)return{};for(var s in o)delete a[s]}return a},$u.prototype.initializeTileState=function(t,e){t.setFeatureState(this.state,e)},$u.prototype.coalesceChanges=function(t,e){var r={};for(var n in this.stateChanges){this.state[n]=this.state[n]||{};var i={};for(var a in this.stateChanges[n])this.state[n][a]||(this.state[n][a]={}),p(this.state[n][a],this.stateChanges[n][a]),i[a]=this.state[n][a];r[n]=i}for(var o in this.deletedStates){this.state[o]=this.state[o]||{};var s={};if(null===this.deletedStates[o])for(var l in this.state[o])s[l]={},this.state[o][l]={};else for(var c in this.deletedStates[o]){if(null===this.deletedStates[o][c])this.state[o][c]={};else for(var u=0,h=Object.keys(this.deletedStates[o][c]);u<h.length;u+=1){var f=h[u];delete this.state[o][c][f]}s[c]=this.state[o][c]}r[o]=r[o]||{},p(r[o],s)}if(this.stateChanges={},this.deletedStates={},0!==Object.keys(r).length)for(var d in t)t[d].setFeatureState(r,e)};var Ju=function(t,e){this.tileID=t,this.x=t.canonical.x,this.y=t.canonical.y,this.z=t.canonical.z,this.grid=new ti(po,16,0),this.grid3D=new ti(po,16,0),this.featureIndexArray=new za,this.promoteId=e};function Ku(t,e,r,n,i){return _(t,(function(t,a){var o=e instanceof Vi?e.get(a):null;return o&&o.evaluate?o.evaluate(r,n,i):o}))}function Qu(t){for(var e=1/0,r=1/0,n=-1/0,i=-1/0,a=0,o=t;a<o.length;a+=1){var s=o[a];e=Math.min(e,s.x),r=Math.min(r,s.y),n=Math.max(n,s.x),i=Math.max(i,s.y)}return{minX:e,minY:r,maxX:n,maxY:i}}function th(t,e){return e-t}Ju.prototype.insert=function(t,e,r,n,i,a){var o=this.featureIndexArray.length;this.featureIndexArray.emplaceBack(r,n,i);for(var s=a?this.grid3D:this.grid,l=0;l<e.length;l++){for(var c=e[l],u=[1/0,1/0,-1/0,-1/0],h=0;h<c.length;h++){var f=c[h];u[0]=Math.min(u[0],f.x),u[1]=Math.min(u[1],f.y),u[2]=Math.max(u[2],f.x),u[3]=Math.max(u[3],f.y)}u[0]<po&&u[1]<po&&u[2]>=0&&u[3]>=0&&s.insert(o,u[0],u[1],u[2],u[3])}},Ju.prototype.loadVTLayers=function(){return this.vtLayers||(this.vtLayers=new tl.VectorTile(new Pl(this.rawTileData)).layers,this.sourceLayerCoder=new Wu(this.vtLayers?Object.keys(this.vtLayers).sort():[\"_geojsonTileLayer\"])),this.vtLayers},Ju.prototype.query=function(t,e,r,n){var i=this;this.loadVTLayers();for(var o=t.params||{},s=po/t.tileSize/t.scale,l=An(o.filter),c=t.queryGeometry,u=t.queryPadding*s,h=Qu(c),f=this.grid.query(h.minX-u,h.minY-u,h.maxX+u,h.maxY+u),p=Qu(t.cameraQueryGeometry),d=0,m=this.grid3D.query(p.minX-u,p.minY-u,p.maxX+u,p.maxY+u,(function(e,r,n,i){return function(t,e,r,n,i){for(var o=0,s=t;o<s.length;o+=1){var l=s[o];if(e<=l.x&&r<=l.y&&n>=l.x&&i>=l.y)return!0}var c=[new a(e,r),new a(e,i),new a(n,i),new a(n,r)];if(t.length>2)for(var u=0,h=c;u<h.length;u+=1)if(Lo(t,h[u]))return!0;for(var f=0;f<t.length-1;f++)if(Io(t[f],t[f+1],c))return!0;return!1}(t.cameraQueryGeometry,e-u,r-u,n+u,i+u)}));d<m.length;d+=1){var g=m[d];f.push(g)}f.sort(th);for(var y,v={},x=function(a){var u=f[a];if(u!==y){y=u;var h=i.featureIndexArray.get(u),p=null;i.loadMatchingFeature(v,h.bucketIndex,h.sourceLayerIndex,h.featureIndex,l,o.layers,o.availableImages,e,r,n,(function(e,r,n){return p||(p=yo(e)),r.queryIntersectsFeature(c,e,n,p,i.z,t.transform,s,t.pixelPosMatrix)}))}},_=0;_<f.length;_++)x(_);return v},Ju.prototype.loadMatchingFeature=function(t,e,r,n,i,a,o,s,l,c,u){var h=this.bucketLayerIDs[e];if(!a||function(t,e){for(var r=0;r<t.length;r++)if(e.indexOf(t[r])>=0)return!0;return!1}(a,h)){var f=this.sourceLayerCoder.decode(r),d=this.vtLayers[f].feature(n);if(i.needGeometry){var m=vo(d,!0);if(!i.filter(new Oi(this.tileID.overscaledZ),m,this.tileID.canonical))return}else if(!i.filter(new Oi(this.tileID.overscaledZ),d))return;for(var g=this.getId(d,f),y=0;y<h.length;y++){var v=h[y];if(!(a&&a.indexOf(v)<0)){var x=s[v];if(x){var _={};void 0!==g&&c&&(_=c.getState(x.sourceLayer||\"_geojsonTileLayer\",g));var b=p({},l[v]);b.paint=Ku(b.paint,x.paint,d,_,o),b.layout=Ku(b.layout,x.layout,d,_,o);var w=!u||u(d,x,_);if(w){var T=new Yu(d,this.z,this.x,this.y,g);T.layer=b;var k=t[v];void 0===k&&(k=t[v]=[]),k.push({featureIndex:n,feature:T,intersectionZ:w})}}}}}},Ju.prototype.lookupSymbolFeatures=function(t,e,r,n,i,a,o,s){var l={};this.loadVTLayers();for(var c=An(i),u=0,h=t;u<h.length;u+=1){var f=h[u];this.loadMatchingFeature(l,r,n,f,c,a,o,s,e)}return l},Ju.prototype.hasLayer=function(t){for(var e=0,r=this.bucketLayerIDs;e<r.length;e+=1)for(var n=0,i=r[e];n<i.length;n+=1)if(t===i[n])return!0;return!1},Ju.prototype.getId=function(t,e){var r=t.id;if(this.promoteId){var n=\"string\"==typeof this.promoteId?this.promoteId:this.promoteId[e];\"boolean\"==typeof(r=t.properties[n])&&(r=Number(r))}return r},oi(\"FeatureIndex\",Ju,{omit:[\"rawTileData\",\"sourceLayerCoder\"]});var eh=function(t,e){this.tileID=t,this.uid=m(),this.uses=0,this.tileSize=e,this.buckets={},this.expirationTime=null,this.queryPadding=0,this.hasSymbolBuckets=!1,this.hasRTLText=!1,this.dependencies={},this.expiredRequestCount=0,this.state=\"loading\"};eh.prototype.registerFadeDuration=function(t){var e=t+this.timeAdded;e<N.now()||this.fadeEndTime&&e<this.fadeEndTime||(this.fadeEndTime=e)},eh.prototype.wasRequested=function(){return\"errored\"===this.state||\"loaded\"===this.state||\"reloading\"===this.state},eh.prototype.loadVectorData=function(t,e,r){if(this.hasData()&&this.unloadVectorData(),this.state=\"loaded\",t){for(var n in t.featureIndex&&(this.latestFeatureIndex=t.featureIndex,t.rawTileData?(this.latestRawTileData=t.rawTileData,this.latestFeatureIndex.rawTileData=t.rawTileData):this.latestRawTileData&&(this.latestFeatureIndex.rawTileData=this.latestRawTileData)),this.collisionBoxArray=t.collisionBoxArray,this.buckets=function(t,e){var r={};if(!e)return r;for(var n=function(){var t=a[i],n=t.layerIds.map((function(t){return e.getLayer(t)})).filter(Boolean);if(0!==n.length){t.layers=n,t.stateDependentLayerIds&&(t.stateDependentLayers=t.stateDependentLayerIds.map((function(t){return n.filter((function(e){return e.id===t}))[0]})));for(var o=0,s=n;o<s.length;o+=1){var l=s[o];r[l.id]=t}}},i=0,a=t;i<a.length;i+=1)n();return r}(t.buckets,e.style),this.hasSymbolBuckets=!1,this.buckets){var i=this.buckets[n];if(i instanceof fu){if(this.hasSymbolBuckets=!0,!r)break;i.justReloaded=!0}}if(this.hasRTLText=!1,this.hasSymbolBuckets)for(var a in this.buckets){var o=this.buckets[a];if(o instanceof fu&&o.hasRTLText){this.hasRTLText=!0,zi.isLoading()||zi.isLoaded()||\"deferred\"!==Ii()||Pi();break}}for(var s in this.queryPadding=0,this.buckets){var l=this.buckets[s];this.queryPadding=Math.max(this.queryPadding,e.style.getLayer(s).queryRadius(l))}t.imageAtlas&&(this.imageAtlas=t.imageAtlas),t.glyphAtlasImage&&(this.glyphAtlasImage=t.glyphAtlasImage)}else this.collisionBoxArray=new Aa},eh.prototype.unloadVectorData=function(){for(var t in this.buckets)this.buckets[t].destroy();this.buckets={},this.imageAtlasTexture&&this.imageAtlasTexture.destroy(),this.imageAtlas&&(this.imageAtlas=null),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.latestFeatureIndex=null,this.state=\"unloaded\"},eh.prototype.getBucket=function(t){return this.buckets[t.id]},eh.prototype.upload=function(t){for(var e in this.buckets){var r=this.buckets[e];r.uploadPending()&&r.upload(t)}var n=t.gl;this.imageAtlas&&!this.imageAtlas.uploaded&&(this.imageAtlasTexture=new Eu(t,this.imageAtlas.image,n.RGBA),this.imageAtlas.uploaded=!0),this.glyphAtlasImage&&(this.glyphAtlasTexture=new Eu(t,this.glyphAtlasImage,n.ALPHA),this.glyphAtlasImage=null)},eh.prototype.prepare=function(t){this.imageAtlas&&this.imageAtlas.patchUpdatedImages(t,this.imageAtlasTexture)},eh.prototype.queryRenderedFeatures=function(t,e,r,n,i,a,o,s,l,c){return this.latestFeatureIndex&&this.latestFeatureIndex.rawTileData?this.latestFeatureIndex.query({queryGeometry:n,cameraQueryGeometry:i,scale:a,tileSize:this.tileSize,pixelPosMatrix:c,transform:s,params:o,queryPadding:this.queryPadding*l},t,e,r):{}},eh.prototype.querySourceFeatures=function(t,e){var r=this.latestFeatureIndex;if(r&&r.rawTileData){var n=r.loadVTLayers(),i=e?e.sourceLayer:\"\",a=n._geojsonTileLayer||n[i];if(a)for(var o=An(e&&e.filter),s=this.tileID.canonical,l=s.z,c=s.x,u=s.y,h={z:l,x:c,y:u},f=0;f<a.length;f++){var p=a.feature(f);if(o.needGeometry){var d=vo(p,!0);if(!o.filter(new Oi(this.tileID.overscaledZ),d,this.tileID.canonical))continue}else if(!o.filter(new Oi(this.tileID.overscaledZ),p))continue;var m=r.getId(p,i),g=new Yu(p,l,c,u,m);g.tile=h,t.push(g)}}},eh.prototype.hasData=function(){return\"loaded\"===this.state||\"reloading\"===this.state||\"expired\"===this.state},eh.prototype.patternsLoaded=function(){return this.imageAtlas&&!!Object.keys(this.imageAtlas.patternPositions).length},eh.prototype.setExpiryData=function(t){var e=this.expirationTime;if(t.cacheControl){var r=E(t.cacheControl);r[\"max-age\"]&&(this.expirationTime=Date.now()+1e3*r[\"max-age\"])}else t.expires&&(this.expirationTime=new Date(t.expires).getTime());if(this.expirationTime){var n=Date.now(),i=!1;if(this.expirationTime>n)i=!1;else if(e)if(this.expirationTime<e)i=!0;else{var a=this.expirationTime-e;a?this.expirationTime=n+Math.max(a,3e4):i=!0}else i=!0;i?(this.expiredRequestCount++,this.state=\"expired\"):this.expiredRequestCount=0}},eh.prototype.getExpiryTimeout=function(){if(this.expirationTime)return this.expiredRequestCount?1e3*(1<<Math.min(this.expiredRequestCount-1,31)):Math.min(this.expirationTime-(new Date).getTime(),Math.pow(2,31)-1)},eh.prototype.setFeatureState=function(t,e){if(this.latestFeatureIndex&&this.latestFeatureIndex.rawTileData&&0!==Object.keys(t).length){var r=this.latestFeatureIndex.loadVTLayers();for(var n in this.buckets)if(e.style.hasLayer(n)){var i=this.buckets[n],a=i.layers[0].sourceLayer||\"_geojsonTileLayer\",o=r[a],s=t[a];if(o&&s&&0!==Object.keys(s).length){i.update(s,o,this.imageAtlas&&this.imageAtlas.patternPositions||{});var l=e&&e.style&&e.style.getLayer(n);l&&(this.queryPadding=Math.max(this.queryPadding,l.queryRadius(i)))}}}},eh.prototype.holdingForFade=function(){return void 0!==this.symbolFadeHoldUntil},eh.prototype.symbolFadeFinished=function(){return!this.symbolFadeHoldUntil||this.symbolFadeHoldUntil<N.now()},eh.prototype.clearFadeHold=function(){this.symbolFadeHoldUntil=void 0},eh.prototype.setHoldDuration=function(t){this.symbolFadeHoldUntil=N.now()+t},eh.prototype.setDependencies=function(t,e){for(var r={},n=0,i=e;n<i.length;n+=1)r[i[n]]=!0;this.dependencies[t]=r},eh.prototype.hasDependency=function(t,e){for(var r=0,n=t;r<n.length;r+=1){var i=n[r],a=this.dependencies[i];if(a)for(var o=0,s=e;o<s.length;o+=1)if(a[s[o]])return!0}return!1};var rh=s.performance,nh=function(t){this._marks={start:[t.url,\"start\"].join(\"#\"),end:[t.url,\"end\"].join(\"#\"),measure:t.url.toString()},rh.mark(this._marks.start)};nh.prototype.finish=function(){rh.mark(this._marks.end);var t=rh.getEntriesByName(this._marks.measure);return 0===t.length&&(rh.measure(this._marks.measure,this._marks.start,this._marks.end),t=rh.getEntriesByName(this._marks.measure),rh.clearMarks(this._marks.start),rh.clearMarks(this._marks.end),rh.clearMeasures(this._marks.measure)),t},t.Actor=Lu,t.AlphaImage=Jo,t.CanonicalTileID=Vu,t.CollisionBoxArray=Aa,t.Color=ce,t.DEMData=Zu,t.DataConstantProperty=qi,t.DictionaryCoder=Wu,t.EXTENT=po,t.ErrorEvent=Dt,t.EvaluationParameters=Oi,t.Event=Ot,t.Evented=Rt,t.FeatureIndex=Ju,t.FillBucket=Us,t.FillExtrusionBucket=il,t.ImageAtlas=sc,t.ImagePosition=ac,t.LineBucket=ml,t.LngLat=Ou,t.LngLatBounds=Pu,t.MercatorCoordinate=Uu,t.ONE_EM=Cl,t.OverscaledTileID=Hu,t.Point=a,t.Point$1=a,t.Properties=Yi,t.Protobuf=Pl,t.RGBAImage=Ko,t.RequestManager=Z,t.RequestPerformance=nh,t.ResourceType=bt,t.SegmentVector=Da,t.SourceFeatureState=$u,t.StructArrayLayout1ui2=wa,t.StructArrayLayout2f1f2i16=pa,t.StructArrayLayout2i4=ra,t.StructArrayLayout3ui6=ma,t.StructArrayLayout4i8=na,t.SymbolBucket=fu,t.Texture=Eu,t.Tile=eh,t.Transitionable=Fi,t.Uniform1f=$a,t.Uniform1i=Xa,t.Uniform2f=Ja,t.Uniform3f=Ka,t.Uniform4f=Qa,t.UniformColor=to,t.UniformMatrix4f=ro,t.UnwrappedTileID=qu,t.ValidationError=Bt,t.WritingMode=lc,t.ZoomHistory=fi,t.add=function(t,e,r){return t[0]=e[0]+r[0],t[1]=e[1]+r[1],t[2]=e[2]+r[2],t},t.addDynamicAttributes=lu,t.asyncAll=function(t,e,r){if(!t.length)return r(null,[]);var n=t.length,i=new Array(t.length),a=null;t.forEach((function(t,o){e(t,(function(t,e){t&&(a=t),i[o]=e,0==--n&&r(a,i)}))}))},t.bezier=c,t.bindAll=v,t.browser=N,t.cacheEntryPossiblyAdded=function(t){++xt>ft&&(t.getActor().send(\"enforceCacheSizeLimit\",ht),xt=0)},t.clamp=h,t.clearTileCache=function(t){var e=s.caches.delete(ut);t&&e.catch(t).then((function(){return t()}))},t.clipLine=Fc,t.clone=function(t){var e=new Fo(16);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e},t.clone$1=w,t.clone$2=function(t){var e=new Fo(3);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e},t.collisionCircleLayout=Ml,t.config=j,t.create=function(){var t=new Fo(16);return Fo!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=0,t[12]=0,t[13]=0,t[14]=0),t[0]=1,t[5]=1,t[10]=1,t[15]=1,t},t.create$1=function(){var t=new Fo(9);return Fo!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[5]=0,t[6]=0,t[7]=0),t[0]=1,t[4]=1,t[8]=1,t},t.create$2=function(){var t=new Fo(4);return Fo!=Float32Array&&(t[1]=0,t[2]=0),t[0]=1,t[3]=1,t},t.createCommonjsModule=e,t.createExpression=hn,t.createLayout=ta,t.createStyleLayer=function(t){return\"custom\"===t.type?new bu(t):new wu[t.type](t)},t.cross=function(t,e,r){var n=e[0],i=e[1],a=e[2],o=r[0],s=r[1],l=r[2];return t[0]=i*l-a*s,t[1]=a*o-n*l,t[2]=n*s-i*o,t},t.deepEqual=function t(e,r){if(Array.isArray(e)){if(!Array.isArray(r)||e.length!==r.length)return!1;for(var n=0;n<e.length;n++)if(!t(e[n],r[n]))return!1;return!0}if(\"object\"==typeof e&&null!==e&&null!==r){if(\"object\"!=typeof r)return!1;if(Object.keys(e).length!==Object.keys(r).length)return!1;for(var i in e)if(!t(e[i],r[i]))return!1;return!0}return e===r},t.dot=function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]},t.dot$1=function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]+t[3]*e[3]},t.ease=u,t.emitValidationErrors=Qn,t.endsWith=x,t.enforceCacheSizeLimit=function(t){dt(),rt&&rt.then((function(e){e.keys().then((function(r){for(var n=0;n<r.length-t;n++)e.delete(r[n])}))}))},t.evaluateSizeForFeature=Sc,t.evaluateSizeForZoom=Ec,t.evaluateVariableOffset=Kc,t.evented=Li,t.extend=p,t.featureFilter=An,t.filterObject=b,t.fromRotation=function(t,e){var r=Math.sin(e),n=Math.cos(e);return t[0]=n,t[1]=r,t[2]=0,t[3]=-r,t[4]=n,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t},t.getAnchorAlignment=bc,t.getAnchorJustification=Qc,t.getArrayBuffer=Mt,t.getImage=It,t.getJSON=function(t,e){return At(p(t,{type:\"json\"}),e)},t.getRTLTextPluginStatus=Ii,t.getReferrer=Tt,t.getVideo=function(t,e){var r,n,i=s.document.createElement(\"video\");i.muted=!0,i.onloadstart=function(){e(null,i)};for(var a=0;a<t.length;a++){var o=s.document.createElement(\"source\");r=t[a],n=void 0,(n=s.document.createElement(\"a\")).href=r,n.protocol===s.document.location.protocol&&n.host===s.document.location.host||(i.crossOrigin=\"Anonymous\"),o.src=t[a],i.appendChild(o)}return{cancel:function(){}}},t.identity=Bo,t.invert=function(t,e){var r=e[0],n=e[1],i=e[2],a=e[3],o=e[4],s=e[5],l=e[6],c=e[7],u=e[8],h=e[9],f=e[10],p=e[11],d=e[12],m=e[13],g=e[14],y=e[15],v=r*s-n*o,x=r*l-i*o,_=r*c-a*o,b=n*l-i*s,w=n*c-a*s,T=i*c-a*l,k=u*m-h*d,A=u*g-f*d,M=u*y-p*d,S=h*g-f*m,E=h*y-p*m,C=f*y-p*g,L=v*C-x*E+_*S+b*M-w*A+T*k;return L?(L=1/L,t[0]=(s*C-l*E+c*S)*L,t[1]=(i*E-n*C-a*S)*L,t[2]=(m*T-g*w+y*b)*L,t[3]=(f*w-h*T-p*b)*L,t[4]=(l*M-o*C-c*A)*L,t[5]=(r*C-i*M+a*A)*L,t[6]=(g*_-d*T-y*x)*L,t[7]=(u*T-f*_+p*x)*L,t[8]=(o*E-s*M+c*k)*L,t[9]=(n*M-r*E-a*k)*L,t[10]=(d*w-m*_+y*v)*L,t[11]=(h*_-u*w-p*v)*L,t[12]=(s*A-o*S-l*k)*L,t[13]=(r*S-n*A+i*k)*L,t[14]=(m*x-d*b-g*v)*L,t[15]=(u*b-h*x+f*v)*L,t):null},t.isChar=pi,t.isMapboxURL=W,t.keysDifference=function(t,e){var r=[];for(var n in t)n in e||r.push(n);return r},t.makeRequest=At,t.mapObject=_,t.mercatorXfromLng=Fu,t.mercatorYfromLat=Bu,t.mercatorZfromAltitude=Nu,t.mul=jo,t.multiply=No,t.mvt=tl,t.nextPowerOfTwo=function(t){return t<=1?1:Math.pow(2,Math.ceil(Math.log(t)/Math.LN2))},t.normalize=function(t,e){var r=e[0],n=e[1],i=e[2],a=r*r+n*n+i*i;return a>0&&(a=1/Math.sqrt(a)),t[0]=e[0]*a,t[1]=e[1]*a,t[2]=e[2]*a,t},t.number=er,t.offscreenCanvasSupported=_t,t.ortho=function(t,e,r,n,i,a,o){var s=1/(e-r),l=1/(n-i),c=1/(a-o);return t[0]=-2*s,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*l,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*c,t[11]=0,t[12]=(e+r)*s,t[13]=(i+n)*l,t[14]=(o+a)*c,t[15]=1,t},t.parseGlyphPBF=function(t){return new Pl(t).readFields(Ql,[])},t.pbf=Pl,t.performSymbolLayout=function(t,e,r,n,i,a,o){t.createArrays();var s=512*t.overscaling;t.tilePixelRatio=po/s,t.compareText={},t.iconsNeedLinear=!1;var l=t.layers[0].layout,c=t.layers[0]._unevaluatedLayout._values,u={};if(\"composite\"===t.textSizeData.kind){var h=t.textSizeData,f=h.minZoom,p=h.maxZoom;u.compositeTextSizes=[c[\"text-size\"].possiblyEvaluate(new Oi(f),o),c[\"text-size\"].possiblyEvaluate(new Oi(p),o)]}if(\"composite\"===t.iconSizeData.kind){var d=t.iconSizeData,m=d.minZoom,g=d.maxZoom;u.compositeIconSizes=[c[\"icon-size\"].possiblyEvaluate(new Oi(m),o),c[\"icon-size\"].possiblyEvaluate(new Oi(g),o)]}u.layoutTextSize=c[\"text-size\"].possiblyEvaluate(new Oi(t.zoom+1),o),u.layoutIconSize=c[\"icon-size\"].possiblyEvaluate(new Oi(t.zoom+1),o),u.textMaxSize=c[\"text-size\"].possiblyEvaluate(new Oi(18));for(var y=l.get(\"text-line-height\")*Cl,v=\"map\"===l.get(\"text-rotation-alignment\")&&\"point\"!==l.get(\"symbol-placement\"),x=l.get(\"text-keep-upright\"),_=l.get(\"text-size\"),b=function(){var a=T[w],s=l.get(\"text-font\").evaluate(a,{},o).join(\",\"),c=_.evaluate(a,{},o),h=u.layoutTextSize.evaluate(a,{},o),f=u.layoutIconSize.evaluate(a,{},o),p={horizontal:{},vertical:void 0},d=a.text,m=[0,0];if(d){var g=d.toString(),b=l.get(\"text-letter-spacing\").evaluate(a,{},o)*Cl,A=function(t){for(var e=0,r=t;e<r.length;e+=1)if(n=r[e].charCodeAt(0),pi.Arabic(n)||pi[\"Arabic Supplement\"](n)||pi[\"Arabic Extended-A\"](n)||pi[\"Arabic Presentation Forms-A\"](n)||pi[\"Arabic Presentation Forms-B\"](n))return!1;var n;return!0}(g)?b:0,M=l.get(\"text-anchor\").evaluate(a,{},o),S=l.get(\"text-variable-anchor\");if(!S){var E=l.get(\"text-radial-offset\").evaluate(a,{},o);m=E?Kc(M,[E*Cl,Jc]):l.get(\"text-offset\").evaluate(a,{},o).map((function(t){return t*Cl}))}var C=v?\"center\":l.get(\"text-justify\").evaluate(a,{},o),L=l.get(\"symbol-placement\"),I=\"point\"===L?l.get(\"text-max-width\").evaluate(a,{},o)*Cl:0,P=function(){t.allowVerticalPlacement&&di(g)&&(p.vertical=fc(d,e,r,i,s,I,y,M,\"left\",A,m,lc.vertical,!0,L,h,c))};if(!v&&S){for(var z=\"auto\"===C?S.map((function(t){return Qc(t)})):[C],O=!1,D=0;D<z.length;D++){var R=z[D];if(!p.horizontal[R])if(O)p.horizontal[R]=p.horizontal[0];else{var F=fc(d,e,r,i,s,I,y,\"center\",R,A,m,lc.horizontal,!1,L,h,c);F&&(p.horizontal[R]=F,O=1===F.positionedLines.length)}}P()}else{\"auto\"===C&&(C=Qc(M));var B=fc(d,e,r,i,s,I,y,M,C,A,m,lc.horizontal,!1,L,h,c);B&&(p.horizontal[C]=B),P(),di(g)&&v&&x&&(p.vertical=fc(d,e,r,i,s,I,y,M,C,A,m,lc.vertical,!1,L,h,c))}}var N=void 0,j=!1;if(a.icon&&a.icon.name){var U=n[a.icon.name];U&&(N=function(t,e,r){var n=bc(r),i=n.horizontalAlign,a=n.verticalAlign,o=e[0],s=e[1],l=o-t.displaySize[0]*i,c=l+t.displaySize[0],u=s-t.displaySize[1]*a;return{image:t,top:u,bottom:u+t.displaySize[1],left:l,right:c}}(i[a.icon.name],l.get(\"icon-offset\").evaluate(a,{},o),l.get(\"icon-anchor\").evaluate(a,{},o)),j=U.sdf,void 0===t.sdfIcons?t.sdfIcons=U.sdf:t.sdfIcons!==U.sdf&&k(\"Style sheet warning: Cannot mix SDF and non-SDF icons in one buffer\"),(U.pixelRatio!==t.pixelRatio||0!==l.get(\"icon-rotate\").constantOr(1))&&(t.iconsNeedLinear=!0))}var V=nu(p.horizontal)||p.vertical;t.iconsInText=!!V&&V.iconsInText,(V||N)&&function(t,e,r,n,i,a,o,s,l,c,u){var h=a.textMaxSize.evaluate(e,{});void 0===h&&(h=o);var f,p=t.layers[0].layout,d=p.get(\"icon-offset\").evaluate(e,{},u),m=nu(r.horizontal),g=24,y=o/g,v=t.tilePixelRatio*y,x=t.tilePixelRatio*h/g,_=t.tilePixelRatio*s,b=t.tilePixelRatio*p.get(\"symbol-spacing\"),w=p.get(\"text-padding\")*t.tilePixelRatio,T=p.get(\"icon-padding\")*t.tilePixelRatio,A=p.get(\"text-max-angle\")/180*Math.PI,M=\"map\"===p.get(\"text-rotation-alignment\")&&\"point\"!==p.get(\"symbol-placement\"),S=\"map\"===p.get(\"icon-rotation-alignment\")&&\"point\"!==p.get(\"symbol-placement\"),E=p.get(\"symbol-placement\"),C=b/2,L=p.get(\"icon-text-fit\");n&&\"none\"!==L&&(t.allowVerticalPlacement&&r.vertical&&(f=Tc(n,r.vertical,L,p.get(\"icon-text-fit-padding\"),d,y)),m&&(n=Tc(n,m,L,p.get(\"icon-text-fit-padding\"),d,y)));var I=function(s,h){h.x<0||h.x>=po||h.y<0||h.y>=po||function(t,e,r,n,i,a,o,s,l,c,u,h,f,p,d,m,g,y,v,x,_,b,w,T,A){var M,S,E,C,L,I=t.addToLineVertexArray(e,r),P=0,z=0,O=0,D=0,R=-1,F=-1,B={},N=ja(\"\"),j=0,U=0;if(void 0===s._unevaluatedLayout.getValue(\"text-radial-offset\")?(j=(M=s.layout.get(\"text-offset\").evaluate(_,{},T).map((function(t){return t*Cl})))[0],U=M[1]):(j=s.layout.get(\"text-radial-offset\").evaluate(_,{},T)*Cl,U=Jc),t.allowVerticalPlacement&&n.vertical){var V=s.layout.get(\"text-rotate\").evaluate(_,{},T)+90,q=n.vertical;C=new Hc(l,e,c,u,h,q,f,p,d,V),o&&(L=new Hc(l,e,c,u,h,o,g,y,d,V))}if(i){var H=s.layout.get(\"icon-rotate\").evaluate(_,{}),G=\"none\"!==s.layout.get(\"icon-text-fit\"),Z=Nc(i,H,w,G),W=o?Nc(o,H,w,G):void 0;E=new Hc(l,e,c,u,h,i,g,y,!1,H),P=4*Z.length;var Y=t.iconSizeData,X=null;\"source\"===Y.kind?(X=[Ac*s.layout.get(\"icon-size\").evaluate(_,{})])[0]>eu&&k(t.layerIds[0]+': Value for \"icon-size\" is >= '+tu+'. Reduce your \"icon-size\".'):\"composite\"===Y.kind&&((X=[Ac*b.compositeIconSizes[0].evaluate(_,{},T),Ac*b.compositeIconSizes[1].evaluate(_,{},T)])[0]>eu||X[1]>eu)&&k(t.layerIds[0]+': Value for \"icon-size\" is >= '+tu+'. Reduce your \"icon-size\".'),t.addSymbols(t.icon,Z,X,x,v,_,!1,e,I.lineStartIndex,I.lineLength,-1,T),R=t.icon.placedSymbolArray.length-1,W&&(z=4*W.length,t.addSymbols(t.icon,W,X,x,v,_,lc.vertical,e,I.lineStartIndex,I.lineLength,-1,T),F=t.icon.placedSymbolArray.length-1)}for(var $ in n.horizontal){var J=n.horizontal[$];if(!S){N=ja(J.text);var K=s.layout.get(\"text-rotate\").evaluate(_,{},T);S=new Hc(l,e,c,u,h,J,f,p,d,K)}var Q=1===J.positionedLines.length;if(O+=ru(t,e,J,a,s,d,_,m,I,n.vertical?lc.horizontal:lc.horizontalOnly,Q?Object.keys(n.horizontal):[$],B,R,b,T),Q)break}n.vertical&&(D+=ru(t,e,n.vertical,a,s,d,_,m,I,lc.vertical,[\"vertical\"],B,F,b,T));var tt=S?S.boxStartIndex:t.collisionBoxArray.length,et=S?S.boxEndIndex:t.collisionBoxArray.length,rt=C?C.boxStartIndex:t.collisionBoxArray.length,nt=C?C.boxEndIndex:t.collisionBoxArray.length,it=E?E.boxStartIndex:t.collisionBoxArray.length,at=E?E.boxEndIndex:t.collisionBoxArray.length,ot=L?L.boxStartIndex:t.collisionBoxArray.length,st=L?L.boxEndIndex:t.collisionBoxArray.length,lt=-1,ct=function(t,e){return t&&t.circleDiameter?Math.max(t.circleDiameter,e):e};lt=ct(S,lt),lt=ct(C,lt),lt=ct(E,lt);var ut=(lt=ct(L,lt))>-1?1:0;ut&&(lt*=A/Cl),t.glyphOffsetArray.length>=fu.MAX_GLYPHS&&k(\"Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907\"),void 0!==_.sortKey&&t.addToSortKeyRanges(t.symbolInstances.length,_.sortKey),t.symbolInstances.emplaceBack(e.x,e.y,B.right>=0?B.right:-1,B.center>=0?B.center:-1,B.left>=0?B.left:-1,B.vertical||-1,R,F,N,tt,et,rt,nt,it,at,ot,st,c,O,D,P,z,ut,0,f,j,U,lt)}(t,h,s,r,n,i,f,t.layers[0],t.collisionBoxArray,e.index,e.sourceLayerIndex,t.index,v,w,M,l,_,T,S,d,e,a,c,u,o)};if(\"line\"===E)for(var P=0,z=Fc(e.geometry,0,0,po,po);P<z.length;P+=1)for(var O=z[P],D=0,R=Dc(O,b,A,r.vertical||m,n,g,x,t.overscaling,po);D<R.length;D+=1){var F=R[D];m&&iu(t,m.text,C,F)||I(O,F)}else if(\"line-center\"===E)for(var B=0,N=e.geometry;B<N.length;B+=1){var j=N[B];if(j.length>1){var U=Oc(j,A,r.vertical||m,n,g,x);U&&I(j,U)}}else if(\"Polygon\"===e.type)for(var V=0,q=Fs(e.geometry,0);V<q.length;V+=1){var H=q[V],G=Wc(H,16);I(H[0],new kc(G.x,G.y,0))}else if(\"LineString\"===e.type)for(var Z=0,W=e.geometry;Z<W.length;Z+=1){var Y=W[Z];I(Y,new kc(Y[0].x,Y[0].y,0))}else if(\"Point\"===e.type)for(var X=0,$=e.geometry;X<$.length;X+=1)for(var J=0,K=$[X];J<K.length;J+=1){var Q=K[J];I([Q],new kc(Q.x,Q.y,0))}}(t,a,p,N,n,u,h,f,m,j,o)},w=0,T=t.features;w<T.length;w+=1)b();a&&t.generateCollisionDebugBuffers()},t.perspective=function(t,e,r,n,i){var a,o=1/Math.tan(e/2);return t[0]=o/r,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=o,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=-1,t[12]=0,t[13]=0,t[15]=0,null!=i&&i!==1/0?(a=1/(n-i),t[10]=(i+n)*a,t[14]=2*i*n*a):(t[10]=-1,t[14]=-2*n),t},t.pick=function(t,e){for(var r={},n=0;n<e.length;n++){var i=e[n];i in t&&(r[i]=t[i])}return r},t.plugin=zi,t.polygonIntersectsPolygon=bo,t.postMapLoadEvent=ct,t.postTurnstileEvent=st,t.potpack=nc,t.refProperties=[\"type\",\"source\",\"source-layer\",\"minzoom\",\"maxzoom\",\"filter\",\"layout\"],t.register=oi,t.registerForPluginStateChange=function(t){return t({pluginStatus:Mi,pluginURL:Si}),Li.on(\"pluginStateChange\",t),t},t.renderColorRamp=ts,t.rotate=function(t,e,r){var n=e[0],i=e[1],a=e[2],o=e[3],s=Math.sin(r),l=Math.cos(r);return t[0]=n*l+a*s,t[1]=i*l+o*s,t[2]=n*-s+a*l,t[3]=i*-s+o*l,t},t.rotateX=function(t,e,r){var n=Math.sin(r),i=Math.cos(r),a=e[4],o=e[5],s=e[6],l=e[7],c=e[8],u=e[9],h=e[10],f=e[11];return e!==t&&(t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[4]=a*i+c*n,t[5]=o*i+u*n,t[6]=s*i+h*n,t[7]=l*i+f*n,t[8]=c*i-a*n,t[9]=u*i-o*n,t[10]=h*i-s*n,t[11]=f*i-l*n,t},t.rotateZ=function(t,e,r){var n=Math.sin(r),i=Math.cos(r),a=e[0],o=e[1],s=e[2],l=e[3],c=e[4],u=e[5],h=e[6],f=e[7];return e!==t&&(t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=a*i+c*n,t[1]=o*i+u*n,t[2]=s*i+h*n,t[3]=l*i+f*n,t[4]=c*i-a*n,t[5]=u*i-o*n,t[6]=h*i-s*n,t[7]=f*i-l*n,t},t.scale=function(t,e,r){var n=r[0],i=r[1],a=r[2];return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t[3]=e[3]*n,t[4]=e[4]*i,t[5]=e[5]*i,t[6]=e[6]*i,t[7]=e[7]*i,t[8]=e[8]*a,t[9]=e[9]*a,t[10]=e[10]*a,t[11]=e[11]*a,t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t},t.scale$1=function(t,e,r){return t[0]=e[0]*r,t[1]=e[1]*r,t[2]=e[2]*r,t[3]=e[3]*r,t},t.scale$2=function(t,e,r){return t[0]=e[0]*r,t[1]=e[1]*r,t[2]=e[2]*r,t},t.setCacheLimits=function(t,e){ht=t,ft=e},t.setRTLTextPlugin=function(t,e,r){if(void 0===r&&(r=!1),Mi===bi||Mi===wi||Mi===Ti)throw new Error(\"setRTLTextPlugin cannot be called multiple times.\");Si=N.resolveURL(t),Mi=bi,Ai=e,Ci(),r||Pi()},t.sphericalToCartesian=function(t){var e=t[0],r=t[1],n=t[2];return r+=90,r*=Math.PI/180,n*=Math.PI/180,{x:e*Math.cos(r)*Math.sin(n),y:e*Math.sin(r)*Math.sin(n),z:e*Math.cos(n)}},t.sqrLen=Ho,t.styleSpec=Ft,t.sub=Vo,t.symbolSize=Cc,t.transformMat3=function(t,e,r){var n=e[0],i=e[1],a=e[2];return t[0]=n*r[0]+i*r[3]+a*r[6],t[1]=n*r[1]+i*r[4]+a*r[7],t[2]=n*r[2]+i*r[5]+a*r[8],t},t.transformMat4=qo,t.translate=function(t,e,r){var n,i,a,o,s,l,c,u,h,f,p,d,m=r[0],g=r[1],y=r[2];return e===t?(t[12]=e[0]*m+e[4]*g+e[8]*y+e[12],t[13]=e[1]*m+e[5]*g+e[9]*y+e[13],t[14]=e[2]*m+e[6]*g+e[10]*y+e[14],t[15]=e[3]*m+e[7]*g+e[11]*y+e[15]):(n=e[0],i=e[1],a=e[2],o=e[3],s=e[4],l=e[5],c=e[6],u=e[7],h=e[8],f=e[9],p=e[10],d=e[11],t[0]=n,t[1]=i,t[2]=a,t[3]=o,t[4]=s,t[5]=l,t[6]=c,t[7]=u,t[8]=h,t[9]=f,t[10]=p,t[11]=d,t[12]=n*m+s*g+h*y+e[12],t[13]=i*m+l*g+f*y+e[13],t[14]=a*m+c*g+p*y+e[14],t[15]=o*m+u*g+d*y+e[15]),t},t.triggerPluginCompletionEvent=Ei,t.uniqueId=m,t.validateCustomStyleLayer=function(t){var e=[],r=t.id;return void 0===r&&e.push({message:\"layers.\"+r+': missing required property \"id\"'}),void 0===t.render&&e.push({message:\"layers.\"+r+': missing required method \"render\"'}),t.renderingMode&&\"2d\"!==t.renderingMode&&\"3d\"!==t.renderingMode&&e.push({message:\"layers.\"+r+': property \"renderingMode\" must be either \"2d\" or \"3d\"'}),e},t.validateLight=$n,t.validateStyle=Xn,t.values=function(t){var e=[];for(var r in t)e.push(t[r]);return e},t.vectorTile=tl,t.version=r,t.warnOnce=k,t.webpSupported=U,t.window=s,t.wrap=f})),n(0,(function(t){function e(t){var r=typeof t;if(\"number\"===r||\"boolean\"===r||\"string\"===r||null==t)return JSON.stringify(t);if(Array.isArray(t)){for(var n=\"[\",i=0,a=t;i<a.length;i+=1)n+=e(a[i])+\",\";return n+\"]\"}for(var o=Object.keys(t).sort(),s=\"{\",l=0;l<o.length;l++)s+=JSON.stringify(o[l])+\":\"+e(t[o[l]])+\",\";return s+\"}\"}function r(r){for(var n=\"\",i=0,a=t.refProperties;i<a.length;i+=1)n+=\"/\"+e(r[a[i]]);return n}var n=function(t){this.keyCache={},t&&this.replace(t)};n.prototype.replace=function(t){this._layerConfigs={},this._layers={},this.update(t,[])},n.prototype.update=function(e,n){for(var i=this,a=0,o=e;a<o.length;a+=1){var s=o[a];this._layerConfigs[s.id]=s;var l=this._layers[s.id]=t.createStyleLayer(s);l._featureFilter=t.featureFilter(l.filter),this.keyCache[s.id]&&delete this.keyCache[s.id]}for(var c=0,u=n;c<u.length;c+=1){var h=u[c];delete this.keyCache[h],delete this._layerConfigs[h],delete this._layers[h]}this.familiesBySource={};for(var f=0,p=function(t,e){for(var n={},i=0;i<t.length;i++){var a=e&&e[t[i].id]||r(t[i]);e&&(e[t[i].id]=a);var o=n[a];o||(o=n[a]=[]),o.push(t[i])}var s=[];for(var l in n)s.push(n[l]);return s}(t.values(this._layerConfigs),this.keyCache);f<p.length;f+=1){var d=p[f].map((function(t){return i._layers[t.id]})),m=d[0];if(\"none\"!==m.visibility){var g=m.source||\"\",y=this.familiesBySource[g];y||(y=this.familiesBySource[g]={});var v=m.sourceLayer||\"_geojsonTileLayer\",x=y[v];x||(x=y[v]=[]),x.push(d)}}};var i=function(e){var r={},n=[];for(var i in e){var a=e[i],o=r[i]={};for(var s in a){var l=a[+s];if(l&&0!==l.bitmap.width&&0!==l.bitmap.height){var c={x:0,y:0,w:l.bitmap.width+2,h:l.bitmap.height+2};n.push(c),o[s]={rect:c,metrics:l.metrics}}}}var u=t.potpack(n),h=u.w,f=u.h,p=new t.AlphaImage({width:h||1,height:f||1});for(var d in e){var m=e[d];for(var g in m){var y=m[+g];if(y&&0!==y.bitmap.width&&0!==y.bitmap.height){var v=r[d][g].rect;t.AlphaImage.copy(y.bitmap,p,{x:0,y:0},{x:v.x+1,y:v.y+1},y.bitmap)}}}this.image=p,this.positions=r};t.register(\"GlyphAtlas\",i);var a=function(e){this.tileID=new t.OverscaledTileID(e.tileID.overscaledZ,e.tileID.wrap,e.tileID.canonical.z,e.tileID.canonical.x,e.tileID.canonical.y),this.uid=e.uid,this.zoom=e.zoom,this.pixelRatio=e.pixelRatio,this.tileSize=e.tileSize,this.source=e.source,this.overscaling=this.tileID.overscaleFactor(),this.showCollisionBoxes=e.showCollisionBoxes,this.collectResourceTiming=!!e.collectResourceTiming,this.returnDependencies=!!e.returnDependencies,this.promoteId=e.promoteId};function o(e,r,n){for(var i=new t.EvaluationParameters(r),a=0,o=e;a<o.length;a+=1)o[a].recalculate(i,n)}function s(e,r){var n=t.getArrayBuffer(e.request,(function(e,n,i,a){e?r(e):n&&r(null,{vectorTile:new t.vectorTile.VectorTile(new t.pbf(n)),rawData:n,cacheControl:i,expires:a})}));return function(){n.cancel(),r()}}a.prototype.parse=function(e,r,n,a,s){var l=this;this.status=\"parsing\",this.data=e,this.collisionBoxArray=new t.CollisionBoxArray;var c=new t.DictionaryCoder(Object.keys(e.layers).sort()),u=new t.FeatureIndex(this.tileID,this.promoteId);u.bucketLayerIDs=[];var h,f,p,d,m={},g={featureIndex:u,iconDependencies:{},patternDependencies:{},glyphDependencies:{},availableImages:n},y=r.familiesBySource[this.source];for(var v in y){var x=e.layers[v];if(x){1===x.version&&t.warnOnce('Vector tile source \"'+this.source+'\" layer \"'+v+'\" does not use vector tile spec v2 and therefore may have some rendering errors.');for(var _=c.encode(v),b=[],w=0;w<x.length;w++){var T=x.feature(w),k=u.getId(T,v);b.push({feature:T,id:k,index:w,sourceLayerIndex:_})}for(var A=0,M=y[v];A<M.length;A+=1){var S=M[A],E=S[0];E.minzoom&&this.zoom<Math.floor(E.minzoom)||E.maxzoom&&this.zoom>=E.maxzoom||\"none\"!==E.visibility&&(o(S,this.zoom,n),(m[E.id]=E.createBucket({index:u.bucketLayerIDs.length,layers:S,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:_,sourceID:this.source})).populate(b,g,this.tileID.canonical),u.bucketLayerIDs.push(S.map((function(t){return t.id}))))}}}var C=t.mapObject(g.glyphDependencies,(function(t){return Object.keys(t).map(Number)}));Object.keys(C).length?a.send(\"getGlyphs\",{uid:this.uid,stacks:C},(function(t,e){h||(h=t,f=e,P.call(l))})):f={};var L=Object.keys(g.iconDependencies);L.length?a.send(\"getImages\",{icons:L,source:this.source,tileID:this.tileID,type:\"icons\"},(function(t,e){h||(h=t,p=e,P.call(l))})):p={};var I=Object.keys(g.patternDependencies);function P(){if(h)return s(h);if(f&&p&&d){var e=new i(f),r=new t.ImageAtlas(p,d);for(var a in m){var l=m[a];l instanceof t.SymbolBucket?(o(l.layers,this.zoom,n),t.performSymbolLayout(l,f,e.positions,p,r.iconPositions,this.showCollisionBoxes,this.tileID.canonical)):l.hasPattern&&(l instanceof t.LineBucket||l instanceof t.FillBucket||l instanceof t.FillExtrusionBucket)&&(o(l.layers,this.zoom,n),l.addFeatures(g,this.tileID.canonical,r.patternPositions))}this.status=\"done\",s(null,{buckets:t.values(m).filter((function(t){return!t.isEmpty()})),featureIndex:u,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:e.image,imageAtlas:r,glyphMap:this.returnDependencies?f:null,iconMap:this.returnDependencies?p:null,glyphPositions:this.returnDependencies?e.positions:null})}}I.length?a.send(\"getImages\",{icons:I,source:this.source,tileID:this.tileID,type:\"patterns\"},(function(t,e){h||(h=t,d=e,P.call(l))})):d={},P.call(this)};var l=function(t,e,r,n){this.actor=t,this.layerIndex=e,this.availableImages=r,this.loadVectorData=n||s,this.loading={},this.loaded={}};l.prototype.loadTile=function(e,r){var n=this,i=e.uid;this.loading||(this.loading={});var o=!!(e&&e.request&&e.request.collectResourceTiming)&&new t.RequestPerformance(e.request),s=this.loading[i]=new a(e);s.abort=this.loadVectorData(e,(function(e,a){if(delete n.loading[i],e||!a)return s.status=\"done\",n.loaded[i]=s,r(e);var l=a.rawData,c={};a.expires&&(c.expires=a.expires),a.cacheControl&&(c.cacheControl=a.cacheControl);var u={};if(o){var h=o.finish();h&&(u.resourceTiming=JSON.parse(JSON.stringify(h)))}s.vectorTile=a.vectorTile,s.parse(a.vectorTile,n.layerIndex,n.availableImages,n.actor,(function(e,n){if(e||!n)return r(e);r(null,t.extend({rawTileData:l.slice(0)},n,c,u))})),n.loaded=n.loaded||{},n.loaded[i]=s}))},l.prototype.reloadTile=function(t,e){var r=this,n=this.loaded,i=t.uid,a=this;if(n&&n[i]){var o=n[i];o.showCollisionBoxes=t.showCollisionBoxes;var s=function(t,n){var i=o.reloadCallback;i&&(delete o.reloadCallback,o.parse(o.vectorTile,a.layerIndex,r.availableImages,a.actor,i)),e(t,n)};\"parsing\"===o.status?o.reloadCallback=s:\"done\"===o.status&&(o.vectorTile?o.parse(o.vectorTile,this.layerIndex,this.availableImages,this.actor,s):s())}},l.prototype.abortTile=function(t,e){var r=this.loading,n=t.uid;r&&r[n]&&r[n].abort&&(r[n].abort(),delete r[n]),e()},l.prototype.removeTile=function(t,e){var r=this.loaded,n=t.uid;r&&r[n]&&delete r[n],e()};var c=t.window.ImageBitmap,u=function(){this.loaded={}};u.prototype.loadTile=function(e,r){var n=e.uid,i=e.encoding,a=e.rawImageData,o=c&&a instanceof c?this.getImageData(a):a,s=new t.DEMData(n,o,i);this.loaded=this.loaded||{},this.loaded[n]=s,r(null,s)},u.prototype.getImageData=function(e){this.offscreenCanvas&&this.offscreenCanvasContext||(this.offscreenCanvas=new OffscreenCanvas(e.width,e.height),this.offscreenCanvasContext=this.offscreenCanvas.getContext(\"2d\")),this.offscreenCanvas.width=e.width,this.offscreenCanvas.height=e.height,this.offscreenCanvasContext.drawImage(e,0,0,e.width,e.height);var r=this.offscreenCanvasContext.getImageData(-1,-1,e.width+2,e.height+2);return this.offscreenCanvasContext.clearRect(0,0,this.offscreenCanvas.width,this.offscreenCanvas.height),new t.RGBAImage({width:r.width,height:r.height},r.data)},u.prototype.removeTile=function(t){var e=this.loaded,r=t.uid;e&&e[r]&&delete e[r]};var h=function t(e,r){var n,i=e&&e.type;if(\"FeatureCollection\"===i)for(n=0;n<e.features.length;n++)t(e.features[n],r);else if(\"GeometryCollection\"===i)for(n=0;n<e.geometries.length;n++)t(e.geometries[n],r);else if(\"Feature\"===i)t(e.geometry,r);else if(\"Polygon\"===i)f(e.coordinates,r);else if(\"MultiPolygon\"===i)for(n=0;n<e.coordinates.length;n++)f(e.coordinates[n],r);return e};function f(t,e){if(0!==t.length){p(t[0],e);for(var r=1;r<t.length;r++)p(t[r],!e)}}function p(t,e){for(var r=0,n=0,i=t.length,a=i-1;n<i;a=n++)r+=(t[n][0]-t[a][0])*(t[a][1]+t[n][1]);r>=0!=!!e&&t.reverse()}var d=t.vectorTile.VectorTileFeature.prototype.toGeoJSON,m=function(e){this._feature=e,this.extent=t.EXTENT,this.type=e.type,this.properties=e.tags,\"id\"in e&&!isNaN(e.id)&&(this.id=parseInt(e.id,10))};m.prototype.loadGeometry=function(){if(1===this._feature.type){for(var e=[],r=0,n=this._feature.geometry;r<n.length;r+=1){var i=n[r];e.push([new t.Point$1(i[0],i[1])])}return e}for(var a=[],o=0,s=this._feature.geometry;o<s.length;o+=1){for(var l=[],c=0,u=s[o];c<u.length;c+=1){var h=u[c];l.push(new t.Point$1(h[0],h[1]))}a.push(l)}return a},m.prototype.toGeoJSON=function(t,e,r){return d.call(this,t,e,r)};var g=function(e){this.layers={_geojsonTileLayer:this},this.name=\"_geojsonTileLayer\",this.extent=t.EXTENT,this.length=e.length,this._features=e};g.prototype.feature=function(t){return new m(this._features[t])};var y=t.vectorTile.VectorTileFeature,v=x;function x(t,e){this.options=e||{},this.features=t,this.length=t.length}function _(t,e){this.id=\"number\"==typeof t.id?t.id:void 0,this.type=t.type,this.rawGeometry=1===t.type?[t.geometry]:t.geometry,this.properties=t.tags,this.extent=e||4096}x.prototype.feature=function(t){return new _(this.features[t],this.options.extent)},_.prototype.loadGeometry=function(){var e=this.rawGeometry;this.geometry=[];for(var r=0;r<e.length;r++){for(var n=e[r],i=[],a=0;a<n.length;a++)i.push(new t.Point$1(n[a][0],n[a][1]));this.geometry.push(i)}return this.geometry},_.prototype.bbox=function(){this.geometry||this.loadGeometry();for(var t=this.geometry,e=1/0,r=-1/0,n=1/0,i=-1/0,a=0;a<t.length;a++)for(var o=t[a],s=0;s<o.length;s++){var l=o[s];e=Math.min(e,l.x),r=Math.max(r,l.x),n=Math.min(n,l.y),i=Math.max(i,l.y)}return[e,n,r,i]},_.prototype.toGeoJSON=y.prototype.toGeoJSON;var b=A,w=A,T=function(t,e){e=e||{};var r={};for(var n in t)r[n]=new v(t[n].features,e),r[n].name=n,r[n].version=e.version,r[n].extent=e.extent;return A({layers:r})},k=v;function A(e){var r=new t.pbf;return function(t,e){for(var r in t.layers)e.writeMessage(3,M,t.layers[r])}(e,r),r.finish()}function M(t,e){var r;e.writeVarintField(15,t.version||1),e.writeStringField(1,t.name||\"\"),e.writeVarintField(5,t.extent||4096);var n={keys:[],values:[],keycache:{},valuecache:{}};for(r=0;r<t.length;r++)n.feature=t.feature(r),e.writeMessage(2,S,n);var i=n.keys;for(r=0;r<i.length;r++)e.writeStringField(3,i[r]);var a=n.values;for(r=0;r<a.length;r++)e.writeMessage(4,P,a[r])}function S(t,e){var r=t.feature;void 0!==r.id&&e.writeVarintField(1,r.id),e.writeMessage(2,E,t),e.writeVarintField(3,r.type),e.writeMessage(4,I,r)}function E(t,e){var r=t.feature,n=t.keys,i=t.values,a=t.keycache,o=t.valuecache;for(var s in r.properties){var l=a[s];void 0===l&&(n.push(s),l=n.length-1,a[s]=l),e.writeVarint(l);var c=r.properties[s],u=typeof c;\"string\"!==u&&\"boolean\"!==u&&\"number\"!==u&&(c=JSON.stringify(c));var h=u+\":\"+c,f=o[h];void 0===f&&(i.push(c),f=i.length-1,o[h]=f),e.writeVarint(f)}}function C(t,e){return(e<<3)+(7&t)}function L(t){return t<<1^t>>31}function I(t,e){for(var r=t.loadGeometry(),n=t.type,i=0,a=0,o=r.length,s=0;s<o;s++){var l=r[s],c=1;1===n&&(c=l.length),e.writeVarint(C(1,c));for(var u=3===n?l.length-1:l.length,h=0;h<u;h++){1===h&&1!==n&&e.writeVarint(C(2,u-1));var f=l[h].x-i,p=l[h].y-a;e.writeVarint(L(f)),e.writeVarint(L(p)),i+=f,a+=p}3===n&&e.writeVarint(C(7,1))}}function P(t,e){var r=typeof t;\"string\"===r?e.writeStringField(1,t):\"boolean\"===r?e.writeBooleanField(7,t):\"number\"===r&&(t%1!=0?e.writeDoubleField(3,t):t<0?e.writeSVarintField(6,t):e.writeVarintField(5,t))}function z(t,e,r,n,i,a){if(!(i-n<=r)){var o=n+i>>1;O(t,e,o,n,i,a%2),z(t,e,r,n,o-1,a+1),z(t,e,r,o+1,i,a+1)}}function O(t,e,r,n,i,a){for(;i>n;){if(i-n>600){var o=i-n+1,s=r-n+1,l=Math.log(o),c=.5*Math.exp(2*l/3),u=.5*Math.sqrt(l*c*(o-c)/o)*(s-o/2<0?-1:1);O(t,e,r,Math.max(n,Math.floor(r-s*c/o+u)),Math.min(i,Math.floor(r+(o-s)*c/o+u)),a)}var h=e[2*r+a],f=n,p=i;for(D(t,e,n,r),e[2*i+a]>h&&D(t,e,n,i);f<p;){for(D(t,e,f,p),f++,p--;e[2*f+a]<h;)f++;for(;e[2*p+a]>h;)p--}e[2*n+a]===h?D(t,e,n,p):D(t,e,++p,i),p<=r&&(n=p+1),r<=p&&(i=p-1)}}function D(t,e,r,n){R(t,r,n),R(e,2*r,2*n),R(e,2*r+1,2*n+1)}function R(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}function F(t,e,r,n){var i=t-r,a=e-n;return i*i+a*a}b.fromVectorTileJs=w,b.fromGeojsonVt=T,b.GeoJSONWrapper=k;var B=function(t){return t[0]},N=function(t){return t[1]},j=function(t,e,r,n,i){void 0===e&&(e=B),void 0===r&&(r=N),void 0===n&&(n=64),void 0===i&&(i=Float64Array),this.nodeSize=n,this.points=t;for(var a=t.length<65536?Uint16Array:Uint32Array,o=this.ids=new a(t.length),s=this.coords=new i(2*t.length),l=0;l<t.length;l++)o[l]=l,s[2*l]=e(t[l]),s[2*l+1]=r(t[l]);z(o,s,n,0,o.length-1,0)};j.prototype.range=function(t,e,r,n){return function(t,e,r,n,i,a,o){for(var s,l,c=[0,t.length-1,0],u=[];c.length;){var h=c.pop(),f=c.pop(),p=c.pop();if(f-p<=o)for(var d=p;d<=f;d++)s=e[2*d],l=e[2*d+1],s>=r&&s<=i&&l>=n&&l<=a&&u.push(t[d]);else{var m=Math.floor((p+f)/2);s=e[2*m],l=e[2*m+1],s>=r&&s<=i&&l>=n&&l<=a&&u.push(t[m]);var g=(h+1)%2;(0===h?r<=s:n<=l)&&(c.push(p),c.push(m-1),c.push(g)),(0===h?i>=s:a>=l)&&(c.push(m+1),c.push(f),c.push(g))}}return u}(this.ids,this.coords,t,e,r,n,this.nodeSize)},j.prototype.within=function(t,e,r){return function(t,e,r,n,i,a){for(var o=[0,t.length-1,0],s=[],l=i*i;o.length;){var c=o.pop(),u=o.pop(),h=o.pop();if(u-h<=a)for(var f=h;f<=u;f++)F(e[2*f],e[2*f+1],r,n)<=l&&s.push(t[f]);else{var p=Math.floor((h+u)/2),d=e[2*p],m=e[2*p+1];F(d,m,r,n)<=l&&s.push(t[p]);var g=(c+1)%2;(0===c?r-i<=d:n-i<=m)&&(o.push(h),o.push(p-1),o.push(g)),(0===c?r+i>=d:n+i>=m)&&(o.push(p+1),o.push(u),o.push(g))}}return s}(this.ids,this.coords,t,e,r,this.nodeSize)};var U={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:function(t){return t}},V=function(t){this.options=X(Object.create(U),t),this.trees=new Array(this.options.maxZoom+1)};function q(t,e,r,n,i){return{x:t,y:e,zoom:1/0,id:r,parentId:-1,numPoints:n,properties:i}}function H(t,e){var r=t.geometry.coordinates,n=r[0],i=r[1];return{x:W(n),y:Y(i),zoom:1/0,index:e,parentId:-1}}function G(t){return{type:\"Feature\",id:t.id,properties:Z(t),geometry:{type:\"Point\",coordinates:[(n=t.x,360*(n-.5)),(e=t.y,r=(180-360*e)*Math.PI/180,360*Math.atan(Math.exp(r))/Math.PI-90)]}};var e,r,n}function Z(t){var e=t.numPoints,r=e>=1e4?Math.round(e/1e3)+\"k\":e>=1e3?Math.round(e/100)/10+\"k\":e;return X(X({},t.properties),{cluster:!0,cluster_id:t.id,point_count:e,point_count_abbreviated:r})}function W(t){return t/360+.5}function Y(t){var e=Math.sin(t*Math.PI/180),r=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return r<0?0:r>1?1:r}function X(t,e){for(var r in e)t[r]=e[r];return t}function $(t){return t.x}function J(t){return t.y}function K(t,e,r,n){for(var i,a=n,o=r-e>>1,s=r-e,l=t[e],c=t[e+1],u=t[r],h=t[r+1],f=e+3;f<r;f+=3){var p=Q(t[f],t[f+1],l,c,u,h);if(p>a)i=f,a=p;else if(p===a){var d=Math.abs(f-o);d<s&&(i=f,s=d)}}a>n&&(i-e>3&&K(t,e,i,n),t[i+2]=a,r-i>3&&K(t,i,r,n))}function Q(t,e,r,n,i,a){var o=i-r,s=a-n;if(0!==o||0!==s){var l=((t-r)*o+(e-n)*s)/(o*o+s*s);l>1?(r=i,n=a):l>0&&(r+=o*l,n+=s*l)}return(o=t-r)*o+(s=e-n)*s}function tt(t,e,r,n){var i={id:void 0===t?null:t,type:e,geometry:r,tags:n,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};return function(t){var e=t.geometry,r=t.type;if(\"Point\"===r||\"MultiPoint\"===r||\"LineString\"===r)et(t,e);else if(\"Polygon\"===r||\"MultiLineString\"===r)for(var n=0;n<e.length;n++)et(t,e[n]);else if(\"MultiPolygon\"===r)for(n=0;n<e.length;n++)for(var i=0;i<e[n].length;i++)et(t,e[n][i])}(i),i}function et(t,e){for(var r=0;r<e.length;r+=3)t.minX=Math.min(t.minX,e[r]),t.minY=Math.min(t.minY,e[r+1]),t.maxX=Math.max(t.maxX,e[r]),t.maxY=Math.max(t.maxY,e[r+1])}function rt(t,e,r,n){if(e.geometry){var i=e.geometry.coordinates,a=e.geometry.type,o=Math.pow(r.tolerance/((1<<r.maxZoom)*r.extent),2),s=[],l=e.id;if(r.promoteId?l=e.properties[r.promoteId]:r.generateId&&(l=n||0),\"Point\"===a)nt(i,s);else if(\"MultiPoint\"===a)for(var c=0;c<i.length;c++)nt(i[c],s);else if(\"LineString\"===a)it(i,s,o,!1);else if(\"MultiLineString\"===a){if(r.lineMetrics){for(c=0;c<i.length;c++)s=[],it(i[c],s,o,!1),t.push(tt(l,\"LineString\",s,e.properties));return}at(i,s,o,!1)}else if(\"Polygon\"===a)at(i,s,o,!0);else{if(\"MultiPolygon\"!==a){if(\"GeometryCollection\"===a){for(c=0;c<e.geometry.geometries.length;c++)rt(t,{id:l,geometry:e.geometry.geometries[c],properties:e.properties},r,n);return}throw new Error(\"Input data is not a valid GeoJSON object.\")}for(c=0;c<i.length;c++){var u=[];at(i[c],u,o,!0),s.push(u)}}t.push(tt(l,a,s,e.properties))}}function nt(t,e){e.push(ot(t[0])),e.push(st(t[1])),e.push(0)}function it(t,e,r,n){for(var i,a,o=0,s=0;s<t.length;s++){var l=ot(t[s][0]),c=st(t[s][1]);e.push(l),e.push(c),e.push(0),s>0&&(o+=n?(i*c-l*a)/2:Math.sqrt(Math.pow(l-i,2)+Math.pow(c-a,2))),i=l,a=c}var u=e.length-3;e[2]=1,K(e,0,u,r),e[u+2]=1,e.size=Math.abs(o),e.start=0,e.end=e.size}function at(t,e,r,n){for(var i=0;i<t.length;i++){var a=[];it(t[i],a,r,n),e.push(a)}}function ot(t){return t/360+.5}function st(t){var e=Math.sin(t*Math.PI/180),r=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return r<0?0:r>1?1:r}function lt(t,e,r,n,i,a,o,s){if(n/=e,a>=(r/=e)&&o<n)return t;if(o<r||a>=n)return null;for(var l=[],c=0;c<t.length;c++){var u=t[c],h=u.geometry,f=u.type,p=0===i?u.minX:u.minY,d=0===i?u.maxX:u.maxY;if(p>=r&&d<n)l.push(u);else if(!(d<r||p>=n)){var m=[];if(\"Point\"===f||\"MultiPoint\"===f)ct(h,m,r,n,i);else if(\"LineString\"===f)ut(h,m,r,n,i,!1,s.lineMetrics);else if(\"MultiLineString\"===f)ft(h,m,r,n,i,!1);else if(\"Polygon\"===f)ft(h,m,r,n,i,!0);else if(\"MultiPolygon\"===f)for(var g=0;g<h.length;g++){var y=[];ft(h[g],y,r,n,i,!0),y.length&&m.push(y)}if(m.length){if(s.lineMetrics&&\"LineString\"===f){for(g=0;g<m.length;g++)l.push(tt(u.id,f,m[g],u.tags));continue}\"LineString\"!==f&&\"MultiLineString\"!==f||(1===m.length?(f=\"LineString\",m=m[0]):f=\"MultiLineString\"),\"Point\"!==f&&\"MultiPoint\"!==f||(f=3===m.length?\"Point\":\"MultiPoint\"),l.push(tt(u.id,f,m,u.tags))}}}return l.length?l:null}function ct(t,e,r,n,i){for(var a=0;a<t.length;a+=3){var o=t[a+i];o>=r&&o<=n&&(e.push(t[a]),e.push(t[a+1]),e.push(t[a+2]))}}function ut(t,e,r,n,i,a,o){for(var s,l,c=ht(t),u=0===i?dt:mt,h=t.start,f=0;f<t.length-3;f+=3){var p=t[f],d=t[f+1],m=t[f+2],g=t[f+3],y=t[f+4],v=0===i?p:d,x=0===i?g:y,_=!1;o&&(s=Math.sqrt(Math.pow(p-g,2)+Math.pow(d-y,2))),v<r?x>r&&(l=u(c,p,d,g,y,r),o&&(c.start=h+s*l)):v>n?x<n&&(l=u(c,p,d,g,y,n),o&&(c.start=h+s*l)):pt(c,p,d,m),x<r&&v>=r&&(l=u(c,p,d,g,y,r),_=!0),x>n&&v<=n&&(l=u(c,p,d,g,y,n),_=!0),!a&&_&&(o&&(c.end=h+s*l),e.push(c),c=ht(t)),o&&(h+=s)}var b=t.length-3;p=t[b],d=t[b+1],m=t[b+2],(v=0===i?p:d)>=r&&v<=n&&pt(c,p,d,m),b=c.length-3,a&&b>=3&&(c[b]!==c[0]||c[b+1]!==c[1])&&pt(c,c[0],c[1],c[2]),c.length&&e.push(c)}function ht(t){var e=[];return e.size=t.size,e.start=t.start,e.end=t.end,e}function ft(t,e,r,n,i,a){for(var o=0;o<t.length;o++)ut(t[o],e,r,n,i,a,!1)}function pt(t,e,r,n){t.push(e),t.push(r),t.push(n)}function dt(t,e,r,n,i,a){var o=(a-e)/(n-e);return t.push(a),t.push(r+(i-r)*o),t.push(1),o}function mt(t,e,r,n,i,a){var o=(a-r)/(i-r);return t.push(e+(n-e)*o),t.push(a),t.push(1),o}function gt(t,e){for(var r=[],n=0;n<t.length;n++){var i,a=t[n],o=a.type;if(\"Point\"===o||\"MultiPoint\"===o||\"LineString\"===o)i=yt(a.geometry,e);else if(\"MultiLineString\"===o||\"Polygon\"===o){i=[];for(var s=0;s<a.geometry.length;s++)i.push(yt(a.geometry[s],e))}else if(\"MultiPolygon\"===o)for(i=[],s=0;s<a.geometry.length;s++){for(var l=[],c=0;c<a.geometry[s].length;c++)l.push(yt(a.geometry[s][c],e));i.push(l)}r.push(tt(a.id,o,i,a.tags))}return r}function yt(t,e){var r=[];r.size=t.size,void 0!==t.start&&(r.start=t.start,r.end=t.end);for(var n=0;n<t.length;n+=3)r.push(t[n]+e,t[n+1],t[n+2]);return r}function vt(t,e){if(t.transformed)return t;var r,n,i,a=1<<t.z,o=t.x,s=t.y;for(r=0;r<t.features.length;r++){var l=t.features[r],c=l.geometry,u=l.type;if(l.geometry=[],1===u)for(n=0;n<c.length;n+=2)l.geometry.push(xt(c[n],c[n+1],e,a,o,s));else for(n=0;n<c.length;n++){var h=[];for(i=0;i<c[n].length;i+=2)h.push(xt(c[n][i],c[n][i+1],e,a,o,s));l.geometry.push(h)}}return t.transformed=!0,t}function xt(t,e,r,n,i,a){return[Math.round(r*(t*n-i)),Math.round(r*(e*n-a))]}function _t(t,e,r,n,i){for(var a=e===i.maxZoom?0:i.tolerance/((1<<e)*i.extent),o={features:[],numPoints:0,numSimplified:0,numFeatures:0,source:null,x:r,y:n,z:e,transformed:!1,minX:2,minY:1,maxX:-1,maxY:0},s=0;s<t.length;s++){o.numFeatures++,bt(o,t[s],a,i);var l=t[s].minX,c=t[s].minY,u=t[s].maxX,h=t[s].maxY;l<o.minX&&(o.minX=l),c<o.minY&&(o.minY=c),u>o.maxX&&(o.maxX=u),h>o.maxY&&(o.maxY=h)}return o}function bt(t,e,r,n){var i=e.geometry,a=e.type,o=[];if(\"Point\"===a||\"MultiPoint\"===a)for(var s=0;s<i.length;s+=3)o.push(i[s]),o.push(i[s+1]),t.numPoints++,t.numSimplified++;else if(\"LineString\"===a)wt(o,i,t,r,!1,!1);else if(\"MultiLineString\"===a||\"Polygon\"===a)for(s=0;s<i.length;s++)wt(o,i[s],t,r,\"Polygon\"===a,0===s);else if(\"MultiPolygon\"===a)for(var l=0;l<i.length;l++){var c=i[l];for(s=0;s<c.length;s++)wt(o,c[s],t,r,!0,0===s)}if(o.length){var u=e.tags||null;if(\"LineString\"===a&&n.lineMetrics){for(var h in u={},e.tags)u[h]=e.tags[h];u.mapbox_clip_start=i.start/i.size,u.mapbox_clip_end=i.end/i.size}var f={geometry:o,type:\"Polygon\"===a||\"MultiPolygon\"===a?3:\"LineString\"===a||\"MultiLineString\"===a?2:1,tags:u};null!==e.id&&(f.id=e.id),t.features.push(f)}}function wt(t,e,r,n,i,a){var o=n*n;if(n>0&&e.size<(i?o:n))r.numPoints+=e.length/3;else{for(var s=[],l=0;l<e.length;l+=3)(0===n||e[l+2]>o)&&(r.numSimplified++,s.push(e[l]),s.push(e[l+1])),r.numPoints++;i&&function(t,e){for(var r=0,n=0,i=t.length,a=i-2;n<i;a=n,n+=2)r+=(t[n]-t[a])*(t[n+1]+t[a+1]);if(r>0===e)for(n=0,i=t.length;n<i/2;n+=2){var o=t[n],s=t[n+1];t[n]=t[i-2-n],t[n+1]=t[i-1-n],t[i-2-n]=o,t[i-1-n]=s}}(s,a),t.push(s)}}function Tt(t,e){var r=(e=this.options=function(t,e){for(var r in e)t[r]=e[r];return t}(Object.create(this.options),e)).debug;if(r&&console.time(\"preprocess data\"),e.maxZoom<0||e.maxZoom>24)throw new Error(\"maxZoom should be in the 0-24 range\");if(e.promoteId&&e.generateId)throw new Error(\"promoteId and generateId cannot be used together.\");var n=function(t,e){var r=[];if(\"FeatureCollection\"===t.type)for(var n=0;n<t.features.length;n++)rt(r,t.features[n],e,n);else\"Feature\"===t.type?rt(r,t,e):rt(r,{geometry:t},e);return r}(t,e);this.tiles={},this.tileCoords=[],r&&(console.timeEnd(\"preprocess data\"),console.log(\"index: maxZoom: %d, maxPoints: %d\",e.indexMaxZoom,e.indexMaxPoints),console.time(\"generate tiles\"),this.stats={},this.total=0),(n=function(t,e){var r=e.buffer/e.extent,n=t,i=lt(t,1,-1-r,r,0,-1,2,e),a=lt(t,1,1-r,2+r,0,-1,2,e);return(i||a)&&(n=lt(t,1,-r,1+r,0,-1,2,e)||[],i&&(n=gt(i,1).concat(n)),a&&(n=n.concat(gt(a,-1)))),n}(n,e)).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 kt(t,e,r){return 32*((1<<t)*r+e)+t}function At(t,e){var r=t.tileID.canonical;if(!this._geoJSONIndex)return e(null,null);var n=this._geoJSONIndex.getTile(r.z,r.x,r.y);if(!n)return e(null,null);var i=new g(n.features),a=b(i);0===a.byteOffset&&a.byteLength===a.buffer.byteLength||(a=new Uint8Array(a)),e(null,{vectorTile:i,rawData:a.buffer})}V.prototype.load=function(t){var e=this.options,r=e.log,n=e.minZoom,i=e.maxZoom,a=e.nodeSize;r&&console.time(\"total time\");var o=\"prepare \"+t.length+\" points\";r&&console.time(o),this.points=t;for(var s=[],l=0;l<t.length;l++)t[l].geometry&&s.push(H(t[l],l));this.trees[i+1]=new j(s,$,J,a,Float32Array),r&&console.timeEnd(o);for(var c=i;c>=n;c--){var u=+Date.now();s=this._cluster(s,c),this.trees[c]=new j(s,$,J,a,Float32Array),r&&console.log(\"z%d: %d clusters in %dms\",c,s.length,+Date.now()-u)}return r&&console.timeEnd(\"total time\"),this},V.prototype.getClusters=function(t,e){var r=((t[0]+180)%360+360)%360-180,n=Math.max(-90,Math.min(90,t[1])),i=180===t[2]?180:((t[2]+180)%360+360)%360-180,a=Math.max(-90,Math.min(90,t[3]));if(t[2]-t[0]>=360)r=-180,i=180;else if(r>i){var o=this.getClusters([r,n,180,a],e),s=this.getClusters([-180,n,i,a],e);return o.concat(s)}for(var l=this.trees[this._limitZoom(e)],c=[],u=0,h=l.range(W(r),Y(a),W(i),Y(n));u<h.length;u+=1){var f=h[u],p=l.points[f];c.push(p.numPoints?G(p):this.points[p.index])}return c},V.prototype.getChildren=function(t){var e=this._getOriginId(t),r=this._getOriginZoom(t),n=\"No cluster with the specified id.\",i=this.trees[r];if(!i)throw new Error(n);var a=i.points[e];if(!a)throw new Error(n);for(var o=this.options.radius/(this.options.extent*Math.pow(2,r-1)),s=[],l=0,c=i.within(a.x,a.y,o);l<c.length;l+=1){var u=c[l],h=i.points[u];h.parentId===t&&s.push(h.numPoints?G(h):this.points[h.index])}if(0===s.length)throw new Error(n);return s},V.prototype.getLeaves=function(t,e,r){e=e||10,r=r||0;var n=[];return this._appendLeaves(n,t,e,r,0),n},V.prototype.getTile=function(t,e,r){var n=this.trees[this._limitZoom(t)],i=Math.pow(2,t),a=this.options,o=a.extent,s=a.radius/o,l=(r-s)/i,c=(r+1+s)/i,u={features:[]};return this._addTileFeatures(n.range((e-s)/i,l,(e+1+s)/i,c),n.points,e,r,i,u),0===e&&this._addTileFeatures(n.range(1-s/i,l,1,c),n.points,i,r,i,u),e===i-1&&this._addTileFeatures(n.range(0,l,s/i,c),n.points,-1,r,i,u),u.features.length?u:null},V.prototype.getClusterExpansionZoom=function(t){for(var e=this._getOriginZoom(t)-1;e<=this.options.maxZoom;){var r=this.getChildren(t);if(e++,1!==r.length)break;t=r[0].properties.cluster_id}return e},V.prototype._appendLeaves=function(t,e,r,n,i){for(var a=0,o=this.getChildren(e);a<o.length;a+=1){var s=o[a],l=s.properties;if(l&&l.cluster?i+l.point_count<=n?i+=l.point_count:i=this._appendLeaves(t,l.cluster_id,r,n,i):i<n?i++:t.push(s),t.length===r)break}return i},V.prototype._addTileFeatures=function(t,e,r,n,i,a){for(var o=0,s=t;o<s.length;o+=1){var l=e[s[o]],c=l.numPoints,u={type:1,geometry:[[Math.round(this.options.extent*(l.x*i-r)),Math.round(this.options.extent*(l.y*i-n))]],tags:c?Z(l):this.points[l.index].properties},h=void 0;c?h=l.id:this.options.generateId?h=l.index:this.points[l.index].id&&(h=this.points[l.index].id),void 0!==h&&(u.id=h),a.features.push(u)}},V.prototype._limitZoom=function(t){return Math.max(this.options.minZoom,Math.min(+t,this.options.maxZoom+1))},V.prototype._cluster=function(t,e){for(var r=[],n=this.options,i=n.radius,a=n.extent,o=n.reduce,s=n.minPoints,l=i/(a*Math.pow(2,e)),c=0;c<t.length;c++){var u=t[c];if(!(u.zoom<=e)){u.zoom=e;for(var h=this.trees[e+1],f=h.within(u.x,u.y,l),p=u.numPoints||1,d=p,m=0,g=f;m<g.length;m+=1){var y=g[m],v=h.points[y];v.zoom>e&&(d+=v.numPoints||1)}if(d>=s){for(var x=u.x*p,_=u.y*p,b=o&&p>1?this._map(u,!0):null,w=(c<<5)+(e+1)+this.points.length,T=0,k=f;T<k.length;T+=1){var A=k[T],M=h.points[A];if(!(M.zoom<=e)){M.zoom=e;var S=M.numPoints||1;x+=M.x*S,_+=M.y*S,M.parentId=w,o&&(b||(b=this._map(u,!0)),o(b,this._map(M)))}}u.parentId=w,r.push(q(x/d,_/d,w,d,b))}else if(r.push(u),d>1)for(var E=0,C=f;E<C.length;E+=1){var L=C[E],I=h.points[L];I.zoom<=e||(I.zoom=e,r.push(I))}}}return r},V.prototype._getOriginId=function(t){return t-this.points.length>>5},V.prototype._getOriginZoom=function(t){return(t-this.points.length)%32},V.prototype._map=function(t,e){if(t.numPoints)return e?X({},t.properties):t.properties;var r=this.points[t.index].properties,n=this.options.map(r);return e&&n===r?X({},n):n},Tt.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0},Tt.prototype.splitTile=function(t,e,r,n,i,a,o){for(var s=[t,e,r,n],l=this.options,c=l.debug;s.length;){n=s.pop(),r=s.pop(),e=s.pop(),t=s.pop();var u=1<<e,h=kt(e,r,n),f=this.tiles[h];if(!f&&(c>1&&console.time(\"creation\"),f=this.tiles[h]=_t(t,e,r,n,l),this.tileCoords.push({z:e,x:r,y:n}),c)){c>1&&(console.log(\"tile z%d-%d-%d (features: %d, points: %d, simplified: %d)\",e,r,n,f.numFeatures,f.numPoints,f.numSimplified),console.timeEnd(\"creation\"));var p=\"z\"+e;this.stats[p]=(this.stats[p]||0)+1,this.total++}if(f.source=t,i){if(e===l.maxZoom||e===i)continue;var d=1<<i-e;if(r!==Math.floor(a/d)||n!==Math.floor(o/d))continue}else if(e===l.indexMaxZoom||f.numPoints<=l.indexMaxPoints)continue;if(f.source=null,0!==t.length){c>1&&console.time(\"clipping\");var m,g,y,v,x,_,b=.5*l.buffer/l.extent,w=.5-b,T=.5+b,k=1+b;m=g=y=v=null,x=lt(t,u,r-b,r+T,0,f.minX,f.maxX,l),_=lt(t,u,r+w,r+k,0,f.minX,f.maxX,l),t=null,x&&(m=lt(x,u,n-b,n+T,1,f.minY,f.maxY,l),g=lt(x,u,n+w,n+k,1,f.minY,f.maxY,l),x=null),_&&(y=lt(_,u,n-b,n+T,1,f.minY,f.maxY,l),v=lt(_,u,n+w,n+k,1,f.minY,f.maxY,l),_=null),c>1&&console.timeEnd(\"clipping\"),s.push(m||[],e+1,2*r,2*n),s.push(g||[],e+1,2*r,2*n+1),s.push(y||[],e+1,2*r+1,2*n),s.push(v||[],e+1,2*r+1,2*n+1)}}},Tt.prototype.getTile=function(t,e,r){var n=this.options,i=n.extent,a=n.debug;if(t<0||t>24)return null;var o=1<<t,s=kt(t,e=(e%o+o)%o,r);if(this.tiles[s])return vt(this.tiles[s],i);a>1&&console.log(\"drilling down to z%d-%d-%d\",t,e,r);for(var l,c=t,u=e,h=r;!l&&c>0;)c--,u=Math.floor(u/2),h=Math.floor(h/2),l=this.tiles[kt(c,u,h)];return l&&l.source?(a>1&&console.log(\"found parent tile z%d-%d-%d\",c,u,h),a>1&&console.time(\"drilling down\"),this.splitTile(l.source,c,u,h,t,e,r),a>1&&console.timeEnd(\"drilling down\"),this.tiles[s]?vt(this.tiles[s],i):null):null};var Mt=function(e){function r(t,r,n,i){e.call(this,t,r,n,At),i&&(this.loadGeoJSON=i)}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.loadData=function(t,e){this._pendingCallback&&this._pendingCallback(null,{abandoned:!0}),this._pendingCallback=e,this._pendingLoadDataParams=t,this._state&&\"Idle\"!==this._state?this._state=\"NeedsLoadData\":(this._state=\"Coalescing\",this._loadData())},r.prototype._loadData=function(){var e=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 t.RequestPerformance(n.request);this.loadGeoJSON(n,(function(a,o){if(a||!o)return r(a);if(\"object\"!=typeof o)return r(new Error(\"Input data given to '\"+n.source+\"' is not a valid GeoJSON object.\"));h(o,!0);try{if(n.filter){var s=t.createExpression(n.filter,{type:\"boolean\",\"property-type\":\"data-driven\",overridable:!1,transition:!1});if(\"error\"===s.result)throw new Error(s.value.map((function(t){return t.key+\": \"+t.message})).join(\", \"));var l=o.features.filter((function(t){return s.value.evaluate({zoom:0},t)}));o={type:\"FeatureCollection\",features:l}}e._geoJSONIndex=n.cluster?new V(function(e){var r=e.superclusterOptions,n=e.clusterProperties;if(!n||!r)return r;for(var i={},a={},o={accumulated:null,zoom:0},s={properties:null},l=Object.keys(n),c=0,u=l;c<u.length;c+=1){var h=u[c],f=n[h],p=f[0],d=f[1],m=t.createExpression(d),g=t.createExpression(\"string\"==typeof p?[p,[\"accumulated\"],[\"get\",h]]:p);i[h]=m.value,a[h]=g.value}return r.map=function(t){s.properties=t;for(var e={},r=0,n=l;r<n.length;r+=1){var a=n[r];e[a]=i[a].evaluate(o,s)}return e},r.reduce=function(t,e){s.properties=e;for(var r=0,n=l;r<n.length;r+=1){var i=n[r];o.accumulated=t[i],t[i]=a[i].evaluate(o,s)}},r}(n)).load(o.features):function(t,e){return new Tt(t,e)}(o,n.geojsonVtOptions)}catch(a){return r(a)}e.loaded={};var c={};if(i){var u=i.finish();u&&(c.resourceTiming={},c.resourceTiming[n.source]=JSON.parse(JSON.stringify(u)))}r(null,c)}))}},r.prototype.coalesce=function(){\"Coalescing\"===this._state?this._state=\"Idle\":\"NeedsLoadData\"===this._state&&(this._state=\"Coalescing\",this._loadData())},r.prototype.reloadTile=function(t,r){var n=this.loaded,i=t.uid;return n&&n[i]?e.prototype.reloadTile.call(this,t,r):this.loadTile(t,r)},r.prototype.loadGeoJSON=function(e,r){if(e.request)t.getJSON(e.request,r);else{if(\"string\"!=typeof e.data)return r(new Error(\"Input data given to '\"+e.source+\"' is not a valid GeoJSON object.\"));try{return r(null,JSON.parse(e.data))}catch(t){return r(new Error(\"Input data given to '\"+e.source+\"' is not a valid GeoJSON object.\"))}}},r.prototype.removeSource=function(t,e){this._pendingCallback&&this._pendingCallback(null,{abandoned:!0}),e()},r.prototype.getClusterExpansionZoom=function(t,e){try{e(null,this._geoJSONIndex.getClusterExpansionZoom(t.clusterId))}catch(t){e(t)}},r.prototype.getClusterChildren=function(t,e){try{e(null,this._geoJSONIndex.getChildren(t.clusterId))}catch(t){e(t)}},r.prototype.getClusterLeaves=function(t,e){try{e(null,this._geoJSONIndex.getLeaves(t.clusterId,t.limit,t.offset))}catch(t){e(t)}},r}(l);var St=function(e){var r=this;this.self=e,this.actor=new t.Actor(e,this),this.layerIndexes={},this.availableImages={},this.workerSourceTypes={vector:l,geojson:Mt},this.workerSources={},this.demWorkerSources={},this.self.registerWorkerSource=function(t,e){if(r.workerSourceTypes[t])throw new Error('Worker source with name \"'+t+'\" already registered.');r.workerSourceTypes[t]=e},this.self.registerRTLTextPlugin=function(e){if(t.plugin.isParsed())throw new Error(\"RTL text plugin already registered.\");t.plugin.applyArabicShaping=e.applyArabicShaping,t.plugin.processBidirectionalText=e.processBidirectionalText,t.plugin.processStyledBidirectionalText=e.processStyledBidirectionalText}};return St.prototype.setReferrer=function(t,e){this.referrer=e},St.prototype.setImages=function(t,e,r){for(var n in this.availableImages[t]=e,this.workerSources[t]){var i=this.workerSources[t][n];for(var a in i)i[a].availableImages=e}r()},St.prototype.setLayers=function(t,e,r){this.getLayerIndex(t).replace(e),r()},St.prototype.updateLayers=function(t,e,r){this.getLayerIndex(t).update(e.layers,e.removedIds),r()},St.prototype.loadTile=function(t,e,r){this.getWorkerSource(t,e.type,e.source).loadTile(e,r)},St.prototype.loadDEMTile=function(t,e,r){this.getDEMWorkerSource(t,e.source).loadTile(e,r)},St.prototype.reloadTile=function(t,e,r){this.getWorkerSource(t,e.type,e.source).reloadTile(e,r)},St.prototype.abortTile=function(t,e,r){this.getWorkerSource(t,e.type,e.source).abortTile(e,r)},St.prototype.removeTile=function(t,e,r){this.getWorkerSource(t,e.type,e.source).removeTile(e,r)},St.prototype.removeDEMTile=function(t,e){this.getDEMWorkerSource(t,e.source).removeTile(e)},St.prototype.removeSource=function(t,e,r){if(this.workerSources[t]&&this.workerSources[t][e.type]&&this.workerSources[t][e.type][e.source]){var n=this.workerSources[t][e.type][e.source];delete this.workerSources[t][e.type][e.source],void 0!==n.removeSource?n.removeSource(e,r):r()}},St.prototype.loadWorkerSource=function(t,e,r){try{this.self.importScripts(e.url),r()}catch(t){r(t.toString())}},St.prototype.syncRTLPluginState=function(e,r,n){try{t.plugin.setState(r);var i=t.plugin.getPluginURL();if(t.plugin.isLoaded()&&!t.plugin.isParsed()&&null!=i){this.self.importScripts(i);var a=t.plugin.isParsed();n(a?void 0:new Error(\"RTL Text Plugin failed to import scripts from \"+i),a)}}catch(t){n(t.toString())}},St.prototype.getAvailableImages=function(t){var e=this.availableImages[t];return e||(e=[]),e},St.prototype.getLayerIndex=function(t){var e=this.layerIndexes[t];return e||(e=this.layerIndexes[t]=new n),e},St.prototype.getWorkerSource=function(t,e,r){var n=this;if(this.workerSources[t]||(this.workerSources[t]={}),this.workerSources[t][e]||(this.workerSources[t][e]={}),!this.workerSources[t][e][r]){var i={send:function(e,r,i){n.actor.send(e,r,i,t)}};this.workerSources[t][e][r]=new this.workerSourceTypes[e](i,this.getLayerIndex(t),this.getAvailableImages(t))}return this.workerSources[t][e][r]},St.prototype.getDEMWorkerSource=function(t,e){return this.demWorkerSources[t]||(this.demWorkerSources[t]={}),this.demWorkerSources[t][e]||(this.demWorkerSources[t][e]=new u),this.demWorkerSources[t][e]},St.prototype.enforceCacheSizeLimit=function(e,r){t.enforceCacheSizeLimit(r)},\"undefined\"!=typeof WorkerGlobalScope&&\"undefined\"!=typeof self&&self instanceof WorkerGlobalScope&&(self.worker=new St(self)),St})),n(0,(function(t){var e=t.createCommonjsModule((function(t){function e(t){return!r(t)}function r(t){return\"undefined\"!=typeof window&&\"undefined\"!=typeof document?Array.prototype&&Array.prototype.every&&Array.prototype.filter&&Array.prototype.forEach&&Array.prototype.indexOf&&Array.prototype.lastIndexOf&&Array.prototype.map&&Array.prototype.some&&Array.prototype.reduce&&Array.prototype.reduceRight&&Array.isArray?Function.prototype&&Function.prototype.bind?Object.keys&&Object.create&&Object.getPrototypeOf&&Object.getOwnPropertyNames&&Object.isSealed&&Object.isFrozen&&Object.isExtensible&&Object.getOwnPropertyDescriptor&&Object.defineProperty&&Object.defineProperties&&Object.seal&&Object.freeze&&Object.preventExtensions?\"JSON\"in window&&\"parse\"in JSON&&\"stringify\"in JSON?function(){if(!(\"Worker\"in window&&\"Blob\"in window&&\"URL\"in window))return!1;var t,e,r=new Blob([\"\"],{type:\"text/javascript\"}),n=URL.createObjectURL(r);try{e=new Worker(n),t=!0}catch(e){t=!1}return e&&e.terminate(),URL.revokeObjectURL(n),t}()?\"Uint8ClampedArray\"in window?ArrayBuffer.isView?function(){var t=document.createElement(\"canvas\");t.width=t.height=1;var e=t.getContext(\"2d\");if(!e)return!1;var r=e.getImageData(0,0,1,1);return r&&r.width===t.width}()?(r=t&&t.failIfMajorPerformanceCaveat,void 0===n[r]&&(n[r]=function(t){var r=function(t){var r=document.createElement(\"canvas\"),n=Object.create(e.webGLContextAttributes);return n.failIfMajorPerformanceCaveat=t,r.probablySupportsContext?r.probablySupportsContext(\"webgl\",n)||r.probablySupportsContext(\"experimental-webgl\",n):r.supportsContext?r.supportsContext(\"webgl\",n)||r.supportsContext(\"experimental-webgl\",n):r.getContext(\"webgl\",n)||r.getContext(\"experimental-webgl\",n)}(t);if(!r)return!1;var n=r.createShader(r.VERTEX_SHADER);return!(!n||r.isContextLost())&&(r.shaderSource(n,\"void main() {}\"),r.compileShader(n),!0===r.getShaderParameter(n,r.COMPILE_STATUS))}(r)),n[r]?void 0:\"insufficient WebGL support\"):\"insufficient Canvas/getImageData support\":\"insufficient ArrayBuffer support\":\"insufficient Uint8ClampedArray support\":\"insufficient worker support\":\"insufficient JSON support\":\"insufficient Object support\":\"insufficient Function support\":\"insufficent Array support\":\"not a browser\";var r}t.exports?t.exports=e:window&&(window.mapboxgl=window.mapboxgl||{},window.mapboxgl.supported=e,window.mapboxgl.notSupportedReason=r);var n={};e.webGLContextAttributes={antialias:!1,alpha:!0,stencil:!0,depth:!0}})),r={create:function(e,r,n){var i=t.window.document.createElement(e);return void 0!==r&&(i.className=r),n&&n.appendChild(i),i},createNS:function(e,r){return t.window.document.createElementNS(e,r)}},n=t.window.document&&t.window.document.documentElement.style;function i(t){if(!n)return t[0];for(var e=0;e<t.length;e++)if(t[e]in n)return t[e];return t[0]}var a,o=i([\"userSelect\",\"MozUserSelect\",\"WebkitUserSelect\",\"msUserSelect\"]);r.disableDrag=function(){n&&o&&(a=n[o],n[o]=\"none\")},r.enableDrag=function(){n&&o&&(n[o]=a)};var s=i([\"transform\",\"WebkitTransform\"]);r.setTransform=function(t,e){t.style[s]=e};var l=!1;try{var c=Object.defineProperty({},\"passive\",{get:function(){l=!0}});t.window.addEventListener(\"test\",c,c),t.window.removeEventListener(\"test\",c,c)}catch(t){l=!1}r.addEventListener=function(t,e,r,n){void 0===n&&(n={}),\"passive\"in n&&l?t.addEventListener(e,r,n):t.addEventListener(e,r,n.capture)},r.removeEventListener=function(t,e,r,n){void 0===n&&(n={}),\"passive\"in n&&l?t.removeEventListener(e,r,n):t.removeEventListener(e,r,n.capture)};var u=function(e){e.preventDefault(),e.stopPropagation(),t.window.removeEventListener(\"click\",u,!0)};function h(t){var e=t.userImage;return!!(e&&e.render&&e.render())&&(t.data.replace(new Uint8Array(e.data.buffer)),!0)}r.suppressClick=function(){t.window.addEventListener(\"click\",u,!0),t.window.setTimeout((function(){t.window.removeEventListener(\"click\",u,!0)}),0)},r.mousePos=function(e,r){var n=e.getBoundingClientRect();return new t.Point(r.clientX-n.left-e.clientLeft,r.clientY-n.top-e.clientTop)},r.touchPos=function(e,r){for(var n=e.getBoundingClientRect(),i=[],a=0;a<r.length;a++)i.push(new t.Point(r[a].clientX-n.left-e.clientLeft,r[a].clientY-n.top-e.clientTop));return i},r.mouseButton=function(e){return void 0!==t.window.InstallTrigger&&2===e.button&&e.ctrlKey&&t.window.navigator.platform.toUpperCase().indexOf(\"MAC\")>=0?0:e.button},r.remove=function(t){t.parentNode&&t.parentNode.removeChild(t)};var f=function(e){function r(){e.call(this),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new t.RGBAImage({width:1,height:1}),this.dirty=!0}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.isLoaded=function(){return this.loaded},r.prototype.setLoaded=function(t){if(this.loaded!==t&&(this.loaded=t,t)){for(var e=0,r=this.requestors;e<r.length;e+=1){var n=r[e],i=n.ids,a=n.callback;this._notify(i,a)}this.requestors=[]}},r.prototype.getImage=function(t){return this.images[t]},r.prototype.addImage=function(t,e){this._validate(t,e)&&(this.images[t]=e)},r.prototype._validate=function(e,r){var n=!0;return this._validateStretch(r.stretchX,r.data&&r.data.width)||(this.fire(new t.ErrorEvent(new Error('Image \"'+e+'\" has invalid \"stretchX\" value'))),n=!1),this._validateStretch(r.stretchY,r.data&&r.data.height)||(this.fire(new t.ErrorEvent(new Error('Image \"'+e+'\" has invalid \"stretchY\" value'))),n=!1),this._validateContent(r.content,r)||(this.fire(new t.ErrorEvent(new Error('Image \"'+e+'\" has invalid \"content\" value'))),n=!1),n},r.prototype._validateStretch=function(t,e){if(!t)return!0;for(var r=0,n=0,i=t;n<i.length;n+=1){var a=i[n];if(a[0]<r||a[1]<a[0]||e<a[1])return!1;r=a[1]}return!0},r.prototype._validateContent=function(t,e){return!(t&&(4!==t.length||t[0]<0||e.data.width<t[0]||t[1]<0||e.data.height<t[1]||t[2]<0||e.data.width<t[2]||t[3]<0||e.data.height<t[3]||t[2]<t[0]||t[3]<t[1]))},r.prototype.updateImage=function(t,e){var r=this.images[t];e.version=r.version+1,this.images[t]=e,this.updatedImages[t]=!0},r.prototype.removeImage=function(t){var e=this.images[t];delete this.images[t],delete this.patterns[t],e.userImage&&e.userImage.onRemove&&e.userImage.onRemove()},r.prototype.listImages=function(){return Object.keys(this.images)},r.prototype.getImages=function(t,e){var r=!0;if(!this.isLoaded())for(var n=0,i=t;n<i.length;n+=1){var a=i[n];this.images[a]||(r=!1)}this.isLoaded()||r?this._notify(t,e):this.requestors.push({ids:t,callback:e})},r.prototype._notify=function(e,r){for(var n={},i=0,a=e;i<a.length;i+=1){var o=a[i];this.images[o]||this.fire(new t.Event(\"styleimagemissing\",{id:o}));var s=this.images[o];s?n[o]={data:s.data.clone(),pixelRatio:s.pixelRatio,sdf:s.sdf,version:s.version,stretchX:s.stretchX,stretchY:s.stretchY,content:s.content,hasRenderCallback:Boolean(s.userImage&&s.userImage.render)}:t.warnOnce('Image \"'+o+'\" could not be loaded. Please make sure you have added the image with map.addImage() or a \"sprite\" property in your style. You can provide missing images by listening for the \"styleimagemissing\" map event.')}r(null,n)},r.prototype.getPixelSize=function(){var t=this.atlasImage;return{width:t.width,height:t.height}},r.prototype.getPattern=function(e){var r=this.patterns[e],n=this.getImage(e);if(!n)return null;if(r&&r.position.version===n.version)return r.position;if(r)r.position.version=n.version;else{var i={w:n.data.width+2,h:n.data.height+2,x:0,y:0},a=new t.ImagePosition(i,n);this.patterns[e]={bin:i,position:a}}return this._updatePatternAtlas(),this.patterns[e].position},r.prototype.bind=function(e){var r=e.gl;this.atlasTexture?this.dirty&&(this.atlasTexture.update(this.atlasImage),this.dirty=!1):this.atlasTexture=new t.Texture(e,this.atlasImage,r.RGBA),this.atlasTexture.bind(r.LINEAR,r.CLAMP_TO_EDGE)},r.prototype._updatePatternAtlas=function(){var e=[];for(var r in this.patterns)e.push(this.patterns[r].bin);var n=t.potpack(e),i=n.w,a=n.h,o=this.atlasImage;for(var s in o.resize({width:i||1,height:a||1}),this.patterns){var l=this.patterns[s].bin,c=l.x+1,u=l.y+1,h=this.images[s].data,f=h.width,p=h.height;t.RGBAImage.copy(h,o,{x:0,y:0},{x:c,y:u},{width:f,height:p}),t.RGBAImage.copy(h,o,{x:0,y:p-1},{x:c,y:u-1},{width:f,height:1}),t.RGBAImage.copy(h,o,{x:0,y:0},{x:c,y:u+p},{width:f,height:1}),t.RGBAImage.copy(h,o,{x:f-1,y:0},{x:c-1,y:u},{width:1,height:p}),t.RGBAImage.copy(h,o,{x:0,y:0},{x:c+f,y:u},{width:1,height:p})}this.dirty=!0},r.prototype.beginFrame=function(){this.callbackDispatchedThisFrame={}},r.prototype.dispatchRenderCallbacks=function(t){for(var e=0,r=t;e<r.length;e+=1){var n=r[e];if(!this.callbackDispatchedThisFrame[n]){this.callbackDispatchedThisFrame[n]=!0;var i=this.images[n];h(i)&&this.updateImage(n,i)}}},r}(t.Evented);var p=g,d=g,m=1e20;function g(t,e,r,n,i,a){this.fontSize=t||24,this.buffer=void 0===e?3:e,this.cutoff=n||.25,this.fontFamily=i||\"sans-serif\",this.fontWeight=a||\"normal\",this.radius=r||8;var o=this.size=this.fontSize+2*this.buffer;this.canvas=document.createElement(\"canvas\"),this.canvas.width=this.canvas.height=o,this.ctx=this.canvas.getContext(\"2d\"),this.ctx.font=this.fontWeight+\" \"+this.fontSize+\"px \"+this.fontFamily,this.ctx.textBaseline=\"middle\",this.ctx.fillStyle=\"black\",this.gridOuter=new Float64Array(o*o),this.gridInner=new Float64Array(o*o),this.f=new Float64Array(o),this.d=new Float64Array(o),this.z=new Float64Array(o+1),this.v=new Int16Array(o),this.middle=Math.round(o/2*(navigator.userAgent.indexOf(\"Gecko/\")>=0?1.2:1))}function y(t,e,r,n,i,a,o){for(var s=0;s<e;s++){for(var l=0;l<r;l++)n[l]=t[l*e+s];for(v(n,i,a,o,r),l=0;l<r;l++)t[l*e+s]=i[l]}for(l=0;l<r;l++){for(s=0;s<e;s++)n[s]=t[l*e+s];for(v(n,i,a,o,e),s=0;s<e;s++)t[l*e+s]=Math.sqrt(i[s])}}function v(t,e,r,n,i){r[0]=0,n[0]=-m,n[1]=+m;for(var a=1,o=0;a<i;a++){for(var s=(t[a]+a*a-(t[r[o]]+r[o]*r[o]))/(2*a-2*r[o]);s<=n[o];)o--,s=(t[a]+a*a-(t[r[o]]+r[o]*r[o]))/(2*a-2*r[o]);r[++o]=a,n[o]=s,n[o+1]=+m}for(a=0,o=0;a<i;a++){for(;n[o+1]<a;)o++;e[a]=(a-r[o])*(a-r[o])+t[r[o]]}}g.prototype.draw=function(t){this.ctx.clearRect(0,0,this.size,this.size),this.ctx.fillText(t,this.buffer,this.middle);for(var e=this.ctx.getImageData(0,0,this.size,this.size),r=new Uint8ClampedArray(this.size*this.size),n=0;n<this.size*this.size;n++){var i=e.data[4*n+3]/255;this.gridOuter[n]=1===i?0:0===i?m:Math.pow(Math.max(0,.5-i),2),this.gridInner[n]=1===i?m:0===i?0:Math.pow(Math.max(0,i-.5),2)}for(y(this.gridOuter,this.size,this.size,this.f,this.d,this.v,this.z),y(this.gridInner,this.size,this.size,this.f,this.d,this.v,this.z),n=0;n<this.size*this.size;n++){var a=this.gridOuter[n]-this.gridInner[n];r[n]=Math.max(0,Math.min(255,Math.round(255-255*(a/this.radius+this.cutoff))))}return r},p.default=d;var x=function(t,e){this.requestManager=t,this.localIdeographFontFamily=e,this.entries={}};x.prototype.setURL=function(t){this.url=t},x.prototype.getGlyphs=function(e,r){var n=this,i=[];for(var a in e)for(var o=0,s=e[a];o<s.length;o+=1){var l=s[o];i.push({stack:a,id:l})}t.asyncAll(i,(function(t,e){var r=t.stack,i=t.id,a=n.entries[r];a||(a=n.entries[r]={glyphs:{},requests:{},ranges:{}});var o=a.glyphs[i];if(void 0===o){if(o=n._tinySDF(a,r,i))return a.glyphs[i]=o,void e(null,{stack:r,id:i,glyph:o});var s=Math.floor(i/256);if(256*s>65535)e(new Error(\"glyphs > 65535 not supported\"));else if(a.ranges[s])e(null,{stack:r,id:i,glyph:o});else{var l=a.requests[s];l||(l=a.requests[s]=[],x.loadGlyphRange(r,s,n.url,n.requestManager,(function(t,e){if(e){for(var r in e)n._doesCharSupportLocalGlyph(+r)||(a.glyphs[+r]=e[+r]);a.ranges[s]=!0}for(var i=0,o=l;i<o.length;i+=1)(0,o[i])(t,e);delete a.requests[s]}))),l.push((function(t,n){t?e(t):n&&e(null,{stack:r,id:i,glyph:n[i]||null})}))}}else e(null,{stack:r,id:i,glyph:o})}),(function(t,e){if(t)r(t);else if(e){for(var n={},i=0,a=e;i<a.length;i+=1){var o=a[i],s=o.stack,l=o.id,c=o.glyph;(n[s]||(n[s]={}))[l]=c&&{id:c.id,bitmap:c.bitmap.clone(),metrics:c.metrics}}r(null,n)}}))},x.prototype._doesCharSupportLocalGlyph=function(e){return!!this.localIdeographFontFamily&&(t.isChar[\"CJK Unified Ideographs\"](e)||t.isChar[\"Hangul Syllables\"](e)||t.isChar.Hiragana(e)||t.isChar.Katakana(e))},x.prototype._tinySDF=function(e,r,n){var i=this.localIdeographFontFamily;if(i&&this._doesCharSupportLocalGlyph(n)){var a=e.tinySDF;if(!a){var o=\"400\";/bold/i.test(r)?o=\"900\":/medium/i.test(r)?o=\"500\":/light/i.test(r)&&(o=\"200\"),a=e.tinySDF=new x.TinySDF(24,3,8,.25,i,o)}return{id:n,bitmap:new t.AlphaImage({width:30,height:30},a.draw(String.fromCharCode(n))),metrics:{width:24,height:24,left:0,top:-8,advance:24}}}},x.loadGlyphRange=function(e,r,n,i,a){var o=256*r,s=o+255,l=i.transformRequest(i.normalizeGlyphsURL(n).replace(\"{fontstack}\",e).replace(\"{range}\",o+\"-\"+s),t.ResourceType.Glyphs);t.getArrayBuffer(l,(function(e,r){if(e)a(e);else if(r){for(var n={},i=0,o=t.parseGlyphPBF(r);i<o.length;i+=1){var s=o[i];n[s.id]=s}a(null,n)}}))},x.TinySDF=p;var _=function(){this.specification=t.styleSpec.light.position};_.prototype.possiblyEvaluate=function(e,r){return t.sphericalToCartesian(e.expression.evaluate(r))},_.prototype.interpolate=function(e,r,n){return{x:t.number(e.x,r.x,n),y:t.number(e.y,r.y,n),z:t.number(e.z,r.z,n)}};var b=new t.Properties({anchor:new t.DataConstantProperty(t.styleSpec.light.anchor),position:new _,color:new t.DataConstantProperty(t.styleSpec.light.color),intensity:new t.DataConstantProperty(t.styleSpec.light.intensity)}),w=\"-transition\",T=function(e){function r(r){e.call(this),this._transitionable=new t.Transitionable(b),this.setLight(r),this._transitioning=this._transitionable.untransitioned()}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.getLight=function(){return this._transitionable.serialize()},r.prototype.setLight=function(e,r){if(void 0===r&&(r={}),!this._validate(t.validateLight,e,r))for(var n in e){var i=e[n];t.endsWith(n,w)?this._transitionable.setTransition(n.slice(0,-11),i):this._transitionable.setValue(n,i)}},r.prototype.updateTransitions=function(t){this._transitioning=this._transitionable.transitioned(t,this._transitioning)},r.prototype.hasTransition=function(){return this._transitioning.hasTransition()},r.prototype.recalculate=function(t){this.properties=this._transitioning.possiblyEvaluate(t)},r.prototype._validate=function(e,r,n){return(!n||!1!==n.validate)&&t.emitValidationErrors(this,e.call(t.validateStyle,t.extend({value:r,style:{glyphs:!0,sprite:!0},styleSpec:t.styleSpec})))},r}(t.Evented),k=function(t,e){this.width=t,this.height=e,this.nextRow=0,this.data=new Uint8Array(this.width*this.height),this.dashEntry={}};k.prototype.getDash=function(t,e){var r=t.join(\",\")+String(e);return this.dashEntry[r]||(this.dashEntry[r]=this.addDash(t,e)),this.dashEntry[r]},k.prototype.getDashRanges=function(t,e,r){var n=[],i=t.length%2==1?-t[t.length-1]*r:0,a=t[0]*r,o=!0;n.push({left:i,right:a,isDash:o,zeroLength:0===t[0]});for(var s=t[0],l=1;l<t.length;l++){o=!o;var c=t[l];i=s*r,a=(s+=c)*r,n.push({left:i,right:a,isDash:o,zeroLength:0===c})}return n},k.prototype.addRoundDash=function(t,e,r){for(var n=e/2,i=-r;i<=r;i++)for(var a=this.nextRow+r+i,o=this.width*a,s=0,l=t[s],c=0;c<this.width;c++){c/l.right>1&&(l=t[++s]);var u=Math.abs(c-l.left),h=Math.abs(c-l.right),f=Math.min(u,h),p=void 0,d=i/r*(n+1);if(l.isDash){var m=n-Math.abs(d);p=Math.sqrt(f*f+m*m)}else p=n-Math.sqrt(f*f+d*d);this.data[o+c]=Math.max(0,Math.min(255,p+128))}},k.prototype.addRegularDash=function(t){for(var e=t.length-1;e>=0;--e){var r=t[e],n=t[e+1];r.zeroLength?t.splice(e,1):n&&n.isDash===r.isDash&&(n.left=r.left,t.splice(e,1))}var i=t[0],a=t[t.length-1];i.isDash===a.isDash&&(i.left=a.left-this.width,a.right=i.right+this.width);for(var o=this.width*this.nextRow,s=0,l=t[s],c=0;c<this.width;c++){c/l.right>1&&(l=t[++s]);var u=Math.abs(c-l.left),h=Math.abs(c-l.right),f=Math.min(u,h),p=l.isDash?f:-f;this.data[o+c]=Math.max(0,Math.min(255,p+128))}},k.prototype.addDash=function(e,r){var n=r?7:0,i=2*n+1;if(this.nextRow+i>this.height)return t.warnOnce(\"LineAtlas out of space\"),null;for(var a=0,o=0;o<e.length;o++)a+=e[o];if(0!==a){var s=this.width/a,l=this.getDashRanges(e,this.width,s);r?this.addRoundDash(l,s,n):this.addRegularDash(l)}var c={y:(this.nextRow+n+.5)/this.height,height:2*n/this.height,width:a};return this.nextRow+=i,this.dirty=!0,c},k.prototype.bind=function(t){var e=t.gl;this.texture?(e.bindTexture(e.TEXTURE_2D,this.texture),this.dirty&&(this.dirty=!1,e.texSubImage2D(e.TEXTURE_2D,0,0,0,this.width,this.height,e.ALPHA,e.UNSIGNED_BYTE,this.data))):(this.texture=e.createTexture(),e.bindTexture(e.TEXTURE_2D,this.texture),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.REPEAT),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.REPEAT),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texImage2D(e.TEXTURE_2D,0,e.ALPHA,this.width,this.height,0,e.ALPHA,e.UNSIGNED_BYTE,this.data))};var A=function e(r,n){this.workerPool=r,this.actors=[],this.currentActor=0,this.id=t.uniqueId();for(var i=this.workerPool.acquire(this.id),a=0;a<i.length;a++){var o=i[a],s=new e.Actor(o,n,this.id);s.name=\"Worker \"+a,this.actors.push(s)}};function M(e,r,n){var i=function(i,a){if(i)return n(i);if(a){var o=t.pick(t.extend(a,e),[\"tiles\",\"minzoom\",\"maxzoom\",\"attribution\",\"mapbox_logo\",\"bounds\",\"scheme\",\"tileSize\",\"encoding\"]);a.vector_layers&&(o.vectorLayers=a.vector_layers,o.vectorLayerIds=o.vectorLayers.map((function(t){return t.id}))),o.tiles=r.canonicalizeTileset(o,e.url),n(null,o)}};return e.url?t.getJSON(r.transformRequest(r.normalizeSourceURL(e.url),t.ResourceType.Source),i):t.browser.frame((function(){return i(null,e)}))}A.prototype.broadcast=function(e,r,n){n=n||function(){},t.asyncAll(this.actors,(function(t,n){t.send(e,r,n)}),n)},A.prototype.getActor=function(){return this.currentActor=(this.currentActor+1)%this.actors.length,this.actors[this.currentActor]},A.prototype.remove=function(){this.actors.forEach((function(t){t.remove()})),this.actors=[],this.workerPool.release(this.id)},A.Actor=t.Actor;var S=function(e,r,n){this.bounds=t.LngLatBounds.convert(this.validateBounds(e)),this.minzoom=r||0,this.maxzoom=n||24};S.prototype.validateBounds=function(t){return Array.isArray(t)&&4===t.length?[Math.max(-180,t[0]),Math.max(-90,t[1]),Math.min(180,t[2]),Math.min(90,t[3])]:[-180,-90,180,90]},S.prototype.contains=function(e){var r=Math.pow(2,e.z),n=Math.floor(t.mercatorXfromLng(this.bounds.getWest())*r),i=Math.floor(t.mercatorYfromLat(this.bounds.getNorth())*r),a=Math.ceil(t.mercatorXfromLng(this.bounds.getEast())*r),o=Math.ceil(t.mercatorYfromLat(this.bounds.getSouth())*r);return e.x>=n&&e.x<a&&e.y>=i&&e.y<o};var E=function(e){function r(r,n,i,a){if(e.call(this),this.id=r,this.dispatcher=i,this.type=\"vector\",this.minzoom=0,this.maxzoom=22,this.scheme=\"xyz\",this.tileSize=512,this.reparseOverscaled=!0,this.isTileClipped=!0,this._loaded=!1,t.extend(this,t.pick(n,[\"url\",\"scheme\",\"tileSize\",\"promoteId\"])),this._options=t.extend({type:\"vector\"},n),this._collectResourceTiming=n.collectResourceTiming,512!==this.tileSize)throw new Error(\"vector tile sources must have a tileSize of 512\");this.setEventedParent(a)}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.load=function(){var e=this;this._loaded=!1,this.fire(new t.Event(\"dataloading\",{dataType:\"source\"})),this._tileJSONRequest=M(this._options,this.map._requestManager,(function(r,n){e._tileJSONRequest=null,e._loaded=!0,r?e.fire(new t.ErrorEvent(r)):n&&(t.extend(e,n),n.bounds&&(e.tileBounds=new S(n.bounds,e.minzoom,e.maxzoom)),t.postTurnstileEvent(n.tiles,e.map._requestManager._customAccessToken),t.postMapLoadEvent(n.tiles,e.map._getMapId(),e.map._requestManager._skuToken,e.map._requestManager._customAccessToken),e.fire(new t.Event(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"})),e.fire(new t.Event(\"data\",{dataType:\"source\",sourceDataType:\"content\"})))}))},r.prototype.loaded=function(){return this._loaded},r.prototype.hasTile=function(t){return!this.tileBounds||this.tileBounds.contains(t.canonical)},r.prototype.onAdd=function(t){this.map=t,this.load()},r.prototype.setSourceProperty=function(t){this._tileJSONRequest&&this._tileJSONRequest.cancel(),t(),this.map.style.sourceCaches[this.id].clearTiles(),this.load()},r.prototype.setTiles=function(t){var e=this;return this.setSourceProperty((function(){e._options.tiles=t})),this},r.prototype.setUrl=function(t){var e=this;return this.setSourceProperty((function(){e.url=t,e._options.url=t})),this},r.prototype.onRemove=function(){this._tileJSONRequest&&(this._tileJSONRequest.cancel(),this._tileJSONRequest=null)},r.prototype.serialize=function(){return t.extend({},this._options)},r.prototype.loadTile=function(e,r){var n=this.map._requestManager.normalizeTileURL(e.tileID.canonical.url(this.tiles,this.scheme)),i={request:this.map._requestManager.transformRequest(n,t.ResourceType.Tile),uid:e.uid,tileID:e.tileID,zoom:e.tileID.overscaledZ,tileSize:this.tileSize*e.tileID.overscaleFactor(),type:this.type,source:this.id,pixelRatio:t.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};function a(n,i){return delete e.request,e.aborted?r(null):n&&404!==n.status?r(n):(i&&i.resourceTiming&&(e.resourceTiming=i.resourceTiming),this.map._refreshExpiredTiles&&i&&e.setExpiryData(i),e.loadVectorData(i,this.map.painter),t.cacheEntryPossiblyAdded(this.dispatcher),r(null),void(e.reloadCallback&&(this.loadTile(e,e.reloadCallback),e.reloadCallback=null)))}i.request.collectResourceTiming=this._collectResourceTiming,e.actor&&\"expired\"!==e.state?\"loading\"===e.state?e.reloadCallback=r:e.request=e.actor.send(\"reloadTile\",i,a.bind(this)):(e.actor=this.dispatcher.getActor(),e.request=e.actor.send(\"loadTile\",i,a.bind(this)))},r.prototype.abortTile=function(t){t.request&&(t.request.cancel(),delete t.request),t.actor&&t.actor.send(\"abortTile\",{uid:t.uid,type:this.type,source:this.id},void 0)},r.prototype.unloadTile=function(t){t.unloadVectorData(),t.actor&&t.actor.send(\"removeTile\",{uid:t.uid,type:this.type,source:this.id},void 0)},r.prototype.hasTransition=function(){return!1},r}(t.Evented),C=function(e){function r(r,n,i,a){e.call(this),this.id=r,this.dispatcher=i,this.setEventedParent(a),this.type=\"raster\",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme=\"xyz\",this.tileSize=512,this._loaded=!1,this._options=t.extend({type:\"raster\"},n),t.extend(this,t.pick(n,[\"url\",\"scheme\",\"tileSize\"]))}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.load=function(){var e=this;this._loaded=!1,this.fire(new t.Event(\"dataloading\",{dataType:\"source\"})),this._tileJSONRequest=M(this._options,this.map._requestManager,(function(r,n){e._tileJSONRequest=null,e._loaded=!0,r?e.fire(new t.ErrorEvent(r)):n&&(t.extend(e,n),n.bounds&&(e.tileBounds=new S(n.bounds,e.minzoom,e.maxzoom)),t.postTurnstileEvent(n.tiles),t.postMapLoadEvent(n.tiles,e.map._getMapId(),e.map._requestManager._skuToken),e.fire(new t.Event(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"})),e.fire(new t.Event(\"data\",{dataType:\"source\",sourceDataType:\"content\"})))}))},r.prototype.loaded=function(){return this._loaded},r.prototype.onAdd=function(t){this.map=t,this.load()},r.prototype.onRemove=function(){this._tileJSONRequest&&(this._tileJSONRequest.cancel(),this._tileJSONRequest=null)},r.prototype.serialize=function(){return t.extend({},this._options)},r.prototype.hasTile=function(t){return!this.tileBounds||this.tileBounds.contains(t.canonical)},r.prototype.loadTile=function(e,r){var n=this,i=this.map._requestManager.normalizeTileURL(e.tileID.canonical.url(this.tiles,this.scheme),this.tileSize);e.request=t.getImage(this.map._requestManager.transformRequest(i,t.ResourceType.Tile),(function(i,a){if(delete e.request,e.aborted)e.state=\"unloaded\",r(null);else if(i)e.state=\"errored\",r(i);else if(a){n.map._refreshExpiredTiles&&e.setExpiryData(a),delete a.cacheControl,delete a.expires;var o=n.map.painter.context,s=o.gl;e.texture=n.map.painter.getTileTexture(a.width),e.texture?e.texture.update(a,{useMipmap:!0}):(e.texture=new t.Texture(o,a,s.RGBA,{useMipmap:!0}),e.texture.bind(s.LINEAR,s.CLAMP_TO_EDGE,s.LINEAR_MIPMAP_NEAREST),o.extTextureFilterAnisotropic&&s.texParameterf(s.TEXTURE_2D,o.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,o.extTextureFilterAnisotropicMax)),e.state=\"loaded\",t.cacheEntryPossiblyAdded(n.dispatcher),r(null)}}))},r.prototype.abortTile=function(t,e){t.request&&(t.request.cancel(),delete t.request),e()},r.prototype.unloadTile=function(t,e){t.texture&&this.map.painter.saveTileTexture(t.texture),e()},r.prototype.hasTransition=function(){return!1},r}(t.Evented),L=function(e){function r(r,n,i,a){e.call(this,r,n,i,a),this.type=\"raster-dem\",this.maxzoom=22,this._options=t.extend({type:\"raster-dem\"},n),this.encoding=n.encoding||\"mapbox\"}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.serialize=function(){return{type:\"raster-dem\",url:this.url,tileSize:this.tileSize,tiles:this.tiles,bounds:this.bounds,encoding:this.encoding}},r.prototype.loadTile=function(e,r){var n=this.map._requestManager.normalizeTileURL(e.tileID.canonical.url(this.tiles,this.scheme),this.tileSize);function i(t,n){t&&(e.state=\"errored\",r(t)),n&&(e.dem=n,e.needsHillshadePrepare=!0,e.state=\"loaded\",r(null))}e.request=t.getImage(this.map._requestManager.transformRequest(n,t.ResourceType.Tile),function(n,a){if(delete e.request,e.aborted)e.state=\"unloaded\",r(null);else if(n)e.state=\"errored\",r(n);else if(a){this.map._refreshExpiredTiles&&e.setExpiryData(a),delete a.cacheControl,delete a.expires;var o=t.window.ImageBitmap&&a instanceof t.window.ImageBitmap&&t.offscreenCanvasSupported()?a:t.browser.getImageData(a,1),s={uid:e.uid,coord:e.tileID,source:this.id,rawImageData:o,encoding:this.encoding};e.actor&&\"expired\"!==e.state||(e.actor=this.dispatcher.getActor(),e.actor.send(\"loadDEMTile\",s,i.bind(this)))}}.bind(this)),e.neighboringTiles=this._getNeighboringTiles(e.tileID)},r.prototype._getNeighboringTiles=function(e){var r=e.canonical,n=Math.pow(2,r.z),i=(r.x-1+n)%n,a=0===r.x?e.wrap-1:e.wrap,o=(r.x+1+n)%n,s=r.x+1===n?e.wrap+1:e.wrap,l={};return l[new t.OverscaledTileID(e.overscaledZ,a,r.z,i,r.y).key]={backfilled:!1},l[new t.OverscaledTileID(e.overscaledZ,s,r.z,o,r.y).key]={backfilled:!1},r.y>0&&(l[new t.OverscaledTileID(e.overscaledZ,a,r.z,i,r.y-1).key]={backfilled:!1},l[new t.OverscaledTileID(e.overscaledZ,e.wrap,r.z,r.x,r.y-1).key]={backfilled:!1},l[new t.OverscaledTileID(e.overscaledZ,s,r.z,o,r.y-1).key]={backfilled:!1}),r.y+1<n&&(l[new t.OverscaledTileID(e.overscaledZ,a,r.z,i,r.y+1).key]={backfilled:!1},l[new t.OverscaledTileID(e.overscaledZ,e.wrap,r.z,r.x,r.y+1).key]={backfilled:!1},l[new t.OverscaledTileID(e.overscaledZ,s,r.z,o,r.y+1).key]={backfilled:!1}),l},r.prototype.unloadTile=function(t){t.demTexture&&this.map.painter.saveTileTexture(t.demTexture),t.fbo&&(t.fbo.destroy(),delete t.fbo),t.dem&&delete t.dem,delete t.neighboringTiles,t.state=\"unloaded\",t.actor&&t.actor.send(\"removeDEMTile\",{uid:t.uid,source:this.id})},r}(C),I=function(e){function r(r,n,i,a){e.call(this),this.id=r,this.type=\"geojson\",this.minzoom=0,this.maxzoom=18,this.tileSize=512,this.isTileClipped=!0,this.reparseOverscaled=!0,this._removed=!1,this._loaded=!1,this.actor=i.getActor(),this.setEventedParent(a),this._data=n.data,this._options=t.extend({},n),this._collectResourceTiming=n.collectResourceTiming,this._resourceTiming=[],void 0!==n.maxzoom&&(this.maxzoom=n.maxzoom),n.type&&(this.type=n.type),n.attribution&&(this.attribution=n.attribution),this.promoteId=n.promoteId;var o=t.EXTENT/this.tileSize;this.workerOptions=t.extend({source:this.id,cluster:n.cluster||!1,geojsonVtOptions:{buffer:(void 0!==n.buffer?n.buffer:128)*o,tolerance:(void 0!==n.tolerance?n.tolerance:.375)*o,extent:t.EXTENT,maxZoom:this.maxzoom,lineMetrics:n.lineMetrics||!1,generateId:n.generateId||!1},superclusterOptions:{maxZoom:void 0!==n.clusterMaxZoom?Math.min(n.clusterMaxZoom,this.maxzoom-1):this.maxzoom-1,minPoints:Math.max(2,n.clusterMinPoints||2),extent:t.EXTENT,radius:(n.clusterRadius||50)*o,log:!1,generateId:n.generateId||!1},clusterProperties:n.clusterProperties,filter:n.filter},n.workerOptions)}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.load=function(){var e=this;this.fire(new t.Event(\"dataloading\",{dataType:\"source\"})),this._updateWorkerData((function(r){if(r)e.fire(new t.ErrorEvent(r));else{var n={dataType:\"source\",sourceDataType:\"metadata\"};e._collectResourceTiming&&e._resourceTiming&&e._resourceTiming.length>0&&(n.resourceTiming=e._resourceTiming,e._resourceTiming=[]),e.fire(new t.Event(\"data\",n))}}))},r.prototype.onAdd=function(t){this.map=t,this.load()},r.prototype.setData=function(e){var r=this;return this._data=e,this.fire(new t.Event(\"dataloading\",{dataType:\"source\"})),this._updateWorkerData((function(e){if(e)r.fire(new t.ErrorEvent(e));else{var n={dataType:\"source\",sourceDataType:\"content\"};r._collectResourceTiming&&r._resourceTiming&&r._resourceTiming.length>0&&(n.resourceTiming=r._resourceTiming,r._resourceTiming=[]),r.fire(new t.Event(\"data\",n))}})),this},r.prototype.getClusterExpansionZoom=function(t,e){return this.actor.send(\"geojson.getClusterExpansionZoom\",{clusterId:t,source:this.id},e),this},r.prototype.getClusterChildren=function(t,e){return this.actor.send(\"geojson.getClusterChildren\",{clusterId:t,source:this.id},e),this},r.prototype.getClusterLeaves=function(t,e,r,n){return this.actor.send(\"geojson.getClusterLeaves\",{source:this.id,clusterId:t,limit:e,offset:r},n),this},r.prototype._updateWorkerData=function(e){var r=this;this._loaded=!1;var n=t.extend({},this.workerOptions),i=this._data;\"string\"==typeof i?(n.request=this.map._requestManager.transformRequest(t.browser.resolveURL(i),t.ResourceType.Source),n.request.collectResourceTiming=this._collectResourceTiming):n.data=JSON.stringify(i),this.actor.send(this.type+\".loadData\",n,(function(t,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),e(t))}))},r.prototype.loaded=function(){return this._loaded},r.prototype.loadTile=function(e,r){var n=this,i=e.actor?\"reloadTile\":\"loadTile\";e.actor=this.actor;var a={type:this.type,uid:e.uid,tileID:e.tileID,zoom:e.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:t.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};e.request=this.actor.send(i,a,(function(t,a){return delete e.request,e.unloadVectorData(),e.aborted?r(null):t?r(t):(e.loadVectorData(a,n.map.painter,\"reloadTile\"===i),r(null))}))},r.prototype.abortTile=function(t){t.request&&(t.request.cancel(),delete t.request),t.aborted=!0},r.prototype.unloadTile=function(t){t.unloadVectorData(),this.actor.send(\"removeTile\",{uid:t.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 t.extend({},this._options,{type:this.type,data:this._data})},r.prototype.hasTransition=function(){return!1},r}(t.Evented),P=t.createLayout([{name:\"a_pos\",type:\"Int16\",components:2},{name:\"a_texture_pos\",type:\"Int16\",components:2}]),z=function(e){function r(t,r,n,i){e.call(this),this.id=t,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 e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.load=function(e,r){var n=this;this._loaded=!1,this.fire(new t.Event(\"dataloading\",{dataType:\"source\"})),this.url=this.options.url,t.getImage(this.map._requestManager.transformRequest(this.url,t.ResourceType.Image),(function(i,a){n._loaded=!0,i?n.fire(new t.ErrorEvent(i)):a&&(n.image=a,e&&(n.coordinates=e),r&&r(),n._finishLoading())}))},r.prototype.loaded=function(){return this._loaded},r.prototype.updateImage=function(t){var e=this;return this.image&&t.url?(this.options.url=t.url,this.load(t.coordinates,(function(){e.texture=null})),this):this},r.prototype._finishLoading=function(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new t.Event(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"})))},r.prototype.onAdd=function(t){this.map=t,this.load()},r.prototype.setCoordinates=function(e){var r=this;this.coordinates=e;var n=e.map(t.MercatorCoordinate.fromLngLat);this.tileID=function(e){for(var r=1/0,n=1/0,i=-1/0,a=-1/0,o=0,s=e;o<s.length;o+=1){var l=s[o];r=Math.min(r,l.x),n=Math.min(n,l.y),i=Math.max(i,l.x),a=Math.max(a,l.y)}var c=i-r,u=a-n,h=Math.max(c,u),f=Math.max(0,Math.floor(-Math.log(h)/Math.LN2)),p=Math.pow(2,f);return new t.CanonicalTileID(f,Math.floor((r+i)/2*p),Math.floor((n+a)/2*p))}(n),this.minzoom=this.maxzoom=this.tileID.z;var i=n.map((function(t){return r.tileID.getTilePoint(t)._round()}));return this._boundsArray=new t.StructArrayLayout4i8,this._boundsArray.emplaceBack(i[0].x,i[0].y,0,0),this._boundsArray.emplaceBack(i[1].x,i[1].y,t.EXTENT,0),this._boundsArray.emplaceBack(i[3].x,i[3].y,0,t.EXTENT),this._boundsArray.emplaceBack(i[2].x,i[2].y,t.EXTENT,t.EXTENT),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new t.Event(\"data\",{dataType:\"source\",sourceDataType:\"content\"})),this},r.prototype.prepare=function(){if(0!==Object.keys(this.tiles).length&&this.image){var e=this.map.painter.context,r=e.gl;for(var n in this.boundsBuffer||(this.boundsBuffer=e.createVertexBuffer(this._boundsArray,P.members)),this.boundsSegments||(this.boundsSegments=t.SegmentVector.simpleSegment(0,0,4,2)),this.texture||(this.texture=new t.Texture(e,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(t,e){this.tileID&&this.tileID.equals(t.tileID.canonical)?(this.tiles[String(t.tileID.wrap)]=t,t.buckets={},e(null)):(t.state=\"errored\",e(null))},r.prototype.serialize=function(){return{type:\"image\",url:this.options.url,coordinates:this.coordinates}},r.prototype.hasTransition=function(){return!1},r}(t.Evented);var O=function(e){function r(t,r,n,i){e.call(this,t,r,n,i),this.roundZoom=!0,this.type=\"video\",this.options=r}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.load=function(){var e=this;this._loaded=!1;var r=this.options;this.urls=[];for(var n=0,i=r.urls;n<i.length;n+=1){var a=i[n];this.urls.push(this.map._requestManager.transformRequest(a,t.ResourceType.Source).url)}t.getVideo(this.urls,(function(r,n){e._loaded=!0,r?e.fire(new t.ErrorEvent(r)):n&&(e.video=n,e.video.loop=!0,e.video.addEventListener(\"playing\",(function(){e.map.triggerRepaint()})),e.map&&e.video.play(),e._finishLoading())}))},r.prototype.pause=function(){this.video&&this.video.pause()},r.prototype.play=function(){this.video&&this.video.play()},r.prototype.seek=function(e){if(this.video){var r=this.video.seekable;e<r.start(0)||e>r.end(0)?this.fire(new t.ErrorEvent(new t.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=e}},r.prototype.getVideo=function(){return this.video},r.prototype.onAdd=function(t){this.map||(this.map=t,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 e=this.map.painter.context,r=e.gl;for(var n in this.boundsBuffer||(this.boundsBuffer=e.createVertexBuffer(this._boundsArray,P.members)),this.boundsSegments||(this.boundsSegments=t.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 t.Texture(e,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),D=function(e){function r(r,n,i,a){e.call(this,r,n,i,a),n.coordinates?Array.isArray(n.coordinates)&&4===n.coordinates.length&&!n.coordinates.some((function(t){return!Array.isArray(t)||2!==t.length||t.some((function(t){return\"number\"!=typeof t}))}))||this.fire(new t.ErrorEvent(new t.ValidationError(\"sources.\"+r,null,'\"coordinates\" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new t.ErrorEvent(new t.ValidationError(\"sources.\"+r,null,'missing required property \"coordinates\"'))),n.animate&&\"boolean\"!=typeof n.animate&&this.fire(new t.ErrorEvent(new t.ValidationError(\"sources.\"+r,null,'optional \"animate\" property must be a boolean value'))),n.canvas?\"string\"==typeof n.canvas||n.canvas instanceof t.window.HTMLCanvasElement||this.fire(new t.ErrorEvent(new t.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 t.ErrorEvent(new t.ValidationError(\"sources.\"+r,null,'missing required property \"canvas\"'))),this.options=n,this.animate=void 0===n.animate||n.animate}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.load=function(){this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof t.window.HTMLCanvasElement?this.options.canvas:t.window.document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()?this.fire(new t.ErrorEvent(new Error(\"Canvas dimensions cannot be less than or equal to zero.\"))):(this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading())},r.prototype.getCanvas=function(){return this.canvas},r.prototype.onAdd=function(t){this.map=t,this.load(),this.canvas&&this.animate&&this.play()},r.prototype.onRemove=function(){this.pause()},r.prototype.prepare=function(){var e=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,e=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,e=!0),!this._hasInvalidDimensions()&&0!==Object.keys(this.tiles).length){var r=this.map.painter.context,n=r.gl;for(var i in this.boundsBuffer||(this.boundsBuffer=r.createVertexBuffer(this._boundsArray,P.members)),this.boundsSegments||(this.boundsSegments=t.SegmentVector.simpleSegment(0,0,4,2)),this.texture?(e||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new t.Texture(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 t=0,e=[this.canvas.width,this.canvas.height];t<e.length;t+=1){var r=e[t];if(isNaN(r)||r<=0)return!0}return!1},r}(z),R={vector:E,raster:C,\"raster-dem\":L,geojson:I,video:O,image:z,canvas:D};function F(e,r){var n=t.identity([]);return t.translate(n,n,[1,1,0]),t.scale(n,n,[.5*e.width,.5*e.height,1]),t.multiply(n,n,e.calculatePosMatrix(r.toUnwrapped()))}function B(t,e,r,n,i,a){var o=function(t,e,r){if(t)for(var n=0,i=t;n<i.length;n+=1){var a=e[i[n]];if(a&&a.source===r&&\"fill-extrusion\"===a.type)return!0}else for(var o in e){var s=e[o];if(s.source===r&&\"fill-extrusion\"===s.type)return!0}return!1}(i&&i.layers,e,t.id),s=a.maxPitchScaleFactor(),l=t.tilesIn(n,s,o);l.sort(N);for(var c=[],u=0,h=l;u<h.length;u+=1){var f=h[u];c.push({wrappedTileID:f.tileID.wrapped().key,queryResults:f.tile.queryRenderedFeatures(e,r,t._state,f.queryGeometry,f.cameraQueryGeometry,f.scale,i,a,s,F(t.transform,f.tileID))})}var p=function(t){for(var e={},r={},n=0,i=t;n<i.length;n+=1){var a=i[n],o=a.queryResults,s=a.wrappedTileID,l=r[s]=r[s]||{};for(var c in o)for(var u=o[c],h=l[c]=l[c]||{},f=e[c]=e[c]||[],p=0,d=u;p<d.length;p+=1){var m=d[p];h[m.featureIndex]||(h[m.featureIndex]=!0,f.push(m))}}return e}(c);for(var d in p)p[d].forEach((function(e){var r=e.feature,n=t.getFeatureState(r.layer[\"source-layer\"],r.id);r.source=r.layer.source,r.layer[\"source-layer\"]&&(r.sourceLayer=r.layer[\"source-layer\"]),r.state=n}));return p}function N(t,e){var r=t.tileID,n=e.tileID;return r.overscaledZ-n.overscaledZ||r.canonical.y-n.canonical.y||r.wrap-n.wrap||r.canonical.x-n.canonical.x}var j=function(t,e){this.max=t,this.onRemove=e,this.reset()};j.prototype.reset=function(){for(var t in this.data)for(var e=0,r=this.data[t];e<r.length;e+=1){var n=r[e];n.timeout&&clearTimeout(n.timeout),this.onRemove(n.value)}return this.data={},this.order=[],this},j.prototype.add=function(t,e,r){var n=this,i=t.wrapped().key;void 0===this.data[i]&&(this.data[i]=[]);var a={value:e,timeout:void 0};if(void 0!==r&&(a.timeout=setTimeout((function(){n.remove(t,a)}),r)),this.data[i].push(a),this.order.push(i),this.order.length>this.max){var o=this._getAndRemoveByKey(this.order[0]);o&&this.onRemove(o)}return this},j.prototype.has=function(t){return t.wrapped().key in this.data},j.prototype.getAndRemove=function(t){return this.has(t)?this._getAndRemoveByKey(t.wrapped().key):null},j.prototype._getAndRemoveByKey=function(t){var e=this.data[t].shift();return e.timeout&&clearTimeout(e.timeout),0===this.data[t].length&&delete this.data[t],this.order.splice(this.order.indexOf(t),1),e.value},j.prototype.getByKey=function(t){var e=this.data[t];return e?e[0].value:null},j.prototype.get=function(t){return this.has(t)?this.data[t.wrapped().key][0].value:null},j.prototype.remove=function(t,e){if(!this.has(t))return this;var r=t.wrapped().key,n=void 0===e?0:this.data[r].indexOf(e),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},j.prototype.setMaxSize=function(t){for(this.max=t;this.order.length>this.max;){var e=this._getAndRemoveByKey(this.order[0]);e&&this.onRemove(e)}return this},j.prototype.filter=function(t){var e=[];for(var r in this.data)for(var n=0,i=this.data[r];n<i.length;n+=1){var a=i[n];t(a.value)||e.push(a)}for(var o=0,s=e;o<s.length;o+=1){var l=s[o];this.remove(l.value.tileID,l)}};var U=function(t,e,r){this.context=t;var n=t.gl;this.buffer=n.createBuffer(),this.dynamicDraw=Boolean(r),this.context.unbindVAO(),t.bindElementBuffer.set(this.buffer),n.bufferData(n.ELEMENT_ARRAY_BUFFER,e.arrayBuffer,this.dynamicDraw?n.DYNAMIC_DRAW:n.STATIC_DRAW),this.dynamicDraw||delete e.arrayBuffer};U.prototype.bind=function(){this.context.bindElementBuffer.set(this.buffer)},U.prototype.updateData=function(t){var e=this.context.gl;this.context.unbindVAO(),this.bind(),e.bufferSubData(e.ELEMENT_ARRAY_BUFFER,0,t.arrayBuffer)},U.prototype.destroy=function(){var t=this.context.gl;this.buffer&&(t.deleteBuffer(this.buffer),delete this.buffer)};var V={Int8:\"BYTE\",Uint8:\"UNSIGNED_BYTE\",Int16:\"SHORT\",Uint16:\"UNSIGNED_SHORT\",Int32:\"INT\",Uint32:\"UNSIGNED_INT\",Float32:\"FLOAT\"},q=function(t,e,r,n){this.length=e.length,this.attributes=r,this.itemSize=e.bytesPerElement,this.dynamicDraw=n,this.context=t;var i=t.gl;this.buffer=i.createBuffer(),t.bindVertexBuffer.set(this.buffer),i.bufferData(i.ARRAY_BUFFER,e.arrayBuffer,this.dynamicDraw?i.DYNAMIC_DRAW:i.STATIC_DRAW),this.dynamicDraw||delete e.arrayBuffer};q.prototype.bind=function(){this.context.bindVertexBuffer.set(this.buffer)},q.prototype.updateData=function(t){var e=this.context.gl;this.bind(),e.bufferSubData(e.ARRAY_BUFFER,0,t.arrayBuffer)},q.prototype.enableAttributes=function(t,e){for(var r=0;r<this.attributes.length;r++){var n=this.attributes[r],i=e.attributes[n.name];void 0!==i&&t.enableVertexAttribArray(i)}},q.prototype.setVertexAttribPointers=function(t,e,r){for(var n=0;n<this.attributes.length;n++){var i=this.attributes[n],a=e.attributes[i.name];void 0!==a&&t.vertexAttribPointer(a,i.components,t[V[i.type]],!1,this.itemSize,i.offset+this.itemSize*(r||0))}},q.prototype.destroy=function(){var t=this.context.gl;this.buffer&&(t.deleteBuffer(this.buffer),delete this.buffer)};var H=function(t){this.gl=t.gl,this.default=this.getDefault(),this.current=this.default,this.dirty=!1};H.prototype.get=function(){return this.current},H.prototype.set=function(t){},H.prototype.getDefault=function(){return this.default},H.prototype.setDefault=function(){this.set(this.default)};var G=function(e){function r(){e.apply(this,arguments)}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.getDefault=function(){return t.Color.transparent},r.prototype.set=function(t){var e=this.current;(t.r!==e.r||t.g!==e.g||t.b!==e.b||t.a!==e.a||this.dirty)&&(this.gl.clearColor(t.r,t.g,t.b,t.a),this.current=t,this.dirty=!1)},r}(H),Z=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getDefault=function(){return 1},e.prototype.set=function(t){(t!==this.current||this.dirty)&&(this.gl.clearDepth(t),this.current=t,this.dirty=!1)},e}(H),W=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getDefault=function(){return 0},e.prototype.set=function(t){(t!==this.current||this.dirty)&&(this.gl.clearStencil(t),this.current=t,this.dirty=!1)},e}(H),Y=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getDefault=function(){return[!0,!0,!0,!0]},e.prototype.set=function(t){var e=this.current;(t[0]!==e[0]||t[1]!==e[1]||t[2]!==e[2]||t[3]!==e[3]||this.dirty)&&(this.gl.colorMask(t[0],t[1],t[2],t[3]),this.current=t,this.dirty=!1)},e}(H),X=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getDefault=function(){return!0},e.prototype.set=function(t){(t!==this.current||this.dirty)&&(this.gl.depthMask(t),this.current=t,this.dirty=!1)},e}(H),$=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getDefault=function(){return 255},e.prototype.set=function(t){(t!==this.current||this.dirty)&&(this.gl.stencilMask(t),this.current=t,this.dirty=!1)},e}(H),J=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getDefault=function(){return{func:this.gl.ALWAYS,ref:0,mask:255}},e.prototype.set=function(t){var e=this.current;(t.func!==e.func||t.ref!==e.ref||t.mask!==e.mask||this.dirty)&&(this.gl.stencilFunc(t.func,t.ref,t.mask),this.current=t,this.dirty=!1)},e}(H),K=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getDefault=function(){var t=this.gl;return[t.KEEP,t.KEEP,t.KEEP]},e.prototype.set=function(t){var e=this.current;(t[0]!==e[0]||t[1]!==e[1]||t[2]!==e[2]||this.dirty)&&(this.gl.stencilOp(t[0],t[1],t[2]),this.current=t,this.dirty=!1)},e}(H),Q=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getDefault=function(){return!1},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;t?e.enable(e.STENCIL_TEST):e.disable(e.STENCIL_TEST),this.current=t,this.dirty=!1}},e}(H),tt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getDefault=function(){return[0,1]},e.prototype.set=function(t){var e=this.current;(t[0]!==e[0]||t[1]!==e[1]||this.dirty)&&(this.gl.depthRange(t[0],t[1]),this.current=t,this.dirty=!1)},e}(H),et=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getDefault=function(){return!1},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;t?e.enable(e.DEPTH_TEST):e.disable(e.DEPTH_TEST),this.current=t,this.dirty=!1}},e}(H),rt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getDefault=function(){return this.gl.LESS},e.prototype.set=function(t){(t!==this.current||this.dirty)&&(this.gl.depthFunc(t),this.current=t,this.dirty=!1)},e}(H),nt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getDefault=function(){return!1},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;t?e.enable(e.BLEND):e.disable(e.BLEND),this.current=t,this.dirty=!1}},e}(H),it=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getDefault=function(){var t=this.gl;return[t.ONE,t.ZERO]},e.prototype.set=function(t){var e=this.current;(t[0]!==e[0]||t[1]!==e[1]||this.dirty)&&(this.gl.blendFunc(t[0],t[1]),this.current=t,this.dirty=!1)},e}(H),at=function(e){function r(){e.apply(this,arguments)}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.getDefault=function(){return t.Color.transparent},r.prototype.set=function(t){var e=this.current;(t.r!==e.r||t.g!==e.g||t.b!==e.b||t.a!==e.a||this.dirty)&&(this.gl.blendColor(t.r,t.g,t.b,t.a),this.current=t,this.dirty=!1)},r}(H),ot=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getDefault=function(){return this.gl.FUNC_ADD},e.prototype.set=function(t){(t!==this.current||this.dirty)&&(this.gl.blendEquation(t),this.current=t,this.dirty=!1)},e}(H),st=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getDefault=function(){return!1},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;t?e.enable(e.CULL_FACE):e.disable(e.CULL_FACE),this.current=t,this.dirty=!1}},e}(H),lt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getDefault=function(){return this.gl.BACK},e.prototype.set=function(t){(t!==this.current||this.dirty)&&(this.gl.cullFace(t),this.current=t,this.dirty=!1)},e}(H),ct=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getDefault=function(){return this.gl.CCW},e.prototype.set=function(t){(t!==this.current||this.dirty)&&(this.gl.frontFace(t),this.current=t,this.dirty=!1)},e}(H),ut=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getDefault=function(){return null},e.prototype.set=function(t){(t!==this.current||this.dirty)&&(this.gl.useProgram(t),this.current=t,this.dirty=!1)},e}(H),ht=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getDefault=function(){return this.gl.TEXTURE0},e.prototype.set=function(t){(t!==this.current||this.dirty)&&(this.gl.activeTexture(t),this.current=t,this.dirty=!1)},e}(H),ft=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getDefault=function(){var t=this.gl;return[0,0,t.drawingBufferWidth,t.drawingBufferHeight]},e.prototype.set=function(t){var e=this.current;(t[0]!==e[0]||t[1]!==e[1]||t[2]!==e[2]||t[3]!==e[3]||this.dirty)&&(this.gl.viewport(t[0],t[1],t[2],t[3]),this.current=t,this.dirty=!1)},e}(H),pt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getDefault=function(){return null},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;e.bindFramebuffer(e.FRAMEBUFFER,t),this.current=t,this.dirty=!1}},e}(H),dt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getDefault=function(){return null},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;e.bindRenderbuffer(e.RENDERBUFFER,t),this.current=t,this.dirty=!1}},e}(H),mt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getDefault=function(){return null},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;e.bindTexture(e.TEXTURE_2D,t),this.current=t,this.dirty=!1}},e}(H),gt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getDefault=function(){return null},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;e.bindBuffer(e.ARRAY_BUFFER,t),this.current=t,this.dirty=!1}},e}(H),yt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getDefault=function(){return null},e.prototype.set=function(t){var e=this.gl;e.bindBuffer(e.ELEMENT_ARRAY_BUFFER,t),this.current=t,this.dirty=!1},e}(H),vt=function(t){function e(e){t.call(this,e),this.vao=e.extVertexArrayObject}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getDefault=function(){return null},e.prototype.set=function(t){this.vao&&(t!==this.current||this.dirty)&&(this.vao.bindVertexArrayOES(t),this.current=t,this.dirty=!1)},e}(H),xt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getDefault=function(){return 4},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;e.pixelStorei(e.UNPACK_ALIGNMENT,t),this.current=t,this.dirty=!1}},e}(H),_t=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getDefault=function(){return!1},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,t),this.current=t,this.dirty=!1}},e}(H),bt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getDefault=function(){return!1},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,t),this.current=t,this.dirty=!1}},e}(H),wt=function(t){function e(e,r){t.call(this,e),this.context=e,this.parent=r}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.getDefault=function(){return null},e}(H),Tt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.setDirty=function(){this.dirty=!0},e.prototype.set=function(t){if(t!==this.current||this.dirty){this.context.bindFramebuffer.set(this.parent);var e=this.gl;e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,t,0),this.current=t,this.dirty=!1}},e}(wt),kt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.set=function(t){if(t!==this.current||this.dirty){this.context.bindFramebuffer.set(this.parent);var e=this.gl;e.framebufferRenderbuffer(e.FRAMEBUFFER,e.DEPTH_ATTACHMENT,e.RENDERBUFFER,t),this.current=t,this.dirty=!1}},e}(wt),At=function(t,e,r,n){this.context=t,this.width=e,this.height=r;var i=t.gl,a=this.framebuffer=i.createFramebuffer();this.colorAttachment=new Tt(t,a),n&&(this.depthAttachment=new kt(t,a))};At.prototype.destroy=function(){var t=this.context.gl,e=this.colorAttachment.get();if(e&&t.deleteTexture(e),this.depthAttachment){var r=this.depthAttachment.get();r&&t.deleteRenderbuffer(r)}t.deleteFramebuffer(this.framebuffer)};var Mt=function(t,e,r){this.func=t,this.mask=e,this.range=r};Mt.ReadOnly=!1,Mt.ReadWrite=!0,Mt.disabled=new Mt(519,Mt.ReadOnly,[0,1]);var St=7680,Et=function(t,e,r,n,i,a){this.test=t,this.ref=e,this.mask=r,this.fail=n,this.depthFail=i,this.pass=a};Et.disabled=new Et({func:519,mask:0},0,0,St,St,St);var Ct=function(t,e,r){this.blendFunction=t,this.blendColor=e,this.mask=r};Ct.Replace=[1,0],Ct.disabled=new Ct(Ct.Replace,t.Color.transparent,[!1,!1,!1,!1]),Ct.unblended=new Ct(Ct.Replace,t.Color.transparent,[!0,!0,!0,!0]),Ct.alphaBlended=new Ct([1,771],t.Color.transparent,[!0,!0,!0,!0]);var Lt=function(t,e,r){this.enable=t,this.mode=e,this.frontFace=r};Lt.disabled=new Lt(!1,1029,2305),Lt.backCCW=new Lt(!0,1029,2305);var It=function(t){this.gl=t,this.extVertexArrayObject=this.gl.getExtension(\"OES_vertex_array_object\"),this.clearColor=new G(this),this.clearDepth=new Z(this),this.clearStencil=new W(this),this.colorMask=new Y(this),this.depthMask=new X(this),this.stencilMask=new $(this),this.stencilFunc=new J(this),this.stencilOp=new K(this),this.stencilTest=new Q(this),this.depthRange=new tt(this),this.depthTest=new et(this),this.depthFunc=new rt(this),this.blend=new nt(this),this.blendFunc=new it(this),this.blendColor=new at(this),this.blendEquation=new ot(this),this.cullFace=new st(this),this.cullFaceSide=new lt(this),this.frontFace=new ct(this),this.program=new ut(this),this.activeTexture=new ht(this),this.viewport=new ft(this),this.bindFramebuffer=new pt(this),this.bindRenderbuffer=new dt(this),this.bindTexture=new mt(this),this.bindVertexBuffer=new gt(this),this.bindElementBuffer=new yt(this),this.bindVertexArrayOES=this.extVertexArrayObject&&new vt(this),this.pixelStoreUnpack=new xt(this),this.pixelStoreUnpackPremultiplyAlpha=new _t(this),this.pixelStoreUnpackFlipY=new bt(this),this.extTextureFilterAnisotropic=t.getExtension(\"EXT_texture_filter_anisotropic\")||t.getExtension(\"MOZ_EXT_texture_filter_anisotropic\")||t.getExtension(\"WEBKIT_EXT_texture_filter_anisotropic\"),this.extTextureFilterAnisotropic&&(this.extTextureFilterAnisotropicMax=t.getParameter(this.extTextureFilterAnisotropic.MAX_TEXTURE_MAX_ANISOTROPY_EXT)),this.extTextureHalfFloat=t.getExtension(\"OES_texture_half_float\"),this.extTextureHalfFloat&&(t.getExtension(\"OES_texture_half_float_linear\"),this.extRenderToTextureHalfFloat=t.getExtension(\"EXT_color_buffer_half_float\")),this.extTimerQuery=t.getExtension(\"EXT_disjoint_timer_query\"),this.maxTextureSize=t.getParameter(t.MAX_TEXTURE_SIZE)};It.prototype.setDefault=function(){this.unbindVAO(),this.clearColor.setDefault(),this.clearDepth.setDefault(),this.clearStencil.setDefault(),this.colorMask.setDefault(),this.depthMask.setDefault(),this.stencilMask.setDefault(),this.stencilFunc.setDefault(),this.stencilOp.setDefault(),this.stencilTest.setDefault(),this.depthRange.setDefault(),this.depthTest.setDefault(),this.depthFunc.setDefault(),this.blend.setDefault(),this.blendFunc.setDefault(),this.blendColor.setDefault(),this.blendEquation.setDefault(),this.cullFace.setDefault(),this.cullFaceSide.setDefault(),this.frontFace.setDefault(),this.program.setDefault(),this.activeTexture.setDefault(),this.bindFramebuffer.setDefault(),this.pixelStoreUnpack.setDefault(),this.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.pixelStoreUnpackFlipY.setDefault()},It.prototype.setDirty=function(){this.clearColor.dirty=!0,this.clearDepth.dirty=!0,this.clearStencil.dirty=!0,this.colorMask.dirty=!0,this.depthMask.dirty=!0,this.stencilMask.dirty=!0,this.stencilFunc.dirty=!0,this.stencilOp.dirty=!0,this.stencilTest.dirty=!0,this.depthRange.dirty=!0,this.depthTest.dirty=!0,this.depthFunc.dirty=!0,this.blend.dirty=!0,this.blendFunc.dirty=!0,this.blendColor.dirty=!0,this.blendEquation.dirty=!0,this.cullFace.dirty=!0,this.cullFaceSide.dirty=!0,this.frontFace.dirty=!0,this.program.dirty=!0,this.activeTexture.dirty=!0,this.viewport.dirty=!0,this.bindFramebuffer.dirty=!0,this.bindRenderbuffer.dirty=!0,this.bindTexture.dirty=!0,this.bindVertexBuffer.dirty=!0,this.bindElementBuffer.dirty=!0,this.extVertexArrayObject&&(this.bindVertexArrayOES.dirty=!0),this.pixelStoreUnpack.dirty=!0,this.pixelStoreUnpackPremultiplyAlpha.dirty=!0,this.pixelStoreUnpackFlipY.dirty=!0},It.prototype.createIndexBuffer=function(t,e){return new U(this,t,e)},It.prototype.createVertexBuffer=function(t,e,r){return new q(this,t,e,r)},It.prototype.createRenderbuffer=function(t,e,r){var n=this.gl,i=n.createRenderbuffer();return this.bindRenderbuffer.set(i),n.renderbufferStorage(n.RENDERBUFFER,t,e,r),this.bindRenderbuffer.set(null),i},It.prototype.createFramebuffer=function(t,e,r){return new At(this,t,e,r)},It.prototype.clear=function(t){var e=t.color,r=t.depth,n=this.gl,i=0;e&&(i|=n.COLOR_BUFFER_BIT,this.clearColor.set(e),this.colorMask.set([!0,!0,!0,!0])),void 0!==r&&(i|=n.DEPTH_BUFFER_BIT,this.depthRange.set([0,1]),this.clearDepth.set(r),this.depthMask.set(!0)),n.clear(i)},It.prototype.setCullFace=function(t){!1===t.enable?this.cullFace.set(!1):(this.cullFace.set(!0),this.cullFaceSide.set(t.mode),this.frontFace.set(t.frontFace))},It.prototype.setDepthMode=function(t){t.func!==this.gl.ALWAYS||t.mask?(this.depthTest.set(!0),this.depthFunc.set(t.func),this.depthMask.set(t.mask),this.depthRange.set(t.range)):this.depthTest.set(!1)},It.prototype.setStencilMode=function(t){t.test.func!==this.gl.ALWAYS||t.mask?(this.stencilTest.set(!0),this.stencilMask.set(t.mask),this.stencilOp.set([t.fail,t.depthFail,t.pass]),this.stencilFunc.set({func:t.test.func,ref:t.ref,mask:t.test.mask})):this.stencilTest.set(!1)},It.prototype.setColorMode=function(e){t.deepEqual(e.blendFunction,Ct.Replace)?this.blend.set(!1):(this.blend.set(!0),this.blendFunc.set(e.blendFunction),this.blendColor.set(e.blendColor)),this.colorMask.set(e.mask)},It.prototype.unbindVAO=function(){this.extVertexArrayObject&&this.bindVertexArrayOES.set(null)};var Pt=function(e){function r(r,n,i){var a=this;e.call(this),this.id=r,this.dispatcher=i,this.on(\"data\",(function(t){\"source\"===t.dataType&&\"metadata\"===t.sourceDataType&&(a._sourceLoaded=!0),a._sourceLoaded&&!a._paused&&\"source\"===t.dataType&&\"content\"===t.sourceDataType&&(a.reload(),a.transform&&a.update(a.transform))})),this.on(\"error\",(function(){a._sourceErrored=!0})),this._source=function(e,r,n,i){var a=new R[r.type](e,r,n,i);if(a.id!==e)throw new Error(\"Expected Source id to be \"+e+\" instead of \"+a.id);return t.bindAll([\"load\",\"abort\",\"unload\",\"serialize\",\"prepare\"],a),a}(r,n,i,this),this._tiles={},this._cache=new j(0,this._unloadTile.bind(this)),this._timers={},this._cacheTimers={},this._maxTileCacheSize=null,this._loadedParentTiles={},this._coveredTiles={},this._state=new t.SourceFeatureState}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.onAdd=function(t){this.map=t,this._maxTileCacheSize=t?t._maxTileCacheSize:null,this._source&&this._source.onAdd&&this._source.onAdd(t)},r.prototype.onRemove=function(t){this._source&&this._source.onRemove&&this._source.onRemove(t)},r.prototype.loaded=function(){if(this._sourceErrored)return!0;if(!this._sourceLoaded)return!1;if(!this._source.loaded())return!1;for(var t in this._tiles){var e=this._tiles[t];if(\"loaded\"!==e.state&&\"errored\"!==e.state)return!1}return!0},r.prototype.getSource=function(){return this._source},r.prototype.pause=function(){this._paused=!0},r.prototype.resume=function(){if(this._paused){var t=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,t&&this.reload(),this.transform&&this.update(this.transform)}},r.prototype._loadTile=function(t,e){return this._source.loadTile(t,e)},r.prototype._unloadTile=function(t){if(this._source.unloadTile)return this._source.unloadTile(t,(function(){}))},r.prototype._abortTile=function(t){if(this._source.abortTile)return this._source.abortTile(t,(function(){}))},r.prototype.serialize=function(){return this._source.serialize()},r.prototype.prepare=function(t){for(var e in this._source.prepare&&this._source.prepare(),this._state.coalesceChanges(this._tiles,this.map?this.map.painter:null),this._tiles){var r=this._tiles[e];r.upload(t),r.prepare(this.map.style.imageManager)}},r.prototype.getIds=function(){return t.values(this._tiles).map((function(t){return t.tileID})).sort(zt).map((function(t){return t.key}))},r.prototype.getRenderableIds=function(e){var r=this,n=[];for(var i in this._tiles)this._isIdRenderable(i,e)&&n.push(this._tiles[i]);return e?n.sort((function(e,n){var i=e.tileID,a=n.tileID,o=new t.Point(i.canonical.x,i.canonical.y)._rotate(r.transform.angle),s=new t.Point(a.canonical.x,a.canonical.y)._rotate(r.transform.angle);return i.overscaledZ-a.overscaledZ||s.y-o.y||s.x-o.x})).map((function(t){return t.tileID.key})):n.map((function(t){return t.tileID})).sort(zt).map((function(t){return t.key}))},r.prototype.hasRenderableParent=function(t){var e=this.findLoadedParent(t,0);return!!e&&this._isIdRenderable(e.tileID.key)},r.prototype._isIdRenderable=function(t,e){return this._tiles[t]&&this._tiles[t].hasData()&&!this._coveredTiles[t]&&(e||!this._tiles[t].holdingForFade())},r.prototype.reload=function(){if(this._paused)this._shouldReloadOnResume=!0;else for(var t in this._cache.reset(),this._tiles)\"errored\"!==this._tiles[t].state&&this._reloadTile(t,\"reloading\")},r.prototype._reloadTile=function(t,e){var r=this._tiles[t];r&&(\"loading\"!==r.state&&(r.state=e),this._loadTile(r,this._tileLoaded.bind(this,r,t,e)))},r.prototype._tileLoaded=function(e,r,n,i){if(i)return e.state=\"errored\",void(404!==i.status?this._source.fire(new t.ErrorEvent(i,{tile:e})):this.update(this.transform));e.timeAdded=t.browser.now(),\"expired\"===n&&(e.refreshedUponExpiration=!0),this._setTileReloadTimer(r,e),\"raster-dem\"===this.getSource().type&&e.dem&&this._backfillDEM(e),this._state.initializeTileState(e,this.map?this.map.painter:null),this._source.fire(new t.Event(\"data\",{dataType:\"source\",tile:e,coord:e.tileID}))},r.prototype._backfillDEM=function(t){for(var e=this.getRenderableIds(),r=0;r<e.length;r++){var n=e[r];if(t.neighboringTiles&&t.neighboringTiles[n]){var i=this.getTileByID(n);a(t,i),a(i,t)}}function a(t,e){t.needsHillshadePrepare=!0;var r=e.tileID.canonical.x-t.tileID.canonical.x,n=e.tileID.canonical.y-t.tileID.canonical.y,i=Math.pow(2,t.tileID.canonical.z),a=e.tileID.key;0===r&&0===n||Math.abs(n)>1||(Math.abs(r)>1&&(1===Math.abs(r+i)?r+=i:1===Math.abs(r-i)&&(r-=i)),e.dem&&t.dem&&(t.dem.backfillBorder(e.dem,r,n),t.neighboringTiles&&t.neighboringTiles[a]&&(t.neighboringTiles[a].backfilled=!0)))}},r.prototype.getTile=function(t){return this.getTileByID(t.key)},r.prototype.getTileByID=function(t){return this._tiles[t]},r.prototype._retainLoadedChildren=function(t,e,r,n){for(var i in this._tiles){var a=this._tiles[i];if(!(n[i]||!a.hasData()||a.tileID.overscaledZ<=e||a.tileID.overscaledZ>r)){for(var o=a.tileID;a&&a.tileID.overscaledZ>e+1;){var s=a.tileID.scaledTo(a.tileID.overscaledZ-1);(a=this._tiles[s.key])&&a.hasData()&&(o=s)}for(var l=o;l.overscaledZ>e;)if(t[(l=l.scaledTo(l.overscaledZ-1)).key]){n[o.key]=o;break}}}},r.prototype.findLoadedParent=function(t,e){if(t.key in this._loadedParentTiles){var r=this._loadedParentTiles[t.key];return r&&r.tileID.overscaledZ>=e?r:null}for(var n=t.overscaledZ-1;n>=e;n--){var i=t.scaledTo(n),a=this._getLoadedTile(i);if(a)return a}},r.prototype._getLoadedTile=function(t){var e=this._tiles[t.key];return e&&e.hasData()?e:this._cache.getByKey(t.wrapped().key)},r.prototype.updateCacheSize=function(t){var e=(Math.ceil(t.width/this._source.tileSize)+1)*(Math.ceil(t.height/this._source.tileSize)+1),r=Math.floor(5*e),n=\"number\"==typeof this._maxTileCacheSize?Math.min(this._maxTileCacheSize,r):r;this._cache.setMaxSize(n)},r.prototype.handleWrapJump=function(t){var e=(t-(void 0===this._prevLng?t:this._prevLng))/360,r=Math.round(e);if(this._prevLng=t,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(e){var n=this;if(this.transform=e,this._sourceLoaded&&!this._paused){var i;this.updateCacheSize(e),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={},this.used?this._source.tileID?i=e.getVisibleUnwrappedCoordinates(this._source.tileID).map((function(e){return new t.OverscaledTileID(e.canonical.z,e.wrap,e.canonical.z,e.canonical.x,e.canonical.y)})):(i=e.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}),this._source.hasTile&&(i=i.filter((function(t){return n._source.hasTile(t)})))):i=[];var a=e.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(Ot(this._source.type)){for(var c={},u={},h=0,f=Object.keys(l);h<f.length;h+=1){var p=f[h],d=l[p],m=this._tiles[p];if(m&&!(m.fadeEndTime&&m.fadeEndTime<=t.browser.now())){var g=this.findLoadedParent(d,o);g&&(this._addTile(g.tileID),c[g.tileID.key]=g.tileID),u[p]=d}}for(var y in this._retainLoadedChildren(u,a,s,l),c)l[y]||(this._coveredTiles[y]=!0,l[y]=c[y])}for(var v in l)this._tiles[v].clearFadeHold();for(var x=0,_=t.keysDifference(this._tiles,l);x<_.length;x+=1){var b=_[x],w=this._tiles[b];w.hasSymbolBuckets&&!w.holdingForFade()?w.setHoldDuration(this.map._fadeDuration):w.hasSymbolBuckets&&!w.symbolFadeFinished()||this._removeTile(b)}this._updateLoadedParentTileCache()}},r.prototype.releaseSymbolFadeTiles=function(){for(var t in this._tiles)this._tiles[t].holdingForFade()&&this._removeTile(t)},r.prototype._updateRetainedTiles=function(t,e){for(var n={},i={},a=Math.max(e-r.maxOverzooming,this._source.minzoom),o=Math.max(e+r.maxUnderzooming,this._source.minzoom),s={},l=0,c=t;l<c.length;l+=1){var u=c[l],h=this._addTile(u);n[u.key]=u,h.hasData()||e<this._source.maxzoom&&(s[u.key]=u)}this._retainLoadedChildren(s,e,o,n);for(var f=0,p=t;f<p.length;f+=1){var d=p[f],m=this._tiles[d.key];if(!m.hasData()){if(e+1>this._source.maxzoom){var g=d.children(this._source.maxzoom)[0],y=this.getTile(g);if(y&&y.hasData()){n[g.key]=g;continue}}else{var v=d.children(this._source.maxzoom);if(n[v[0].key]&&n[v[1].key]&&n[v[2].key]&&n[v[3].key])continue}for(var x=m.wasRequested(),_=d.overscaledZ-1;_>=a;--_){var b=d.scaledTo(_);if(i[b.key])break;if(i[b.key]=!0,!(m=this.getTile(b))&&x&&(m=this._addTile(b)),m&&(n[b.key]=b,x=m.wasRequested(),m.hasData()))break}}}return n},r.prototype._updateLoadedParentTileCache=function(){for(var t in this._loadedParentTiles={},this._tiles){for(var e=[],r=void 0,n=this._tiles[t].tileID;n.overscaledZ>0;){if(n.key in this._loadedParentTiles){r=this._loadedParentTiles[n.key];break}e.push(n.key);var i=n.scaledTo(n.overscaledZ-1);if(r=this._getLoadedTile(i))break;n=i}for(var a=0,o=e;a<o.length;a+=1){var s=o[a];this._loadedParentTiles[s]=r}}},r.prototype._addTile=function(e){var r=this._tiles[e.key];if(r)return r;(r=this._cache.getAndRemove(e))&&(this._setTileReloadTimer(e.key,r),r.tileID=e,this._state.initializeTileState(r,this.map?this.map.painter:null),this._cacheTimers[e.key]&&(clearTimeout(this._cacheTimers[e.key]),delete this._cacheTimers[e.key],this._setTileReloadTimer(e.key,r)));var n=Boolean(r);return n||(r=new t.Tile(e,this._source.tileSize*e.overscaleFactor()),this._loadTile(r,this._tileLoaded.bind(this,r,e.key,r.state))),r?(r.uses++,this._tiles[e.key]=r,n||this._source.fire(new t.Event(\"dataloading\",{tile:r,coord:r.tileID,dataType:\"source\"})),r):null},r.prototype._setTileReloadTimer=function(t,e){var r=this;t in this._timers&&(clearTimeout(this._timers[t]),delete this._timers[t]);var n=e.getExpiryTimeout();n&&(this._timers[t]=setTimeout((function(){r._reloadTile(t,\"expired\"),delete r._timers[t]}),n))},r.prototype._removeTile=function(t){var e=this._tiles[t];e&&(e.uses--,delete this._tiles[t],this._timers[t]&&(clearTimeout(this._timers[t]),delete this._timers[t]),e.uses>0||(e.hasData()&&\"reloading\"!==e.state?this._cache.add(e.tileID,e,e.getExpiryTimeout()):(e.aborted=!0,this._abortTile(e),this._unloadTile(e))))},r.prototype.clearTiles=function(){for(var t in this._shouldReloadOnResume=!1,this._paused=!1,this._tiles)this._removeTile(t);this._cache.reset()},r.prototype.tilesIn=function(e,r,n){var i=this,a=[],o=this.transform;if(!o)return a;for(var s=n?o.getCameraQueryGeometry(e):e,l=e.map((function(t){return o.pointCoordinate(t)})),c=s.map((function(t){return o.pointCoordinate(t)})),u=this.getIds(),h=1/0,f=1/0,p=-1/0,d=-1/0,m=0,g=c;m<g.length;m+=1){var y=g[m];h=Math.min(h,y.x),f=Math.min(f,y.y),p=Math.max(p,y.x),d=Math.max(d,y.y)}for(var v=function(e){var n=i._tiles[u[e]];if(!n.holdingForFade()){var s=n.tileID,m=Math.pow(2,o.zoom-n.tileID.overscaledZ),g=r*n.queryPadding*t.EXTENT/n.tileSize/m,y=[s.getTilePoint(new t.MercatorCoordinate(h,f)),s.getTilePoint(new t.MercatorCoordinate(p,d))];if(y[0].x-g<t.EXTENT&&y[0].y-g<t.EXTENT&&y[1].x+g>=0&&y[1].y+g>=0){var v=l.map((function(t){return s.getTilePoint(t)})),x=c.map((function(t){return s.getTilePoint(t)}));a.push({tile:n,tileID:s,queryGeometry:v,cameraQueryGeometry:x,scale:m})}}},x=0;x<u.length;x++)v(x);return a},r.prototype.getVisibleCoordinates=function(t){for(var e=this,r=this.getRenderableIds(t).map((function(t){return e._tiles[t].tileID})),n=0,i=r;n<i.length;n+=1){var a=i[n];a.posMatrix=this.transform.calculatePosMatrix(a.toUnwrapped())}return r},r.prototype.hasTransition=function(){if(this._source.hasTransition())return!0;if(Ot(this._source.type))for(var e in this._tiles){var r=this._tiles[e];if(void 0!==r.fadeEndTime&&r.fadeEndTime>=t.browser.now())return!0}return!1},r.prototype.setFeatureState=function(t,e,r){t=t||\"_geojsonTileLayer\",this._state.updateState(t,e,r)},r.prototype.removeFeatureState=function(t,e,r){t=t||\"_geojsonTileLayer\",this._state.removeFeatureState(t,e,r)},r.prototype.getFeatureState=function(t,e){return t=t||\"_geojsonTileLayer\",this._state.getState(t,e)},r.prototype.setDependencies=function(t,e,r){var n=this._tiles[t];n&&n.setDependencies(e,r)},r.prototype.reloadTilesForDependencies=function(t,e){for(var r in this._tiles)this._tiles[r].hasDependency(t,e)&&this._reloadTile(r,\"reloading\");this._cache.filter((function(r){return!r.hasDependency(t,e)}))},r}(t.Evented);function zt(t,e){var r=Math.abs(2*t.wrap)-+(t.wrap<0),n=Math.abs(2*e.wrap)-+(e.wrap<0);return t.overscaledZ-e.overscaledZ||n-r||e.canonical.y-t.canonical.y||e.canonical.x-t.canonical.x}function Ot(t){return\"raster\"===t||\"image\"===t||\"video\"===t}function Dt(){return new t.window.Worker(oa.workerUrl)}Pt.maxOverzooming=10,Pt.maxUnderzooming=3;var Rt=\"mapboxgl_preloaded_worker_pool\",Ft=function(){this.active={}};Ft.prototype.acquire=function(t){if(!this.workers)for(this.workers=[];this.workers.length<Ft.workerCount;)this.workers.push(new Dt);return this.active[t]=!0,this.workers.slice()},Ft.prototype.release=function(t){delete this.active[t],0===this.numActive()&&(this.workers.forEach((function(t){t.terminate()})),this.workers=null)},Ft.prototype.isPreloaded=function(){return!!this.active[Rt]},Ft.prototype.numActive=function(){return Object.keys(this.active).length};var Bt,Nt=Math.floor(t.browser.hardwareConcurrency/2);function jt(){return Bt||(Bt=new Ft),Bt}function Ut(e,r){var n={};for(var i in e)\"ref\"!==i&&(n[i]=e[i]);return t.refProperties.forEach((function(t){t in r&&(n[t]=r[t])})),n}function Vt(t){t=t.slice();for(var e=Object.create(null),r=0;r<t.length;r++)e[t[r].id]=t[r];for(var n=0;n<t.length;n++)\"ref\"in t[n]&&(t[n]=Ut(t[n],e[t[n].ref]));return t}Ft.workerCount=Math.max(Math.min(Nt,6),1);var qt={setStyle:\"setStyle\",addLayer:\"addLayer\",removeLayer:\"removeLayer\",setPaintProperty:\"setPaintProperty\",setLayoutProperty:\"setLayoutProperty\",setFilter:\"setFilter\",addSource:\"addSource\",removeSource:\"removeSource\",setGeoJSONSourceData:\"setGeoJSONSourceData\",setLayerZoomRange:\"setLayerZoomRange\",setLayerProperty:\"setLayerProperty\",setCenter:\"setCenter\",setZoom:\"setZoom\",setBearing:\"setBearing\",setPitch:\"setPitch\",setSprite:\"setSprite\",setGlyphs:\"setGlyphs\",setTransition:\"setTransition\",setLight:\"setLight\"};function Ht(t,e,r){r.push({command:qt.addSource,args:[t,e[t]]})}function Gt(t,e,r){e.push({command:qt.removeSource,args:[t]}),r[t]=!0}function Zt(t,e,r,n){Gt(t,r,n),Ht(t,e,r)}function Wt(e,r,n){var i;for(i in e[n])if(e[n].hasOwnProperty(i)&&\"data\"!==i&&!t.deepEqual(e[n][i],r[n][i]))return!1;for(i in r[n])if(r[n].hasOwnProperty(i)&&\"data\"!==i&&!t.deepEqual(e[n][i],r[n][i]))return!1;return!0}function Yt(e,r,n,i,a,o){var s;for(s in r=r||{},e=e||{})e.hasOwnProperty(s)&&(t.deepEqual(e[s],r[s])||n.push({command:o,args:[i,s,r[s],a]}));for(s in r)r.hasOwnProperty(s)&&!e.hasOwnProperty(s)&&(t.deepEqual(e[s],r[s])||n.push({command:o,args:[i,s,r[s],a]}))}function Xt(t){return t.id}function $t(t,e){return t[e.id]=e,t}function Jt(e,r){if(!e)return[{command:qt.setStyle,args:[r]}];var n=[];try{if(!t.deepEqual(e.version,r.version))return[{command:qt.setStyle,args:[r]}];t.deepEqual(e.center,r.center)||n.push({command:qt.setCenter,args:[r.center]}),t.deepEqual(e.zoom,r.zoom)||n.push({command:qt.setZoom,args:[r.zoom]}),t.deepEqual(e.bearing,r.bearing)||n.push({command:qt.setBearing,args:[r.bearing]}),t.deepEqual(e.pitch,r.pitch)||n.push({command:qt.setPitch,args:[r.pitch]}),t.deepEqual(e.sprite,r.sprite)||n.push({command:qt.setSprite,args:[r.sprite]}),t.deepEqual(e.glyphs,r.glyphs)||n.push({command:qt.setGlyphs,args:[r.glyphs]}),t.deepEqual(e.transition,r.transition)||n.push({command:qt.setTransition,args:[r.transition]}),t.deepEqual(e.light,r.light)||n.push({command:qt.setLight,args:[r.light]});var i={},a=[];!function(e,r,n,i){var a;for(a in r=r||{},e=e||{})e.hasOwnProperty(a)&&(r.hasOwnProperty(a)||Gt(a,n,i));for(a in r)r.hasOwnProperty(a)&&(e.hasOwnProperty(a)?t.deepEqual(e[a],r[a])||(\"geojson\"===e[a].type&&\"geojson\"===r[a].type&&Wt(e,r,a)?n.push({command:qt.setGeoJSONSourceData,args:[a,r[a].data]}):Zt(a,r,n,i)):Ht(a,r,n))}(e.sources,r.sources,a,i);var o=[];e.layers&&e.layers.forEach((function(t){i[t.source]?n.push({command:qt.removeLayer,args:[t.id]}):o.push(t)})),n=n.concat(a),function(e,r,n){r=r||[];var i,a,o,s,l,c,u,h=(e=e||[]).map(Xt),f=r.map(Xt),p=e.reduce($t,{}),d=r.reduce($t,{}),m=h.slice(),g=Object.create(null);for(i=0,a=0;i<h.length;i++)o=h[i],d.hasOwnProperty(o)?a++:(n.push({command:qt.removeLayer,args:[o]}),m.splice(m.indexOf(o,a),1));for(i=0,a=0;i<f.length;i++)o=f[f.length-1-i],m[m.length-1-i]!==o&&(p.hasOwnProperty(o)?(n.push({command:qt.removeLayer,args:[o]}),m.splice(m.lastIndexOf(o,m.length-a),1)):a++,c=m[m.length-i],n.push({command:qt.addLayer,args:[d[o],c]}),m.splice(m.length-i,0,o),g[o]=!0);for(i=0;i<f.length;i++)if(s=p[o=f[i]],l=d[o],!g[o]&&!t.deepEqual(s,l))if(t.deepEqual(s.source,l.source)&&t.deepEqual(s[\"source-layer\"],l[\"source-layer\"])&&t.deepEqual(s.type,l.type)){for(u in Yt(s.layout,l.layout,n,o,null,qt.setLayoutProperty),Yt(s.paint,l.paint,n,o,null,qt.setPaintProperty),t.deepEqual(s.filter,l.filter)||n.push({command:qt.setFilter,args:[o,l.filter]}),t.deepEqual(s.minzoom,l.minzoom)&&t.deepEqual(s.maxzoom,l.maxzoom)||n.push({command:qt.setLayerZoomRange,args:[o,l.minzoom,l.maxzoom]}),s)s.hasOwnProperty(u)&&\"layout\"!==u&&\"paint\"!==u&&\"filter\"!==u&&\"metadata\"!==u&&\"minzoom\"!==u&&\"maxzoom\"!==u&&(0===u.indexOf(\"paint.\")?Yt(s[u],l[u],n,o,u.slice(6),qt.setPaintProperty):t.deepEqual(s[u],l[u])||n.push({command:qt.setLayerProperty,args:[o,u,l[u]]}));for(u in l)l.hasOwnProperty(u)&&!s.hasOwnProperty(u)&&\"layout\"!==u&&\"paint\"!==u&&\"filter\"!==u&&\"metadata\"!==u&&\"minzoom\"!==u&&\"maxzoom\"!==u&&(0===u.indexOf(\"paint.\")?Yt(s[u],l[u],n,o,u.slice(6),qt.setPaintProperty):t.deepEqual(s[u],l[u])||n.push({command:qt.setLayerProperty,args:[o,u,l[u]]}))}else n.push({command:qt.removeLayer,args:[o]}),c=m[m.lastIndexOf(o)+1],n.push({command:qt.addLayer,args:[l,c]})}(o,r.layers,n)}catch(t){console.warn(\"Unable to compute style diff:\",t),n=[{command:qt.setStyle,args:[r]}]}return n}var Kt=function(t,e){this.reset(t,e)};Kt.prototype.reset=function(t,e){this.points=t||[],this._distances=[0];for(var r=1;r<this.points.length;r++)this._distances[r]=this._distances[r-1]+this.points[r].dist(this.points[r-1]);this.length=this._distances[this._distances.length-1],this.padding=Math.min(e||0,.5*this.length),this.paddedLength=this.length-2*this.padding},Kt.prototype.lerp=function(e){if(1===this.points.length)return this.points[0];e=t.clamp(e,0,1);for(var r=1,n=this._distances[r],i=e*this.paddedLength+this.padding;n<i&&r<this._distances.length;)n=this._distances[++r];var a=r-1,o=this._distances[a],s=n-o,l=s>0?(i-o)/s:0;return this.points[a].mult(1-l).add(this.points[r].mult(l))};var Qt=function(t,e,r){var n=this.boxCells=[],i=this.circleCells=[];this.xCellCount=Math.ceil(t/r),this.yCellCount=Math.ceil(e/r);for(var a=0;a<this.xCellCount*this.yCellCount;a++)n.push([]),i.push([]);this.circleKeys=[],this.boxKeys=[],this.bboxes=[],this.circles=[],this.width=t,this.height=e,this.xScale=this.xCellCount/t,this.yScale=this.yCellCount/e,this.boxUid=0,this.circleUid=0};function te(e,r,n,i,a){var o=t.create();return r?(t.scale(o,o,[1/a,1/a,1]),n||t.rotateZ(o,o,i.angle)):t.multiply(o,i.labelPlaneMatrix,e),o}function ee(e,r,n,i,a){if(r){var o=t.clone(e);return t.scale(o,o,[a,a,1]),n||t.rotateZ(o,o,-i.angle),o}return i.glCoordMatrix}function re(e,r){var n=[e.x,e.y,0,1];pe(n,n,r);var i=n[3];return{point:new t.Point(n[0]/i,n[1]/i),signedDistanceFromCamera:i}}function ne(t,e){return.5+t/e*.5}function ie(t,e){var r=t[0]/t[3],n=t[1]/t[3];return r>=-e[0]&&r<=e[0]&&n>=-e[1]&&n<=e[1]}function ae(e,r,n,i,a,o,s,l){var c=i?e.textSizeData:e.iconSizeData,u=t.evaluateSizeForZoom(c,n.transform.zoom),h=[256/n.width*2+1,256/n.height*2+1],f=i?e.text.dynamicLayoutVertexArray:e.icon.dynamicLayoutVertexArray;f.clear();for(var p=e.lineVertexArray,d=i?e.text.placedSymbolArray:e.icon.placedSymbolArray,m=n.transform.width/n.transform.height,g=!1,y=0;y<d.length;y++){var v=d.get(y);if(v.hidden||v.writingMode===t.WritingMode.vertical&&!g)fe(v.numGlyphs,f);else{g=!1;var x=[v.anchorX,v.anchorY,0,1];if(t.transformMat4(x,x,r),ie(x,h)){var _=x[3],b=ne(n.transform.cameraToCenterDistance,_),w=t.evaluateSizeForFeature(c,u,v),T=s?w/b:w*b,k=new t.Point(v.anchorX,v.anchorY),A=re(k,a).point,M={},S=le(v,T,!1,l,r,a,o,e.glyphOffsetArray,p,f,A,k,M,m);g=S.useVertical,(S.notEnoughRoom||g||S.needsFlipping&&le(v,T,!0,l,r,a,o,e.glyphOffsetArray,p,f,A,k,M,m).notEnoughRoom)&&fe(v.numGlyphs,f)}else fe(v.numGlyphs,f)}}i?e.text.dynamicLayoutVertexBuffer.updateData(f):e.icon.dynamicLayoutVertexBuffer.updateData(f)}function oe(t,e,r,n,i,a,o,s,l,c,u){var h=s.glyphStartIndex+s.numGlyphs,f=s.lineStartIndex,p=s.lineStartIndex+s.lineLength,d=e.getoffsetX(s.glyphStartIndex),m=e.getoffsetX(h-1),g=ue(t*d,r,n,i,a,o,s.segment,f,p,l,c,u);if(!g)return null;var y=ue(t*m,r,n,i,a,o,s.segment,f,p,l,c,u);return y?{first:g,last:y}:null}function se(e,r,n,i){return e===t.WritingMode.horizontal&&Math.abs(n.y-r.y)>Math.abs(n.x-r.x)*i?{useVertical:!0}:(e===t.WritingMode.vertical?r.y<n.y:r.x>n.x)?{needsFlipping:!0}:null}function le(e,r,n,i,a,o,s,l,c,u,h,f,p,d){var m,g=r/24,y=e.lineOffsetX*g,v=e.lineOffsetY*g;if(e.numGlyphs>1){var x=e.glyphStartIndex+e.numGlyphs,_=e.lineStartIndex,b=e.lineStartIndex+e.lineLength,w=oe(g,l,y,v,n,h,f,e,c,o,p);if(!w)return{notEnoughRoom:!0};var T=re(w.first.point,s).point,k=re(w.last.point,s).point;if(i&&!n){var A=se(e.writingMode,T,k,d);if(A)return A}m=[w.first];for(var M=e.glyphStartIndex+1;M<x-1;M++)m.push(ue(g*l.getoffsetX(M),y,v,n,h,f,e.segment,_,b,c,o,p));m.push(w.last)}else{if(i&&!n){var S=re(f,a).point,E=e.lineStartIndex+e.segment+1,C=new t.Point(c.getx(E),c.gety(E)),L=re(C,a),I=L.signedDistanceFromCamera>0?L.point:ce(f,C,S,1,a),P=se(e.writingMode,S,I,d);if(P)return P}var z=ue(g*l.getoffsetX(e.glyphStartIndex),y,v,n,h,f,e.segment,e.lineStartIndex,e.lineStartIndex+e.lineLength,c,o,p);if(!z)return{notEnoughRoom:!0};m=[z]}for(var O=0,D=m;O<D.length;O+=1){var R=D[O];t.addDynamicAttributes(u,R.point,R.angle)}return{}}function ce(t,e,r,n,i){var a=re(t.add(t.sub(e)._unit()),i).point,o=r.sub(a);return r.add(o._mult(n/o.mag()))}function ue(e,r,n,i,a,o,s,l,c,u,h,f){var p=i?e-r:e+r,d=p>0?1:-1,m=0;i&&(d*=-1,m=Math.PI),d<0&&(m+=Math.PI);for(var g=d>0?l+s:l+s+1,y=a,v=a,x=0,_=0,b=Math.abs(p),w=[];x+_<=b;){if((g+=d)<l||g>=c)return null;if(v=y,w.push(y),void 0===(y=f[g])){var T=new t.Point(u.getx(g),u.gety(g)),k=re(T,h);if(k.signedDistanceFromCamera>0)y=f[g]=k.point;else{var A=g-d;y=ce(0===x?o:new t.Point(u.getx(A),u.gety(A)),T,v,b-x+1,h)}}x+=_,_=v.dist(y)}var M=(b-x)/_,S=y.sub(v),E=S.mult(M)._add(v);E._add(S._unit()._perp()._mult(n*d));var C=m+Math.atan2(y.y-v.y,y.x-v.x);return w.push(E),{point:E,angle:C,path:w}}Qt.prototype.keysLength=function(){return this.boxKeys.length+this.circleKeys.length},Qt.prototype.insert=function(t,e,r,n,i){this._forEachCell(e,r,n,i,this._insertBoxCell,this.boxUid++),this.boxKeys.push(t),this.bboxes.push(e),this.bboxes.push(r),this.bboxes.push(n),this.bboxes.push(i)},Qt.prototype.insertCircle=function(t,e,r,n){this._forEachCell(e-n,r-n,e+n,r+n,this._insertCircleCell,this.circleUid++),this.circleKeys.push(t),this.circles.push(e),this.circles.push(r),this.circles.push(n)},Qt.prototype._insertBoxCell=function(t,e,r,n,i,a){this.boxCells[i].push(a)},Qt.prototype._insertCircleCell=function(t,e,r,n,i,a){this.circleCells[i].push(a)},Qt.prototype._query=function(t,e,r,n,i,a){if(r<0||t>this.width||n<0||e>this.height)return!i&&[];var o=[];if(t<=0&&e<=0&&this.width<=r&&this.height<=n){if(i)return!0;for(var s=0;s<this.boxKeys.length;s++)o.push({key:this.boxKeys[s],x1:this.bboxes[4*s],y1:this.bboxes[4*s+1],x2:this.bboxes[4*s+2],y2:this.bboxes[4*s+3]});for(var l=0;l<this.circleKeys.length;l++){var c=this.circles[3*l],u=this.circles[3*l+1],h=this.circles[3*l+2];o.push({key:this.circleKeys[l],x1:c-h,y1:u-h,x2:c+h,y2:u+h})}return a?o.filter(a):o}var f={hitTest:i,seenUids:{box:{},circle:{}}};return this._forEachCell(t,e,r,n,this._queryCell,o,f,a),i?o.length>0:o},Qt.prototype._queryCircle=function(t,e,r,n,i){var a=t-r,o=t+r,s=e-r,l=e+r;if(o<0||a>this.width||l<0||s>this.height)return!n&&[];var c=[],u={hitTest:n,circle:{x:t,y:e,radius:r},seenUids:{box:{},circle:{}}};return this._forEachCell(a,s,o,l,this._queryCellCircle,c,u,i),n?c.length>0:c},Qt.prototype.query=function(t,e,r,n,i){return this._query(t,e,r,n,!1,i)},Qt.prototype.hitTest=function(t,e,r,n,i){return this._query(t,e,r,n,!0,i)},Qt.prototype.hitTestCircle=function(t,e,r,n){return this._queryCircle(t,e,r,!0,n)},Qt.prototype._queryCell=function(t,e,r,n,i,a,o,s){var l=o.seenUids,c=this.boxCells[i];if(null!==c)for(var u=this.bboxes,h=0,f=c;h<f.length;h+=1){var p=f[h];if(!l.box[p]){l.box[p]=!0;var d=4*p;if(t<=u[d+2]&&e<=u[d+3]&&r>=u[d+0]&&n>=u[d+1]&&(!s||s(this.boxKeys[p]))){if(o.hitTest)return a.push(!0),!0;a.push({key:this.boxKeys[p],x1:u[d],y1:u[d+1],x2:u[d+2],y2:u[d+3]})}}}var m=this.circleCells[i];if(null!==m)for(var g=this.circles,y=0,v=m;y<v.length;y+=1){var x=v[y];if(!l.circle[x]){l.circle[x]=!0;var _=3*x;if(this._circleAndRectCollide(g[_],g[_+1],g[_+2],t,e,r,n)&&(!s||s(this.circleKeys[x]))){if(o.hitTest)return a.push(!0),!0;var b=g[_],w=g[_+1],T=g[_+2];a.push({key:this.circleKeys[x],x1:b-T,y1:w-T,x2:b+T,y2:w+T})}}}},Qt.prototype._queryCellCircle=function(t,e,r,n,i,a,o,s){var l=o.circle,c=o.seenUids,u=this.boxCells[i];if(null!==u)for(var h=this.bboxes,f=0,p=u;f<p.length;f+=1){var d=p[f];if(!c.box[d]){c.box[d]=!0;var m=4*d;if(this._circleAndRectCollide(l.x,l.y,l.radius,h[m+0],h[m+1],h[m+2],h[m+3])&&(!s||s(this.boxKeys[d])))return a.push(!0),!0}}var g=this.circleCells[i];if(null!==g)for(var y=this.circles,v=0,x=g;v<x.length;v+=1){var _=x[v];if(!c.circle[_]){c.circle[_]=!0;var b=3*_;if(this._circlesCollide(y[b],y[b+1],y[b+2],l.x,l.y,l.radius)&&(!s||s(this.circleKeys[_])))return a.push(!0),!0}}},Qt.prototype._forEachCell=function(t,e,r,n,i,a,o,s){for(var l=this._convertToXCellCoord(t),c=this._convertToYCellCoord(e),u=this._convertToXCellCoord(r),h=this._convertToYCellCoord(n),f=l;f<=u;f++)for(var p=c;p<=h;p++){var d=this.xCellCount*p+f;if(i.call(this,t,e,r,n,d,a,o,s))return}},Qt.prototype._convertToXCellCoord=function(t){return Math.max(0,Math.min(this.xCellCount-1,Math.floor(t*this.xScale)))},Qt.prototype._convertToYCellCoord=function(t){return Math.max(0,Math.min(this.yCellCount-1,Math.floor(t*this.yScale)))},Qt.prototype._circlesCollide=function(t,e,r,n,i,a){var o=n-t,s=i-e,l=r+a;return l*l>o*o+s*s},Qt.prototype._circleAndRectCollide=function(t,e,r,n,i,a,o){var s=(a-n)/2,l=Math.abs(t-(n+s));if(l>s+r)return!1;var c=(o-i)/2,u=Math.abs(e-(i+c));if(u>c+r)return!1;if(l<=s||u<=c)return!0;var h=l-s,f=u-c;return h*h+f*f<=r*r};var he=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function fe(t,e){for(var r=0;r<t;r++){var n=e.length;e.resize(n+4),e.float32.set(he,3*n)}}function pe(t,e,r){var n=e[0],i=e[1];return t[0]=r[0]*n+r[4]*i+r[12],t[1]=r[1]*n+r[5]*i+r[13],t[3]=r[3]*n+r[7]*i+r[15],t}var de=100,me=function(t,e,r){void 0===e&&(e=new Qt(t.width+200,t.height+200,25)),void 0===r&&(r=new Qt(t.width+200,t.height+200,25)),this.transform=t,this.grid=e,this.ignoredGrid=r,this.pitchfactor=Math.cos(t._pitch)*t.cameraToCenterDistance,this.screenRightBoundary=t.width+de,this.screenBottomBoundary=t.height+de,this.gridRightBoundary=t.width+200,this.gridBottomBoundary=t.height+200};function ge(e,r,n){return r*(t.EXTENT/(e.tileSize*Math.pow(2,n-e.tileID.overscaledZ)))}me.prototype.placeCollisionBox=function(t,e,r,n,i){var a=this.projectAndGetPerspectiveRatio(n,t.anchorPointX,t.anchorPointY),o=r*a.perspectiveRatio,s=t.x1*o+a.point.x,l=t.y1*o+a.point.y,c=t.x2*o+a.point.x,u=t.y2*o+a.point.y;return!this.isInsideGrid(s,l,c,u)||!e&&this.grid.hitTest(s,l,c,u,i)?{box:[],offscreen:!1}:{box:[s,l,c,u],offscreen:this.isOffscreen(s,l,c,u)}},me.prototype.placeCollisionCircles=function(e,r,n,i,a,o,s,l,c,u,h,f,p){var d=[],m=new t.Point(r.anchorX,r.anchorY),g=re(m,o),y=ne(this.transform.cameraToCenterDistance,g.signedDistanceFromCamera),v=(u?a/y:a*y)/t.ONE_EM,x=re(m,s).point,_=oe(v,i,r.lineOffsetX*v,r.lineOffsetY*v,!1,x,m,r,n,s,{}),b=!1,w=!1,T=!0;if(_){for(var k=.5*f*y+p,A=new t.Point(-100,-100),M=new t.Point(this.screenRightBoundary,this.screenBottomBoundary),S=new Kt,E=_.first,C=_.last,L=[],I=E.path.length-1;I>=1;I--)L.push(E.path[I]);for(var P=1;P<C.path.length;P++)L.push(C.path[P]);var z=2.5*k;if(l){var O=L.map((function(t){return re(t,l)}));L=O.some((function(t){return t.signedDistanceFromCamera<=0}))?[]:O.map((function(t){return t.point}))}var D=[];if(L.length>0){for(var R=L[0].clone(),F=L[0].clone(),B=1;B<L.length;B++)R.x=Math.min(R.x,L[B].x),R.y=Math.min(R.y,L[B].y),F.x=Math.max(F.x,L[B].x),F.y=Math.max(F.y,L[B].y);D=R.x>=A.x&&F.x<=M.x&&R.y>=A.y&&F.y<=M.y?[L]:F.x<A.x||R.x>M.x||F.y<A.y||R.y>M.y?[]:t.clipLine([L],A.x,A.y,M.x,M.y)}for(var N=0,j=D;N<j.length;N+=1){var U=j[N];S.reset(U,.25*k);var V;V=S.length<=.5*k?1:Math.ceil(S.paddedLength/z)+1;for(var q=0;q<V;q++){var H=q/Math.max(V-1,1),G=S.lerp(H),Z=G.x+de,W=G.y+de;d.push(Z,W,k,0);var Y=Z-k,X=W-k,$=Z+k,J=W+k;if(T=T&&this.isOffscreen(Y,X,$,J),w=w||this.isInsideGrid(Y,X,$,J),!e&&this.grid.hitTestCircle(Z,W,k,h)&&(b=!0,!c))return{circles:[],offscreen:!1,collisionDetected:b}}}}return{circles:!c&&b||!w?[]:d,offscreen:T,collisionDetected:b}},me.prototype.queryRenderedSymbols=function(e){if(0===e.length||0===this.grid.keysLength()&&0===this.ignoredGrid.keysLength())return{};for(var r=[],n=1/0,i=1/0,a=-1/0,o=-1/0,s=0,l=e;s<l.length;s+=1){var c=l[s],u=new t.Point(c.x+de,c.y+de);n=Math.min(n,u.x),i=Math.min(i,u.y),a=Math.max(a,u.x),o=Math.max(o,u.y),r.push(u)}for(var h={},f={},p=0,d=this.grid.query(n,i,a,o).concat(this.ignoredGrid.query(n,i,a,o));p<d.length;p+=1){var m=d[p],g=m.key;if(void 0===h[g.bucketInstanceId]&&(h[g.bucketInstanceId]={}),!h[g.bucketInstanceId][g.featureIndex]){var y=[new t.Point(m.x1,m.y1),new t.Point(m.x2,m.y1),new t.Point(m.x2,m.y2),new t.Point(m.x1,m.y2)];t.polygonIntersectsPolygon(r,y)&&(h[g.bucketInstanceId][g.featureIndex]=!0,void 0===f[g.bucketInstanceId]&&(f[g.bucketInstanceId]=[]),f[g.bucketInstanceId].push(g.featureIndex))}}return f},me.prototype.insertCollisionBox=function(t,e,r,n,i){var a={bucketInstanceId:r,featureIndex:n,collisionGroupID:i};(e?this.ignoredGrid:this.grid).insert(a,t[0],t[1],t[2],t[3])},me.prototype.insertCollisionCircles=function(t,e,r,n,i){for(var a=e?this.ignoredGrid:this.grid,o={bucketInstanceId:r,featureIndex:n,collisionGroupID:i},s=0;s<t.length;s+=4)a.insertCircle(o,t[s],t[s+1],t[s+2])},me.prototype.projectAndGetPerspectiveRatio=function(e,r,n){var i=[r,n,0,1];return pe(i,i,e),{point:new t.Point((i[0]/i[3]+1)/2*this.transform.width+de,(-i[1]/i[3]+1)/2*this.transform.height+de),perspectiveRatio:.5+this.transform.cameraToCenterDistance/i[3]*.5}},me.prototype.isOffscreen=function(t,e,r,n){return r<de||t>=this.screenRightBoundary||n<de||e>this.screenBottomBoundary},me.prototype.isInsideGrid=function(t,e,r,n){return r>=0&&t<this.gridRightBoundary&&n>=0&&e<this.gridBottomBoundary},me.prototype.getViewportMatrix=function(){var e=t.identity([]);return t.translate(e,e,[-100,-100,0]),e};var ye=function(t,e,r,n){this.opacity=t?Math.max(0,Math.min(1,t.opacity+(t.placed?e:-e))):n&&r?1:0,this.placed=r};ye.prototype.isHidden=function(){return 0===this.opacity&&!this.placed};var ve=function(t,e,r,n,i){this.text=new ye(t?t.text:null,e,r,i),this.icon=new ye(t?t.icon:null,e,n,i)};ve.prototype.isHidden=function(){return this.text.isHidden()&&this.icon.isHidden()};var xe=function(t,e,r){this.text=t,this.icon=e,this.skipFade=r},_e=function(){this.invProjMatrix=t.create(),this.viewportMatrix=t.create(),this.circles=[]},be=function(t,e,r,n,i){this.bucketInstanceId=t,this.featureIndex=e,this.sourceLayerIndex=r,this.bucketIndex=n,this.tileID=i},we=function(t){this.crossSourceCollisions=t,this.maxGroupID=0,this.collisionGroups={}};function Te(e,r,n,i,a){var o=t.getAnchorAlignment(e),s=-(o.horizontalAlign-.5)*r,l=-(o.verticalAlign-.5)*n,c=t.evaluateVariableOffset(e,i);return new t.Point(s+c[0]*a,l+c[1]*a)}function ke(e,r,n,i,a,o){var s=e.x1,l=e.x2,c=e.y1,u=e.y2,h=e.anchorPointX,f=e.anchorPointY,p=new t.Point(r,n);return i&&p._rotate(a?o:-o),{x1:s+p.x,y1:c+p.y,x2:l+p.x,y2:u+p.y,anchorPointX:h,anchorPointY:f}}we.prototype.get=function(t){if(this.crossSourceCollisions)return{ID:0,predicate:null};if(!this.collisionGroups[t]){var e=++this.maxGroupID;this.collisionGroups[t]={ID:e,predicate:function(t){return t.collisionGroupID===e}}}return this.collisionGroups[t]};var Ae=function(t,e,r,n){this.transform=t.clone(),this.collisionIndex=new me(this.transform),this.placements={},this.opacities={},this.variableOffsets={},this.stale=!1,this.commitTime=0,this.fadeDuration=e,this.retainedQueryData={},this.collisionGroups=new we(r),this.collisionCircleArrays={},this.prevPlacement=n,n&&(n.prevPlacement=void 0),this.placedOrientations={}};function Me(t,e,r,n,i){t.emplaceBack(e?1:0,r?1:0,n||0,i||0),t.emplaceBack(e?1:0,r?1:0,n||0,i||0),t.emplaceBack(e?1:0,r?1:0,n||0,i||0),t.emplaceBack(e?1:0,r?1:0,n||0,i||0)}Ae.prototype.getBucketParts=function(e,r,n,i){var a=n.getBucket(r),o=n.latestFeatureIndex;if(a&&o&&r.id===a.layerIds[0]){var s=n.collisionBoxArray,l=a.layers[0].layout,c=Math.pow(2,this.transform.zoom-n.tileID.overscaledZ),u=n.tileSize/t.EXTENT,h=this.transform.calculatePosMatrix(n.tileID.toUnwrapped()),f=\"map\"===l.get(\"text-pitch-alignment\"),p=\"map\"===l.get(\"text-rotation-alignment\"),d=ge(n,1,this.transform.zoom),m=te(h,f,p,this.transform,d),g=null;if(f){var y=ee(h,f,p,this.transform,d);g=t.multiply([],this.transform.labelPlaneMatrix,y)}this.retainedQueryData[a.bucketInstanceId]=new be(a.bucketInstanceId,o,a.sourceLayerIndex,a.index,n.tileID);var v={bucket:a,layout:l,posMatrix:h,textLabelPlaneMatrix:m,labelToScreenMatrix:g,scale:c,textPixelRatio:u,holdingForFade:n.holdingForFade(),collisionBoxArray:s,partiallyEvaluatedTextSize:t.evaluateSizeForZoom(a.textSizeData,this.transform.zoom),collisionGroup:this.collisionGroups.get(a.sourceID)};if(i)for(var x=0,_=a.sortKeyRanges;x<_.length;x+=1){var b=_[x],w=b.sortKey,T=b.symbolInstanceStart,k=b.symbolInstanceEnd;e.push({sortKey:w,symbolInstanceStart:T,symbolInstanceEnd:k,parameters:v})}else e.push({symbolInstanceStart:0,symbolInstanceEnd:a.symbolInstances.length,parameters:v})}},Ae.prototype.attemptAnchorPlacement=function(t,e,r,n,i,a,o,s,l,c,u,h,f,p,d){var m,g=[h.textOffset0,h.textOffset1],y=Te(t,r,n,g,i),v=this.collisionIndex.placeCollisionBox(ke(e,y.x,y.y,a,o,this.transform.angle),u,s,l,c.predicate);if(!d||0!==this.collisionIndex.placeCollisionBox(ke(d,y.x,y.y,a,o,this.transform.angle),u,s,l,c.predicate).box.length)return v.box.length>0?(this.prevPlacement&&this.prevPlacement.variableOffsets[h.crossTileID]&&this.prevPlacement.placements[h.crossTileID]&&this.prevPlacement.placements[h.crossTileID].text&&(m=this.prevPlacement.variableOffsets[h.crossTileID].anchor),this.variableOffsets[h.crossTileID]={textOffset:g,width:r,height:n,anchor:t,textBoxScale:i,prevAnchor:m},this.markUsedJustification(f,t,h,p),f.allowVerticalPlacement&&(this.markUsedOrientation(f,p,h),this.placedOrientations[h.crossTileID]=p),{shift:y,placedGlyphBoxes:v}):void 0},Ae.prototype.placeLayerBucketPart=function(e,r,n){var i=this,a=e.parameters,o=a.bucket,s=a.layout,l=a.posMatrix,c=a.textLabelPlaneMatrix,u=a.labelToScreenMatrix,h=a.textPixelRatio,f=a.holdingForFade,p=a.collisionBoxArray,d=a.partiallyEvaluatedTextSize,m=a.collisionGroup,g=s.get(\"text-optional\"),y=s.get(\"icon-optional\"),v=s.get(\"text-allow-overlap\"),x=s.get(\"icon-allow-overlap\"),_=\"map\"===s.get(\"text-rotation-alignment\"),b=\"map\"===s.get(\"text-pitch-alignment\"),w=\"none\"!==s.get(\"icon-text-fit\"),T=\"viewport-y\"===s.get(\"symbol-z-order\"),k=v&&(x||!o.hasIconData()||y),A=x&&(v||!o.hasTextData()||g);!o.collisionArrays&&p&&o.deserializeCollisionBoxes(p);var M=function(e,a){if(!r[e.crossTileID])if(f)i.placements[e.crossTileID]=new xe(!1,!1,!1);else{var p,T=!1,M=!1,S=!0,E=null,C={box:null,offscreen:null},L={box:null,offscreen:null},I=null,P=null,z=0,O=0,D=0;a.textFeatureIndex?z=a.textFeatureIndex:e.useRuntimeCollisionCircles&&(z=e.featureIndex),a.verticalTextFeatureIndex&&(O=a.verticalTextFeatureIndex);var R=a.textBox;if(R){var F=function(r){var n=t.WritingMode.horizontal;if(o.allowVerticalPlacement&&!r&&i.prevPlacement){var a=i.prevPlacement.placedOrientations[e.crossTileID];a&&(i.placedOrientations[e.crossTileID]=a,n=a,i.markUsedOrientation(o,n,e))}return n},B=function(r,n){if(o.allowVerticalPlacement&&e.numVerticalGlyphVertices>0&&a.verticalTextBox)for(var i=0,s=o.writingModes;i<s.length&&(s[i]===t.WritingMode.vertical?(C=n(),L=C):C=r(),!(C&&C.box&&C.box.length));i+=1);else C=r()};if(s.get(\"text-variable-anchor\")){var N=s.get(\"text-variable-anchor\");if(i.prevPlacement&&i.prevPlacement.variableOffsets[e.crossTileID]){var j=i.prevPlacement.variableOffsets[e.crossTileID];N.indexOf(j.anchor)>0&&(N=N.filter((function(t){return t!==j.anchor}))).unshift(j.anchor)}var U=function(t,r,n){for(var a=t.x2-t.x1,s=t.y2-t.y1,c=e.textBoxScale,u=w&&!x?r:null,f={box:[],offscreen:!1},p=v?2*N.length:N.length,d=0;d<p;++d){var g=N[d%N.length],y=d>=N.length,k=i.attemptAnchorPlacement(g,t,a,s,c,_,b,h,l,m,y,e,o,n,u);if(k&&(f=k.placedGlyphBoxes)&&f.box&&f.box.length){T=!0,E=k.shift;break}}return f};B((function(){return U(R,a.iconBox,t.WritingMode.horizontal)}),(function(){var r=a.verticalTextBox,n=C&&C.box&&C.box.length;return o.allowVerticalPlacement&&!n&&e.numVerticalGlyphVertices>0&&r?U(r,a.verticalIconBox,t.WritingMode.vertical):{box:null,offscreen:null}})),C&&(T=C.box,S=C.offscreen);var V=F(C&&C.box);if(!T&&i.prevPlacement){var q=i.prevPlacement.variableOffsets[e.crossTileID];q&&(i.variableOffsets[e.crossTileID]=q,i.markUsedJustification(o,q.anchor,e,V))}}else{var H=function(t,r){var n=i.collisionIndex.placeCollisionBox(t,v,h,l,m.predicate);return n&&n.box&&n.box.length&&(i.markUsedOrientation(o,r,e),i.placedOrientations[e.crossTileID]=r),n};B((function(){return H(R,t.WritingMode.horizontal)}),(function(){var r=a.verticalTextBox;return o.allowVerticalPlacement&&e.numVerticalGlyphVertices>0&&r?H(r,t.WritingMode.vertical):{box:null,offscreen:null}})),F(C&&C.box&&C.box.length)}}if(T=(p=C)&&p.box&&p.box.length>0,S=p&&p.offscreen,e.useRuntimeCollisionCircles){var G=o.text.placedSymbolArray.get(e.centerJustifiedTextSymbolIndex),Z=t.evaluateSizeForFeature(o.textSizeData,d,G),W=s.get(\"text-padding\"),Y=e.collisionCircleDiameter;I=i.collisionIndex.placeCollisionCircles(v,G,o.lineVertexArray,o.glyphOffsetArray,Z,l,c,u,n,b,m.predicate,Y,W),T=v||I.circles.length>0&&!I.collisionDetected,S=S&&I.offscreen}if(a.iconFeatureIndex&&(D=a.iconFeatureIndex),a.iconBox){var X=function(t){var e=w&&E?ke(t,E.x,E.y,_,b,i.transform.angle):t;return i.collisionIndex.placeCollisionBox(e,x,h,l,m.predicate)};M=L&&L.box&&L.box.length&&a.verticalIconBox?(P=X(a.verticalIconBox)).box.length>0:(P=X(a.iconBox)).box.length>0,S=S&&P.offscreen}var $=g||0===e.numHorizontalGlyphVertices&&0===e.numVerticalGlyphVertices,J=y||0===e.numIconVertices;if($||J?J?$||(M=M&&T):T=M&&T:M=T=M&&T,T&&p&&p.box&&(L&&L.box&&O?i.collisionIndex.insertCollisionBox(p.box,s.get(\"text-ignore-placement\"),o.bucketInstanceId,O,m.ID):i.collisionIndex.insertCollisionBox(p.box,s.get(\"text-ignore-placement\"),o.bucketInstanceId,z,m.ID)),M&&P&&i.collisionIndex.insertCollisionBox(P.box,s.get(\"icon-ignore-placement\"),o.bucketInstanceId,D,m.ID),I&&(T&&i.collisionIndex.insertCollisionCircles(I.circles,s.get(\"text-ignore-placement\"),o.bucketInstanceId,z,m.ID),n)){var K=o.bucketInstanceId,Q=i.collisionCircleArrays[K];void 0===Q&&(Q=i.collisionCircleArrays[K]=new _e);for(var tt=0;tt<I.circles.length;tt+=4)Q.circles.push(I.circles[tt+0]),Q.circles.push(I.circles[tt+1]),Q.circles.push(I.circles[tt+2]),Q.circles.push(I.collisionDetected?1:0)}i.placements[e.crossTileID]=new xe(T||k,M||A,S||o.justReloaded),r[e.crossTileID]=!0}};if(T)for(var S=o.getSortedSymbolIndexes(this.transform.angle),E=S.length-1;E>=0;--E){var C=S[E];M(o.symbolInstances.get(C),o.collisionArrays[C])}else for(var L=e.symbolInstanceStart;L<e.symbolInstanceEnd;L++)M(o.symbolInstances.get(L),o.collisionArrays[L]);if(n&&o.bucketInstanceId in this.collisionCircleArrays){var I=this.collisionCircleArrays[o.bucketInstanceId];t.invert(I.invProjMatrix,l),I.viewportMatrix=this.collisionIndex.getViewportMatrix()}o.justReloaded=!1},Ae.prototype.markUsedJustification=function(e,r,n,i){var a,o={left:n.leftJustifiedTextSymbolIndex,center:n.centerJustifiedTextSymbolIndex,right:n.rightJustifiedTextSymbolIndex};a=i===t.WritingMode.vertical?n.verticalPlacedTextSymbolIndex:o[t.getAnchorJustification(r)];for(var s=0,l=[n.leftJustifiedTextSymbolIndex,n.centerJustifiedTextSymbolIndex,n.rightJustifiedTextSymbolIndex,n.verticalPlacedTextSymbolIndex];s<l.length;s+=1){var c=l[s];c>=0&&(e.text.placedSymbolArray.get(c).crossTileID=a>=0&&c!==a?0:n.crossTileID)}},Ae.prototype.markUsedOrientation=function(e,r,n){for(var i=r===t.WritingMode.horizontal||r===t.WritingMode.horizontalOnly?r:0,a=r===t.WritingMode.vertical?r:0,o=0,s=[n.leftJustifiedTextSymbolIndex,n.centerJustifiedTextSymbolIndex,n.rightJustifiedTextSymbolIndex];o<s.length;o+=1){var l=s[o];e.text.placedSymbolArray.get(l).placedOrientation=i}n.verticalPlacedTextSymbolIndex&&(e.text.placedSymbolArray.get(n.verticalPlacedTextSymbolIndex).placedOrientation=a)},Ae.prototype.commit=function(t){this.commitTime=t,this.zoomAtLastRecencyCheck=this.transform.zoom;var e=this.prevPlacement,r=!1;this.prevZoomAdjustment=e?e.zoomAdjustment(this.transform.zoom):0;var n=e?e.symbolFadeChange(t):1,i=e?e.opacities:{},a=e?e.variableOffsets:{},o=e?e.placedOrientations:{};for(var s in this.placements){var l=this.placements[s],c=i[s];c?(this.opacities[s]=new ve(c,n,l.text,l.icon),r=r||l.text!==c.text.placed||l.icon!==c.icon.placed):(this.opacities[s]=new ve(null,n,l.text,l.icon,l.skipFade),r=r||l.text||l.icon)}for(var u in i){var h=i[u];if(!this.opacities[u]){var f=new ve(h,n,!1,!1);f.isHidden()||(this.opacities[u]=f,r=r||h.text.placed||h.icon.placed)}}for(var p in a)this.variableOffsets[p]||!this.opacities[p]||this.opacities[p].isHidden()||(this.variableOffsets[p]=a[p]);for(var d in o)this.placedOrientations[d]||!this.opacities[d]||this.opacities[d].isHidden()||(this.placedOrientations[d]=o[d]);r?this.lastPlacementChangeTime=t:\"number\"!=typeof this.lastPlacementChangeTime&&(this.lastPlacementChangeTime=e?e.lastPlacementChangeTime:t)},Ae.prototype.updateLayerOpacities=function(t,e){for(var r={},n=0,i=e;n<i.length;n+=1){var a=i[n],o=a.getBucket(t);o&&a.latestFeatureIndex&&t.id===o.layerIds[0]&&this.updateBucketOpacities(o,r,a.collisionBoxArray)}},Ae.prototype.updateBucketOpacities=function(e,r,n){var i=this;e.hasTextData()&&e.text.opacityVertexArray.clear(),e.hasIconData()&&e.icon.opacityVertexArray.clear(),e.hasIconCollisionBoxData()&&e.iconCollisionBox.collisionVertexArray.clear(),e.hasTextCollisionBoxData()&&e.textCollisionBox.collisionVertexArray.clear();var a=e.layers[0].layout,o=new ve(null,0,!1,!1,!0),s=a.get(\"text-allow-overlap\"),l=a.get(\"icon-allow-overlap\"),c=a.get(\"text-variable-anchor\"),u=\"map\"===a.get(\"text-rotation-alignment\"),h=\"map\"===a.get(\"text-pitch-alignment\"),f=\"none\"!==a.get(\"icon-text-fit\"),p=new ve(null,0,s&&(l||!e.hasIconData()||a.get(\"icon-optional\")),l&&(s||!e.hasTextData()||a.get(\"text-optional\")),!0);!e.collisionArrays&&n&&(e.hasIconCollisionBoxData()||e.hasTextCollisionBoxData())&&e.deserializeCollisionBoxes(n);for(var d=function(t,e,r){for(var n=0;n<e/4;n++)t.opacityVertexArray.emplaceBack(r)},m=function(n){var a=e.symbolInstances.get(n),s=a.numHorizontalGlyphVertices,l=a.numVerticalGlyphVertices,m=a.crossTileID,g=r[m],y=i.opacities[m];g?y=o:y||(y=p,i.opacities[m]=y),r[m]=!0;var v=s>0||l>0,x=a.numIconVertices>0,_=i.placedOrientations[a.crossTileID],b=_===t.WritingMode.vertical,w=_===t.WritingMode.horizontal||_===t.WritingMode.horizontalOnly;if(v){var T=Oe(y.text),k=b?De:T;d(e.text,s,k);var A=w?De:T;d(e.text,l,A);var M=y.text.isHidden();[a.rightJustifiedTextSymbolIndex,a.centerJustifiedTextSymbolIndex,a.leftJustifiedTextSymbolIndex].forEach((function(t){t>=0&&(e.text.placedSymbolArray.get(t).hidden=M||b?1:0)})),a.verticalPlacedTextSymbolIndex>=0&&(e.text.placedSymbolArray.get(a.verticalPlacedTextSymbolIndex).hidden=M||w?1:0);var S=i.variableOffsets[a.crossTileID];S&&i.markUsedJustification(e,S.anchor,a,_);var E=i.placedOrientations[a.crossTileID];E&&(i.markUsedJustification(e,\"left\",a,E),i.markUsedOrientation(e,E,a))}if(x){var C=Oe(y.icon),L=!(f&&a.verticalPlacedIconSymbolIndex&&b);if(a.placedIconSymbolIndex>=0){var I=L?C:De;d(e.icon,a.numIconVertices,I),e.icon.placedSymbolArray.get(a.placedIconSymbolIndex).hidden=y.icon.isHidden()}if(a.verticalPlacedIconSymbolIndex>=0){var P=L?De:C;d(e.icon,a.numVerticalIconVertices,P),e.icon.placedSymbolArray.get(a.verticalPlacedIconSymbolIndex).hidden=y.icon.isHidden()}}if(e.hasIconCollisionBoxData()||e.hasTextCollisionBoxData()){var z=e.collisionArrays[n];if(z){var O=new t.Point(0,0);if(z.textBox||z.verticalTextBox){var D=!0;if(c){var R=i.variableOffsets[m];R?(O=Te(R.anchor,R.width,R.height,R.textOffset,R.textBoxScale),u&&O._rotate(h?i.transform.angle:-i.transform.angle)):D=!1}z.textBox&&Me(e.textCollisionBox.collisionVertexArray,y.text.placed,!D||b,O.x,O.y),z.verticalTextBox&&Me(e.textCollisionBox.collisionVertexArray,y.text.placed,!D||w,O.x,O.y)}var F=Boolean(!w&&z.verticalIconBox);z.iconBox&&Me(e.iconCollisionBox.collisionVertexArray,y.icon.placed,F,f?O.x:0,f?O.y:0),z.verticalIconBox&&Me(e.iconCollisionBox.collisionVertexArray,y.icon.placed,!F,f?O.x:0,f?O.y:0)}}},g=0;g<e.symbolInstances.length;g++)m(g);if(e.sortFeatures(this.transform.angle),this.retainedQueryData[e.bucketInstanceId]&&(this.retainedQueryData[e.bucketInstanceId].featureSortOrder=e.featureSortOrder),e.hasTextData()&&e.text.opacityVertexBuffer&&e.text.opacityVertexBuffer.updateData(e.text.opacityVertexArray),e.hasIconData()&&e.icon.opacityVertexBuffer&&e.icon.opacityVertexBuffer.updateData(e.icon.opacityVertexArray),e.hasIconCollisionBoxData()&&e.iconCollisionBox.collisionVertexBuffer&&e.iconCollisionBox.collisionVertexBuffer.updateData(e.iconCollisionBox.collisionVertexArray),e.hasTextCollisionBoxData()&&e.textCollisionBox.collisionVertexBuffer&&e.textCollisionBox.collisionVertexBuffer.updateData(e.textCollisionBox.collisionVertexArray),e.bucketInstanceId in this.collisionCircleArrays){var y=this.collisionCircleArrays[e.bucketInstanceId];e.placementInvProjMatrix=y.invProjMatrix,e.placementViewportMatrix=y.viewportMatrix,e.collisionCircleArray=y.circles,delete this.collisionCircleArrays[e.bucketInstanceId]}},Ae.prototype.symbolFadeChange=function(t){return 0===this.fadeDuration?1:(t-this.commitTime)/this.fadeDuration+this.prevZoomAdjustment},Ae.prototype.zoomAdjustment=function(t){return Math.max(0,(this.transform.zoom-t)/1.5)},Ae.prototype.hasTransitions=function(t){return this.stale||t-this.lastPlacementChangeTime<this.fadeDuration},Ae.prototype.stillRecent=function(t,e){var r=this.zoomAtLastRecencyCheck===e?1-this.zoomAdjustment(e):1;return this.zoomAtLastRecencyCheck=e,this.commitTime+this.fadeDuration*r>t},Ae.prototype.setStale=function(){this.stale=!0};var Se=Math.pow(2,25),Ee=Math.pow(2,24),Ce=Math.pow(2,17),Le=Math.pow(2,16),Ie=Math.pow(2,9),Pe=Math.pow(2,8),ze=Math.pow(2,1);function Oe(t){if(0===t.opacity&&!t.placed)return 0;if(1===t.opacity&&t.placed)return 4294967295;var e=t.placed?1:0,r=Math.floor(127*t.opacity);return r*Se+e*Ee+r*Ce+e*Le+r*Ie+e*Pe+r*ze+e}var De=0,Re=function(t){this._sortAcrossTiles=\"viewport-y\"!==t.layout.get(\"symbol-z-order\")&&void 0!==t.layout.get(\"symbol-sort-key\").constantOr(1),this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]};Re.prototype.continuePlacement=function(t,e,r,n,i){for(var a=this._bucketParts;this._currentTileIndex<t.length;){var o=t[this._currentTileIndex];if(e.getBucketParts(a,n,o,this._sortAcrossTiles),this._currentTileIndex++,i())return!0}for(this._sortAcrossTiles&&(this._sortAcrossTiles=!1,a.sort((function(t,e){return t.sortKey-e.sortKey})));this._currentPartIndex<a.length;){var s=a[this._currentPartIndex];if(e.placeLayerBucketPart(s,this._seenCrossTileIDs,r),this._currentPartIndex++,i())return!0}return!1};var Fe=function(t,e,r,n,i,a,o){this.placement=new Ae(t,i,a,o),this._currentPlacementIndex=e.length-1,this._forceFullPlacement=r,this._showCollisionBoxes=n,this._done=!1};Fe.prototype.isDone=function(){return this._done},Fe.prototype.continuePlacement=function(e,r,n){for(var i=this,a=t.browser.now(),o=function(){var e=t.browser.now()-a;return!i._forceFullPlacement&&e>2};this._currentPlacementIndex>=0;){var s=r[e[this._currentPlacementIndex]],l=this.placement.collisionIndex.transform.zoom;if(\"symbol\"===s.type&&(!s.minzoom||s.minzoom<=l)&&(!s.maxzoom||s.maxzoom>l)){if(this._inProgressLayer||(this._inProgressLayer=new Re(s)),this._inProgressLayer.continuePlacement(n[s.source],this.placement,this._showCollisionBoxes,s,o))return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0},Fe.prototype.commit=function(t){return this.placement.commit(t),this.placement};var Be=512/t.EXTENT/2,Ne=function(t,e,r){this.tileID=t,this.indexedSymbolInstances={},this.bucketInstanceId=r;for(var n=0;n<e.length;n++){var i=e.get(n),a=i.key;this.indexedSymbolInstances[a]||(this.indexedSymbolInstances[a]=[]),this.indexedSymbolInstances[a].push({crossTileID:i.crossTileID,coord:this.getScaledCoordinates(i,t)})}};Ne.prototype.getScaledCoordinates=function(e,r){var n=r.canonical.z-this.tileID.canonical.z,i=Be/Math.pow(2,n);return{x:Math.floor((r.canonical.x*t.EXTENT+e.anchorX)*i),y:Math.floor((r.canonical.y*t.EXTENT+e.anchorY)*i)}},Ne.prototype.findMatches=function(t,e,r){for(var n=this.tileID.canonical.z<e.canonical.z?1:Math.pow(2,this.tileID.canonical.z-e.canonical.z),i=0;i<t.length;i++){var a=t.get(i);if(!a.crossTileID){var o=this.indexedSymbolInstances[a.key];if(o)for(var s=this.getScaledCoordinates(a,e),l=0,c=o;l<c.length;l+=1){var u=c[l];if(Math.abs(u.coord.x-s.x)<=n&&Math.abs(u.coord.y-s.y)<=n&&!r[u.crossTileID]){r[u.crossTileID]=!0,a.crossTileID=u.crossTileID;break}}}}};var je=function(){this.maxCrossTileID=0};je.prototype.generate=function(){return++this.maxCrossTileID};var Ue=function(){this.indexes={},this.usedCrossTileIDs={},this.lng=0};Ue.prototype.handleWrapJump=function(t){var e=Math.round((t-this.lng)/360);if(0!==e)for(var r in this.indexes){var n=this.indexes[r],i={};for(var a in n){var o=n[a];o.tileID=o.tileID.unwrapTo(o.tileID.wrap+e),i[o.tileID.key]=o}this.indexes[r]=i}this.lng=t},Ue.prototype.addBucket=function(t,e,r){if(this.indexes[t.overscaledZ]&&this.indexes[t.overscaledZ][t.key]){if(this.indexes[t.overscaledZ][t.key].bucketInstanceId===e.bucketInstanceId)return!1;this.removeBucketCrossTileIDs(t.overscaledZ,this.indexes[t.overscaledZ][t.key])}for(var n=0;n<e.symbolInstances.length;n++)e.symbolInstances.get(n).crossTileID=0;this.usedCrossTileIDs[t.overscaledZ]||(this.usedCrossTileIDs[t.overscaledZ]={});var i=this.usedCrossTileIDs[t.overscaledZ];for(var a in this.indexes){var o=this.indexes[a];if(Number(a)>t.overscaledZ)for(var s in o){var l=o[s];l.tileID.isChildOf(t)&&l.findMatches(e.symbolInstances,t,i)}else{var c=o[t.scaledTo(Number(a)).key];c&&c.findMatches(e.symbolInstances,t,i)}}for(var u=0;u<e.symbolInstances.length;u++){var h=e.symbolInstances.get(u);h.crossTileID||(h.crossTileID=r.generate(),i[h.crossTileID]=!0)}return void 0===this.indexes[t.overscaledZ]&&(this.indexes[t.overscaledZ]={}),this.indexes[t.overscaledZ][t.key]=new Ne(t,e.symbolInstances,e.bucketInstanceId),!0},Ue.prototype.removeBucketCrossTileIDs=function(t,e){for(var r in e.indexedSymbolInstances)for(var n=0,i=e.indexedSymbolInstances[r];n<i.length;n+=1){var a=i[n];delete this.usedCrossTileIDs[t][a.crossTileID]}},Ue.prototype.removeStaleBuckets=function(t){var e=!1;for(var r in this.indexes){var n=this.indexes[r];for(var i in n)t[n[i].bucketInstanceId]||(this.removeBucketCrossTileIDs(r,n[i]),delete n[i],e=!0)}return e};var Ve=function(){this.layerIndexes={},this.crossTileIDs=new je,this.maxBucketInstanceId=0,this.bucketsInCurrentPlacement={}};Ve.prototype.addLayer=function(t,e,r){var n=this.layerIndexes[t.id];void 0===n&&(n=this.layerIndexes[t.id]=new Ue);var i=!1,a={};n.handleWrapJump(r);for(var o=0,s=e;o<s.length;o+=1){var l=s[o],c=l.getBucket(t);c&&t.id===c.layerIds[0]&&(c.bucketInstanceId||(c.bucketInstanceId=++this.maxBucketInstanceId),n.addBucket(l.tileID,c,this.crossTileIDs)&&(i=!0),a[c.bucketInstanceId]=!0)}return n.removeStaleBuckets(a)&&(i=!0),i},Ve.prototype.pruneUnusedLayers=function(t){var e={};for(var r in t.forEach((function(t){e[t]=!0})),this.layerIndexes)e[r]||delete this.layerIndexes[r]};var qe=function(e,r){return t.emitValidationErrors(e,r&&r.filter((function(t){return\"source.canvas\"!==t.identifier})))},He=t.pick(qt,[\"addLayer\",\"removeLayer\",\"setPaintProperty\",\"setLayoutProperty\",\"setFilter\",\"addSource\",\"removeSource\",\"setLayerZoomRange\",\"setLight\",\"setTransition\",\"setGeoJSONSourceData\"]),Ge=t.pick(qt,[\"setCenter\",\"setZoom\",\"setBearing\",\"setPitch\"]),Ze=function(){var e={},r=t.styleSpec.$version;for(var n in t.styleSpec.$root){var i=t.styleSpec.$root[n];if(i.required){var a;null!=(a=\"version\"===n?r:\"array\"===i.type?[]:{})&&(e[n]=a)}}return e}(),We=function(e){function r(n,i){var a=this;void 0===i&&(i={}),e.call(this),this.map=n,this.dispatcher=new A(jt(),this),this.imageManager=new f,this.imageManager.setEventedParent(this),this.glyphManager=new x(n._requestManager,i.localIdeographFontFamily),this.lineAtlas=new k(256,512),this.crossTileSymbolIndex=new Ve,this._layers={},this._serializedLayers={},this._order=[],this.sourceCaches={},this.zoomHistory=new t.ZoomHistory,this._loaded=!1,this._availableImages=[],this._resetUpdates(),this.dispatcher.broadcast(\"setReferrer\",t.getReferrer());var o=this;this._rtlTextPluginCallback=r.registerForPluginStateChange((function(e){var r={pluginStatus:e.pluginStatus,pluginURL:e.pluginURL};o.dispatcher.broadcast(\"syncRTLPluginState\",r,(function(e,r){if(t.triggerPluginCompletionEvent(e),r&&r.every((function(t){return t})))for(var n in o.sourceCaches)o.sourceCaches[n].reload()}))})),this.on(\"data\",(function(t){if(\"source\"===t.dataType&&\"metadata\"===t.sourceDataType){var e=a.sourceCaches[t.sourceId];if(e){var r=e.getSource();if(r&&r.vectorLayerIds)for(var n in a._layers){var i=a._layers[n];i.source===r.id&&a._validateLayer(i)}}}}))}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.loadURL=function(e,r){var n=this;void 0===r&&(r={}),this.fire(new t.Event(\"dataloading\",{dataType:\"style\"}));var i=\"boolean\"==typeof r.validate?r.validate:!t.isMapboxURL(e);e=this.map._requestManager.normalizeStyleURL(e,r.accessToken);var a=this.map._requestManager.transformRequest(e,t.ResourceType.Style);this._request=t.getJSON(a,(function(e,r){n._request=null,e?n.fire(new t.ErrorEvent(e)):r&&n._load(r,i)}))},r.prototype.loadJSON=function(e,r){var n=this;void 0===r&&(r={}),this.fire(new t.Event(\"dataloading\",{dataType:\"style\"})),this._request=t.browser.frame((function(){n._request=null,n._load(e,!1!==r.validate)}))},r.prototype.loadEmpty=function(){this.fire(new t.Event(\"dataloading\",{dataType:\"style\"})),this._load(Ze,!1)},r.prototype._load=function(e,r){if(!r||!qe(this,t.validateStyle(e))){for(var n in this._loaded=!0,this.stylesheet=e,e.sources)this.addSource(n,e.sources[n],{validate:!1});e.sprite?this._loadSprite(e.sprite):this.imageManager.setLoaded(!0),this.glyphManager.setURL(e.glyphs);var i=Vt(this.stylesheet.layers);this._order=i.map((function(t){return t.id})),this._layers={},this._serializedLayers={};for(var a=0,o=i;a<o.length;a+=1){var s=o[a];(s=t.createStyleLayer(s)).setEventedParent(this,{layer:{id:s.id}}),this._layers[s.id]=s,this._serializedLayers[s.id]=s.serialize()}this.dispatcher.broadcast(\"setLayers\",this._serializeLayers(this._order)),this.light=new T(this.stylesheet.light),this.fire(new t.Event(\"data\",{dataType:\"style\"})),this.fire(new t.Event(\"style.load\"))}},r.prototype._loadSprite=function(e){var r=this;this._spriteRequest=function(e,r,n){var i,a,o,s=t.browser.devicePixelRatio>1?\"@2x\":\"\",l=t.getJSON(r.transformRequest(r.normalizeSpriteURL(e,s,\".json\"),t.ResourceType.SpriteJSON),(function(t,e){l=null,o||(o=t,i=e,u())})),c=t.getImage(r.transformRequest(r.normalizeSpriteURL(e,s,\".png\"),t.ResourceType.SpriteImage),(function(t,e){c=null,o||(o=t,a=e,u())}));function u(){if(o)n(o);else if(i&&a){var e=t.browser.getImageData(a),r={};for(var s in i){var l=i[s],c=l.width,u=l.height,h=l.x,f=l.y,p=l.sdf,d=l.pixelRatio,m=l.stretchX,g=l.stretchY,y=l.content,v=new t.RGBAImage({width:c,height:u});t.RGBAImage.copy(e,v,{x:h,y:f},{x:0,y:0},{width:c,height:u}),r[s]={data:v,pixelRatio:d,sdf:p,stretchX:m,stretchY:g,content:y}}n(null,r)}}return{cancel:function(){l&&(l.cancel(),l=null),c&&(c.cancel(),c=null)}}}(e,this.map._requestManager,(function(e,n){if(r._spriteRequest=null,e)r.fire(new t.ErrorEvent(e));else if(n)for(var i in n)r.imageManager.addImage(i,n[i]);r.imageManager.setLoaded(!0),r._availableImages=r.imageManager.listImages(),r.dispatcher.broadcast(\"setImages\",r._availableImages),r.fire(new t.Event(\"data\",{dataType:\"style\"}))}))},r.prototype._validateLayer=function(e){var r=this.sourceCaches[e.source];if(r){var n=e.sourceLayer;if(n){var i=r.getSource();(\"geojson\"===i.type||i.vectorLayerIds&&-1===i.vectorLayerIds.indexOf(n))&&this.fire(new t.ErrorEvent(new Error('Source layer \"'+n+'\" does not exist on source \"'+i.id+'\" as specified by style layer \"'+e.id+'\"')))}}},r.prototype.loaded=function(){if(!this._loaded)return!1;if(Object.keys(this._updatedSources).length)return!1;for(var t in this.sourceCaches)if(!this.sourceCaches[t].loaded())return!1;return!!this.imageManager.isLoaded()},r.prototype._serializeLayers=function(t){for(var e=[],r=0,n=t;r<n.length;r+=1){var i=n[r],a=this._layers[i];\"custom\"!==a.type&&e.push(a.serialize())}return e},r.prototype.hasTransitions=function(){if(this.light&&this.light.hasTransition())return!0;for(var t in this.sourceCaches)if(this.sourceCaches[t].hasTransition())return!0;for(var e in this._layers)if(this._layers[e].hasTransition())return!0;return!1},r.prototype._checkLoaded=function(){if(!this._loaded)throw new Error(\"Style is not done loading\")},r.prototype.update=function(e){if(this._loaded){var r=this._changed;if(this._changed){var n=Object.keys(this._updatedLayers),i=Object.keys(this._removedLayers);for(var a in(n.length||i.length)&&this._updateWorkerLayers(n,i),this._updatedSources){var o=this._updatedSources[a];\"reload\"===o?this._reloadSource(a):\"clear\"===o&&this._clearSource(a)}for(var s in this._updateTilesForChangedImages(),this._updatedPaintProps)this._layers[s].updateTransitions(e);this.light.updateTransitions(e),this._resetUpdates()}var l={};for(var c in this.sourceCaches){var u=this.sourceCaches[c];l[c]=u.used,u.used=!1}for(var h=0,f=this._order;h<f.length;h+=1){var p=f[h],d=this._layers[p];d.recalculate(e,this._availableImages),!d.isHidden(e.zoom)&&d.source&&(this.sourceCaches[d.source].used=!0)}for(var m in l){var g=this.sourceCaches[m];l[m]!==g.used&&g.fire(new t.Event(\"data\",{sourceDataType:\"visibility\",dataType:\"source\",sourceId:m}))}this.light.recalculate(e),this.z=e.zoom,r&&this.fire(new t.Event(\"data\",{dataType:\"style\"}))}},r.prototype._updateTilesForChangedImages=function(){var t=Object.keys(this._changedImages);if(t.length){for(var e in this.sourceCaches)this.sourceCaches[e].reloadTilesForDependencies([\"icons\",\"patterns\"],t);this._changedImages={}}},r.prototype._updateWorkerLayers=function(t,e){this.dispatcher.broadcast(\"updateLayers\",{layers:this._serializeLayers(t),removedIds:e})},r.prototype._resetUpdates=function(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSources={},this._updatedPaintProps={},this._changedImages={}},r.prototype.setState=function(e){var r=this;if(this._checkLoaded(),qe(this,t.validateStyle(e)))return!1;(e=t.clone$1(e)).layers=Vt(e.layers);var n=Jt(this.serialize(),e).filter((function(t){return!(t.command in Ge)}));if(0===n.length)return!1;var i=n.filter((function(t){return!(t.command in He)}));if(i.length>0)throw new Error(\"Unimplemented: \"+i.map((function(t){return t.command})).join(\", \")+\".\");return n.forEach((function(t){\"setTransition\"!==t.command&&r[t.command].apply(r,t.args)})),this.stylesheet=e,!0},r.prototype.addImage=function(e,r){if(this.getImage(e))return this.fire(new t.ErrorEvent(new Error(\"An image with this name already exists.\")));this.imageManager.addImage(e,r),this._afterImageUpdated(e)},r.prototype.updateImage=function(t,e){this.imageManager.updateImage(t,e)},r.prototype.getImage=function(t){return this.imageManager.getImage(t)},r.prototype.removeImage=function(e){if(!this.getImage(e))return this.fire(new t.ErrorEvent(new Error(\"No image with this name exists.\")));this.imageManager.removeImage(e),this._afterImageUpdated(e)},r.prototype._afterImageUpdated=function(e){this._availableImages=this.imageManager.listImages(),this._changedImages[e]=!0,this._changed=!0,this.dispatcher.broadcast(\"setImages\",this._availableImages),this.fire(new t.Event(\"data\",{dataType:\"style\"}))},r.prototype.listImages=function(){return this._checkLoaded(),this.imageManager.listImages()},r.prototype.addSource=function(e,r,n){var i=this;if(void 0===n&&(n={}),this._checkLoaded(),void 0!==this.sourceCaches[e])throw new Error(\"There is already a source with this ID\");if(!r.type)throw new Error(\"The type property must be defined, but only the following properties were given: \"+Object.keys(r).join(\", \")+\".\");if(!([\"vector\",\"raster\",\"geojson\",\"video\",\"image\"].indexOf(r.type)>=0&&this._validate(t.validateStyle.source,\"sources.\"+e,r,null,n))){this.map&&this.map._collectResourceTiming&&(r.collectResourceTiming=!0);var a=this.sourceCaches[e]=new Pt(e,r,this.dispatcher);a.style=this,a.setEventedParent(this,(function(){return{isSourceLoaded:i.loaded(),source:a.serialize(),sourceId:e}})),a.onAdd(this.map),this._changed=!0}},r.prototype.removeSource=function(e){if(this._checkLoaded(),void 0===this.sourceCaches[e])throw new Error(\"There is no source with this ID\");for(var r in this._layers)if(this._layers[r].source===e)return this.fire(new t.ErrorEvent(new Error('Source \"'+e+'\" cannot be removed while layer \"'+r+'\" is using it.')));var n=this.sourceCaches[e];delete this.sourceCaches[e],delete this._updatedSources[e],n.fire(new t.Event(\"data\",{sourceDataType:\"metadata\",dataType:\"source\",sourceId:e})),n.setEventedParent(null),n.clearTiles(),n.onRemove&&n.onRemove(this.map),this._changed=!0},r.prototype.setGeoJSONSourceData=function(t,e){this._checkLoaded(),this.sourceCaches[t].getSource().setData(e),this._changed=!0},r.prototype.getSource=function(t){return this.sourceCaches[t]&&this.sourceCaches[t].getSource()},r.prototype.addLayer=function(e,r,n){void 0===n&&(n={}),this._checkLoaded();var i=e.id;if(this.getLayer(i))this.fire(new t.ErrorEvent(new Error('Layer with id \"'+i+'\" already exists on this map')));else{var a;if(\"custom\"===e.type){if(qe(this,t.validateCustomStyleLayer(e)))return;a=t.createStyleLayer(e)}else{if(\"object\"==typeof e.source&&(this.addSource(i,e.source),e=t.clone$1(e),e=t.extend(e,{source:i})),this._validate(t.validateStyle.layer,\"layers.\"+i,e,{arrayIndex:-1},n))return;a=t.createStyleLayer(e),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 t.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(e,r){if(this._checkLoaded(),this._changed=!0,this._layers[e]){if(e!==r){var n=this._order.indexOf(e);this._order.splice(n,1);var i=r?this._order.indexOf(r):this._order.length;r&&-1===i?this.fire(new t.ErrorEvent(new Error('Layer with id \"'+r+'\" does not exist on this map.'))):(this._order.splice(i,0,e),this._layerOrderChanged=!0)}}else this.fire(new t.ErrorEvent(new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be moved.\")))},r.prototype.removeLayer=function(e){this._checkLoaded();var r=this._layers[e];if(r){r.setEventedParent(null);var n=this._order.indexOf(e);this._order.splice(n,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[e]=r,delete this._layers[e],delete this._serializedLayers[e],delete this._updatedLayers[e],delete this._updatedPaintProps[e],r.onRemove&&r.onRemove(this.map)}else this.fire(new t.ErrorEvent(new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be removed.\")))},r.prototype.getLayer=function(t){return this._layers[t]},r.prototype.hasLayer=function(t){return t in this._layers},r.prototype.setLayerZoomRange=function(e,r,n){this._checkLoaded();var i=this.getLayer(e);i?i.minzoom===r&&i.maxzoom===n||(null!=r&&(i.minzoom=r),null!=n&&(i.maxzoom=n),this._updateLayer(i)):this.fire(new t.ErrorEvent(new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot have zoom extent.\")))},r.prototype.setFilter=function(e,r,n){void 0===n&&(n={}),this._checkLoaded();var i=this.getLayer(e);if(i){if(!t.deepEqual(i.filter,r))return null==r?(i.filter=void 0,void this._updateLayer(i)):void(this._validate(t.validateStyle.filter,\"layers.\"+i.id+\".filter\",r,null,n)||(i.filter=t.clone$1(r),this._updateLayer(i)))}else this.fire(new t.ErrorEvent(new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be filtered.\")))},r.prototype.getFilter=function(e){return t.clone$1(this.getLayer(e).filter)},r.prototype.setLayoutProperty=function(e,r,n,i){void 0===i&&(i={}),this._checkLoaded();var a=this.getLayer(e);a?t.deepEqual(a.getLayoutProperty(r),n)||(a.setLayoutProperty(r,n,i),this._updateLayer(a)):this.fire(new t.ErrorEvent(new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be styled.\")))},r.prototype.getLayoutProperty=function(e,r){var n=this.getLayer(e);if(n)return n.getLayoutProperty(r);this.fire(new t.ErrorEvent(new Error(\"The layer '\"+e+\"' does not exist in the map's style.\")))},r.prototype.setPaintProperty=function(e,r,n,i){void 0===i&&(i={}),this._checkLoaded();var a=this.getLayer(e);a?t.deepEqual(a.getPaintProperty(r),n)||(a.setPaintProperty(r,n,i)&&this._updateLayer(a),this._changed=!0,this._updatedPaintProps[e]=!0):this.fire(new t.ErrorEvent(new Error(\"The layer '\"+e+\"' does not exist in the map's style and cannot be styled.\")))},r.prototype.getPaintProperty=function(t,e){return this.getLayer(t).getPaintProperty(e)},r.prototype.setFeatureState=function(e,r){this._checkLoaded();var n=e.source,i=e.sourceLayer,a=this.sourceCaches[n];if(void 0!==a){var o=a.getSource().type;\"geojson\"===o&&i?this.fire(new t.ErrorEvent(new Error(\"GeoJSON sources cannot have a sourceLayer parameter.\"))):\"vector\"!==o||i?(void 0===e.id&&this.fire(new t.ErrorEvent(new Error(\"The feature id parameter must be provided.\"))),a.setFeatureState(i,e.id,r)):this.fire(new t.ErrorEvent(new Error(\"The sourceLayer parameter must be provided for vector source types.\")))}else this.fire(new t.ErrorEvent(new Error(\"The source '\"+n+\"' does not exist in the map's style.\")))},r.prototype.removeFeatureState=function(e,r){this._checkLoaded();var n=e.source,i=this.sourceCaches[n];if(void 0!==i){var a=i.getSource().type,o=\"vector\"===a?e.sourceLayer:void 0;\"vector\"!==a||o?r&&\"string\"!=typeof e.id&&\"number\"!=typeof e.id?this.fire(new t.ErrorEvent(new Error(\"A feature id is required to remove its specific state property.\"))):i.removeFeatureState(o,e.id,r):this.fire(new t.ErrorEvent(new Error(\"The sourceLayer parameter must be provided for vector source types.\")))}else this.fire(new t.ErrorEvent(new Error(\"The source '\"+n+\"' does not exist in the map's style.\")))},r.prototype.getFeatureState=function(e){this._checkLoaded();var r=e.source,n=e.sourceLayer,i=this.sourceCaches[r];if(void 0!==i){if(\"vector\"!==i.getSource().type||n)return void 0===e.id&&this.fire(new t.ErrorEvent(new Error(\"The feature id parameter must be provided.\"))),i.getFeatureState(n,e.id);this.fire(new t.ErrorEvent(new Error(\"The sourceLayer parameter must be provided for vector source types.\")))}else this.fire(new t.ErrorEvent(new Error(\"The source '\"+r+\"' does not exist in the map's style.\")))},r.prototype.getTransition=function(){return t.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},r.prototype.serialize=function(){return t.filterObject({version:this.stylesheet.version,name:this.stylesheet.name,metadata:this.stylesheet.metadata,light:this.stylesheet.light,center:this.stylesheet.center,zoom:this.stylesheet.zoom,bearing:this.stylesheet.bearing,pitch:this.stylesheet.pitch,sprite:this.stylesheet.sprite,glyphs:this.stylesheet.glyphs,transition:this.stylesheet.transition,sources:t.mapObject(this.sourceCaches,(function(t){return t.serialize()})),layers:this._serializeLayers(this._order)},(function(t){return void 0!==t}))},r.prototype._updateLayer=function(t){this._updatedLayers[t.id]=!0,t.source&&!this._updatedSources[t.source]&&\"raster\"!==this.sourceCaches[t.source].getSource().type&&(this._updatedSources[t.source]=\"reload\",this.sourceCaches[t.source].pause()),this._changed=!0},r.prototype._flattenAndSortRenderedFeatures=function(t){for(var e=this,r=function(t){return\"fill-extrusion\"===e._layers[t].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=t;s<l.length;s+=1){var c=l[s][o];if(c)for(var u=0,h=c;u<h.length;u+=1){var f=h[u];i.push(f)}}}}i.sort((function(t,e){return e.intersectionZ-t.intersectionZ}));for(var p=[],d=this._order.length-1;d>=0;d--){var m=this._order[d];if(r(m))for(var g=i.length-1;g>=0;g--){var y=i[g].feature;if(n[y.layer.id]<d)break;p.push(y),i.pop()}else for(var v=0,x=t;v<x.length;v+=1){var _=x[v][m];if(_)for(var b=0,w=_;b<w.length;b+=1){var T=w[b];p.push(T.feature)}}}return p},r.prototype.queryRenderedFeatures=function(e,r,n){r&&r.filter&&this._validate(t.validateStyle.filter,\"queryRenderedFeatures.filter\",r.filter,null,r);var i={};if(r&&r.layers){if(!Array.isArray(r.layers))return this.fire(new t.ErrorEvent(new Error(\"parameters.layers must be an Array.\"))),[];for(var a=0,o=r.layers;a<o.length;a+=1){var s=o[a],l=this._layers[s];if(!l)return this.fire(new t.ErrorEvent(new Error(\"The layer '\"+s+\"' does not exist in the map's style and cannot be queried for features.\"))),[];i[l.source]=!0}}var c=[];for(var u in r.availableImages=this._availableImages,this.sourceCaches)r.layers&&!i[u]||c.push(B(this.sourceCaches[u],this._layers,this._serializedLayers,e,r,n));return this.placement&&c.push(function(t,e,r,n,i,a,o){for(var s={},l=a.queryRenderedSymbols(n),c=[],u=0,h=Object.keys(l).map(Number);u<h.length;u+=1){var f=h[u];c.push(o[f])}c.sort(N);for(var p=function(){var r=m[d],n=r.featureIndex.lookupSymbolFeatures(l[r.bucketInstanceId],e,r.bucketIndex,r.sourceLayerIndex,i.filter,i.layers,i.availableImages,t);for(var a in n){var o=s[a]=s[a]||[],c=n[a];c.sort((function(t,e){var n=r.featureSortOrder;if(n){var i=n.indexOf(t.featureIndex);return n.indexOf(e.featureIndex)-i}return e.featureIndex-t.featureIndex}));for(var u=0,h=c;u<h.length;u+=1){var f=h[u];o.push(f)}}},d=0,m=c;d<m.length;d+=1)p();var g=function(e){s[e].forEach((function(n){var i=n.feature,a=t[e],o=r[a.source].getFeatureState(i.layer[\"source-layer\"],i.id);i.source=i.layer.source,i.layer[\"source-layer\"]&&(i.sourceLayer=i.layer[\"source-layer\"]),i.state=o}))};for(var y in s)g(y);return s}(this._layers,this._serializedLayers,this.sourceCaches,e,r,this.placement.collisionIndex,this.placement.retainedQueryData)),this._flattenAndSortRenderedFeatures(c)},r.prototype.querySourceFeatures=function(e,r){r&&r.filter&&this._validate(t.validateStyle.filter,\"querySourceFeatures.filter\",r.filter,null,r);var n=this.sourceCaches[e];return n?function(t,e){for(var r=t.getRenderableIds().map((function(e){return t.getTileByID(e)})),n=[],i={},a=0;a<r.length;a++){var o=r[a],s=o.tileID.canonical.key;i[s]||(i[s]=!0,o.querySourceFeatures(n,e))}return n}(n,r):[]},r.prototype.addSourceType=function(t,e,n){return r.getSourceType(t)?n(new Error('A source type called \"'+t+'\" already exists.')):(r.setSourceType(t,e),e.workerSourceURL?void this.dispatcher.broadcast(\"loadWorkerSource\",{name:t,url:e.workerSourceURL},n):n(null,null))},r.prototype.getLight=function(){return this.light.getLight()},r.prototype.setLight=function(e,r){void 0===r&&(r={}),this._checkLoaded();var n=this.light.getLight(),i=!1;for(var a in e)if(!t.deepEqual(e[a],n[a])){i=!0;break}if(i){var o={now:t.browser.now(),transition:t.extend({duration:300,delay:0},this.stylesheet.transition)};this.light.setLight(e,r),this.light.updateTransitions(o)}},r.prototype._validate=function(e,r,n,i,a){return void 0===a&&(a={}),(!a||!1!==a.validate)&&qe(this,e.call(t.validateStyle,t.extend({key:r,style:this.serialize(),value:n,styleSpec:t.styleSpec},i)))},r.prototype._remove=function(){for(var e in this._request&&(this._request.cancel(),this._request=null),this._spriteRequest&&(this._spriteRequest.cancel(),this._spriteRequest=null),t.evented.off(\"pluginStateChange\",this._rtlTextPluginCallback),this._layers)this._layers[e].setEventedParent(null);for(var r in this.sourceCaches)this.sourceCaches[r].clearTiles(),this.sourceCaches[r].setEventedParent(null);this.imageManager.setEventedParent(null),this.setEventedParent(null),this.dispatcher.remove()},r.prototype._clearSource=function(t){this.sourceCaches[t].clearTiles()},r.prototype._reloadSource=function(t){this.sourceCaches[t].resume(),this.sourceCaches[t].reload()},r.prototype._updateSources=function(t){for(var e in this.sourceCaches)this.sourceCaches[e].update(t)},r.prototype._generateCollisionBoxes=function(){for(var t in this.sourceCaches)this._reloadSource(t)},r.prototype._updatePlacement=function(e,r,n,i,a){void 0===a&&(a=!1);for(var o=!1,s=!1,l={},c=0,u=this._order;c<u.length;c+=1){var h=u[c],f=this._layers[h];if(\"symbol\"===f.type){if(!l[f.source]){var p=this.sourceCaches[f.source];l[f.source]=p.getRenderableIds(!0).map((function(t){return p.getTileByID(t)})).sort((function(t,e){return e.tileID.overscaledZ-t.tileID.overscaledZ||(t.tileID.isLessThan(e.tileID)?-1:1)}))}var d=this.crossTileSymbolIndex.addLayer(f,l[f.source],e.center.lng);o=o||d}}if(this.crossTileSymbolIndex.pruneUnusedLayers(this._order),((a=a||this._layerOrderChanged||0===n)||!this.pauseablePlacement||this.pauseablePlacement.isDone()&&!this.placement.stillRecent(t.browser.now(),e.zoom))&&(this.pauseablePlacement=new Fe(e,this._order,a,r,n,i,this.placement),this._layerOrderChanged=!1),this.pauseablePlacement.isDone()?this.placement.setStale():(this.pauseablePlacement.continuePlacement(this._order,this._layers,l),this.pauseablePlacement.isDone()&&(this.placement=this.pauseablePlacement.commit(t.browser.now()),s=!0),o&&this.pauseablePlacement.placement.setStale()),s||o)for(var m=0,g=this._order;m<g.length;m+=1){var y=g[m],v=this._layers[y];\"symbol\"===v.type&&this.placement.updateLayerOpacities(v,l[v.source])}return!this.pauseablePlacement.isDone()||this.placement.hasTransitions(t.browser.now())},r.prototype._releaseSymbolFadeTiles=function(){for(var t in this.sourceCaches)this.sourceCaches[t].releaseSymbolFadeTiles()},r.prototype.getImages=function(t,e,r){this.imageManager.getImages(e.icons,r),this._updateTilesForChangedImages();var n=this.sourceCaches[e.source];n&&n.setDependencies(e.tileID.key,e.type,e.icons)},r.prototype.getGlyphs=function(t,e,r){this.glyphManager.getGlyphs(e.stacks,r)},r.prototype.getResource=function(e,r,n){return t.makeRequest(r,n)},r}(t.Evented);We.getSourceType=function(t){return R[t]},We.setSourceType=function(t,e){R[t]=e},We.registerForPluginStateChange=t.registerForPluginStateChange;var Ye=t.createLayout([{name:\"a_pos\",type:\"Int16\",components:2}]),Xe=br(\"#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;}\"),$e=br(\"uniform vec4 u_color;uniform float u_opacity;void main() {gl_FragColor=u_color*u_opacity;\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}\"),Je=br(\"uniform vec2 u_pattern_tl_a;uniform vec2 u_pattern_br_a;uniform vec2 u_pattern_tl_b;uniform vec2 u_pattern_br_b;uniform vec2 u_texsize;uniform float u_mix;uniform float u_opacity;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;void main() {vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(u_pattern_tl_a/u_texsize,u_pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(u_pattern_tl_b/u_texsize,u_pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);gl_FragColor=mix(color1,color2,u_mix)*u_opacity;\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"uniform mat4 u_matrix;uniform vec2 u_pattern_size_a;uniform vec2 u_pattern_size_b;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_scale_a;uniform float u_scale_b;uniform float u_tile_units_to_pixels;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_scale_a*u_pattern_size_a,u_tile_units_to_pixels,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_scale_b*u_pattern_size_b,u_tile_units_to_pixels,a_pos);}\"),Ke=br(\"varying vec3 v_data;\\n#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define mediump float radius\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define highp vec4 stroke_color\\n#pragma mapbox: define mediump float stroke_width\\n#pragma mapbox: define lowp float stroke_opacity\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 color\\n#pragma mapbox: initialize mediump float radius\\n#pragma mapbox: initialize lowp float blur\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize highp vec4 stroke_color\\n#pragma mapbox: initialize mediump float stroke_width\\n#pragma mapbox: initialize lowp float stroke_opacity\\nvec2 extrude=v_data.xy;float extrude_length=length(extrude);lowp float antialiasblur=v_data.z;float antialiased_blur=-max(blur,antialiasblur);float opacity_t=smoothstep(0.0,antialiased_blur,extrude_length-1.0);float color_t=stroke_width < 0.01 ? 0.0 : smoothstep(antialiased_blur,0.0,extrude_length-radius/(radius+stroke_width));gl_FragColor=opacity_t*mix(color*opacity,stroke_color*stroke_opacity,color_t);\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"uniform mat4 u_matrix;uniform bool u_scale_with_map;uniform bool u_pitch_with_map;uniform vec2 u_extrude_scale;uniform lowp float u_device_pixel_ratio;uniform highp float u_camera_to_center_distance;attribute vec2 a_pos;varying vec3 v_data;\\n#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define mediump float radius\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define highp vec4 stroke_color\\n#pragma mapbox: define mediump float stroke_width\\n#pragma mapbox: define lowp float stroke_opacity\\nvoid main(void) {\\n#pragma mapbox: initialize highp vec4 color\\n#pragma mapbox: initialize mediump float radius\\n#pragma mapbox: initialize lowp float blur\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize highp vec4 stroke_color\\n#pragma mapbox: initialize mediump float stroke_width\\n#pragma mapbox: initialize lowp float stroke_opacity\\nvec2 extrude=vec2(mod(a_pos,2.0)*2.0-1.0);vec2 circle_center=floor(a_pos*0.5);if (u_pitch_with_map) {vec2 corner_position=circle_center;if (u_scale_with_map) {corner_position+=extrude*(radius+stroke_width)*u_extrude_scale;} else {vec4 projected_center=u_matrix*vec4(circle_center,0,1);corner_position+=extrude*(radius+stroke_width)*u_extrude_scale*(projected_center.w/u_camera_to_center_distance);}gl_Position=u_matrix*vec4(corner_position,0,1);} else {gl_Position=u_matrix*vec4(circle_center,0,1);if (u_scale_with_map) {gl_Position.xy+=extrude*(radius+stroke_width)*u_extrude_scale*u_camera_to_center_distance;} else {gl_Position.xy+=extrude*(radius+stroke_width)*u_extrude_scale*gl_Position.w;}}lowp float antialiasblur=1.0/u_device_pixel_ratio/(radius+stroke_width);v_data=vec3(extrude.x,extrude.y,antialiasblur);}\"),Qe=br(\"void main() {gl_FragColor=vec4(1.0);}\",\"attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}\"),tr=br(\"uniform highp float u_intensity;varying vec2 v_extrude;\\n#pragma mapbox: define highp float weight\\n#define GAUSS_COEF 0.3989422804014327\\nvoid main() {\\n#pragma mapbox: initialize highp float weight\\nfloat d=-0.5*3.0*3.0*dot(v_extrude,v_extrude);float val=weight*u_intensity*GAUSS_COEF*exp(d);gl_FragColor=vec4(val,1.0,1.0,1.0);\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"uniform mat4 u_matrix;uniform float u_extrude_scale;uniform float u_opacity;uniform float u_intensity;attribute vec2 a_pos;varying vec2 v_extrude;\\n#pragma mapbox: define highp float weight\\n#pragma mapbox: define mediump float radius\\nconst highp float ZERO=1.0/255.0/16.0;\\n#define GAUSS_COEF 0.3989422804014327\\nvoid main(void) {\\n#pragma mapbox: initialize highp float weight\\n#pragma mapbox: initialize mediump float radius\\nvec2 unscaled_extrude=vec2(mod(a_pos,2.0)*2.0-1.0);float S=sqrt(-2.0*log(ZERO/weight/u_intensity/GAUSS_COEF))/3.0;v_extrude=S*unscaled_extrude;vec2 extrude=v_extrude*radius*u_extrude_scale;vec4 pos=vec4(floor(a_pos*0.5)+extrude,0,1);gl_Position=u_matrix*pos;}\"),er=br(\"uniform sampler2D u_image;uniform sampler2D u_color_ramp;uniform float u_opacity;varying vec2 v_pos;void main() {float t=texture2D(u_image,v_pos).r;vec4 color=texture2D(u_color_ramp,vec2(t,0.5));gl_FragColor=color*u_opacity;\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(0.0);\\n#endif\\n}\",\"uniform mat4 u_matrix;uniform vec2 u_world;attribute vec2 a_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos*u_world,0,1);v_pos.x=a_pos.x;v_pos.y=1.0-a_pos.y;}\"),rr=br(\"varying float v_placed;varying float v_notUsed;void main() {float alpha=0.5;gl_FragColor=vec4(1.0,0.0,0.0,1.0)*alpha;if (v_placed > 0.5) {gl_FragColor=vec4(0.0,0.0,1.0,0.5)*alpha;}if (v_notUsed > 0.5) {gl_FragColor*=.1;}}\",\"attribute vec2 a_pos;attribute vec2 a_anchor_pos;attribute vec2 a_extrude;attribute vec2 a_placed;attribute vec2 a_shift;uniform mat4 u_matrix;uniform vec2 u_extrude_scale;uniform float u_camera_to_center_distance;varying float v_placed;varying float v_notUsed;void main() {vec4 projectedPoint=u_matrix*vec4(a_anchor_pos,0,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float collision_perspective_ratio=clamp(0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,4.0);gl_Position=u_matrix*vec4(a_pos,0.0,1.0);gl_Position.xy+=(a_extrude+a_shift)*u_extrude_scale*gl_Position.w*collision_perspective_ratio;v_placed=a_placed.x;v_notUsed=a_placed.y;}\"),nr=br(\"varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;void main() {float alpha=0.5*min(v_perspective_ratio,1.0);float stroke_radius=0.9*max(v_perspective_ratio,1.0);float distance_to_center=length(v_extrude);float distance_to_edge=abs(distance_to_center-v_radius);float opacity_t=smoothstep(-stroke_radius,0.0,-distance_to_edge);vec4 color=mix(vec4(0.0,0.0,1.0,0.5),vec4(1.0,0.0,0.0,1.0),v_collision);gl_FragColor=color*alpha*opacity_t;}\",\"attribute vec2 a_pos;attribute float a_radius;attribute vec2 a_flags;uniform mat4 u_matrix;uniform mat4 u_inv_matrix;uniform vec2 u_viewport_size;uniform float u_camera_to_center_distance;varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;vec3 toTilePosition(vec2 screenPos) {vec4 rayStart=u_inv_matrix*vec4(screenPos,-1.0,1.0);vec4 rayEnd =u_inv_matrix*vec4(screenPos, 1.0,1.0);rayStart.xyz/=rayStart.w;rayEnd.xyz /=rayEnd.w;highp float t=(0.0-rayStart.z)/(rayEnd.z-rayStart.z);return mix(rayStart.xyz,rayEnd.xyz,t);}void main() {vec2 quadCenterPos=a_pos;float radius=a_radius;float collision=a_flags.x;float vertexIdx=a_flags.y;vec2 quadVertexOffset=vec2(mix(-1.0,1.0,float(vertexIdx >=2.0)),mix(-1.0,1.0,float(vertexIdx >=1.0 && vertexIdx <=2.0)));vec2 quadVertexExtent=quadVertexOffset*radius;vec3 tilePos=toTilePosition(quadCenterPos);vec4 clipPos=u_matrix*vec4(tilePos,1.0);highp float camera_to_anchor_distance=clipPos.w;highp float collision_perspective_ratio=clamp(0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,4.0);float padding_factor=1.2;v_radius=radius;v_extrude=quadVertexExtent*padding_factor;v_perspective_ratio=collision_perspective_ratio;v_collision=collision;gl_Position=vec4(clipPos.xyz/clipPos.w,1.0)+vec4(quadVertexExtent*padding_factor/u_viewport_size*2.0,0.0,0.0);}\"),ir=br(\"uniform highp vec4 u_color;uniform sampler2D u_overlay;varying vec2 v_uv;void main() {vec4 overlay_color=texture2D(u_overlay,v_uv);gl_FragColor=mix(u_color,overlay_color,overlay_color.a);}\",\"attribute vec2 a_pos;varying vec2 v_uv;uniform mat4 u_matrix;uniform float u_overlay_scale;void main() {v_uv=a_pos/8192.0;gl_Position=u_matrix*vec4(a_pos*u_overlay_scale,0,1);}\"),ar=br(\"#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}\",\"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);}\"),or=br(\"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}\",\"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;}\"),sr=br(\"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}\",\"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;}\"),lr=br(\"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}\",\"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);}\"),cr=br(\"varying vec4 v_color;void main() {gl_FragColor=v_color;\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"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;}\"),ur=br(\"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}\",\"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;}\"),hr=br(\"#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 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 exaggerationFactor=u_zoom < 2.0 ? 0.4 : u_zoom < 4.5 ? 0.35 : 0.3;float exaggeration=u_zoom < 15.0 ? (u_zoom-15.0)*exaggerationFactor : 0.0;vec2 deriv=vec2((c+f+f+i)-(a+d+d+g),(g+h+h+i)-(a+b+b+c))/pow(2.0,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}\",\"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;}\"),fr=br(\"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}\",\"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;}\"),pr=br(\"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}\",\"\\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);}\"),dr=br(\"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 vec2 v_uv;\\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,v_uv);gl_FragColor=color*(alpha*opacity);\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"\\n#define scale 0.015873016\\nattribute vec2 a_pos_normal;attribute vec4 a_data;attribute float a_uv_x;attribute float a_split_index;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_units_to_pixels;uniform float u_image_height;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp vec2 v_uv;\\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;highp float texel_height=1.0/u_image_height;highp float half_texel_height=0.5*texel_height;v_uv=vec2(a_uv_x,a_split_index*texel_height-half_texel_height);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);}\"),mr=br(\"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}\",\"\\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;}\"),gr=br(\"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}\",\"\\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);}\"),yr=br(\"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}\",\"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;}\"),vr=br(\"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}\",\"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));}\"),xr=br(\"#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}\",\"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);}\"),_r=br(\"#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}\",\"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);}\");function br(t,e){var r=/#pragma mapbox: ([\\w]+) ([\\w]+) ([\\w]+) ([\\w]+)/g,n=e.match(/attribute ([\\w]+) ([\\w]+)/g),i=t.match(/uniform ([\\w]+) ([\\w]+)([\\s]*)([\\w]*)/g),a=e.match(/uniform ([\\w]+) ([\\w]+)([\\s]*)([\\w]*)/g),o=a?a.concat(i):i,s={};return{fragmentSource:t=t.replace(r,(function(t,e,r,n,i){return s[i]=!0,\"define\"===e?\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\nvarying \"+r+\" \"+n+\" \"+i+\";\\n#else\\nuniform \"+r+\" \"+n+\" u_\"+i+\";\\n#endif\\n\":\"\\n#ifdef HAS_UNIFORM_u_\"+i+\"\\n \"+r+\" \"+n+\" \"+i+\" = u_\"+i+\";\\n#endif\\n\"})),vertexSource:e=e.replace(r,(function(t,e,r,n,i){var a=\"float\"===n?\"vec2\":\"vec4\",o=i.match(/color/)?\"color\":a;return s[i]?\"define\"===e?\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\nuniform lowp float u_\"+i+\"_t;\\nattribute \"+r+\" \"+a+\" a_\"+i+\";\\nvarying \"+r+\" \"+n+\" \"+i+\";\\n#else\\nuniform \"+r+\" \"+n+\" u_\"+i+\";\\n#endif\\n\":\"vec4\"===o?\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\n \"+i+\" = a_\"+i+\";\\n#else\\n \"+r+\" \"+n+\" \"+i+\" = u_\"+i+\";\\n#endif\\n\":\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\n \"+i+\" = unpack_mix_\"+o+\"(a_\"+i+\", u_\"+i+\"_t);\\n#else\\n \"+r+\" \"+n+\" \"+i+\" = u_\"+i+\";\\n#endif\\n\":\"define\"===e?\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\nuniform lowp float u_\"+i+\"_t;\\nattribute \"+r+\" \"+a+\" a_\"+i+\";\\n#else\\nuniform \"+r+\" \"+n+\" u_\"+i+\";\\n#endif\\n\":\"vec4\"===o?\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\n \"+r+\" \"+n+\" \"+i+\" = a_\"+i+\";\\n#else\\n \"+r+\" \"+n+\" \"+i+\" = u_\"+i+\";\\n#endif\\n\":\"\\n#ifndef HAS_UNIFORM_u_\"+i+\"\\n \"+r+\" \"+n+\" \"+i+\" = unpack_mix_\"+o+\"(a_\"+i+\", u_\"+i+\"_t);\\n#else\\n \"+r+\" \"+n+\" \"+i+\" = u_\"+i+\";\\n#endif\\n\"})),staticAttributes:n,staticUniforms:o}}var wr=Object.freeze({__proto__:null,prelude:Xe,background:$e,backgroundPattern:Je,circle:Ke,clippingMask:Qe,heatmap:tr,heatmapTexture:er,collisionBox:rr,collisionCircle:nr,debug:ir,fill:ar,fillOutline:or,fillOutlinePattern:sr,fillPattern:lr,fillExtrusion:cr,fillExtrusionPattern:ur,hillshadePrepare:hr,hillshade:fr,line:pr,lineGradient:dr,linePattern:mr,lineSDF:gr,raster:yr,symbolIcon:vr,symbolSDF:xr,symbolTextAndIcon:_r}),Tr=function(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null};function kr(t){for(var e=[],r=0;r<t.length;r++)if(null!==t[r]){var n=t[r].split(\" \");e.push(n.pop())}return e}Tr.prototype.bind=function(t,e,r,n,i,a,o,s){this.context=t;for(var l=this.boundPaintVertexBuffers.length!==n.length,c=0;!l&&c<n.length;c++)this.boundPaintVertexBuffers[c]!==n[c]&&(l=!0);var u=!this.vao||this.boundProgram!==e||this.boundLayoutVertexBuffer!==r||l||this.boundIndexBuffer!==i||this.boundVertexOffset!==a||this.boundDynamicVertexBuffer!==o||this.boundDynamicVertexBuffer2!==s;!t.extVertexArrayObject||u?this.freshBind(e,r,n,i,a,o,s):(t.bindVertexArrayOES.set(this.vao),o&&o.bind(),i&&i.dynamicDraw&&i.bind(),s&&s.bind())},Tr.prototype.freshBind=function(t,e,r,n,i,a,o){var s,l=t.numAttributes,c=this.context,u=c.gl;if(c.extVertexArrayObject)this.vao&&this.destroy(),this.vao=c.extVertexArrayObject.createVertexArrayOES(),c.bindVertexArrayOES.set(this.vao),s=0,this.boundProgram=t,this.boundLayoutVertexBuffer=e,this.boundPaintVertexBuffers=r,this.boundIndexBuffer=n,this.boundVertexOffset=i,this.boundDynamicVertexBuffer=a,this.boundDynamicVertexBuffer2=o;else{s=c.currentNumAttributes||0;for(var h=l;h<s;h++)u.disableVertexAttribArray(h)}e.enableAttributes(u,t);for(var f=0,p=r;f<p.length;f+=1)p[f].enableAttributes(u,t);a&&a.enableAttributes(u,t),o&&o.enableAttributes(u,t),e.bind(),e.setVertexAttribPointers(u,t,i);for(var d=0,m=r;d<m.length;d+=1){var g=m[d];g.bind(),g.setVertexAttribPointers(u,t,i)}a&&(a.bind(),a.setVertexAttribPointers(u,t,i)),n&&n.bind(),o&&(o.bind(),o.setVertexAttribPointers(u,t,i)),c.currentNumAttributes=l},Tr.prototype.destroy=function(){this.vao&&(this.context.extVertexArrayObject.deleteVertexArrayOES(this.vao),this.vao=null)};var Ar=function(t,e,r,n,i,a){var o=t.gl;this.program=o.createProgram();for(var s=kr(r.staticAttributes),l=n?n.getBinderAttributes():[],c=s.concat(l),u=r.staticUniforms?kr(r.staticUniforms):[],h=n?n.getBinderUniforms():[],f=[],p=0,d=u.concat(h);p<d.length;p+=1){var m=d[p];f.indexOf(m)<0&&f.push(m)}var g=n?n.defines():[];a&&g.push(\"#define OVERDRAW_INSPECTOR;\");var y=g.concat(Xe.fragmentSource,r.fragmentSource).join(\"\\n\"),v=g.concat(Xe.vertexSource,r.vertexSource).join(\"\\n\"),x=o.createShader(o.FRAGMENT_SHADER);if(o.isContextLost())this.failedToCreate=!0;else{o.shaderSource(x,y),o.compileShader(x),o.attachShader(this.program,x);var _=o.createShader(o.VERTEX_SHADER);if(o.isContextLost())this.failedToCreate=!0;else{o.shaderSource(_,v),o.compileShader(_),o.attachShader(this.program,_),this.attributes={};var b={};this.numAttributes=c.length;for(var w=0;w<this.numAttributes;w++)c[w]&&(o.bindAttribLocation(this.program,w,c[w]),this.attributes[c[w]]=w);o.linkProgram(this.program),o.deleteShader(_),o.deleteShader(x);for(var T=0;T<f.length;T++){var k=f[T];if(k&&!b[k]){var A=o.getUniformLocation(this.program,k);A&&(b[k]=A)}}this.fixedUniforms=i(t,b),this.binderUniforms=n?n.getUniforms(t,b):[]}}};function Mr(t,e,r){var n=1/ge(r,1,e.transform.tileZoom),i=Math.pow(2,r.tileID.overscaledZ),a=r.tileSize*Math.pow(2,e.transform.tileZoom)/i,o=a*(r.tileID.canonical.x+r.tileID.wrap*i),s=a*r.tileID.canonical.y;return{u_image:0,u_texsize:r.imageAtlasTexture.size,u_scale:[n,t.fromScale,t.toScale],u_fade:t.t,u_pixel_coord_upper:[o>>16,s>>16],u_pixel_coord_lower:[65535&o,65535&s]}}Ar.prototype.draw=function(t,e,r,n,i,a,o,s,l,c,u,h,f,p,d,m){var g,y=t.gl;if(!this.failedToCreate){for(var v in t.program.set(this.program),t.setDepthMode(r),t.setStencilMode(n),t.setColorMode(i),t.setCullFace(a),this.fixedUniforms)this.fixedUniforms[v].set(o[v]);p&&p.setUniforms(t,this.binderUniforms,h,{zoom:f});for(var x=(g={},g[y.LINES]=2,g[y.TRIANGLES]=3,g[y.LINE_STRIP]=1,g)[e],_=0,b=u.get();_<b.length;_+=1){var w=b[_],T=w.vaos||(w.vaos={});(T[s]||(T[s]=new Tr)).bind(t,this,l,p?p.getPaintVertexBuffers():[],c,w.vertexOffset,d,m),y.drawElements(e,w.primitiveLength*x,y.UNSIGNED_SHORT,w.primitiveOffset*x*2)}}};var Sr=function(e,r,n,i){var a=r.style.light,o=a.properties.get(\"position\"),s=[o.x,o.y,o.z],l=t.create$1();\"viewport\"===a.properties.get(\"anchor\")&&t.fromRotation(l,-r.transform.angle),t.transformMat3(s,s,l);var c=a.properties.get(\"color\");return{u_matrix:e,u_lightpos:s,u_lightintensity:a.properties.get(\"intensity\"),u_lightcolor:[c.r,c.g,c.b],u_vertical_gradient:+n,u_opacity:i}},Er=function(e,r,n,i,a,o,s){return t.extend(Sr(e,r,n,i),Mr(o,r,s),{u_height_factor:-Math.pow(2,a.overscaledZ)/s.tileSize/8})},Cr=function(t){return{u_matrix:t}},Lr=function(e,r,n,i){return t.extend(Cr(e),Mr(n,r,i))},Ir=function(t,e){return{u_matrix:t,u_world:e}},Pr=function(e,r,n,i,a){return t.extend(Lr(e,r,n,i),{u_world:a})},zr=function(e,r,n,i){var a,o,s=e.transform;if(\"map\"===i.paint.get(\"circle-pitch-alignment\")){var l=ge(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:e.translatePosMatrix(r.posMatrix,n,i.paint.get(\"circle-translate\"),i.paint.get(\"circle-translate-anchor\")),u_pitch_with_map:+a,u_device_pixel_ratio:t.browser.devicePixelRatio,u_extrude_scale:o}},Or=function(t,e,r){var n=ge(r,1,e.zoom),i=Math.pow(2,e.zoom-r.tileID.overscaledZ),a=r.tileID.overscaleFactor();return{u_matrix:t,u_camera_to_center_distance:e.cameraToCenterDistance,u_pixels_to_tile_units:n,u_extrude_scale:[e.pixelsToGLUnits[0]/(n*i),e.pixelsToGLUnits[1]/(n*i)],u_overscale_factor:a}},Dr=function(t,e,r){return{u_matrix:t,u_inv_matrix:e,u_camera_to_center_distance:r.cameraToCenterDistance,u_viewport_size:[r.width,r.height]}},Rr=function(t,e,r){return void 0===r&&(r=1),{u_matrix:t,u_color:e,u_overlay:0,u_overlay_scale:r}},Fr=function(t){return{u_matrix:t}},Br=function(t,e,r,n){return{u_matrix:t,u_extrude_scale:ge(e,1,r),u_intensity:n}},Nr=function(e,r,n,i){var a=t.create();t.ortho(a,0,e.width,e.height,0,0,1);var o=e.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\")}},jr=function(e,r,n){var i=n.paint.get(\"hillshade-shadow-color\"),a=n.paint.get(\"hillshade-highlight-color\"),o=n.paint.get(\"hillshade-accent-color\"),s=n.paint.get(\"hillshade-illumination-direction\")*(Math.PI/180);\"viewport\"===n.paint.get(\"hillshade-illumination-anchor\")&&(s-=e.transform.angle);var l,c,u,h=!e.options.moving;return{u_matrix:e.transform.calculatePosMatrix(r.tileID.toUnwrapped(),h),u_image:0,u_latrange:(l=r.tileID,c=Math.pow(2,l.canonical.z),u=l.canonical.y,[new t.MercatorCoordinate(0,u/c).toLngLat().lat,new t.MercatorCoordinate(0,(u+1)/c).toLngLat().lat]),u_light:[n.paint.get(\"hillshade-exaggeration\"),s],u_shadow:i,u_highlight:a,u_accent:o}},Ur=function(e,r){var n=r.stride,i=t.create();return t.ortho(i,0,t.EXTENT,-t.EXTENT,0,0,1),t.translate(i,i,[0,-t.EXTENT,0]),{u_matrix:i,u_image:1,u_dimension:[n,n],u_zoom:e.overscaledZ,u_unpack:r.getUnpackVector()}};var Vr=function(e,r,n){var i=e.transform;return{u_matrix:Wr(e,r,n),u_ratio:1/ge(r,1,i.zoom),u_device_pixel_ratio:t.browser.devicePixelRatio,u_units_to_pixels:[1/i.pixelsToGLUnits[0],1/i.pixelsToGLUnits[1]]}},qr=function(e,r,n,i){return t.extend(Vr(e,r,n),{u_image:0,u_image_height:i})},Hr=function(e,r,n,i){var a=e.transform,o=Zr(r,a);return{u_matrix:Wr(e,r,n),u_texsize:r.imageAtlasTexture.size,u_ratio:1/ge(r,1,a.zoom),u_device_pixel_ratio:t.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]]}},Gr=function(e,r,n,i,a){var o=e.transform,s=e.lineAtlas,l=Zr(r,o),c=\"round\"===n.layout.get(\"line-cap\"),u=s.getDash(i.from,c),h=s.getDash(i.to,c),f=u.width*a.fromScale,p=h.width*a.toScale;return t.extend(Vr(e,r,n),{u_patternscale_a:[l/f,-u.height/2],u_patternscale_b:[l/p,-h.height/2],u_sdfgamma:s.width/(256*Math.min(f,p)*t.browser.devicePixelRatio)/2,u_image:0,u_tex_y_a:u.y,u_tex_y_b:h.y,u_mix:a.t})};function Zr(t,e){return 1/ge(t,1,e.tileZoom)}function Wr(t,e,r){return t.translatePosMatrix(e.tileID.posMatrix,e,r.paint.get(\"line-translate\"),r.paint.get(\"line-translate-anchor\"))}var Yr=function(t,e,r,n,i){return{u_matrix:t,u_tl_parent:e,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:(o=i.paint.get(\"raster-saturation\"),o>0?1-1/(1.001-o):-o),u_contrast_factor:(a=i.paint.get(\"raster-contrast\"),a>0?1/(1-a):1+a),u_spin_weights:Xr(i.paint.get(\"raster-hue-rotate\"))};var a,o};function Xr(t){t*=Math.PI/180;var e=Math.sin(t),r=Math.cos(t);return[(2*r+1)/3,(-Math.sqrt(3)*e-r+1)/3,(Math.sqrt(3)*e-r+1)/3]}var $r,Jr=function(t,e,r,n,i,a,o,s,l,c){var u=i.transform;return{u_is_size_zoom_constant:+(\"constant\"===t||\"source\"===t),u_is_size_feature_constant:+(\"constant\"===t||\"camera\"===t),u_size_t:e?e.uSizeT:0,u_size:e?e.uSize:0,u_camera_to_center_distance:u.cameraToCenterDistance,u_pitch:u.pitch/360*2*Math.PI,u_rotate_symbol:+r,u_aspect_ratio:u.width/u.height,u_fade_change:i.options.fadeDuration?i.symbolFadeChange:1,u_matrix:a,u_label_plane_matrix:o,u_coord_matrix:s,u_is_text:+l,u_pitch_with_map:+n,u_texsize:c,u_texture:0}},Kr=function(e,r,n,i,a,o,s,l,c,u,h){var f=a.transform;return t.extend(Jr(e,r,n,i,a,o,s,l,c,u),{u_gamma_scale:i?Math.cos(f._pitch)*f.cameraToCenterDistance:1,u_device_pixel_ratio:t.browser.devicePixelRatio,u_is_halo:+h})},Qr=function(e,r,n,i,a,o,s,l,c,u){return t.extend(Kr(e,r,n,i,a,o,s,l,!0,c,!0),{u_texsize_icon:u,u_texture_icon:1})},tn=function(t,e,r){return{u_matrix:t,u_opacity:e,u_color:r}},en=function(e,r,n,i,a,o){return t.extend(function(t,e,r,n){var i=r.imageManager.getPattern(t.from.toString()),a=r.imageManager.getPattern(t.to.toString()),o=r.imageManager.getPixelSize(),s=o.width,l=o.height,c=Math.pow(2,n.tileID.overscaledZ),u=n.tileSize*Math.pow(2,r.transform.tileZoom)/c,h=u*(n.tileID.canonical.x+n.tileID.wrap*c),f=u*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:e.t,u_pattern_size_a:i.displaySize,u_pattern_size_b:a.displaySize,u_scale_a:e.fromScale,u_scale_b:e.toScale,u_tile_units_to_pixels:1/ge(n,1,r.transform.tileZoom),u_pixel_coord_upper:[h>>16,f>>16],u_pixel_coord_lower:[65535&h,65535&f]}}(i,o,n,a),{u_matrix:e,u_opacity:r})},rn={fillExtrusion:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_lightpos:new t.Uniform3f(e,r.u_lightpos),u_lightintensity:new t.Uniform1f(e,r.u_lightintensity),u_lightcolor:new t.Uniform3f(e,r.u_lightcolor),u_vertical_gradient:new t.Uniform1f(e,r.u_vertical_gradient),u_opacity:new t.Uniform1f(e,r.u_opacity)}},fillExtrusionPattern:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_lightpos:new t.Uniform3f(e,r.u_lightpos),u_lightintensity:new t.Uniform1f(e,r.u_lightintensity),u_lightcolor:new t.Uniform3f(e,r.u_lightcolor),u_vertical_gradient:new t.Uniform1f(e,r.u_vertical_gradient),u_height_factor:new t.Uniform1f(e,r.u_height_factor),u_image:new t.Uniform1i(e,r.u_image),u_texsize:new t.Uniform2f(e,r.u_texsize),u_pixel_coord_upper:new t.Uniform2f(e,r.u_pixel_coord_upper),u_pixel_coord_lower:new t.Uniform2f(e,r.u_pixel_coord_lower),u_scale:new t.Uniform3f(e,r.u_scale),u_fade:new t.Uniform1f(e,r.u_fade),u_opacity:new t.Uniform1f(e,r.u_opacity)}},fill:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix)}},fillPattern:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_image:new t.Uniform1i(e,r.u_image),u_texsize:new t.Uniform2f(e,r.u_texsize),u_pixel_coord_upper:new t.Uniform2f(e,r.u_pixel_coord_upper),u_pixel_coord_lower:new t.Uniform2f(e,r.u_pixel_coord_lower),u_scale:new t.Uniform3f(e,r.u_scale),u_fade:new t.Uniform1f(e,r.u_fade)}},fillOutline:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_world:new t.Uniform2f(e,r.u_world)}},fillOutlinePattern:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_world:new t.Uniform2f(e,r.u_world),u_image:new t.Uniform1i(e,r.u_image),u_texsize:new t.Uniform2f(e,r.u_texsize),u_pixel_coord_upper:new t.Uniform2f(e,r.u_pixel_coord_upper),u_pixel_coord_lower:new t.Uniform2f(e,r.u_pixel_coord_lower),u_scale:new t.Uniform3f(e,r.u_scale),u_fade:new t.Uniform1f(e,r.u_fade)}},circle:function(e,r){return{u_camera_to_center_distance:new t.Uniform1f(e,r.u_camera_to_center_distance),u_scale_with_map:new t.Uniform1i(e,r.u_scale_with_map),u_pitch_with_map:new t.Uniform1i(e,r.u_pitch_with_map),u_extrude_scale:new t.Uniform2f(e,r.u_extrude_scale),u_device_pixel_ratio:new t.Uniform1f(e,r.u_device_pixel_ratio),u_matrix:new t.UniformMatrix4f(e,r.u_matrix)}},collisionBox:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_camera_to_center_distance:new t.Uniform1f(e,r.u_camera_to_center_distance),u_pixels_to_tile_units:new t.Uniform1f(e,r.u_pixels_to_tile_units),u_extrude_scale:new t.Uniform2f(e,r.u_extrude_scale),u_overscale_factor:new t.Uniform1f(e,r.u_overscale_factor)}},collisionCircle:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_inv_matrix:new t.UniformMatrix4f(e,r.u_inv_matrix),u_camera_to_center_distance:new t.Uniform1f(e,r.u_camera_to_center_distance),u_viewport_size:new t.Uniform2f(e,r.u_viewport_size)}},debug:function(e,r){return{u_color:new t.UniformColor(e,r.u_color),u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_overlay:new t.Uniform1i(e,r.u_overlay),u_overlay_scale:new t.Uniform1f(e,r.u_overlay_scale)}},clippingMask:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix)}},heatmap:function(e,r){return{u_extrude_scale:new t.Uniform1f(e,r.u_extrude_scale),u_intensity:new t.Uniform1f(e,r.u_intensity),u_matrix:new t.UniformMatrix4f(e,r.u_matrix)}},heatmapTexture:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_world:new t.Uniform2f(e,r.u_world),u_image:new t.Uniform1i(e,r.u_image),u_color_ramp:new t.Uniform1i(e,r.u_color_ramp),u_opacity:new t.Uniform1f(e,r.u_opacity)}},hillshade:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_image:new t.Uniform1i(e,r.u_image),u_latrange:new t.Uniform2f(e,r.u_latrange),u_light:new t.Uniform2f(e,r.u_light),u_shadow:new t.UniformColor(e,r.u_shadow),u_highlight:new t.UniformColor(e,r.u_highlight),u_accent:new t.UniformColor(e,r.u_accent)}},hillshadePrepare:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_image:new t.Uniform1i(e,r.u_image),u_dimension:new t.Uniform2f(e,r.u_dimension),u_zoom:new t.Uniform1f(e,r.u_zoom),u_unpack:new t.Uniform4f(e,r.u_unpack)}},line:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_ratio:new t.Uniform1f(e,r.u_ratio),u_device_pixel_ratio:new t.Uniform1f(e,r.u_device_pixel_ratio),u_units_to_pixels:new t.Uniform2f(e,r.u_units_to_pixels)}},lineGradient:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_ratio:new t.Uniform1f(e,r.u_ratio),u_device_pixel_ratio:new t.Uniform1f(e,r.u_device_pixel_ratio),u_units_to_pixels:new t.Uniform2f(e,r.u_units_to_pixels),u_image:new t.Uniform1i(e,r.u_image),u_image_height:new t.Uniform1f(e,r.u_image_height)}},linePattern:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_texsize:new t.Uniform2f(e,r.u_texsize),u_ratio:new t.Uniform1f(e,r.u_ratio),u_device_pixel_ratio:new t.Uniform1f(e,r.u_device_pixel_ratio),u_image:new t.Uniform1i(e,r.u_image),u_units_to_pixels:new t.Uniform2f(e,r.u_units_to_pixels),u_scale:new t.Uniform3f(e,r.u_scale),u_fade:new t.Uniform1f(e,r.u_fade)}},lineSDF:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_ratio:new t.Uniform1f(e,r.u_ratio),u_device_pixel_ratio:new t.Uniform1f(e,r.u_device_pixel_ratio),u_units_to_pixels:new t.Uniform2f(e,r.u_units_to_pixels),u_patternscale_a:new t.Uniform2f(e,r.u_patternscale_a),u_patternscale_b:new t.Uniform2f(e,r.u_patternscale_b),u_sdfgamma:new t.Uniform1f(e,r.u_sdfgamma),u_image:new t.Uniform1i(e,r.u_image),u_tex_y_a:new t.Uniform1f(e,r.u_tex_y_a),u_tex_y_b:new t.Uniform1f(e,r.u_tex_y_b),u_mix:new t.Uniform1f(e,r.u_mix)}},raster:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_tl_parent:new t.Uniform2f(e,r.u_tl_parent),u_scale_parent:new t.Uniform1f(e,r.u_scale_parent),u_buffer_scale:new t.Uniform1f(e,r.u_buffer_scale),u_fade_t:new t.Uniform1f(e,r.u_fade_t),u_opacity:new t.Uniform1f(e,r.u_opacity),u_image0:new t.Uniform1i(e,r.u_image0),u_image1:new t.Uniform1i(e,r.u_image1),u_brightness_low:new t.Uniform1f(e,r.u_brightness_low),u_brightness_high:new t.Uniform1f(e,r.u_brightness_high),u_saturation_factor:new t.Uniform1f(e,r.u_saturation_factor),u_contrast_factor:new t.Uniform1f(e,r.u_contrast_factor),u_spin_weights:new t.Uniform3f(e,r.u_spin_weights)}},symbolIcon:function(e,r){return{u_is_size_zoom_constant:new t.Uniform1i(e,r.u_is_size_zoom_constant),u_is_size_feature_constant:new t.Uniform1i(e,r.u_is_size_feature_constant),u_size_t:new t.Uniform1f(e,r.u_size_t),u_size:new t.Uniform1f(e,r.u_size),u_camera_to_center_distance:new t.Uniform1f(e,r.u_camera_to_center_distance),u_pitch:new t.Uniform1f(e,r.u_pitch),u_rotate_symbol:new t.Uniform1i(e,r.u_rotate_symbol),u_aspect_ratio:new t.Uniform1f(e,r.u_aspect_ratio),u_fade_change:new t.Uniform1f(e,r.u_fade_change),u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_label_plane_matrix:new t.UniformMatrix4f(e,r.u_label_plane_matrix),u_coord_matrix:new t.UniformMatrix4f(e,r.u_coord_matrix),u_is_text:new t.Uniform1i(e,r.u_is_text),u_pitch_with_map:new t.Uniform1i(e,r.u_pitch_with_map),u_texsize:new t.Uniform2f(e,r.u_texsize),u_texture:new t.Uniform1i(e,r.u_texture)}},symbolSDF:function(e,r){return{u_is_size_zoom_constant:new t.Uniform1i(e,r.u_is_size_zoom_constant),u_is_size_feature_constant:new t.Uniform1i(e,r.u_is_size_feature_constant),u_size_t:new t.Uniform1f(e,r.u_size_t),u_size:new t.Uniform1f(e,r.u_size),u_camera_to_center_distance:new t.Uniform1f(e,r.u_camera_to_center_distance),u_pitch:new t.Uniform1f(e,r.u_pitch),u_rotate_symbol:new t.Uniform1i(e,r.u_rotate_symbol),u_aspect_ratio:new t.Uniform1f(e,r.u_aspect_ratio),u_fade_change:new t.Uniform1f(e,r.u_fade_change),u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_label_plane_matrix:new t.UniformMatrix4f(e,r.u_label_plane_matrix),u_coord_matrix:new t.UniformMatrix4f(e,r.u_coord_matrix),u_is_text:new t.Uniform1i(e,r.u_is_text),u_pitch_with_map:new t.Uniform1i(e,r.u_pitch_with_map),u_texsize:new t.Uniform2f(e,r.u_texsize),u_texture:new t.Uniform1i(e,r.u_texture),u_gamma_scale:new t.Uniform1f(e,r.u_gamma_scale),u_device_pixel_ratio:new t.Uniform1f(e,r.u_device_pixel_ratio),u_is_halo:new t.Uniform1i(e,r.u_is_halo)}},symbolTextAndIcon:function(e,r){return{u_is_size_zoom_constant:new t.Uniform1i(e,r.u_is_size_zoom_constant),u_is_size_feature_constant:new t.Uniform1i(e,r.u_is_size_feature_constant),u_size_t:new t.Uniform1f(e,r.u_size_t),u_size:new t.Uniform1f(e,r.u_size),u_camera_to_center_distance:new t.Uniform1f(e,r.u_camera_to_center_distance),u_pitch:new t.Uniform1f(e,r.u_pitch),u_rotate_symbol:new t.Uniform1i(e,r.u_rotate_symbol),u_aspect_ratio:new t.Uniform1f(e,r.u_aspect_ratio),u_fade_change:new t.Uniform1f(e,r.u_fade_change),u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_label_plane_matrix:new t.UniformMatrix4f(e,r.u_label_plane_matrix),u_coord_matrix:new t.UniformMatrix4f(e,r.u_coord_matrix),u_is_text:new t.Uniform1i(e,r.u_is_text),u_pitch_with_map:new t.Uniform1i(e,r.u_pitch_with_map),u_texsize:new t.Uniform2f(e,r.u_texsize),u_texsize_icon:new t.Uniform2f(e,r.u_texsize_icon),u_texture:new t.Uniform1i(e,r.u_texture),u_texture_icon:new t.Uniform1i(e,r.u_texture_icon),u_gamma_scale:new t.Uniform1f(e,r.u_gamma_scale),u_device_pixel_ratio:new t.Uniform1f(e,r.u_device_pixel_ratio),u_is_halo:new t.Uniform1i(e,r.u_is_halo)}},background:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_opacity:new t.Uniform1f(e,r.u_opacity),u_color:new t.UniformColor(e,r.u_color)}},backgroundPattern:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_opacity:new t.Uniform1f(e,r.u_opacity),u_image:new t.Uniform1i(e,r.u_image),u_pattern_tl_a:new t.Uniform2f(e,r.u_pattern_tl_a),u_pattern_br_a:new t.Uniform2f(e,r.u_pattern_br_a),u_pattern_tl_b:new t.Uniform2f(e,r.u_pattern_tl_b),u_pattern_br_b:new t.Uniform2f(e,r.u_pattern_br_b),u_texsize:new t.Uniform2f(e,r.u_texsize),u_mix:new t.Uniform1f(e,r.u_mix),u_pattern_size_a:new t.Uniform2f(e,r.u_pattern_size_a),u_pattern_size_b:new t.Uniform2f(e,r.u_pattern_size_b),u_scale_a:new t.Uniform1f(e,r.u_scale_a),u_scale_b:new t.Uniform1f(e,r.u_scale_b),u_pixel_coord_upper:new t.Uniform2f(e,r.u_pixel_coord_upper),u_pixel_coord_lower:new t.Uniform2f(e,r.u_pixel_coord_lower),u_tile_units_to_pixels:new t.Uniform1f(e,r.u_tile_units_to_pixels)}}};function nn(e,r,n,i,a,o,s){for(var l=e.context,c=l.gl,u=e.useProgram(\"collisionBox\"),h=[],f=0,p=0,d=0;d<i.length;d++){var m=i[d],g=r.getTile(m),y=g.getBucket(n);if(y){var v=m.posMatrix;0===a[0]&&0===a[1]||(v=e.translatePosMatrix(m.posMatrix,g,a,o));var x=s?y.textCollisionBox:y.iconCollisionBox,_=y.collisionCircleArray;if(_.length>0){var b=t.create(),w=v;t.mul(b,y.placementInvProjMatrix,e.transform.glCoordMatrix),t.mul(b,b,y.placementViewportMatrix),h.push({circleArray:_,circleOffset:p,transform:w,invTransform:b}),p=f+=_.length/4}x&&u.draw(l,c.LINES,Mt.disabled,Et.disabled,e.colorModeForRenderPass(),Lt.disabled,Or(v,e.transform,g),n.id,x.layoutVertexBuffer,x.indexBuffer,x.segments,null,e.transform.zoom,null,null,x.collisionVertexBuffer)}}if(s&&h.length){var T=e.useProgram(\"collisionCircle\"),k=new t.StructArrayLayout2f1f2i16;k.resize(4*f),k._trim();for(var A=0,M=0,S=h;M<S.length;M+=1)for(var E=S[M],C=0;C<E.circleArray.length/4;C++){var L=4*C,I=E.circleArray[L+0],P=E.circleArray[L+1],z=E.circleArray[L+2],O=E.circleArray[L+3];k.emplace(A++,I,P,z,O,0),k.emplace(A++,I,P,z,O,1),k.emplace(A++,I,P,z,O,2),k.emplace(A++,I,P,z,O,3)}(!$r||$r.length<2*f)&&($r=function(e){var r=2*e,n=new t.StructArrayLayout3ui6;n.resize(r),n._trim();for(var i=0;i<r;i++){var a=6*i;n.uint16[a+0]=4*i+0,n.uint16[a+1]=4*i+1,n.uint16[a+2]=4*i+2,n.uint16[a+3]=4*i+2,n.uint16[a+4]=4*i+3,n.uint16[a+5]=4*i+0}return n}(f));for(var D=l.createIndexBuffer($r,!0),R=l.createVertexBuffer(k,t.collisionCircleLayout.members,!0),F=0,B=h;F<B.length;F+=1){var N=B[F],j=Dr(N.transform,N.invTransform,e.transform);T.draw(l,c.TRIANGLES,Mt.disabled,Et.disabled,e.colorModeForRenderPass(),Lt.disabled,j,n.id,R,D,t.SegmentVector.simpleSegment(0,2*N.circleOffset,N.circleArray.length,N.circleArray.length/2),null,e.transform.zoom,null,null,null)}R.destroy(),D.destroy()}}var an=t.identity(new Float32Array(16));function on(e,r,n,i,a,o){var s=t.getAnchorAlignment(e),l=-(s.horizontalAlign-.5)*r,c=-(s.verticalAlign-.5)*n,u=t.evaluateVariableOffset(e,i);return new t.Point((l/a+u[0])*o,(c/a+u[1])*o)}function sn(e,r,n,i,a,o,s,l,c,u,h){var f=e.text.placedSymbolArray,p=e.text.dynamicLayoutVertexArray,d=e.icon.dynamicLayoutVertexArray,m={};p.clear();for(var g=0;g<f.length;g++){var y=f.get(g),v=e.allowVerticalPlacement&&!y.placedOrientation,x=y.hidden||!y.crossTileID||v?null:i[y.crossTileID];if(x){var _=new t.Point(y.anchorX,y.anchorY),b=re(_,n?l:s),w=ne(o.cameraToCenterDistance,b.signedDistanceFromCamera),T=a.evaluateSizeForFeature(e.textSizeData,u,y)*w/t.ONE_EM;n&&(T*=e.tilePixelRatio/c);for(var k=x.width,A=x.height,M=on(x.anchor,k,A,x.textOffset,x.textBoxScale,T),S=n?re(_.add(M),s).point:b.point.add(r?M.rotate(-o.angle):M),E=e.allowVerticalPlacement&&y.placedOrientation===t.WritingMode.vertical?Math.PI/2:0,C=0;C<y.numGlyphs;C++)t.addDynamicAttributes(p,S,E);h&&y.associatedIconIndex>=0&&(m[y.associatedIconIndex]={shiftedAnchor:S,angle:E})}else fe(y.numGlyphs,p)}if(h){d.clear();for(var L=e.icon.placedSymbolArray,I=0;I<L.length;I++){var P=L.get(I);if(P.hidden)fe(P.numGlyphs,d);else{var z=m[I];if(z)for(var O=0;O<P.numGlyphs;O++)t.addDynamicAttributes(d,z.shiftedAnchor,z.angle);else fe(P.numGlyphs,d)}}e.icon.dynamicLayoutVertexBuffer.updateData(d)}e.text.dynamicLayoutVertexBuffer.updateData(p)}function ln(t,e,r){return r.iconsInText&&e?\"symbolTextAndIcon\":t?\"symbolSDF\":\"symbolIcon\"}function cn(e,r,n,i,a,o,s,l,c,u,h,f){for(var p=e.context,d=p.gl,m=e.transform,g=\"map\"===l,y=\"map\"===c,v=g&&\"point\"!==n.layout.get(\"symbol-placement\"),x=g&&!y&&!v,_=void 0!==n.layout.get(\"symbol-sort-key\").constantOr(1),b=!1,w=e.depthModeForSublayer(0,Mt.ReadOnly),T=n.layout.get(\"text-variable-anchor\"),k=[],A=0,M=i;A<M.length;A+=1){var S=M[A],E=r.getTile(S),C=E.getBucket(n);if(C){var L=a?C.text:C.icon;if(L&&L.segments.get().length){var I=L.programConfigurations.get(n.id),P=a||C.sdfIcons,z=a?C.textSizeData:C.iconSizeData,O=y||0!==m.pitch,D=e.useProgram(ln(P,a,C),I),R=t.evaluateSizeForZoom(z,m.zoom),F=void 0,B=[0,0],N=void 0,j=void 0,U=null,V=void 0;if(a){if(N=E.glyphAtlasTexture,j=d.LINEAR,F=E.glyphAtlasTexture.size,C.iconsInText){B=E.imageAtlasTexture.size,U=E.imageAtlasTexture;var q=\"composite\"===z.kind||\"camera\"===z.kind;V=O||e.options.rotating||e.options.zooming||q?d.LINEAR:d.NEAREST}}else{var H=1!==n.layout.get(\"icon-size\").constantOr(0)||C.iconsNeedLinear;N=E.imageAtlasTexture,j=P||e.options.rotating||e.options.zooming||H||O?d.LINEAR:d.NEAREST,F=E.imageAtlasTexture.size}var G=ge(E,1,e.transform.zoom),Z=te(S.posMatrix,y,g,e.transform,G),W=ee(S.posMatrix,y,g,e.transform,G),Y=T&&C.hasTextData(),X=\"none\"!==n.layout.get(\"icon-text-fit\")&&Y&&C.hasIconData();v&&ae(C,S.posMatrix,e,a,Z,W,y,u);var $=e.translatePosMatrix(S.posMatrix,E,o,s),J=v||a&&T||X?an:Z,K=e.translatePosMatrix(W,E,o,s,!0),Q=P&&0!==n.paint.get(a?\"text-halo-width\":\"icon-halo-width\").constantOr(1),tt={program:D,buffers:L,uniformValues:P?C.iconsInText?Qr(z.kind,R,x,y,e,$,J,K,F,B):Kr(z.kind,R,x,y,e,$,J,K,a,F,!0):Jr(z.kind,R,x,y,e,$,J,K,a,F),atlasTexture:N,atlasTextureIcon:U,atlasInterpolation:j,atlasInterpolationIcon:V,isSDF:P,hasHalo:Q};if(_&&C.canOverlap){b=!0;for(var et=0,rt=L.segments.get();et<rt.length;et+=1){var nt=rt[et];k.push({segments:new t.SegmentVector([nt]),sortKey:nt.sortKey,state:tt})}}else k.push({segments:L.segments,sortKey:0,state:tt})}}}b&&k.sort((function(t,e){return t.sortKey-e.sortKey}));for(var it=0,at=k;it<at.length;it+=1){var ot=at[it],st=ot.state;if(p.activeTexture.set(d.TEXTURE0),st.atlasTexture.bind(st.atlasInterpolation,d.CLAMP_TO_EDGE),st.atlasTextureIcon&&(p.activeTexture.set(d.TEXTURE1),st.atlasTextureIcon&&st.atlasTextureIcon.bind(st.atlasInterpolationIcon,d.CLAMP_TO_EDGE)),st.isSDF){var lt=st.uniformValues;st.hasHalo&&(lt.u_is_halo=1,un(st.buffers,ot.segments,n,e,st.program,w,h,f,lt)),lt.u_is_halo=0}un(st.buffers,ot.segments,n,e,st.program,w,h,f,st.uniformValues)}}function un(t,e,r,n,i,a,o,s,l){var c=n.context,u=c.gl;i.draw(c,u.TRIANGLES,a,o,s,Lt.disabled,l,r.id,t.layoutVertexBuffer,t.indexBuffer,e,r.paint,n.transform.zoom,t.programConfigurations.get(r.id),t.dynamicLayoutVertexBuffer,t.opacityVertexBuffer)}function hn(t,e,r,n,i,a,o){var s,l,c,u,h,f=t.context.gl,p=r.paint.get(\"fill-pattern\"),d=p&&p.constantOr(1),m=r.getCrossfadeParameters();o?(l=d&&!r.getPaintProperty(\"fill-outline-color\")?\"fillOutlinePattern\":\"fillOutline\",s=f.LINES):(l=d?\"fillPattern\":\"fill\",s=f.TRIANGLES);for(var g=0,y=n;g<y.length;g+=1){var v=y[g],x=e.getTile(v);if(!d||x.patternsLoaded()){var _=x.getBucket(r);if(_){var b=_.programConfigurations.get(r.id),w=t.useProgram(l,b);d&&(t.context.activeTexture.set(f.TEXTURE0),x.imageAtlasTexture.bind(f.LINEAR,f.CLAMP_TO_EDGE),b.updatePaintBuffers(m));var T=p.constantOr(null);if(T&&x.imageAtlas){var k=x.imageAtlas,A=k.patternPositions[T.to.toString()],M=k.patternPositions[T.from.toString()];A&&M&&b.setConstantPatternPositions(A,M)}var S=t.translatePosMatrix(v.posMatrix,x,r.paint.get(\"fill-translate\"),r.paint.get(\"fill-translate-anchor\"));if(o){u=_.indexBuffer2,h=_.segments2;var E=[f.drawingBufferWidth,f.drawingBufferHeight];c=\"fillOutlinePattern\"===l&&d?Pr(S,t,m,x,E):Ir(S,E)}else u=_.indexBuffer,h=_.segments,c=d?Lr(S,t,m,x):Cr(S);w.draw(t.context,s,i,t.stencilModeForClipping(v),a,Lt.disabled,c,r.id,_.layoutVertexBuffer,u,h,r.paint,t.transform.zoom,b)}}}}function fn(t,e,r,n,i,a,o){for(var s=t.context,l=s.gl,c=r.paint.get(\"fill-extrusion-pattern\"),u=c.constantOr(1),h=r.getCrossfadeParameters(),f=r.paint.get(\"fill-extrusion-opacity\"),p=0,d=n;p<d.length;p+=1){var m=d[p],g=e.getTile(m),y=g.getBucket(r);if(y){var v=y.programConfigurations.get(r.id),x=t.useProgram(u?\"fillExtrusionPattern\":\"fillExtrusion\",v);u&&(t.context.activeTexture.set(l.TEXTURE0),g.imageAtlasTexture.bind(l.LINEAR,l.CLAMP_TO_EDGE),v.updatePaintBuffers(h));var _=c.constantOr(null);if(_&&g.imageAtlas){var b=g.imageAtlas,w=b.patternPositions[_.to.toString()],T=b.patternPositions[_.from.toString()];w&&T&&v.setConstantPatternPositions(w,T)}var k=t.translatePosMatrix(m.posMatrix,g,r.paint.get(\"fill-extrusion-translate\"),r.paint.get(\"fill-extrusion-translate-anchor\")),A=r.paint.get(\"fill-extrusion-vertical-gradient\"),M=u?Er(k,t,A,f,m,h,g):Sr(k,t,A,f);x.draw(s,s.gl.TRIANGLES,i,a,o,Lt.backCCW,M,r.id,y.layoutVertexBuffer,y.indexBuffer,y.segments,r.paint,t.transform.zoom,v)}}}function pn(t,e,r,n,i,a){var o=t.context,s=o.gl,l=e.fbo;if(l){var c=t.useProgram(\"hillshade\");o.activeTexture.set(s.TEXTURE0),s.bindTexture(s.TEXTURE_2D,l.colorAttachment.get());var u=jr(t,e,r);c.draw(o,s.TRIANGLES,n,i,a,Lt.disabled,u,r.id,t.rasterBoundsBuffer,t.quadTriangleIndexBuffer,t.rasterBoundsSegments)}}function dn(e,r,n,i,a,o){var s=e.context,l=s.gl,c=r.dem;if(c&&c.data){var u=c.dim,h=c.stride,f=c.getPixels();if(s.activeTexture.set(l.TEXTURE1),s.pixelStoreUnpackPremultiplyAlpha.set(!1),r.demTexture=r.demTexture||e.getTileTexture(h),r.demTexture){var p=r.demTexture;p.update(f,{premultiply:!1}),p.bind(l.NEAREST,l.CLAMP_TO_EDGE)}else r.demTexture=new t.Texture(s,f,l.RGBA,{premultiply:!1}),r.demTexture.bind(l.NEAREST,l.CLAMP_TO_EDGE);s.activeTexture.set(l.TEXTURE0);var d=r.fbo;if(!d){var m=new t.Texture(s,{width:u,height:u,data:null},l.RGBA);m.bind(l.LINEAR,l.CLAMP_TO_EDGE),(d=r.fbo=s.createFramebuffer(u,u,!0)).colorAttachment.set(m.texture)}s.bindFramebuffer.set(d.framebuffer),s.viewport.set([0,0,u,u]),e.useProgram(\"hillshadePrepare\").draw(s,l.TRIANGLES,i,a,o,Lt.disabled,Ur(r.tileID,c),n.id,e.rasterBoundsBuffer,e.quadTriangleIndexBuffer,e.rasterBoundsSegments),r.needsHillshadePrepare=!1}}function mn(e,r,n,i,a){var o=i.paint.get(\"raster-fade-duration\");if(o>0){var s=t.browser.now(),l=(s-e.timeAdded)/o,c=r?(s-r.timeAdded)/o:-1,u=n.getSource(),h=a.coveringZoomLevel({tileSize:u.tileSize,roundZoom:u.roundZoom}),f=!r||Math.abs(r.tileID.overscaledZ-h)>Math.abs(e.tileID.overscaledZ-h),p=f&&e.refreshedUponExpiration?1:t.clamp(f?l:1-c,0,1);return e.refreshedUponExpiration&&l>=1&&(e.refreshedUponExpiration=!1),r?{opacity:1,mix:1-p}:{opacity:p,mix:0}}return{opacity:1,mix:0}}var gn=new t.Color(1,0,0,1),yn=new t.Color(0,1,0,1),vn=new t.Color(0,0,1,1),xn=new t.Color(1,0,1,1),_n=new t.Color(0,1,1,1);function bn(t){var e=t.transform.padding;wn(t,t.transform.height-(e.top||0),3,gn),wn(t,e.bottom||0,3,yn),Tn(t,e.left||0,3,vn),Tn(t,t.transform.width-(e.right||0),3,xn);var r=t.transform.centerPoint;!function(t,e,r,n){var i=20,a=2;kn(t,e-a/2,r-i/2,a,i,n),kn(t,e-i/2,r-a/2,i,a,n)}(t,r.x,t.transform.height-r.y,_n)}function wn(t,e,r,n){kn(t,0,e+r/2,t.transform.width,r,n)}function Tn(t,e,r,n){kn(t,e-r/2,0,r,t.transform.height,n)}function kn(e,r,n,i,a,o){var s=e.context,l=s.gl;l.enable(l.SCISSOR_TEST),l.scissor(r*t.browser.devicePixelRatio,n*t.browser.devicePixelRatio,i*t.browser.devicePixelRatio,a*t.browser.devicePixelRatio),s.clear({color:o}),l.disable(l.SCISSOR_TEST)}function An(e,r,n){var i=e.context,a=i.gl,o=n.posMatrix,s=e.useProgram(\"debug\"),l=Mt.disabled,c=Et.disabled,u=e.colorModeForRenderPass(),h=\"$debug\";i.activeTexture.set(a.TEXTURE0),e.emptyTexture.bind(a.LINEAR,a.CLAMP_TO_EDGE),s.draw(i,a.LINE_STRIP,l,c,u,Lt.disabled,Rr(o,t.Color.red),h,e.debugBuffer,e.tileBorderIndexBuffer,e.debugSegments);var f=r.getTileByID(n.key).latestRawTileData,p=f&&f.byteLength||0,d=Math.floor(p/1024),m=r.getTile(n).tileSize,g=512/Math.min(m,512)*(n.overscaledZ/e.transform.zoom)*.5,y=n.canonical.toString();n.overscaledZ!==n.canonical.z&&(y+=\" => \"+n.overscaledZ),function(t,e){t.initDebugOverlayCanvas();var r=t.debugOverlayCanvas,n=t.context.gl,i=t.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(e,5,5),i.strokeText(e,5,5),t.debugOverlayTexture.update(r),t.debugOverlayTexture.bind(n.LINEAR,n.CLAMP_TO_EDGE)}(e,y+\" \"+d+\"kb\"),s.draw(i,a.TRIANGLES,l,c,Ct.alphaBlended,Lt.disabled,Rr(o,t.Color.transparent,g),h,e.debugBuffer,e.quadTriangleIndexBuffer,e.debugSegments)}var Mn={symbol:function(e,r,n,i,a){if(\"translucent\"===e.renderPass){var o=Et.disabled,s=e.colorModeForRenderPass();n.layout.get(\"text-variable-anchor\")&&function(e,r,n,i,a,o,s){for(var l=r.transform,c=\"map\"===a,u=\"map\"===o,h=0,f=e;h<f.length;h+=1){var p=f[h],d=i.getTile(p),m=d.getBucket(n);if(m&&m.text&&m.text.segments.get().length){var g=m.textSizeData,y=t.evaluateSizeForZoom(g,l.zoom),v=ge(d,1,r.transform.zoom),x=te(p.posMatrix,u,c,r.transform,v),_=\"none\"!==n.layout.get(\"icon-text-fit\")&&m.hasIconData();if(y){var b=Math.pow(2,l.zoom-d.tileID.overscaledZ);sn(m,c,u,s,t.symbolSize,l,x,p.posMatrix,b,y,_)}}}}(i,e,n,r,n.layout.get(\"text-rotation-alignment\"),n.layout.get(\"text-pitch-alignment\"),a),0!==n.paint.get(\"icon-opacity\").constantOr(1)&&cn(e,r,n,i,!1,n.paint.get(\"icon-translate\"),n.paint.get(\"icon-translate-anchor\"),n.layout.get(\"icon-rotation-alignment\"),n.layout.get(\"icon-pitch-alignment\"),n.layout.get(\"icon-keep-upright\"),o,s),0!==n.paint.get(\"text-opacity\").constantOr(1)&&cn(e,r,n,i,!0,n.paint.get(\"text-translate\"),n.paint.get(\"text-translate-anchor\"),n.layout.get(\"text-rotation-alignment\"),n.layout.get(\"text-pitch-alignment\"),n.layout.get(\"text-keep-upright\"),o,s),r.map.showCollisionBoxes&&(nn(e,r,n,i,n.paint.get(\"text-translate\"),n.paint.get(\"text-translate-anchor\"),!0),nn(e,r,n,i,n.paint.get(\"icon-translate\"),n.paint.get(\"icon-translate-anchor\"),!1))}},circle:function(e,r,n,i){if(\"translucent\"===e.renderPass){var a=n.paint.get(\"circle-opacity\"),o=n.paint.get(\"circle-stroke-width\"),s=n.paint.get(\"circle-stroke-opacity\"),l=void 0!==n.layout.get(\"circle-sort-key\").constantOr(1);if(0!==a.constantOr(1)||0!==o.constantOr(1)&&0!==s.constantOr(1)){for(var c=e.context,u=c.gl,h=e.depthModeForSublayer(0,Mt.ReadOnly),f=Et.disabled,p=e.colorModeForRenderPass(),d=[],m=0;m<i.length;m++){var g=i[m],y=r.getTile(g),v=y.getBucket(n);if(v){var x=v.programConfigurations.get(n.id),_={programConfiguration:x,program:e.useProgram(\"circle\",x),layoutVertexBuffer:v.layoutVertexBuffer,indexBuffer:v.indexBuffer,uniformValues:zr(e,g,y,n)};if(l)for(var b=0,w=v.segments.get();b<w.length;b+=1){var T=w[b];d.push({segments:new t.SegmentVector([T]),sortKey:T.sortKey,state:_})}else d.push({segments:v.segments,sortKey:0,state:_})}}l&&d.sort((function(t,e){return t.sortKey-e.sortKey}));for(var k=0,A=d;k<A.length;k+=1){var M=A[k],S=M.state,E=S.programConfiguration,C=S.program,L=S.layoutVertexBuffer,I=S.indexBuffer,P=S.uniformValues,z=M.segments;C.draw(c,u.TRIANGLES,h,f,p,Lt.disabled,P,n.id,L,I,z,n.paint,e.transform.zoom,E)}}}},heatmap:function(e,r,n,i){if(0!==n.paint.get(\"heatmap-opacity\"))if(\"offscreen\"===e.renderPass){var a=e.context,o=a.gl,s=Et.disabled,l=new Ct([o.ONE,o.ONE],t.Color.transparent,[!0,!0,!0,!0]);(function(t,e,r){var n=t.gl;t.activeTexture.set(n.TEXTURE1),t.viewport.set([0,0,e.width/4,e.height/4]);var i=r.heatmapFbo;if(i)n.bindTexture(n.TEXTURE_2D,i.colorAttachment.get()),t.bindFramebuffer.set(i.framebuffer);else{var a=n.createTexture();n.bindTexture(n.TEXTURE_2D,a),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_S,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_T,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MIN_FILTER,n.LINEAR),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MAG_FILTER,n.LINEAR),i=r.heatmapFbo=t.createFramebuffer(e.width/4,e.height/4,!1),function(t,e,r,n){var i=t.gl,a=t.extRenderToTextureHalfFloat?t.extTextureHalfFloat.HALF_FLOAT_OES:i.UNSIGNED_BYTE;i.texImage2D(i.TEXTURE_2D,0,i.RGBA,e.width/4,e.height/4,0,i.RGBA,a,null),n.colorAttachment.set(r)}(t,e,a,i)}})(a,e,n),a.clear({color:t.Color.transparent});for(var c=0;c<i.length;c++){var u=i[c];if(!r.hasRenderableParent(u)){var h=r.getTile(u),f=h.getBucket(n);if(f){var p=f.programConfigurations.get(n.id),d=e.useProgram(\"heatmap\",p),m=e.transform.zoom;d.draw(a,o.TRIANGLES,Mt.disabled,s,l,Lt.disabled,Br(u.posMatrix,h,m,n.paint.get(\"heatmap-intensity\")),n.id,f.layoutVertexBuffer,f.indexBuffer,f.segments,n.paint,e.transform.zoom,p)}}}a.viewport.set([0,0,e.width,e.height])}else\"translucent\"===e.renderPass&&(e.context.setColorMode(e.colorModeForRenderPass()),function(e,r){var n=e.context,i=n.gl,a=r.heatmapFbo;if(a){n.activeTexture.set(i.TEXTURE0),i.bindTexture(i.TEXTURE_2D,a.colorAttachment.get()),n.activeTexture.set(i.TEXTURE1);var o=r.colorRampTexture;o||(o=r.colorRampTexture=new t.Texture(n,r.colorRamp,i.RGBA)),o.bind(i.LINEAR,i.CLAMP_TO_EDGE),e.useProgram(\"heatmapTexture\").draw(n,i.TRIANGLES,Mt.disabled,Et.disabled,e.colorModeForRenderPass(),Lt.disabled,Nr(e,r,0,1),r.id,e.viewportBuffer,e.quadTriangleIndexBuffer,e.viewportSegments,r.paint,e.transform.zoom)}}(e,n))},line:function(e,r,n,i){if(\"translucent\"===e.renderPass){var a=n.paint.get(\"line-opacity\"),o=n.paint.get(\"line-width\");if(0!==a.constantOr(1)&&0!==o.constantOr(1))for(var s=e.depthModeForSublayer(0,Mt.ReadOnly),l=e.colorModeForRenderPass(),c=n.paint.get(\"line-dasharray\"),u=n.paint.get(\"line-pattern\"),h=u.constantOr(1),f=n.paint.get(\"line-gradient\"),p=n.getCrossfadeParameters(),d=h?\"linePattern\":c?\"lineSDF\":f?\"lineGradient\":\"line\",m=e.context,g=m.gl,y=!0,v=0,x=i;v<x.length;v+=1){var _=x[v],b=r.getTile(_);if(!h||b.patternsLoaded()){var w=b.getBucket(n);if(w){var T=w.programConfigurations.get(n.id),k=e.context.program.get(),A=e.useProgram(d,T),M=y||A.program!==k,S=u.constantOr(null);if(S&&b.imageAtlas){var E=b.imageAtlas,C=E.patternPositions[S.to.toString()],L=E.patternPositions[S.from.toString()];C&&L&&T.setConstantPatternPositions(C,L)}var I=h?Hr(e,b,n,p):c?Gr(e,b,n,c,p):f?qr(e,b,n,w.lineClipsArray.length):Vr(e,b,n);if(h)m.activeTexture.set(g.TEXTURE0),b.imageAtlasTexture.bind(g.LINEAR,g.CLAMP_TO_EDGE),T.updatePaintBuffers(p);else if(c&&(M||e.lineAtlas.dirty))m.activeTexture.set(g.TEXTURE0),e.lineAtlas.bind(m);else if(f){var P=w.gradients[n.id],z=P.texture;if(n.gradientVersion!==P.version){var O=256;if(n.stepInterpolant){var D=r.getSource().maxzoom,R=_.canonical.z===D?Math.ceil(1<<e.transform.maxZoom-_.canonical.z):1,F=w.maxLineLength/t.EXTENT*1024*R;O=t.clamp(t.nextPowerOfTwo(F),256,m.maxTextureSize)}P.gradient=t.renderColorRamp({expression:n.gradientExpression(),evaluationKey:\"lineProgress\",resolution:O,image:P.gradient||void 0,clips:w.lineClipsArray}),P.texture?P.texture.update(P.gradient):P.texture=new t.Texture(m,P.gradient,g.RGBA),P.version=n.gradientVersion,z=P.texture}m.activeTexture.set(g.TEXTURE0),z.bind(n.stepInterpolant?g.NEAREST:g.LINEAR,g.CLAMP_TO_EDGE)}A.draw(m,g.TRIANGLES,s,e.stencilModeForClipping(_),l,Lt.disabled,I,n.id,w.layoutVertexBuffer,w.indexBuffer,w.segments,n.paint,e.transform.zoom,T,w.layoutVertexBuffer2),y=!1}}}}},fill:function(e,r,n,i){var a=n.paint.get(\"fill-color\"),o=n.paint.get(\"fill-opacity\");if(0!==o.constantOr(1)){var s=e.colorModeForRenderPass(),l=n.paint.get(\"fill-pattern\"),c=e.opaquePassEnabledForLayer()&&!l.constantOr(1)&&1===a.constantOr(t.Color.transparent).a&&1===o.constantOr(0)?\"opaque\":\"translucent\";if(e.renderPass===c){var u=e.depthModeForSublayer(1,\"opaque\"===e.renderPass?Mt.ReadWrite:Mt.ReadOnly);hn(e,r,n,i,u,s,!1)}if(\"translucent\"===e.renderPass&&n.paint.get(\"fill-antialias\")){var h=e.depthModeForSublayer(n.getPaintProperty(\"fill-outline-color\")?2:0,Mt.ReadOnly);hn(e,r,n,i,h,s,!0)}}},\"fill-extrusion\":function(t,e,r,n){var i=r.paint.get(\"fill-extrusion-opacity\");if(0!==i&&\"translucent\"===t.renderPass){var a=new Mt(t.context.gl.LEQUAL,Mt.ReadWrite,t.depthRangeFor3D);if(1!==i||r.paint.get(\"fill-extrusion-pattern\").constantOr(1))fn(t,e,r,n,a,Et.disabled,Ct.disabled),fn(t,e,r,n,a,t.stencilModeFor3D(),t.colorModeForRenderPass());else{var o=t.colorModeForRenderPass();fn(t,e,r,n,a,Et.disabled,o)}}},hillshade:function(t,e,r,n){if(\"offscreen\"===t.renderPass||\"translucent\"===t.renderPass){for(var i=t.context,a=t.depthModeForSublayer(0,Mt.ReadOnly),o=t.colorModeForRenderPass(),s=\"translucent\"===t.renderPass?t.stencilConfigForOverlap(n):[{},n],l=s[0],c=0,u=s[1];c<u.length;c+=1){var h=u[c],f=e.getTile(h);f.needsHillshadePrepare&&\"offscreen\"===t.renderPass?dn(t,f,r,a,Et.disabled,o):\"translucent\"===t.renderPass&&pn(t,f,r,a,l[h.overscaledZ],o)}i.viewport.set([0,0,t.width,t.height])}},raster:function(t,e,r,n){if(\"translucent\"===t.renderPass&&0!==r.paint.get(\"raster-opacity\")&&n.length)for(var i=t.context,a=i.gl,o=e.getSource(),s=t.useProgram(\"raster\"),l=t.colorModeForRenderPass(),c=o instanceof z?[{},n]:t.stencilConfigForOverlap(n),u=c[0],h=c[1],f=h[h.length-1].overscaledZ,p=!t.options.moving,d=0,m=h;d<m.length;d+=1){var g=m[d],y=t.depthModeForSublayer(g.overscaledZ-f,1===r.paint.get(\"raster-opacity\")?Mt.ReadWrite:Mt.ReadOnly,a.LESS),v=e.getTile(g),x=t.transform.calculatePosMatrix(g.toUnwrapped(),p);v.registerFadeDuration(r.paint.get(\"raster-fade-duration\"));var _=e.findLoadedParent(g,0),b=mn(v,_,e,r,t.transform),w=void 0,T=void 0,k=\"nearest\"===r.paint.get(\"raster-resampling\")?a.NEAREST:a.LINEAR;i.activeTexture.set(a.TEXTURE0),v.texture.bind(k,a.CLAMP_TO_EDGE,a.LINEAR_MIPMAP_NEAREST),i.activeTexture.set(a.TEXTURE1),_?(_.texture.bind(k,a.CLAMP_TO_EDGE,a.LINEAR_MIPMAP_NEAREST),w=Math.pow(2,_.tileID.overscaledZ-v.tileID.overscaledZ),T=[v.tileID.canonical.x*w%1,v.tileID.canonical.y*w%1]):v.texture.bind(k,a.CLAMP_TO_EDGE,a.LINEAR_MIPMAP_NEAREST);var A=Yr(x,T||[0,0],w||1,b,r);o instanceof z?s.draw(i,a.TRIANGLES,y,Et.disabled,l,Lt.disabled,A,r.id,o.boundsBuffer,t.quadTriangleIndexBuffer,o.boundsSegments):s.draw(i,a.TRIANGLES,y,u[g.overscaledZ],l,Lt.disabled,A,r.id,t.rasterBoundsBuffer,t.quadTriangleIndexBuffer,t.rasterBoundsSegments)}},background:function(t,e,r){var n=r.paint.get(\"background-color\"),i=r.paint.get(\"background-opacity\");if(0!==i){var a=t.context,o=a.gl,s=t.transform,l=s.tileSize,c=r.paint.get(\"background-pattern\");if(!t.isPatternMissing(c)){var u=!c&&1===n.a&&1===i&&t.opaquePassEnabledForLayer()?\"opaque\":\"translucent\";if(t.renderPass===u){var h=Et.disabled,f=t.depthModeForSublayer(0,\"opaque\"===u?Mt.ReadWrite:Mt.ReadOnly),p=t.colorModeForRenderPass(),d=t.useProgram(c?\"backgroundPattern\":\"background\"),m=s.coveringTiles({tileSize:l});c&&(a.activeTexture.set(o.TEXTURE0),t.imageManager.bind(t.context));for(var g=r.getCrossfadeParameters(),y=0,v=m;y<v.length;y+=1){var x=v[y],_=t.transform.calculatePosMatrix(x.toUnwrapped()),b=c?en(_,i,t,c,{tileID:x,tileSize:l},g):tn(_,i,n);d.draw(a,o.TRIANGLES,f,h,p,Lt.disabled,b,r.id,t.tileExtentBuffer,t.quadTriangleIndexBuffer,t.tileExtentSegments)}}}}},debug:function(t,e,r){for(var n=0;n<r.length;n++)An(t,e,r[n])},custom:function(t,e,r){var n=t.context,i=r.implementation;if(\"offscreen\"===t.renderPass){var a=i.prerender;a&&(t.setCustomLayerDefaults(),n.setColorMode(t.colorModeForRenderPass()),a.call(i,n.gl,t.transform.customLayerMatrix()),n.setDirty(),t.setBaseState())}else if(\"translucent\"===t.renderPass){t.setCustomLayerDefaults(),n.setColorMode(t.colorModeForRenderPass()),n.setStencilMode(Et.disabled);var o=\"3d\"===i.renderingMode?new Mt(t.context.gl.LEQUAL,Mt.ReadWrite,t.depthRangeFor3D):t.depthModeForSublayer(0,Mt.ReadOnly);n.setDepthMode(o),i.render(n.gl,t.transform.customLayerMatrix()),n.setDirty(),t.setBaseState(),n.bindFramebuffer.set(null)}}},Sn=function(t,e){this.context=new It(t),this.transform=e,this._tileTextures={},this.setup(),this.numSublayers=Pt.maxUnderzooming+Pt.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new Ve,this.gpuTimers={}};Sn.prototype.resize=function(e,r){if(this.width=e*t.browser.devicePixelRatio,this.height=r*t.browser.devicePixelRatio,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(var n=0,i=this.style._order;n<i.length;n+=1){var a=i[n];this.style._layers[a].resize()}},Sn.prototype.setup=function(){var e=this.context,r=new t.StructArrayLayout2i4;r.emplaceBack(0,0),r.emplaceBack(t.EXTENT,0),r.emplaceBack(0,t.EXTENT),r.emplaceBack(t.EXTENT,t.EXTENT),this.tileExtentBuffer=e.createVertexBuffer(r,Ye.members),this.tileExtentSegments=t.SegmentVector.simpleSegment(0,0,4,2);var n=new t.StructArrayLayout2i4;n.emplaceBack(0,0),n.emplaceBack(t.EXTENT,0),n.emplaceBack(0,t.EXTENT),n.emplaceBack(t.EXTENT,t.EXTENT),this.debugBuffer=e.createVertexBuffer(n,Ye.members),this.debugSegments=t.SegmentVector.simpleSegment(0,0,4,5);var i=new t.StructArrayLayout4i8;i.emplaceBack(0,0,0,0),i.emplaceBack(t.EXTENT,0,t.EXTENT,0),i.emplaceBack(0,t.EXTENT,0,t.EXTENT),i.emplaceBack(t.EXTENT,t.EXTENT,t.EXTENT,t.EXTENT),this.rasterBoundsBuffer=e.createVertexBuffer(i,P.members),this.rasterBoundsSegments=t.SegmentVector.simpleSegment(0,0,4,2);var a=new t.StructArrayLayout2i4;a.emplaceBack(0,0),a.emplaceBack(1,0),a.emplaceBack(0,1),a.emplaceBack(1,1),this.viewportBuffer=e.createVertexBuffer(a,Ye.members),this.viewportSegments=t.SegmentVector.simpleSegment(0,0,4,2);var o=new t.StructArrayLayout1ui2;o.emplaceBack(0),o.emplaceBack(1),o.emplaceBack(3),o.emplaceBack(2),o.emplaceBack(0),this.tileBorderIndexBuffer=e.createIndexBuffer(o);var s=new t.StructArrayLayout3ui6;s.emplaceBack(0,1,2),s.emplaceBack(2,1,3),this.quadTriangleIndexBuffer=e.createIndexBuffer(s),this.emptyTexture=new t.Texture(e,{width:1,height:1,data:new Uint8Array([0,0,0,0])},e.gl.RGBA);var l=this.context.gl;this.stencilClearMode=new Et({func:l.ALWAYS,mask:0},0,255,l.ZERO,l.ZERO,l.ZERO)},Sn.prototype.clearStencil=function(){var e=this.context,r=e.gl;this.nextStencilID=1,this.currentStencilSource=void 0;var n=t.create();t.ortho(n,0,this.width,this.height,0,0,1),t.scale(n,n,[r.drawingBufferWidth,r.drawingBufferHeight,0]),this.useProgram(\"clippingMask\").draw(e,r.TRIANGLES,Mt.disabled,this.stencilClearMode,Ct.disabled,Lt.disabled,Fr(n),\"$clipping\",this.viewportBuffer,this.quadTriangleIndexBuffer,this.viewportSegments)},Sn.prototype._renderTileClippingMasks=function(t,e){if(this.currentStencilSource!==t.source&&t.isTileClipped()&&e&&e.length){this.currentStencilSource=t.source;var r=this.context,n=r.gl;this.nextStencilID+e.length>256&&this.clearStencil(),r.setColorMode(Ct.disabled),r.setDepthMode(Mt.disabled);var i=this.useProgram(\"clippingMask\");this._tileClippingMaskIDs={};for(var a=0,o=e;a<o.length;a+=1){var s=o[a],l=this._tileClippingMaskIDs[s.key]=this.nextStencilID++;i.draw(r,n.TRIANGLES,Mt.disabled,new Et({func:n.ALWAYS,mask:0},l,255,n.KEEP,n.KEEP,n.REPLACE),Ct.disabled,Lt.disabled,Fr(s.posMatrix),\"$clipping\",this.tileExtentBuffer,this.quadTriangleIndexBuffer,this.tileExtentSegments)}}},Sn.prototype.stencilModeFor3D=function(){this.currentStencilSource=void 0,this.nextStencilID+1>256&&this.clearStencil();var t=this.nextStencilID++,e=this.context.gl;return new Et({func:e.NOTEQUAL,mask:255},t,255,e.KEEP,e.KEEP,e.REPLACE)},Sn.prototype.stencilModeForClipping=function(t){var e=this.context.gl;return new Et({func:e.EQUAL,mask:255},this._tileClippingMaskIDs[t.key],0,e.KEEP,e.KEEP,e.REPLACE)},Sn.prototype.stencilConfigForOverlap=function(t){var e,r=this.context.gl,n=t.sort((function(t,e){return e.overscaledZ-t.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<a;s++)o[s+i]=new Et({func:r.GEQUAL,mask:255},s+this.nextStencilID,255,r.KEEP,r.KEEP,r.REPLACE);return this.nextStencilID+=a,[o,n]}return[(e={},e[i]=Et.disabled,e),n]},Sn.prototype.colorModeForRenderPass=function(){var e=this.context.gl;if(this._showOverdrawInspector){var r=1/8;return new Ct([e.CONSTANT_COLOR,e.ONE],new t.Color(r,r,r,0),[!0,!0,!0,!0])}return\"opaque\"===this.renderPass?Ct.unblended:Ct.alphaBlended},Sn.prototype.depthModeForSublayer=function(t,e,r){if(!this.opaquePassEnabledForLayer())return Mt.disabled;var n=1-((1+this.currentLayer)*this.numSublayers+t)*this.depthEpsilon;return new Mt(r||this.context.gl.LEQUAL,e,[n,n])},Sn.prototype.opaquePassEnabledForLayer=function(){return this.currentLayer<this.opaquePassCutoff},Sn.prototype.render=function(e,r){var n=this;this.style=e,this.options=r,this.lineAtlas=e.lineAtlas,this.imageManager=e.imageManager,this.glyphManager=e.glyphManager,this.symbolFadeChange=e.placement.symbolFadeChange(t.browser.now()),this.imageManager.beginFrame();var i=this.style._order,a=this.style.sourceCaches;for(var o in a){var s=a[o];s.used&&s.prepare(this.context)}var l,c,u={},h={},f={};for(var p in a){var d=a[p];u[p]=d.getVisibleCoordinates(),h[p]=u[p].slice().reverse(),f[p]=d.getVisibleCoordinates(!0).reverse()}this.opaquePassCutoff=1/0;for(var m=0;m<i.length;m++){var g=i[m];if(this.style._layers[g].is3D()){this.opaquePassCutoff=m;break}}this.renderPass=\"offscreen\";for(var y=0,v=i;y<v.length;y+=1){var x=v[y],_=this.style._layers[x];if(_.hasOffscreenPass()&&!_.isHidden(this.transform.zoom)){var b=h[_.source];(\"custom\"===_.type||b.length)&&this.renderLayer(this,a[_.source],_,b)}}for(this.context.bindFramebuffer.set(null),this.context.clear({color:r.showOverdrawInspector?t.Color.black:t.Color.transparent,depth:1}),this.clearStencil(),this._showOverdrawInspector=r.showOverdrawInspector,this.depthRangeFor3D=[0,1-(e._order.length+2)*this.numSublayers*this.depthEpsilon],this.renderPass=\"opaque\",this.currentLayer=i.length-1;this.currentLayer>=0;this.currentLayer--){var w=this.style._layers[i[this.currentLayer]],T=a[w.source],k=u[w.source];this._renderTileClippingMasks(w,k),this.renderLayer(this,T,w,k)}for(this.renderPass=\"translucent\",this.currentLayer=0;this.currentLayer<i.length;this.currentLayer++){var A=this.style._layers[i[this.currentLayer]],M=a[A.source],S=(\"symbol\"===A.type?f:h)[A.source];this._renderTileClippingMasks(A,u[A.source]),this.renderLayer(this,M,A,S)}this.options.showTileBoundaries&&(t.values(this.style._layers).forEach((function(t){t.source&&!t.isHidden(n.transform.zoom)&&(t.source!==(c&&c.id)&&(c=n.style.sourceCaches[t.source]),(!l||l.getSource().maxzoom<c.getSource().maxzoom)&&(l=c))})),l&&Mn.debug(this,l,l.getVisibleCoordinates())),this.options.showPadding&&bn(this),this.context.setDefault()},Sn.prototype.renderLayer=function(t,e,r,n){r.isHidden(this.transform.zoom)||(\"background\"===r.type||\"custom\"===r.type||n.length)&&(this.id=r.id,this.gpuTimingStart(r),Mn[r.type](t,e,r,n,this.style.placement.variableOffsets),this.gpuTimingEnd())},Sn.prototype.gpuTimingStart=function(t){if(this.options.gpuTiming){var e=this.context.extTimerQuery,r=this.gpuTimers[t.id];r||(r=this.gpuTimers[t.id]={calls:0,cpuTime:0,query:e.createQueryEXT()}),r.calls++,e.beginQueryEXT(e.TIME_ELAPSED_EXT,r.query)}},Sn.prototype.gpuTimingEnd=function(){if(this.options.gpuTiming){var t=this.context.extTimerQuery;t.endQueryEXT(t.TIME_ELAPSED_EXT)}},Sn.prototype.collectGpuTimers=function(){var t=this.gpuTimers;return this.gpuTimers={},t},Sn.prototype.queryGpuTimers=function(t){var e={};for(var r in t){var n=t[r],i=this.context.extTimerQuery,a=i.getQueryObjectEXT(n.query,i.QUERY_RESULT_EXT)/1e6;i.deleteQueryEXT(n.query),e[r]=a}return e},Sn.prototype.translatePosMatrix=function(e,r,n,i,a){if(!n[0]&&!n[1])return e;var o=a?\"map\"===i?this.transform.angle:0:\"viewport\"===i?-this.transform.angle:0;if(o){var s=Math.sin(o),l=Math.cos(o);n=[n[0]*l-n[1]*s,n[0]*s+n[1]*l]}var c=[a?n[0]:ge(r,n[0],this.transform.zoom),a?n[1]:ge(r,n[1],this.transform.zoom),0],u=new Float32Array(16);return t.translate(u,e,c),u},Sn.prototype.saveTileTexture=function(t){var e=this._tileTextures[t.size[0]];e?e.push(t):this._tileTextures[t.size[0]]=[t]},Sn.prototype.getTileTexture=function(t){var e=this._tileTextures[t];return e&&e.length>0?e.pop():null},Sn.prototype.isPatternMissing=function(t){if(!t)return!1;if(!t.from||!t.to)return!0;var e=this.imageManager.getPattern(t.from.toString()),r=this.imageManager.getPattern(t.to.toString());return!e||!r},Sn.prototype.useProgram=function(t,e){this.cache=this.cache||{};var r=\"\"+t+(e?e.cacheKey:\"\")+(this._showOverdrawInspector?\"/overdraw\":\"\");return this.cache[r]||(this.cache[r]=new Ar(this.context,t,wr[t],e,rn[t],this._showOverdrawInspector)),this.cache[r]},Sn.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()},Sn.prototype.setBaseState=function(){var t=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(t.FUNC_ADD)},Sn.prototype.initDebugOverlayCanvas=function(){if(null==this.debugOverlayCanvas){this.debugOverlayCanvas=t.window.document.createElement(\"canvas\"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512;var e=this.context.gl;this.debugOverlayTexture=new t.Texture(this.context,this.debugOverlayCanvas,e.RGBA)}},Sn.prototype.destroy=function(){this.emptyTexture.destroy(),this.debugOverlayTexture&&this.debugOverlayTexture.destroy()};var En=function(t,e){this.points=t,this.planes=e};En.fromInvProjectionMatrix=function(e,r,n){var i=Math.pow(2,n),a=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]].map((function(r){return t.transformMat4([],r,e)})).map((function(e){return t.scale$1([],e,1/e[3]/r*i)})),o=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]].map((function(e){var r=t.sub([],a[e[0]],a[e[1]]),n=t.sub([],a[e[2]],a[e[1]]),i=t.normalize([],t.cross([],r,n)),o=-t.dot(i,a[e[1]]);return i.concat(o)}));return new En(a,o)};var Cn=function(e,r){this.min=e,this.max=r,this.center=t.scale$2([],t.add([],this.min,this.max),.5)};Cn.prototype.quadrant=function(e){for(var r=[e%2==0,e<2],n=t.clone$2(this.min),i=t.clone$2(this.max),a=0;a<r.length;a++)n[a]=r[a]?this.min[a]:this.center[a],i[a]=r[a]?this.center[a]:this.max[a];return i[2]=this.max[2],new Cn(n,i)},Cn.prototype.distanceX=function(t){return Math.max(Math.min(this.max[0],t[0]),this.min[0])-t[0]},Cn.prototype.distanceY=function(t){return Math.max(Math.min(this.max[1],t[1]),this.min[1])-t[1]},Cn.prototype.intersects=function(e){for(var r=[[this.min[0],this.min[1],0,1],[this.max[0],this.min[1],0,1],[this.max[0],this.max[1],0,1],[this.min[0],this.max[1],0,1]],n=!0,i=0;i<e.planes.length;i++){for(var a=e.planes[i],o=0,s=0;s<r.length;s++)o+=t.dot$1(a,r[s])>=0;if(0===o)return 0;o!==r.length&&(n=!1)}if(n)return 2;for(var l=0;l<3;l++){for(var c=Number.MAX_VALUE,u=-Number.MAX_VALUE,h=0;h<e.points.length;h++){var f=e.points[h][l]-this.min[l];c=Math.min(c,f),u=Math.max(u,f)}if(u<0||c>this.max[l]-this.min[l])return 0}return 1};var Ln=function(t,e,r,n){if(void 0===t&&(t=0),void 0===e&&(e=0),void 0===r&&(r=0),void 0===n&&(n=0),isNaN(t)||t<0||isNaN(e)||e<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=t,this.bottom=e,this.left=r,this.right=n};Ln.prototype.interpolate=function(e,r,n){return null!=r.top&&null!=e.top&&(this.top=t.number(e.top,r.top,n)),null!=r.bottom&&null!=e.bottom&&(this.bottom=t.number(e.bottom,r.bottom,n)),null!=r.left&&null!=e.left&&(this.left=t.number(e.left,r.left,n)),null!=r.right&&null!=e.right&&(this.right=t.number(e.right,r.right,n)),this},Ln.prototype.getCenter=function(e,r){var n=t.clamp((this.left+e-this.right)/2,0,e),i=t.clamp((this.top+r-this.bottom)/2,0,r);return new t.Point(n,i)},Ln.prototype.equals=function(t){return this.top===t.top&&this.bottom===t.bottom&&this.left===t.left&&this.right===t.right},Ln.prototype.clone=function(){return new Ln(this.top,this.bottom,this.left,this.right)},Ln.prototype.toJSON=function(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}};var In=function(e,r,n,i,a){this.tileSize=512,this.maxValidLatitude=85.051129,this._renderWorldCopies=void 0===a||a,this._minZoom=e||0,this._maxZoom=r||22,this._minPitch=null==n?0:n,this._maxPitch=null==i?60:i,this.setMaxBounds(),this.width=0,this.height=0,this._center=new t.LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new Ln,this._posMatrixCache={},this._alignedPosMatrixCache={}},Pn={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}};In.prototype.clone=function(){var t=new In(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return t.tileSize=this.tileSize,t.latRange=this.latRange,t.width=this.width,t.height=this.height,t._center=this._center,t.zoom=this.zoom,t.angle=this.angle,t._fov=this._fov,t._pitch=this._pitch,t._unmodified=this._unmodified,t._edgeInsets=this._edgeInsets.clone(),t._calcMatrices(),t},Pn.minZoom.get=function(){return this._minZoom},Pn.minZoom.set=function(t){this._minZoom!==t&&(this._minZoom=t,this.zoom=Math.max(this.zoom,t))},Pn.maxZoom.get=function(){return this._maxZoom},Pn.maxZoom.set=function(t){this._maxZoom!==t&&(this._maxZoom=t,this.zoom=Math.min(this.zoom,t))},Pn.minPitch.get=function(){return this._minPitch},Pn.minPitch.set=function(t){this._minPitch!==t&&(this._minPitch=t,this.pitch=Math.max(this.pitch,t))},Pn.maxPitch.get=function(){return this._maxPitch},Pn.maxPitch.set=function(t){this._maxPitch!==t&&(this._maxPitch=t,this.pitch=Math.min(this.pitch,t))},Pn.renderWorldCopies.get=function(){return this._renderWorldCopies},Pn.renderWorldCopies.set=function(t){void 0===t?t=!0:null===t&&(t=!1),this._renderWorldCopies=t},Pn.worldSize.get=function(){return this.tileSize*this.scale},Pn.centerOffset.get=function(){return this.centerPoint._sub(this.size._div(2))},Pn.size.get=function(){return new t.Point(this.width,this.height)},Pn.bearing.get=function(){return-this.angle/Math.PI*180},Pn.bearing.set=function(e){var r=-t.wrap(e,-180,180)*Math.PI/180;this.angle!==r&&(this._unmodified=!1,this.angle=r,this._calcMatrices(),this.rotationMatrix=t.create$2(),t.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},Pn.pitch.get=function(){return this._pitch/Math.PI*180},Pn.pitch.set=function(e){var r=t.clamp(e,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==r&&(this._unmodified=!1,this._pitch=r,this._calcMatrices())},Pn.fov.get=function(){return this._fov/Math.PI*180},Pn.fov.set=function(t){t=Math.max(.01,Math.min(60,t)),this._fov!==t&&(this._unmodified=!1,this._fov=t/180*Math.PI,this._calcMatrices())},Pn.zoom.get=function(){return this._zoom},Pn.zoom.set=function(t){var e=Math.min(Math.max(t,this.minZoom),this.maxZoom);this._zoom!==e&&(this._unmodified=!1,this._zoom=e,this.scale=this.zoomScale(e),this.tileZoom=Math.floor(e),this.zoomFraction=e-this.tileZoom,this._constrain(),this._calcMatrices())},Pn.center.get=function(){return this._center},Pn.center.set=function(t){t.lat===this._center.lat&&t.lng===this._center.lng||(this._unmodified=!1,this._center=t,this._constrain(),this._calcMatrices())},Pn.padding.get=function(){return this._edgeInsets.toJSON()},Pn.padding.set=function(t){this._edgeInsets.equals(t)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,t,1),this._calcMatrices())},Pn.centerPoint.get=function(){return this._edgeInsets.getCenter(this.width,this.height)},In.prototype.isPaddingEqual=function(t){return this._edgeInsets.equals(t)},In.prototype.interpolatePadding=function(t,e,r){this._unmodified=!1,this._edgeInsets.interpolate(t,e,r),this._constrain(),this._calcMatrices()},In.prototype.coveringZoomLevel=function(t){var e=(t.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/t.tileSize));return Math.max(0,e)},In.prototype.getVisibleUnwrappedCoordinates=function(e){var r=[new t.UnwrappedTileID(0,e)];if(this._renderWorldCopies)for(var n=this.pointCoordinate(new t.Point(0,0)),i=this.pointCoordinate(new t.Point(this.width,0)),a=this.pointCoordinate(new t.Point(this.width,this.height)),o=this.pointCoordinate(new t.Point(0,this.height)),s=Math.floor(Math.min(n.x,i.x,a.x,o.x)),l=Math.floor(Math.max(n.x,i.x,a.x,o.x)),c=s-1;c<=l+1;c++)0!==c&&r.push(new t.UnwrappedTileID(c,e));return r},In.prototype.coveringTiles=function(e){var r=this.coveringZoomLevel(e),n=r;if(void 0!==e.minzoom&&r<e.minzoom)return[];void 0!==e.maxzoom&&r>e.maxzoom&&(r=e.maxzoom);var i=t.MercatorCoordinate.fromLngLat(this.center),a=Math.pow(2,r),o=[a*i.x,a*i.y,0],s=En.fromInvProjectionMatrix(this.invProjMatrix,this.worldSize,r),l=e.minzoom||0;this.pitch<=60&&this._edgeInsets.top<.1&&(l=r);var c=function(t){return{aabb:new Cn([t*a,0,0],[(t+1)*a,a,0]),zoom:0,x:0,y:0,wrap:t,fullyVisible:!1}},u=[],h=[],f=r,p=e.reparseOverscaled?n:r;if(this._renderWorldCopies)for(var d=1;d<=3;d++)u.push(c(-d)),u.push(c(d));for(u.push(c(0));u.length>0;){var m=u.pop(),g=m.x,y=m.y,v=m.fullyVisible;if(!v){var x=m.aabb.intersects(s);if(0===x)continue;v=2===x}var _=m.aabb.distanceX(o),b=m.aabb.distanceY(o),w=Math.max(Math.abs(_),Math.abs(b)),T=3+(1<<f-m.zoom)-2;if(m.zoom===f||w>T&&m.zoom>=l)h.push({tileID:new t.OverscaledTileID(m.zoom===f?p:m.zoom,m.wrap,m.zoom,g,y),distanceSq:t.sqrLen([o[0]-.5-g,o[1]-.5-y])});else for(var k=0;k<4;k++){var A=(g<<1)+k%2,M=(y<<1)+(k>>1);u.push({aabb:m.aabb.quadrant(k),zoom:m.zoom+1,x:A,y:M,wrap:m.wrap,fullyVisible:v})}}return h.sort((function(t,e){return t.distanceSq-e.distanceSq})).map((function(t){return t.tileID}))},In.prototype.resize=function(t,e){this.width=t,this.height=e,this.pixelsToGLUnits=[2/t,-2/e],this._constrain(),this._calcMatrices()},Pn.unmodified.get=function(){return this._unmodified},In.prototype.zoomScale=function(t){return Math.pow(2,t)},In.prototype.scaleZoom=function(t){return Math.log(t)/Math.LN2},In.prototype.project=function(e){var r=t.clamp(e.lat,-this.maxValidLatitude,this.maxValidLatitude);return new t.Point(t.mercatorXfromLng(e.lng)*this.worldSize,t.mercatorYfromLat(r)*this.worldSize)},In.prototype.unproject=function(e){return new t.MercatorCoordinate(e.x/this.worldSize,e.y/this.worldSize).toLngLat()},Pn.point.get=function(){return this.project(this.center)},In.prototype.setLocationAtPoint=function(e,r){var n=this.pointCoordinate(r),i=this.pointCoordinate(this.centerPoint),a=this.locationCoordinate(e),o=new t.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())},In.prototype.locationPoint=function(t){return this.coordinatePoint(this.locationCoordinate(t))},In.prototype.pointLocation=function(t){return this.coordinateLocation(this.pointCoordinate(t))},In.prototype.locationCoordinate=function(e){return t.MercatorCoordinate.fromLngLat(e)},In.prototype.coordinateLocation=function(t){return t.toLngLat()},In.prototype.pointCoordinate=function(e){var r=[e.x,e.y,0,1],n=[e.x,e.y,1,1];t.transformMat4(r,r,this.pixelMatrixInverse),t.transformMat4(n,n,this.pixelMatrixInverse);var i=r[3],a=n[3],o=r[0]/i,s=n[0]/a,l=r[1]/i,c=n[1]/a,u=r[2]/i,h=n[2]/a,f=u===h?0:(0-u)/(h-u);return new t.MercatorCoordinate(t.number(o,s,f)/this.worldSize,t.number(l,c,f)/this.worldSize)},In.prototype.coordinatePoint=function(e){var r=[e.x*this.worldSize,e.y*this.worldSize,0,1];return t.transformMat4(r,r,this.pixelMatrix),new t.Point(r[0]/r[3],r[1]/r[3])},In.prototype.getBounds=function(){return(new t.LngLatBounds).extend(this.pointLocation(new t.Point(0,0))).extend(this.pointLocation(new t.Point(this.width,0))).extend(this.pointLocation(new t.Point(this.width,this.height))).extend(this.pointLocation(new t.Point(0,this.height)))},In.prototype.getMaxBounds=function(){return this.latRange&&2===this.latRange.length&&this.lngRange&&2===this.lngRange.length?new t.LngLatBounds([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]]):null},In.prototype.setMaxBounds=function(t){t?(this.lngRange=[t.getWest(),t.getEast()],this.latRange=[t.getSouth(),t.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-this.maxValidLatitude,this.maxValidLatitude])},In.prototype.calculatePosMatrix=function(e,r){void 0===r&&(r=!1);var n=e.key,i=r?this._alignedPosMatrixCache:this._posMatrixCache;if(i[n])return i[n];var a=e.canonical,o=this.worldSize/this.zoomScale(a.z),s=a.x+Math.pow(2,a.z)*e.wrap,l=t.identity(new Float64Array(16));return t.translate(l,l,[s*o,a.y*o,0]),t.scale(l,l,[o/t.EXTENT,o/t.EXTENT,1]),t.multiply(l,r?this.alignedProjMatrix:this.projMatrix,l),i[n]=new Float32Array(l),i[n]},In.prototype.customLayerMatrix=function(){return this.mercatorMatrix.slice()},In.prototype._constrain=function(){if(this.center&&this.width&&this.height&&!this._constraining){this._constraining=!0;var e,r,n,i,a=-90,o=90,s=-180,l=180,c=this.size,u=this._unmodified;if(this.latRange){var h=this.latRange;a=t.mercatorYfromLat(h[1])*this.worldSize,e=(o=t.mercatorYfromLat(h[0])*this.worldSize)-a<c.y?c.y/(o-a):0}if(this.lngRange){var f=this.lngRange;s=t.mercatorXfromLng(f[0])*this.worldSize,r=(l=t.mercatorXfromLng(f[1])*this.worldSize)-s<c.x?c.x/(l-s):0}var p=this.point,d=Math.max(r||0,e||0);if(d)return this.center=this.unproject(new t.Point(r?(l+s)/2:p.x,e?(o+a)/2:p.y)),this.zoom+=this.scaleZoom(d),this._unmodified=u,void(this._constraining=!1);if(this.latRange){var m=p.y,g=c.y/2;m-g<a&&(i=a+g),m+g>o&&(i=o-g)}if(this.lngRange){var y=p.x,v=c.x/2;y-v<s&&(n=s+v),y+v>l&&(n=l-v)}void 0===n&&void 0===i||(this.center=this.unproject(new t.Point(void 0!==n?n:p.x,void 0!==i?i:p.y))),this._unmodified=u,this._constraining=!1}},In.prototype._calcMatrices=function(){if(this.height){var e=this._fov/2,r=this.centerOffset;this.cameraToCenterDistance=.5/Math.tan(e)*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(t.clamp(Math.PI-n-i,.01,Math.PI-.01)),o=this.point,s=o.x,l=o.y,c=1.01*(Math.cos(Math.PI/2-this._pitch)*a+this.cameraToCenterDistance),u=this.height/50,h=new Float64Array(16);t.perspective(h,this._fov,this.width/this.height,u,c),h[8]=2*-r.x/this.width,h[9]=2*r.y/this.height,t.scale(h,h,[1,-1,1]),t.translate(h,h,[0,0,-this.cameraToCenterDistance]),t.rotateX(h,h,this._pitch),t.rotateZ(h,h,this.angle),t.translate(h,h,[-s,-l,0]),this.mercatorMatrix=t.scale([],h,[this.worldSize,this.worldSize,this.worldSize]),t.scale(h,h,[1,1,t.mercatorZfromAltitude(1,this.center.lat)*this.worldSize,1]),this.projMatrix=h,this.invProjMatrix=t.invert([],this.projMatrix);var f=this.width%2/2,p=this.height%2/2,d=Math.cos(this.angle),m=Math.sin(this.angle),g=s-Math.round(s)+d*f+m*p,y=l-Math.round(l)+d*p+m*f,v=new Float64Array(h);if(t.translate(v,v,[g>.5?g-1:g,y>.5?y-1:y,0]),this.alignedProjMatrix=v,h=t.create(),t.scale(h,h,[this.width/2,-this.height/2,1]),t.translate(h,h,[1,-1,0]),this.labelPlaneMatrix=h,h=t.create(),t.scale(h,h,[1,-1,1]),t.translate(h,h,[-1,-1,0]),t.scale(h,h,[2/this.width,2/this.height,1]),this.glCoordMatrix=h,this.pixelMatrix=t.multiply(new Float64Array(16),this.labelPlaneMatrix,this.projMatrix),!(h=t.invert(new Float64Array(16),this.pixelMatrix)))throw new Error(\"failed to invert matrix\");this.pixelMatrixInverse=h,this._posMatrixCache={},this._alignedPosMatrixCache={}}},In.prototype.maxPitchScaleFactor=function(){if(!this.pixelMatrixInverse)return 1;var e=this.pointCoordinate(new t.Point(0,0)),r=[e.x*this.worldSize,e.y*this.worldSize,0,1];return t.transformMat4(r,r,this.pixelMatrix)[3]/this.cameraToCenterDistance},In.prototype.getCameraPoint=function(){var e=this._pitch,r=Math.tan(e)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new t.Point(0,r))},In.prototype.getCameraQueryGeometry=function(e){var r=this.getCameraPoint();if(1===e.length)return[e[0],r];for(var n=r.x,i=r.y,a=r.x,o=r.y,s=0,l=e;s<l.length;s+=1){var c=l[s];n=Math.min(n,c.x),i=Math.min(i,c.y),a=Math.max(a,c.x),o=Math.max(o,c.y)}return[new t.Point(n,i),new t.Point(a,i),new t.Point(a,o),new t.Point(n,o),new t.Point(n,i)]},Object.defineProperties(In.prototype,Pn);var zn=function(e){var r,n,i,a,o;this._hashName=e&&encodeURIComponent(e),t.bindAll([\"_getCurrentHash\",\"_onHashChange\",\"_updateHash\"],this),this._updateHash=(r=this._updateHashUnthrottled.bind(this),n=300,i=!1,a=null,o=function(){a=null,i&&(r(),a=setTimeout(o,n),i=!1)},function(){return i=!0,a||o(),a})};zn.prototype.addTo=function(e){return this._map=e,t.window.addEventListener(\"hashchange\",this._onHashChange,!1),this._map.on(\"moveend\",this._updateHash),this},zn.prototype.remove=function(){return t.window.removeEventListener(\"hashchange\",this._onHashChange,!1),this._map.off(\"moveend\",this._updateHash),clearTimeout(this._updateHash()),delete this._map,this},zn.prototype.getHashString=function(e){var r=this._map.getCenter(),n=Math.round(100*this._map.getZoom())/100,i=Math.ceil((n*Math.LN2+Math.log(512/360/.5))/Math.LN10),a=Math.pow(10,i),o=Math.round(r.lng*a)/a,s=Math.round(r.lat*a)/a,l=this._map.getBearing(),c=this._map.getPitch(),u=\"\";if(u+=e?\"/\"+o+\"/\"+s+\"/\"+n:n+\"/\"+s+\"/\"+o,(l||c)&&(u+=\"/\"+Math.round(10*l)/10),c&&(u+=\"/\"+Math.round(c)),this._hashName){var h=this._hashName,f=!1,p=t.window.location.hash.slice(1).split(\"&\").map((function(t){var e=t.split(\"=\")[0];return e===h?(f=!0,e+\"=\"+u):t})).filter((function(t){return t}));return f||p.push(h+\"=\"+u),\"#\"+p.join(\"&\")}return\"#\"+u},zn.prototype._getCurrentHash=function(){var e,r=this,n=t.window.location.hash.replace(\"#\",\"\");return this._hashName?(n.split(\"&\").map((function(t){return t.split(\"=\")})).forEach((function(t){t[0]===r._hashName&&(e=t)})),(e&&e[1]||\"\").split(\"/\")):n.split(\"/\")},zn.prototype._onHashChange=function(){var t=this._getCurrentHash();if(t.length>=3&&!t.some((function(t){return isNaN(t)}))){var e=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(t[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+t[2],+t[1]],zoom:+t[0],bearing:e,pitch:+(t[4]||0)}),!0}return!1},zn.prototype._updateHashUnthrottled=function(){var e=t.window.location.href.replace(/(#.+)?$/,this.getHashString());try{t.window.history.replaceState(t.window.history.state,null,e)}catch(t){}};var On={linearity:.3,easing:t.bezier(0,0,.3,1)},Dn=t.extend({deceleration:2500,maxSpeed:1400},On),Rn=t.extend({deceleration:20,maxSpeed:1400},On),Fn=t.extend({deceleration:1e3,maxSpeed:360},On),Bn=t.extend({deceleration:1e3,maxSpeed:90},On),Nn=function(t){this._map=t,this.clear()};function jn(t,e){(!t.duration||t.duration<e.duration)&&(t.duration=e.duration,t.easing=e.easing)}function Un(e,r,n){var i=n.maxSpeed,a=n.linearity,o=n.deceleration,s=t.clamp(e*a/(r/1e3),-i,i),l=Math.abs(s)/(o*a);return{easing:n.easing,duration:1e3*l,amount:s*(l/2)}}Nn.prototype.clear=function(){this._inertiaBuffer=[]},Nn.prototype.record=function(e){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:t.browser.now(),settings:e})},Nn.prototype._drainInertiaBuffer=function(){for(var e=this._inertiaBuffer,r=t.browser.now();e.length>0&&r-e[0].time>160;)e.shift()},Nn.prototype._onMoveEnd=function(e){if(this._drainInertiaBuffer(),!(this._inertiaBuffer.length<2)){for(var r={zoom:0,bearing:0,pitch:0,pan:new t.Point(0,0),pinchAround:void 0,around:void 0},n=0,i=this._inertiaBuffer;n<i.length;n+=1){var a=i[n].settings;r.zoom+=a.zoomDelta||0,r.bearing+=a.bearingDelta||0,r.pitch+=a.pitchDelta||0,a.panDelta&&r.pan._add(a.panDelta),a.around&&(r.around=a.around),a.pinchAround&&(r.pinchAround=a.pinchAround)}var o=this._inertiaBuffer[this._inertiaBuffer.length-1].time-this._inertiaBuffer[0].time,s={};if(r.pan.mag()){var l=Un(r.pan.mag(),o,t.extend({},Dn,e||{}));s.offset=r.pan.mult(l.amount/r.pan.mag()),s.center=this._map.transform.center,jn(s,l)}if(r.zoom){var c=Un(r.zoom,o,Rn);s.zoom=this._map.transform.zoom+c.amount,jn(s,c)}if(r.bearing){var u=Un(r.bearing,o,Fn);s.bearing=this._map.transform.bearing+t.clamp(u.amount,-179,179),jn(s,u)}if(r.pitch){var h=Un(r.pitch,o,Bn);s.pitch=this._map.transform.pitch+h.amount,jn(s,h)}if(s.zoom||s.bearing){var f=void 0===r.pinchAround?r.around:r.pinchAround;s.around=f?this._map.unproject(f):this._map.getCenter()}return this.clear(),t.extend(s,{noMoveStart:!0})}};var Vn=function(e){function n(n,i,a,o){void 0===o&&(o={});var s=r.mousePos(i.getCanvasContainer(),a),l=i.unproject(s);e.call(this,n,t.extend({point:s,lngLat:l,originalEvent:a},o)),this._defaultPrevented=!1,this.target=i}e&&(n.__proto__=e),n.prototype=Object.create(e&&e.prototype),n.prototype.constructor=n;var i={defaultPrevented:{configurable:!0}};return n.prototype.preventDefault=function(){this._defaultPrevented=!0},i.defaultPrevented.get=function(){return this._defaultPrevented},Object.defineProperties(n.prototype,i),n}(t.Event),qn=function(e){function n(n,i,a){var o=\"touchend\"===n?a.changedTouches:a.touches,s=r.touchPos(i.getCanvasContainer(),o),l=s.map((function(t){return i.unproject(t)})),c=s.reduce((function(t,e,r,n){return t.add(e.div(n.length))}),new t.Point(0,0)),u=i.unproject(c);e.call(this,n,{points:s,point:c,lngLats:l,lngLat:u,originalEvent:a}),this._defaultPrevented=!1}e&&(n.__proto__=e),n.prototype=Object.create(e&&e.prototype),n.prototype.constructor=n;var i={defaultPrevented:{configurable:!0}};return n.prototype.preventDefault=function(){this._defaultPrevented=!0},i.defaultPrevented.get=function(){return this._defaultPrevented},Object.defineProperties(n.prototype,i),n}(t.Event),Hn=function(t){function e(e,r,n){t.call(this,e,{originalEvent:n}),this._defaultPrevented=!1}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={defaultPrevented:{configurable:!0}};return e.prototype.preventDefault=function(){this._defaultPrevented=!0},r.defaultPrevented.get=function(){return this._defaultPrevented},Object.defineProperties(e.prototype,r),e}(t.Event),Gn=function(t,e){this._map=t,this._clickTolerance=e.clickTolerance};Gn.prototype.reset=function(){delete this._mousedownPos},Gn.prototype.wheel=function(t){return this._firePreventable(new Hn(t.type,this._map,t))},Gn.prototype.mousedown=function(t,e){return this._mousedownPos=e,this._firePreventable(new Vn(t.type,this._map,t))},Gn.prototype.mouseup=function(t){this._map.fire(new Vn(t.type,this._map,t))},Gn.prototype.click=function(t,e){this._mousedownPos&&this._mousedownPos.dist(e)>=this._clickTolerance||this._map.fire(new Vn(t.type,this._map,t))},Gn.prototype.dblclick=function(t){return this._firePreventable(new Vn(t.type,this._map,t))},Gn.prototype.mouseover=function(t){this._map.fire(new Vn(t.type,this._map,t))},Gn.prototype.mouseout=function(t){this._map.fire(new Vn(t.type,this._map,t))},Gn.prototype.touchstart=function(t){return this._firePreventable(new qn(t.type,this._map,t))},Gn.prototype.touchmove=function(t){this._map.fire(new qn(t.type,this._map,t))},Gn.prototype.touchend=function(t){this._map.fire(new qn(t.type,this._map,t))},Gn.prototype.touchcancel=function(t){this._map.fire(new qn(t.type,this._map,t))},Gn.prototype._firePreventable=function(t){if(this._map.fire(t),t.defaultPrevented)return{}},Gn.prototype.isEnabled=function(){return!0},Gn.prototype.isActive=function(){return!1},Gn.prototype.enable=function(){},Gn.prototype.disable=function(){};var Zn=function(t){this._map=t};Zn.prototype.reset=function(){this._delayContextMenu=!1,delete this._contextMenuEvent},Zn.prototype.mousemove=function(t){this._map.fire(new Vn(t.type,this._map,t))},Zn.prototype.mousedown=function(){this._delayContextMenu=!0},Zn.prototype.mouseup=function(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new Vn(\"contextmenu\",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)},Zn.prototype.contextmenu=function(t){this._delayContextMenu?this._contextMenuEvent=t:this._map.fire(new Vn(t.type,this._map,t)),this._map.listens(\"contextmenu\")&&t.preventDefault()},Zn.prototype.isEnabled=function(){return!0},Zn.prototype.isActive=function(){return!1},Zn.prototype.enable=function(){},Zn.prototype.disable=function(){};var Wn=function(t,e){this._map=t,this._el=t.getCanvasContainer(),this._container=t.getContainer(),this._clickTolerance=e.clickTolerance||1};function Yn(t,e){for(var r={},n=0;n<t.length;n++)r[t[n].identifier]=e[n];return r}Wn.prototype.isEnabled=function(){return!!this._enabled},Wn.prototype.isActive=function(){return!!this._active},Wn.prototype.enable=function(){this.isEnabled()||(this._enabled=!0)},Wn.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},Wn.prototype.mousedown=function(t,e){this.isEnabled()&&t.shiftKey&&0===t.button&&(r.disableDrag(),this._startPos=this._lastPos=e,this._active=!0)},Wn.prototype.mousemoveWindow=function(t,e){if(this._active){var n=e;if(!(this._lastPos.equals(n)||!this._box&&n.dist(this._startPos)<this._clickTolerance)){var i=this._startPos;this._lastPos=n,this._box||(this._box=r.create(\"div\",\"mapboxgl-boxzoom\",this._container),this._container.classList.add(\"mapboxgl-crosshair\"),this._fireEvent(\"boxzoomstart\",t));var a=Math.min(i.x,n.x),o=Math.max(i.x,n.x),s=Math.min(i.y,n.y),l=Math.max(i.y,n.y);r.setTransform(this._box,\"translate(\"+a+\"px,\"+s+\"px)\"),this._box.style.width=o-a+\"px\",this._box.style.height=l-s+\"px\"}}},Wn.prototype.mouseupWindow=function(e,n){var i=this;if(this._active&&0===e.button){var a=this._startPos,o=n;if(this.reset(),r.suppressClick(),a.x!==o.x||a.y!==o.y)return this._map.fire(new t.Event(\"boxzoomend\",{originalEvent:e})),{cameraAnimation:function(t){return t.fitScreenCoordinates(a,o,i._map.getBearing(),{linear:!0})}};this._fireEvent(\"boxzoomcancel\",e)}},Wn.prototype.keydown=function(t){this._active&&27===t.keyCode&&(this.reset(),this._fireEvent(\"boxzoomcancel\",t))},Wn.prototype.reset=function(){this._active=!1,this._container.classList.remove(\"mapboxgl-crosshair\"),this._box&&(r.remove(this._box),this._box=null),r.enableDrag(),delete this._startPos,delete this._lastPos},Wn.prototype._fireEvent=function(e,r){return this._map.fire(new t.Event(e,{originalEvent:r}))};var Xn=function(t){this.reset(),this.numTouches=t.numTouches};Xn.prototype.reset=function(){delete this.centroid,delete this.startTime,delete this.touches,this.aborted=!1},Xn.prototype.touchstart=function(e,r,n){(this.centroid||n.length>this.numTouches)&&(this.aborted=!0),this.aborted||(void 0===this.startTime&&(this.startTime=e.timeStamp),n.length===this.numTouches&&(this.centroid=function(e){for(var r=new t.Point(0,0),n=0,i=e;n<i.length;n+=1){var a=i[n];r._add(a)}return r.div(e.length)}(r),this.touches=Yn(n,r)))},Xn.prototype.touchmove=function(t,e,r){if(!this.aborted&&this.centroid){var n=Yn(r,e);for(var i in this.touches){var a=this.touches[i],o=n[i];(!o||o.dist(a)>30)&&(this.aborted=!0)}}},Xn.prototype.touchend=function(t,e,r){if((!this.centroid||t.timeStamp-this.startTime>500)&&(this.aborted=!0),0===r.length){var n=!this.aborted&&this.centroid;if(this.reset(),n)return n}};var $n=function(t){this.singleTap=new Xn(t),this.numTaps=t.numTaps,this.reset()};$n.prototype.reset=function(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()},$n.prototype.touchstart=function(t,e,r){this.singleTap.touchstart(t,e,r)},$n.prototype.touchmove=function(t,e,r){this.singleTap.touchmove(t,e,r)},$n.prototype.touchend=function(t,e,r){var n=this.singleTap.touchend(t,e,r);if(n){var i=t.timeStamp-this.lastTime<500,a=!this.lastTap||this.lastTap.dist(n)<30;if(i&&a||this.reset(),this.count++,this.lastTime=t.timeStamp,this.lastTap=n,this.count===this.numTaps)return this.reset(),n}};var Jn=function(){this._zoomIn=new $n({numTouches:1,numTaps:2}),this._zoomOut=new $n({numTouches:2,numTaps:1}),this.reset()};Jn.prototype.reset=function(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset()},Jn.prototype.touchstart=function(t,e,r){this._zoomIn.touchstart(t,e,r),this._zoomOut.touchstart(t,e,r)},Jn.prototype.touchmove=function(t,e,r){this._zoomIn.touchmove(t,e,r),this._zoomOut.touchmove(t,e,r)},Jn.prototype.touchend=function(t,e,r){var n=this,i=this._zoomIn.touchend(t,e,r),a=this._zoomOut.touchend(t,e,r);return i?(this._active=!0,t.preventDefault(),setTimeout((function(){return n.reset()}),0),{cameraAnimation:function(e){return e.easeTo({duration:300,zoom:e.getZoom()+1,around:e.unproject(i)},{originalEvent:t})}}):a?(this._active=!0,t.preventDefault(),setTimeout((function(){return n.reset()}),0),{cameraAnimation:function(e){return e.easeTo({duration:300,zoom:e.getZoom()-1,around:e.unproject(a)},{originalEvent:t})}}):void 0},Jn.prototype.touchcancel=function(){this.reset()},Jn.prototype.enable=function(){this._enabled=!0},Jn.prototype.disable=function(){this._enabled=!1,this.reset()},Jn.prototype.isEnabled=function(){return this._enabled},Jn.prototype.isActive=function(){return this._active};var Kn={};Kn[0]=1,Kn[2]=2;var Qn=function(t){this.reset(),this._clickTolerance=t.clickTolerance||1};Qn.prototype.reset=function(){this._active=!1,this._moved=!1,delete this._lastPoint,delete this._eventButton},Qn.prototype._correctButton=function(t,e){return!1},Qn.prototype._move=function(t,e){return{}},Qn.prototype.mousedown=function(t,e){if(!this._lastPoint){var n=r.mouseButton(t);this._correctButton(t,n)&&(this._lastPoint=e,this._eventButton=n)}},Qn.prototype.mousemoveWindow=function(t,e){var r=this._lastPoint;if(r)if(t.preventDefault(),function(t,e){var r=Kn[e];return void 0===t.buttons||(t.buttons&r)!==r}(t,this._eventButton))this.reset();else if(this._moved||!(e.dist(r)<this._clickTolerance))return this._moved=!0,this._lastPoint=e,this._move(r,e)},Qn.prototype.mouseupWindow=function(t){this._lastPoint&&r.mouseButton(t)===this._eventButton&&(this._moved&&r.suppressClick(),this.reset())},Qn.prototype.enable=function(){this._enabled=!0},Qn.prototype.disable=function(){this._enabled=!1,this.reset()},Qn.prototype.isEnabled=function(){return this._enabled},Qn.prototype.isActive=function(){return this._active};var ti=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.mousedown=function(e,r){t.prototype.mousedown.call(this,e,r),this._lastPoint&&(this._active=!0)},e.prototype._correctButton=function(t,e){return 0===e&&!t.ctrlKey},e.prototype._move=function(t,e){return{around:e,panDelta:e.sub(t)}},e}(Qn),ei=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._correctButton=function(t,e){return 0===e&&t.ctrlKey||2===e},e.prototype._move=function(t,e){var r=.8*(e.x-t.x);if(r)return this._active=!0,{bearingDelta:r}},e.prototype.contextmenu=function(t){t.preventDefault()},e}(Qn),ri=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype._correctButton=function(t,e){return 0===e&&t.ctrlKey||2===e},e.prototype._move=function(t,e){var r=-.5*(e.y-t.y);if(r)return this._active=!0,{pitchDelta:r}},e.prototype.contextmenu=function(t){t.preventDefault()},e}(Qn),ni=function(t){this._minTouches=1,this._clickTolerance=t.clickTolerance||1,this.reset()};ni.prototype.reset=function(){this._active=!1,this._touches={},this._sum=new t.Point(0,0)},ni.prototype.touchstart=function(t,e,r){return this._calculateTransform(t,e,r)},ni.prototype.touchmove=function(t,e,r){if(this._active&&!(r.length<this._minTouches))return t.preventDefault(),this._calculateTransform(t,e,r)},ni.prototype.touchend=function(t,e,r){this._calculateTransform(t,e,r),this._active&&r.length<this._minTouches&&this.reset()},ni.prototype.touchcancel=function(){this.reset()},ni.prototype._calculateTransform=function(e,r,n){n.length>0&&(this._active=!0);var i=Yn(n,r),a=new t.Point(0,0),o=new t.Point(0,0),s=0;for(var l in i){var c=i[l],u=this._touches[l];u&&(a._add(c),o._add(c.sub(u)),s++,i[l]=c)}if(this._touches=i,!(s<this._minTouches)&&o.mag()){var h=o.div(s);if(this._sum._add(h),!(this._sum.mag()<this._clickTolerance))return{around:a.div(s),panDelta:h}}},ni.prototype.enable=function(){this._enabled=!0},ni.prototype.disable=function(){this._enabled=!1,this.reset()},ni.prototype.isEnabled=function(){return this._enabled},ni.prototype.isActive=function(){return this._active};var ii=function(){this.reset()};function ai(t,e,r){for(var n=0;n<t.length;n++)if(t[n].identifier===r)return e[n]}ii.prototype.reset=function(){this._active=!1,delete this._firstTwoTouches},ii.prototype._start=function(t){},ii.prototype._move=function(t,e,r){return{}},ii.prototype.touchstart=function(t,e,r){this._firstTwoTouches||r.length<2||(this._firstTwoTouches=[r[0].identifier,r[1].identifier],this._start([e[0],e[1]]))},ii.prototype.touchmove=function(t,e,r){if(this._firstTwoTouches){t.preventDefault();var n=this._firstTwoTouches,i=n[0],a=n[1],o=ai(r,e,i),s=ai(r,e,a);if(o&&s){var l=this._aroundCenter?null:o.add(s).div(2);return this._move([o,s],l,t)}}},ii.prototype.touchend=function(t,e,n){if(this._firstTwoTouches){var i=this._firstTwoTouches,a=i[0],o=i[1],s=ai(n,e,a),l=ai(n,e,o);s&&l||(this._active&&r.suppressClick(),this.reset())}},ii.prototype.touchcancel=function(){this.reset()},ii.prototype.enable=function(t){this._enabled=!0,this._aroundCenter=!!t&&\"center\"===t.around},ii.prototype.disable=function(){this._enabled=!1,this.reset()},ii.prototype.isEnabled=function(){return this._enabled},ii.prototype.isActive=function(){return this._active};function oi(t,e){return Math.log(t/e)/Math.LN2}var si=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.reset=function(){t.prototype.reset.call(this),delete this._distance,delete this._startDistance},e.prototype._start=function(t){this._startDistance=this._distance=t[0].dist(t[1])},e.prototype._move=function(t,e){var r=this._distance;if(this._distance=t[0].dist(t[1]),this._active||!(Math.abs(oi(this._distance,this._startDistance))<.1))return this._active=!0,{zoomDelta:oi(this._distance,r),pinchAround:e}},e}(ii);function li(t,e){return 180*t.angleWith(e)/Math.PI}var ci=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.reset=function(){t.prototype.reset.call(this),delete this._minDiameter,delete this._startVector,delete this._vector},e.prototype._start=function(t){this._startVector=this._vector=t[0].sub(t[1]),this._minDiameter=t[0].dist(t[1])},e.prototype._move=function(t,e){var r=this._vector;if(this._vector=t[0].sub(t[1]),this._active||!this._isBelowThreshold(this._vector))return this._active=!0,{bearingDelta:li(this._vector,r),pinchAround:e}},e.prototype._isBelowThreshold=function(t){this._minDiameter=Math.min(this._minDiameter,t.mag());var e=25/(Math.PI*this._minDiameter)*360,r=li(t,this._startVector);return Math.abs(r)<e},e}(ii);function ui(t){return Math.abs(t.y)>Math.abs(t.x)}var hi=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.reset=function(){t.prototype.reset.call(this),this._valid=void 0,delete this._firstMove,delete this._lastPoints},e.prototype._start=function(t){this._lastPoints=t,ui(t[0].sub(t[1]))&&(this._valid=!1)},e.prototype._move=function(t,e,r){var n=t[0].sub(this._lastPoints[0]),i=t[1].sub(this._lastPoints[1]);if(this._valid=this.gestureBeginsVertically(n,i,r.timeStamp),this._valid)return this._lastPoints=t,this._active=!0,{pitchDelta:(n.y+i.y)/2*-.5}},e.prototype.gestureBeginsVertically=function(t,e,r){if(void 0!==this._valid)return this._valid;var n=t.mag()>=2,i=e.mag()>=2;if(n||i){if(!n||!i)return void 0===this._firstMove&&(this._firstMove=r),r-this._firstMove<100&&void 0;var a=t.y>0==e.y>0;return ui(t)&&ui(e)&&a}},e}(ii),fi={panStep:100,bearingStep:15,pitchStep:10},pi=function(){var t=fi;this._panStep=t.panStep,this._bearingStep=t.bearingStep,this._pitchStep=t.pitchStep,this._rotationDisabled=!1};function di(t){return t*(2-t)}pi.prototype.reset=function(){this._active=!1},pi.prototype.keydown=function(t){var e=this;if(!(t.altKey||t.ctrlKey||t.metaKey)){var r=0,n=0,i=0,a=0,o=0;switch(t.keyCode){case 61:case 107:case 171:case 187:r=1;break;case 189:case 109:case 173:r=-1;break;case 37:t.shiftKey?n=-1:(t.preventDefault(),a=-1);break;case 39:t.shiftKey?n=1:(t.preventDefault(),a=1);break;case 38:t.shiftKey?i=1:(t.preventDefault(),o=-1);break;case 40:t.shiftKey?i=-1:(t.preventDefault(),o=1);break;default:return}return this._rotationDisabled&&(n=0,i=0),{cameraAnimation:function(s){var l=s.getZoom();s.easeTo({duration:300,easeId:\"keyboardHandler\",easing:di,zoom:r?Math.round(l)+r*(t.shiftKey?2:1):l,bearing:s.getBearing()+n*e._bearingStep,pitch:s.getPitch()+i*e._pitchStep,offset:[-a*e._panStep,-o*e._panStep],center:s.getCenter()},{originalEvent:t})}}}},pi.prototype.enable=function(){this._enabled=!0},pi.prototype.disable=function(){this._enabled=!1,this.reset()},pi.prototype.isEnabled=function(){return this._enabled},pi.prototype.isActive=function(){return this._active},pi.prototype.disableRotation=function(){this._rotationDisabled=!0},pi.prototype.enableRotation=function(){this._rotationDisabled=!1};var mi=4.000244140625,gi=function(e,r){this._map=e,this._el=e.getCanvasContainer(),this._handler=r,this._delta=0,this._defaultZoomRate=.01,this._wheelZoomRate=.0022222222222222222,t.bindAll([\"_onTimeout\"],this)};gi.prototype.setZoomRate=function(t){this._defaultZoomRate=t},gi.prototype.setWheelZoomRate=function(t){this._wheelZoomRate=t},gi.prototype.isEnabled=function(){return!!this._enabled},gi.prototype.isActive=function(){return!!this._active||void 0!==this._finishTimeout},gi.prototype.isZooming=function(){return!!this._zooming},gi.prototype.enable=function(t){this.isEnabled()||(this._enabled=!0,this._aroundCenter=t&&\"center\"===t.around)},gi.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},gi.prototype.wheel=function(e){if(this.isEnabled()){var r=e.deltaMode===t.window.WheelEvent.DOM_DELTA_LINE?40*e.deltaY:e.deltaY,n=t.browser.now(),i=n-(this._lastWheelEventTime||0);this._lastWheelEventTime=n,0!==r&&r%mi==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,e)):this._type||(this._type=Math.abs(i*r)<200?\"trackpad\":\"wheel\",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,r+=this._lastValue)),e.shiftKey&&r&&(r/=4),this._type&&(this._lastWheelEvent=e,this._delta-=r,this._active||this._start(e)),e.preventDefault()}},gi.prototype._onTimeout=function(t){this._type=\"wheel\",this._delta-=this._lastValue,this._active||this._start(t)},gi.prototype._start=function(e){if(this._delta){this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);var n=r.mousePos(this._el,e);this._around=t.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())}},gi.prototype.renderFrame=function(){var e=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)>mi?this._wheelZoomRate:this._defaultZoomRate,i=2/(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,c=this._easing,u=!1;if(\"wheel\"===this._type&&l&&c){var h=Math.min((t.browser.now()-this._lastWheelEventTime)/200,1),f=c(h);o=t.number(l,s,f),h<1?this._frameId||(this._frameId=!0):u=!0}else o=s,u=!0;return this._active=!0,u&&(this._active=!1,this._finishTimeout=setTimeout((function(){e._zooming=!1,e._handler._triggerRenderFrame(),delete e._targetZoom,delete e._finishTimeout}),200)),{noInertia:!0,needsRenderFrame:!u,zoomDelta:o-r.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}},gi.prototype._smoothOutEasing=function(e){var r=t.ease;if(this._prevEase){var n=this._prevEase,i=(t.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=t.bezier(o,s,.25,1)}return this._prevEase={start:t.browser.now(),duration:e,easing:r},r},gi.prototype.reset=function(){this._active=!1};var yi=function(t,e){this._clickZoom=t,this._tapZoom=e};yi.prototype.enable=function(){this._clickZoom.enable(),this._tapZoom.enable()},yi.prototype.disable=function(){this._clickZoom.disable(),this._tapZoom.disable()},yi.prototype.isEnabled=function(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()},yi.prototype.isActive=function(){return this._clickZoom.isActive()||this._tapZoom.isActive()};var vi=function(){this.reset()};vi.prototype.reset=function(){this._active=!1},vi.prototype.dblclick=function(t,e){return t.preventDefault(),{cameraAnimation:function(r){r.easeTo({duration:300,zoom:r.getZoom()+(t.shiftKey?-1:1),around:r.unproject(e)},{originalEvent:t})}}},vi.prototype.enable=function(){this._enabled=!0},vi.prototype.disable=function(){this._enabled=!1,this.reset()},vi.prototype.isEnabled=function(){return this._enabled},vi.prototype.isActive=function(){return this._active};var xi=function(){this._tap=new $n({numTouches:1,numTaps:1}),this.reset()};xi.prototype.reset=function(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,this._tap.reset()},xi.prototype.touchstart=function(t,e,r){this._swipePoint||(this._tapTime&&t.timeStamp-this._tapTime>500&&this.reset(),this._tapTime?r.length>0&&(this._swipePoint=e[0],this._swipeTouch=r[0].identifier):this._tap.touchstart(t,e,r))},xi.prototype.touchmove=function(t,e,r){if(this._tapTime){if(this._swipePoint){if(r[0].identifier!==this._swipeTouch)return;var n=e[0],i=n.y-this._swipePoint.y;return this._swipePoint=n,t.preventDefault(),this._active=!0,{zoomDelta:i/128}}}else this._tap.touchmove(t,e,r)},xi.prototype.touchend=function(t,e,r){this._tapTime?this._swipePoint&&0===r.length&&this.reset():this._tap.touchend(t,e,r)&&(this._tapTime=t.timeStamp)},xi.prototype.touchcancel=function(){this.reset()},xi.prototype.enable=function(){this._enabled=!0},xi.prototype.disable=function(){this._enabled=!1,this.reset()},xi.prototype.isEnabled=function(){return this._enabled},xi.prototype.isActive=function(){return this._active};var _i=function(t,e,r){this._el=t,this._mousePan=e,this._touchPan=r};_i.prototype.enable=function(t){this._inertiaOptions=t||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add(\"mapboxgl-touch-drag-pan\")},_i.prototype.disable=function(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove(\"mapboxgl-touch-drag-pan\")},_i.prototype.isEnabled=function(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()},_i.prototype.isActive=function(){return this._mousePan.isActive()||this._touchPan.isActive()};var bi=function(t,e,r){this._pitchWithRotate=t.pitchWithRotate,this._mouseRotate=e,this._mousePitch=r};bi.prototype.enable=function(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()},bi.prototype.disable=function(){this._mouseRotate.disable(),this._mousePitch.disable()},bi.prototype.isEnabled=function(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())},bi.prototype.isActive=function(){return this._mouseRotate.isActive()||this._mousePitch.isActive()};var wi=function(t,e,r,n){this._el=t,this._touchZoom=e,this._touchRotate=r,this._tapDragZoom=n,this._rotationDisabled=!1,this._enabled=!0};wi.prototype.enable=function(t){this._touchZoom.enable(t),this._rotationDisabled||this._touchRotate.enable(t),this._tapDragZoom.enable(),this._el.classList.add(\"mapboxgl-touch-zoom-rotate\")},wi.prototype.disable=function(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove(\"mapboxgl-touch-zoom-rotate\")},wi.prototype.isEnabled=function(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()},wi.prototype.isActive=function(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()},wi.prototype.disableRotation=function(){this._rotationDisabled=!0,this._touchRotate.disable()},wi.prototype.enableRotation=function(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()};var Ti=function(t){return t.zoom||t.drag||t.pitch||t.rotate},ki=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(t.Event);function Ai(t){return t.panDelta&&t.panDelta.mag()||t.zoomDelta||t.bearingDelta||t.pitchDelta}var Mi=function(e,n){this._map=e,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new Nn(e),this._bearingSnap=n.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(n),t.bindAll([\"handleEvent\",\"handleWindowEvent\"],this);var i=this._el;this._listeners=[[i,\"touchstart\",{passive:!0}],[i,\"touchmove\",{passive:!1}],[i,\"touchend\",void 0],[i,\"touchcancel\",void 0],[i,\"mousedown\",void 0],[i,\"mousemove\",void 0],[i,\"mouseup\",void 0],[t.window.document,\"mousemove\",{capture:!0}],[t.window.document,\"mouseup\",void 0],[i,\"mouseover\",void 0],[i,\"mouseout\",void 0],[i,\"dblclick\",void 0],[i,\"click\",void 0],[i,\"keydown\",{capture:!1}],[i,\"keyup\",void 0],[i,\"wheel\",{passive:!1}],[i,\"contextmenu\",void 0],[t.window,\"blur\",void 0]];for(var a=0,o=this._listeners;a<o.length;a+=1){var s=o[a],l=s[0],c=s[1],u=s[2];r.addEventListener(l,c,l===t.window.document?this.handleWindowEvent:this.handleEvent,u)}};Mi.prototype.destroy=function(){for(var e=0,n=this._listeners;e<n.length;e+=1){var i=n[e],a=i[0],o=i[1],s=i[2];r.removeEventListener(a,o,a===t.window.document?this.handleWindowEvent:this.handleEvent,s)}},Mi.prototype._addDefaultHandlers=function(t){var e=this._map,r=e.getCanvasContainer();this._add(\"mapEvent\",new Gn(e,t));var n=e.boxZoom=new Wn(e,t);this._add(\"boxZoom\",n);var i=new Jn,a=new vi;e.doubleClickZoom=new yi(a,i),this._add(\"tapZoom\",i),this._add(\"clickZoom\",a);var o=new xi;this._add(\"tapDragZoom\",o);var s=e.touchPitch=new hi;this._add(\"touchPitch\",s);var l=new ei(t),c=new ri(t);e.dragRotate=new bi(t,l,c),this._add(\"mouseRotate\",l,[\"mousePitch\"]),this._add(\"mousePitch\",c,[\"mouseRotate\"]);var u=new ti(t),h=new ni(t);e.dragPan=new _i(r,u,h),this._add(\"mousePan\",u),this._add(\"touchPan\",h,[\"touchZoom\",\"touchRotate\"]);var f=new ci,p=new si;e.touchZoomRotate=new wi(r,p,f,o),this._add(\"touchRotate\",f,[\"touchPan\",\"touchZoom\"]),this._add(\"touchZoom\",p,[\"touchPan\",\"touchRotate\"]);var d=e.scrollZoom=new gi(e,this);this._add(\"scrollZoom\",d,[\"mousePan\"]);var m=e.keyboard=new pi;this._add(\"keyboard\",m),this._add(\"blockableMapEvent\",new Zn(e));for(var g=0,y=[\"boxZoom\",\"doubleClickZoom\",\"tapDragZoom\",\"touchPitch\",\"dragRotate\",\"dragPan\",\"touchZoomRotate\",\"scrollZoom\",\"keyboard\"];g<y.length;g+=1){var v=y[g];t.interactive&&t[v]&&e[v].enable(t[v])}},Mi.prototype._add=function(t,e,r){this._handlers.push({handlerName:t,handler:e,allowed:r}),this._handlersById[t]=e},Mi.prototype.stop=function(t){if(!this._updatingCamera){for(var e=0,r=this._handlers;e<r.length;e+=1)r[e].handler.reset();this._inertia.clear(),this._fireEvents({},{},t),this._changes=[]}},Mi.prototype.isActive=function(){for(var t=0,e=this._handlers;t<e.length;t+=1)if(e[t].handler.isActive())return!0;return!1},Mi.prototype.isZooming=function(){return!!this._eventsInProgress.zoom||this._map.scrollZoom.isZooming()},Mi.prototype.isRotating=function(){return!!this._eventsInProgress.rotate},Mi.prototype.isMoving=function(){return Boolean(Ti(this._eventsInProgress))||this.isZooming()},Mi.prototype._blockedByActive=function(t,e,r){for(var n in t)if(n!==r&&(!e||e.indexOf(n)<0))return!0;return!1},Mi.prototype.handleWindowEvent=function(t){this.handleEvent(t,t.type+\"Window\")},Mi.prototype._getMapTouches=function(t){for(var e=[],r=0,n=t;r<n.length;r+=1){var i=n[r],a=i.target;this._el.contains(a)&&e.push(i)}return e},Mi.prototype.handleEvent=function(t,e){if(\"blur\"!==t.type){this._updatingCamera=!0;for(var n=\"renderFrame\"===t.type?void 0:t,i={needsRenderFrame:!1},a={},o={},s=t.touches?this._getMapTouches(t.touches):void 0,l=s?r.touchPos(this._el,s):r.mousePos(this._el,t),c=0,u=this._handlers;c<u.length;c+=1){var h=u[c],f=h.handlerName,p=h.handler,d=h.allowed;if(p.isEnabled()){var m=void 0;this._blockedByActive(o,d,f)?p.reset():p[e||t.type]&&(m=p[e||t.type](t,l,s),this.mergeHandlerResult(i,a,m,f,n),m&&m.needsRenderFrame&&this._triggerRenderFrame()),(m||p.isActive())&&(o[f]=p)}}var g={};for(var y in this._previousActiveHandlers)o[y]||(g[y]=n);this._previousActiveHandlers=o,(Object.keys(g).length||Ai(i))&&(this._changes.push([i,a,g]),this._triggerRenderFrame()),(Object.keys(o).length||Ai(i))&&this._map._stop(!0),this._updatingCamera=!1;var v=i.cameraAnimation;v&&(this._inertia.clear(),this._fireEvents({},{},!0),this._changes=[],v(this._map))}else this.stop(!0)},Mi.prototype.mergeHandlerResult=function(e,r,n,i,a){if(n){t.extend(e,n);var o={handlerName:i,originalEvent:n.originalEvent||a};void 0!==n.zoomDelta&&(r.zoom=o),void 0!==n.panDelta&&(r.drag=o),void 0!==n.pitchDelta&&(r.pitch=o),void 0!==n.bearingDelta&&(r.rotate=o)}},Mi.prototype._applyChanges=function(){for(var e={},r={},n={},i=0,a=this._changes;i<a.length;i+=1){var o=a[i],s=o[0],l=o[1],c=o[2];s.panDelta&&(e.panDelta=(e.panDelta||new t.Point(0,0))._add(s.panDelta)),s.zoomDelta&&(e.zoomDelta=(e.zoomDelta||0)+s.zoomDelta),s.bearingDelta&&(e.bearingDelta=(e.bearingDelta||0)+s.bearingDelta),s.pitchDelta&&(e.pitchDelta=(e.pitchDelta||0)+s.pitchDelta),void 0!==s.around&&(e.around=s.around),void 0!==s.pinchAround&&(e.pinchAround=s.pinchAround),s.noInertia&&(e.noInertia=s.noInertia),t.extend(r,l),t.extend(n,c)}this._updateMapTransform(e,r,n),this._changes=[]},Mi.prototype._updateMapTransform=function(t,e,r){var n=this._map,i=n.transform;if(!Ai(t))return this._fireEvents(e,r,!0);var a=t.panDelta,o=t.zoomDelta,s=t.bearingDelta,l=t.pitchDelta,c=t.around,u=t.pinchAround;void 0!==u&&(c=u),n._stop(!0),c=c||n.transform.centerPoint;var h=i.pointLocation(a?c.sub(a):c);s&&(i.bearing+=s),l&&(i.pitch+=l),o&&(i.zoom+=o),i.setLocationAtPoint(h,c),this._map._update(),t.noInertia||this._inertia.record(t),this._fireEvents(e,r,!0)},Mi.prototype._fireEvents=function(e,r,n){var i=this,a=Ti(this._eventsInProgress),o=Ti(e),s={};for(var l in e){var c=e[l].originalEvent;this._eventsInProgress[l]||(s[l+\"start\"]=c),this._eventsInProgress[l]=e[l]}for(var u in!a&&o&&this._fireEvent(\"movestart\",o.originalEvent),s)this._fireEvent(u,s[u]);for(var h in o&&this._fireEvent(\"move\",o.originalEvent),e){var f=e[h].originalEvent;this._fireEvent(h,f)}var p,d={};for(var m in this._eventsInProgress){var g=this._eventsInProgress[m],y=g.handlerName,v=g.originalEvent;this._handlersById[y].isActive()||(delete this._eventsInProgress[m],p=r[y]||v,d[m+\"end\"]=p)}for(var x in d)this._fireEvent(x,d[x]);var _=Ti(this._eventsInProgress);if(n&&(a||o)&&!_){this._updatingCamera=!0;var b=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),w=function(t){return 0!==t&&-i._bearingSnap<t&&t<i._bearingSnap};b?(w(b.bearing||this._map.getBearing())&&(b.bearing=0),this._map.easeTo(b,{originalEvent:p})):(this._map.fire(new t.Event(\"moveend\",{originalEvent:p})),w(this._map.getBearing())&&this._map.resetNorth()),this._updatingCamera=!1}},Mi.prototype._fireEvent=function(e,r){this._map.fire(new t.Event(e,r?{originalEvent:r}:{}))},Mi.prototype._requestFrame=function(){var t=this;return this._map.triggerRepaint(),this._map._renderTaskQueue.add((function(e){delete t._frameId,t.handleEvent(new ki(\"renderFrame\",{timeStamp:e})),t._applyChanges()}))},Mi.prototype._triggerRenderFrame=function(){void 0===this._frameId&&(this._frameId=this._requestFrame())};var Si=function(e){function r(r,n){e.call(this),this._moving=!1,this._zooming=!1,this.transform=r,this._bearingSnap=n.bearingSnap,t.bindAll([\"_renderFrameCallback\"],this)}return e&&(r.__proto__=e),r.prototype=Object.create(e&&e.prototype),r.prototype.constructor=r,r.prototype.getCenter=function(){return new t.LngLat(this.transform.center.lng,this.transform.center.lat)},r.prototype.setCenter=function(t,e){return this.jumpTo({center:t},e)},r.prototype.panBy=function(e,r,n){return e=t.Point.convert(e).mult(-1),this.panTo(this.transform.center,t.extend({offset:e},r),n)},r.prototype.panTo=function(e,r,n){return this.easeTo(t.extend({center:e},r),n)},r.prototype.getZoom=function(){return this.transform.zoom},r.prototype.setZoom=function(t,e){return this.jumpTo({zoom:t},e),this},r.prototype.zoomTo=function(e,r,n){return this.easeTo(t.extend({zoom:e},r),n)},r.prototype.zoomIn=function(t,e){return this.zoomTo(this.getZoom()+1,t,e),this},r.prototype.zoomOut=function(t,e){return this.zoomTo(this.getZoom()-1,t,e),this},r.prototype.getBearing=function(){return this.transform.bearing},r.prototype.setBearing=function(t,e){return this.jumpTo({bearing:t},e),this},r.prototype.getPadding=function(){return this.transform.padding},r.prototype.setPadding=function(t,e){return this.jumpTo({padding:t},e),this},r.prototype.rotateTo=function(e,r,n){return this.easeTo(t.extend({bearing:e},r),n)},r.prototype.resetNorth=function(e,r){return this.rotateTo(0,t.extend({duration:1e3},e),r),this},r.prototype.resetNorthPitch=function(e,r){return this.easeTo(t.extend({bearing:0,pitch:0,duration:1e3},e),r),this},r.prototype.snapToNorth=function(t,e){return Math.abs(this.getBearing())<this._bearingSnap?this.resetNorth(t,e):this},r.prototype.getPitch=function(){return this.transform.pitch},r.prototype.setPitch=function(t,e){return this.jumpTo({pitch:t},e),this},r.prototype.cameraForBounds=function(e,r){e=t.LngLatBounds.convert(e);var n=r&&r.bearing||0;return this._cameraForBoxAndBearing(e.getNorthWest(),e.getSouthEast(),n,r)},r.prototype._cameraForBoxAndBearing=function(e,r,n,i){var a={top:0,bottom:0,right:0,left:0};if(\"number\"==typeof(i=t.extend({padding:a,offset:[0,0],maxZoom:this.transform.maxZoom},i)).padding){var o=i.padding;i.padding={top:o,bottom:o,right:o,left:o}}i.padding=t.extend(a,i.padding);var s=this.transform,l=s.padding,c=s.project(t.LngLat.convert(e)),u=s.project(t.LngLat.convert(r)),h=c.rotate(-n*Math.PI/180),f=u.rotate(-n*Math.PI/180),p=new t.Point(Math.max(h.x,f.x),Math.max(h.y,f.y)),d=new t.Point(Math.min(h.x,f.x),Math.min(h.y,f.y)),m=p.sub(d),g=(s.width-(l.left+l.right+i.padding.left+i.padding.right))/m.x,y=(s.height-(l.top+l.bottom+i.padding.top+i.padding.bottom))/m.y;if(!(y<0||g<0)){var v=Math.min(s.scaleZoom(s.scale*Math.min(g,y)),i.maxZoom),x=\"number\"==typeof i.offset.x?new t.Point(i.offset.x,i.offset.y):t.Point.convert(i.offset),_=(i.padding.left-i.padding.right)/2,b=(i.padding.top-i.padding.bottom)/2,w=new t.Point(_,b).rotate(n*Math.PI/180),T=x.add(w).mult(s.scale/s.zoomScale(v));return{center:s.unproject(c.add(u).div(2).sub(T)),zoom:v,bearing:n}}t.warnOnce(\"Map cannot fit within canvas with the given bounds, padding, and/or offset.\")},r.prototype.fitBounds=function(t,e,r){return this._fitInternal(this.cameraForBounds(t,e),e,r)},r.prototype.fitScreenCoordinates=function(e,r,n,i,a){return this._fitInternal(this._cameraForBoxAndBearing(this.transform.pointLocation(t.Point.convert(e)),this.transform.pointLocation(t.Point.convert(r)),n,i),i,a)},r.prototype._fitInternal=function(e,r,n){return e?(delete(r=t.extend(e,r)).padding,r.linear?this.easeTo(r,n):this.flyTo(r,n)):this},r.prototype.jumpTo=function(e,r){this.stop();var n=this.transform,i=!1,a=!1,o=!1;return\"zoom\"in e&&n.zoom!==+e.zoom&&(i=!0,n.zoom=+e.zoom),void 0!==e.center&&(n.center=t.LngLat.convert(e.center)),\"bearing\"in e&&n.bearing!==+e.bearing&&(a=!0,n.bearing=+e.bearing),\"pitch\"in e&&n.pitch!==+e.pitch&&(o=!0,n.pitch=+e.pitch),null==e.padding||n.isPaddingEqual(e.padding)||(n.padding=e.padding),this.fire(new t.Event(\"movestart\",r)).fire(new t.Event(\"move\",r)),i&&this.fire(new t.Event(\"zoomstart\",r)).fire(new t.Event(\"zoom\",r)).fire(new t.Event(\"zoomend\",r)),a&&this.fire(new t.Event(\"rotatestart\",r)).fire(new t.Event(\"rotate\",r)).fire(new t.Event(\"rotateend\",r)),o&&this.fire(new t.Event(\"pitchstart\",r)).fire(new t.Event(\"pitch\",r)).fire(new t.Event(\"pitchend\",r)),this.fire(new t.Event(\"moveend\",r))},r.prototype.easeTo=function(e,r){var n=this;this._stop(!1,e.easeId),(!1===(e=t.extend({offset:[0,0],duration:500,easing:t.ease},e)).animate||!e.essential&&t.browser.prefersReducedMotion)&&(e.duration=0);var i=this.transform,a=this.getZoom(),o=this.getBearing(),s=this.getPitch(),l=this.getPadding(),c=\"zoom\"in e?+e.zoom:a,u=\"bearing\"in e?this._normalizeBearing(e.bearing,o):o,h=\"pitch\"in e?+e.pitch:s,f=\"padding\"in e?e.padding:i.padding,p=t.Point.convert(e.offset),d=i.centerPoint.add(p),m=i.pointLocation(d),g=t.LngLat.convert(e.center||m);this._normalizeCenter(g);var y,v,x=i.project(m),_=i.project(g).sub(x),b=i.zoomScale(c-a);e.around&&(y=t.LngLat.convert(e.around),v=i.locationPoint(y));var w={moving:this._moving,zooming:this._zooming,rotating:this._rotating,pitching:this._pitching};return this._zooming=this._zooming||c!==a,this._rotating=this._rotating||o!==u,this._pitching=this._pitching||h!==s,this._padding=!i.isPaddingEqual(f),this._easeId=e.easeId,this._prepareEase(r,e.noMoveStart,w),this._ease((function(e){if(n._zooming&&(i.zoom=t.number(a,c,e)),n._rotating&&(i.bearing=t.number(o,u,e)),n._pitching&&(i.pitch=t.number(s,h,e)),n._padding&&(i.interpolatePadding(l,f,e),d=i.centerPoint.add(p)),y)i.setLocationAtPoint(y,v);else{var m=i.zoomScale(i.zoom-a),g=c>a?Math.min(2,b):Math.max(.5,b),w=Math.pow(g,1-e),T=i.unproject(x.add(_.mult(e*w)).mult(m));i.setLocationAtPoint(i.renderWorldCopies?T.wrap():T,d)}n._fireMoveEvents(r)}),(function(t){n._afterEase(r,t)}),e),this},r.prototype._prepareEase=function(e,r,n){void 0===n&&(n={}),this._moving=!0,r||n.moving||this.fire(new t.Event(\"movestart\",e)),this._zooming&&!n.zooming&&this.fire(new t.Event(\"zoomstart\",e)),this._rotating&&!n.rotating&&this.fire(new t.Event(\"rotatestart\",e)),this._pitching&&!n.pitching&&this.fire(new t.Event(\"pitchstart\",e))},r.prototype._fireMoveEvents=function(e){this.fire(new t.Event(\"move\",e)),this._zooming&&this.fire(new t.Event(\"zoom\",e)),this._rotating&&this.fire(new t.Event(\"rotate\",e)),this._pitching&&this.fire(new t.Event(\"pitch\",e))},r.prototype._afterEase=function(e,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 t.Event(\"zoomend\",e)),i&&this.fire(new t.Event(\"rotateend\",e)),a&&this.fire(new t.Event(\"pitchend\",e)),this.fire(new t.Event(\"moveend\",e))}},r.prototype.flyTo=function(e,r){var n=this;if(!e.essential&&t.browser.prefersReducedMotion){var i=t.pick(e,[\"center\",\"zoom\",\"bearing\",\"pitch\",\"around\"]);return this.jumpTo(i,r)}this.stop(),e=t.extend({offset:[0,0],speed:1.2,curve:1.42,easing:t.ease},e);var a=this.transform,o=this.getZoom(),s=this.getBearing(),l=this.getPitch(),c=this.getPadding(),u=\"zoom\"in e?t.clamp(+e.zoom,a.minZoom,a.maxZoom):o,h=\"bearing\"in e?this._normalizeBearing(e.bearing,s):s,f=\"pitch\"in e?+e.pitch:l,p=\"padding\"in e?e.padding:a.padding,d=a.zoomScale(u-o),m=t.Point.convert(e.offset),g=a.centerPoint.add(m),y=a.pointLocation(g),v=t.LngLat.convert(e.center||y);this._normalizeCenter(v);var x=a.project(y),_=a.project(v).sub(x),b=e.curve,w=Math.max(a.width,a.height),T=w/d,k=_.mag();if(\"minZoom\"in e){var A=t.clamp(Math.min(e.minZoom,o,u),a.minZoom,a.maxZoom),M=w/a.zoomScale(A-o);b=Math.sqrt(M/k*2)}var S=b*b;function E(t){var e=(T*T-w*w+(t?-1:1)*S*S*k*k)/(2*(t?T:w)*S*k);return Math.log(Math.sqrt(e*e+1)-e)}function C(t){return(Math.exp(t)-Math.exp(-t))/2}function L(t){return(Math.exp(t)+Math.exp(-t))/2}var I=E(0),P=function(t){return L(I)/L(I+b*t)},z=function(t){return w*((L(I)*(C(e=I+b*t)/L(e))-C(I))/S)/k;var e},O=(E(1)-I)/b;if(Math.abs(k)<1e-6||!isFinite(O)){if(Math.abs(w-T)<1e-6)return this.easeTo(e,r);var D=T<w?-1:1;O=Math.abs(Math.log(T/w))/b,z=function(){return 0},P=function(t){return Math.exp(D*b*t)}}if(\"duration\"in e)e.duration=+e.duration;else{var R=\"screenSpeed\"in e?+e.screenSpeed/b:+e.speed;e.duration=1e3*O/R}return e.maxDuration&&e.duration>e.maxDuration&&(e.duration=0),this._zooming=!0,this._rotating=s!==h,this._pitching=f!==l,this._padding=!a.isPaddingEqual(p),this._prepareEase(r,!1),this._ease((function(e){var i=e*O,d=1/P(i);a.zoom=1===e?u:o+a.scaleZoom(d),n._rotating&&(a.bearing=t.number(s,h,e)),n._pitching&&(a.pitch=t.number(l,f,e)),n._padding&&(a.interpolatePadding(c,p,e),g=a.centerPoint.add(m));var y=1===e?v:a.unproject(x.add(_.mult(z(i))).mult(d));a.setLocationAtPoint(a.renderWorldCopies?y.wrap():y,g),n._fireMoveEvents(r)}),(function(){return n._afterEase(r)}),e),this},r.prototype.isEasing=function(){return!!this._easeFrameId},r.prototype.stop=function(){return this._stop()},r.prototype._stop=function(t,e){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,e)}if(!t){var n=this.handlers;n&&n.stop(!1)}return this},r.prototype._ease=function(e,r,n){!1===n.animate||0===n.duration?(e(1),r()):(this._easeStart=t.browser.now(),this._easeOptions=n,this._onEaseFrame=e,this._onEaseEnd=r,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))},r.prototype._renderFrameCallback=function(){var e=Math.min((t.browser.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(e)),e<1?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},r.prototype._normalizeBearing=function(e,r){e=t.wrap(e,-180,180);var n=Math.abs(e-r);return Math.abs(e-360-r)<n&&(e-=360),Math.abs(e+360-r)<n&&(e+=360),e},r.prototype._normalizeCenter=function(t){var e=this.transform;if(e.renderWorldCopies&&!e.lngRange){var r=t.lng-e.center.lng;t.lng+=r>180?-360:r<-180?360:0}},r}(t.Evented),Ei=function(e){void 0===e&&(e={}),this.options=e,t.bindAll([\"_toggleAttribution\",\"_updateEditLink\",\"_updateData\",\"_updateCompact\"],this)};Ei.prototype.getDefaultPosition=function(){return\"bottom-right\"},Ei.prototype.onAdd=function(t){var e=this.options&&this.options.compact;return this._map=t,this._container=r.create(\"div\",\"mapboxgl-ctrl mapboxgl-ctrl-attrib\"),this._compactButton=r.create(\"button\",\"mapboxgl-ctrl-attrib-button\",this._container),this._compactButton.addEventListener(\"click\",this._toggleAttribution),this._setElementTitle(this._compactButton,\"ToggleAttribution\"),this._innerContainer=r.create(\"div\",\"mapboxgl-ctrl-attrib-inner\",this._container),this._innerContainer.setAttribute(\"role\",\"list\"),e&&this._container.classList.add(\"mapboxgl-compact\"),this._updateAttributions(),this._updateEditLink(),this._map.on(\"styledata\",this._updateData),this._map.on(\"sourcedata\",this._updateData),this._map.on(\"moveend\",this._updateEditLink),void 0===e&&(this._map.on(\"resize\",this._updateCompact),this._updateCompact()),this._container},Ei.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},Ei.prototype._setElementTitle=function(t,e){var r=this._map._getUIString(\"AttributionControl.\"+e);t.title=r,t.setAttribute(\"aria-label\",r)},Ei.prototype._toggleAttribution=function(){this._container.classList.contains(\"mapboxgl-compact-show\")?(this._container.classList.remove(\"mapboxgl-compact-show\"),this._compactButton.setAttribute(\"aria-pressed\",\"false\")):(this._container.classList.add(\"mapboxgl-compact-show\"),this._compactButton.setAttribute(\"aria-pressed\",\"true\"))},Ei.prototype._updateEditLink=function(){var e=this._editLink;e||(e=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||t.config.ACCESS_TOKEN}];if(e){var n=r.reduce((function(t,e,n){return e.value&&(t+=e.key+\"=\"+e.value+(n<r.length-1?\"&\":\"\")),t}),\"?\");e.href=t.config.FEEDBACK_URL+\"/\"+n+(this._map._hash?this._map._hash.getHashString(!0):\"\"),e.rel=\"noopener nofollow\",this._setElementTitle(e,\"MapFeedback\")}},Ei.prototype._updateData=function(t){!t||\"metadata\"!==t.sourceDataType&&\"visibility\"!==t.sourceDataType&&\"style\"!==t.dataType||(this._updateAttributions(),this._updateEditLink())},Ei.prototype._updateAttributions=function(){if(this._map.style){var t=[];if(this.options.customAttribution&&(Array.isArray(this.options.customAttribution)?t=t.concat(this.options.customAttribution.map((function(t){return\"string\"!=typeof t?\"\":t}))):\"string\"==typeof this.options.customAttribution&&t.push(this.options.customAttribution)),this._map.style.stylesheet){var e=this._map.style.stylesheet;this.styleOwner=e.owner,this.styleId=e.id}var r=this._map.style.sourceCaches;for(var n in r){var i=r[n];if(i.used){var a=i.getSource();a.attribution&&t.indexOf(a.attribution)<0&&t.push(a.attribution)}}t.sort((function(t,e){return t.length-e.length}));var o=(t=t.filter((function(e,r){for(var n=r+1;n<t.length;n++)if(t[n].indexOf(e)>=0)return!1;return!0}))).join(\" | \");o!==this._attribHTML&&(this._attribHTML=o,t.length?(this._innerContainer.innerHTML=o,this._container.classList.remove(\"mapboxgl-attrib-empty\")):this._container.classList.add(\"mapboxgl-attrib-empty\"),this._editLink=null)}},Ei.prototype._updateCompact=function(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add(\"mapboxgl-compact\"):this._container.classList.remove(\"mapboxgl-compact\",\"mapboxgl-compact-show\")};var Ci=function(){t.bindAll([\"_updateLogo\"],this),t.bindAll([\"_updateCompact\"],this)};Ci.prototype.onAdd=function(t){this._map=t,this._container=r.create(\"div\",\"mapboxgl-ctrl\");var e=r.create(\"a\",\"mapboxgl-ctrl-logo\");return e.target=\"_blank\",e.rel=\"noopener nofollow\",e.href=\"https://www.mapbox.com/\",e.setAttribute(\"aria-label\",this._map._getUIString(\"LogoControl.Title\")),e.setAttribute(\"rel\",\"noopener nofollow\"),this._container.appendChild(e),this._container.style.display=\"none\",this._map.on(\"sourcedata\",this._updateLogo),this._updateLogo(),this._map.on(\"resize\",this._updateCompact),this._updateCompact(),this._container},Ci.prototype.onRemove=function(){r.remove(this._container),this._map.off(\"sourcedata\",this._updateLogo),this._map.off(\"resize\",this._updateCompact)},Ci.prototype.getDefaultPosition=function(){return\"bottom-left\"},Ci.prototype._updateLogo=function(t){t&&\"metadata\"!==t.sourceDataType||(this._container.style.display=this._logoRequired()?\"block\":\"none\")},Ci.prototype._logoRequired=function(){if(this._map.style){var t=this._map.style.sourceCaches;for(var e in t)if(t[e].getSource().mapbox_logo)return!0;return!1}},Ci.prototype._updateCompact=function(){var t=this._container.children;if(t.length){var e=t[0];this._map.getCanvasContainer().offsetWidth<250?e.classList.add(\"mapboxgl-compact\"):e.classList.remove(\"mapboxgl-compact\")}};var Li=function(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1};Li.prototype.add=function(t){var e=++this._id;return this._queue.push({callback:t,id:e,cancelled:!1}),e},Li.prototype.remove=function(t){for(var e=this._currentlyRunning,r=0,n=e?this._queue.concat(e):this._queue;r<n.length;r+=1){var i=n[r];if(i.id===t)return void(i.cancelled=!0)}},Li.prototype.run=function(t){void 0===t&&(t=0);var e=this._currentlyRunning=this._queue;this._queue=[];for(var r=0,n=e;r<n.length;r+=1){var i=n[r];if(!i.cancelled&&(i.callback(t),this._cleared))break}this._cleared=!1,this._currentlyRunning=!1},Li.prototype.clear=function(){this._currentlyRunning&&(this._cleared=!0),this._queue=[]};var Ii={\"AttributionControl.ToggleAttribution\":\"Toggle attribution\",\"AttributionControl.MapFeedback\":\"Map feedback\",\"FullscreenControl.Enter\":\"Enter fullscreen\",\"FullscreenControl.Exit\":\"Exit fullscreen\",\"GeolocateControl.FindMyLocation\":\"Find my location\",\"GeolocateControl.LocationNotAvailable\":\"Location not available\",\"LogoControl.Title\":\"Mapbox logo\",\"NavigationControl.ResetBearing\":\"Reset bearing to north\",\"NavigationControl.ZoomIn\":\"Zoom in\",\"NavigationControl.ZoomOut\":\"Zoom out\",\"ScaleControl.Feet\":\"ft\",\"ScaleControl.Meters\":\"m\",\"ScaleControl.Kilometers\":\"km\",\"ScaleControl.Miles\":\"mi\",\"ScaleControl.NauticalMiles\":\"nm\"},Pi=t.window.HTMLImageElement,zi=t.window.HTMLElement,Oi=t.window.ImageBitmap,Di=60,Ri={center:[0,0],zoom:0,bearing:0,pitch:0,minZoom:-2,maxZoom:22,minPitch:0,maxPitch:Di,interactive:!0,scrollZoom:!0,boxZoom:!0,dragRotate:!0,dragPan:!0,keyboard:!0,doubleClickZoom:!0,touchZoomRotate:!0,touchPitch:!0,bearingSnap:7,clickTolerance:3,pitchWithRotate:!0,hash:!1,attributionControl:!0,failIfMajorPerformanceCaveat:!1,preserveDrawingBuffer:!1,trackResize:!0,renderWorldCopies:!0,refreshExpiredTiles:!0,maxTileCacheSize:null,localIdeographFontFamily:\"sans-serif\",transformRequest:null,accessToken:null,fadeDuration:300,crossSourceCollisions:!0},Fi=function(n){function i(e){var r=this;if(null!=(e=t.extend({},Ri,e)).minZoom&&null!=e.maxZoom&&e.minZoom>e.maxZoom)throw new Error(\"maxZoom must be greater than or equal to minZoom\");if(null!=e.minPitch&&null!=e.maxPitch&&e.minPitch>e.maxPitch)throw new Error(\"maxPitch must be greater than or equal to minPitch\");if(null!=e.minPitch&&e.minPitch<0)throw new Error(\"minPitch must be greater than or equal to 0\");if(null!=e.maxPitch&&e.maxPitch>Di)throw new Error(\"maxPitch must be less than or equal to 60\");var i=new In(e.minZoom,e.maxZoom,e.minPitch,e.maxPitch,e.renderWorldCopies);if(n.call(this,i,e),this._interactive=e.interactive,this._maxTileCacheSize=e.maxTileCacheSize,this._failIfMajorPerformanceCaveat=e.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=e.preserveDrawingBuffer,this._antialias=e.antialias,this._trackResize=e.trackResize,this._bearingSnap=e.bearingSnap,this._refreshExpiredTiles=e.refreshExpiredTiles,this._fadeDuration=e.fadeDuration,this._crossSourceCollisions=e.crossSourceCollisions,this._crossFadingFactor=1,this._collectResourceTiming=e.collectResourceTiming,this._renderTaskQueue=new Li,this._controls=[],this._mapId=t.uniqueId(),this._locale=t.extend({},Ii,e.locale),this._clickTolerance=e.clickTolerance,this._requestManager=new t.RequestManager(e.transformRequest,e.accessToken),\"string\"==typeof e.container){if(this._container=t.window.document.getElementById(e.container),!this._container)throw new Error(\"Container '\"+e.container+\"' not found.\")}else{if(!(e.container instanceof zi))throw new Error(\"Invalid type: 'container' must be a String or HTMLElement.\");this._container=e.container}if(e.maxBounds&&this.setMaxBounds(e.maxBounds),t.bindAll([\"_onWindowOnline\",\"_onWindowResize\",\"_onMapScroll\",\"_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)})),void 0!==t.window&&(t.window.addEventListener(\"online\",this._onWindowOnline,!1),t.window.addEventListener(\"resize\",this._onWindowResize,!1),t.window.addEventListener(\"orientationchange\",this._onWindowResize,!1)),this.handlers=new Mi(this,e);var a=\"string\"==typeof e.hash&&e.hash||void 0;this._hash=e.hash&&new zn(a).addTo(this),this._hash&&this._hash._onHashChange()||(this.jumpTo({center:e.center,zoom:e.zoom,bearing:e.bearing,pitch:e.pitch}),e.bounds&&(this.resize(),this.fitBounds(e.bounds,t.extend({},e.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=e.localIdeographFontFamily,e.style&&this.setStyle(e.style,{localIdeographFontFamily:e.localIdeographFontFamily}),e.attributionControl&&this.addControl(new Ei({customAttribution:e.customAttribution})),this.addControl(new Ci,e.logoPosition),this.on(\"style.load\",(function(){r.transform.unmodified&&r.jumpTo(r.style.stylesheet)})),this.on(\"data\",(function(e){r._update(\"style\"===e.dataType),r.fire(new t.Event(e.dataType+\"data\",e))})),this.on(\"dataloading\",(function(e){r.fire(new t.Event(e.dataType+\"dataloading\",e))}))}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(e,r){if(void 0===r&&(r=e.getDefaultPosition?e.getDefaultPosition():\"top-right\"),!e||!e.onAdd)return this.fire(new t.ErrorEvent(new Error(\"Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.\")));var n=e.onAdd(this);this._controls.push(e);var i=this._controlPositions[r];return-1!==r.indexOf(\"bottom\")?i.insertBefore(n,i.firstChild):i.appendChild(n),this},i.prototype.removeControl=function(e){if(!e||!e.onRemove)return this.fire(new t.ErrorEvent(new Error(\"Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.\")));var r=this._controls.indexOf(e);return r>-1&&this._controls.splice(r,1),e.onRemove(this),this},i.prototype.hasControl=function(t){return this._controls.indexOf(t)>-1},i.prototype.resize=function(e){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 t.Event(\"movestart\",e)).fire(new t.Event(\"move\",e))),this.fire(new t.Event(\"resize\",e)),a&&this.fire(new t.Event(\"moveend\",e)),this},i.prototype.getBounds=function(){return this.transform.getBounds()},i.prototype.getMaxBounds=function(){return this.transform.getMaxBounds()},i.prototype.setMaxBounds=function(e){return this.transform.setMaxBounds(t.LngLatBounds.convert(e)),this._update()},i.prototype.setMinZoom=function(t){if((t=null==t?-2:t)>=-2&&t<=this.transform.maxZoom)return this.transform.minZoom=t,this._update(),this.getZoom()<t&&this.setZoom(t),this;throw new Error(\"minZoom must be between -2 and the current maxZoom, inclusive\")},i.prototype.getMinZoom=function(){return this.transform.minZoom},i.prototype.setMaxZoom=function(t){if((t=null==t?22:t)>=this.transform.minZoom)return this.transform.maxZoom=t,this._update(),this.getZoom()>t&&this.setZoom(t),this;throw new Error(\"maxZoom must be greater than the current minZoom\")},i.prototype.getMaxZoom=function(){return this.transform.maxZoom},i.prototype.setMinPitch=function(t){if((t=null==t?0:t)<0)throw new Error(\"minPitch must be greater than or equal to 0\");if(t>=0&&t<=this.transform.maxPitch)return this.transform.minPitch=t,this._update(),this.getPitch()<t&&this.setPitch(t),this;throw new Error(\"minPitch must be between 0 and the current maxPitch, inclusive\")},i.prototype.getMinPitch=function(){return this.transform.minPitch},i.prototype.setMaxPitch=function(t){if((t=null==t?Di:t)>Di)throw new Error(\"maxPitch must be less than or equal to 60\");if(t>=this.transform.minPitch)return this.transform.maxPitch=t,this._update(),this.getPitch()>t&&this.setPitch(t),this;throw new Error(\"maxPitch must be greater than the current minPitch\")},i.prototype.getMaxPitch=function(){return this.transform.maxPitch},i.prototype.getRenderWorldCopies=function(){return this.transform.renderWorldCopies},i.prototype.setRenderWorldCopies=function(t){return this.transform.renderWorldCopies=t,this._update()},i.prototype.project=function(e){return this.transform.locationPoint(t.LngLat.convert(e))},i.prototype.unproject=function(e){return this.transform.pointLocation(t.Point.convert(e))},i.prototype.isMoving=function(){return this._moving||this.handlers.isMoving()},i.prototype.isZooming=function(){return this._zooming||this.handlers.isZooming()},i.prototype.isRotating=function(){return this._rotating||this.handlers.isRotating()},i.prototype._createDelegatedListener=function(t,e,r){var n,i=this;if(\"mouseenter\"===t||\"mouseover\"===t){var a=!1;return{layer:e,listener:r,delegates:{mousemove:function(n){var o=i.getLayer(e)?i.queryRenderedFeatures(n.point,{layers:[e]}):[];o.length?a||(a=!0,r.call(i,new Vn(t,i,n.originalEvent,{features:o}))):a=!1},mouseout:function(){a=!1}}}}if(\"mouseleave\"===t||\"mouseout\"===t){var o=!1;return{layer:e,listener:r,delegates:{mousemove:function(n){(i.getLayer(e)?i.queryRenderedFeatures(n.point,{layers:[e]}):[]).length?o=!0:o&&(o=!1,r.call(i,new Vn(t,i,n.originalEvent)))},mouseout:function(e){o&&(o=!1,r.call(i,new Vn(t,i,e.originalEvent)))}}}}return{layer:e,listener:r,delegates:(n={},n[t]=function(t){var n=i.getLayer(e)?i.queryRenderedFeatures(t.point,{layers:[e]}):[];n.length&&(t.features=n,r.call(i,t),delete t.features)},n)}},i.prototype.on=function(t,e,r){if(void 0===r)return n.prototype.on.call(this,t,e);var i=this._createDelegatedListener(t,e,r);for(var a in this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[t]=this._delegatedListeners[t]||[],this._delegatedListeners[t].push(i),i.delegates)this.on(a,i.delegates[a]);return this},i.prototype.once=function(t,e,r){if(void 0===r)return n.prototype.once.call(this,t,e);var i=this._createDelegatedListener(t,e,r);for(var a in i.delegates)this.once(a,i.delegates[a]);return this},i.prototype.off=function(t,e,r){var i=this;if(void 0===r)return n.prototype.off.call(this,t,e);return this._delegatedListeners&&this._delegatedListeners[t]&&function(n){for(var a=n[t],o=0;o<a.length;o++){var s=a[o];if(s.layer===e&&s.listener===r){for(var l in s.delegates)i.off(l,s.delegates[l]);return a.splice(o,1),i}}}(this._delegatedListeners),this},i.prototype.queryRenderedFeatures=function(e,r){if(!this.style)return[];var n;if(void 0!==r||void 0===e||e instanceof t.Point||Array.isArray(e)||(r=e,e=void 0),r=r||{},(e=e||[[0,0],[this.transform.width,this.transform.height]])instanceof t.Point||\"number\"==typeof e[0])n=[t.Point.convert(e)];else{var i=t.Point.convert(e[0]),a=t.Point.convert(e[1]);n=[i,new t.Point(a.x,i.y),a,new t.Point(i.x,a.y),i]}return this.style.queryRenderedFeatures(n,r,this.transform)},i.prototype.querySourceFeatures=function(t,e){return this.style.querySourceFeatures(t,e)},i.prototype.setStyle=function(e,r){return!1!==(r=t.extend({},{localIdeographFontFamily:this._localIdeographFontFamily},r)).diff&&r.localIdeographFontFamily===this._localIdeographFontFamily&&this.style&&e?(this._diffStyle(e,r),this):(this._localIdeographFontFamily=r.localIdeographFontFamily,this._updateStyle(e,r))},i.prototype._getUIString=function(t){var e=this._locale[t];if(null==e)throw new Error(\"Missing UI string '\"+t+\"'\");return e},i.prototype._updateStyle=function(t,e){return this.style&&(this.style.setEventedParent(null),this.style._remove()),t?(this.style=new We(this,e||{}),this.style.setEventedParent(this,{style:this.style}),\"string\"==typeof t?this.style.loadURL(t):this.style.loadJSON(t),this):(delete this.style,this)},i.prototype._lazyInitEmptyStyle=function(){this.style||(this.style=new We(this,{}),this.style.setEventedParent(this,{style:this.style}),this.style.loadEmpty())},i.prototype._diffStyle=function(e,r){var n=this;if(\"string\"==typeof e){var i=this._requestManager.normalizeStyleURL(e),a=this._requestManager.transformRequest(i,t.ResourceType.Style);t.getJSON(a,(function(e,i){e?n.fire(new t.ErrorEvent(e)):i&&n._updateDiff(i,r)}))}else\"object\"==typeof e&&this._updateDiff(e,r)},i.prototype._updateDiff=function(e,r){try{this.style.setState(e)&&this._update(!0)}catch(n){t.warnOnce(\"Unable to perform style diff: \"+(n.message||n.error||n)+\". Rebuilding the style from scratch.\"),this._updateStyle(e,r)}},i.prototype.getStyle=function(){if(this.style)return this.style.serialize()},i.prototype.isStyleLoaded=function(){return this.style?this.style.loaded():t.warnOnce(\"There is no style added to the map.\")},i.prototype.addSource=function(t,e){return this._lazyInitEmptyStyle(),this.style.addSource(t,e),this._update(!0)},i.prototype.isSourceLoaded=function(e){var r=this.style&&this.style.sourceCaches[e];if(void 0!==r)return r.loaded();this.fire(new t.ErrorEvent(new Error(\"There is no source with ID '\"+e+\"'\")))},i.prototype.areTilesLoaded=function(){var t=this.style&&this.style.sourceCaches;for(var e in t){var r=t[e]._tiles;for(var n in r){var i=r[n];if(\"loaded\"!==i.state&&\"errored\"!==i.state)return!1}}return!0},i.prototype.addSourceType=function(t,e,r){return this._lazyInitEmptyStyle(),this.style.addSourceType(t,e,r)},i.prototype.removeSource=function(t){return this.style.removeSource(t),this._update(!0)},i.prototype.getSource=function(t){return this.style.getSource(t)},i.prototype.addImage=function(e,r,n){void 0===n&&(n={});var i=n.pixelRatio;void 0===i&&(i=1);var a=n.sdf;void 0===a&&(a=!1);var o=n.stretchX,s=n.stretchY,l=n.content;this._lazyInitEmptyStyle();if(r instanceof Pi||Oi&&r instanceof Oi){var c=t.browser.getImageData(r),u=c.width,h=c.height,f=c.data;this.style.addImage(e,{data:new t.RGBAImage({width:u,height:h},f),pixelRatio:i,stretchX:o,stretchY:s,content:l,sdf:a,version:0})}else{if(void 0===r.width||void 0===r.height)return this.fire(new t.ErrorEvent(new Error(\"Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`\")));var p=r.width,d=r.height,m=r.data,g=r;this.style.addImage(e,{data:new t.RGBAImage({width:p,height:d},new Uint8Array(m)),pixelRatio:i,stretchX:o,stretchY:s,content:l,sdf:a,version:0,userImage:g}),g.onAdd&&g.onAdd(this,e)}},i.prototype.updateImage=function(e,r){var n=this.style.getImage(e);if(!n)return this.fire(new t.ErrorEvent(new Error(\"The map has no image with that id. If you are adding a new image use `map.addImage(...)` instead.\")));var i=r instanceof Pi||Oi&&r instanceof Oi?t.browser.getImageData(r):r,a=i.width,o=i.height,s=i.data;if(void 0===a||void 0===o)return this.fire(new t.ErrorEvent(new Error(\"Invalid arguments to map.updateImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`\")));if(a!==n.data.width||o!==n.data.height)return this.fire(new t.ErrorEvent(new Error(\"The width and height of the updated image must be that same as the previous version of the image\")));var l=!(r instanceof Pi||Oi&&r instanceof Oi);n.data.replace(s,l),this.style.updateImage(e,n)},i.prototype.hasImage=function(e){return e?!!this.style.getImage(e):(this.fire(new t.ErrorEvent(new Error(\"Missing required image id\"))),!1)},i.prototype.removeImage=function(t){this.style.removeImage(t)},i.prototype.loadImage=function(e,r){t.getImage(this._requestManager.transformRequest(e,t.ResourceType.Image),r)},i.prototype.listImages=function(){return this.style.listImages()},i.prototype.addLayer=function(t,e){return this._lazyInitEmptyStyle(),this.style.addLayer(t,e),this._update(!0)},i.prototype.moveLayer=function(t,e){return this.style.moveLayer(t,e),this._update(!0)},i.prototype.removeLayer=function(t){return this.style.removeLayer(t),this._update(!0)},i.prototype.getLayer=function(t){return this.style.getLayer(t)},i.prototype.setLayerZoomRange=function(t,e,r){return this.style.setLayerZoomRange(t,e,r),this._update(!0)},i.prototype.setFilter=function(t,e,r){return void 0===r&&(r={}),this.style.setFilter(t,e,r),this._update(!0)},i.prototype.getFilter=function(t){return this.style.getFilter(t)},i.prototype.setPaintProperty=function(t,e,r,n){return void 0===n&&(n={}),this.style.setPaintProperty(t,e,r,n),this._update(!0)},i.prototype.getPaintProperty=function(t,e){return this.style.getPaintProperty(t,e)},i.prototype.setLayoutProperty=function(t,e,r,n){return void 0===n&&(n={}),this.style.setLayoutProperty(t,e,r,n),this._update(!0)},i.prototype.getLayoutProperty=function(t,e){return this.style.getLayoutProperty(t,e)},i.prototype.setLight=function(t,e){return void 0===e&&(e={}),this._lazyInitEmptyStyle(),this.style.setLight(t,e),this._update(!0)},i.prototype.getLight=function(){return this.style.getLight()},i.prototype.setFeatureState=function(t,e){return this.style.setFeatureState(t,e),this._update()},i.prototype.removeFeatureState=function(t,e){return this.style.removeFeatureState(t,e),this._update()},i.prototype.getFeatureState=function(t){return this.style.getFeatureState(t)},i.prototype.getContainer=function(){return this._container},i.prototype.getCanvasContainer=function(){return this._canvasContainer},i.prototype.getCanvas=function(){return this._canvas},i.prototype._containerDimensions=function(){var t=0,e=0;return this._container&&(t=this._container.clientWidth||400,e=this._container.clientHeight||300),[t,e]},i.prototype._detectMissingCSS=function(){\"rgb(250, 128, 114)\"!==t.window.getComputedStyle(this._missingCSSCanary).getPropertyValue(\"background-color\")&&t.warnOnce(\"This page appears to be missing CSS declarations for Mapbox GL JS, which may cause the map to display incorrectly. Please ensure your page includes mapbox-gl.css, as described in https://www.mapbox.com/mapbox-gl-js/api/.\")},i.prototype._setupContainer=function(){var t=this._container;t.classList.add(\"mapboxgl-map\"),(this._missingCSSCanary=r.create(\"div\",\"mapboxgl-canary\",t)).style.visibility=\"hidden\",this._detectMissingCSS();var e=this._canvasContainer=r.create(\"div\",\"mapboxgl-canvas-container\",t);this._interactive&&e.classList.add(\"mapboxgl-interactive\"),this._canvas=r.create(\"canvas\",\"mapboxgl-canvas\",e),this._canvas.addEventListener(\"webglcontextlost\",this._contextLost,!1),this._canvas.addEventListener(\"webglcontextrestored\",this._contextRestored,!1),this._canvas.setAttribute(\"tabindex\",\"0\"),this._canvas.setAttribute(\"aria-label\",\"Map\"),this._canvas.setAttribute(\"role\",\"region\");var n=this._containerDimensions();this._resizeCanvas(n[0],n[1]);var i=this._controlContainer=r.create(\"div\",\"mapboxgl-control-container\",t),a=this._controlPositions={};[\"top-left\",\"top-right\",\"bottom-left\",\"bottom-right\"].forEach((function(t){a[t]=r.create(\"div\",\"mapboxgl-ctrl-\"+t,i)})),this._container.addEventListener(\"scroll\",this._onMapScroll,!1)},i.prototype._resizeCanvas=function(e,r){var n=t.browser.devicePixelRatio||1;this._canvas.width=n*e,this._canvas.height=n*r,this._canvas.style.width=e+\"px\",this._canvas.style.height=r+\"px\"},i.prototype._setupPainter=function(){var r=t.extend({},e.webGLContextAttributes,{failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1}),n=this._canvas.getContext(\"webgl\",r)||this._canvas.getContext(\"experimental-webgl\",r);n?(this.painter=new Sn(n,this.transform),t.webpSupported.testSupport(n)):this.fire(new t.ErrorEvent(new Error(\"Failed to initialize WebGL\")))},i.prototype._contextLost=function(e){e.preventDefault(),this._frame&&(this._frame.cancel(),this._frame=null),this.fire(new t.Event(\"webglcontextlost\",{originalEvent:e}))},i.prototype._contextRestored=function(e){this._setupPainter(),this.resize(),this._update(),this.fire(new t.Event(\"webglcontextrestored\",{originalEvent:e}))},i.prototype._onMapScroll=function(t){if(t.target===this._container)return this._container.scrollTop=0,this._container.scrollLeft=0,!1},i.prototype.loaded=function(){return!this._styleDirty&&!this._sourcesDirty&&!!this.style&&this.style.loaded()},i.prototype._update=function(t){return this.style?(this._styleDirty=this._styleDirty||t,this._sourcesDirty=!0,this.triggerRepaint(),this):this},i.prototype._requestRenderFrame=function(t){return this._update(),this._renderTaskQueue.add(t)},i.prototype._cancelRenderFrame=function(t){this._renderTaskQueue.remove(t)},i.prototype._render=function(e){var r,n=this,i=0,a=this.painter.context.extTimerQuery;if(this.listens(\"gpu-timing-frame\")&&(r=a.createQueryEXT(),a.beginQueryEXT(a.TIME_ELAPSED_EXT,r),i=t.browser.now()),this.painter.context.setDirty(),this.painter.setBaseState(),this._renderTaskQueue.run(e),!this._removed){var o=!1;if(this.style&&this._styleDirty){this._styleDirty=!1;var s=this.transform.zoom,l=t.browser.now();this.style.zoomHistory.update(s,l);var c=new t.EvaluationParameters(s,{now:l,fadeDuration:this._fadeDuration,zoomHistory:this.style.zoomHistory,transition:this.style.getTransition()}),u=c.crossFadingFactor();1===u&&u===this._crossFadingFactor||(o=!0,this._crossFadingFactor=u),this.style.update(c)}if(this.style&&this._sourcesDirty&&(this._sourcesDirty=!1,this.style._updateSources(this.transform)),this._placementDirty=this.style&&this.style._updatePlacement(this.painter.transform,this.showCollisionBoxes,this._fadeDuration,this._crossSourceCollisions),this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showOverdrawInspector:this._showOverdrawInspector,rotating:this.isRotating(),zooming:this.isZooming(),moving:this.isMoving(),fadeDuration:this._fadeDuration,showPadding:this.showPadding,gpuTiming:!!this.listens(\"gpu-timing-layer\")}),this.fire(new t.Event(\"render\")),this.loaded()&&!this._loaded&&(this._loaded=!0,this.fire(new t.Event(\"load\"))),this.style&&(this.style.hasTransitions()||o)&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles(),this.listens(\"gpu-timing-frame\")){var h=t.browser.now()-i;a.endQueryEXT(a.TIME_ELAPSED_EXT,r),setTimeout((function(){var e=a.getQueryObjectEXT(r,a.QUERY_RESULT_EXT)/1e6;a.deleteQueryEXT(r),n.fire(new t.Event(\"gpu-timing-frame\",{cpuTime:h,gpuTime:e}))}),50)}if(this.listens(\"gpu-timing-layer\")){var f=this.painter.collectGpuTimers();setTimeout((function(){var e=n.painter.queryGpuTimers(f);n.fire(new t.Event(\"gpu-timing-layer\",{layerTimes:e}))}),50)}var p=this._sourcesDirty||this._styleDirty||this._placementDirty;return p||this._repaint?this.triggerRepaint():!this.isMoving()&&this.loaded()&&this.fire(new t.Event(\"idle\")),!this._loaded||this._fullyLoaded||p||(this._fullyLoaded=!0),this}},i.prototype.remove=function(){this._hash&&this._hash.remove();for(var e=0,r=this._controls;e<r.length;e+=1)r[e].onRemove(this);this._controls=[],this._frame&&(this._frame.cancel(),this._frame=null),this._renderTaskQueue.clear(),this.painter.destroy(),this.handlers.destroy(),delete this.handlers,this.setStyle(null),void 0!==t.window&&(t.window.removeEventListener(\"resize\",this._onWindowResize,!1),t.window.removeEventListener(\"orientationchange\",this._onWindowResize,!1),t.window.removeEventListener(\"online\",this._onWindowOnline,!1));var n=this.painter.context.gl.getExtension(\"WEBGL_lose_context\");n&&n.loseContext&&n.loseContext(),Bi(this._canvasContainer),Bi(this._controlContainer),Bi(this._missingCSSCanary),this._container.classList.remove(\"mapboxgl-map\"),this._removed=!0,this.fire(new t.Event(\"remove\"))},i.prototype.triggerRepaint=function(){var e=this;this.style&&!this._frame&&(this._frame=t.browser.frame((function(t){e._frame=null,e._render(t)})))},i.prototype._onWindowOnline=function(){this._update()},i.prototype._onWindowResize=function(t){this._trackResize&&this.resize({originalEvent:t})._update()},a.showTileBoundaries.get=function(){return!!this._showTileBoundaries},a.showTileBoundaries.set=function(t){this._showTileBoundaries!==t&&(this._showTileBoundaries=t,this._update())},a.showPadding.get=function(){return!!this._showPadding},a.showPadding.set=function(t){this._showPadding!==t&&(this._showPadding=t,this._update())},a.showCollisionBoxes.get=function(){return!!this._showCollisionBoxes},a.showCollisionBoxes.set=function(t){this._showCollisionBoxes!==t&&(this._showCollisionBoxes=t,t?this.style._generateCollisionBoxes():this._update())},a.showOverdrawInspector.get=function(){return!!this._showOverdrawInspector},a.showOverdrawInspector.set=function(t){this._showOverdrawInspector!==t&&(this._showOverdrawInspector=t,this._update())},a.repaint.get=function(){return!!this._repaint},a.repaint.set=function(t){this._repaint!==t&&(this._repaint=t,this.triggerRepaint())},a.vertices.get=function(){return!!this._vertices},a.vertices.set=function(t){this._vertices=t,this._update()},i.prototype._setCacheLimits=function(e,r){t.setCacheLimits(e,r)},a.version.get=function(){return t.version},Object.defineProperties(i.prototype,a),i}(Si);function Bi(t){t.parentNode&&t.parentNode.removeChild(t)}var Ni={showCompass:!0,showZoom:!0,visualizePitch:!1},ji=function(e){var n=this;this.options=t.extend({},Ni,e),this._container=r.create(\"div\",\"mapboxgl-ctrl mapboxgl-ctrl-group\"),this._container.addEventListener(\"contextmenu\",(function(t){return t.preventDefault()})),this.options.showZoom&&(t.bindAll([\"_setButtonTitle\",\"_updateZoomButtons\"],this),this._zoomInButton=this._createButton(\"mapboxgl-ctrl-zoom-in\",(function(t){return n._map.zoomIn({},{originalEvent:t})})),r.create(\"span\",\"mapboxgl-ctrl-icon\",this._zoomInButton).setAttribute(\"aria-hidden\",!0),this._zoomOutButton=this._createButton(\"mapboxgl-ctrl-zoom-out\",(function(t){return n._map.zoomOut({},{originalEvent:t})})),r.create(\"span\",\"mapboxgl-ctrl-icon\",this._zoomOutButton).setAttribute(\"aria-hidden\",!0)),this.options.showCompass&&(t.bindAll([\"_rotateCompassArrow\"],this),this._compass=this._createButton(\"mapboxgl-ctrl-compass\",(function(t){n.options.visualizePitch?n._map.resetNorthPitch({},{originalEvent:t}):n._map.resetNorth({},{originalEvent:t})})),this._compassIcon=r.create(\"span\",\"mapboxgl-ctrl-icon\",this._compass),this._compassIcon.setAttribute(\"aria-hidden\",!0))};ji.prototype._updateZoomButtons=function(){var t=this._map.getZoom(),e=t===this._map.getMaxZoom(),r=t===this._map.getMinZoom();this._zoomInButton.disabled=e,this._zoomOutButton.disabled=r,this._zoomInButton.setAttribute(\"aria-disabled\",e.toString()),this._zoomOutButton.setAttribute(\"aria-disabled\",r.toString())},ji.prototype._rotateCompassArrow=function(){var t=this.options.visualizePitch?\"scale(\"+1/Math.pow(Math.cos(this._map.transform.pitch*(Math.PI/180)),.5)+\") rotateX(\"+this._map.transform.pitch+\"deg) rotateZ(\"+this._map.transform.angle*(180/Math.PI)+\"deg)\":\"rotate(\"+this._map.transform.angle*(180/Math.PI)+\"deg)\";this._compassIcon.style.transform=t},ji.prototype.onAdd=function(t){return this._map=t,this.options.showZoom&&(this._setButtonTitle(this._zoomInButton,\"ZoomIn\"),this._setButtonTitle(this._zoomOutButton,\"ZoomOut\"),this._map.on(\"zoom\",this._updateZoomButtons),this._updateZoomButtons()),this.options.showCompass&&(this._setButtonTitle(this._compass,\"ResetBearing\"),this.options.visualizePitch&&this._map.on(\"pitch\",this._rotateCompassArrow),this._map.on(\"rotate\",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new Ui(this._map,this._compass,this.options.visualizePitch)),this._container},ji.prototype.onRemove=function(){r.remove(this._container),this.options.showZoom&&this._map.off(\"zoom\",this._updateZoomButtons),this.options.showCompass&&(this.options.visualizePitch&&this._map.off(\"pitch\",this._rotateCompassArrow),this._map.off(\"rotate\",this._rotateCompassArrow),this._handler.off(),delete this._handler),delete this._map},ji.prototype._createButton=function(t,e){var n=r.create(\"button\",t,this._container);return n.type=\"button\",n.addEventListener(\"click\",e),n},ji.prototype._setButtonTitle=function(t,e){var r=this._map._getUIString(\"NavigationControl.\"+e);t.title=r,t.setAttribute(\"aria-label\",r)};var Ui=function(e,n,i){void 0===i&&(i=!1),this._clickTolerance=10,this.element=n,this.mouseRotate=new ei({clickTolerance:e.dragRotate._mouseRotate._clickTolerance}),this.map=e,i&&(this.mousePitch=new ri({clickTolerance:e.dragRotate._mousePitch._clickTolerance})),t.bindAll([\"mousedown\",\"mousemove\",\"mouseup\",\"touchstart\",\"touchmove\",\"touchend\",\"reset\"],this),r.addEventListener(n,\"mousedown\",this.mousedown),r.addEventListener(n,\"touchstart\",this.touchstart,{passive:!1}),r.addEventListener(n,\"touchmove\",this.touchmove),r.addEventListener(n,\"touchend\",this.touchend),r.addEventListener(n,\"touchcancel\",this.reset)};function Vi(e,r,n){if(e=new t.LngLat(e.lng,e.lat),r){var i=new t.LngLat(e.lng-360,e.lat),a=new t.LngLat(e.lng+360,e.lat),o=n.locationPoint(e).distSqr(r);n.locationPoint(i).distSqr(r)<o?e=i:n.locationPoint(a).distSqr(r)<o&&(e=a)}for(;Math.abs(e.lng-n.center.lng)>180;){var s=n.locationPoint(e);if(s.x>=0&&s.y>=0&&s.x<=n.width&&s.y<=n.height)break;e.lng>n.center.lng?e.lng-=360:e.lng+=360}return e}Ui.prototype.down=function(t,e){this.mouseRotate.mousedown(t,e),this.mousePitch&&this.mousePitch.mousedown(t,e),r.disableDrag()},Ui.prototype.move=function(t,e){var r=this.map,n=this.mouseRotate.mousemoveWindow(t,e);if(n&&n.bearingDelta&&r.setBearing(r.getBearing()+n.bearingDelta),this.mousePitch){var i=this.mousePitch.mousemoveWindow(t,e);i&&i.pitchDelta&&r.setPitch(r.getPitch()+i.pitchDelta)}},Ui.prototype.off=function(){var t=this.element;r.removeEventListener(t,\"mousedown\",this.mousedown),r.removeEventListener(t,\"touchstart\",this.touchstart,{passive:!1}),r.removeEventListener(t,\"touchmove\",this.touchmove),r.removeEventListener(t,\"touchend\",this.touchend),r.removeEventListener(t,\"touchcancel\",this.reset),this.offTemp()},Ui.prototype.offTemp=function(){r.enableDrag(),r.removeEventListener(t.window,\"mousemove\",this.mousemove),r.removeEventListener(t.window,\"mouseup\",this.mouseup)},Ui.prototype.mousedown=function(e){this.down(t.extend({},e,{ctrlKey:!0,preventDefault:function(){return e.preventDefault()}}),r.mousePos(this.element,e)),r.addEventListener(t.window,\"mousemove\",this.mousemove),r.addEventListener(t.window,\"mouseup\",this.mouseup)},Ui.prototype.mousemove=function(t){this.move(t,r.mousePos(this.element,t))},Ui.prototype.mouseup=function(t){this.mouseRotate.mouseupWindow(t),this.mousePitch&&this.mousePitch.mouseupWindow(t),this.offTemp()},Ui.prototype.touchstart=function(t){1!==t.targetTouches.length?this.reset():(this._startPos=this._lastPos=r.touchPos(this.element,t.targetTouches)[0],this.down({type:\"mousedown\",button:0,ctrlKey:!0,preventDefault:function(){return t.preventDefault()}},this._startPos))},Ui.prototype.touchmove=function(t){1!==t.targetTouches.length?this.reset():(this._lastPos=r.touchPos(this.element,t.targetTouches)[0],this.move({preventDefault:function(){return t.preventDefault()}},this._lastPos))},Ui.prototype.touchend=function(t){0===t.targetTouches.length&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos)<this._clickTolerance&&this.element.click(),this.reset()},Ui.prototype.reset=function(){this.mouseRotate.reset(),this.mousePitch&&this.mousePitch.reset(),delete this._startPos,delete this._lastPos,this.offTemp()};var qi={center:\"translate(-50%,-50%)\",top:\"translate(-50%,0)\",\"top-left\":\"translate(0,0)\",\"top-right\":\"translate(-100%,0)\",bottom:\"translate(-50%,-100%)\",\"bottom-left\":\"translate(0,-100%)\",\"bottom-right\":\"translate(-100%,-100%)\",left:\"translate(0,-50%)\",right:\"translate(-100%,-50%)\"};function Hi(t,e,r){var n=t.classList;for(var i in qi)n.remove(\"mapboxgl-\"+r+\"-anchor-\"+i);n.add(\"mapboxgl-\"+r+\"-anchor-\"+e)}var Gi,Zi=function(e){function n(n,i){if(e.call(this),(n instanceof t.window.HTMLElement||i)&&(n=t.extend({element:n},i)),t.bindAll([\"_update\",\"_onMove\",\"_onUp\",\"_addDragHandler\",\"_onMapClick\",\"_onKeyPress\"],this),this._anchor=n&&n.anchor||\"center\",this._color=n&&n.color||\"#3FB1CE\",this._scale=n&&n.scale||1,this._draggable=n&&n.draggable||!1,this._clickTolerance=n&&n.clickTolerance||0,this._isDragging=!1,this._state=\"inactive\",this._rotation=n&&n.rotation||0,this._rotationAlignment=n&&n.rotationAlignment||\"auto\",this._pitchAlignment=n&&n.pitchAlignment&&\"auto\"!==n.pitchAlignment?n.pitchAlignment:this._rotationAlignment,n&&n.element)this._element=n.element,this._offset=t.Point.convert(n&&n.offset||[0,0]);else{this._defaultMarker=!0,this._element=r.create(\"div\"),this._element.setAttribute(\"aria-label\",\"Map marker\");var a=r.createNS(\"http://www.w3.org/2000/svg\",\"svg\");a.setAttributeNS(null,\"display\",\"block\"),a.setAttributeNS(null,\"height\",\"41px\"),a.setAttributeNS(null,\"width\",\"27px\"),a.setAttributeNS(null,\"viewBox\",\"0 0 27 41\");var o=r.createNS(\"http://www.w3.org/2000/svg\",\"g\");o.setAttributeNS(null,\"stroke\",\"none\"),o.setAttributeNS(null,\"stroke-width\",\"1\"),o.setAttributeNS(null,\"fill\",\"none\"),o.setAttributeNS(null,\"fill-rule\",\"evenodd\");var s=r.createNS(\"http://www.w3.org/2000/svg\",\"g\");s.setAttributeNS(null,\"fill-rule\",\"nonzero\");var l=r.createNS(\"http://www.w3.org/2000/svg\",\"g\");l.setAttributeNS(null,\"transform\",\"translate(3.0, 29.0)\"),l.setAttributeNS(null,\"fill\",\"#000000\");for(var c=0,u=[{rx:\"10.5\",ry:\"5.25002273\"},{rx:\"10.5\",ry:\"5.25002273\"},{rx:\"9.5\",ry:\"4.77275007\"},{rx:\"8.5\",ry:\"4.29549936\"},{rx:\"7.5\",ry:\"3.81822308\"},{rx:\"6.5\",ry:\"3.34094679\"},{rx:\"5.5\",ry:\"2.86367051\"},{rx:\"4.5\",ry:\"2.38636864\"}];c<u.length;c+=1){var h=u[c],f=r.createNS(\"http://www.w3.org/2000/svg\",\"ellipse\");f.setAttributeNS(null,\"opacity\",\"0.04\"),f.setAttributeNS(null,\"cx\",\"10.5\"),f.setAttributeNS(null,\"cy\",\"5.80029008\"),f.setAttributeNS(null,\"rx\",h.rx),f.setAttributeNS(null,\"ry\",h.ry),l.appendChild(f)}var p=r.createNS(\"http://www.w3.org/2000/svg\",\"g\");p.setAttributeNS(null,\"fill\",this._color);var d=r.createNS(\"http://www.w3.org/2000/svg\",\"path\");d.setAttributeNS(null,\"d\",\"M27,13.5 C27,19.074644 20.250001,27.000002 14.75,34.500002 C14.016665,35.500004 12.983335,35.500004 12.25,34.500002 C6.7499993,27.000002 0,19.222562 0,13.5 C0,6.0441559 6.0441559,0 13.5,0 C20.955844,0 27,6.0441559 27,13.5 Z\"),p.appendChild(d);var m=r.createNS(\"http://www.w3.org/2000/svg\",\"g\");m.setAttributeNS(null,\"opacity\",\"0.25\"),m.setAttributeNS(null,\"fill\",\"#000000\");var g=r.createNS(\"http://www.w3.org/2000/svg\",\"path\");g.setAttributeNS(null,\"d\",\"M13.5,0 C6.0441559,0 0,6.0441559 0,13.5 C0,19.222562 6.7499993,27 12.25,34.5 C13,35.522727 14.016664,35.500004 14.75,34.5 C20.250001,27 27,19.074644 27,13.5 C27,6.0441559 20.955844,0 13.5,0 Z M13.5,1 C20.415404,1 26,6.584596 26,13.5 C26,15.898657 24.495584,19.181431 22.220703,22.738281 C19.945823,26.295132 16.705119,30.142167 13.943359,33.908203 C13.743445,34.180814 13.612715,34.322738 13.5,34.441406 C13.387285,34.322738 13.256555,34.180814 13.056641,33.908203 C10.284481,30.127985 7.4148684,26.314159 5.015625,22.773438 C2.6163816,19.232715 1,15.953538 1,13.5 C1,6.584596 6.584596,1 13.5,1 Z\"),m.appendChild(g);var y=r.createNS(\"http://www.w3.org/2000/svg\",\"g\");y.setAttributeNS(null,\"transform\",\"translate(6.0, 7.0)\"),y.setAttributeNS(null,\"fill\",\"#FFFFFF\");var v=r.createNS(\"http://www.w3.org/2000/svg\",\"g\");v.setAttributeNS(null,\"transform\",\"translate(8.0, 8.0)\");var x=r.createNS(\"http://www.w3.org/2000/svg\",\"circle\");x.setAttributeNS(null,\"fill\",\"#000000\"),x.setAttributeNS(null,\"opacity\",\"0.25\"),x.setAttributeNS(null,\"cx\",\"5.5\"),x.setAttributeNS(null,\"cy\",\"5.5\"),x.setAttributeNS(null,\"r\",\"5.4999962\");var _=r.createNS(\"http://www.w3.org/2000/svg\",\"circle\");_.setAttributeNS(null,\"fill\",\"#FFFFFF\"),_.setAttributeNS(null,\"cx\",\"5.5\"),_.setAttributeNS(null,\"cy\",\"5.5\"),_.setAttributeNS(null,\"r\",\"5.4999962\"),v.appendChild(x),v.appendChild(_),s.appendChild(l),s.appendChild(p),s.appendChild(m),s.appendChild(y),s.appendChild(v),a.appendChild(s),a.setAttributeNS(null,\"height\",41*this._scale+\"px\"),a.setAttributeNS(null,\"width\",27*this._scale+\"px\"),this._element.appendChild(a),this._offset=t.Point.convert(n&&n.offset||[0,-14])}this._element.classList.add(\"mapboxgl-marker\"),this._element.addEventListener(\"dragstart\",(function(t){t.preventDefault()})),this._element.addEventListener(\"mousedown\",(function(t){t.preventDefault()})),Hi(this._element,this._anchor,\"marker\"),this._popup=null}return e&&(n.__proto__=e),n.prototype=Object.create(e&&e.prototype),n.prototype.constructor=n,n.prototype.addTo=function(t){return this.remove(),this._map=t,t.getCanvasContainer().appendChild(this._element),t.on(\"move\",this._update),t.on(\"moveend\",this._update),this.setDraggable(this._draggable),this._update(),this._map.on(\"click\",this._onMapClick),this},n.prototype.remove=function(){return this._map&&(this._map.off(\"click\",this._onMapClick),this._map.off(\"move\",this._update),this._map.off(\"moveend\",this._update),this._map.off(\"mousedown\",this._addDragHandler),this._map.off(\"touchstart\",this._addDragHandler),this._map.off(\"mouseup\",this._onUp),this._map.off(\"touchend\",this._onUp),this._map.off(\"mousemove\",this._onMove),this._map.off(\"touchmove\",this._onMove),delete this._map),r.remove(this._element),this._popup&&this._popup.remove(),this},n.prototype.getLngLat=function(){return this._lngLat},n.prototype.setLngLat=function(e){return this._lngLat=t.LngLat.convert(e),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this},n.prototype.getElement=function(){return this._element},n.prototype.setPopup=function(t){if(this._popup&&(this._popup.remove(),this._popup=null,this._element.removeEventListener(\"keypress\",this._onKeyPress),this._originalTabIndex||this._element.removeAttribute(\"tabindex\")),t){if(!(\"offset\"in t.options)){var e=13.5,r=Math.sqrt(Math.pow(e,2)/2);t.options.offset=this._defaultMarker?{top:[0,0],\"top-left\":[0,0],\"top-right\":[0,0],bottom:[0,-38.1],\"bottom-left\":[r,-1*(24.6+r)],\"bottom-right\":[-r,-1*(24.6+r)],left:[e,-24.6],right:[-13.5,-24.6]}:this._offset}this._popup=t,this._lngLat&&this._popup.setLngLat(this._lngLat),this._originalTabIndex=this._element.getAttribute(\"tabindex\"),this._originalTabIndex||this._element.setAttribute(\"tabindex\",\"0\"),this._element.addEventListener(\"keypress\",this._onKeyPress)}return this},n.prototype._onKeyPress=function(t){var e=t.code,r=t.charCode||t.keyCode;\"Space\"!==e&&\"Enter\"!==e&&32!==r&&13!==r||this.togglePopup()},n.prototype._onMapClick=function(t){var e=t.originalEvent.target,r=this._element;this._popup&&(e===r||r.contains(e))&&this.togglePopup()},n.prototype.getPopup=function(){return this._popup},n.prototype.togglePopup=function(){var t=this._popup;return t?(t.isOpen()?t.remove():t.addTo(this._map),this):this},n.prototype._update=function(t){if(this._map){this._map.transform.renderWorldCopies&&(this._lngLat=Vi(this._lngLat,this._pos,this._map.transform)),this._pos=this._map.project(this._lngLat)._add(this._offset);var e=\"\";\"viewport\"===this._rotationAlignment||\"auto\"===this._rotationAlignment?e=\"rotateZ(\"+this._rotation+\"deg)\":\"map\"===this._rotationAlignment&&(e=\"rotateZ(\"+(this._rotation-this._map.getBearing())+\"deg)\");var n=\"\";\"viewport\"===this._pitchAlignment||\"auto\"===this._pitchAlignment?n=\"rotateX(0deg)\":\"map\"===this._pitchAlignment&&(n=\"rotateX(\"+this._map.getPitch()+\"deg)\"),t&&\"moveend\"!==t.type||(this._pos=this._pos.round()),r.setTransform(this._element,qi[this._anchor]+\" translate(\"+this._pos.x+\"px, \"+this._pos.y+\"px) \"+n+\" \"+e)}},n.prototype.getOffset=function(){return this._offset},n.prototype.setOffset=function(e){return this._offset=t.Point.convert(e),this._update(),this},n.prototype._onMove=function(e){if(!this._isDragging){var r=this._clickTolerance||this._map._clickTolerance;this._isDragging=e.point.dist(this._pointerdownPos)>=r}this._isDragging&&(this._pos=e.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents=\"none\",\"pending\"===this._state&&(this._state=\"active\",this.fire(new t.Event(\"dragstart\"))),this.fire(new t.Event(\"drag\")))},n.prototype._onUp=function(){this._element.style.pointerEvents=\"auto\",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1,this._map.off(\"mousemove\",this._onMove),this._map.off(\"touchmove\",this._onMove),\"active\"===this._state&&this.fire(new t.Event(\"dragend\")),this._state=\"inactive\"},n.prototype._addDragHandler=function(t){this._element.contains(t.originalEvent.target)&&(t.preventDefault(),this._positionDelta=t.point.sub(this._pos).add(this._offset),this._pointerdownPos=t.point,this._state=\"pending\",this._map.on(\"mousemove\",this._onMove),this._map.on(\"touchmove\",this._onMove),this._map.once(\"mouseup\",this._onUp),this._map.once(\"touchend\",this._onUp))},n.prototype.setDraggable=function(t){return this._draggable=!!t,this._map&&(t?(this._map.on(\"mousedown\",this._addDragHandler),this._map.on(\"touchstart\",this._addDragHandler)):(this._map.off(\"mousedown\",this._addDragHandler),this._map.off(\"touchstart\",this._addDragHandler))),this},n.prototype.isDraggable=function(){return this._draggable},n.prototype.setRotation=function(t){return this._rotation=t||0,this._update(),this},n.prototype.getRotation=function(){return this._rotation},n.prototype.setRotationAlignment=function(t){return this._rotationAlignment=t||\"auto\",this._update(),this},n.prototype.getRotationAlignment=function(){return this._rotationAlignment},n.prototype.setPitchAlignment=function(t){return this._pitchAlignment=t&&\"auto\"!==t?t:this._rotationAlignment,this._update(),this},n.prototype.getPitchAlignment=function(){return this._pitchAlignment},n}(t.Evented),Wi={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0};var Yi=0,Xi=!1,$i=function(e){function n(r){e.call(this),this.options=t.extend({},Wi,r),t.bindAll([\"_onSuccess\",\"_onError\",\"_onZoom\",\"_finish\",\"_setupUI\",\"_updateCamera\",\"_updateMarker\"],this)}return e&&(n.__proto__=e),n.prototype=Object.create(e&&e.prototype),n.prototype.constructor=n,n.prototype.onAdd=function(e){return this._map=e,this._container=r.create(\"div\",\"mapboxgl-ctrl mapboxgl-ctrl-group\"),n=this._setupUI,void 0!==Gi?n(Gi):void 0!==t.window.navigator.permissions?t.window.navigator.permissions.query({name:\"geolocation\"}).then((function(t){Gi=\"denied\"!==t.state,n(Gi)})):(Gi=!!t.window.navigator.geolocation,n(Gi)),this._container;var n},n.prototype.onRemove=function(){void 0!==this._geolocationWatchID&&(t.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),r.remove(this._container),this._map.off(\"zoom\",this._onZoom),this._map=void 0,Yi=0,Xi=!1},n.prototype._isOutOfMapMaxBounds=function(t){var e=this._map.getMaxBounds(),r=t.coords;return e&&(r.longitude<e.getWest()||r.longitude>e.getEast()||r.latitude<e.getSouth()||r.latitude>e.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(e){if(this._map){if(this._isOutOfMapMaxBounds(e))return this._setErrorState(),this.fire(new t.Event(\"outofmaxbounds\",e)),this._updateMarker(),void this._finish();if(this.options.trackUserLocation)switch(this._lastKnownPosition=e,this._watchState){case\"WAITING_ACTIVE\":case\"ACTIVE_LOCK\":case\"ACTIVE_ERROR\":this._watchState=\"ACTIVE_LOCK\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active-error\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active\");break;case\"BACKGROUND\":case\"BACKGROUND_ERROR\":this._watchState=\"BACKGROUND\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background-error\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-background\")}this.options.showUserLocation&&\"OFF\"!==this._watchState&&this._updateMarker(e),this.options.trackUserLocation&&\"ACTIVE_LOCK\"!==this._watchState||this._updateCamera(e),this.options.showUserLocation&&this._dotElement.classList.remove(\"mapboxgl-user-location-dot-stale\"),this.fire(new t.Event(\"geolocate\",e)),this._finish()}},n.prototype._updateCamera=function(e){var r=new t.LngLat(e.coords.longitude,e.coords.latitude),n=e.coords.accuracy,i=this._map.getBearing(),a=t.extend({bearing:i},this.options.fitBoundsOptions);this._map.fitBounds(r.toBounds(n),a,{geolocateSource:!0})},n.prototype._updateMarker=function(e){if(e){var r=new t.LngLat(e.coords.longitude,e.coords.latitude);this._accuracyCircleMarker.setLngLat(r).addTo(this._map),this._userLocationDotMarker.setLngLat(r).addTo(this._map),this._accuracy=e.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},n.prototype._updateCircleRadius=function(){var t=this._map._container.clientHeight/2,e=this._map.unproject([0,t]),r=this._map.unproject([1,t]),n=e.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(e){if(this._map){if(this.options.trackUserLocation)if(1===e.code){this._watchState=\"OFF\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active-error\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background-error\"),this._geolocateButton.disabled=!0;var 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===e.code&&Xi)return;this._setErrorState()}\"OFF\"!==this._watchState&&this.options.showUserLocation&&this._dotElement.classList.add(\"mapboxgl-user-location-dot-stale\"),this.fire(new t.Event(\"error\",e)),this._finish()}},n.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},n.prototype._setupUI=function(e){var n=this;if(this._container.addEventListener(\"contextmenu\",(function(t){return t.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===e){t.warnOnce(\"Geolocation support is not available so the GeolocateControl will be disabled.\");var i=this._map._getUIString(\"GeolocateControl.LocationNotAvailable\");this._geolocateButton.disabled=!0,this._geolocateButton.title=i,this._geolocateButton.setAttribute(\"aria-label\",i)}else{var a=this._map._getUIString(\"GeolocateControl.FindMyLocation\");this._geolocateButton.title=a,this._geolocateButton.setAttribute(\"aria-label\",a)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute(\"aria-pressed\",\"false\"),this._watchState=\"OFF\"),this.options.showUserLocation&&(this._dotElement=r.create(\"div\",\"mapboxgl-user-location-dot\"),this._userLocationDotMarker=new Zi(this._dotElement),this._circleElement=r.create(\"div\",\"mapboxgl-user-location-accuracy-circle\"),this._accuracyCircleMarker=new Zi({element:this._circleElement,pitchAlignment:\"map\"}),this.options.trackUserLocation&&(this._watchState=\"OFF\"),this._map.on(\"zoom\",this._onZoom)),this._geolocateButton.addEventListener(\"click\",this.trigger.bind(this)),this._setup=!0,this.options.trackUserLocation&&this._map.on(\"movestart\",(function(e){var r=e.originalEvent&&\"resize\"===e.originalEvent.type;e.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 t.Event(\"trackuserlocationend\")))}))},n.prototype.trigger=function(){if(!this._setup)return t.warnOnce(\"Geolocate control triggered before added to a map\"),!1;if(this.options.trackUserLocation){switch(this._watchState){case\"OFF\":this._watchState=\"WAITING_ACTIVE\",this.fire(new t.Event(\"trackuserlocationstart\"));break;case\"WAITING_ACTIVE\":case\"ACTIVE_LOCK\":case\"ACTIVE_ERROR\":case\"BACKGROUND_ERROR\":Yi--,Xi=!1,this._watchState=\"OFF\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active-error\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background-error\"),this.fire(new t.Event(\"trackuserlocationend\"));break;case\"BACKGROUND\":this._watchState=\"ACTIVE_LOCK\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background\"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new t.Event(\"trackuserlocationstart\"))}switch(this._watchState){case\"WAITING_ACTIVE\":this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active\");break;case\"ACTIVE_LOCK\":this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active\");break;case\"ACTIVE_ERROR\":this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-active-error\");break;case\"BACKGROUND\":this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-background\");break;case\"BACKGROUND_ERROR\":this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-background-error\")}if(\"OFF\"===this._watchState&&void 0!==this._geolocationWatchID)this._clearWatch();else if(void 0===this._geolocationWatchID){var e;this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.setAttribute(\"aria-pressed\",\"true\"),++Yi>1?(e={maximumAge:6e5,timeout:0},Xi=!0):(e=this.options.positionOptions,Xi=!1),this._geolocationWatchID=t.window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,e)}}else t.window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0},n.prototype._clearWatch=function(){t.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.setAttribute(\"aria-pressed\",\"false\"),this.options.showUserLocation&&this._updateMarker(null)},n}(t.Evented),Ji={maxWidth:100,unit:\"metric\"},Ki=function(e){this.options=t.extend({},Ji,e),t.bindAll([\"_onMove\",\"setUnit\"],this)};function Qi(t,e,r){var n=r&&r.maxWidth||100,i=t._container.clientHeight/2,a=t.unproject([0,i]),o=t.unproject([n,i]),s=a.distanceTo(o);if(r&&\"imperial\"===r.unit){var l=3.2808*s;l>5280?ta(e,n,l/5280,t._getUIString(\"ScaleControl.Miles\")):ta(e,n,l,t._getUIString(\"ScaleControl.Feet\"))}else r&&\"nautical\"===r.unit?ta(e,n,s/1852,t._getUIString(\"ScaleControl.NauticalMiles\")):s>=1e3?ta(e,n,s/1e3,t._getUIString(\"ScaleControl.Kilometers\")):ta(e,n,s,t._getUIString(\"ScaleControl.Meters\"))}function ta(t,e,r,n){var i,a,o,s=(i=r,(a=Math.pow(10,(\"\"+Math.floor(i)).length-1))*((o=i/a)>=10?10:o>=5?5:o>=3?3:o>=2?2:o>=1?1:function(t){var e=Math.pow(10,Math.ceil(-Math.log(t)/Math.LN10));return Math.round(t*e)/e}(o))),l=s/r;t.style.width=e*l+\"px\",t.innerHTML=s+\"&nbsp;\"+n}Ki.prototype.getDefaultPosition=function(){return\"bottom-left\"},Ki.prototype._onMove=function(){Qi(this._map,this._container,this.options)},Ki.prototype.onAdd=function(t){return this._map=t,this._container=r.create(\"div\",\"mapboxgl-ctrl mapboxgl-ctrl-scale\",t.getContainer()),this._map.on(\"move\",this._onMove),this._onMove(),this._container},Ki.prototype.onRemove=function(){r.remove(this._container),this._map.off(\"move\",this._onMove),this._map=void 0},Ki.prototype.setUnit=function(t){this.options.unit=t,Qi(this._map,this._container,this.options)};var ea=function(e){this._fullscreen=!1,e&&e.container&&(e.container instanceof t.window.HTMLElement?this._container=e.container:t.warnOnce(\"Full screen control 'container' must be a DOM element.\")),t.bindAll([\"_onClickFullscreen\",\"_changeIcon\"],this),\"onfullscreenchange\"in t.window.document?this._fullscreenchange=\"fullscreenchange\":\"onmozfullscreenchange\"in t.window.document?this._fullscreenchange=\"mozfullscreenchange\":\"onwebkitfullscreenchange\"in t.window.document?this._fullscreenchange=\"webkitfullscreenchange\":\"onmsfullscreenchange\"in t.window.document&&(this._fullscreenchange=\"MSFullscreenChange\")};ea.prototype.onAdd=function(e){return this._map=e,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\",t.warnOnce(\"This device does not support fullscreen mode.\")),this._controlContainer},ea.prototype.onRemove=function(){r.remove(this._controlContainer),this._map=null,t.window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},ea.prototype._checkFullscreenSupport=function(){return!!(t.window.document.fullscreenEnabled||t.window.document.mozFullScreenEnabled||t.window.document.msFullscreenEnabled||t.window.document.webkitFullscreenEnabled)},ea.prototype._setupUI=function(){var e=this._fullscreenButton=r.create(\"button\",\"mapboxgl-ctrl-fullscreen\",this._controlContainer);r.create(\"span\",\"mapboxgl-ctrl-icon\",e).setAttribute(\"aria-hidden\",!0),e.type=\"button\",this._updateTitle(),this._fullscreenButton.addEventListener(\"click\",this._onClickFullscreen),t.window.document.addEventListener(this._fullscreenchange,this._changeIcon)},ea.prototype._updateTitle=function(){var t=this._getTitle();this._fullscreenButton.setAttribute(\"aria-label\",t),this._fullscreenButton.title=t},ea.prototype._getTitle=function(){return this._map._getUIString(this._isFullscreen()?\"FullscreenControl.Exit\":\"FullscreenControl.Enter\")},ea.prototype._isFullscreen=function(){return this._fullscreen},ea.prototype._changeIcon=function(){(t.window.document.fullscreenElement||t.window.document.mozFullScreenElement||t.window.document.webkitFullscreenElement||t.window.document.msFullscreenElement)===this._container!==this._fullscreen&&(this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle(\"mapboxgl-ctrl-shrink\"),this._fullscreenButton.classList.toggle(\"mapboxgl-ctrl-fullscreen\"),this._updateTitle())},ea.prototype._onClickFullscreen=function(){this._isFullscreen()?t.window.document.exitFullscreen?t.window.document.exitFullscreen():t.window.document.mozCancelFullScreen?t.window.document.mozCancelFullScreen():t.window.document.msExitFullscreen?t.window.document.msExitFullscreen():t.window.document.webkitCancelFullScreen&&t.window.document.webkitCancelFullScreen():this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen&&this._container.webkitRequestFullscreen()};var ra={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:\"\",maxWidth:\"240px\"},na=[\"a[href]\",\"[tabindex]:not([tabindex='-1'])\",\"[contenteditable]:not([contenteditable='false'])\",\"button:not([disabled])\",\"input:not([disabled])\",\"select:not([disabled])\",\"textarea:not([disabled])\"].join(\", \"),ia=function(e){function n(r){e.call(this),this.options=t.extend(Object.create(ra),r),t.bindAll([\"_update\",\"_onClose\",\"remove\",\"_onMouseMove\",\"_onMouseUp\",\"_onDrag\"],this)}return e&&(n.__proto__=e),n.prototype=Object.create(e&&e.prototype),n.prototype.constructor=n,n.prototype.addTo=function(e){return this._map&&this.remove(),this._map=e,this.options.closeOnClick&&this._map.on(\"click\",this._onClose),this.options.closeOnMove&&this._map.on(\"move\",this._onClose),this._map.on(\"remove\",this.remove),this._update(),this._focusFirstElement(),this._trackPointer?(this._map.on(\"mousemove\",this._onMouseMove),this._map.on(\"mouseup\",this._onMouseUp),this._container&&this._container.classList.add(\"mapboxgl-popup-track-pointer\"),this._map._canvasContainer.classList.add(\"mapboxgl-track-pointer\")):this._map.on(\"move\",this._update),this.fire(new t.Event(\"open\")),this},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 t.Event(\"close\")),this},n.prototype.getLngLat=function(){return this._lngLat},n.prototype.setLngLat=function(e){return this._lngLat=t.LngLat.convert(e),this._pos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on(\"move\",this._update),this._map.off(\"mousemove\",this._onMouseMove),this._container&&this._container.classList.remove(\"mapboxgl-popup-track-pointer\"),this._map._canvasContainer.classList.remove(\"mapboxgl-track-pointer\")),this},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(e){return this.setDOMContent(t.window.document.createTextNode(e))},n.prototype.setHTML=function(e){var r,n=t.window.document.createDocumentFragment(),i=t.window.document.createElement(\"body\");for(i.innerHTML=e;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(t){return this.options.maxWidth=t,this._update(),this},n.prototype.setDOMContent=function(t){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=r.create(\"div\",\"mapboxgl-popup-content\",this._container);return this._content.appendChild(t),this._createCloseButton(),this._update(),this._focusFirstElement(),this},n.prototype.addClassName=function(t){this._container&&this._container.classList.add(t)},n.prototype.removeClassName=function(t){this._container&&this._container.classList.remove(t)},n.prototype.setOffset=function(t){return this.options.offset=t,this._update(),this},n.prototype.toggleClassName=function(t){if(this._container)return this._container.classList.toggle(t)},n.prototype._createCloseButton=function(){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=\"&#215;\",this._closeButton.addEventListener(\"click\",this._onClose))},n.prototype._onMouseUp=function(t){this._update(t.point)},n.prototype._onMouseMove=function(t){this._update(t.point)},n.prototype._onDrag=function(t){this._update(t.point)},n.prototype._update=function(t){var e=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(t){return e._container.classList.add(t)})),this._trackPointer&&this._container.classList.add(\"mapboxgl-popup-track-pointer\")),this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._map.transform.renderWorldCopies&&!this._trackPointer&&(this._lngLat=Vi(this._lngLat,this._pos,this._map.transform)),!this._trackPointer||t)){var i=this._pos=this._trackPointer&&t?t:this._map.project(this._lngLat),a=this.options.anchor,o=aa(this.options.offset);if(!a){var s,l=this._container.offsetWidth,c=this._container.offsetHeight;s=i.y+o.bottom.y<c?[\"top\"]:i.y>this._map.transform.height-c?[\"bottom\"]:[],i.x<l/2?s.push(\"left\"):i.x>this._map.transform.width-l/2&&s.push(\"right\"),a=0===s.length?\"bottom\":s.join(\"-\")}var u=i.add(o[a]).round();r.setTransform(this._container,qi[a]+\" translate(\"+u.x+\"px,\"+u.y+\"px)\"),Hi(this._container,a,\"popup\")}},n.prototype._focusFirstElement=function(){if(this.options.focusAfterOpen&&this._container){var t=this._container.querySelector(na);t&&t.focus()}},n.prototype._onClose=function(){this.remove()},n}(t.Evented);function aa(e){if(e){if(\"number\"==typeof e){var r=Math.round(Math.sqrt(.5*Math.pow(e,2)));return{center:new t.Point(0,0),top:new t.Point(0,e),\"top-left\":new t.Point(r,r),\"top-right\":new t.Point(-r,r),bottom:new t.Point(0,-e),\"bottom-left\":new t.Point(r,-r),\"bottom-right\":new t.Point(-r,-r),left:new t.Point(e,0),right:new t.Point(-e,0)}}if(e instanceof t.Point||Array.isArray(e)){var n=t.Point.convert(e);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:t.Point.convert(e.center||[0,0]),top:t.Point.convert(e.top||[0,0]),\"top-left\":t.Point.convert(e[\"top-left\"]||[0,0]),\"top-right\":t.Point.convert(e[\"top-right\"]||[0,0]),bottom:t.Point.convert(e.bottom||[0,0]),\"bottom-left\":t.Point.convert(e[\"bottom-left\"]||[0,0]),\"bottom-right\":t.Point.convert(e[\"bottom-right\"]||[0,0]),left:t.Point.convert(e.left||[0,0]),right:t.Point.convert(e.right||[0,0])}}return aa(new t.Point(0,0))}var oa={version:t.version,supported:e,setRTLTextPlugin:t.setRTLTextPlugin,getRTLTextPluginStatus:t.getRTLTextPluginStatus,Map:Fi,NavigationControl:ji,GeolocateControl:$i,AttributionControl:Ei,ScaleControl:Ki,FullscreenControl:ea,Popup:ia,Marker:Zi,Style:We,LngLat:t.LngLat,LngLatBounds:t.LngLatBounds,Point:t.Point,MercatorCoordinate:t.MercatorCoordinate,Evented:t.Evented,config:t.config,prewarm:function(){jt().acquire(Rt)},clearPrewarmedResources:function(){var t=Bt;t&&(t.isPreloaded()&&1===t.numActive()?(t.release(Rt),Bt=null):console.warn(\"Could not clear WebWorkers since there are active Map instances that still reference it. The pre-warmed WebWorker pool can only be cleared when all map instances have been removed with map.remove()\"))},get accessToken(){return t.config.ACCESS_TOKEN},set accessToken(e){t.config.ACCESS_TOKEN=e},get baseApiUrl(){return t.config.API_URL},set baseApiUrl(e){t.config.API_URL=e},get workerCount(){return Ft.workerCount},set workerCount(t){Ft.workerCount=t},get maxParallelImageRequests(){return t.config.MAX_PARALLEL_IMAGE_REQUESTS},set maxParallelImageRequests(e){t.config.MAX_PARALLEL_IMAGE_REQUESTS=e},clearStorage:function(e){t.clearTileCache(e)},workerUrl:\"\"};return oa})),r}()},27549:function(t,e,r){\"use strict\";t.exports=r(55366)},55366:function(t,e,r){\"use strict\";var n=r(31625),i=r(75144),a=r(5137),o=r(78112),s=r(6807),l=r(68650),c=r(83473),u=r(60201),h=r(10275),f=r(62914);function p(t,e){for(var r=e[0],n=e[1],a=1/(e[2]-r),o=1/(e[3]-n),s=new Array(t.length),l=0,c=t.length/2;l<c;l++)s[2*l]=i((t[2*l]-r)*a,0,1),s[2*l+1]=i((t[2*l+1]-n)*o,0,1);return s}t.exports=function(t,e){e||(e={}),t=c(t,\"float64\"),e=s(e,{bounds:\"range bounds dataBox databox\",maxDepth:\"depth maxDepth maxdepth level maxLevel maxlevel levels\",dtype:\"type dtype format out dst output destination\"});var r=l(e.maxDepth,255),i=l(e.bounds,o(t,2));i[0]===i[2]&&i[2]++,i[1]===i[3]&&i[3]++;var d,m=p(t,i),g=t.length>>>1;e.dtype||(e.dtype=\"array\"),\"string\"==typeof e.dtype?d=new(h(e.dtype))(g):e.dtype&&(d=e.dtype,Array.isArray(d)&&(d.length=g));for(var y=0;y<g;++y)d[y]=y;var v=[],x=[],_=[],b=[];!function t(e,n,i,a,o,s){if(!a.length)return null;var l=v[o]||(v[o]=[]),c=_[o]||(_[o]=[]),u=x[o]||(x[o]=[]),h=l.length;if(++o>r||s>1073741824){for(var f=0;f<a.length;f++)l.push(a[f]),c.push(s),u.push(null,null,null,null);return h}if(l.push(a[0]),c.push(s),a.length<=1)return u.push(null,null,null,null),h;for(var p=.5*i,d=e+p,g=n+p,y=[],b=[],w=[],T=[],k=1,A=a.length;k<A;k++){var M=a[k],S=m[2*M],E=m[2*M+1];S<d?E<g?y.push(M):b.push(M):E<g?w.push(M):T.push(M)}return s<<=2,u.push(t(e,n,p,y,o,s),t(e,g,p,b,o,s+1),t(d,n,p,w,o,s+2),t(d,g,p,T,o,s+3)),h}(0,0,1,d,0,1);for(var w=0,T=0;T<v.length;T++){var k=v[T];if(d.set)d.set(k,w);else for(var A=0,M=k.length;A<M;A++)d[A+w]=k[A];var S=w+v[T].length;b[T]=[w,S],w=S}return d.range=function(){for(var e,r=[],o=arguments.length;o--;)r[o]=arguments[o];if(u(r[r.length-1])){var c=r.pop();r.length||null==c.x&&null==c.l&&null==c.left||(r=[c],e={}),e=s(c,{level:\"level maxLevel\",d:\"d diam diameter r radius px pxSize pixel pixelSize maxD size minSize\",lod:\"lod details ranges offsets\"})}else e={};r.length||(r=i);var h,d=a.apply(void 0,r),m=[Math.min(d.x,d.x+d.width),Math.min(d.y,d.y+d.height),Math.max(d.x,d.x+d.width),Math.max(d.y,d.y+d.height)],g=m[0],y=m[1],w=m[2],T=m[3],k=p([g,y,w,T],i),A=k[0],M=k[1],S=k[2],C=k[3],L=l(e.level,v.length);null!=e.d&&(\"number\"==typeof e.d?h=[e.d,e.d]:e.d.length&&(h=e.d),L=Math.min(Math.max(Math.ceil(-f(Math.abs(h[0])/(i[2]-i[0]))),Math.ceil(-f(Math.abs(h[1])/(i[3]-i[1])))),L));if(L=Math.min(L,v.length),e.lod)return function(t,e,r,i,a){for(var o=[],s=0;s<a;s++){var l=_[s],c=b[s][0],u=E(t,e,s),h=E(r,i,s),f=n.ge(l,u),p=n.gt(l,h,f,l.length-1);o[s]=[f+c,p+c]}return o}(A,M,S,C,L);var I=[];return function e(r,n,i,a,o,s){if(null!==o&&null!==s&&!(A>r+i||M>n+i||S<r||C<n||a>=L||o===s)){var l=v[a];void 0===s&&(s=l.length);for(var c=o;c<s;c++){var u=l[c],h=t[2*u],f=t[2*u+1];h>=g&&h<=w&&f>=y&&f<=T&&I.push(u)}var p=x[a],d=p[4*o+0],m=p[4*o+1],_=p[4*o+2],b=p[4*o+3],k=function(t,e){for(var r=null,n=0;null===r;)if(r=t[4*e+n],++n>t.length)return null;return r}(p,o+1),E=.5*i,P=a+1;e(r,n,E,P,d,m||_||b||k),e(r,n+E,E,P,m,_||b||k),e(r+E,n,E,P,_,b||k),e(r+E,n+E,E,P,b,k)}}(0,0,1,0,0,1),I},d;function E(t,e,r){for(var n=1,i=.5,a=.5,o=.5,s=0;s<r;s++)n<<=2,n+=t<i?e<a?0:1:e<a?2:3,o*=.5,i+=t<i?-o:o,a+=e<a?-o:o;return n}}},16844:function(t){t.exports=function(t){var e=0,r=0,n=0,i=0;return t.map((function(t){var a=(t=t.slice())[0],o=a.toUpperCase();if(a!=o)switch(t[0]=o,a){case\"a\":t[6]+=n,t[7]+=i;break;case\"v\":t[1]+=i;break;case\"h\":t[1]+=n;break;default:for(var s=1;s<t.length;)t[s++]+=n,t[s++]+=i}switch(o){case\"Z\":n=e,i=r;break;case\"H\":n=t[1];break;case\"V\":i=t[1];break;case\"M\":n=e=t[1],i=r=t[2];break;default:n=t[t.length-2],i=t[t.length-1]}return t}))}},78112:function(t){\"use strict\";t.exports=function(t,e){if(!t||null==t.length)throw Error(\"Argument should be an array\");e=null==e?1:Math.floor(e);for(var r=Array(2*e),n=0;n<e;n++){for(var i=-1/0,a=1/0,o=n,s=t.length;o<s;o+=e)t[o]>i&&(i=t[o]),t[o]<a&&(a=t[o]);r[n]=a,r[e+n]=i}return r}},33055:function(t){\"use strict\";t.exports=function(t,e,r){if(\"function\"==typeof Array.prototype.findIndex)return t.findIndex(e,r);if(\"function\"!=typeof e)throw new TypeError(\"predicate must be a function\");var n=Object(t),i=n.length;if(0===i)return-1;for(var a=0;a<i;a++)if(e.call(r,n[a],a,n))return a;return-1}},90956:function(t,e,r){\"use strict\";var n=r(78112);t.exports=function(t,e,r){if(!t||null==t.length)throw Error(\"Argument should be an array\");null==e&&(e=1),null==r&&(r=n(t,e));for(var i=0;i<e;i++){var a=r[e+i],o=r[i],s=i,l=t.length;if(a===1/0&&o===-1/0)for(s=i;s<l;s+=e)t[s]=t[s]===a?1:t[s]===o?0:.5;else if(a===1/0)for(s=i;s<l;s+=e)t[s]=t[s]===a?1:0;else if(o===-1/0)for(s=i;s<l;s+=e)t[s]=t[s]===o?0:1;else{var c=a-o;for(s=i;s<l;s+=e)isNaN(t[s])||(t[s]=0===c?.5:(t[s]-o)/c)}}return t}},27902:function(t){t.exports=function(t,e){var r=\"number\"==typeof t,n=\"number\"==typeof e;r&&!n?(e=t,t=0):r||n||(t=0,e=0);var i=(e|=0)-(t|=0);if(i<0)throw new Error(\"array length must be positive\");for(var a=new Array(i),o=0,s=t;o<i;o++,s++)a[o]=s;return a}},85672:function(t,e,r){\"use strict\";var n=r(33282);function i(t){return i=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},i(t)}function a(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(t,(void 0,a=function(t,e){if(\"object\"!==i(t)||null===t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,\"string\");if(\"object\"!==i(n))return n;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return String(t)}(n.key),\"symbol\"===i(a)?a:String(a)),n)}var a}function o(t,e,r){return e&&a(t.prototype,e),r&&a(t,r),Object.defineProperty(t,\"prototype\",{writable:!1}),t}var s,l,c=r(34585).codes,u=c.ERR_AMBIGUOUS_ARGUMENT,h=c.ERR_INVALID_ARG_TYPE,f=c.ERR_INVALID_ARG_VALUE,p=c.ERR_INVALID_RETURN_VALUE,d=c.ERR_MISSING_ARGS,m=r(68586),g=r(56557).inspect,y=r(56557).types,v=y.isPromise,x=y.isRegExp,_=r(68686)(),b=r(9622)(),w=r(63063)(\"RegExp.prototype.test\");function T(){var t=r(23879);s=t.isDeepEqual,l=t.isDeepStrictEqual}new Map;var k=!1,A=t.exports=C,M={};function S(t){if(t.message instanceof Error)throw t.message;throw new m(t)}function E(t,e,r,n){if(!r){var i=!1;if(0===e)i=!0,n=\"No value argument passed to `assert.ok()`\";else if(n instanceof Error)throw n;var a=new m({actual:r,expected:!0,message:n,operator:\"==\",stackStartFn:t});throw a.generatedMessage=i,a}}function C(){for(var t=arguments.length,e=new Array(t),r=0;r<t;r++)e[r]=arguments[r];E.apply(void 0,[C,e.length].concat(e))}A.fail=function t(e,r,i,a,o){var s,l=arguments.length;if(0===l?s=\"Failed\":1===l?(i=e,e=void 0):(!1===k&&(k=!0,(n.emitWarning?n.emitWarning:console.warn.bind(console))(\"assert.fail() with more than one argument is deprecated. Please use assert.strictEqual() instead or only pass a message.\",\"DeprecationWarning\",\"DEP0094\")),2===l&&(a=\"!=\")),i instanceof Error)throw i;var c={actual:e,expected:r,operator:void 0===a?\"fail\":a,stackStartFn:o||t};void 0!==i&&(c.message=i);var u=new m(c);throw s&&(u.message=s,u.generatedMessage=!0),u},A.AssertionError=m,A.ok=C,A.equal=function t(e,r,n){if(arguments.length<2)throw new d(\"actual\",\"expected\");e!=r&&S({actual:e,expected:r,message:n,operator:\"==\",stackStartFn:t})},A.notEqual=function t(e,r,n){if(arguments.length<2)throw new d(\"actual\",\"expected\");e==r&&S({actual:e,expected:r,message:n,operator:\"!=\",stackStartFn:t})},A.deepEqual=function t(e,r,n){if(arguments.length<2)throw new d(\"actual\",\"expected\");void 0===s&&T(),s(e,r)||S({actual:e,expected:r,message:n,operator:\"deepEqual\",stackStartFn:t})},A.notDeepEqual=function t(e,r,n){if(arguments.length<2)throw new d(\"actual\",\"expected\");void 0===s&&T(),s(e,r)&&S({actual:e,expected:r,message:n,operator:\"notDeepEqual\",stackStartFn:t})},A.deepStrictEqual=function t(e,r,n){if(arguments.length<2)throw new d(\"actual\",\"expected\");void 0===s&&T(),l(e,r)||S({actual:e,expected:r,message:n,operator:\"deepStrictEqual\",stackStartFn:t})},A.notDeepStrictEqual=function t(e,r,n){if(arguments.length<2)throw new d(\"actual\",\"expected\");void 0===s&&T(),l(e,r)&&S({actual:e,expected:r,message:n,operator:\"notDeepStrictEqual\",stackStartFn:t})},A.strictEqual=function t(e,r,n){if(arguments.length<2)throw new d(\"actual\",\"expected\");b(e,r)||S({actual:e,expected:r,message:n,operator:\"strictEqual\",stackStartFn:t})},A.notStrictEqual=function t(e,r,n){if(arguments.length<2)throw new d(\"actual\",\"expected\");b(e,r)&&S({actual:e,expected:r,message:n,operator:\"notStrictEqual\",stackStartFn:t})};var L=o((function t(e,r,n){var i=this;!function(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}(this,t),r.forEach((function(t){t in e&&(void 0!==n&&\"string\"==typeof n[t]&&x(e[t])&&w(e[t],n[t])?i[t]=n[t]:i[t]=e[t])}))}));function I(t,e,r,n){if(\"function\"!=typeof e){if(x(e))return w(e,t);if(2===arguments.length)throw new h(\"expected\",[\"Function\",\"RegExp\"],e);if(\"object\"!==i(t)||null===t){var a=new m({actual:t,expected:e,message:r,operator:\"deepStrictEqual\",stackStartFn:n});throw a.operator=n.name,a}var o=Object.keys(e);if(e instanceof Error)o.push(\"name\",\"message\");else if(0===o.length)throw new f(\"error\",e,\"may not be an empty object\");return void 0===s&&T(),o.forEach((function(i){\"string\"==typeof t[i]&&x(e[i])&&w(e[i],t[i])||function(t,e,r,n,i,a){if(!(r in t)||!l(t[r],e[r])){if(!n){var o=new L(t,i),s=new L(e,i,t),c=new m({actual:o,expected:s,operator:\"deepStrictEqual\",stackStartFn:a});throw c.actual=t,c.expected=e,c.operator=a.name,c}S({actual:t,expected:e,message:n,operator:a.name,stackStartFn:a})}}(t,e,i,r,o,n)})),!0}return void 0!==e.prototype&&t instanceof e||!Error.isPrototypeOf(e)&&!0===e.call({},t)}function P(t){if(\"function\"!=typeof t)throw new h(\"fn\",\"Function\",t);try{t()}catch(t){return t}return M}function z(t){return v(t)||null!==t&&\"object\"===i(t)&&\"function\"==typeof t.then&&\"function\"==typeof t.catch}function O(t){return Promise.resolve().then((function(){var e;if(\"function\"==typeof t){if(!z(e=t()))throw new p(\"instance of Promise\",\"promiseFn\",e)}else{if(!z(t))throw new h(\"promiseFn\",[\"Function\",\"Promise\"],t);e=t}return Promise.resolve().then((function(){return e})).then((function(){return M})).catch((function(t){return t}))}))}function D(t,e,r,n){if(\"string\"==typeof r){if(4===arguments.length)throw new h(\"error\",[\"Object\",\"Error\",\"Function\",\"RegExp\"],r);if(\"object\"===i(e)&&null!==e){if(e.message===r)throw new u(\"error/message\",'The error message \"'.concat(e.message,'\" is identical to the message.'))}else if(e===r)throw new u(\"error/message\",'The error \"'.concat(e,'\" is identical to the message.'));n=r,r=void 0}else if(null!=r&&\"object\"!==i(r)&&\"function\"!=typeof r)throw new h(\"error\",[\"Object\",\"Error\",\"Function\",\"RegExp\"],r);if(e===M){var a=\"\";r&&r.name&&(a+=\" (\".concat(r.name,\")\")),a+=n?\": \".concat(n):\".\";var o=\"rejects\"===t.name?\"rejection\":\"exception\";S({actual:void 0,expected:r,operator:t.name,message:\"Missing expected \".concat(o).concat(a),stackStartFn:t})}if(r&&!I(e,r,n,t))throw e}function R(t,e,r,n){if(e!==M){if(\"string\"==typeof r&&(n=r,r=void 0),!r||I(e,r)){var i=n?\": \".concat(n):\".\",a=\"doesNotReject\"===t.name?\"rejection\":\"exception\";S({actual:e,expected:r,operator:t.name,message:\"Got unwanted \".concat(a).concat(i,\"\\n\")+'Actual message: \"'.concat(e&&e.message,'\"'),stackStartFn:t})}throw e}}function F(t,e,r,n,a){if(!x(e))throw new h(\"regexp\",\"RegExp\",e);var o=\"match\"===a;if(\"string\"!=typeof t||w(e,t)!==o){if(r instanceof Error)throw r;var s=!r;r=r||(\"string\"!=typeof t?'The \"string\" argument must be of type string. Received type '+\"\".concat(i(t),\" (\").concat(g(t),\")\"):(o?\"The input did not match the regular expression \":\"The input was expected to not match the regular expression \")+\"\".concat(g(e),\". Input:\\n\\n\").concat(g(t),\"\\n\"));var l=new m({actual:t,expected:e,message:r,operator:a,stackStartFn:n});throw l.generatedMessage=s,l}}function B(){for(var t=arguments.length,e=new Array(t),r=0;r<t;r++)e[r]=arguments[r];E.apply(void 0,[B,e.length].concat(e))}A.throws=function t(e){for(var r=arguments.length,n=new Array(r>1?r-1:0),i=1;i<r;i++)n[i-1]=arguments[i];D.apply(void 0,[t,P(e)].concat(n))},A.rejects=function t(e){for(var r=arguments.length,n=new Array(r>1?r-1:0),i=1;i<r;i++)n[i-1]=arguments[i];return O(e).then((function(e){return D.apply(void 0,[t,e].concat(n))}))},A.doesNotThrow=function t(e){for(var r=arguments.length,n=new Array(r>1?r-1:0),i=1;i<r;i++)n[i-1]=arguments[i];R.apply(void 0,[t,P(e)].concat(n))},A.doesNotReject=function t(e){for(var r=arguments.length,n=new Array(r>1?r-1:0),i=1;i<r;i++)n[i-1]=arguments[i];return O(e).then((function(e){return R.apply(void 0,[t,e].concat(n))}))},A.ifError=function t(e){if(null!=e){var r=\"ifError got unwanted exception: \";\"object\"===i(e)&&\"string\"==typeof e.message?0===e.message.length&&e.constructor?r+=e.constructor.name:r+=e.message:r+=g(e);var n=new m({actual:e,expected:null,operator:\"ifError\",message:r,stackStartFn:t}),a=e.stack;if(\"string\"==typeof a){var o=a.split(\"\\n\");o.shift();for(var s=n.stack.split(\"\\n\"),l=0;l<o.length;l++){var c=s.indexOf(o[l]);if(-1!==c){s=s.slice(0,c);break}}n.stack=\"\".concat(s.join(\"\\n\"),\"\\n\").concat(o.join(\"\\n\"))}throw n}},A.match=function t(e,r,n){F(e,r,n,t,\"match\")},A.doesNotMatch=function t(e,r,n){F(e,r,n,t,\"doesNotMatch\")},A.strict=_(B,A,{equal:A.strictEqual,deepEqual:A.deepStrictEqual,notEqual:A.notStrictEqual,notDeepEqual:A.notDeepStrictEqual}),A.strict.strict=A.strict},68586:function(t,e,r){\"use strict\";var n=r(33282);function i(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function a(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?i(Object(r),!0).forEach((function(e){var n,i,a;n=t,i=e,a=r[e],(i=s(i))in n?Object.defineProperty(n,i,{value:a,enumerable:!0,configurable:!0,writable:!0}):n[i]=a})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):i(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}function o(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(t,s(n.key),n)}}function s(t){var e=function(t,e){if(\"object\"!==m(t)||null===t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,\"string\");if(\"object\"!==m(n))return n;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return String(t)}(t);return\"symbol\"===m(e)?e:String(e)}function l(t,e){if(e&&(\"object\"===m(e)||\"function\"==typeof e))return e;if(void 0!==e)throw new TypeError(\"Derived constructors may only return object or undefined\");return c(t)}function c(t){if(void 0===t)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return t}function u(t){var e=\"function\"==typeof Map?new Map:void 0;return u=function(t){if(null===t||(r=t,-1===Function.toString.call(r).indexOf(\"[native code]\")))return t;var r;if(\"function\"!=typeof t)throw new TypeError(\"Super expression must either be null or a function\");if(void 0!==e){if(e.has(t))return e.get(t);e.set(t,n)}function n(){return h(t,arguments,d(this).constructor)}return n.prototype=Object.create(t.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),p(n,t)},u(t)}function h(t,e,r){return h=f()?Reflect.construct.bind():function(t,e,r){var n=[null];n.push.apply(n,e);var i=new(Function.bind.apply(t,n));return r&&p(i,r.prototype),i},h.apply(null,arguments)}function f(){if(\"undefined\"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if(\"function\"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}function p(t,e){return p=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},p(t,e)}function d(t){return d=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},d(t)}function m(t){return m=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},m(t)}var g=r(56557).inspect,y=r(34585).codes.ERR_INVALID_ARG_TYPE;function v(t,e,r){return(void 0===r||r>t.length)&&(r=t.length),t.substring(r-e.length,r)===e}var x=\"\",_=\"\",b=\"\",w=\"\",T={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 k(t){var e=Object.keys(t),r=Object.create(Object.getPrototypeOf(t));return e.forEach((function(e){r[e]=t[e]})),Object.defineProperty(r,\"message\",{value:t.message}),r}function A(t){return g(t,{compact:!1,customInspect:!1,depth:1e3,maxArrayLength:1/0,showHidden:!1,breakLength:1/0,showProxy:!1,sorted:!0,getters:!0})}var M=function(t,e){!function(t,e){if(\"function\"!=typeof e&&null!==e)throw new TypeError(\"Super expression must either be null or a function\");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,\"prototype\",{writable:!1}),e&&p(t,e)}(M,t);var r,i,s,u,h=(r=M,i=f(),function(){var t,e=d(r);if(i){var n=d(this).constructor;t=Reflect.construct(e,arguments,n)}else t=e.apply(this,arguments);return l(this,t)});function M(t){var e;if(function(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}(this,M),\"object\"!==m(t)||null===t)throw new y(\"options\",\"Object\",t);var r=t.message,i=t.operator,a=t.stackStartFn,o=t.actual,s=t.expected,u=Error.stackTraceLimit;if(Error.stackTraceLimit=0,null!=r)e=h.call(this,String(r));else if(n.stderr&&n.stderr.isTTY&&(n.stderr&&n.stderr.getColorDepth&&1!==n.stderr.getColorDepth()?(x=\"\u001b[34m\",_=\"\u001b[32m\",w=\"\u001b[39m\",b=\"\u001b[31m\"):(x=\"\",_=\"\",w=\"\",b=\"\")),\"object\"===m(o)&&null!==o&&\"object\"===m(s)&&null!==s&&\"stack\"in o&&o instanceof Error&&\"stack\"in s&&s instanceof Error&&(o=k(o),s=k(s)),\"deepStrictEqual\"===i||\"strictEqual\"===i)e=h.call(this,function(t,e,r){var i=\"\",a=\"\",o=0,s=\"\",l=!1,c=A(t),u=c.split(\"\\n\"),h=A(e).split(\"\\n\"),f=0,p=\"\";if(\"strictEqual\"===r&&\"object\"===m(t)&&\"object\"===m(e)&&null!==t&&null!==e&&(r=\"strictEqualObject\"),1===u.length&&1===h.length&&u[0]!==h[0]){var d=u[0].length+h[0].length;if(d<=10){if(!(\"object\"===m(t)&&null!==t||\"object\"===m(e)&&null!==e||0===t&&0===e))return\"\".concat(T[r],\"\\n\\n\")+\"\".concat(u[0],\" !== \").concat(h[0],\"\\n\")}else if(\"strictEqualObject\"!==r&&d<(n.stderr&&n.stderr.isTTY?n.stderr.columns:80)){for(;u[0][f]===h[0][f];)f++;f>2&&(p=\"\\n \".concat(function(t,e){if(e=Math.floor(e),0==t.length||0==e)return\"\";var r=t.length*e;for(e=Math.floor(Math.log(e)/Math.log(2));e;)t+=t,e--;return t+t.substring(0,r-t.length)}(\" \",f),\"^\"),f=0)}}for(var g=u[u.length-1],y=h[h.length-1];g===y&&(f++<2?s=\"\\n \".concat(g).concat(s):i=g,u.pop(),h.pop(),0!==u.length&&0!==h.length);)g=u[u.length-1],y=h[h.length-1];var k=Math.max(u.length,h.length);if(0===k){var M=c.split(\"\\n\");if(M.length>30)for(M[26]=\"\".concat(x,\"...\").concat(w);M.length>27;)M.pop();return\"\".concat(T.notIdentical,\"\\n\\n\").concat(M.join(\"\\n\"),\"\\n\")}f>3&&(s=\"\\n\".concat(x,\"...\").concat(w).concat(s),l=!0),\"\"!==i&&(s=\"\\n \".concat(i).concat(s),i=\"\");var S=0,E=T[r]+\"\\n\".concat(_,\"+ actual\").concat(w,\" \").concat(b,\"- expected\").concat(w),C=\" \".concat(x,\"...\").concat(w,\" Lines skipped\");for(f=0;f<k;f++){var L=f-o;if(u.length<f+1)L>1&&f>2&&(L>4?(a+=\"\\n\".concat(x,\"...\").concat(w),l=!0):L>3&&(a+=\"\\n \".concat(h[f-2]),S++),a+=\"\\n \".concat(h[f-1]),S++),o=f,i+=\"\\n\".concat(b,\"-\").concat(w,\" \").concat(h[f]),S++;else if(h.length<f+1)L>1&&f>2&&(L>4?(a+=\"\\n\".concat(x,\"...\").concat(w),l=!0):L>3&&(a+=\"\\n \".concat(u[f-2]),S++),a+=\"\\n \".concat(u[f-1]),S++),o=f,a+=\"\\n\".concat(_,\"+\").concat(w,\" \").concat(u[f]),S++;else{var I=h[f],P=u[f],z=P!==I&&(!v(P,\",\")||P.slice(0,-1)!==I);z&&v(I,\",\")&&I.slice(0,-1)===P&&(z=!1,P+=\",\"),z?(L>1&&f>2&&(L>4?(a+=\"\\n\".concat(x,\"...\").concat(w),l=!0):L>3&&(a+=\"\\n \".concat(u[f-2]),S++),a+=\"\\n \".concat(u[f-1]),S++),o=f,a+=\"\\n\".concat(_,\"+\").concat(w,\" \").concat(P),i+=\"\\n\".concat(b,\"-\").concat(w,\" \").concat(I),S+=2):(a+=i,i=\"\",1!==L&&0!==f||(a+=\"\\n \".concat(P),S++))}if(S>20&&f<k-2)return\"\".concat(E).concat(C,\"\\n\").concat(a,\"\\n\").concat(x,\"...\").concat(w).concat(i,\"\\n\")+\"\".concat(x,\"...\").concat(w)}return\"\".concat(E).concat(l?C:\"\",\"\\n\").concat(a).concat(i).concat(s).concat(p)}(o,s,i));else if(\"notDeepStrictEqual\"===i||\"notStrictEqual\"===i){var f=T[i],p=A(o).split(\"\\n\");if(\"notStrictEqual\"===i&&\"object\"===m(o)&&null!==o&&(f=T.notStrictEqualObject),p.length>30)for(p[26]=\"\".concat(x,\"...\").concat(w);p.length>27;)p.pop();e=1===p.length?h.call(this,\"\".concat(f,\" \").concat(p[0])):h.call(this,\"\".concat(f,\"\\n\\n\").concat(p.join(\"\\n\"),\"\\n\"))}else{var d=A(o),g=\"\",S=T[i];\"notDeepEqual\"===i||\"notEqual\"===i?(d=\"\".concat(T[i],\"\\n\\n\").concat(d)).length>1024&&(d=\"\".concat(d.slice(0,1021),\"...\")):(g=\"\".concat(A(s)),d.length>512&&(d=\"\".concat(d.slice(0,509),\"...\")),g.length>512&&(g=\"\".concat(g.slice(0,509),\"...\")),\"deepEqual\"===i||\"equal\"===i?d=\"\".concat(S,\"\\n\\n\").concat(d,\"\\n\\nshould equal\\n\\n\"):g=\" \".concat(i,\" \").concat(g)),e=h.call(this,\"\".concat(d).concat(g))}return Error.stackTraceLimit=u,e.generatedMessage=!r,Object.defineProperty(c(e),\"name\",{value:\"AssertionError [ERR_ASSERTION]\",enumerable:!1,writable:!0,configurable:!0}),e.code=\"ERR_ASSERTION\",e.actual=o,e.expected=s,e.operator=i,Error.captureStackTrace&&Error.captureStackTrace(c(e),a),e.stack,e.name=\"AssertionError\",l(e)}return s=M,(u=[{key:\"toString\",value:function(){return\"\".concat(this.name,\" [\").concat(this.code,\"]: \").concat(this.message)}},{key:e,value:function(t,e){return g(this,a(a({},e),{},{customInspect:!1,depth:0}))}}])&&o(s.prototype,u),Object.defineProperty(s,\"prototype\",{writable:!1}),M}(u(Error),g.custom);t.exports=M},34585:function(t,e,r){\"use strict\";function n(t){return n=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},n(t)}function i(t,e){return i=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},i(t,e)}function a(t){return a=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},a(t)}var o,s,l={};function c(t,e,r){r||(r=Error);var o=function(r){!function(t,e){if(\"function\"!=typeof e&&null!==e)throw new TypeError(\"Super expression must either be null or a function\");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,\"prototype\",{writable:!1}),e&&i(t,e)}(u,r);var o,s,l,c=(s=u,l=function(){if(\"undefined\"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if(\"function\"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}(),function(){var t,e=a(s);if(l){var r=a(this).constructor;t=Reflect.construct(e,arguments,r)}else t=e.apply(this,arguments);return function(t,e){if(e&&(\"object\"===n(e)||\"function\"==typeof e))return e;if(void 0!==e)throw new TypeError(\"Derived constructors may only return object or undefined\");return function(t){if(void 0===t)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return t}(t)}(this,t)});function u(r,n,i){var a;return function(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}(this,u),a=c.call(this,function(t,r,n){return\"string\"==typeof e?e:e(t,r,n)}(r,n,i)),a.code=t,a}return o=u,Object.defineProperty(o,\"prototype\",{writable:!1}),o}(r);l[t]=o}function u(t,e){if(Array.isArray(t)){var r=t.length;return t=t.map((function(t){return String(t)})),r>2?\"one of \".concat(e,\" \").concat(t.slice(0,r-1).join(\", \"),\", or \")+t[r-1]:2===r?\"one of \".concat(e,\" \").concat(t[0],\" or \").concat(t[1]):\"of \".concat(e,\" \").concat(t[0])}return\"of \".concat(e,\" \").concat(String(t))}c(\"ERR_AMBIGUOUS_ARGUMENT\",'The \"%s\" argument is ambiguous. %s',TypeError),c(\"ERR_INVALID_ARG_TYPE\",(function(t,e,i){var a,s,l,c,h;if(void 0===o&&(o=r(85672)),o(\"string\"==typeof t,\"'name' must be a string\"),\"string\"==typeof e&&(s=\"not \",e.substr(0,4)===s)?(a=\"must not be\",e=e.replace(/^not /,\"\")):a=\"must be\",function(t,e,r){return(void 0===r||r>t.length)&&(r=t.length),t.substring(r-9,r)===e}(t,\" argument\"))l=\"The \".concat(t,\" \").concat(a,\" \").concat(u(e,\"type\"));else{var f=(\"number\"!=typeof h&&(h=0),h+1>(c=t).length||-1===c.indexOf(\".\",h)?\"argument\":\"property\");l='The \"'.concat(t,'\" ').concat(f,\" \").concat(a,\" \").concat(u(e,\"type\"))}return l+\". Received type \".concat(n(i))}),TypeError),c(\"ERR_INVALID_ARG_VALUE\",(function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:\"is invalid\";void 0===s&&(s=r(56557));var i=s.inspect(e);return i.length>128&&(i=\"\".concat(i.slice(0,128),\"...\")),\"The argument '\".concat(t,\"' \").concat(n,\". Received \").concat(i)}),TypeError,RangeError),c(\"ERR_INVALID_RETURN_VALUE\",(function(t,e,r){var i;return i=r&&r.constructor&&r.constructor.name?\"instance of \".concat(r.constructor.name):\"type \".concat(n(r)),\"Expected \".concat(t,' to be returned from the \"').concat(e,'\"')+\" function but got \".concat(i,\".\")}),TypeError),c(\"ERR_MISSING_ARGS\",(function(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];void 0===o&&(o=r(85672)),o(e.length>0,\"At least one arg needs to be specified\");var i=\"The \",a=e.length;switch(e=e.map((function(t){return'\"'.concat(t,'\"')})),a){case 1:i+=\"\".concat(e[0],\" argument\");break;case 2:i+=\"\".concat(e[0],\" and \").concat(e[1],\" arguments\");break;default:i+=e.slice(0,a-1).join(\", \"),i+=\", and \".concat(e[a-1],\" arguments\")}return\"\".concat(i,\" must be specified\")}),TypeError),t.exports.codes=l},23879:function(t,e,r){\"use strict\";function n(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:\"undefined\"!=typeof Symbol&&t[Symbol.iterator]||t[\"@@iterator\"];if(null!=r){var n,i,a,o,s=[],l=!0,c=!1;try{if(a=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=a.call(r)).done)&&(s.push(n.value),s.length!==e);l=!0);}catch(t){c=!0,i=t}finally{try{if(!l&&null!=r.return&&(o=r.return(),Object(o)!==o))return}finally{if(c)throw i}}return s}}(t,e)||function(t,e){if(t){if(\"string\"==typeof t)return i(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return\"Object\"===r&&t.constructor&&(r=t.constructor.name),\"Map\"===r||\"Set\"===r?Array.from(t):\"Arguments\"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?i(t,e):void 0}}(t,e)||function(){throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function i(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}function a(t){return a=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},a(t)}var o=void 0!==/a/g.flags,s=function(t){var e=[];return t.forEach((function(t){return e.push(t)})),e},l=function(t){var e=[];return t.forEach((function(t,r){return e.push([r,t])})),e},c=Object.is?Object.is:r(13969),u=Object.getOwnPropertySymbols?Object.getOwnPropertySymbols:function(){return[]},h=Number.isNaN?Number.isNaN:r(63057);function f(t){return t.call.bind(t)}var p=f(Object.prototype.hasOwnProperty),d=f(Object.prototype.propertyIsEnumerable),m=f(Object.prototype.toString),g=r(56557).types,y=g.isAnyArrayBuffer,v=g.isArrayBufferView,x=g.isDate,_=g.isMap,b=g.isRegExp,w=g.isSet,T=g.isNativeError,k=g.isBoxedPrimitive,A=g.isNumberObject,M=g.isStringObject,S=g.isBooleanObject,E=g.isBigIntObject,C=g.isSymbolObject,L=g.isFloat32Array,I=g.isFloat64Array;function P(t){if(0===t.length||t.length>10)return!0;for(var e=0;e<t.length;e++){var r=t.charCodeAt(e);if(r<48||r>57)return!0}return 10===t.length&&t>=Math.pow(2,32)}function z(t){return Object.keys(t).filter(P).concat(u(t).filter(Object.prototype.propertyIsEnumerable.bind(t)))}function O(t,e){if(t===e)return 0;for(var r=t.length,n=e.length,i=0,a=Math.min(r,n);i<a;++i)if(t[i]!==e[i]){r=t[i],n=e[i];break}return r<n?-1:n<r?1:0}var D=0,R=1,F=2,B=3;function N(t,e,r,n){if(t===e)return 0!==t||!r||c(t,e);if(r){if(\"object\"!==a(t))return\"number\"==typeof t&&h(t)&&h(e);if(\"object\"!==a(e)||null===t||null===e)return!1;if(Object.getPrototypeOf(t)!==Object.getPrototypeOf(e))return!1}else{if(null===t||\"object\"!==a(t))return(null===e||\"object\"!==a(e))&&t==e;if(null===e||\"object\"!==a(e))return!1}var i,s,l,u,f=m(t);if(f!==m(e))return!1;if(Array.isArray(t)){if(t.length!==e.length)return!1;var p=z(t),d=z(e);return p.length===d.length&&U(t,e,r,n,R,p)}if(\"[object Object]\"===f&&(!_(t)&&_(e)||!w(t)&&w(e)))return!1;if(x(t)){if(!x(e)||Date.prototype.getTime.call(t)!==Date.prototype.getTime.call(e))return!1}else if(b(t)){if(!b(e)||(l=t,u=e,!(o?l.source===u.source&&l.flags===u.flags:RegExp.prototype.toString.call(l)===RegExp.prototype.toString.call(u))))return!1}else if(T(t)||t instanceof Error){if(t.message!==e.message||t.name!==e.name)return!1}else{if(v(t)){if(r||!L(t)&&!I(t)){if(!function(t,e){return t.byteLength===e.byteLength&&0===O(new Uint8Array(t.buffer,t.byteOffset,t.byteLength),new Uint8Array(e.buffer,e.byteOffset,e.byteLength))}(t,e))return!1}else if(!function(t,e){if(t.byteLength!==e.byteLength)return!1;for(var r=0;r<t.byteLength;r++)if(t[r]!==e[r])return!1;return!0}(t,e))return!1;var g=z(t),P=z(e);return g.length===P.length&&U(t,e,r,n,D,g)}if(w(t))return!(!w(e)||t.size!==e.size)&&U(t,e,r,n,F);if(_(t))return!(!_(e)||t.size!==e.size)&&U(t,e,r,n,B);if(y(t)){if(s=e,(i=t).byteLength!==s.byteLength||0!==O(new Uint8Array(i),new Uint8Array(s)))return!1}else if(k(t)&&!function(t,e){return A(t)?A(e)&&c(Number.prototype.valueOf.call(t),Number.prototype.valueOf.call(e)):M(t)?M(e)&&String.prototype.valueOf.call(t)===String.prototype.valueOf.call(e):S(t)?S(e)&&Boolean.prototype.valueOf.call(t)===Boolean.prototype.valueOf.call(e):E(t)?E(e)&&BigInt.prototype.valueOf.call(t)===BigInt.prototype.valueOf.call(e):C(e)&&Symbol.prototype.valueOf.call(t)===Symbol.prototype.valueOf.call(e)}(t,e))return!1}return U(t,e,r,n,D)}function j(t,e){return e.filter((function(e){return d(t,e)}))}function U(t,e,r,i,o,c){if(5===arguments.length){c=Object.keys(t);var h=Object.keys(e);if(c.length!==h.length)return!1}for(var f=0;f<c.length;f++)if(!p(e,c[f]))return!1;if(r&&5===arguments.length){var m=u(t);if(0!==m.length){var g=0;for(f=0;f<m.length;f++){var y=m[f];if(d(t,y)){if(!d(e,y))return!1;c.push(y),g++}else if(d(e,y))return!1}var v=u(e);if(m.length!==v.length&&j(e,v).length!==g)return!1}else{var x=u(e);if(0!==x.length&&0!==j(e,x).length)return!1}}if(0===c.length&&(o===D||o===R&&0===t.length||0===t.size))return!0;if(void 0===i)i={val1:new Map,val2:new Map,position:0};else{var _=i.val1.get(t);if(void 0!==_){var b=i.val2.get(e);if(void 0!==b)return _===b}i.position++}i.val1.set(t,i.position),i.val2.set(e,i.position);var w=function(t,e,r,i,o,c){var u=0;if(c===F){if(!function(t,e,r,n){for(var i=null,o=s(t),l=0;l<o.length;l++){var c=o[l];if(\"object\"===a(c)&&null!==c)null===i&&(i=new Set),i.add(c);else if(!e.has(c)){if(r)return!1;if(!H(t,e,c))return!1;null===i&&(i=new Set),i.add(c)}}if(null!==i){for(var u=s(e),h=0;h<u.length;h++){var f=u[h];if(\"object\"===a(f)&&null!==f){if(!V(i,f,r,n))return!1}else if(!r&&!t.has(f)&&!V(i,f,r,n))return!1}return 0===i.size}return!0}(t,e,r,o))return!1}else if(c===B){if(!function(t,e,r,i){for(var o=null,s=l(t),c=0;c<s.length;c++){var u=n(s[c],2),h=u[0],f=u[1];if(\"object\"===a(h)&&null!==h)null===o&&(o=new Set),o.add(h);else{var p=e.get(h);if(void 0===p&&!e.has(h)||!N(f,p,r,i)){if(r)return!1;if(!G(t,e,h,f,i))return!1;null===o&&(o=new Set),o.add(h)}}}if(null!==o){for(var d=l(e),m=0;m<d.length;m++){var g=n(d[m],2),y=g[0],v=g[1];if(\"object\"===a(y)&&null!==y){if(!Z(o,t,y,v,r,i))return!1}else if(!(r||t.has(y)&&N(t.get(y),v,!1,i)||Z(o,t,y,v,!1,i)))return!1}return 0===o.size}return!0}(t,e,r,o))return!1}else if(c===R)for(;u<t.length;u++){if(!p(t,u)){if(p(e,u))return!1;for(var h=Object.keys(t);u<h.length;u++){var f=h[u];if(!p(e,f)||!N(t[f],e[f],r,o))return!1}return h.length===Object.keys(e).length}if(!p(e,u)||!N(t[u],e[u],r,o))return!1}for(u=0;u<i.length;u++){var d=i[u];if(!N(t[d],e[d],r,o))return!1}return!0}(t,e,r,c,i,o);return i.val1.delete(t),i.val2.delete(e),w}function V(t,e,r,n){for(var i=s(t),a=0;a<i.length;a++){var o=i[a];if(N(e,o,r,n))return t.delete(o),!0}return!1}function q(t){switch(a(t)){case\"undefined\":return null;case\"object\":return;case\"symbol\":return!1;case\"string\":t=+t;case\"number\":if(h(t))return!1}return!0}function H(t,e,r){var n=q(r);return null!=n?n:e.has(n)&&!t.has(n)}function G(t,e,r,n,i){var a=q(r);if(null!=a)return a;var o=e.get(a);return!(void 0===o&&!e.has(a)||!N(n,o,!1,i))&&!t.has(a)&&N(n,o,!1,i)}function Z(t,e,r,n,i,a){for(var o=s(t),l=0;l<o.length;l++){var c=o[l];if(N(r,c,i,a)&&N(n,e.get(c),i,a))return t.delete(c),!0}return!1}t.exports={isDeepEqual:function(t,e){return N(t,e,!1)},isDeepStrictEqual:function(t,e){return N(t,e,!0)}}},93229:function(t,e,r){\"use strict\";r.r(e),r.d(e,{decode:function(){return s},encode:function(){return o}});for(var n=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\",i=\"undefined\"==typeof Uint8Array?[]:new Uint8Array(256),a=0;a<64;a++)i[n.charCodeAt(a)]=a;var o=function(t){var e,r=new Uint8Array(t),i=r.length,a=\"\";for(e=0;e<i;e+=3)a+=n[r[e]>>2],a+=n[(3&r[e])<<4|r[e+1]>>4],a+=n[(15&r[e+1])<<2|r[e+2]>>6],a+=n[63&r[e+2]];return i%3==2?a=a.substring(0,a.length-1)+\"=\":i%3==1&&(a=a.substring(0,a.length-2)+\"==\"),a},s=function(t){var e,r,n,a,o,s=.75*t.length,l=t.length,c=0;\"=\"===t[t.length-1]&&(s--,\"=\"===t[t.length-2]&&s--);var u=new ArrayBuffer(s),h=new Uint8Array(u);for(e=0;e<l;e+=4)r=i[t.charCodeAt(e)],n=i[t.charCodeAt(e+1)],a=i[t.charCodeAt(e+2)],o=i[t.charCodeAt(e+3)],h[c++]=r<<2|n>>4,h[c++]=(15&n)<<4|a>>2,h[c++]=(3&a)<<6|63&o;return u}},76226:function(t,e){\"use strict\";e.byteLength=function(t){var e=s(t),r=e[0],n=e[1];return 3*(r+n)/4-n},e.toByteArray=function(t){var e,r,a=s(t),o=a[0],l=a[1],c=new i(function(t,e,r){return 3*(e+r)/4-r}(0,o,l)),u=0,h=l>0?o-4:o;for(r=0;r<h;r+=4)e=n[t.charCodeAt(r)]<<18|n[t.charCodeAt(r+1)]<<12|n[t.charCodeAt(r+2)]<<6|n[t.charCodeAt(r+3)],c[u++]=e>>16&255,c[u++]=e>>8&255,c[u++]=255&e;return 2===l&&(e=n[t.charCodeAt(r)]<<2|n[t.charCodeAt(r+1)]>>4,c[u++]=255&e),1===l&&(e=n[t.charCodeAt(r)]<<10|n[t.charCodeAt(r+1)]<<4|n[t.charCodeAt(r+2)]>>2,c[u++]=e>>8&255,c[u++]=255&e),c},e.fromByteArray=function(t){for(var e,n=t.length,i=n%3,a=[],o=16383,s=0,c=n-i;s<c;s+=o)a.push(l(t,s,s+o>c?c:s+o));return 1===i?(e=t[n-1],a.push(r[e>>2]+r[e<<4&63]+\"==\")):2===i&&(e=(t[n-2]<<8)+t[n-1],a.push(r[e>>10]+r[e>>4&63]+r[e<<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(t){var e=t.length;if(e%4>0)throw new Error(\"Invalid string. Length must be a multiple of 4\");var r=t.indexOf(\"=\");return-1===r&&(r=e),[r,r===e?0:4-r%4]}function l(t,e,n){for(var i,a,o=[],s=e;s<n;s+=3)i=(t[s]<<16&16711680)+(t[s+1]<<8&65280)+(255&t[s+2]),o.push(r[(a=i)>>18&63]+r[a>>12&63]+r[a>>6&63]+r[63&a]);return o.join(\"\")}n[\"-\".charCodeAt(0)]=62,n[\"_\".charCodeAt(0)]=63},31625:function(t){\"use strict\";function e(t,e,r,n,i){for(var a=i+1;n<=i;){var o=n+i>>>1,s=t[o];(void 0!==r?r(s,e):s-e)>=0?(a=o,i=o-1):n=o+1}return a}function r(t,e,r,n,i){for(var a=i+1;n<=i;){var o=n+i>>>1,s=t[o];(void 0!==r?r(s,e):s-e)>0?(a=o,i=o-1):n=o+1}return a}function n(t,e,r,n,i){for(var a=n-1;n<=i;){var o=n+i>>>1,s=t[o];(void 0!==r?r(s,e):s-e)<0?(a=o,n=o+1):i=o-1}return a}function i(t,e,r,n,i){for(var a=n-1;n<=i;){var o=n+i>>>1,s=t[o];(void 0!==r?r(s,e):s-e)<=0?(a=o,n=o+1):i=o-1}return a}function a(t,e,r,n,i){for(;n<=i;){var a=n+i>>>1,o=t[a],s=void 0!==r?r(o,e):o-e;if(0===s)return a;s<=0?n=a+1:i=a-1}return-1}function o(t,e,r,n,i,a){return\"function\"==typeof r?a(t,e,r,void 0===n?0:0|n,void 0===i?t.length-1:0|i):a(t,e,void 0,void 0===r?0:0|r,void 0===n?t.length-1:0|n)}t.exports={ge:function(t,r,n,i,a){return o(t,r,n,i,a,e)},gt:function(t,e,n,i,a){return o(t,e,n,i,a,r)},lt:function(t,e,r,i,a){return o(t,e,r,i,a,n)},le:function(t,e,r,n,a){return o(t,e,r,n,a,i)},eq:function(t,e,r,n,i){return o(t,e,r,n,i,a)}}},54689:function(t,e){\"use strict\";function r(t){var e=32;return(t&=-t)&&e--,65535&t&&(e-=16),16711935&t&&(e-=8),252645135&t&&(e-=4),858993459&t&&(e-=2),1431655765&t&&(e-=1),e}e.INT_BITS=32,e.INT_MAX=2147483647,e.INT_MIN=-1<<31,e.sign=function(t){return(t>0)-(t<0)},e.abs=function(t){var e=t>>31;return(t^e)-e},e.min=function(t,e){return e^(t^e)&-(t<e)},e.max=function(t,e){return t^(t^e)&-(t<e)},e.isPow2=function(t){return!(t&t-1||!t)},e.log2=function(t){var e,r;return e=(t>65535)<<4,e|=r=((t>>>=e)>255)<<3,e|=r=((t>>>=r)>15)<<2,(e|=r=((t>>>=r)>3)<<1)|(t>>>=r)>>1},e.log10=function(t){return t>=1e9?9:t>=1e8?8:t>=1e7?7:t>=1e6?6:t>=1e5?5:t>=1e4?4:t>=1e3?3:t>=100?2:t>=10?1:0},e.popCount=function(t){return 16843009*((t=(858993459&(t-=t>>>1&1431655765))+(t>>>2&858993459))+(t>>>4)&252645135)>>>24},e.countTrailingZeros=r,e.nextPow2=function(t){return t+=0===t,--t,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,1+(t|=t>>>16)},e.prevPow2=function(t){return t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,(t|=t>>>16)-(t>>>1)},e.parity=function(t){return t^=t>>>16,t^=t>>>8,t^=t>>>4,27030>>>(t&=15)&1};var n=new Array(256);!function(t){for(var e=0;e<256;++e){var r=e,n=e,i=7;for(r>>>=1;r;r>>>=1)n<<=1,n|=1&r,--i;t[e]=n<<i&255}}(n),e.reverse=function(t){return n[255&t]<<24|n[t>>>8&255]<<16|n[t>>>16&255]<<8|n[t>>>24&255]},e.interleave2=function(t,e){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t&=65535)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e&=65535)|e<<8))|e<<4))|e<<2))|e<<1))<<1},e.deinterleave2=function(t,e){return(t=65535&((t=16711935&((t=252645135&((t=858993459&((t=t>>>e&1431655765)|t>>>1))|t>>>2))|t>>>4))|t>>>16))<<16>>16},e.interleave3=function(t,e,r){return t=1227133513&((t=3272356035&((t=251719695&((t=4278190335&((t&=1023)|t<<16))|t<<8))|t<<4))|t<<2),(t|=(e=1227133513&((e=3272356035&((e=251719695&((e=4278190335&((e&=1023)|e<<16))|e<<8))|e<<4))|e<<2))<<1)|(r=1227133513&((r=3272356035&((r=251719695&((r=4278190335&((r&=1023)|r<<16))|r<<8))|r<<4))|r<<2))<<2},e.deinterleave3=function(t,e){return(t=1023&((t=4278190335&((t=251719695&((t=3272356035&((t=t>>>e&1227133513)|t>>>2))|t>>>4))|t>>>8))|t>>>16))<<22>>22},e.nextCombination=function(t){var e=t|t-1;return e+1|(~e&-~e)-1>>>r(t)+1}},88772:function(t,e,r){\"use strict\";var n=r(75144);t.exports=function(t,e){e||(e={});var r,o,s,l,c,u,h,f,p,d,m,g=null==e.cutoff?.25:e.cutoff,y=null==e.radius?8:e.radius,v=e.channel||0;if(ArrayBuffer.isView(t)||Array.isArray(t)){if(!e.width||!e.height)throw Error(\"For raw data width and height should be provided by options\");r=e.width,o=e.height,l=t,u=e.stride?e.stride:Math.floor(t.length/r/o)}else window.HTMLCanvasElement&&t instanceof window.HTMLCanvasElement?(h=(f=t).getContext(\"2d\"),r=f.width,o=f.height,l=(p=h.getImageData(0,0,r,o)).data,u=4):window.CanvasRenderingContext2D&&t instanceof window.CanvasRenderingContext2D?(h=t,r=(f=t.canvas).width,o=f.height,l=(p=h.getImageData(0,0,r,o)).data,u=4):window.ImageData&&t instanceof window.ImageData&&(p=t,r=t.width,o=t.height,l=p.data,u=4);if(s=Math.max(r,o),window.Uint8ClampedArray&&l instanceof window.Uint8ClampedArray||window.Uint8Array&&l instanceof window.Uint8Array)for(c=l,l=Array(r*o),d=0,m=c.length;d<m;d++)l[d]=c[d*u+v]/255;else if(1!==u)throw Error(\"Raw data can have only 1 value per pixel\");var x=Array(r*o),_=Array(r*o),b=Array(s),w=Array(s),T=Array(s+1),k=Array(s);for(d=0,m=r*o;d<m;d++){var A=l[d];x[d]=1===A?0:0===A?i:Math.pow(Math.max(0,.5-A),2),_[d]=1===A?i:0===A?0:Math.pow(Math.max(0,A-.5),2)}a(x,r,o,b,w,k,T),a(_,r,o,b,w,k,T);var M=window.Float32Array?new Float32Array(r*o):new Array(r*o);for(d=0,m=r*o;d<m;d++)M[d]=n(1-((x[d]-_[d])/y+g),0,1);return M};var i=1e20;function a(t,e,r,n,i,a,s){for(var l=0;l<e;l++){for(var c=0;c<r;c++)n[c]=t[c*e+l];for(o(n,i,a,s,r),c=0;c<r;c++)t[c*e+l]=i[c]}for(c=0;c<r;c++){for(l=0;l<e;l++)n[l]=t[c*e+l];for(o(n,i,a,s,e),l=0;l<e;l++)t[c*e+l]=Math.sqrt(i[l])}}function o(t,e,r,n,a){r[0]=0,n[0]=-i,n[1]=+i;for(var o=1,s=0;o<a;o++){for(var l=(t[o]+o*o-(t[r[s]]+r[s]*r[s]))/(2*o-2*r[s]);l<=n[s];)s--,l=(t[o]+o*o-(t[r[s]]+r[s]*r[s]))/(2*o-2*r[s]);r[++s]=o,n[s]=l,n[s+1]=+i}for(o=0,s=0;o<a;o++){for(;n[s+1]<o;)s++;e[o]=(o-r[s])*(o-r[s])+t[r[s]]}}},63063:function(t,e,r){\"use strict\";var n=r(71129),i=r(87227),a=i(n(\"String.prototype.indexOf\"));t.exports=function(t,e){var r=n(t,!!e);return\"function\"==typeof r&&a(t,\".prototype.\")>-1?i(r):r}},87227:function(t,e,r){\"use strict\";var n=r(87547),i=r(71129),a=r(73285),o=r(48631),s=i(\"%Function.prototype.apply%\"),l=i(\"%Function.prototype.call%\"),c=i(\"%Reflect.apply%\",!0)||n.call(l,s),u=r(40891),h=i(\"%Math.max%\");t.exports=function(t){if(\"function\"!=typeof t)throw new o(\"a function is required\");var e=c(n,l,arguments);return a(e,1+h(0,t.length-(arguments.length-1)),!0)};var f=function(){return c(n,s,arguments)};u?u(t.exports,\"apply\",{value:f}):t.exports.apply=f},75144:function(t){t.exports=function(t,e,r){return e<r?t<e?e:t>r?r:t:t<r?r:t>e?e:t}},46762:function(t,e,r){\"use strict\";var n=r(75144);function i(t,e){null==e&&(e=!0);var r=t[0],i=t[1],a=t[2],o=t[3];return null==o&&(o=e?1:255),e&&(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)+(255&n(o,0,255))}t.exports=i,t.exports.to=i,t.exports.from=function(t,e){var r=(t=+t)>>>24,n=(16711680&t)>>>16,i=(65280&t)>>>8,a=255&t;return!1===e?[r,n,i,a]:[r/255,n/255,i/255,a/255]}},86040:function(t){\"use strict\";t.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}},162:function(t,e,r){\"use strict\";var n=r(16401),i=r(75144),a=r(10275);t.exports=function(t,e){\"float\"!==e&&e||(e=\"array\"),\"uint\"===e&&(e=\"uint8\"),\"uint_clamped\"===e&&(e=\"uint8_clamped\");var r=new(a(e))(4),o=\"uint8\"!==e&&\"uint8_clamped\"!==e;return t.length&&\"string\"!=typeof t||((t=n(t))[0]/=255,t[1]/=255,t[2]/=255),function(t){return t instanceof Uint8Array||t instanceof Uint8ClampedArray||!!(Array.isArray(t)&&(t[0]>1||0===t[0])&&(t[1]>1||0===t[1])&&(t[2]>1||0===t[2])&&(!t[3]||t[3]>1))}(t)?(r[0]=t[0],r[1]=t[1],r[2]=t[2],r[3]=null!=t[3]?t[3]:255,o&&(r[0]/=255,r[1]/=255,r[2]/=255,r[3]/=255),r):(o?(r[0]=t[0],r[1]=t[1],r[2]=t[2],r[3]=null!=t[3]?t[3]:1):(r[0]=i(Math.floor(255*t[0]),0,255),r[1]=i(Math.floor(255*t[1]),0,255),r[2]=i(Math.floor(255*t[2]),0,255),r[3]=null==t[3]?255:i(Math.floor(255*t[3]),0,255)),r)}},16401:function(t,e,r){\"use strict\";var n=r(10826),i=r(52132),a=r(75144);t.exports=function(t){var e,r=n(t);return r.space?((e=Array(3))[0]=a(r.values[0],0,255),e[1]=a(r.values[1],0,255),e[2]=a(r.values[2],0,255),\"h\"===r.space[0]&&(e=i.rgb(e)),e.push(a(r.alpha,0,1)),e):[]}},10826:function(t,e,r){\"use strict\";var n=r(86040);t.exports=function(t){var e,r,a=[],o=1;if(\"string\"==typeof t)if(t=t.toLowerCase(),n[t])a=n[t].slice(),r=\"rgb\";else if(\"transparent\"===t)o=0,r=\"rgb\",a=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(t)){var s=t.slice(1);o=1,(u=s.length)<=4?(a=[parseInt(s[0]+s[0],16),parseInt(s[1]+s[1],16),parseInt(s[2]+s[2],16)],4===u&&(o=parseInt(s[3]+s[3],16)/255)):(a=[parseInt(s[0]+s[1],16),parseInt(s[2]+s[3],16),parseInt(s[4]+s[5],16)],8===u&&(o=parseInt(s[6]+s[7],16)/255)),a[0]||(a[0]=0),a[1]||(a[1]=0),a[2]||(a[2]=0),r=\"rgb\"}else if(e=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\\s*\\(([^\\)]*)\\)/.exec(t)){var l=e[1],c=\"rgb\"===l;r=s=l.replace(/a$/,\"\");var u=\"cmyk\"===s?4:\"gray\"===s?1:3;a=e[2].trim().split(/\\s*[,\\/]\\s*|\\s+/).map((function(t,e){if(/%$/.test(t))return e===u?parseFloat(t)/100:\"rgb\"===s?255*parseFloat(t)/100:parseFloat(t);if(\"h\"===s[e]){if(/deg$/.test(t))return parseFloat(t);if(void 0!==i[t])return i[t]}return parseFloat(t)})),l===s&&a.push(1),o=c||void 0===a[u]?1:a[u],a=a.slice(0,u)}else t.length>10&&/[0-9](?:\\s|\\/)/.test(t)&&(a=t.match(/([0-9]+)/g).map((function(t){return parseFloat(t)})),r=t.match(/([a-z])/gi).join(\"\").toLowerCase());else isNaN(t)?Array.isArray(t)||t.length?(a=[t[0],t[1],t[2]],r=\"rgb\",o=4===t.length?t[3]:1):t instanceof Object&&(null!=t.r||null!=t.red||null!=t.R?(r=\"rgb\",a=[t.r||t.red||t.R||0,t.g||t.green||t.G||0,t.b||t.blue||t.B||0]):(r=\"hsl\",a=[t.h||t.hue||t.H||0,t.s||t.saturation||t.S||0,t.l||t.lightness||t.L||t.b||t.brightness]),o=t.a||t.alpha||t.opacity||1,null!=t.opacity&&(o/=100)):(r=\"rgb\",a=[t>>>16,(65280&t)>>>8,255&t]);return{space:r,values:a,alpha:o}};var i={red:0,orange:60,yellow:120,green:180,blue:240,purple:300}},52132:function(t,e,r){\"use strict\";var n=r(10520);t.exports={name:\"hsl\",min:[0,0,0],max:[360,100,100],channel:[\"hue\",\"saturation\",\"lightness\"],alias:[\"HSL\"],rgb:function(t){var e,r,n,i,a,o=t[0]/360,s=t[1]/100,l=t[2]/100;if(0===s)return[a=255*l,a,a];e=2*l-(r=l<.5?l*(1+s):l+s-l*s),i=[0,0,0];for(var c=0;c<3;c++)(n=o+1/3*-(c-1))<0?n++:n>1&&n--,a=6*n<1?e+6*(r-e)*n:2*n<1?r:3*n<2?e+(r-e)*(2/3-n)*6:e,i[c]=255*a;return i}},n.hsl=function(t){var e,r,n=t[0]/255,i=t[1]/255,a=t[2]/255,o=Math.min(n,i,a),s=Math.max(n,i,a),l=s-o;return s===o?e=0:n===s?e=(i-a)/l:i===s?e=2+(a-n)/l:a===s&&(e=4+(n-i)/l),(e=Math.min(60*e,360))<0&&(e+=360),r=(o+s)/2,[e,100*(s===o?0:r<=.5?l/(s+o):l/(2-s-o)),100*r]}},10520:function(t){\"use strict\";t.exports={name:\"rgb\",min:[0,0,0],max:[255,255,255],channel:[\"red\",\"green\",\"blue\"],alias:[\"RGB\"]}},78171:function(t){t.exports={AFG:\"afghan\",ALA:\"\\\\b\\\\wland\",ALB:\"albania\",DZA:\"algeria\",ASM:\"^(?=.*americ).*samoa\",AND:\"andorra\",AGO:\"angola\",AIA:\"anguill?a\",ATA:\"antarctica\",ATG:\"antigua\",ARG:\"argentin\",ARM:\"armenia\",ABW:\"^(?!.*bonaire).*\\\\baruba\",AUS:\"australia\",AUT:\"^(?!.*hungary).*austria|\\\\baustri.*\\\\bemp\",AZE:\"azerbaijan\",BHS:\"bahamas\",BHR:\"bahrain\",BGD:\"bangladesh|^(?=.*east).*paki?stan\",BRB:\"barbados\",BLR:\"belarus|byelo\",BEL:\"^(?!.*luxem).*belgium\",BLZ:\"belize|^(?=.*british).*honduras\",BEN:\"benin|dahome\",BMU:\"bermuda\",BTN:\"bhutan\",BOL:\"bolivia\",BES:\"^(?=.*bonaire).*eustatius|^(?=.*carib).*netherlands|\\\\bbes.?islands\",BIH:\"herzegovina|bosnia\",BWA:\"botswana|bechuana\",BVT:\"bouvet\",BRA:\"brazil\",IOT:\"british.?indian.?ocean\",BRN:\"brunei\",BGR:\"bulgaria\",BFA:\"burkina|\\\\bfaso|upper.?volta\",BDI:\"burundi\",CPV:\"verde\",KHM:\"cambodia|kampuchea|khmer\",CMR:\"cameroon\",CAN:\"canada\",CYM:\"cayman\",CAF:\"\\\\bcentral.african.republic\",TCD:\"\\\\bchad\",CHL:\"\\\\bchile\",CHN:\"^(?!.*\\\\bmac)(?!.*\\\\bhong)(?!.*\\\\btai)(?!.*\\\\brep).*china|^(?=.*peo)(?=.*rep).*china\",CXR:\"christmas\",CCK:\"\\\\bcocos|keeling\",COL:\"colombia\",COM:\"comoro\",COG:\"^(?!.*\\\\bdem)(?!.*\\\\bd[\\\\.]?r)(?!.*kinshasa)(?!.*zaire)(?!.*belg)(?!.*l.opoldville)(?!.*free).*\\\\bcongo\",COK:\"\\\\bcook\",CRI:\"costa.?rica\",CIV:\"ivoire|ivory\",HRV:\"croatia\",CUB:\"\\\\bcuba\",CUW:\"^(?!.*bonaire).*\\\\bcura(c|ç)ao\",CYP:\"cyprus\",CSK:\"czechoslovakia\",CZE:\"^(?=.*rep).*czech|czechia|bohemia\",COD:\"\\\\bdem.*congo|congo.*\\\\bdem|congo.*\\\\bd[\\\\.]?r|\\\\bd[\\\\.]?r.*congo|belgian.?congo|congo.?free.?state|kinshasa|zaire|l.opoldville|drc|droc|rdc\",DNK:\"denmark\",DJI:\"djibouti\",DMA:\"dominica(?!n)\",DOM:\"dominican.rep\",ECU:\"ecuador\",EGY:\"egypt\",SLV:\"el.?salvador\",GNQ:\"guine.*eq|eq.*guine|^(?=.*span).*guinea\",ERI:\"eritrea\",EST:\"estonia\",ETH:\"ethiopia|abyssinia\",FLK:\"falkland|malvinas\",FRO:\"faroe|faeroe\",FJI:\"fiji\",FIN:\"finland\",FRA:\"^(?!.*\\\\bdep)(?!.*martinique).*france|french.?republic|\\\\bgaul\",GUF:\"^(?=.*french).*guiana\",PYF:\"french.?polynesia|tahiti\",ATF:\"french.?southern\",GAB:\"gabon\",GMB:\"gambia\",GEO:\"^(?!.*south).*georgia\",DDR:\"german.?democratic.?republic|democratic.?republic.*germany|east.germany\",DEU:\"^(?!.*east).*germany|^(?=.*\\\\bfed.*\\\\brep).*german\",GHA:\"ghana|gold.?coast\",GIB:\"gibraltar\",GRC:\"greece|hellenic|hellas\",GRL:\"greenland\",GRD:\"grenada\",GLP:\"guadeloupe\",GUM:\"\\\\bguam\",GTM:\"guatemala\",GGY:\"guernsey\",GIN:\"^(?!.*eq)(?!.*span)(?!.*bissau)(?!.*portu)(?!.*new).*guinea\",GNB:\"bissau|^(?=.*portu).*guinea\",GUY:\"guyana|british.?guiana\",HTI:\"haiti\",HMD:\"heard.*mcdonald\",VAT:\"holy.?see|vatican|papal.?st\",HND:\"^(?!.*brit).*honduras\",HKG:\"hong.?kong\",HUN:\"^(?!.*austr).*hungary\",ISL:\"iceland\",IND:\"india(?!.*ocea)\",IDN:\"indonesia\",IRN:\"\\\\biran|persia\",IRQ:\"\\\\biraq|mesopotamia\",IRL:\"(^ireland)|(^republic.*ireland)\",IMN:\"^(?=.*isle).*\\\\bman\",ISR:\"israel\",ITA:\"italy\",JAM:\"jamaica\",JPN:\"japan\",JEY:\"jersey\",JOR:\"jordan\",KAZ:\"kazak\",KEN:\"kenya|british.?east.?africa|east.?africa.?prot\",KIR:\"kiribati\",PRK:\"^(?=.*democrat|people|north|d.*p.*.r).*\\\\bkorea|dprk|korea.*(d.*p.*r)\",KWT:\"kuwait\",KGZ:\"kyrgyz|kirghiz\",LAO:\"\\\\blaos?\\\\b\",LVA:\"latvia\",LBN:\"lebanon\",LSO:\"lesotho|basuto\",LBR:\"liberia\",LBY:\"libya\",LIE:\"liechtenstein\",LTU:\"lithuania\",LUX:\"^(?!.*belg).*luxem\",MAC:\"maca(o|u)\",MDG:\"madagascar|malagasy\",MWI:\"malawi|nyasa\",MYS:\"malaysia\",MDV:\"maldive\",MLI:\"\\\\bmali\\\\b\",MLT:\"\\\\bmalta\",MHL:\"marshall\",MTQ:\"martinique\",MRT:\"mauritania\",MUS:\"mauritius\",MYT:\"\\\\bmayotte\",MEX:\"\\\\bmexic\",FSM:\"fed.*micronesia|micronesia.*fed\",MCO:\"monaco\",MNG:\"mongolia\",MNE:\"^(?!.*serbia).*montenegro\",MSR:\"montserrat\",MAR:\"morocco|\\\\bmaroc\",MOZ:\"mozambique\",MMR:\"myanmar|burma\",NAM:\"namibia\",NRU:\"nauru\",NPL:\"nepal\",NLD:\"^(?!.*\\\\bant)(?!.*\\\\bcarib).*netherlands\",ANT:\"^(?=.*\\\\bant).*(nether|dutch)\",NCL:\"new.?caledonia\",NZL:\"new.?zealand\",NIC:\"nicaragua\",NER:\"\\\\bniger(?!ia)\",NGA:\"nigeria\",NIU:\"niue\",NFK:\"norfolk\",MNP:\"mariana\",NOR:\"norway\",OMN:\"\\\\boman|trucial\",PAK:\"^(?!.*east).*paki?stan\",PLW:\"palau\",PSE:\"palestin|\\\\bgaza|west.?bank\",PAN:\"panama\",PNG:\"papua|new.?guinea\",PRY:\"paraguay\",PER:\"peru\",PHL:\"philippines\",PCN:\"pitcairn\",POL:\"poland\",PRT:\"portugal\",PRI:\"puerto.?rico\",QAT:\"qatar\",KOR:\"^(?!.*d.*p.*r)(?!.*democrat)(?!.*people)(?!.*north).*\\\\bkorea(?!.*d.*p.*r)\",MDA:\"moldov|b(a|e)ssarabia\",REU:\"r(e|é)union\",ROU:\"r(o|u|ou)mania\",RUS:\"\\\\brussia|soviet.?union|u\\\\.?s\\\\.?s\\\\.?r|socialist.?republics\",RWA:\"rwanda\",BLM:\"barth(e|é)lemy\",SHN:\"helena\",KNA:\"kitts|\\\\bnevis\",LCA:\"\\\\blucia\",MAF:\"^(?=.*collectivity).*martin|^(?=.*france).*martin(?!ique)|^(?=.*french).*martin(?!ique)\",SPM:\"miquelon\",VCT:\"vincent\",WSM:\"^(?!.*amer).*samoa\",SMR:\"san.?marino\",STP:\"\\\\bs(a|ã)o.?tom(e|é)\",SAU:\"\\\\bsa\\\\w*.?arabia\",SEN:\"senegal\",SRB:\"^(?!.*monte).*serbia\",SYC:\"seychell\",SLE:\"sierra\",SGP:\"singapore\",SXM:\"^(?!.*martin)(?!.*saba).*maarten\",SVK:\"^(?!.*cze).*slovak\",SVN:\"slovenia\",SLB:\"solomon\",SOM:\"somali\",ZAF:\"south.africa|s\\\\\\\\..?africa\",SGS:\"south.?georgia|sandwich\",SSD:\"\\\\bs\\\\w*.?sudan\",ESP:\"spain\",LKA:\"sri.?lanka|ceylon\",SDN:\"^(?!.*\\\\bs(?!u)).*sudan\",SUR:\"surinam|dutch.?guiana\",SJM:\"svalbard\",SWZ:\"swaziland\",SWE:\"sweden\",CHE:\"switz|swiss\",SYR:\"syria\",TWN:\"taiwan|taipei|formosa|^(?!.*peo)(?=.*rep).*china\",TJK:\"tajik\",THA:\"thailand|\\\\bsiam\",MKD:\"macedonia|fyrom\",TLS:\"^(?=.*leste).*timor|^(?=.*east).*timor\",TGO:\"togo\",TKL:\"tokelau\",TON:\"tonga\",TTO:\"trinidad|tobago\",TUN:\"tunisia\",TUR:\"turkey\",TKM:\"turkmen\",TCA:\"turks\",TUV:\"tuvalu\",UGA:\"uganda\",UKR:\"ukrain\",ARE:\"emirates|^u\\\\.?a\\\\.?e\\\\.?$|united.?arab.?em\",GBR:\"united.?kingdom|britain|^u\\\\.?k\\\\.?$\",TZA:\"tanzania\",USA:\"united.?states\\\\b(?!.*islands)|\\\\bu\\\\.?s\\\\.?a\\\\.?\\\\b|^\\\\s*u\\\\.?s\\\\.?\\\\b(?!.*islands)\",UMI:\"minor.?outlying.?is\",URY:\"uruguay\",UZB:\"uzbek\",VUT:\"vanuatu|new.?hebrides\",VEN:\"venezuela\",VNM:\"^(?!.*republic).*viet.?nam|^(?=.*socialist).*viet.?nam\",VGB:\"^(?=.*\\\\bu\\\\.?\\\\s?k).*virgin|^(?=.*brit).*virgin|^(?=.*kingdom).*virgin\",VIR:\"^(?=.*\\\\bu\\\\.?\\\\s?s).*virgin|^(?=.*states).*virgin\",WLF:\"futuna|wallis\",ESH:\"western.sahara\",YEM:\"^(?!.*arab)(?!.*north)(?!.*sana)(?!.*peo)(?!.*dem)(?!.*south)(?!.*aden)(?!.*\\\\bp\\\\.?d\\\\.?r).*yemen\",YMD:\"^(?=.*peo).*yemen|^(?!.*rep)(?=.*dem).*yemen|^(?=.*south).*yemen|^(?=.*aden).*yemen|^(?=.*\\\\bp\\\\.?d\\\\.?r).*yemen\",YUG:\"yugoslavia\",ZMB:\"zambia|northern.?rhodesia\",EAZ:\"zanzibar\",ZWE:\"zimbabwe|^(?!.*northern).*rhodesia\"}},59518:function(t,e,r){\"use strict\";t.exports={parse:r(86029),stringify:r(38211)}},87724:function(t,e,r){\"use strict\";var n=r(23648);t.exports={isSize:function(t){return/^[\\d\\.]/.test(t)||-1!==t.indexOf(\"/\")||-1!==n.indexOf(t)}}},86029:function(t,e,r){\"use strict\";var n=r(80886),i=r(54324),a=r(94316),o=r(99803),s=r(87486),l=r(2362),c=r(28089),u=r(87724).isSize;t.exports=f;var h=f.cache={};function f(t){if(\"string\"!=typeof t)throw new Error(\"Font argument must be a string.\");if(h[t])return h[t];if(\"\"===t)throw new Error(\"Cannot parse an empty string.\");if(-1!==a.indexOf(t))return h[t]={system:t};for(var e,r={style:\"normal\",variant:\"normal\",weight:\"normal\",stretch:\"normal\",lineHeight:\"normal\",size:\"1rem\",family:[\"serif\"]},f=c(t,/\\s+/);e=f.shift();){if(-1!==i.indexOf(e))return[\"style\",\"variant\",\"weight\",\"stretch\"].forEach((function(t){r[t]=e})),h[t]=r;if(-1===s.indexOf(e))if(\"normal\"!==e&&\"small-caps\"!==e)if(-1===l.indexOf(e)){if(-1===o.indexOf(e)){if(u(e)){var d=c(e,\"/\");if(r.size=d[0],null!=d[1]?r.lineHeight=p(d[1]):\"/\"===f[0]&&(f.shift(),r.lineHeight=p(f.shift())),!f.length)throw new Error(\"Missing required font-family.\");return r.family=c(f.join(\" \"),/\\s*,\\s*/).map(n),h[t]=r}throw new Error(\"Unknown or unsupported font token: \"+e)}r.weight=e}else r.stretch=e;else r.variant=e;else r.style=e}throw new Error(\"Missing required font-size.\")}function p(t){var e=parseFloat(t);return e.toString()===t?e:t}},38211:function(t,e,r){\"use strict\";var n=r(6807),i=r(87724).isSize,a=d(r(54324)),o=d(r(94316)),s=d(r(99803)),l=d(r(87486)),c=d(r(2362)),u={normal:1,\"small-caps\":1},h={serif:1,\"sans-serif\":1,monospace:1,cursive:1,fantasy:1,\"system-ui\":1},f=\"serif\";function p(t,e){if(t&&!e[t]&&!a[t])throw Error(\"Unknown keyword `\"+t+\"`\");return t}function d(t){for(var e={},r=0;r<t.length;r++)e[t[r]]=1;return e}t.exports=function(t){if((t=n(t,{style:\"style fontstyle fontStyle font-style slope distinction\",variant:\"variant font-variant fontVariant fontvariant var capitalization\",weight:\"weight w font-weight fontWeight fontweight\",stretch:\"stretch font-stretch fontStretch fontstretch width\",size:\"size s font-size fontSize fontsize height em emSize\",lineHeight:\"lh line-height lineHeight lineheight leading\",family:\"font family fontFamily font-family fontfamily type typeface face\",system:\"system reserved default global\"})).system)return t.system&&p(t.system,o),t.system;if(p(t.style,l),p(t.variant,u),p(t.weight,s),p(t.stretch,c),null==t.size&&(t.size=\"1rem\"),\"number\"==typeof t.size&&(t.size+=\"px\"),!i)throw Error(\"Bad size value `\"+t.size+\"`\");t.family||(t.family=f),Array.isArray(t.family)&&(t.family.length||(t.family=[f]),t.family=t.family.map((function(t){return h[t]?t:'\"'+t+'\"'})).join(\", \"));var e=[];return e.push(t.style),t.variant!==t.style&&e.push(t.variant),t.weight!==t.variant&&t.weight!==t.style&&e.push(t.weight),t.stretch!==t.weight&&t.stretch!==t.variant&&t.stretch!==t.style&&e.push(t.stretch),e.push(t.size+(null==t.lineHeight||\"normal\"===t.lineHeight||t.lineHeight+\"\"==\"1\"?\"\":\"/\"+t.lineHeight)),e.push(t.family),e.filter(Boolean).join(\" \")}},51070:function(t){\"use strict\";t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var r=\"\",n=void 0!==e[5];return e[4]&&(r+=\"@supports (\".concat(e[4],\") {\")),e[2]&&(r+=\"@media \".concat(e[2],\" {\")),n&&(r+=\"@layer\".concat(e[5].length>0?\" \".concat(e[5]):\"\",\" {\")),r+=t(e),n&&(r+=\"}\"),e[2]&&(r+=\"}\"),e[4]&&(r+=\"}\"),r})).join(\"\")},e.i=function(t,r,n,i,a){\"string\"==typeof t&&(t=[[null,t,void 0]]);var o={};if(n)for(var s=0;s<this.length;s++){var l=this[s][0];null!=l&&(o[l]=!0)}for(var c=0;c<t.length;c++){var u=[].concat(t[c]);n&&o[u[0]]||(void 0!==a&&(void 0===u[5]||(u[1]=\"@layer\".concat(u[5].length>0?\" \".concat(u[5]):\"\",\" {\").concat(u[1],\"}\")),u[5]=a),r&&(u[2]?(u[1]=\"@media \".concat(u[2],\" {\").concat(u[1],\"}\"),u[2]=r):u[2]=r),i&&(u[4]?(u[1]=\"@supports (\".concat(u[4],\") {\").concat(u[1],\"}\"),u[4]=i):u[4]=\"\".concat(i)),e.push(u))}},e}},62133:function(t){\"use strict\";t.exports=function(t,e){return e||(e={}),t?(t=String(t.__esModule?t.default:t),/^['\"].*['\"]$/.test(t)&&(t=t.slice(1,-1)),e.hash&&(t+=e.hash),/[\"'() \\t\\n]|(%20)/.test(t)||e.needQuotes?'\"'.concat(t.replace(/\"/g,'\\\\\"').replace(/\\n/g,\"\\\\n\"),'\"'):t):t}},22413:function(t){\"use strict\";t.exports=function(t){return t[1]}},84510:function(t,e,r){\"use strict\";var n,i=r(80299),a=r(9557),o=r(6887),s=r(86591),l=r(76504),c=r(29854),u=Function.prototype.bind,h=Object.defineProperty,f=Object.prototype.hasOwnProperty;n=function(t,e,r){var n,i=a(e)&&o(e.value);return delete(n=s(e)).writable,delete n.value,n.get=function(){return!r.overwriteDefinition&&f.call(this,t)?i:(e.value=u.call(i,r.resolveContext?r.resolveContext(this):this),h(this,t,e),this[t])},n},t.exports=function(t){var e=l(arguments[1]);return i(e.resolveContext)&&o(e.resolveContext),c(t,(function(t,r){return n(r,t,e)}))}},91819:function(t,e,r){\"use strict\";var n=r(80299),i=r(63461),a=r(1920),o=r(76504),s=r(2338),l=t.exports=function(t,e){var r,i,l,c,u;return arguments.length<2||\"string\"!=typeof t?(c=e,e=t,t=null):c=arguments[2],n(t)?(r=s.call(t,\"c\"),i=s.call(t,\"e\"),l=s.call(t,\"w\")):(r=l=!0,i=!1),u={value:e,configurable:r,enumerable:i,writable:l},c?a(o(c),u):u};l.gs=function(t,e,r){var l,c,u,h;return\"string\"!=typeof t?(u=r,r=e,e=t,t=null):u=arguments[3],n(e)?i(e)?n(r)?i(r)||(u=r,r=void 0):r=void 0:(u=e,e=r=void 0):e=void 0,n(t)?(l=s.call(t,\"c\"),c=s.call(t,\"e\")):(l=!0,c=!1),h={get:e,set:r,configurable:l,enumerable:c},u?a(o(u),h):h}},29725:function(t,e,r){\"use strict\";function n(t,e){return t<e?-1:t>e?1:t>=e?0:NaN}r.d(e,{V_:function(){return n},T9:function(){return s},i2:function(){return c},Am:function(){return u},jk:function(){return h},y1:function(){return f},cz:function(){return p}}),1===(i=n).length&&(a=i,i=function(t,e){return n(a(t),e)});var i,a,o=Array.prototype;function s(t,e){var r,n,i=t.length,a=-1;if(null==e){for(;++a<i;)if(null!=(r=t[a])&&r>=r)for(n=r;++a<i;)null!=(r=t[a])&&r>n&&(n=r)}else for(;++a<i;)if(null!=(r=e(t[a],a,t))&&r>=r)for(n=r;++a<i;)null!=(r=e(t[a],a,t))&&r>n&&(n=r);return n}function l(t){return null===t?NaN:+t}function c(t,e){var r,n=t.length,i=n,a=-1,o=0;if(null==e)for(;++a<n;)isNaN(r=l(t[a]))?--i:o+=r;else for(;++a<n;)isNaN(r=l(e(t[a],a,t)))?--i:o+=r;if(i)return o/i}function u(t){for(var e,r,n,i=t.length,a=-1,o=0;++a<i;)o+=t[a].length;for(r=new Array(o);--i>=0;)for(e=(n=t[i]).length;--e>=0;)r[--o]=n[e];return r}function h(t,e){var r,n,i=t.length,a=-1;if(null==e){for(;++a<i;)if(null!=(r=t[a])&&r>=r)for(n=r;++a<i;)null!=(r=t[a])&&n>r&&(n=r)}else for(;++a<i;)if(null!=(r=e(t[a],a,t))&&r>=r)for(n=r;++a<i;)null!=(r=e(t[a],a,t))&&n>r&&(n=r);return n}function f(t,e,r){t=+t,e=+e,r=(i=arguments.length)<2?(e=t,t=0,1):i<3?1:+r;for(var n=-1,i=0|Math.max(0,Math.ceil((e-t)/r)),a=new Array(i);++n<i;)a[n]=t+n*r;return a}function p(t,e){var r,n=t.length,i=-1,a=0;if(null==e)for(;++i<n;)(r=+t[i])&&(a+=r);else for(;++i<n;)(r=+e(t[i],i,t))&&(a+=r);return a}o.slice,o.map,Math.sqrt(50),Math.sqrt(10),Math.sqrt(2)},4575:function(t,e,r){\"use strict\";r.d(e,{Tj:function(){return o},$I:function(){return s}});var n=\"$\";function i(){}function a(t,e){var r=new i;if(t instanceof i)t.each((function(t,e){r.set(e,t)}));else if(Array.isArray(t)){var n,a=-1,o=t.length;if(null==e)for(;++a<o;)r.set(a,t[a]);else for(;++a<o;)r.set(e(n=t[a],a,t),n)}else if(t)for(var s in t)r.set(s,t[s]);return r}i.prototype=a.prototype={constructor:i,has:function(t){return n+t in this},get:function(t){return this[n+t]},set:function(t,e){return this[n+t]=e,this},remove:function(t){var e=n+t;return e in this&&delete this[e]},clear:function(){for(var t in this)t[0]===n&&delete this[t]},keys:function(){var t=[];for(var e in this)e[0]===n&&t.push(e.slice(1));return t},values:function(){var t=[];for(var e in this)e[0]===n&&t.push(this[e]);return t},entries:function(){var t=[];for(var e in this)e[0]===n&&t.push({key:e.slice(1),value:this[e]});return t},size:function(){var t=0;for(var e in this)e[0]===n&&++t;return t},empty:function(){for(var t in this)if(t[0]===n)return!1;return!0},each:function(t){for(var e in this)e[0]===n&&t(this[e],e.slice(1),this)}};var o=a;function s(){var t,e,r,n=[],i=[];function a(r,i,s,l){if(i>=n.length)return null!=t&&r.sort(t),null!=e?e(r):r;for(var c,u,h,f=-1,p=r.length,d=n[i++],m=o(),g=s();++f<p;)(h=m.get(c=d(u=r[f])+\"\"))?h.push(u):m.set(c,[u]);return m.each((function(t,e){l(g,e,a(t,i,s,l))})),g}function s(t,r){if(++r>n.length)return t;var a,o=i[r-1];return null!=e&&r>=n.length?a=t.entries():(a=[],t.each((function(t,e){a.push({key:e,values:s(t,r)})}))),null!=o?a.sort((function(t,e){return o(t.key,e.key)})):a}return r={object:function(t){return a(t,0,l,c)},map:function(t){return a(t,0,u,h)},entries:function(t){return s(a(t,0,u,h),0)},key:function(t){return n.push(t),r},sortKeys:function(t){return i[n.length-1]=t,r},sortValues:function(e){return t=e,r},rollup:function(t){return e=t,r}}}function l(){return{}}function c(t,e,r){t[e]=r}function u(){return o()}function h(t,e,r){t.set(e,r)}function f(){}var p=o.prototype;f.prototype=function(t,e){var r=new f;if(t instanceof f)t.each((function(t){r.add(t)}));else if(t){var n=-1,i=t.length;if(null==e)for(;++n<i;)r.add(t[n]);else for(;++n<i;)r.add(e(t[n],n,t))}return r}.prototype={constructor:f,has:p.has,add:function(t){return this[n+(t+=\"\")]=t,this},remove:p.remove,clear:p.clear,values:p.keys,size:p.size,empty:p.empty,each:p.each}},32702:function(t,e,r){\"use strict\";function n(t,e){var r;function n(){var n,i,a=r.length,o=0,s=0;for(n=0;n<a;++n)o+=(i=r[n]).x,s+=i.y;for(o=o/a-t,s=s/a-e,n=0;n<a;++n)(i=r[n]).x-=o,i.y-=s}return null==t&&(t=0),null==e&&(e=0),n.initialize=function(t){r=t},n.x=function(e){return arguments.length?(t=+e,n):t},n.y=function(t){return arguments.length?(e=+t,n):e},n}function i(t){return function(){return t}}function a(){return 1e-6*(Math.random()-.5)}function o(t,e,r,n){if(isNaN(e)||isNaN(r))return t;var i,a,o,s,l,c,u,h,f,p=t._root,d={data:n},m=t._x0,g=t._y0,y=t._x1,v=t._y1;if(!p)return t._root=d,t;for(;p.length;)if((c=e>=(a=(m+y)/2))?m=a:y=a,(u=r>=(o=(g+v)/2))?g=o:v=o,i=p,!(p=p[h=u<<1|c]))return i[h]=d,t;if(s=+t._x.call(null,p.data),l=+t._y.call(null,p.data),e===s&&r===l)return d.next=p,i?i[h]=d:t._root=d,t;do{i=i?i[h]=new Array(4):t._root=new Array(4),(c=e>=(a=(m+y)/2))?m=a:y=a,(u=r>=(o=(g+v)/2))?g=o:v=o}while((h=u<<1|c)==(f=(l>=o)<<1|s>=a));return i[f]=p,i[h]=d,t}function s(t,e,r,n,i){this.node=t,this.x0=e,this.y0=r,this.x1=n,this.y1=i}function l(t){return t[0]}function c(t){return t[1]}function u(t,e,r){var n=new h(null==e?l:e,null==r?c:r,NaN,NaN,NaN,NaN);return null==t?n:n.addAll(t)}function h(t,e,r,n,i,a){this._x=t,this._y=e,this._x0=r,this._y0=n,this._x1=i,this._y1=a,this._root=void 0}function f(t){for(var e={data:t.data},r=e;t=t.next;)r=r.next={data:t.data};return e}r.r(e),r.d(e,{forceCenter:function(){return n},forceCollide:function(){return g},forceLink:function(){return _},forceManyBody:function(){return $},forceRadial:function(){return J},forceSimulation:function(){return X},forceX:function(){return K},forceY:function(){return Q}});var p=u.prototype=h.prototype;function d(t){return t.x+t.vx}function m(t){return t.y+t.vy}function g(t){var e,r,n=1,o=1;function s(){for(var t,i,s,c,h,f,p,g=e.length,y=0;y<o;++y)for(i=u(e,d,m).visitAfter(l),t=0;t<g;++t)s=e[t],f=r[s.index],p=f*f,c=s.x+s.vx,h=s.y+s.vy,i.visit(v);function v(t,e,r,i,o){var l=t.data,u=t.r,d=f+u;if(!l)return e>c+d||i<c-d||r>h+d||o<h-d;if(l.index>s.index){var m=c-l.x-l.vx,g=h-l.y-l.vy,y=m*m+g*g;y<d*d&&(0===m&&(y+=(m=a())*m),0===g&&(y+=(g=a())*g),y=(d-(y=Math.sqrt(y)))/y*n,s.vx+=(m*=y)*(d=(u*=u)/(p+u)),s.vy+=(g*=y)*d,l.vx-=m*(d=1-d),l.vy-=g*d)}}}function l(t){if(t.data)return t.r=r[t.data.index];for(var e=t.r=0;e<4;++e)t[e]&&t[e].r>t.r&&(t.r=t[e].r)}function c(){if(e){var n,i,a=e.length;for(r=new Array(a),n=0;n<a;++n)i=e[n],r[i.index]=+t(i,n,e)}}return\"function\"!=typeof t&&(t=i(null==t?1:+t)),s.initialize=function(t){e=t,c()},s.iterations=function(t){return arguments.length?(o=+t,s):o},s.strength=function(t){return arguments.length?(n=+t,s):n},s.radius=function(e){return arguments.length?(t=\"function\"==typeof e?e:i(+e),c(),s):t},s}p.copy=function(){var t,e,r=new h(this._x,this._y,this._x0,this._y0,this._x1,this._y1),n=this._root;if(!n)return r;if(!n.length)return r._root=f(n),r;for(t=[{source:n,target:r._root=new Array(4)}];n=t.pop();)for(var i=0;i<4;++i)(e=n.source[i])&&(e.length?t.push({source:e,target:n.target[i]=new Array(4)}):n.target[i]=f(e));return r},p.add=function(t){var e=+this._x.call(null,t),r=+this._y.call(null,t);return o(this.cover(e,r),e,r,t)},p.addAll=function(t){var e,r,n,i,a=t.length,s=new Array(a),l=new Array(a),c=1/0,u=1/0,h=-1/0,f=-1/0;for(r=0;r<a;++r)isNaN(n=+this._x.call(null,e=t[r]))||isNaN(i=+this._y.call(null,e))||(s[r]=n,l[r]=i,n<c&&(c=n),n>h&&(h=n),i<u&&(u=i),i>f&&(f=i));if(c>h||u>f)return this;for(this.cover(c,u).cover(h,f),r=0;r<a;++r)o(this,s[r],l[r],t[r]);return this},p.cover=function(t,e){if(isNaN(t=+t)||isNaN(e=+e))return this;var r=this._x0,n=this._y0,i=this._x1,a=this._y1;if(isNaN(r))i=(r=Math.floor(t))+1,a=(n=Math.floor(e))+1;else{for(var o,s,l=i-r,c=this._root;r>t||t>=i||n>e||e>=a;)switch(s=(e<n)<<1|t<r,(o=new Array(4))[s]=c,c=o,l*=2,s){case 0:i=r+l,a=n+l;break;case 1:r=i-l,a=n+l;break;case 2:i=r+l,n=a-l;break;case 3:r=i-l,n=a-l}this._root&&this._root.length&&(this._root=c)}return this._x0=r,this._y0=n,this._x1=i,this._y1=a,this},p.data=function(){var t=[];return this.visit((function(e){if(!e.length)do{t.push(e.data)}while(e=e.next)})),t},p.extent=function(t){return arguments.length?this.cover(+t[0][0],+t[0][1]).cover(+t[1][0],+t[1][1]):isNaN(this._x0)?void 0:[[this._x0,this._y0],[this._x1,this._y1]]},p.find=function(t,e,r){var n,i,a,o,l,c,u,h=this._x0,f=this._y0,p=this._x1,d=this._y1,m=[],g=this._root;for(g&&m.push(new s(g,h,f,p,d)),null==r?r=1/0:(h=t-r,f=e-r,p=t+r,d=e+r,r*=r);c=m.pop();)if(!(!(g=c.node)||(i=c.x0)>p||(a=c.y0)>d||(o=c.x1)<h||(l=c.y1)<f))if(g.length){var y=(i+o)/2,v=(a+l)/2;m.push(new s(g[3],y,v,o,l),new s(g[2],i,v,y,l),new s(g[1],y,a,o,v),new s(g[0],i,a,y,v)),(u=(e>=v)<<1|t>=y)&&(c=m[m.length-1],m[m.length-1]=m[m.length-1-u],m[m.length-1-u]=c)}else{var x=t-+this._x.call(null,g.data),_=e-+this._y.call(null,g.data),b=x*x+_*_;if(b<r){var w=Math.sqrt(r=b);h=t-w,f=e-w,p=t+w,d=e+w,n=g.data}}return n},p.remove=function(t){if(isNaN(a=+this._x.call(null,t))||isNaN(o=+this._y.call(null,t)))return this;var e,r,n,i,a,o,s,l,c,u,h,f,p=this._root,d=this._x0,m=this._y0,g=this._x1,y=this._y1;if(!p)return this;if(p.length)for(;;){if((c=a>=(s=(d+g)/2))?d=s:g=s,(u=o>=(l=(m+y)/2))?m=l:y=l,e=p,!(p=p[h=u<<1|c]))return this;if(!p.length)break;(e[h+1&3]||e[h+2&3]||e[h+3&3])&&(r=e,f=h)}for(;p.data!==t;)if(n=p,!(p=p.next))return this;return(i=p.next)&&delete p.next,n?(i?n.next=i:delete n.next,this):e?(i?e[h]=i:delete e[h],(p=e[0]||e[1]||e[2]||e[3])&&p===(e[3]||e[2]||e[1]||e[0])&&!p.length&&(r?r[f]=p:this._root=p),this):(this._root=i,this)},p.removeAll=function(t){for(var e=0,r=t.length;e<r;++e)this.remove(t[e]);return this},p.root=function(){return this._root},p.size=function(){var t=0;return this.visit((function(e){if(!e.length)do{++t}while(e=e.next)})),t},p.visit=function(t){var e,r,n,i,a,o,l=[],c=this._root;for(c&&l.push(new s(c,this._x0,this._y0,this._x1,this._y1));e=l.pop();)if(!t(c=e.node,n=e.x0,i=e.y0,a=e.x1,o=e.y1)&&c.length){var u=(n+a)/2,h=(i+o)/2;(r=c[3])&&l.push(new s(r,u,h,a,o)),(r=c[2])&&l.push(new s(r,n,h,u,o)),(r=c[1])&&l.push(new s(r,u,i,a,h)),(r=c[0])&&l.push(new s(r,n,i,u,h))}return this},p.visitAfter=function(t){var e,r=[],n=[];for(this._root&&r.push(new s(this._root,this._x0,this._y0,this._x1,this._y1));e=r.pop();){var i=e.node;if(i.length){var a,o=e.x0,l=e.y0,c=e.x1,u=e.y1,h=(o+c)/2,f=(l+u)/2;(a=i[0])&&r.push(new s(a,o,l,h,f)),(a=i[1])&&r.push(new s(a,h,l,c,f)),(a=i[2])&&r.push(new s(a,o,f,h,u)),(a=i[3])&&r.push(new s(a,h,f,c,u))}n.push(e)}for(;e=n.pop();)t(e.node,e.x0,e.y0,e.x1,e.y1);return this},p.x=function(t){return arguments.length?(this._x=t,this):this._x},p.y=function(t){return arguments.length?(this._y=t,this):this._y};var y=r(4575);function v(t){return t.index}function x(t,e){var r=t.get(e);if(!r)throw new Error(\"missing: \"+e);return r}function _(t){var e,r,n,o,s,l=v,c=function(t){return 1/Math.min(o[t.source.index],o[t.target.index])},u=i(30),h=1;function f(n){for(var i=0,o=t.length;i<h;++i)for(var l,c,u,f,p,d,m,g=0;g<o;++g)c=(l=t[g]).source,f=(u=l.target).x+u.vx-c.x-c.vx||a(),p=u.y+u.vy-c.y-c.vy||a(),f*=d=((d=Math.sqrt(f*f+p*p))-r[g])/d*n*e[g],p*=d,u.vx-=f*(m=s[g]),u.vy-=p*m,c.vx+=f*(m=1-m),c.vy+=p*m}function p(){if(n){var i,a,c=n.length,u=t.length,h=(0,y.Tj)(n,l);for(i=0,o=new Array(c);i<u;++i)(a=t[i]).index=i,\"object\"!=typeof a.source&&(a.source=x(h,a.source)),\"object\"!=typeof a.target&&(a.target=x(h,a.target)),o[a.source.index]=(o[a.source.index]||0)+1,o[a.target.index]=(o[a.target.index]||0)+1;for(i=0,s=new Array(u);i<u;++i)a=t[i],s[i]=o[a.source.index]/(o[a.source.index]+o[a.target.index]);e=new Array(u),d(),r=new Array(u),m()}}function d(){if(n)for(var r=0,i=t.length;r<i;++r)e[r]=+c(t[r],r,t)}function m(){if(n)for(var e=0,i=t.length;e<i;++e)r[e]=+u(t[e],e,t)}return null==t&&(t=[]),f.initialize=function(t){n=t,p()},f.links=function(e){return arguments.length?(t=e,p(),f):t},f.id=function(t){return arguments.length?(l=t,f):l},f.iterations=function(t){return arguments.length?(h=+t,f):h},f.strength=function(t){return arguments.length?(c=\"function\"==typeof t?t:i(+t),d(),f):c},f.distance=function(t){return arguments.length?(u=\"function\"==typeof t?t:i(+t),m(),f):u},f}var b={value:function(){}};function w(){for(var t,e=0,r=arguments.length,n={};e<r;++e){if(!(t=arguments[e]+\"\")||t in n||/[\\s.]/.test(t))throw new Error(\"illegal type: \"+t);n[t]=[]}return new T(n)}function T(t){this._=t}function k(t,e){for(var r,n=0,i=t.length;n<i;++n)if((r=t[n]).name===e)return r.value}function A(t,e,r){for(var n=0,i=t.length;n<i;++n)if(t[n].name===e){t[n]=b,t=t.slice(0,n).concat(t.slice(n+1));break}return null!=r&&t.push({name:e,value:r}),t}T.prototype=w.prototype={constructor:T,on:function(t,e){var r,n,i=this._,a=(n=i,(t+\"\").trim().split(/^|\\s+/).map((function(t){var e=\"\",r=t.indexOf(\".\");if(r>=0&&(e=t.slice(r+1),t=t.slice(0,r)),t&&!n.hasOwnProperty(t))throw new Error(\"unknown type: \"+t);return{type:t,name:e}}))),o=-1,s=a.length;if(!(arguments.length<2)){if(null!=e&&\"function\"!=typeof e)throw new Error(\"invalid callback: \"+e);for(;++o<s;)if(r=(t=a[o]).type)i[r]=A(i[r],t.name,e);else if(null==e)for(r in i)i[r]=A(i[r],t.name,null);return this}for(;++o<s;)if((r=(t=a[o]).type)&&(r=k(i[r],t.name)))return r},copy:function(){var t={},e=this._;for(var r in e)t[r]=e[r].slice();return new T(t)},call:function(t,e){if((r=arguments.length-2)>0)for(var r,n,i=new Array(r),a=0;a<r;++a)i[a]=arguments[a+2];if(!this._.hasOwnProperty(t))throw new Error(\"unknown type: \"+t);for(a=0,r=(n=this._[t]).length;a<r;++a)n[a].value.apply(e,i)},apply:function(t,e,r){if(!this._.hasOwnProperty(t))throw new Error(\"unknown type: \"+t);for(var n=this._[t],i=0,a=n.length;i<a;++i)n[i].value.apply(e,r)}};var M,S,E=w,C=0,L=0,I=0,P=1e3,z=0,O=0,D=0,R=\"object\"==typeof performance&&performance.now?performance:Date,F=\"object\"==typeof window&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(t){setTimeout(t,17)};function B(){return O||(F(N),O=R.now()+D)}function N(){O=0}function j(){this._call=this._time=this._next=null}function U(t,e,r){var n=new j;return n.restart(t,e,r),n}function V(){O=(z=R.now())+D,C=L=0;try{!function(){B(),++C;for(var t,e=M;e;)(t=O-e._time)>=0&&e._call.call(null,t),e=e._next;--C}()}finally{C=0,function(){for(var t,e,r=M,n=1/0;r;)r._call?(n>r._time&&(n=r._time),t=r,r=r._next):(e=r._next,r._next=null,r=t?t._next=e:M=e);S=t,H(n)}(),O=0}}function q(){var t=R.now(),e=t-z;e>P&&(D-=e,z=t)}function H(t){C||(L&&(L=clearTimeout(L)),t-O>24?(t<1/0&&(L=setTimeout(V,t-R.now()-D)),I&&(I=clearInterval(I))):(I||(z=R.now(),I=setInterval(q,P)),C=1,F(V)))}function G(t){return t.x}function Z(t){return t.y}j.prototype=U.prototype={constructor:j,restart:function(t,e,r){if(\"function\"!=typeof t)throw new TypeError(\"callback is not a function\");r=(null==r?B():+r)+(null==e?0:+e),this._next||S===this||(S?S._next=this:M=this,S=this),this._call=t,this._time=r,H()},stop:function(){this._call&&(this._call=null,this._time=1/0,H())}};var W=10,Y=Math.PI*(3-Math.sqrt(5));function X(t){var e,r=1,n=.001,i=1-Math.pow(n,1/300),a=0,o=.6,s=(0,y.Tj)(),l=U(u),c=E(\"tick\",\"end\");function u(){h(),c.call(\"tick\",e),r<n&&(l.stop(),c.call(\"end\",e))}function h(n){var l,c,u=t.length;void 0===n&&(n=1);for(var h=0;h<n;++h)for(r+=(a-r)*i,s.each((function(t){t(r)})),l=0;l<u;++l)null==(c=t[l]).fx?c.x+=c.vx*=o:(c.x=c.fx,c.vx=0),null==c.fy?c.y+=c.vy*=o:(c.y=c.fy,c.vy=0);return e}function f(){for(var e,r=0,n=t.length;r<n;++r){if((e=t[r]).index=r,null!=e.fx&&(e.x=e.fx),null!=e.fy&&(e.y=e.fy),isNaN(e.x)||isNaN(e.y)){var i=W*Math.sqrt(r),a=r*Y;e.x=i*Math.cos(a),e.y=i*Math.sin(a)}(isNaN(e.vx)||isNaN(e.vy))&&(e.vx=e.vy=0)}}function p(e){return e.initialize&&e.initialize(t),e}return null==t&&(t=[]),f(),e={tick:h,restart:function(){return l.restart(u),e},stop:function(){return l.stop(),e},nodes:function(r){return arguments.length?(t=r,f(),s.each(p),e):t},alpha:function(t){return arguments.length?(r=+t,e):r},alphaMin:function(t){return arguments.length?(n=+t,e):n},alphaDecay:function(t){return arguments.length?(i=+t,e):+i},alphaTarget:function(t){return arguments.length?(a=+t,e):a},velocityDecay:function(t){return arguments.length?(o=1-t,e):1-o},force:function(t,r){return arguments.length>1?(null==r?s.remove(t):s.set(t,p(r)),e):s.get(t)},find:function(e,r,n){var i,a,o,s,l,c=0,u=t.length;for(null==n?n=1/0:n*=n,c=0;c<u;++c)(o=(i=e-(s=t[c]).x)*i+(a=r-s.y)*a)<n&&(l=s,n=o);return l},on:function(t,r){return arguments.length>1?(c.on(t,r),e):c.on(t)}}}function $(){var t,e,r,n,o=i(-30),s=1,l=1/0,c=.81;function h(n){var i,a=t.length,o=u(t,G,Z).visitAfter(p);for(r=n,i=0;i<a;++i)e=t[i],o.visit(d)}function f(){if(t){var e,r,i=t.length;for(n=new Array(i),e=0;e<i;++e)r=t[e],n[r.index]=+o(r,e,t)}}function p(t){var e,r,i,a,o,s=0,l=0;if(t.length){for(i=a=o=0;o<4;++o)(e=t[o])&&(r=Math.abs(e.value))&&(s+=e.value,l+=r,i+=r*e.x,a+=r*e.y);t.x=i/l,t.y=a/l}else{(e=t).x=e.data.x,e.y=e.data.y;do{s+=n[e.data.index]}while(e=e.next)}t.value=s}function d(t,i,o,u){if(!t.value)return!0;var h=t.x-e.x,f=t.y-e.y,p=u-i,d=h*h+f*f;if(p*p/c<d)return d<l&&(0===h&&(d+=(h=a())*h),0===f&&(d+=(f=a())*f),d<s&&(d=Math.sqrt(s*d)),e.vx+=h*t.value*r/d,e.vy+=f*t.value*r/d),!0;if(!(t.length||d>=l)){(t.data!==e||t.next)&&(0===h&&(d+=(h=a())*h),0===f&&(d+=(f=a())*f),d<s&&(d=Math.sqrt(s*d)));do{t.data!==e&&(p=n[t.data.index]*r/d,e.vx+=h*p,e.vy+=f*p)}while(t=t.next)}}return h.initialize=function(e){t=e,f()},h.strength=function(t){return arguments.length?(o=\"function\"==typeof t?t:i(+t),f(),h):o},h.distanceMin=function(t){return arguments.length?(s=t*t,h):Math.sqrt(s)},h.distanceMax=function(t){return arguments.length?(l=t*t,h):Math.sqrt(l)},h.theta=function(t){return arguments.length?(c=t*t,h):Math.sqrt(c)},h}function J(t,e,r){var n,a,o,s=i(.1);function l(t){for(var i=0,s=n.length;i<s;++i){var l=n[i],c=l.x-e||1e-6,u=l.y-r||1e-6,h=Math.sqrt(c*c+u*u),f=(o[i]-h)*a[i]*t/h;l.vx+=c*f,l.vy+=u*f}}function c(){if(n){var e,r=n.length;for(a=new Array(r),o=new Array(r),e=0;e<r;++e)o[e]=+t(n[e],e,n),a[e]=isNaN(o[e])?0:+s(n[e],e,n)}}return\"function\"!=typeof t&&(t=i(+t)),null==e&&(e=0),null==r&&(r=0),l.initialize=function(t){n=t,c()},l.strength=function(t){return arguments.length?(s=\"function\"==typeof t?t:i(+t),c(),l):s},l.radius=function(e){return arguments.length?(t=\"function\"==typeof e?e:i(+e),c(),l):t},l.x=function(t){return arguments.length?(e=+t,l):e},l.y=function(t){return arguments.length?(r=+t,l):r},l}function K(t){var e,r,n,a=i(.1);function o(t){for(var i,a=0,o=e.length;a<o;++a)(i=e[a]).vx+=(n[a]-i.x)*r[a]*t}function s(){if(e){var i,o=e.length;for(r=new Array(o),n=new Array(o),i=0;i<o;++i)r[i]=isNaN(n[i]=+t(e[i],i,e))?0:+a(e[i],i,e)}}return\"function\"!=typeof t&&(t=i(null==t?0:+t)),o.initialize=function(t){e=t,s()},o.strength=function(t){return arguments.length?(a=\"function\"==typeof t?t:i(+t),s(),o):a},o.x=function(e){return arguments.length?(t=\"function\"==typeof e?e:i(+e),s(),o):t},o}function Q(t){var e,r,n,a=i(.1);function o(t){for(var i,a=0,o=e.length;a<o;++a)(i=e[a]).vy+=(n[a]-i.y)*r[a]*t}function s(){if(e){var i,o=e.length;for(r=new Array(o),n=new Array(o),i=0;i<o;++i)r[i]=isNaN(n[i]=+t(e[i],i,e))?0:+a(e[i],i,e)}}return\"function\"!=typeof t&&(t=i(null==t?0:+t)),o.initialize=function(t){e=t,s()},o.strength=function(t){return arguments.length?(a=\"function\"==typeof t?t:i(+t),s(),o):a},o.y=function(e){return arguments.length?(t=\"function\"==typeof e?e:i(+e),s(),o):t},o}},36464:function(t,e,r){\"use strict\";function n(t,e){if((r=(t=e?t.toExponential(e-1):t.toExponential()).indexOf(\"e\"))<0)return null;var r,n=t.slice(0,r);return[n.length>1?n[0]+n.slice(2):n,+t.slice(r+1)]}r.d(e,{GP:function(){return f},OE:function(){return m}});var i,a=/^(?:(.)?([<>=^]))?([+\\-( ])?([$#])?(0)?(\\d+)?(,)?(\\.\\d+)?(~)?([a-z%])?$/i;function o(t){if(!(e=a.exec(t)))throw new Error(\"invalid format: \"+t);var e;return new s({fill:e[1],align:e[2],sign:e[3],symbol:e[4],zero:e[5],width:e[6],comma:e[7],precision:e[8]&&e[8].slice(1),trim:e[9],type:e[10]})}function s(t){this.fill=void 0===t.fill?\" \":t.fill+\"\",this.align=void 0===t.align?\">\":t.align+\"\",this.sign=void 0===t.sign?\"-\":t.sign+\"\",this.symbol=void 0===t.symbol?\"\":t.symbol+\"\",this.zero=!!t.zero,this.width=void 0===t.width?void 0:+t.width,this.comma=!!t.comma,this.precision=void 0===t.precision?void 0:+t.precision,this.trim=!!t.trim,this.type=void 0===t.type?\"\":t.type+\"\"}function l(t,e){var r=n(t,e);if(!r)return t+\"\";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 c={\"%\":function(t,e){return(100*t).toFixed(e)},b:function(t){return Math.round(t).toString(2)},c:function(t){return t+\"\"},d:function(t){return Math.abs(t=Math.round(t))>=1e21?t.toLocaleString(\"en\").replace(/,/g,\"\"):t.toString(10)},e:function(t,e){return t.toExponential(e)},f:function(t,e){return t.toFixed(e)},g:function(t,e){return t.toPrecision(e)},o:function(t){return Math.round(t).toString(8)},p:function(t,e){return l(100*t,e)},r:l,s:function(t,e){var r=n(t,e);if(!r)return t+\"\";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(t,Math.max(0,e+s-1))[0]},X:function(t){return Math.round(t).toString(16).toUpperCase()},x:function(t){return Math.round(t).toString(16)}};function u(t){return t}var h,f,p=Array.prototype.map,d=[\"y\",\"z\",\"a\",\"f\",\"p\",\"n\",\"µ\",\"m\",\"\",\"k\",\"M\",\"G\",\"T\",\"P\",\"E\",\"Z\",\"Y\"];function m(t){var e,r,a=void 0===t.grouping||void 0===t.thousands?u:(e=p.call(t.grouping,Number),r=t.thousands+\"\",function(t,n){for(var i=t.length,a=[],o=0,s=e[0],l=0;i>0&&s>0&&(l+s+1>n&&(s=Math.max(1,n-l)),a.push(t.substring(i-=s,i+s)),!((l+=s+1)>n));)s=e[o=(o+1)%e.length];return a.reverse().join(r)}),s=void 0===t.currency?\"\":t.currency[0]+\"\",l=void 0===t.currency?\"\":t.currency[1]+\"\",h=void 0===t.decimal?\".\":t.decimal+\"\",f=void 0===t.numerals?u:function(t){return function(e){return e.replace(/[0-9]/g,(function(e){return t[+e]}))}}(p.call(t.numerals,String)),m=void 0===t.percent?\"%\":t.percent+\"\",g=void 0===t.minus?\"-\":t.minus+\"\",y=void 0===t.nan?\"NaN\":t.nan+\"\";function v(t){var e=(t=o(t)).fill,r=t.align,n=t.sign,u=t.symbol,p=t.zero,v=t.width,x=t.comma,_=t.precision,b=t.trim,w=t.type;\"n\"===w?(x=!0,w=\"g\"):c[w]||(void 0===_&&(_=12),b=!0,w=\"g\"),(p||\"0\"===e&&\"=\"===r)&&(p=!0,e=\"0\",r=\"=\");var T=\"$\"===u?s:\"#\"===u&&/[boxX]/.test(w)?\"0\"+w.toLowerCase():\"\",k=\"$\"===u?l:/[%p]/.test(w)?m:\"\",A=c[w],M=/[defgprs%]/.test(w);function S(t){var o,s,l,c=T,u=k;if(\"c\"===w)u=A(t)+u,t=\"\";else{var m=(t=+t)<0||1/t<0;if(t=isNaN(t)?y:A(Math.abs(t),_),b&&(t=function(t){t:for(var e,r=t.length,n=1,i=-1;n<r;++n)switch(t[n]){case\".\":i=e=n;break;case\"0\":0===i&&(i=n),e=n;break;default:if(!+t[n])break t;i>0&&(i=0)}return i>0?t.slice(0,i)+t.slice(e+1):t}(t)),m&&0==+t&&\"+\"!==n&&(m=!1),c=(m?\"(\"===n?n:g:\"-\"===n||\"(\"===n?\"\":n)+c,u=(\"s\"===w?d[8+i/3]:\"\")+u+(m&&\"(\"===n?\")\":\"\"),M)for(o=-1,s=t.length;++o<s;)if(48>(l=t.charCodeAt(o))||l>57){u=(46===l?h+t.slice(o+1):t.slice(o))+u,t=t.slice(0,o);break}}x&&!p&&(t=a(t,1/0));var S=c.length+t.length+u.length,E=S<v?new Array(v-S+1).join(e):\"\";switch(x&&p&&(t=a(E+t,E.length?v-u.length:1/0),E=\"\"),r){case\"<\":t=c+t+u+E;break;case\"=\":t=c+E+t+u;break;case\"^\":t=E.slice(0,S=E.length>>1)+c+t+u+E.slice(S);break;default:t=E+c+t+u}return f(t)}return _=void 0===_?6:/[gprs]/.test(w)?Math.max(1,Math.min(21,_)):Math.max(0,Math.min(20,_)),S.toString=function(){return t+\"\"},S}return{format:v,formatPrefix:function(t,e){var r,i=v(((t=o(t)).type=\"f\",t)),a=3*Math.max(-8,Math.min(8,Math.floor((r=e,((r=n(Math.abs(r)))?r[1]:NaN)/3)))),s=Math.pow(10,-a),l=d[8+a/3];return function(t){return i(s*t)+l}}}}h=m({decimal:\".\",thousands:\",\",grouping:[3],currency:[\"$\",\"\"],minus:\"-\"}),f=h.format,h.formatPrefix},75987:function(t,e,r){\"use strict\";r.r(e),r.d(e,{geoAiry:function(){return D},geoAiryRaw:function(){return O},geoAitoff:function(){return F},geoAitoffRaw:function(){return R},geoArmadillo:function(){return N},geoArmadilloRaw:function(){return B},geoAugust:function(){return U},geoAugustRaw:function(){return j},geoBaker:function(){return G},geoBakerRaw:function(){return H},geoBerghaus:function(){return Y},geoBerghausRaw:function(){return W},geoBertin1953:function(){return rt},geoBertin1953Raw:function(){return et},geoBoggs:function(){return ut},geoBoggsRaw:function(){return ct},geoBonne:function(){return mt},geoBonneRaw:function(){return dt},geoBottomley:function(){return yt},geoBottomleyRaw:function(){return gt},geoBromley:function(){return xt},geoBromleyRaw:function(){return vt},geoChamberlin:function(){return Et},geoChamberlinAfrica:function(){return St},geoChamberlinRaw:function(){return At},geoCollignon:function(){return Lt},geoCollignonRaw:function(){return Ct},geoCraig:function(){return Pt},geoCraigRaw:function(){return It},geoCraster:function(){return Dt},geoCrasterRaw:function(){return Ot},geoCylindricalEqualArea:function(){return Ft},geoCylindricalEqualAreaRaw:function(){return Rt},geoCylindricalStereographic:function(){return Nt},geoCylindricalStereographicRaw:function(){return Bt},geoEckert1:function(){return Ut},geoEckert1Raw:function(){return jt},geoEckert2:function(){return qt},geoEckert2Raw:function(){return Vt},geoEckert3:function(){return Gt},geoEckert3Raw:function(){return Ht},geoEckert4:function(){return Wt},geoEckert4Raw:function(){return Zt},geoEckert5:function(){return Xt},geoEckert5Raw:function(){return Yt},geoEckert6:function(){return Jt},geoEckert6Raw:function(){return $t},geoEisenlohr:function(){return te},geoEisenlohrRaw:function(){return Qt},geoFahey:function(){return ne},geoFaheyRaw:function(){return re},geoFoucaut:function(){return ae},geoFoucautRaw:function(){return ie},geoFoucautSinusoidal:function(){return se},geoFoucautSinusoidalRaw:function(){return oe},geoGilbert:function(){return fe},geoGingery:function(){return ge},geoGingeryRaw:function(){return pe},geoGinzburg4:function(){return xe},geoGinzburg4Raw:function(){return ve},geoGinzburg5:function(){return be},geoGinzburg5Raw:function(){return _e},geoGinzburg6:function(){return Te},geoGinzburg6Raw:function(){return we},geoGinzburg8:function(){return Ae},geoGinzburg8Raw:function(){return ke},geoGinzburg9:function(){return Se},geoGinzburg9Raw:function(){return Me},geoGringorten:function(){return Le},geoGringortenQuincuncial:function(){return ii},geoGringortenRaw:function(){return Ce},geoGuyou:function(){return Oe},geoGuyouRaw:function(){return ze},geoHammer:function(){return K},geoHammerRaw:function(){return $},geoHammerRetroazimuthal:function(){return Be},geoHammerRetroazimuthalRaw:function(){return Re},geoHealpix:function(){return We},geoHealpixRaw:function(){return qe},geoHill:function(){return Xe},geoHillRaw:function(){return Ye},geoHomolosine:function(){return er},geoHomolosineRaw:function(){return tr},geoHufnagel:function(){return nr},geoHufnagelRaw:function(){return rr},geoHyperelliptical:function(){return sr},geoHyperellipticalRaw:function(){return or},geoInterrupt:function(){return ur},geoInterruptedBoggs:function(){return fr},geoInterruptedHomolosine:function(){return dr},geoInterruptedMollweide:function(){return gr},geoInterruptedMollweideHemispheres:function(){return vr},geoInterruptedQuarticAuthalic:function(){return hn},geoInterruptedSinuMollweide:function(){return _r},geoInterruptedSinusoidal:function(){return wr},geoKavrayskiy7:function(){return kr},geoKavrayskiy7Raw:function(){return Tr},geoLagrange:function(){return Mr},geoLagrangeRaw:function(){return Ar},geoLarrivee:function(){return Cr},geoLarriveeRaw:function(){return Er},geoLaskowski:function(){return Ir},geoLaskowskiRaw:function(){return Lr},geoLittrow:function(){return zr},geoLittrowRaw:function(){return Pr},geoLoximuthal:function(){return Dr},geoLoximuthalRaw:function(){return Or},geoMiller:function(){return Fr},geoMillerRaw:function(){return Rr},geoModifiedStereographic:function(){return Xr},geoModifiedStereographicAlaska:function(){return Hr},geoModifiedStereographicGs48:function(){return Gr},geoModifiedStereographicGs50:function(){return Zr},geoModifiedStereographicLee:function(){return Yr},geoModifiedStereographicMiller:function(){return Wr},geoModifiedStereographicRaw:function(){return Br},geoMollweide:function(){return ot},geoMollweideRaw:function(){return at},geoMtFlatPolarParabolic:function(){return Qr},geoMtFlatPolarParabolicRaw:function(){return Kr},geoMtFlatPolarQuartic:function(){return en},geoMtFlatPolarQuarticRaw:function(){return tn},geoMtFlatPolarSinusoidal:function(){return nn},geoMtFlatPolarSinusoidalRaw:function(){return rn},geoNaturalEarth:function(){return an.A},geoNaturalEarth2:function(){return sn},geoNaturalEarth2Raw:function(){return on},geoNaturalEarthRaw:function(){return an.P},geoNellHammer:function(){return cn},geoNellHammerRaw:function(){return ln},geoNicolosi:function(){return pn},geoNicolosiRaw:function(){return fn},geoPatterson:function(){return kn},geoPattersonRaw:function(){return Tn},geoPeirceQuincuncial:function(){return ai},geoPierceQuincuncial:function(){return ai},geoPolyconic:function(){return Mn},geoPolyconicRaw:function(){return An},geoPolyhedral:function(){return Pn},geoPolyhedralButterfly:function(){return Nn},geoPolyhedralCollignon:function(){return Vn},geoPolyhedralWaterman:function(){return qn},geoProject:function(){return Yn},geoQuantize:function(){return oi},geoQuincuncial:function(){return ni},geoRectangularPolyconic:function(){return li},geoRectangularPolyconicRaw:function(){return si},geoRobinson:function(){return hi},geoRobinsonRaw:function(){return ui},geoSatellite:function(){return pi},geoSatelliteRaw:function(){return fi},geoSinuMollweide:function(){return Qe},geoSinuMollweideRaw:function(){return Ke},geoSinusoidal:function(){return pt},geoSinusoidalRaw:function(){return ft},geoStitch:function(){return Pi},geoTimes:function(){return Oi},geoTimesRaw:function(){return zi},geoTwoPointAzimuthal:function(){return Bi},geoTwoPointAzimuthalRaw:function(){return Ri},geoTwoPointAzimuthalUsa:function(){return Fi},geoTwoPointEquidistant:function(){return Ui},geoTwoPointEquidistantRaw:function(){return Ni},geoTwoPointEquidistantUsa:function(){return ji},geoVanDerGrinten:function(){return qi},geoVanDerGrinten2:function(){return Gi},geoVanDerGrinten2Raw:function(){return Hi},geoVanDerGrinten3:function(){return Wi},geoVanDerGrinten3Raw:function(){return Zi},geoVanDerGrinten4:function(){return Xi},geoVanDerGrinten4Raw:function(){return Yi},geoVanDerGrintenRaw:function(){return Vi},geoWagner:function(){return Ji},geoWagner4:function(){return ra},geoWagner4Raw:function(){return ea},geoWagner6:function(){return ia},geoWagner6Raw:function(){return na},geoWagner7:function(){return Ki},geoWagnerRaw:function(){return $i},geoWiechel:function(){return oa},geoWiechelRaw:function(){return aa},geoWinkel3:function(){return la},geoWinkel3Raw:function(){return sa}});var n=r(94684),i=Math.abs,a=Math.atan,o=Math.atan2,s=(Math.ceil,Math.cos),l=Math.exp,c=Math.floor,u=Math.log,h=Math.max,f=Math.min,p=Math.pow,d=Math.round,m=Math.sign||function(t){return t>0?1:t<0?-1:0},g=Math.sin,y=Math.tan,v=1e-6,x=1e-12,_=Math.PI,b=_/2,w=_/4,T=Math.SQRT1_2,k=I(2),A=I(_),M=2*_,S=180/_,E=_/180;function C(t){return t>1?b:t<-1?-b:Math.asin(t)}function L(t){return t>1?0:t<-1?_:Math.acos(t)}function I(t){return t>0?Math.sqrt(t):0}function P(t){return(l(t)-l(-t))/2}function z(t){return(l(t)+l(-t))/2}function O(t){var e=y(t/2),r=2*u(s(t/2))/(e*e);function n(t,e){var n=s(t),i=s(e),a=g(e),o=i*n,l=-((1-o?u((1+o)/2)/(1-o):-.5)+r/(1+o));return[l*i*g(t),l*a]}return n.invert=function(e,n){var a,l=I(e*e+n*n),c=-t/2,h=50;if(!l)return[0,0];do{var f=c/2,p=s(f),d=g(f),m=d/p,y=-u(i(p));c-=a=(2/m*y-r*m-l)/(-y/(d*d)+1-r/(2*p*p))*(p<0?.7:1)}while(i(a)>v&&--h>0);var x=g(c);return[o(e*x,l*s(c)),C(n*x/l)]},n}function D(){var t=b,e=(0,n.U)(O),r=e(t);return r.radius=function(r){return arguments.length?e(t=r*E):t*S},r.scale(179.976).clipAngle(147)}function R(t,e){var r=s(e),n=function(t){return t?t/Math.sin(t):1}(L(r*s(t/=2)));return[2*r*g(t)*n,g(e)*n]}function F(){return(0,n.A)(R).scale(152.63)}function B(t){var e=g(t),r=s(t),n=t>=0?1:-1,a=y(n*t),l=(1+e-r)/2;function c(t,i){var c=s(i),u=s(t/=2);return[(1+c)*g(t),(n*i>-o(u,a)-.001?0:10*-n)+l+g(i)*r-(1+c)*e*u]}return c.invert=function(t,c){var u=0,h=0,f=50;do{var p=s(u),d=g(u),m=s(h),y=g(h),x=1+m,_=x*d-t,b=l+y*r-x*e*p-c,w=x*p/2,T=-d*y,k=e*x*d/2,A=r*m+e*p*y,M=T*k-A*w,S=(b*T-_*A)/M/2,E=(_*k-b*w)/M;i(E)>2&&(E/=2),u-=S,h-=E}while((i(S)>v||i(E)>v)&&--f>0);return n*h>-o(s(u),a)-.001?[2*u,h]:null},c}function N(){var t=20*E,e=t>=0?1:-1,r=y(e*t),i=(0,n.U)(B),a=i(t),l=a.stream;return a.parallel=function(n){return arguments.length?(r=y((e=(t=n*E)>=0?1:-1)*t),i(t)):t*S},a.stream=function(n){var i=a.rotate(),c=l(n),u=(a.rotate([0,0]),l(n)),h=a.precision();return a.rotate(i),c.sphere=function(){u.polygonStart(),u.lineStart();for(var n=-180*e;e*n<180;n+=90*e)u.point(n,90*e);if(t)for(;e*(n-=3*e*h)>=-180;)u.point(n,e*-o(s(n*E/2),r)*S);u.lineEnd(),u.polygonEnd()},c},a.scale(218.695).center([0,28.0974])}function j(t,e){var r=y(e/2),n=I(1-r*r),i=1+n*s(t/=2),a=g(t)*n/i,o=r/i,l=a*a,c=o*o;return[4/3*a*(3+l-3*c),4/3*o*(3+3*l-c)]}function U(){return(0,n.A)(j).scale(66.1603)}R.invert=function(t,e){if(!(t*t+4*e*e>_*_+v)){var r=t,n=e,a=25;do{var o,l=g(r),c=g(r/2),u=s(r/2),h=g(n),f=s(n),p=g(2*n),d=h*h,m=f*f,y=c*c,x=1-m*u*u,b=x?L(f*u)*I(o=1/x):o=0,w=2*b*f*c-t,T=b*h-e,k=o*(m*y+b*f*u*d),A=o*(.5*l*p-2*b*h*c),M=.25*o*(p*c-b*h*m*l),S=o*(d*u+b*y*f),E=A*M-S*k;if(!E)break;var C=(T*A-w*S)/E,P=(w*M-T*k)/E;r-=C,n-=P}while((i(C)>v||i(P)>v)&&--a>0);return[r,n]}},j.invert=function(t,e){if(e*=3/8,!(t*=3/8)&&i(e)>1)return null;var r=1+t*t+e*e,n=I((r-I(r*r-4*e*e))/2),a=C(n)/3,l=n?function(t){return u(t+I(t*t-1))}(i(e/n))/3:function(t){return u(t+I(t*t+1))}(i(t))/3,c=s(a),h=z(l),f=h*h-c*c;return[2*m(t)*o(P(l)*c,.25-f),2*m(e)*o(h*g(a),.25+f)]};var V=I(8),q=u(1+k);function H(t,e){var r=i(e);return r<w?[t,u(y(w+e/2))]:[t*s(r)*(2*k-1/g(r)),m(e)*(2*k*(r-w)-u(y(r/2)))]}function G(){return(0,n.A)(H).scale(112.314)}H.invert=function(t,e){if((n=i(e))<q)return[t,2*a(l(e))-b];var r,n,o=w,c=25;do{var h=s(o/2),f=y(o/2);o-=r=(V*(o-w)-u(f)-n)/(V-h*h/(2*f))}while(i(r)>x&&--c>0);return[t/(s(o)*(V-1/g(o))),m(e)*o]};var Z=r(61957);function W(t){var e=2*_/t;function r(t,r){var n=(0,Z.j)(t,r);if(i(t)>b){var a=o(n[1],n[0]),l=I(n[0]*n[0]+n[1]*n[1]),c=e*d((a-b)/e)+b,u=o(g(a-=c),2-s(a));a=c+C(_/l*g(u))-u,n[0]=l*s(a),n[1]=l*g(a)}return n}return r.invert=function(t,r){var n=I(t*t+r*r);if(n>b){var i=o(r,t),l=e*d((i-b)/e)+b,c=i>l?-1:1,u=n*s(l-i),h=1/y(c*L((u-_)/I(_*(_-2*u)+n*n)));i=l+2*a((h+c*I(h*h-3))/3),t=n*s(i),r=n*g(i)}return Z.j.invert(t,r)},r}function Y(){var t=5,e=(0,n.U)(W),r=e(t),i=r.stream,a=.01,l=-s(a*E),c=g(a*E);return r.lobes=function(r){return arguments.length?e(t=+r):t},r.stream=function(e){var n=r.rotate(),u=i(e),h=(r.rotate([0,0]),i(e));return r.rotate(n),u.sphere=function(){h.polygonStart(),h.lineStart();for(var e=0,r=360/t,n=2*_/t,i=90-180/t,u=b;e<t;++e,i-=r,u-=n)h.point(o(c*s(u),l)*S,C(c*g(u))*S),i<-90?(h.point(-90,-180-i-a),h.point(-90,-180-i+a)):(h.point(90,i+a),h.point(90,i-a));h.lineEnd(),h.polygonEnd()},u},r.scale(87.8076).center([0,17.1875]).clipAngle(179.999)}var X=r(30729);function $(t,e){if(arguments.length<2&&(e=t),1===e)return X.n;if(e===1/0)return J;function r(r,n){var i=(0,X.n)(r/e,n);return i[0]*=t,i}return r.invert=function(r,n){var i=X.n.invert(r/t,n);return i[0]*=e,i},r}function J(t,e){return[t*s(e)/s(e/=2),2*g(e)]}function K(){var t=2,e=(0,n.U)($),r=e(t);return r.coefficient=function(r){return arguments.length?e(t=+r):t},r.scale(169.529)}function Q(t,e,r){var n,a,o,s=100;r=void 0===r?0:+r,e=+e;do{(a=t(r))===(o=t(r+v))&&(o=a+v),r-=n=-1*v*(a-e)/(a-o)}while(s-- >0&&i(n)>v);return s<0?NaN:r}function tt(t,e,r){return void 0===e&&(e=40),void 0===r&&(r=x),function(n,a,o,s){var l,c,u;o=void 0===o?0:+o,s=void 0===s?0:+s;for(var h=0;h<e;h++){var f=t(o,s),p=f[0]-n,d=f[1]-a;if(i(p)<r&&i(d)<r)break;var m=p*p+d*d;if(m>l)o-=c/=2,s-=u/=2;else{l=m;var g=(o>0?-1:1)*r,y=(s>0?-1:1)*r,v=t(o+g,s),x=t(o,s+y),_=(v[0]-f[0])/g,b=(v[1]-f[1])/g,w=(x[0]-f[0])/y,T=(x[1]-f[1])/y,k=T*_-b*w,A=(i(k)<.5?.5:1)/k;if(o+=c=(d*w-p*T)*A,s+=u=(p*b-d*_)*A,i(c)<r&&i(u)<r)break}}return[o,s]}}function et(){var t=$(1.68,2);function e(e,r){if(e+r<-1.4){var n=(e-r+1.6)*(e+r+1.4)/8;e+=n,r-=.8*n*g(r+_/2)}var i=t(e,r),a=(1-s(e*r))/12;return i[1]<0&&(i[0]*=1+a),i[1]>0&&(i[1]*=1+a/1.5*i[0]*i[0]),i}return e.invert=tt(e),e}function rt(){return(0,n.A)(et()).rotate([-16.5,-42]).scale(176.57).center([7.93,.09])}function nt(t,e){var r,n=t*g(e),a=30;do{e-=r=(e+g(e)-n)/(1+s(e))}while(i(r)>v&&--a>0);return e/2}function it(t,e,r){function n(n,i){return[t*n*s(i=nt(r,i)),e*g(i)]}return n.invert=function(n,i){return i=C(i/e),[n/(t*s(i)),C((2*i+g(2*i))/r)]},n}J.invert=function(t,e){var r=2*C(e/2);return[t*s(r/2)/s(r),r]};var at=it(k/b,k,_);function ot(){return(0,n.A)(at).scale(169.529)}var st=2.00276,lt=1.11072;function ct(t,e){var r=nt(_,e);return[st*t/(1/s(e)+lt/s(r)),(e+k*g(r))/st]}function ut(){return(0,n.A)(ct).scale(160.857)}function ht(t){var e=0,r=(0,n.U)(t),i=r(e);return i.parallel=function(t){return arguments.length?r(e=t*E):e*S},i}function ft(t,e){return[t*s(e),e]}function pt(){return(0,n.A)(ft).scale(152.63)}function dt(t){if(!t)return ft;var e=1/y(t);function r(r,n){var i=e+t-n,a=i?r*s(n)/i:i;return[i*g(a),e-i*s(a)]}return r.invert=function(r,n){var i=I(r*r+(n=e-n)*n),a=e+t-i;return[i/s(a)*o(r,n),a]},r}function mt(){return ht(dt).scale(123.082).center([0,26.1441]).parallel(45)}function gt(t){function e(e,r){var n=b-r,i=n?e*t*g(n)/n:n;return[n*g(i)/t,b-n*s(i)]}return e.invert=function(e,r){var n=e*t,i=b-r,a=I(n*n+i*i),s=o(n,i);return[(a?a/g(a):1)*s/t,b-a]},e}function yt(){var t=.5,e=(0,n.U)(gt),r=e(t);return r.fraction=function(r){return arguments.length?e(t=+r):t},r.scale(158.837)}ct.invert=function(t,e){var r,n,a=st*e,o=e<0?-w:w,l=25;do{n=a-k*g(o),o-=r=(g(2*o)+2*o-_*g(n))/(2*s(2*o)+2+_*s(n)*k*s(o))}while(i(r)>v&&--l>0);return n=a-k*g(o),[t*(1/s(n)+lt/s(o))/st,n]},ft.invert=function(t,e){return[t/s(e),e]};var vt=it(1,4/_,_);function xt(){return(0,n.A)(vt).scale(152.63)}var _t=r(30021),bt=r(30915);function wt(t,e,r,n,a,l){var c,u=s(l);if(i(t)>1||i(l)>1)c=L(r*a+e*n*u);else{var h=g(t/2),f=g(l/2);c=2*C(I(h*h+e*n*f*f))}return i(c)>v?[c,o(n*g(l),e*a-r*n*u)]:[0,0]}function Tt(t,e,r){return L((t*t+e*e-r*r)/(2*t*e))}function kt(t){return t-2*_*c((t+_)/(2*_))}function At(t,e,r){for(var n,i=[[t[0],t[1],g(t[1]),s(t[1])],[e[0],e[1],g(e[1]),s(e[1])],[r[0],r[1],g(r[1]),s(r[1])]],a=i[2],o=0;o<3;++o,a=n)n=i[o],a.v=wt(n[1]-a[1],a[3],a[2],n[3],n[2],n[0]-a[0]),a.point=[0,0];var l=Tt(i[0].v[0],i[2].v[0],i[1].v[0]),c=Tt(i[0].v[0],i[1].v[0],i[2].v[0]),u=_-l;i[2].point[1]=0,i[0].point[0]=-(i[1].point[0]=i[0].v[0]/2);var h=[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]*g(l))];return function(t,e){var r,n=g(e),a=s(e),o=new Array(3);for(r=0;r<3;++r){var l=i[r];if(o[r]=wt(e-l[1],l[3],l[2],a,n,t-l[0]),!o[r][0])return l.point;o[r][1]=kt(o[r][1]-l.v[1])}var f=h.slice();for(r=0;r<3;++r){var p=2==r?0:r+1,d=Tt(i[r].v[0],o[r][0],o[p][0]);o[r][1]<0&&(d=-d),r?1==r?(d=c-d,f[0]-=o[r][0]*s(d),f[1]-=o[r][0]*g(d)):(d=u-d,f[0]+=o[r][0]*s(d),f[1]+=o[r][0]*g(d)):(f[0]+=o[r][0]*s(d),f[1]-=o[r][0]*g(d))}return f[0]/=3,f[1]/=3,f}}function Mt(t){return t[0]*=E,t[1]*=E,t}function St(){return Et([0,22],[45,22],[22.5,-22]).scale(380).center([22.5,2])}function Et(t,e,r){var i=(0,_t.A)({type:\"MultiPoint\",coordinates:[t,e,r]}),a=[-i[0],-i[1]],o=(0,bt.A)(a),s=At(Mt(o(t)),Mt(o(e)),Mt(o(r)));s.invert=tt(s);var l=(0,n.A)(s).rotate(a),c=l.center;return delete l.rotate,l.center=function(t){return arguments.length?c(o(t)):o.invert(c())},l.clipAngle(90)}function Ct(t,e){var r=I(1-g(e));return[2/A*t*r,A*(1-r)]}function Lt(){return(0,n.A)(Ct).scale(95.6464).center([0,30])}function It(t){var e=y(t);function r(t,r){return[t,(t?t/g(t):1)*(g(r)*s(t)-e*s(r))]}return r.invert=e?function(t,r){t&&(r*=g(t)/t);var n=s(t);return[t,2*o(I(n*n+e*e-r*r)-n,e-r)]}:function(t,e){return[t,C(t?e*y(t)/t:e)]},r}function Pt(){return ht(It).scale(249.828).clipAngle(90)}Ct.invert=function(t,e){var r=(r=e/A-1)*r;return[r>0?t*I(_/r)/2:0,C(1-r)]};var zt=I(3);function Ot(t,e){return[zt*t*(2*s(2*e/3)-1)/A,zt*A*g(e/3)]}function Dt(){return(0,n.A)(Ot).scale(156.19)}function Rt(t){var e=s(t);function r(t,r){return[t*e,g(r)/e]}return r.invert=function(t,r){return[t/e,C(r*e)]},r}function Ft(){return ht(Rt).parallel(38.58).scale(195.044)}function Bt(t){var e=s(t);function r(t,r){return[t*e,(1+e)*y(r/2)]}return r.invert=function(t,r){return[t/e,2*a(r/(1+e))]},r}function Nt(){return ht(Bt).scale(124.75)}function jt(t,e){var r=I(8/(3*_));return[r*t*(1-i(e)/_),r*e]}function Ut(){return(0,n.A)(jt).scale(165.664)}function Vt(t,e){var r=I(4-3*g(i(e)));return[2/I(6*_)*t*r,m(e)*I(2*_/3)*(2-r)]}function qt(){return(0,n.A)(Vt).scale(165.664)}function Ht(t,e){var r=I(_*(4+_));return[2/r*t*(1+I(1-4*e*e/(_*_))),4/r*e]}function Gt(){return(0,n.A)(Ht).scale(180.739)}function Zt(t,e){var r=(2+b)*g(e);e/=2;for(var n=0,a=1/0;n<10&&i(a)>v;n++){var o=s(e);e-=a=(e+g(e)*(o+2)-r)/(2*o*(1+o))}return[2/I(_*(4+_))*t*(1+s(e)),2*I(_/(4+_))*g(e)]}function Wt(){return(0,n.A)(Zt).scale(180.739)}function Yt(t,e){return[t*(1+s(e))/I(2+_),2*e/I(2+_)]}function Xt(){return(0,n.A)(Yt).scale(173.044)}function $t(t,e){for(var r=(1+b)*g(e),n=0,a=1/0;n<10&&i(a)>v;n++)e-=a=(e+g(e)-r)/(1+s(e));return r=I(2+_),[t*(1+s(e))/r,2*e/r]}function Jt(){return(0,n.A)($t).scale(173.044)}Ot.invert=function(t,e){var r=3*C(e/(zt*A));return[A*t/(zt*(2*s(2*r/3)-1)),r]},jt.invert=function(t,e){var r=I(8/(3*_)),n=e/r;return[t/(r*(1-i(n)/_)),n]},Vt.invert=function(t,e){var r=2-i(e)/I(2*_/3);return[t*I(6*_)/(2*r),m(e)*C((4-r*r)/3)]},Ht.invert=function(t,e){var r=I(_*(4+_))/2;return[t*r/(1+I(1-e*e*(4+_)/(4*_))),e*r/2]},Zt.invert=function(t,e){var r=e*I((4+_)/_)/2,n=C(r),i=s(n);return[t/(2/I(_*(4+_))*(1+i)),C((n+r*(i+2))/(2+b))]},Yt.invert=function(t,e){var r=I(2+_),n=e*r/2;return[r*t/(1+s(n)),n]},$t.invert=function(t,e){var r=1+b,n=I(r/2);return[2*t*n/(1+s(e*=n)),C((e+g(e))/r)]};var Kt=3+2*k;function Qt(t,e){var r=g(t/=2),n=s(t),i=I(s(e)),o=s(e/=2),l=g(e)/(o+k*n*i),c=I(2/(1+l*l)),h=I((k*o+(n+r)*i)/(k*o+(n-r)*i));return[Kt*(c*(h-1/h)-2*u(h)),Kt*(c*l*(h+1/h)-2*a(l))]}function te(){return(0,n.A)(Qt).scale(62.5271)}Qt.invert=function(t,e){if(!(r=j.invert(t/1.2,1.065*e)))return null;var r,n=r[0],o=r[1],l=20;t/=Kt,e/=Kt;do{var c=n/2,p=o/2,d=g(c),m=s(c),y=g(p),x=s(p),_=s(o),w=I(_),A=y/(x+k*m*w),M=A*A,S=I(2/(1+M)),E=(k*x+(m+d)*w)/(k*x+(m-d)*w),C=I(E),L=C-1/C,P=C+1/C,z=S*L-2*u(C)-t,O=S*A*P-2*a(A)-e,D=y&&T*w*d*M/y,R=(k*m*x+w)/(2*(x+k*m*w)*(x+k*m*w)*w),F=-.5*A*S*S*S,B=F*D,N=F*R,U=(U=2*x+k*w*(m-d))*U*C,V=(k*m*x*w+_)/U,q=-k*d*y/(w*U),H=L*B-2*V/C+S*(V+V/E),G=L*N-2*q/C+S*(q+q/E),Z=A*P*B-2*D/(1+M)+S*P*D+S*A*(V-V/E),W=A*P*N-2*R/(1+M)+S*P*R+S*A*(q-q/E),Y=G*Z-W*H;if(!Y)break;var X=(O*G-z*W)/Y,$=(z*Z-O*H)/Y;n-=X,o=h(-b,f(b,o-$))}while((i(X)>v||i($)>v)&&--l>0);return i(i(o)-b)<v?[0,o]:l&&[n,o]};var ee=s(35*E);function re(t,e){var r=y(e/2);return[t*ee*I(1-r*r),(1+ee)*r]}function ne(){return(0,n.A)(re).scale(137.152)}function ie(t,e){var r=e/2,n=s(r);return[2*t/A*s(e)*n*n,A*y(r)]}function ae(){return(0,n.A)(ie).scale(135.264)}function oe(t){var e=1-t,r=i(_,0)[0]-i(-_,0)[0],n=I(2*(i(0,b)[1]-i(0,-b)[1])/r);function i(r,n){var i=s(n),a=g(n);return[i/(e+t*i)*r,e*n+t*a]}function a(t,e){var r=i(t,e);return[r[0]*n,r[1]/n]}function o(t){return a(0,t)[1]}return a.invert=function(r,i){var a=Q(o,i);return[r/n*(t+e/s(a)),a]},a}function se(){var t=.5,e=(0,n.U)(oe),r=e(t);return r.alpha=function(r){return arguments.length?e(t=+r):t},r.scale(168.725)}re.invert=function(t,e){var r=e/(1+ee);return[t&&t/(ee*I(1-r*r)),2*a(r)]},ie.invert=function(t,e){var r=a(e/A),n=s(r),i=2*r;return[t*A/2/(s(i)*n*n),i]};var le=r(53253),ce=r(18139);function ue(t){return[t[0]/2,C(y(t[1]/2*E))*S]}function he(t){return[2*t[0],2*a(g(t[1]*E))*S]}function fe(t){null==t&&(t=le.A);var e=t(),r=(0,ce.A)().scale(S).precision(0).clipAngle(null).translate([0,0]);function n(t){return e(ue(t))}function i(t){n[t]=function(){return arguments.length?(e[t].apply(e,arguments),n):e[t]()}}return e.invert&&(n.invert=function(t){return he(e.invert(t))}),n.stream=function(t){var n=e.stream(t),i=r.stream({point:function(t,e){n.point(t/2,C(y(-e/2*E))*S)},lineStart:function(){n.lineStart()},lineEnd:function(){n.lineEnd()},polygonStart:function(){n.polygonStart()},polygonEnd:function(){n.polygonEnd()}});return i.sphere=n.sphere,i},n.rotate=function(t){return arguments.length?(r.rotate(t),n):r.rotate()},n.center=function(t){return arguments.length?(e.center(ue(t)),n):he(e.center())},i(\"angle\"),i(\"clipAngle\"),i(\"clipExtent\"),i(\"fitExtent\"),i(\"fitHeight\"),i(\"fitSize\"),i(\"fitWidth\"),i(\"scale\"),i(\"translate\"),i(\"precision\"),n.scale(249.5)}function pe(t,e){var r=2*_/e,n=t*t;function a(e,a){var l=(0,Z.j)(e,a),c=l[0],u=l[1],h=c*c+u*u;if(h>n){var f=I(h),p=o(u,c),m=r*d(p/r),y=p-m,x=t*s(y),w=(t*g(y)-y*g(x))/(b-x),T=de(y,w),k=(_-t)/me(T,x,_);c=f;var A,M=50;do{c-=A=(t+me(T,x,c)*k-f)/(T(c)*k)}while(i(A)>v&&--M>0);u=y*g(c),c<b&&(u-=w*(c-b));var S=g(m),E=s(m);l[0]=c*E-u*S,l[1]=c*S+u*E}return l}return a.invert=function(e,a){var l=e*e+a*a;if(l>n){var c=I(l),u=o(a,e),h=r*d(u/r),f=u-h;e=c*s(f),a=c*g(f);for(var p=e-b,m=g(e),y=a/m,v=e<b?1/0:0,w=10;;){var T=t*g(y),k=t*s(y),A=g(k),M=b-k,S=(T-y*A)/M,E=de(y,S);if(i(v)<x||! --w)break;y-=v=(y*m-S*p-a)/(m-2*p*(M*(k+y*T*s(k)-A)-T*(T-y*A))/(M*M))}e=(c=t+me(E,k,e)*(_-t)/me(E,k,_))*s(u=h+y),a=c*g(u)}return Z.j.invert(e,a)},a}function de(t,e){return function(r){var n=t*s(r);return r<b&&(n-=e),I(1+n*n)}}function me(t,e,r){for(var n=(r-e)/50,i=t(e)+t(r),a=1,o=e;a<50;++a)i+=2*t(o+=n);return.5*i*n}function ge(){var t=6,e=30*E,r=s(e),i=g(e),a=(0,n.U)(pe),l=a(e,t),c=l.stream,u=-s(.01*E),h=g(.01*E);return l.radius=function(n){return arguments.length?(r=s(e=n*E),i=g(e),a(e,t)):e*S},l.lobes=function(r){return arguments.length?a(e,t=+r):t},l.stream=function(e){var n=l.rotate(),a=c(e),f=(l.rotate([0,0]),c(e));return l.rotate(n),a.sphere=function(){f.polygonStart(),f.lineStart();for(var e=0,n=2*_/t,a=0;e<t;++e,a-=n)f.point(o(h*s(a),u)*S,C(h*g(a))*S),f.point(o(i*s(a-n/2),r)*S,C(i*g(a-n/2))*S);f.lineEnd(),f.polygonEnd()},a},l.rotate([90,-40]).scale(91.7095).clipAngle(179.999)}function ye(t,e,r,n,a,o,l,c){function u(i,u){if(!u)return[t*i/_,0];var h=u*u,f=t+h*(e+h*(r+h*n)),p=u*(a-1+h*(o-c+h*l)),d=(f*f+p*p)/(2*p),m=i*C(f/d)/_;return[d*g(m),u*(1+h*c)+d*(1-s(m))]}return arguments.length<8&&(c=0),u.invert=function(u,h){var f,p,d=_*u/t,m=h,y=50;do{var x=m*m,b=t+x*(e+x*(r+x*n)),w=m*(a-1+x*(o-c+x*l)),T=b*b+w*w,k=2*w,A=T/k,M=A*A,S=C(b/A)/_,E=d*S,L=b*b,P=(2*e+x*(4*r+6*x*n))*m,z=a+x*(3*o+5*x*l),O=(2*(b*P+w*(z-1))*k-T*(2*(z-1)))/(k*k),D=s(E),R=g(E),F=A*D,B=A*R,N=d/_*(1/I(1-L/M))*(P*A-b*O)/M,j=B-u,U=m*(1+x*c)+A-F-h,V=O*R+F*N,q=F*S,H=1+O-(O*D-B*N),G=B*S,Z=V*G-H*q;if(!Z)break;d-=f=(U*V-j*H)/Z,m-=p=(j*G-U*q)/Z}while((i(f)>v||i(p)>v)&&--y>0);return[d,m]},u}var ve=ye(2.8284,-1.6988,.75432,-.18071,1.76003,-.38914,.042555);function xe(){return(0,n.A)(ve).scale(149.995)}var _e=ye(2.583819,-.835827,.170354,-.038094,1.543313,-.411435,.082742);function be(){return(0,n.A)(_e).scale(153.93)}var we=ye(5/6*_,-.62636,-.0344,0,1.3493,-.05524,0,.045);function Te(){return(0,n.A)(we).scale(130.945)}function ke(t,e){var r=t*t,n=e*e;return[t*(1-.162388*n)*(.87-952426e-9*r*r),e*(1+n/12)]}function Ae(){return(0,n.A)(ke).scale(131.747)}ke.invert=function(t,e){var r,n=t,a=e,o=50;do{var s=a*a;a-=r=(a*(1+s/12)-e)/(1+s/4)}while(i(r)>v&&--o>0);o=50,t/=1-.162388*s;do{var l=(l=n*n)*l;n-=r=(n*(.87-952426e-9*l)-t)/(.87-.00476213*l)}while(i(r)>v&&--o>0);return[n,a]};var Me=ye(2.6516,-.76534,.19123,-.047094,1.36289,-.13965,.031762);function Se(){return(0,n.A)(Me).scale(131.087)}function Ee(t){var e=t(b,0)[0]-t(-b,0)[0];function r(r,n){var i=r>0?-.5:.5,a=t(r+i*_,n);return a[0]-=i*e,a}return t.invert&&(r.invert=function(r,n){var i=r>0?-.5:.5,a=t.invert(r+i*e,n),o=a[0]-i*_;return o<-_?o+=2*_:o>_&&(o-=2*_),a[0]=o,a}),r}function Ce(t,e){var r=m(t),n=m(e),a=s(e),l=s(t)*a,c=g(t)*a,u=g(n*e);t=i(o(c,u)),e=C(l),i(t-b)>v&&(t%=b);var h=function(t,e){if(e===b)return[0,0];var r,n,a=g(e),o=a*a,l=o*o,c=1+l,u=1+3*l,h=1-l,f=C(1/I(c)),p=h+o*c*f,d=(1-a)/p,m=I(d),y=d*c,x=I(y),w=m*h;if(0===t)return[0,-(w+o*x)];var T,k=s(e),A=1/k,M=2*a*k,S=(-p*k-(1-a)*((-3*o+f*u)*M))/(p*p),E=-A*M,L=-A*(o*c*S+d*u*M),P=-2*A*(h*(.5*S/m)-2*o*m*M),z=4*t/_;if(t>.222*_||e<_/4&&t>.175*_){if(r=(w+o*I(y*(1+l)-w*w))/(1+l),t>_/4)return[r,r];var O=r,D=.5*r;r=.5*(D+O),n=50;do{var R=r*(P+E*I(y-r*r))+L*C(r/x)-z;if(!R)break;R<0?D=r:O=r,r=.5*(D+O)}while(i(O-D)>v&&--n>0)}else{r=v,n=25;do{var F=r*r,B=I(y-F),N=P+E*B,j=r*N+L*C(r/x)-z;r-=T=B?j/(N+(L-E*F)/B):0}while(i(T)>v&&--n>0)}return[r,-w-o*I(y-r*r)]}(t>_/4?b-t:t,e);return t>_/4&&(u=h[0],h[0]=-h[1],h[1]=-u),h[0]*=r,h[1]*=-n,h}function Le(){return(0,n.A)(Ee(Ce)).scale(239.75)}function Ie(t,e){var r,n,o,c,u,h;if(e<v)return[(c=g(t))-(r=e*(t-c*(n=s(t)))/4)*n,n+r*c,1-e*c*c/2,t-r];if(e>=1-v)return r=(1-e)/4,o=1/(n=z(t)),[(c=((h=l(2*(h=t)))-1)/(h+1))+r*((u=n*P(t))-t)/(n*n),o-r*c*o*(u-t),o+r*c*o*(u+t),2*a(l(t))-b+r*(u-t)/n];var f=[1,0,0,0,0,0,0,0,0],p=[I(e),0,0,0,0,0,0,0,0],d=0;for(n=I(1-e),u=1;i(p[d]/f[d])>v&&d<8;)r=f[d++],p[d]=(r-n)/2,f[d]=(r+n)/2,n=I(r*n),u*=2;o=u*f[d]*t;do{o=(C(c=p[d]*g(n=o)/f[d])+o)/2}while(--d);return[g(o),c=s(o),c/s(o-n),o]}function Pe(t,e){if(!e)return t;if(1===e)return u(y(t/2+w));for(var r=1,n=I(1-e),o=I(e),s=0;i(o)>v;s++){if(t%_){var l=a(n*y(t)/r);l<0&&(l+=_),t+=l+~~(t/_)*_}else t+=t;o=(r+n)/2,n=I(r*n),o=((r=o)-n)/2}return t/(p(2,s)*r)}function ze(t,e){var r=(k-1)/(k+1),n=I(1-r*r),c=Pe(b,n*n),h=u(y(_/4+i(e)/2)),f=l(-1*h)/I(r),p=function(t,e){var r=t*t,n=e+1,i=1-r-e*e;return[.5*((t>=0?b:-b)-o(i,2*t)),-.25*u(i*i+4*r)+.5*u(n*n+r)]}(f*s(-1*t),f*g(-1*t)),d=function(t,e,r){var n=i(t),o=P(i(e));if(n){var s=1/g(n),l=1/(y(n)*y(n)),c=-(l+r*(o*o*s*s)-1+r),u=(-c+I(c*c-(r-1)*l*4))/2;return[Pe(a(1/I(u)),r)*m(t),Pe(a(I((u/l-1)/r)),1-r)*m(e)]}return[0,Pe(a(o),1-r)*m(e)]}(p[0],p[1],n*n);return[-d[1],(e>=0?1:-1)*(.5*c-d[0])]}function Oe(){return(0,n.A)(Ee(ze)).scale(151.496)}Ce.invert=function(t,e){i(t)>1&&(t=2*m(t)-t),i(e)>1&&(e=2*m(e)-e);var r=m(t),n=m(e),a=-r*t,l=-n*e,c=l/a<1,u=function(t,e){for(var r=0,n=1,a=.5,o=50;;){var l=a*a,c=I(a),u=C(1/I(1+l)),h=1-l+a*(1+l)*u,f=(1-c)/h,p=I(f),d=f*(1+l),m=p*(1-l),g=I(d-t*t),y=e+m+a*g;if(i(n-r)<x||0==--o||0===y)break;y>0?r=a:n=a,a=.5*(r+n)}if(!o)return null;var v=C(c),b=s(v),w=1/b,T=2*c*b,k=(-h*b-(-3*a+u*(1+3*l))*T*(1-c))/(h*h);return[_/4*(t*(-2*w*((1-l)*(.5*k/p)-2*a*p*T)+-w*T*g)+-w*(a*(1+l)*k+f*(1+3*l)*T)*C(t/I(d))),v]}(c?l:a,c?a:l),h=u[0],f=u[1],p=s(f);return c&&(h=-b-h),[r*(o(g(h)*p,-g(f))+_),n*C(s(h)*p)]},ze.invert=function(t,e){var r,n,i,s,c,h,f=(k-1)/(k+1),p=I(1-f*f),d=(n=-t,i=p*p,(r=.5*Pe(b,p*p)-e)?(s=Ie(r,i),n?(h=(c=Ie(n,1-i))[1]*c[1]+i*s[0]*s[0]*c[0]*c[0],[[s[0]*c[2]/h,s[1]*s[2]*c[0]*c[1]/h],[s[1]*c[1]/h,-s[0]*s[2]*c[0]*c[2]/h],[s[2]*c[1]*c[2]/h,-i*s[0]*s[1]*c[0]/h]]):[[s[0],0],[s[1],0],[s[2],0]]):[[0,(c=Ie(n,1-i))[0]/c[1]],[1/c[1],0],[c[2]/c[1],0]]),m=function(t,e){var r=e[0]*e[0]+e[1]*e[1];return[(t[0]*e[0]+t[1]*e[1])/r,(t[1]*e[0]-t[0]*e[1])/r]}(d[0],d[1]);return[o(m[1],m[0])/-1,2*a(l(-.5*u(f*m[0]*m[0]+f*m[1]*m[1])))-b]};var De=r(39127);function Re(t){var e=g(t),r=s(t),n=Fe(t);function a(t,a){var o=n(t,a);t=o[0],a=o[1];var l=g(a),c=s(a),u=s(t),h=L(e*l+r*c*u),f=g(h),p=i(f)>v?h/f:1;return[p*r*g(t),(i(t)>b?p:-p)*(e*c-r*l*u)]}return n.invert=Fe(-t),a.invert=function(t,r){var i=I(t*t+r*r),a=-g(i),l=s(i),c=i*l,u=-r*a,h=i*e,f=I(c*c+u*u-h*h),p=o(c*h+u*f,u*h-c*f),d=(i>b?-1:1)*o(t*a,i*s(p)*l+r*g(p)*a);return n.invert(d,p)},a}function Fe(t){var e=g(t),r=s(t);return function(t,n){var i=s(n),a=s(t)*i,l=g(t)*i,c=g(n);return[o(l,a*r-c*e),C(c*r+a*e)]}}function Be(){var t=0,e=(0,n.U)(Re),r=e(t),i=r.rotate,a=r.stream,o=(0,De.A)();return r.parallel=function(n){if(!arguments.length)return t*S;var i=r.rotate();return e(t=n*E).rotate(i)},r.rotate=function(e){return arguments.length?(i.call(r,[e[0],e[1]-t*S]),o.center([-e[0],-e[1]]),r):((e=i.call(r))[1]+=t*S,e)},r.stream=function(t){return(t=a(t)).sphere=function(){t.polygonStart();var e,r=o.radius(89.99)().coordinates[0],n=r.length-1,i=-1;for(t.lineStart();++i<n;)t.point((e=r[i])[0],e[1]);for(t.lineEnd(),n=(r=o.radius(90.01)().coordinates[0]).length-1,t.lineStart();--i>=0;)t.point((e=r[i])[0],e[1]);t.lineEnd(),t.polygonEnd()},t},r.scale(79.4187).parallel(45).clipAngle(179.999)}var Ne=r(29725),je=r(20465),Ue=C(1-1/3)*S,Ve=Rt(0);function qe(t){var e=Ue*E,r=Ct(_,e)[0]-Ct(-_,e)[0],n=Ve(0,e)[1],a=Ct(0,e)[1],o=A-a,s=M/t,l=4/M,u=n+o*o*4/M;function p(p,d){var m,g=i(d);if(g>e){var y=f(t-1,h(0,c((p+_)/s)));(m=Ct(p+=_*(t-1)/t-y*s,g))[0]=m[0]*M/r-M*(t-1)/(2*t)+y*M/t,m[1]=n+4*(m[1]-a)*o/M,d<0&&(m[1]=-m[1])}else m=Ve(p,d);return m[0]*=l,m[1]/=u,m}return p.invert=function(e,p){e/=l;var d=i(p*=u);if(d>n){var m=f(t-1,h(0,c((e+_)/s)));e=(e+_*(t-1)/t-m*s)*r/M;var g=Ct.invert(e,.25*(d-n)*M/o+a);return g[0]-=_*(t-1)/t-m*s,p<0&&(g[1]=-g[1]),g}return Ve.invert(e,p)},p}function He(t,e){return[t,1&e?90-v:Ue]}function Ge(t,e){return[t,1&e?-90+v:-Ue]}function Ze(t){return[t[0]*(1-v),t[1]]}function We(){var t=4,e=(0,n.U)(qe),r=e(t),i=r.stream;return r.lobes=function(r){return arguments.length?e(t=+r):t},r.stream=function(e){var n=r.rotate(),a=i(e),o=(r.rotate([0,0]),i(e));return r.rotate(n),a.sphere=function(){var e,r;(0,je.A)((e=180/t,r=[].concat((0,Ne.y1)(-180,180+e/2,e).map(He),(0,Ne.y1)(180,-180-e/2,-e).map(Ge)),{type:\"Polygon\",coordinates:[180===e?r.map(Ze):r]}),o)},a},r.scale(239.75)}function Ye(t){var e,r=1+t,n=C(g(1/r)),a=2*I(_/(e=_+4*n*r)),l=.5*a*(r+I(t*(2+t))),c=t*t,u=r*r;function h(h,f){var p,d,m=1-g(f);if(m&&m<2){var y,v=b-f,w=25;do{var T=g(v),k=s(v),A=n+o(T,r-k),M=1+u-2*r*k;v-=y=(v-c*n-r*T+M*A-.5*m*e)/(2*r*T*A)}while(i(y)>x&&--w>0);p=a*I(M),d=h*A/_}else p=a*(t+m),d=h*n/_;return[p*g(d),l-p*s(d)]}return h.invert=function(t,i){var s=t*t+(i-=l)*i,h=(1+u-s/(a*a))/(2*r),f=L(h),p=g(f),d=n+o(p,r-h);return[C(t/I(s))*_/d,C(1-2*(f-c*n-r*p+(1+u-2*r*h)*d)/e)]},h}function Xe(){var t=1,e=(0,n.U)(Ye),r=e(t);return r.ratio=function(r){return arguments.length?e(t=+r):t},r.scale(167.774).center([0,18.67])}var $e=.7109889596207567,Je=.0528035274542;function Ke(t,e){return e>-$e?((t=at(t,e))[1]+=Je,t):ft(t,e)}function Qe(){return(0,n.A)(Ke).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}function tr(t,e){return i(e)>$e?((t=at(t,e))[1]-=e>0?Je:-Je,t):ft(t,e)}function er(){return(0,n.A)(tr).scale(152.63)}function rr(t,e,r,n){var i=I(4*_/(2*r+(1+t-e/2)*g(2*r)+(t+e)/2*g(4*r)+e/2*g(6*r))),a=I(n*g(r)*I((1+t*s(2*r)+e*s(4*r))/(1+t+e))),o=r*c(1);function l(r){return I(1+t*s(2*r)+e*s(4*r))}function c(n){var i=n*r;return(2*i+(1+t-e/2)*g(2*i)+(t+e)/2*g(4*i)+e/2*g(6*i))/r}function u(t){return l(t)*g(t)}var h=function(t,e){var n=r*Q(c,o*g(e)/r,e/_);isNaN(n)&&(n=r*m(e));var u=i*l(n);return[u*a*t/_*s(n),u/a*g(n)]};return h.invert=function(t,e){var n=Q(u,e*a/i);return[t*_/(s(n)*i*a*l(n)),C(r*c(n/r)/o)]},0===r&&(i=I(n/_),(h=function(t,e){return[t*i,g(e)/i]}).invert=function(t,e){return[t/i,C(e*i)]}),h}function nr(){var t=1,e=0,r=45*E,i=2,a=(0,n.U)(rr),o=a(t,e,r,i);return o.a=function(n){return arguments.length?a(t=+n,e,r,i):t},o.b=function(n){return arguments.length?a(t,e=+n,r,i):e},o.psiMax=function(n){return arguments.length?a(t,e,r=+n*E,i):r*S},o.ratio=function(n){return arguments.length?a(t,e,r,i=+n):i},o.scale(180.739)}function ir(t,e,r,n,i,a,o,s,l,c,u){if(u.nanEncountered)return NaN;var h,f,p,d,m,g,y,v,x,_;if(f=t(e+.25*(h=r-e)),p=t(r-.25*h),isNaN(f))u.nanEncountered=!0;else{if(!isNaN(p))return _=((g=(d=h*(n+4*f+i)/12)+(m=h*(i+4*p+a)/12))-o)/15,c>l?(u.maxDepthCount++,g+_):Math.abs(_)<s?g+_:(v=ir(t,e,y=e+.5*h,n,f,i,d,.5*s,l,c+1,u),isNaN(v)?(u.nanEncountered=!0,NaN):(x=ir(t,y,r,i,p,a,m,.5*s,l,c+1,u),isNaN(x)?(u.nanEncountered=!0,NaN):v+x));u.nanEncountered=!0}}function ar(t,e,r,n,i){void 0===n&&(n=1e-8),void 0===i&&(i=20);var a=t(e),o=t(.5*(e+r)),s=t(r);return ir(t,e,r,a,o,s,(a+4*o+s)*(r-e)/6,n,i,1,{maxDepthCount:0,nanEncountered:!1})}function or(t,e,r){function n(r){return t+(1-t)*p(1-p(r,e),1/e)}function a(t){return ar(n,0,t,1e-4)}for(var o=1/a(1),s=1e3,l=(1+1e-8)*o,c=[],u=0;u<=s;u++)c.push(a(u/s)*l);function h(t){var e=0,r=s,n=500;do{c[n]>t?r=n:e=n,n=e+r>>1}while(n>e);var i=c[n+1]-c[n];return i&&(i=(t-c[n+1])/i),(n+1+i)/s}var f=2*h(1)/_*o/r,d=function(t,e){var r=h(i(g(e))),a=n(r)*t;return r/=f,[a,e>=0?r:-r]};return d.invert=function(t,e){var r;return i(e*=f)<1&&(r=m(e)*C(a(i(e))*o)),[t/n(i(e)),r]},d}function sr(){var t=0,e=2.5,r=1.183136,i=(0,n.U)(or),a=i(t,e,r);return a.alpha=function(n){return arguments.length?i(t=+n,e,r):t},a.k=function(n){return arguments.length?i(t,e=+n,r):e},a.gamma=function(n){return arguments.length?i(t,e,r=+n):r},a.scale(152.63)}function lr(t,e){return i(t[0]-e[0])<v&&i(t[1]-e[1])<v}function cr(t,e){for(var r,n,i,a=-1,o=t.length,s=t[0],l=[];++a<o;){n=((r=t[a])[0]-s[0])/e,i=(r[1]-s[1])/e;for(var c=0;c<e;++c)l.push([s[0]+c*n,s[1]+c*i]);s=r}return l.push(r),l}function ur(t,e,r){var i,a;function o(r,n){for(var i=n<0?-1:1,a=e[+(n<0)],o=0,s=a.length-1;o<s&&r>a[o][2][0];++o);var l=t(r-a[o][1][0],n);return l[0]+=t(a[o][1][0],i*n>i*a[o][0][1]?a[o][0][1]:n)[0],l}r?o.invert=r(o):t.invert&&(o.invert=function(r,n){for(var i=a[+(n<0)],s=e[+(n<0)],l=0,c=i.length;l<c;++l){var u=i[l];if(u[0][0]<=r&&r<u[1][0]&&u[0][1]<=n&&n<u[1][1]){var h=t.invert(r-t(s[l][1][0],0)[0],n);return h[0]+=s[l][1][0],lr(o(h[0],h[1]),[r,n])?h:null}}});var s=(0,n.A)(o),l=s.stream;return s.stream=function(t){var e=s.rotate(),r=l(t),n=(s.rotate([0,0]),l(t));return s.rotate(e),r.sphere=function(){(0,je.A)(i,n)},r},s.lobes=function(r){return arguments.length?(i=function(t){var e,r,n,i,a,o,s,l=[],c=t[0].length;for(s=0;s<c;++s)r=(e=t[0][s])[0][0],n=e[0][1],i=e[1][1],a=e[2][0],o=e[2][1],l.push(cr([[r+v,n+v],[r+v,i-v],[a-v,i-v],[a-v,o+v]],30));for(s=t[1].length-1;s>=0;--s)r=(e=t[1][s])[0][0],n=e[0][1],i=e[1][1],a=e[2][0],o=e[2][1],l.push(cr([[a-v,o-v],[a-v,i+v],[r+v,i+v],[r+v,n-v]],30));return{type:\"Polygon\",coordinates:[(0,Ne.Am)(l)]}}(r),e=r.map((function(t){return t.map((function(t){return[[t[0][0]*E,t[0][1]*E],[t[1][0]*E,t[1][1]*E],[t[2][0]*E,t[2][1]*E]]}))})),a=e.map((function(e){return e.map((function(e){var r,n=t(e[0][0],e[0][1])[0],i=t(e[2][0],e[2][1])[0],a=t(e[1][0],e[0][1])[1],o=t(e[1][0],e[1][1])[1];return a>o&&(r=a,a=o,o=r),[[n,a],[i,o]]}))})),s):e.map((function(t){return t.map((function(t){return[[t[0][0]*S,t[0][1]*S],[t[1][0]*S,t[1][1]*S],[t[2][0]*S,t[2][1]*S]]}))}))},null!=e&&s.lobes(e),s}Ke.invert=function(t,e){return e>-$e?at.invert(t,e-Je):ft.invert(t,e)},tr.invert=function(t,e){return i(e)>$e?at.invert(t,e+(e>0?Je:-Je)):ft.invert(t,e)};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 fr(){return ur(ct,hr).scale(160.857)}var pr=[[[[-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 ur(tr,pr).scale(152.63)}var mr=[[[[-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 gr(){return ur(at,mr).scale(169.529)}var yr=[[[[-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 vr(){return ur(at,yr).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 _r(){return ur(Ke,xr,tt).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}var br=[[[[-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 ur(ft,br).scale(152.63).rotate([-20,0])}function Tr(t,e){return[3/M*t*I(_*_/3-e*e),e]}function kr(){return(0,n.A)(Tr).scale(158.837)}function Ar(t){function e(e,r){if(i(i(r)-b)<v)return[0,r<0?-2:2];var n=g(r),a=p((1+n)/(1-n),t/2),o=.5*(a+1/a)+s(e*=t);return[2*g(e)/o,(a-1/a)/o]}return e.invert=function(e,r){var n=i(r);if(i(n-2)<v)return e?null:[0,m(r)*b];if(n>2)return null;var a=(e/=2)*e,s=(r/=2)*r,l=2*r/(1+a+s);return l=p((1+l)/(1-l),1/t),[o(2*e,1-a-s)/t,C((l-1)/(l+1))]},e}function Mr(){var t=.5,e=(0,n.U)(Ar),r=e(t);return r.spacing=function(r){return arguments.length?e(t=+r):t},r.scale(124.75)}Tr.invert=function(t,e){return[M/3*t/I(_*_/3-e*e),e]};var Sr=_/k;function Er(t,e){return[t*(1+I(s(e)))/2,e/(s(e/2)*s(t/6))]}function Cr(){return(0,n.A)(Er).scale(97.2672)}function Lr(t,e){var r=t*t,n=e*e;return[t*(.975534+n*(-.0143059*r-.119161+-.0547009*n)),e*(1.00384+r*(.0802894+-.02855*n+199025e-9*r)+n*(.0998909+-.0491032*n))]}function Ir(){return(0,n.A)(Lr).scale(139.98)}function Pr(t,e){return[g(t)/s(e),y(e)*s(t)]}function zr(){return(0,n.A)(Pr).scale(144.049).clipAngle(89.999)}function Or(t){var e=s(t),r=y(w+t/2);function n(n,a){var o=a-t,s=i(o)<v?n*e:i(s=w+a/2)<v||i(i(s)-b)<v?0:n*o/u(y(s)/r);return[s,o]}return n.invert=function(n,a){var o,s=a+t;return[i(a)<v?n/e:i(o=w+s/2)<v||i(i(o)-b)<v?0:n*u(y(o)/r)/a,s]},n}function Dr(){return ht(Or).parallel(40).scale(158.837)}function Rr(t,e){return[t,1.25*u(y(w+.4*e))]}function Fr(){return(0,n.A)(Rr).scale(108.318)}function Br(t){var e=t.length-1;function r(r,n){for(var i,a=s(n),o=2/(1+a*s(r)),l=o*a*g(r),c=o*g(n),u=e,h=t[u],f=h[0],p=h[1];--u>=0;)f=(h=t[u])[0]+l*(i=f)-c*p,p=h[1]+l*p+c*i;return[f=l*(i=f)-c*p,p=l*p+c*i]}return r.invert=function(r,n){var l=20,c=r,u=n;do{for(var h,f=e,p=t[f],d=p[0],m=p[1],y=0,x=0;--f>=0;)y=d+c*(h=y)-u*x,x=m+c*x+u*h,d=(p=t[f])[0]+c*(h=d)-u*m,m=p[1]+c*m+u*h;var _,b,w=(y=d+c*(h=y)-u*x)*y+(x=m+c*x+u*h)*x;c-=_=((d=c*(h=d)-u*m-r)*y+(m=c*m+u*h-n)*x)/w,u-=b=(m*y-d*x)/w}while(i(_)+i(b)>v*v&&--l>0);if(l){var T=I(c*c+u*u),k=2*a(.5*T),A=g(k);return[o(c*A,T*s(k)),T?C(u*A/T):0]}},r}Er.invert=function(t,e){var r=i(t),n=i(e),a=v,o=b;n<Sr?o*=n/Sr:a+=6*L(Sr/n);for(var l=0;l<25;l++){var c=g(o),u=I(s(o)),h=g(o/2),f=s(o/2),p=g(a/6),d=s(a/6),m=.5*a*(1+u)-r,y=o/(f*d)-n,x=u?-.25*a*c/u:0,_=.5*(1+u),w=(1+.5*o*h/f)/(f*d),T=o/f*(p/6)/(d*d),k=x*T-w*_,A=(m*T-y*_)/k,M=(y*x-m*w)/k;if(o-=A,a-=M,i(A)<v&&i(M)<v)break}return[t<0?-a:a,e<0?-o:o]},Lr.invert=function(t,e){var r=m(t)*_,n=e/2,a=50;do{var o=r*r,s=n*n,l=r*n,c=r*(.975534+s*(-.0143059*o-.119161+-.0547009*s))-t,u=n*(1.00384+o*(.0802894+-.02855*s+199025e-9*o)+s*(.0998909+-.0491032*s))-e,h=.975534-s*(.119161+3*o*.0143059+.0547009*s),f=-l*(.238322+.2188036*s+.0286118*o),p=l*(.1605788+7961e-7*o+-.0571*s),d=1.00384+o*(.0802894+199025e-9*o)+s*(3*(.0998909-.02855*o)-.245516*s),g=f*p-d*h,y=(u*f-c*d)/g,x=(c*p-u*h)/g;r-=y,n-=x}while((i(y)>v||i(x)>v)&&--a>0);return a&&[r,n]},Pr.invert=function(t,e){var r=t*t,n=e*e+1,i=r+n,a=t?T*I((i-I(i*i-4*r))/r):1/I(n);return[C(t*a),m(e)*L(a)]},Rr.invert=function(t,e){return[t,2.5*a(l(.8*e))-.625*_]};var Nr=[[.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]],qr=[[.721316,0],[0,0],[-.00881625,-.00617325]];function Hr(){return Xr(Nr,[152,-64]).scale(1400).center([-160.908,62.4864]).clipAngle(30).angle(7.8)}function Gr(){return Xr(jr,[95,-38]).scale(1e3).clipAngle(55).center([-96.5563,38.8675])}function Zr(){return Xr(Ur,[120,-45]).scale(359.513).clipAngle(55).center([-117.474,53.0628])}function Wr(){return Xr(Vr,[-20,-18]).scale(209.091).center([20,16.7214]).clipAngle(82)}function Yr(){return Xr(qr,[165,10]).scale(250).clipAngle(130).center([-165,-10])}function Xr(t,e){var r=(0,n.A)(Br(t)).rotate(e).clipAngle(90),i=(0,bt.A)(e),a=r.center;return delete r.rotate,r.center=function(t){return arguments.length?a(i(t)):i.invert(a())},r}var $r=I(6),Jr=I(7);function Kr(t,e){var r=C(7*g(e)/(3*$r));return[$r*t*(2*s(2*r/3)-1)/Jr,9*g(r/3)/Jr]}function Qr(){return(0,n.A)(Kr).scale(164.859)}function tn(t,e){for(var r,n=(1+T)*g(e),a=e,o=0;o<25&&(a-=r=(g(a/2)+g(a)-n)/(.5*s(a/2)+s(a)),!(i(r)<v));o++);return[t*(1+2*s(a)/s(a/2))/(3*k),2*I(3)*g(a/2)/I(2+k)]}function en(){return(0,n.A)(tn).scale(188.209)}function rn(t,e){for(var r,n=I(6/(4+_)),a=(1+_/4)*g(e),o=e/2,l=0;l<25&&(o-=r=(o/2+g(o)-a)/(.5+s(o)),!(i(r)<v));l++);return[n*(.5+s(o))*t/1.5,n*o]}function nn(){return(0,n.A)(rn).scale(166.518)}Kr.invert=function(t,e){var r=3*C(e*Jr/9);return[t*Jr/($r*(2*s(2*r/3)-1)),C(3*g(r)*$r/7)]},tn.invert=function(t,e){var r=e*I(2+k)/(2*I(3)),n=2*C(r);return[3*k*t/(1+2*s(n)/s(n/2)),C((r+g(n))/(1+T))]},rn.invert=function(t,e){var r=I(6/(4+_)),n=e/r;return i(i(n)-b)<v&&(n=n<0?-b:b),[1.5*t/(r*(.5+s(n))),C((n/2+g(n))/(1+_/4))]};var an=r(57949);function on(t,e){var r=e*e,n=r*r,i=r*n;return[t*(.84719-.13063*r+i*i*(.05494*r-.04515-.02326*n+.00331*i)),e*(1.01183+n*n*(.01926*r-.02625-.00396*n))]}function sn(){return(0,n.A)(on).scale(175.295)}function ln(t,e){return[t*(1+s(e))/2,2*(e-y(e/2))]}function cn(){return(0,n.A)(ln).scale(152.63)}on.invert=function(t,e){var r,n,a,o,s=e,l=25;do{s-=r=(s*(1.01183+(a=(n=s*s)*n)*a*(.01926*n-.02625-.00396*a))-e)/(1.01183+a*a*(.21186*n-.23625+-.05148*a))}while(i(r)>x&&--l>0);return[t/(.84719-.13063*(n=s*s)+(o=n*(a=n*n))*o*(.05494*n-.04515-.02326*a+.00331*o)),s]},ln.invert=function(t,e){for(var r=e/2,n=0,a=1/0;n<10&&i(a)>v;++n){var o=s(e/2);e-=a=(e-y(e/2)-r)/(1-.5/(o*o))}return[2*t/(1+s(e)),e]};var un=[[[[-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 hn(){return ur($(1/0),un).rotate([20,0]).scale(152.63)}function fn(t,e){var r=g(e),n=s(e),a=m(t);if(0===t||i(e)===b)return[0,e];if(0===e)return[t,0];if(i(t)===b)return[t*n,b*r];var o=_/(2*t)-2*t/_,l=2*e/_,c=(1-l*l)/(r-l),u=o*o,h=c*c,f=1+u/h,p=1+h/u,d=(o*r/c-o/2)/f,y=(h*r/u+c/2)/p,v=y*y-(h*r*r/u+c*r-1)/p;return[b*(d+I(d*d+n*n/f)*a),b*(y+I(v<0?0:v)*m(-e*o)*a)]}function pn(){return(0,n.A)(fn).scale(127.267)}fn.invert=function(t,e){var r=(t/=b)*t,n=r+(e/=b)*e,i=_*_;return[t?(n-1+I((1-n)*(1-n)+4*r))/(2*t)*b:0,Q((function(t){return n*(_*g(t)-2*t)*_+4*t*t*(e-g(t))+2*_*t-i*e}),0)]};var dn=1.0148,mn=.23185,gn=-.14499,yn=.02406,vn=dn,xn=5*mn,_n=7*gn,bn=9*yn,wn=1.790857183;function Tn(t,e){var r=e*e;return[t,e*(dn+r*r*(mn+r*(gn+yn*r)))]}function kn(){return(0,n.A)(Tn).scale(139.319)}function An(t,e){if(i(e)<v)return[t,0];var r=y(e),n=t*g(e);return[g(n)/r,e+(1-s(n))/r]}function Mn(){return(0,n.A)(An).scale(103.74)}Tn.invert=function(t,e){e>wn?e=wn:e<-1.790857183&&(e=-1.790857183);var r,n=e;do{var a=n*n;n-=r=(n*(dn+a*a*(mn+a*(gn+yn*a)))-e)/(vn+a*a*(xn+a*(_n+bn*a)))}while(i(r)>v);return[t,n]},An.invert=function(t,e){if(i(e)<v)return[t,0];var r,n=t*t+e*e,a=.5*e,o=10;do{var l=y(a),c=1/s(a),u=n-2*e*a+a*a;a-=r=(l*u+2*(a-e))/(2+u*c*c+2*(a-e)*l)}while(i(r)>v&&--o>0);return l=y(a),[(i(e)<i(a+1/l)?C(t*l):m(e)*m(t)*(L(i(t*l))+b))/g(a),a]};var Sn=r(43212),En=r(81758);function Cn(t,e){return[t[0]*e[0]+t[1]*e[3],t[0]*e[1]+t[1]*e[4],t[0]*e[2]+t[1]*e[5]+t[2],t[3]*e[0]+t[4]*e[3],t[3]*e[1]+t[4]*e[4],t[3]*e[2]+t[4]*e[5]+t[5]]}function Ln(t,e){return[t[0]-e[0],t[1]-e[1]]}function In(t){return I(t[0]*t[0]+t[1]*t[1])}function Pn(t,e,r){function i(t,r){var n,i=e(t,r),a=i.project([t*S,r*S]);return(n=i.transform)?[n[0]*a[0]+n[1]*a[1]+n[2],-(n[3]*a[0]+n[4]*a[1]+n[5])]:(a[1]=-a[1],a)}function a(t,r){var n=t.project.invert,i=t.transform,o=r;if(i&&(i=function(t){var e=1/(t[0]*t[4]-t[1]*t[3]);return[e*t[4],-e*t[1],e*(t[1]*t[5]-t[2]*t[4]),-e*t[3],e*t[0],e*(t[2]*t[3]-t[0]*t[5])]}(i),o=[i[0]*o[0]+i[1]*o[1]+i[2],i[3]*o[0]+i[4]*o[1]+i[5]]),n&&t===function(t){return e(t[0]*E,t[1]*E)}(s=n(o)))return s;for(var s,l=t.children,c=0,u=l&&l.length;c<u;++c)if(s=a(l[c],r))return s}!function t(e,r){if(e.edges=function(t){for(var e=t.length,r=[],n=t[e-1],i=0;i<e;++i)r.push([n,n=t[i]]);return r}(e.face),r.face){var n=e.shared=function(t,e){for(var r,n,i=t.length,a=null,o=0;o<i;++o){r=t[o];for(var s=e.length;--s>=0;)if(n=e[s],r[0]===n[0]&&r[1]===n[1]){if(a)return[a,r];a=r}}}(e.face,r.face),i=(u=n.map(r.project),h=n.map(e.project),f=Ln(u[1],u[0]),p=Ln(h[1],h[0]),d=function(t,e){return o(t[0]*e[1]-t[1]*e[0],t[0]*e[0]+t[1]*e[1])}(f,p),m=In(f)/In(p),Cn([1,0,u[0][0],0,1,u[0][1]],Cn([m,0,0,0,m,0],Cn([s(d),g(d),0,-g(d),s(d),0],[1,0,-h[0][0],0,1,-h[0][1]]))));e.transform=r.transform?Cn(r.transform,i):i;for(var a=r.edges,l=0,c=a.length;l<c;++l)On(n[0],a[l][1])&&On(n[1],a[l][0])&&(a[l]=e),On(n[0],a[l][0])&&On(n[1],a[l][1])&&(a[l]=e);for(l=0,c=(a=e.edges).length;l<c;++l)On(n[0],a[l][0])&&On(n[1],a[l][1])&&(a[l]=r),On(n[0],a[l][1])&&On(n[1],a[l][0])&&(a[l]=r)}else e.transform=r.transform;var u,h,f,p,d,m;return e.children&&e.children.forEach((function(r){t(r,e)})),e}(t,{transform:null}),Dn(t)&&(i.invert=function(e,r){var n=a(t,[e,-r]);return n&&(n[0]*=E,n[1]*=E,n)});var l=(0,n.A)(i),c=l.stream;return l.stream=function(e){var r=l.rotate(),n=c(e),i=(l.rotate([0,0]),c(e));return l.rotate(r),n.sphere=function(){i.polygonStart(),i.lineStart(),zn(i,t),i.lineEnd(),i.polygonEnd()},n},l.angle(null==r?-30:r*S)}function zn(t,e,r){var n,a,o=e.edges,s=o.length,l={type:\"MultiPoint\",coordinates:e.face},c=e.face.filter((function(t){return 90!==i(t[1])})),u=(0,Sn.A)({type:\"MultiPoint\",coordinates:c}),h=!1,f=-1,p=u[1][0]-u[0][0],d=180===p||360===p?[(u[0][0]+u[1][0])/2,(u[0][1]+u[1][1])/2]:(0,_t.A)(l);if(r)for(;++f<s&&o[f]!==r;);++f;for(var m=0;m<s;++m)a=o[(m+f)%s],Array.isArray(a)?(h||(t.point((n=(0,En.A)(a[0],d)(v))[0],n[1]),h=!0),t.point((n=(0,En.A)(a[1],d)(v))[0],n[1])):(h=!1,a!==r&&zn(t,a,e))}function On(t,e){return t&&e&&t[0]===e[0]&&t[1]===e[1]}function Dn(t){return t.project.invert||t.children&&t.children.some(Dn)}var Rn=r(48419),Fn=[[0,90],[-90,0],[0,0],[90,0],[180,0],[0,-90]],Bn=[[0,2,1],[0,3,2],[5,1,2],[5,2,3],[0,1,4],[0,4,3],[5,4,1],[5,3,4]].map((function(t){return t.map((function(t){return Fn[t]}))}));function Nn(t){t=t||function(t){var e=(0,_t.A)({type:\"MultiPoint\",coordinates:t});return(0,Rn.A)().scale(1).translate([0,0]).rotate([-e[0],-e[1]])};var e=Bn.map((function(e){return{face:e,project:t(e)}}));return[-1,0,0,1,0,1,4,5].forEach((function(t,r){var n=e[t];n&&(n.children||(n.children=[])).push(e[r])})),Pn(e[0],(function(t,r){return e[t<-_/2?r<0?6:4:t<0?r<0?2:0:t<_/2?r<0?3:1:r<0?7:5]})).angle(-30).scale(101.858).center([0,45])}var jn=2/I(3);function Un(t,e){var r=Ct(t,e);return[r[0]*jn,r[1]]}function Vn(t){t=t||function(t){var e=(0,_t.A)({type:\"MultiPoint\",coordinates:t});return(0,n.A)(Un).translate([0,0]).scale(1).rotate(e[1]>0?[-e[0],0]:[180-e[0],180])};var e=Bn.map((function(e){return{face:e,project:t(e)}}));return[-1,0,0,1,0,1,4,5].forEach((function(t,r){var n=e[t];n&&(n.children||(n.children=[])).push(e[r])})),Pn(e[0],(function(t,r){return e[t<-_/2?r<0?6:4:t<0?r<0?2:0:t<_/2?r<0?3:1:r<0?7:5]})).angle(-30).scale(121.906).center([0,48.5904])}function qn(t){t=t||function(t){var e=6===t.length?(0,_t.A)({type:\"MultiPoint\",coordinates:t}):t[0];return(0,Rn.A)().scale(1).translate([0,0]).rotate([-e[0],-e[1]])};var e=Bn.map((function(t){for(var e,r=t.map(Zn),n=r.length,i=r[n-1],a=[],o=0;o<n;++o)e=r[o],a.push(Gn([.9486832980505138*i[0]+.31622776601683794*e[0],.9486832980505138*i[1]+.31622776601683794*e[1],.9486832980505138*i[2]+.31622776601683794*e[2]]),Gn([.9486832980505138*e[0]+.31622776601683794*i[0],.9486832980505138*e[1]+.31622776601683794*i[1],.9486832980505138*e[2]+.31622776601683794*i[2]])),i=e;return a})),r=[],n=[-1,0,0,1,0,1,4,5];e.forEach((function(t,i){for(var a,o,s=Bn[i],l=s.length,c=r[i]=[],u=0;u<l;++u)e.push([s[u],t[(2*u+2)%(2*l)],t[(2*u+1)%(2*l)]]),n.push(i),c.push((a=Zn(t[(2*u+2)%(2*l)]),o=Zn(t[(2*u+1)%(2*l)]),[a[1]*o[2]-a[2]*o[1],a[2]*o[0]-a[0]*o[2],a[0]*o[1]-a[1]*o[0]]))}));var i=e.map((function(e){return{project:t(e),face:e}}));return n.forEach((function(t,e){var r=i[t];r&&(r.children||(r.children=[])).push(i[e])})),Pn(i[0],(function(t,e){var n=s(e),a=[n*s(t),n*g(t),g(e)],o=t<-_/2?e<0?6:4:t<0?e<0?2:0:t<_/2?e<0?3:1:e<0?7:5,l=r[o];return i[Hn(l[0],a)<0?8+3*o:Hn(l[1],a)<0?8+3*o+1:Hn(l[2],a)<0?8+3*o+2:o]})).angle(-30).scale(110.625).center([0,45])}function Hn(t,e){for(var r=0,n=t.length,i=0;r<n;++r)i+=t[r]*e[r];return i}function Gn(t){return[o(t[1],t[0])*S,C(h(-1,f(1,t[2])))*S]}function Zn(t){var e=t[0]*E,r=t[1]*E,n=s(r);return[n*s(e),n*g(e),g(r)]}function Wn(){}function Yn(t,e){var r,n=e.stream;if(!n)throw new Error(\"invalid projection\");switch(t&&t.type){case\"Feature\":r=$n;break;case\"FeatureCollection\":r=Xn;break;default:r=Jn}return r(t,n)}function Xn(t,e){return{type:\"FeatureCollection\",features:t.features.map((function(t){return $n(t,e)}))}}function $n(t,e){return{type:\"Feature\",id:t.id,properties:t.properties,geometry:Jn(t.geometry,e)}}function Jn(t,e){if(!t)return null;if(\"GeometryCollection\"===t.type)return function(t,e){return{type:\"GeometryCollection\",geometries:t.geometries.map((function(t){return Jn(t,e)}))}}(t,e);var r;switch(t.type){case\"Point\":case\"MultiPoint\":r=ti;break;case\"LineString\":case\"MultiLineString\":r=ei;break;case\"Polygon\":case\"MultiPolygon\":case\"Sphere\":r=ri;break;default:return null}return(0,je.A)(t,e(r)),r.result()}Un.invert=function(t,e){return Ct.invert(t/jn,e)};var Kn=[],Qn=[],ti={point:function(t,e){Kn.push([t,e])},result:function(){var t=Kn.length?Kn.length<2?{type:\"Point\",coordinates:Kn[0]}:{type:\"MultiPoint\",coordinates:Kn}:null;return Kn=[],t}},ei={lineStart:Wn,point:function(t,e){Kn.push([t,e])},lineEnd:function(){Kn.length&&(Qn.push(Kn),Kn=[])},result:function(){var t=Qn.length?Qn.length<2?{type:\"LineString\",coordinates:Qn[0]}:{type:\"MultiLineString\",coordinates:Qn}:null;return Qn=[],t}},ri={polygonStart:Wn,lineStart:Wn,point:function(t,e){Kn.push([t,e])},lineEnd:function(){var t=Kn.length;if(t){do{Kn.push(Kn[0].slice())}while(++t<4);Qn.push(Kn),Kn=[]}},polygonEnd:Wn,result:function(){if(!Qn.length)return null;var t=[],e=[];return Qn.forEach((function(r){!function(t){if((e=t.length)<4)return!1;for(var e,r=0,n=t[e-1][1]*t[0][0]-t[e-1][0]*t[0][1];++r<e;)n+=t[r-1][1]*t[r][0]-t[r-1][0]*t[r][1];return n<=0}(r)?e.push(r):t.push([r])})),e.forEach((function(e){var r=e[0];t.some((function(t){if(function(t,e){for(var r=e[0],n=e[1],i=!1,a=0,o=t.length,s=o-1;a<o;s=a++){var l=t[a],c=l[0],u=l[1],h=t[s],f=h[0],p=h[1];u>n^p>n&&r<(f-c)*(n-u)/(p-u)+c&&(i=!i)}return i}(t[0],r))return t.push(e),!0}))||t.push([e])})),Qn=[],t.length?t.length>1?{type:\"MultiPolygon\",coordinates:t}:{type:\"Polygon\",coordinates:t[0]}:null}};function ni(t){var e=t(b,0)[0]-t(-b,0)[0];function r(r,n){var a=i(r)<b,o=t(a?r:r>0?r-_:r+_,n),s=(o[0]-o[1])*T,l=(o[0]+o[1])*T;if(a)return[s,l];var c=e*T,u=s>0^l>0?-1:1;return[u*s-m(l)*c,u*l-m(s)*c]}return t.invert&&(r.invert=function(r,n){var a=(r+n)*T,o=(n-r)*T,s=i(a)<.5*e&&i(o)<.5*e;if(!s){var l=e*T,c=a>0^o>0?-1:1,u=-c*r+(o>0?1:-1)*l,h=-c*n+(a>0?1:-1)*l;a=(-u-h)*T,o=(u-h)*T}var f=t.invert(a,o);return s||(f[0]+=a>0?_:-_),f}),(0,n.A)(r).rotate([-90,-90,45]).clipAngle(179.999)}function ii(){return ni(Ce).scale(176.423)}function ai(){return ni(ze).scale(111.48)}function oi(t,e){if(!(0<=(e=+e)&&e<=20))throw new Error(\"invalid digits\");function r(t){var r=t.length,n=2,i=new Array(r);for(i[0]=+t[0].toFixed(e),i[1]=+t[1].toFixed(e);n<r;)i[n]=t[n],++n;return i}function n(t){return t.map(r)}function i(t){for(var e=r(t[0]),n=[e],i=1;i<t.length;i++){var a=r(t[i]);(a.length>2||a[0]!=e[0]||a[1]!=e[1])&&(n.push(a),e=a)}return 1===n.length&&t.length>1&&n.push(r(t[t.length-1])),n}function a(t){return t.map(i)}function o(t){if(null==t)return t;var e;switch(t.type){case\"GeometryCollection\":e={type:\"GeometryCollection\",geometries:t.geometries.map(o)};break;case\"Point\":e={type:\"Point\",coordinates:r(t.coordinates)};break;case\"MultiPoint\":e={type:t.type,coordinates:n(t.coordinates)};break;case\"LineString\":e={type:t.type,coordinates:i(t.coordinates)};break;case\"MultiLineString\":case\"Polygon\":e={type:t.type,coordinates:a(t.coordinates)};break;case\"MultiPolygon\":e={type:\"MultiPolygon\",coordinates:t.coordinates.map(a)};break;default:return t}return null!=t.bbox&&(e.bbox=t.bbox),e}function s(t){var e={type:\"Feature\",properties:t.properties,geometry:o(t.geometry)};return null!=t.id&&(e.id=t.id),null!=t.bbox&&(e.bbox=t.bbox),e}if(null!=t)switch(t.type){case\"Feature\":return s(t);case\"FeatureCollection\":var l={type:\"FeatureCollection\",features:t.features.map(s)};return null!=t.bbox&&(l.bbox=t.bbox),l;default:return o(t)}return t}function si(t){var e=g(t);function r(r,n){var i=e?y(r*e/2)/e:r/2;if(!n)return[2*i,-t];var o=2*a(i*g(n)),l=1/y(n);return[g(o)*l,n+(1-s(o))*l-t]}return r.invert=function(r,n){if(i(n+=t)<v)return[e?2*a(e*r/2)/e:r,0];var o,l=r*r+n*n,c=0,u=10;do{var h=y(c),f=1/s(c),p=l-2*n*c+c*c;c-=o=(h*p+2*(c-n))/(2+p*f*f+2*(c-n)*h)}while(i(o)>v&&--u>0);var d=r*(h=y(c)),m=y(i(n)<i(c+1/h)?.5*C(d):.5*L(d)+_/4)/g(c);return[e?2*a(e*m)/e:2*m,c]},r}function li(){return ht(si).scale(131.215)}var ci=[[.9986,-.062],[1,0],[.9986,.062],[.9954,.124],[.99,.186],[.9822,.248],[.973,.31],[.96,.372],[.9427,.434],[.9216,.4958],[.8962,.5571],[.8679,.6176],[.835,.6769],[.7986,.7346],[.7597,.7903],[.7186,.8435],[.6732,.8936],[.6213,.9394],[.5722,.9761],[.5322,1]];function ui(t,e){var r,n=f(18,36*i(e)/_),a=c(n),o=n-a,s=(r=ci[a])[0],l=r[1],u=(r=ci[++a])[0],h=r[1],p=(r=ci[f(19,++a)])[0],d=r[1];return[t*(u+o*(p-s)/2+o*o*(p-2*u+s)/2),(e>0?b:-b)*(h+o*(d-l)/2+o*o*(d-2*h+l)/2)]}function hi(){return(0,n.A)(ui).scale(152.63)}function fi(t,e){var r=function(t){function e(e,r){var n=s(r),i=(t-1)/(t-n*s(e));return[i*n*g(e),i*g(r)]}return e.invert=function(e,r){var n=e*e+r*r,i=I(n),a=(t-I(1-n*(t+1)/(t-1)))/((t-1)/i+i/(t-1));return[o(e*a,i*I(1-a*a)),i?C(r*a/i):0]},e}(t);if(!e)return r;var n=s(e),i=g(e);function a(e,a){var o=r(e,a),s=o[1],l=s*i/(t-1)+n;return[o[0]*n/l,s/l]}return a.invert=function(e,a){var o=(t-1)/(t-1-a*i);return r.invert(o*e,o*a*n)},a}function pi(){var t=2,e=0,r=(0,n.U)(fi),i=r(t,e);return i.distance=function(n){return arguments.length?r(t=+n,e):t},i.tilt=function(n){return arguments.length?r(t,e=n*E):e*S},i.scale(432.147).clipAngle(L(1/t)*S-1e-6)}ci.forEach((function(t){t[1]*=1.0144})),ui.invert=function(t,e){var r=e/b,n=90*r,a=f(18,i(n/5)),o=h(0,c(a));do{var s=ci[o][1],l=ci[o+1][1],u=ci[f(19,o+2)][1],p=u-s,d=u-2*l+s,m=2*(i(r)-l)/p,g=d/p,y=m*(1-g*m*(1-2*g*m));if(y>=0||1===o){n=(e>=0?5:-5)*(y+a);var v,_=50;do{y=(a=f(18,i(n)/5))-(o=c(a)),s=ci[o][1],l=ci[o+1][1],u=ci[f(19,o+2)][1],n-=(v=(e>=0?b:-b)*(l+y*(u-s)/2+y*y*(u-2*l+s)/2)-e)*S}while(i(v)>x&&--_>0);break}}while(--o>=0);var w=ci[o][0],T=ci[o+1][0],k=ci[f(19,o+2)][0];return[t/(T+y*(k-w)/2+y*y*(k-2*T+w)/2),n*E]};var di=1e-4,mi=1e4,gi=-180,yi=gi+di,vi=180,xi=vi-di,_i=-90,bi=_i+di,wi=90,Ti=wi-di;function ki(t){return t.length>0}function Ai(t){return t===_i||t===wi?[0,t]:[gi,(e=t,Math.floor(e*mi)/mi)];var e}function Mi(t){var e=t[0],r=t[1],n=!1;return e<=yi?(e=gi,n=!0):e>=xi&&(e=vi,n=!0),r<=bi?(r=_i,n=!0):r>=Ti&&(r=wi,n=!0),n?[e,r]:t}function Si(t){return t.map(Mi)}function Ei(t,e,r){for(var n=0,i=t.length;n<i;++n){var a=t[n].slice();r.push({index:-1,polygon:e,ring:a});for(var o=0,s=a.length;o<s;++o){var l=a[o],c=l[0],u=l[1];if(c<=yi||c>=xi||u<=bi||u>=Ti){a[o]=Mi(l);for(var h=o+1;h<s;++h){var f=a[h],p=f[0],d=f[1];if(p>yi&&p<xi&&d>bi&&d<Ti)break}if(h===o+1)continue;if(o){var m={index:-1,polygon:e,ring:a.slice(0,o+1)};m.ring[m.ring.length-1]=Ai(u),r[r.length-1]=m}else r.pop();if(h>=s)break;r.push({index:-1,polygon:e,ring:a=a.slice(h-1)}),a[0]=Ai(a[0][1]),o=-1,s=a.length}}}}function Ci(t){var e,r,n,i,a,o,s=t.length,l={},c={};for(e=0;e<s;++e)n=(r=t[e]).ring[0],a=r.ring[r.ring.length-1],n[0]!==a[0]||n[1]!==a[1]?(r.index=e,l[n]=c[a]=r):(r.polygon.push(r.ring),t[e]=null);for(e=0;e<s;++e)if(r=t[e]){if(n=r.ring[0],a=r.ring[r.ring.length-1],i=c[n],o=l[a],delete l[n],delete c[a],n[0]===a[0]&&n[1]===a[1]){r.polygon.push(r.ring);continue}i?(delete c[n],delete l[i.ring[0]],i.ring.pop(),t[i.index]=null,r={index:-1,polygon:i.polygon,ring:i.ring.concat(r.ring)},i===o?r.polygon.push(r.ring):(r.index=s++,t.push(l[r.ring[0]]=c[r.ring[r.ring.length-1]]=r))):o?(delete l[a],delete c[o.ring[o.ring.length-1]],r.ring.pop(),r={index:s++,polygon:o.polygon,ring:r.ring.concat(o.ring)},t[o.index]=null,t.push(l[r.ring[0]]=c[r.ring[r.ring.length-1]]=r)):(r.ring.push(r.ring[0]),r.polygon.push(r.ring))}}function Li(t){var e={type:\"Feature\",geometry:Ii(t.geometry)};return null!=t.id&&(e.id=t.id),null!=t.bbox&&(e.bbox=t.bbox),null!=t.properties&&(e.properties=t.properties),e}function Ii(t){if(null==t)return t;var e,r,n,i;switch(t.type){case\"GeometryCollection\":e={type:\"GeometryCollection\",geometries:t.geometries.map(Ii)};break;case\"Point\":e={type:\"Point\",coordinates:Mi(t.coordinates)};break;case\"MultiPoint\":case\"LineString\":e={type:t.type,coordinates:Si(t.coordinates)};break;case\"MultiLineString\":e={type:\"MultiLineString\",coordinates:t.coordinates.map(Si)};break;case\"Polygon\":var a=[];Ei(t.coordinates,a,r=[]),Ci(r),e={type:\"Polygon\",coordinates:a};break;case\"MultiPolygon\":r=[],n=-1,i=t.coordinates.length;for(var o=new Array(i);++n<i;)Ei(t.coordinates[n],o[n]=[],r);Ci(r),e={type:\"MultiPolygon\",coordinates:o.filter(ki)};break;default:return t}return null!=t.bbox&&(e.bbox=t.bbox),e}function Pi(t){if(null==t)return t;switch(t.type){case\"Feature\":return Li(t);case\"FeatureCollection\":var e={type:\"FeatureCollection\",features:t.features.map(Li)};return null!=t.bbox&&(e.bbox=t.bbox),e;default:return Ii(t)}}function zi(t,e){var r=y(e/2),n=g(w*r);return[t*(.74482-.34588*n*n),1.70711*r]}function Oi(){return(0,n.A)(zi).scale(146.153)}function Di(t,e,r){var i=(0,En.A)(e,r),a=i(.5),o=(0,bt.A)([-a[0],-a[1]])(e),s=i.distance/2,l=-C(g(o[1]*E)/g(s)),c=[-a[0],-a[1],-(o[0]>0?_-l:l)*S],u=(0,n.A)(t(s)).rotate(c),h=(0,bt.A)(c),f=u.center;return delete u.rotate,u.center=function(t){return arguments.length?f(h(t)):h.invert(f())},u.clipAngle(90)}function Ri(t){var e=s(t);function r(t,r){var n=(0,Rn.T)(t,r);return n[0]*=e,n}return r.invert=function(t,r){return Rn.T.invert(t/e,r)},r}function Fi(){return Bi([-158,21.5],[-77,39]).clipAngle(60).scale(400)}function Bi(t,e){return Di(Ri,t,e)}function Ni(t){if(!(t*=2))return Z.j;var e=-t/2,r=-e,n=t*t,i=y(r),a=.5/g(r);function l(i,a){var o=L(s(a)*s(i-e)),l=L(s(a)*s(i-r));return[((o*=o)-(l*=l))/(2*t),(a<0?-1:1)*I(4*n*l-(n-o+l)*(n-o+l))/(2*t)]}return l.invert=function(t,n){var l,c,u=n*n,h=s(I(u+(l=t+e)*l)),f=s(I(u+(l=t+r)*l));return[o(c=h-f,l=(h+f)*i),(n<0?-1:1)*L(I(l*l+c*c)*a)]},l}function ji(){return Ui([-158,21.5],[-77,39]).clipAngle(130).scale(122.571)}function Ui(t,e){return Di(Ni,t,e)}function Vi(t,e){if(i(e)<v)return[t,0];var r=i(e/b),n=C(r);if(i(t)<v||i(i(e)-b)<v)return[0,m(e)*_*y(n/2)];var a=s(n),o=i(_/t-t/_)/2,l=o*o,c=a/(r+a-1),u=c*(2/r-1),h=u*u,f=h+l,p=c-h,d=l+c;return[m(t)*_*(o*p+I(l*p*p-f*(c*c-h)))/f,m(e)*_*(u*d-o*I((l+1)*f-d*d))/f]}function qi(){return(0,n.A)(Vi).scale(79.4183)}function Hi(t,e){if(i(e)<v)return[t,0];var r=i(e/b),n=C(r);if(i(t)<v||i(i(e)-b)<v)return[0,m(e)*_*y(n/2)];var a=s(n),o=i(_/t-t/_)/2,l=o*o,c=a*(I(1+l)-o*a)/(1+l*r*r);return[m(t)*_*c,m(e)*_*I(1-c*(2*o+c))]}function Gi(){return(0,n.A)(Hi).scale(79.4183)}function Zi(t,e){if(i(e)<v)return[t,0];var r=e/b,n=C(r);if(i(t)<v||i(i(e)-b)<v)return[0,_*y(n/2)];var a=(_/t-t/_)/2,o=r/(1+s(n));return[_*(m(t)*I(a*a+1-o*o)-a),_*o]}function Wi(){return(0,n.A)(Zi).scale(79.4183)}function Yi(t,e){if(!e)return[t,0];var r=i(e);if(!t||r===b)return[0,e];var n=r/b,a=n*n,o=(8*n-a*(a+2)-5)/(2*a*(n-1)),s=o*o,l=n*o,c=a+s+2*l,u=n+3*o,h=t/b,f=h+1/h,p=m(i(t)-b)*I(f*f-4),d=p*p,g=(p*(c+s-1)+2*I(c*(a+s*d-1)+(1-a)*(a*(u*u+4*s)+12*l*s+4*s*s)))/(4*c+d);return[m(t)*b*g,m(e)*b*I(1+p*i(g)-g*g)]}function Xi(){return(0,n.A)(Yi).scale(127.16)}function $i(t,e,r,n){var i=_/3;t=h(t,v),e=h(e,v),t=f(t,b),e=f(e,_-v),r=h(r,0),r=f(r,100-v);var a=(n=h(n,v))/100,l=L((r/100+1)*s(i))/i,c=g(t)/g(l*b),u=e/_,p=I(a*g(t/2)/g(e/2));return function(t,e,r,n,i){function a(a,o){var l=r*g(n*o),c=I(1-l*l),u=I(2/(1+c*s(a*=i)));return[t*c*u*g(a),e*l*u]}return a.invert=function(a,s){var l=a/t,c=s/e,u=I(l*l+c*c),h=2*C(u/2);return[o(a*y(h),t*u)/i,u&&C(s*g(h)/(e*r*u))/n]},a}(p/I(u*c*l),1/(p*I(u*c*l)),c,l,u)}function Ji(){var t=65*E,e=60*E,r=20,i=200,a=(0,n.U)($i),o=a(t,e,r,i);return o.poleline=function(n){return arguments.length?a(t=+n*E,e,r,i):t*S},o.parallels=function(n){return arguments.length?a(t,e=+n*E,r,i):e*S},o.inflation=function(n){return arguments.length?a(t,e,r=+n,i):r},o.ratio=function(n){return arguments.length?a(t,e,r,i=+n):i},o.scale(163.775)}function Ki(){return Ji().poleline(65).parallels(60).inflation(0).ratio(200).scale(172.633)}zi.invert=function(t,e){var r=e/1.70711,n=g(w*r);return[t/(.74482-.34588*n*n),2*a(r)]},Vi.invert=function(t,e){if(i(e)<v)return[t,0];if(i(t)<v)return[0,b*g(2*a(e/_))];var r=(t/=_)*t,n=(e/=_)*e,o=r+n,l=o*o,c=-i(e)*(1+o),u=c-2*n+r,h=-2*c+1+2*n+l,f=n/h+(2*u*u*u/(h*h*h)-9*c*u/(h*h))/27,p=(c-u*u/(3*h))/h,d=2*I(-p/3),y=L(3*f/(p*d))/3;return[_*(o-1+I(1+2*(r-n)+l))/(2*t),m(e)*_*(-d*s(y+_/3)-u/(3*h))]},Hi.invert=function(t,e){if(!t)return[0,b*g(2*a(e/_))];var r=i(t/_),n=(1-r*r-(e/=_)*e)/(2*r),s=I(n*n+1);return[m(t)*_*(s-n),m(e)*b*g(2*o(I((1-2*n*r)*(n+s)-r),I(s+n+r)))]},Zi.invert=function(t,e){if(!e)return[t,0];var r=e/_,n=(_*_*(1-r*r)-t*t)/(2*_*t);return[t?_*(m(t)*I(n*n+1)-n):0,b*g(2*a(r))]},Yi.invert=function(t,e){var r;if(!t||!e)return[t,e];e/=_;var n=m(t)*t/b,a=(n*n-1+4*e*e)/i(n),o=a*a,s=2*e,l=50;do{var c=s*s,u=(8*s-c*(c+2)-5)/(2*c*(s-1)),h=(3*s-c*s-10)/(2*c*s),f=u*u,p=s*u,d=s+u,g=d*d,y=s+3*u,x=-2*d*(4*p*f+(1-4*c+3*c*c)*(1+h)+f*(14*c-6-o+(8*c-8-2*o)*h)+p*(12*c-8+(10*c-10-o)*h)),w=I(g*(c+f*o-1)+(1-c)*(c*(y*y+4*f)+f*(12*p+4*f)));s-=r=(a*(g+f-1)+2*w-n*(4*g+o))/(a*(2*u*h+2*d*(1+h))+x/w-8*d*(a*(-1+f+g)+2*w)*(1+h)/(o+4*g))}while(r>v&&--l>0);return[m(t)*(I(a*a+4)+a)*_/4,b*s]};var Qi=4*_+3*I(3),ta=2*I(2*_*I(3)/Qi),ea=it(ta*I(3)/_,ta,Qi/6);function ra(){return(0,n.A)(ea).scale(176.84)}function na(t,e){return[t*I(1-3*e*e/(_*_)),e]}function ia(){return(0,n.A)(na).scale(152.63)}function aa(t,e){var r=s(e),n=s(t)*r,i=1-n,a=s(t=o(g(t)*r,-g(e))),l=g(t);return[l*(r=I(1-n*n))-a*i,-a*r-l*i]}function oa(){return(0,n.A)(aa).rotate([0,-90,45]).scale(124.75).clipAngle(179.999)}function sa(t,e){var r=R(t,e);return[(r[0]+t/b)/2,(r[1]+e)/2]}function la(){return(0,n.A)(sa).scale(158.837)}na.invert=function(t,e){return[t/I(1-3*e*e/(_*_)),e]},aa.invert=function(t,e){var r=(t*t+e*e)/-2,n=I(-r*(2+r)),i=e*r+t*n,a=t*r-e*n,s=I(a*a+i*i);return[o(n*i,s*(1+r)),s?-C(n*a/s):0]},sa.invert=function(t,e){var r=t,n=e,a=25;do{var o,l=s(n),c=g(n),u=g(2*n),h=c*c,f=l*l,p=g(r),d=s(r/2),m=g(r/2),y=m*m,x=1-f*d*d,_=x?L(l*d)*I(o=1/x):o=0,w=.5*(2*_*l*m+r/b)-t,T=.5*(_*c+n)-e,k=.5*o*(f*y+_*l*d*h)+.5/b,A=o*(p*u/4-_*c*m),M=.125*o*(u*m-_*c*f*p),S=.5*o*(h*d+_*y*l)+.5,E=A*M-S*k,C=(T*A-w*S)/E,P=(w*M-T*k)/E;r-=C,n-=P}while((i(C)>v||i(P)>v)&&--a>0);return[r,n]}},49353:function(t,e,r){\"use strict\";function n(){return new i}function i(){this.reset()}r.d(e,{A:function(){return n}}),i.prototype={constructor:i,reset:function(){this.s=this.t=0},add:function(t){o(a,t,this.t),o(this,a.s,this.s),this.s?this.t+=a.t:this.s=a.t},valueOf:function(){return this.s}};var a=new i;function o(t,e,r){var n=t.s=e+r,i=n-e,a=n-i;t.t=e-a+(r-i)}},43976:function(t,e,r){\"use strict\";r.d(e,{Ay:function(){return x},B0:function(){return f},Y7:function(){return d}});var n,i,a,o,s,l=r(49353),c=r(61323),u=r(53341),h=r(20465),f=(0,l.A)(),p=(0,l.A)(),d={point:u.A,lineStart:u.A,lineEnd:u.A,polygonStart:function(){f.reset(),d.lineStart=m,d.lineEnd=g},polygonEnd:function(){var t=+f;p.add(t<0?c.FA+t:t),this.lineStart=this.lineEnd=this.point=u.A},sphere:function(){p.add(c.FA)}};function m(){d.point=y}function g(){v(n,i)}function y(t,e){d.point=v,n=t,i=e,t*=c.F2,e*=c.F2,a=t,o=(0,c.gn)(e=e/2+c.gz),s=(0,c.F8)(e)}function v(t,e){t*=c.F2,e=(e*=c.F2)/2+c.gz;var r=t-a,n=r>=0?1:-1,i=n*r,l=(0,c.gn)(e),u=(0,c.F8)(e),h=s*u,p=o*l+h*(0,c.gn)(i),d=h*n*(0,c.F8)(i);f.add((0,c.FP)(d,p)),a=t,o=l,s=u}function x(t){return p.reset(),(0,h.A)(t,d),2*p}},43212:function(t,e,r){\"use strict\";r.d(e,{A:function(){return L}});var n,i,a,o,s,l,c,u,h,f,p=r(49353),d=r(43976),m=r(20375),g=r(61323),y=r(20465),v=(0,p.A)(),x={point:_,lineStart:w,lineEnd:T,polygonStart:function(){x.point=k,x.lineStart=A,x.lineEnd=M,v.reset(),d.Y7.polygonStart()},polygonEnd:function(){d.Y7.polygonEnd(),x.point=_,x.lineStart=w,x.lineEnd=T,d.B0<0?(n=-(a=180),i=-(o=90)):v>g.Ni?o=90:v<-g.Ni&&(i=-90),f[0]=n,f[1]=a},sphere:function(){n=-(a=180),i=-(o=90)}};function _(t,e){h.push(f=[n=t,a=t]),e<i&&(i=e),e>o&&(o=e)}function b(t,e){var r=(0,m.jf)([t*g.F2,e*g.F2]);if(u){var l=(0,m.r8)(u,r),c=[l[1],-l[0],0],p=(0,m.r8)(c,l);(0,m.Cx)(p),p=(0,m.EV)(p);var d,y=t-s,v=y>0?1:-1,x=p[0]*g.uj*v,_=(0,g.tn)(y)>180;_^(v*s<x&&x<v*t)?(d=p[1]*g.uj)>o&&(o=d):_^(v*s<(x=(x+360)%360-180)&&x<v*t)?(d=-p[1]*g.uj)<i&&(i=d):(e<i&&(i=e),e>o&&(o=e)),_?t<s?S(n,t)>S(n,a)&&(a=t):S(t,a)>S(n,a)&&(n=t):a>=n?(t<n&&(n=t),t>a&&(a=t)):t>s?S(n,t)>S(n,a)&&(a=t):S(t,a)>S(n,a)&&(n=t)}else h.push(f=[n=t,a=t]);e<i&&(i=e),e>o&&(o=e),u=r,s=t}function w(){x.point=b}function T(){f[0]=n,f[1]=a,x.point=_,u=null}function k(t,e){if(u){var r=t-s;v.add((0,g.tn)(r)>180?r+(r>0?360:-360):r)}else l=t,c=e;d.Y7.point(t,e),b(t,e)}function A(){d.Y7.lineStart()}function M(){k(l,c),d.Y7.lineEnd(),(0,g.tn)(v)>g.Ni&&(n=-(a=180)),f[0]=n,f[1]=a,u=null}function S(t,e){return(e-=t)<0?e+360:e}function E(t,e){return t[0]-e[0]}function C(t,e){return t[0]<=t[1]?t[0]<=e&&e<=t[1]:e<t[0]||t[1]<e}function L(t){var e,r,s,l,c,u,p;if(o=a=-(n=i=1/0),h=[],(0,y.A)(t,x),r=h.length){for(h.sort(E),e=1,c=[s=h[0]];e<r;++e)C(s,(l=h[e])[0])||C(s,l[1])?(S(s[0],l[1])>S(s[0],s[1])&&(s[1]=l[1]),S(l[0],s[1])>S(s[0],s[1])&&(s[0]=l[0])):c.push(s=l);for(u=-1/0,e=0,s=c[r=c.length-1];e<=r;s=l,++e)l=c[e],(p=S(s[1],l[0]))>u&&(u=p,n=l[0],a=s[1])}return h=f=null,n===1/0||i===1/0?[[NaN,NaN],[NaN,NaN]]:[[n,i],[a,o]]}},20375:function(t,e,r){\"use strict\";r.d(e,{Cx:function(){return u},EV:function(){return i},W8:function(){return o},ep:function(){return l},jf:function(){return a},ly:function(){return c},r8:function(){return s}});var n=r(61323);function i(t){return[(0,n.FP)(t[1],t[0]),(0,n.qR)(t[2])]}function a(t){var e=t[0],r=t[1],i=(0,n.gn)(r);return[i*(0,n.gn)(e),i*(0,n.F8)(e),(0,n.F8)(r)]}function o(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}function s(t,e){return[t[1]*e[2]-t[2]*e[1],t[2]*e[0]-t[0]*e[2],t[0]*e[1]-t[1]*e[0]]}function l(t,e){t[0]+=e[0],t[1]+=e[1],t[2]+=e[2]}function c(t,e){return[t[0]*e,t[1]*e,t[2]*e]}function u(t){var e=(0,n.RZ)(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]);t[0]/=e,t[1]/=e,t[2]/=e}},30021:function(t,e,r){\"use strict\";r.d(e,{A:function(){return z}});var n,i,a,o,s,l,c,u,h,f,p,d,m,g,y,v,x=r(61323),_=r(53341),b=r(20465),w={sphere:_.A,point:T,lineStart:A,lineEnd:E,polygonStart:function(){w.lineStart=C,w.lineEnd=L},polygonEnd:function(){w.lineStart=A,w.lineEnd=E}};function T(t,e){t*=x.F2,e*=x.F2;var r=(0,x.gn)(e);k(r*(0,x.gn)(t),r*(0,x.F8)(t),(0,x.F8)(e))}function k(t,e,r){++n,a+=(t-a)/n,o+=(e-o)/n,s+=(r-s)/n}function A(){w.point=M}function M(t,e){t*=x.F2,e*=x.F2;var r=(0,x.gn)(e);g=r*(0,x.gn)(t),y=r*(0,x.F8)(t),v=(0,x.F8)(e),w.point=S,k(g,y,v)}function S(t,e){t*=x.F2,e*=x.F2;var r=(0,x.gn)(e),n=r*(0,x.gn)(t),a=r*(0,x.F8)(t),o=(0,x.F8)(e),s=(0,x.FP)((0,x.RZ)((s=y*o-v*a)*s+(s=v*n-g*o)*s+(s=g*a-y*n)*s),g*n+y*a+v*o);i+=s,l+=s*(g+(g=n)),c+=s*(y+(y=a)),u+=s*(v+(v=o)),k(g,y,v)}function E(){w.point=T}function C(){w.point=I}function L(){P(d,m),w.point=T}function I(t,e){d=t,m=e,t*=x.F2,e*=x.F2,w.point=P;var r=(0,x.gn)(e);g=r*(0,x.gn)(t),y=r*(0,x.F8)(t),v=(0,x.F8)(e),k(g,y,v)}function P(t,e){t*=x.F2,e*=x.F2;var r=(0,x.gn)(e),n=r*(0,x.gn)(t),a=r*(0,x.F8)(t),o=(0,x.F8)(e),s=y*o-v*a,d=v*n-g*o,m=g*a-y*n,_=(0,x.RZ)(s*s+d*d+m*m),b=(0,x.qR)(_),w=_&&-b/_;h+=w*s,f+=w*d,p+=w*m,i+=b,l+=b*(g+(g=n)),c+=b*(y+(y=a)),u+=b*(v+(v=o)),k(g,y,v)}function z(t){n=i=a=o=s=l=c=u=h=f=p=0,(0,b.A)(t,w);var e=h,r=f,d=p,m=e*e+r*r+d*d;return m<x.$t&&(e=l,r=c,d=u,i<x.Ni&&(e=a,r=o,d=s),(m=e*e+r*r+d*d)<x.$t)?[NaN,NaN]:[(0,x.FP)(r,e)*x.uj,(0,x.qR)(d/(0,x.RZ)(m))*x.uj]}},39127:function(t,e,r){\"use strict\";r.d(e,{J:function(){return s},A:function(){return c}});var n=r(20375);function i(t){return function(){return t}}var a=r(61323),o=r(30915);function s(t,e,r,i,o,s){if(r){var c=(0,a.gn)(e),u=(0,a.F8)(e),h=i*r;null==o?(o=e+i*a.FA,s=e-h/2):(o=l(c,o),s=l(c,s),(i>0?o<s:o>s)&&(o+=i*a.FA));for(var f,p=o;i>0?p>s:p<s;p-=h)f=(0,n.EV)([c,-u*(0,a.gn)(p),-u*(0,a.F8)(p)]),t.point(f[0],f[1])}}function l(t,e){(e=(0,n.jf)(e))[0]-=t,(0,n.Cx)(e);var r=(0,a.HQ)(-e[1]);return((-e[2]<0?-r:r)+a.FA-a.Ni)%a.FA}function c(){var t,e,r=i([0,0]),n=i(90),l=i(6),c={point:function(r,n){t.push(r=e(r,n)),r[0]*=a.uj,r[1]*=a.uj}};function u(){var i=r.apply(this,arguments),u=n.apply(this,arguments)*a.F2,h=l.apply(this,arguments)*a.F2;return t=[],e=(0,o.y)(-i[0]*a.F2,-i[1]*a.F2,0).invert,s(c,u,h,1),i={type:\"Polygon\",coordinates:[t]},t=e=null,i}return u.center=function(t){return arguments.length?(r=\"function\"==typeof t?t:i([+t[0],+t[1]]),u):r},u.radius=function(t){return arguments.length?(n=\"function\"==typeof t?t:i(+t),u):n},u.precision=function(t){return arguments.length?(l=\"function\"==typeof t?t:i(+t),u):l},u}},42413:function(t,e,r){\"use strict\";var n=r(13720),i=r(61323);e.A=(0,n.A)((function(){return!0}),(function(t){var e,r=NaN,n=NaN,a=NaN;return{lineStart:function(){t.lineStart(),e=1},point:function(o,s){var l=o>0?i.pi:-i.pi,c=(0,i.tn)(o-r);(0,i.tn)(c-i.pi)<i.Ni?(t.point(r,n=(n+s)/2>0?i.TW:-i.TW),t.point(a,n),t.lineEnd(),t.lineStart(),t.point(l,n),t.point(o,n),e=0):a!==l&&c>=i.pi&&((0,i.tn)(r-a)<i.Ni&&(r-=a*i.Ni),(0,i.tn)(o-l)<i.Ni&&(o-=l*i.Ni),n=function(t,e,r,n){var a,o,s=(0,i.F8)(t-r);return(0,i.tn)(s)>i.Ni?(0,i.rY)(((0,i.F8)(e)*(o=(0,i.gn)(n))*(0,i.F8)(r)-(0,i.F8)(n)*(a=(0,i.gn)(e))*(0,i.F8)(t))/(a*o*s)):(e+n)/2}(r,n,o,s),t.point(a,n),t.lineEnd(),t.lineStart(),t.point(l,n),e=0),t.point(r=o,n=s),a=l},lineEnd:function(){t.lineEnd(),r=n=NaN},clean:function(){return 2-e}}}),(function(t,e,r,n){var a;if(null==t)a=r*i.TW,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.tn)(t[0]-e[0])>i.Ni){var o=t[0]<e[0]?i.pi:-i.pi;a=r*o/2,n.point(-o,a),n.point(0,a),n.point(o,a)}else n.point(e[0],e[1])}),[-i.pi,-i.TW])},39608:function(t,e,r){\"use strict\";r.d(e,{A:function(){return i}});var n=r(53341);function i(){var t,e=[];return{point:function(e,r,n){t.push([e,r,n])},lineStart:function(){e.push(t=[])},lineEnd:n.A,rejoin:function(){e.length>1&&e.push(e.pop().concat(e.shift()))},result:function(){var r=e;return e=[],t=null,r}}}},47402:function(t,e,r){\"use strict\";r.d(e,{A:function(){return l}});var n=r(20375),i=r(39127),a=r(61323),o=r(28759),s=r(13720);function l(t){var e=(0,a.gn)(t),r=6*a.F2,l=e>0,c=(0,a.tn)(e)>a.Ni;function u(t,r){return(0,a.gn)(t)*(0,a.gn)(r)>e}function h(t,r,i){var o=(0,n.jf)(t),s=(0,n.jf)(r),l=[1,0,0],c=(0,n.r8)(o,s),u=(0,n.W8)(c,c),h=c[0],f=u-h*h;if(!f)return!i&&t;var p=e*u/f,d=-e*h/f,m=(0,n.r8)(l,c),g=(0,n.ly)(l,p),y=(0,n.ly)(c,d);(0,n.ep)(g,y);var v=m,x=(0,n.W8)(g,v),_=(0,n.W8)(v,v),b=x*x-_*((0,n.W8)(g,g)-1);if(!(b<0)){var w=(0,a.RZ)(b),T=(0,n.ly)(v,(-x-w)/_);if((0,n.ep)(T,g),T=(0,n.EV)(T),!i)return T;var k,A=t[0],M=r[0],S=t[1],E=r[1];M<A&&(k=A,A=M,M=k);var C=M-A,L=(0,a.tn)(C-a.pi)<a.Ni;if(!L&&E<S&&(k=S,S=E,E=k),L||C<a.Ni?L?S+E>0^T[1]<((0,a.tn)(T[0]-A)<a.Ni?S:E):S<=T[1]&&T[1]<=E:C>a.pi^(A<=T[0]&&T[0]<=M)){var I=(0,n.ly)(v,(-x+w)/_);return(0,n.ep)(I,g),[T,(0,n.EV)(I)]}}}function f(e,r){var n=l?t:a.pi-t,i=0;return e<-n?i|=1:e>n&&(i|=2),r<-n?i|=4:r>n&&(i|=8),i}return(0,s.A)(u,(function(t){var e,r,n,i,s;return{lineStart:function(){i=n=!1,s=1},point:function(p,d){var m,g=[p,d],y=u(p,d),v=l?y?0:f(p,d):y?f(p+(p<0?a.pi:-a.pi),d):0;if(!e&&(i=n=y)&&t.lineStart(),y!==n&&(!(m=h(e,g))||(0,o.A)(e,m)||(0,o.A)(g,m))&&(g[2]=1),y!==n)s=0,y?(t.lineStart(),m=h(g,e),t.point(m[0],m[1])):(m=h(e,g),t.point(m[0],m[1],2),t.lineEnd()),e=m;else if(c&&e&&l^y){var x;v&r||!(x=h(g,e,!0))||(s=0,l?(t.lineStart(),t.point(x[0][0],x[0][1]),t.point(x[1][0],x[1][1]),t.lineEnd()):(t.point(x[1][0],x[1][1]),t.lineEnd(),t.lineStart(),t.point(x[0][0],x[0][1],3)))}!y||e&&(0,o.A)(e,g)||t.point(g[0],g[1]),e=g,n=y,r=v},lineEnd:function(){n&&t.lineEnd(),e=null},clean:function(){return s|(i&&n)<<1}}}),(function(e,n,a,o){(0,i.J)(o,t,r,a,e,n)}),l?[0,-t]:[-a.pi,t-a.pi])}},13720:function(t,e,r){\"use strict\";r.d(e,{A:function(){return l}});var n=r(39608),i=r(19119),a=r(61323),o=r(2274),s=r(29725);function l(t,e,r,a){return function(l){var h,f,p,d=e(l),m=(0,n.A)(),g=e(m),y=!1,v={point:x,lineStart:b,lineEnd:w,polygonStart:function(){v.point=T,v.lineStart=k,v.lineEnd=A,f=[],h=[]},polygonEnd:function(){v.point=x,v.lineStart=b,v.lineEnd=w,f=(0,s.Am)(f);var t=(0,o.A)(h,a);f.length?(y||(l.polygonStart(),y=!0),(0,i.A)(f,u,t,r,l)):t&&(y||(l.polygonStart(),y=!0),l.lineStart(),r(null,null,1,l),l.lineEnd()),y&&(l.polygonEnd(),y=!1),f=h=null},sphere:function(){l.polygonStart(),l.lineStart(),r(null,null,1,l),l.lineEnd(),l.polygonEnd()}};function x(e,r){t(e,r)&&l.point(e,r)}function _(t,e){d.point(t,e)}function b(){v.point=_,d.lineStart()}function w(){v.point=x,d.lineEnd()}function T(t,e){p.push([t,e]),g.point(t,e)}function k(){g.lineStart(),p=[]}function A(){T(p[0][0],p[0][1]),g.lineEnd();var t,e,r,n,i=g.clean(),a=m.result(),o=a.length;if(p.pop(),h.push(p),p=null,o)if(1&i){if((e=(r=a[0]).length-1)>0){for(y||(l.polygonStart(),y=!0),l.lineStart(),t=0;t<e;++t)l.point((n=r[t])[0],n[1]);l.lineEnd()}}else o>1&&2&i&&a.push(a.pop().concat(a.shift())),f.push(a.filter(c))}return v}}function c(t){return t.length>1}function u(t,e){return((t=t.x)[0]<0?t[1]-a.TW-a.Ni:a.TW-t[1])-((e=e.x)[0]<0?e[1]-a.TW-a.Ni:a.TW-e[1])}},21503:function(t,e,r){\"use strict\";r.d(e,{A:function(){return c}});var n=r(61323),i=r(39608),a=r(19119),o=r(29725),s=1e9,l=-s;function c(t,e,r,c){function u(n,i){return t<=n&&n<=r&&e<=i&&i<=c}function h(n,i,a,o){var s=0,l=0;if(null==n||(s=f(n,a))!==(l=f(i,a))||d(n,i)<0^a>0)do{o.point(0===s||3===s?t:r,s>1?c:e)}while((s=(s+a+4)%4)!==l);else o.point(i[0],i[1])}function f(i,a){return(0,n.tn)(i[0]-t)<n.Ni?a>0?0:3:(0,n.tn)(i[0]-r)<n.Ni?a>0?2:1:(0,n.tn)(i[1]-e)<n.Ni?a>0?1:0:a>0?3:2}function p(t,e){return d(t.x,e.x)}function d(t,e){var r=f(t,1),n=f(e,1);return r!==n?r-n:0===r?e[1]-t[1]:1===r?t[0]-e[0]:2===r?t[1]-e[1]:e[0]-t[0]}return function(n){var f,d,m,g,y,v,x,_,b,w,T,k=n,A=(0,i.A)(),M={point:S,lineStart:function(){M.point=E,d&&d.push(m=[]),w=!0,b=!1,x=_=NaN},lineEnd:function(){f&&(E(g,y),v&&b&&A.rejoin(),f.push(A.result())),M.point=S,b&&k.lineEnd()},polygonStart:function(){k=A,f=[],d=[],T=!0},polygonEnd:function(){var e=function(){for(var e=0,r=0,n=d.length;r<n;++r)for(var i,a,o=d[r],s=1,l=o.length,u=o[0],h=u[0],f=u[1];s<l;++s)i=h,a=f,h=(u=o[s])[0],f=u[1],a<=c?f>c&&(h-i)*(c-a)>(f-a)*(t-i)&&++e:f<=c&&(h-i)*(c-a)<(f-a)*(t-i)&&--e;return e}(),r=T&&e,i=(f=(0,o.Am)(f)).length;(r||i)&&(n.polygonStart(),r&&(n.lineStart(),h(null,null,1,n),n.lineEnd()),i&&(0,a.A)(f,p,e,h,n),n.polygonEnd()),k=n,f=d=m=null}};function S(t,e){u(t,e)&&k.point(t,e)}function E(n,i){var a=u(n,i);if(d&&m.push([n,i]),w)g=n,y=i,v=a,w=!1,a&&(k.lineStart(),k.point(n,i));else if(a&&b)k.point(n,i);else{var o=[x=Math.max(l,Math.min(s,x)),_=Math.max(l,Math.min(s,_))],h=[n=Math.max(l,Math.min(s,n)),i=Math.max(l,Math.min(s,i))];!function(t,e,r,n,i,a){var o,s=t[0],l=t[1],c=0,u=1,h=e[0]-s,f=e[1]-l;if(o=r-s,h||!(o>0)){if(o/=h,h<0){if(o<c)return;o<u&&(u=o)}else if(h>0){if(o>u)return;o>c&&(c=o)}if(o=i-s,h||!(o<0)){if(o/=h,h<0){if(o>u)return;o>c&&(c=o)}else if(h>0){if(o<c)return;o<u&&(u=o)}if(o=n-l,f||!(o>0)){if(o/=f,f<0){if(o<c)return;o<u&&(u=o)}else if(f>0){if(o>u)return;o>c&&(c=o)}if(o=a-l,f||!(o<0)){if(o/=f,f<0){if(o>u)return;o>c&&(c=o)}else if(f>0){if(o<c)return;o<u&&(u=o)}return c>0&&(t[0]=s+c*h,t[1]=l+c*f),u<1&&(e[0]=s+u*h,e[1]=l+u*f),!0}}}}}(o,h,t,e,r,c)?a&&(k.lineStart(),k.point(n,i),T=!1):(b||(k.lineStart(),k.point(o[0],o[1])),k.point(h[0],h[1]),a||k.lineEnd(),T=!1)}x=n,_=i,b=a}return M}}},19119:function(t,e,r){\"use strict\";r.d(e,{A:function(){return o}});var n=r(28759),i=r(61323);function a(t,e,r,n){this.x=t,this.z=e,this.o=r,this.e=n,this.v=!1,this.n=this.p=null}function o(t,e,r,o,l){var c,u,h=[],f=[];if(t.forEach((function(t){if(!((e=t.length-1)<=0)){var e,r,o=t[0],s=t[e];if((0,n.A)(o,s)){if(!o[2]&&!s[2]){for(l.lineStart(),c=0;c<e;++c)l.point((o=t[c])[0],o[1]);return void l.lineEnd()}s[0]+=2*i.Ni}h.push(r=new a(o,t,null,!0)),f.push(r.o=new a(o,null,r,!1)),h.push(r=new a(s,t,null,!1)),f.push(r.o=new a(s,null,r,!0))}})),h.length){for(f.sort(e),s(h),s(f),c=0,u=f.length;c<u;++c)f[c].e=r=!r;for(var p,d,m=h[0];;){for(var g=m,y=!0;g.v;)if((g=g.n)===m)return;p=g.z,l.lineStart();do{if(g.v=g.o.v=!0,g.e){if(y)for(c=0,u=p.length;c<u;++c)l.point((d=p[c])[0],d[1]);else o(g.x,g.n.x,1,l);g=g.n}else{if(y)for(p=g.p.z,c=p.length-1;c>=0;--c)l.point((d=p[c])[0],d[1]);else o(g.x,g.p.x,-1,l);g=g.p}p=(g=g.o).z,y=!y}while(!g.v);l.lineEnd()}}}function s(t){if(e=t.length){for(var e,r,n=0,i=t[0];++n<e;)i.n=r=t[n],r.p=i,i=r;i.n=r=t[0],r.p=i}}},19057:function(t,e,r){\"use strict\";function n(t,e){function r(r,n){return r=t(r,n),e(r[0],r[1])}return t.invert&&e.invert&&(r.invert=function(r,n){return(r=e.invert(r,n))&&t.invert(r[0],r[1])}),r}r.d(e,{A:function(){return n}})},26827:function(t,e,r){\"use strict\";function n(t){return t}r.d(e,{A:function(){return n}})},70884:function(t,e,r){\"use strict\";r.r(e),r.d(e,{geoAlbers:function(){return Gt},geoAlbersUsa:function(){return Wt},geoArea:function(){return n.Ay},geoAzimuthalEqualArea:function(){return Yt.A},geoAzimuthalEqualAreaRaw:function(){return Yt.n},geoAzimuthalEquidistant:function(){return Xt.A},geoAzimuthalEquidistantRaw:function(){return Xt.j},geoBounds:function(){return i.A},geoCentroid:function(){return a.A},geoCircle:function(){return o.A},geoClipAntimeridian:function(){return s.A},geoClipCircle:function(){return l.A},geoClipExtent:function(){return u},geoClipRectangle:function(){return c.A},geoConicConformal:function(){return re},geoConicConformalRaw:function(){return ee},geoConicEqualArea:function(){return Ht},geoConicEqualAreaRaw:function(){return qt},geoConicEquidistant:function(){return ae},geoConicEquidistantRaw:function(){return ie},geoContains:function(){return R},geoDistance:function(){return S},geoEqualEarth:function(){return fe},geoEqualEarthRaw:function(){return he},geoEquirectangular:function(){return ne.A},geoEquirectangularRaw:function(){return ne.f},geoGnomonic:function(){return pe.A},geoGnomonicRaw:function(){return pe.T},geoGraticule:function(){return j},geoGraticule10:function(){return U},geoIdentity:function(){return me},geoInterpolate:function(){return Z.A},geoLength:function(){return k},geoMercator:function(){return Kt},geoMercatorRaw:function(){return Jt},geoNaturalEarth1:function(){return ge.A},geoNaturalEarth1Raw:function(){return ge.P},geoOrthographic:function(){return ye.A},geoOrthographicRaw:function(){return ye.x},geoPath:function(){return jt},geoProjection:function(){return Ut.A},geoProjectionMutator:function(){return Ut.U},geoRotation:function(){return $t.A},geoStereographic:function(){return _e},geoStereographicRaw:function(){return xe},geoStream:function(){return v.A},geoTransform:function(){return de.A},geoTransverseMercator:function(){return we},geoTransverseMercatorRaw:function(){return be}});var n=r(43976),i=r(43212),a=r(30021),o=r(39127),s=r(42413),l=r(47402),c=r(21503);function u(){var t,e,r,n=0,i=0,a=960,o=500;return r={stream:function(r){return t&&e===r?t:t=(0,c.A)(n,i,a,o)(e=r)},extent:function(s){return arguments.length?(n=+s[0][0],i=+s[0][1],a=+s[1][0],o=+s[1][1],t=e=null,r):[[n,i],[a,o]]}}}var h,f,p,d=r(2274),m=r(49353),g=r(61323),y=r(53341),v=r(20465),x=(0,m.A)(),_={sphere:y.A,point:y.A,lineStart:function(){_.point=w,_.lineEnd=b},lineEnd:y.A,polygonStart:y.A,polygonEnd:y.A};function b(){_.point=_.lineEnd=y.A}function w(t,e){t*=g.F2,e*=g.F2,h=t,f=(0,g.F8)(e),p=(0,g.gn)(e),_.point=T}function T(t,e){t*=g.F2,e*=g.F2;var r=(0,g.F8)(e),n=(0,g.gn)(e),i=(0,g.tn)(t-h),a=(0,g.gn)(i),o=n*(0,g.F8)(i),s=p*r-f*n*a,l=f*r+p*n*a;x.add((0,g.FP)((0,g.RZ)(o*o+s*s),l)),h=t,f=r,p=n}function k(t){return x.reset(),(0,v.A)(t,_),+x}var A=[null,null],M={type:\"LineString\",coordinates:A};function S(t,e){return A[0]=t,A[1]=e,k(M)}var E={Feature:function(t,e){return L(t.geometry,e)},FeatureCollection:function(t,e){for(var r=t.features,n=-1,i=r.length;++n<i;)if(L(r[n].geometry,e))return!0;return!1}},C={Sphere:function(){return!0},Point:function(t,e){return I(t.coordinates,e)},MultiPoint:function(t,e){for(var r=t.coordinates,n=-1,i=r.length;++n<i;)if(I(r[n],e))return!0;return!1},LineString:function(t,e){return P(t.coordinates,e)},MultiLineString:function(t,e){for(var r=t.coordinates,n=-1,i=r.length;++n<i;)if(P(r[n],e))return!0;return!1},Polygon:function(t,e){return z(t.coordinates,e)},MultiPolygon:function(t,e){for(var r=t.coordinates,n=-1,i=r.length;++n<i;)if(z(r[n],e))return!0;return!1},GeometryCollection:function(t,e){for(var r=t.geometries,n=-1,i=r.length;++n<i;)if(L(r[n],e))return!0;return!1}};function L(t,e){return!(!t||!C.hasOwnProperty(t.type))&&C[t.type](t,e)}function I(t,e){return 0===S(t,e)}function P(t,e){for(var r,n,i,a=0,o=t.length;a<o;a++){if(0===(n=S(t[a],e)))return!0;if(a>0&&(i=S(t[a],t[a-1]))>0&&r<=i&&n<=i&&(r+n-i)*(1-Math.pow((r-n)/i,2))<g.$t*i)return!0;r=n}return!1}function z(t,e){return!!(0,d.A)(t.map(O),D(e))}function O(t){return(t=t.map(D)).pop(),t}function D(t){return[t[0]*g.F2,t[1]*g.F2]}function R(t,e){return(t&&E.hasOwnProperty(t.type)?E[t.type]:L)(t,e)}var F=r(29725);function B(t,e,r){var n=(0,F.y1)(t,e-g.Ni,r).concat(e);return function(t){return n.map((function(e){return[t,e]}))}}function N(t,e,r){var n=(0,F.y1)(t,e-g.Ni,r).concat(e);return function(t){return n.map((function(e){return[e,t]}))}}function j(){var t,e,r,n,i,a,o,s,l,c,u,h,f=10,p=f,d=90,m=360,y=2.5;function v(){return{type:\"MultiLineString\",coordinates:x()}}function x(){return(0,F.y1)((0,g.mk)(n/d)*d,r,d).map(u).concat((0,F.y1)((0,g.mk)(s/m)*m,o,m).map(h)).concat((0,F.y1)((0,g.mk)(e/f)*f,t,f).filter((function(t){return(0,g.tn)(t%d)>g.Ni})).map(l)).concat((0,F.y1)((0,g.mk)(a/p)*p,i,p).filter((function(t){return(0,g.tn)(t%m)>g.Ni})).map(c))}return v.lines=function(){return x().map((function(t){return{type:\"LineString\",coordinates:t}}))},v.outline=function(){return{type:\"Polygon\",coordinates:[u(n).concat(h(o).slice(1),u(r).reverse().slice(1),h(s).reverse().slice(1))]}},v.extent=function(t){return arguments.length?v.extentMajor(t).extentMinor(t):v.extentMinor()},v.extentMajor=function(t){return arguments.length?(n=+t[0][0],r=+t[1][0],s=+t[0][1],o=+t[1][1],n>r&&(t=n,n=r,r=t),s>o&&(t=s,s=o,o=t),v.precision(y)):[[n,s],[r,o]]},v.extentMinor=function(r){return arguments.length?(e=+r[0][0],t=+r[1][0],a=+r[0][1],i=+r[1][1],e>t&&(r=e,e=t,t=r),a>i&&(r=a,a=i,i=r),v.precision(y)):[[e,a],[t,i]]},v.step=function(t){return arguments.length?v.stepMajor(t).stepMinor(t):v.stepMinor()},v.stepMajor=function(t){return arguments.length?(d=+t[0],m=+t[1],v):[d,m]},v.stepMinor=function(t){return arguments.length?(f=+t[0],p=+t[1],v):[f,p]},v.precision=function(f){return arguments.length?(y=+f,l=B(a,i,90),c=N(e,t,y),u=B(s,o,90),h=N(n,r,y),v):y},v.extentMajor([[-180,-90+g.Ni],[180,90-g.Ni]]).extentMinor([[-180,-80-g.Ni],[180,80+g.Ni]])}function U(){return j()()}var V,q,H,G,Z=r(81758),W=r(26827),Y=(0,m.A)(),X=(0,m.A)(),$={point:y.A,lineStart:y.A,lineEnd:y.A,polygonStart:function(){$.lineStart=J,$.lineEnd=tt},polygonEnd:function(){$.lineStart=$.lineEnd=$.point=y.A,Y.add((0,g.tn)(X)),X.reset()},result:function(){var t=Y/2;return Y.reset(),t}};function J(){$.point=K}function K(t,e){$.point=Q,V=H=t,q=G=e}function Q(t,e){X.add(G*t-H*e),H=t,G=e}function tt(){Q(V,q)}var et,rt,nt,it,at=$,ot=r(33028),st=0,lt=0,ct=0,ut=0,ht=0,ft=0,pt=0,dt=0,mt=0,gt={point:yt,lineStart:vt,lineEnd:bt,polygonStart:function(){gt.lineStart=wt,gt.lineEnd=Tt},polygonEnd:function(){gt.point=yt,gt.lineStart=vt,gt.lineEnd=bt},result:function(){var t=mt?[pt/mt,dt/mt]:ft?[ut/ft,ht/ft]:ct?[st/ct,lt/ct]:[NaN,NaN];return st=lt=ct=ut=ht=ft=pt=dt=mt=0,t}};function yt(t,e){st+=t,lt+=e,++ct}function vt(){gt.point=xt}function xt(t,e){gt.point=_t,yt(nt=t,it=e)}function _t(t,e){var r=t-nt,n=e-it,i=(0,g.RZ)(r*r+n*n);ut+=i*(nt+t)/2,ht+=i*(it+e)/2,ft+=i,yt(nt=t,it=e)}function bt(){gt.point=yt}function wt(){gt.point=kt}function Tt(){At(et,rt)}function kt(t,e){gt.point=At,yt(et=nt=t,rt=it=e)}function At(t,e){var r=t-nt,n=e-it,i=(0,g.RZ)(r*r+n*n);ut+=i*(nt+t)/2,ht+=i*(it+e)/2,ft+=i,pt+=(i=it*t-nt*e)*(nt+t),dt+=i*(it+e),mt+=3*i,yt(nt=t,it=e)}var Mt=gt;function St(t){this._context=t}St.prototype={_radius:4.5,pointRadius:function(t){return this._radius=t,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){0===this._line&&this._context.closePath(),this._point=NaN},point:function(t,e){switch(this._point){case 0:this._context.moveTo(t,e),this._point=1;break;case 1:this._context.lineTo(t,e);break;default:this._context.moveTo(t+this._radius,e),this._context.arc(t,e,this._radius,0,g.FA)}},result:y.A};var Et,Ct,Lt,It,Pt,zt=(0,m.A)(),Ot={point:y.A,lineStart:function(){Ot.point=Dt},lineEnd:function(){Et&&Rt(Ct,Lt),Ot.point=y.A},polygonStart:function(){Et=!0},polygonEnd:function(){Et=null},result:function(){var t=+zt;return zt.reset(),t}};function Dt(t,e){Ot.point=Rt,Ct=It=t,Lt=Pt=e}function Rt(t,e){It-=t,Pt-=e,zt.add((0,g.RZ)(It*It+Pt*Pt)),It=t,Pt=e}var Ft=Ot;function Bt(){this._string=[]}function Nt(t){return\"m0,\"+t+\"a\"+t+\",\"+t+\" 0 1,1 0,\"+-2*t+\"a\"+t+\",\"+t+\" 0 1,1 0,\"+2*t+\"z\"}function jt(t,e){var r,n,i=4.5;function a(t){return t&&(\"function\"==typeof i&&n.pointRadius(+i.apply(this,arguments)),(0,v.A)(t,r(n))),n.result()}return a.area=function(t){return(0,v.A)(t,r(at)),at.result()},a.measure=function(t){return(0,v.A)(t,r(Ft)),Ft.result()},a.bounds=function(t){return(0,v.A)(t,r(ot.A)),ot.A.result()},a.centroid=function(t){return(0,v.A)(t,r(Mt)),Mt.result()},a.projection=function(e){return arguments.length?(r=null==e?(t=null,W.A):(t=e).stream,a):t},a.context=function(t){return arguments.length?(n=null==t?(e=null,new Bt):new St(e=t),\"function\"!=typeof i&&n.pointRadius(i),a):e},a.pointRadius=function(t){return arguments.length?(i=\"function\"==typeof t?t:(n.pointRadius(+t),+t),a):i},a.projection(t).context(e)}Bt.prototype={_radius:4.5,_circle:Nt(4.5),pointRadius:function(t){return(t=+t)!==this._radius&&(this._radius=t,this._circle=null),this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){0===this._line&&this._string.push(\"Z\"),this._point=NaN},point:function(t,e){switch(this._point){case 0:this._string.push(\"M\",t,\",\",e),this._point=1;break;case 1:this._string.push(\"L\",t,\",\",e);break;default:null==this._circle&&(this._circle=Nt(this._radius)),this._string.push(\"M\",t,\",\",e,this._circle)}},result:function(){if(this._string.length){var t=this._string.join(\"\");return this._string=[],t}return null}};var Ut=r(94684);function Vt(t){var e=0,r=g.pi/3,n=(0,Ut.U)(t),i=n(e,r);return i.parallels=function(t){return arguments.length?n(e=t[0]*g.F2,r=t[1]*g.F2):[e*g.uj,r*g.uj]},i}function qt(t,e){var r=(0,g.F8)(t),n=(r+(0,g.F8)(e))/2;if((0,g.tn)(n)<g.Ni)return function(t){var e=(0,g.gn)(t);function r(t,r){return[t*e,(0,g.F8)(r)/e]}return r.invert=function(t,r){return[t/e,(0,g.qR)(r*e)]},r}(t);var i=1+r*(2*n-r),a=(0,g.RZ)(i)/n;function o(t,e){var r=(0,g.RZ)(i-2*n*(0,g.F8)(e))/n;return[r*(0,g.F8)(t*=n),a-r*(0,g.gn)(t)]}return o.invert=function(t,e){var r=a-e,o=(0,g.FP)(t,(0,g.tn)(r))*(0,g._S)(r);return r*n<0&&(o-=g.pi*(0,g._S)(t)*(0,g._S)(r)),[o/n,(0,g.qR)((i-(t*t+r*r)*n*n)/(2*n))]},o}function Ht(){return Vt(qt).scale(155.424).center([0,33.6442])}function Gt(){return Ht().parallels([29.5,45.5]).scale(1070).translate([480,250]).rotate([96,0]).center([-.6,38.7])}var Zt=r(7944);function Wt(){var t,e,r,n,i,a,o=Gt(),s=Ht().rotate([154,0]).center([-2,58.5]).parallels([55,65]),l=Ht().rotate([157,0]).center([-3,19.9]).parallels([8,18]),c={point:function(t,e){a=[t,e]}};function u(t){var e=t[0],o=t[1];return a=null,r.point(e,o),a||(n.point(e,o),a)||(i.point(e,o),a)}function h(){return t=e=null,u}return u.invert=function(t){var e=o.scale(),r=o.translate(),n=(t[0]-r[0])/e,i=(t[1]-r[1])/e;return(i>=.12&&i<.234&&n>=-.425&&n<-.214?s:i>=.166&&i<.234&&n>=-.214&&n<-.115?l:o).invert(t)},u.stream=function(r){return t&&e===r?t:(n=[o.stream(e=r),s.stream(r),l.stream(r)],i=n.length,t={point:function(t,e){for(var r=-1;++r<i;)n[r].point(t,e)},sphere:function(){for(var t=-1;++t<i;)n[t].sphere()},lineStart:function(){for(var t=-1;++t<i;)n[t].lineStart()},lineEnd:function(){for(var t=-1;++t<i;)n[t].lineEnd()},polygonStart:function(){for(var t=-1;++t<i;)n[t].polygonStart()},polygonEnd:function(){for(var t=-1;++t<i;)n[t].polygonEnd()}});var n,i},u.precision=function(t){return arguments.length?(o.precision(t),s.precision(t),l.precision(t),h()):o.precision()},u.scale=function(t){return arguments.length?(o.scale(t),s.scale(.35*t),l.scale(t),u.translate(o.translate())):o.scale()},u.translate=function(t){if(!arguments.length)return o.translate();var e=o.scale(),a=+t[0],u=+t[1];return r=o.translate(t).clipExtent([[a-.455*e,u-.238*e],[a+.455*e,u+.238*e]]).stream(c),n=s.translate([a-.307*e,u+.201*e]).clipExtent([[a-.425*e+g.Ni,u+.12*e+g.Ni],[a-.214*e-g.Ni,u+.234*e-g.Ni]]).stream(c),i=l.translate([a-.205*e,u+.212*e]).clipExtent([[a-.214*e+g.Ni,u+.166*e+g.Ni],[a-.115*e-g.Ni,u+.234*e-g.Ni]]).stream(c),h()},u.fitExtent=function(t,e){return(0,Zt.sp)(u,t,e)},u.fitSize=function(t,e){return(0,Zt.Hv)(u,t,e)},u.fitWidth=function(t,e){return(0,Zt.G0)(u,t,e)},u.fitHeight=function(t,e){return(0,Zt.FL)(u,t,e)},u.scale(1070)}var Yt=r(30729),Xt=r(61957),$t=r(30915);function Jt(t,e){return[t,(0,g.Rm)((0,g.Ml)((g.TW+e)/2))]}function Kt(){return Qt(Jt).scale(961/g.FA)}function Qt(t){var e,r,n,i=(0,Ut.A)(t),a=i.center,o=i.scale,s=i.translate,l=i.clipExtent,c=null;function u(){var a=g.pi*o(),s=i((0,$t.A)(i.rotate()).invert([0,0]));return l(null==c?[[s[0]-a,s[1]-a],[s[0]+a,s[1]+a]]:t===Jt?[[Math.max(s[0]-a,c),e],[Math.min(s[0]+a,r),n]]:[[c,Math.max(s[1]-a,e)],[r,Math.min(s[1]+a,n)]])}return i.scale=function(t){return arguments.length?(o(t),u()):o()},i.translate=function(t){return arguments.length?(s(t),u()):s()},i.center=function(t){return arguments.length?(a(t),u()):a()},i.clipExtent=function(t){return arguments.length?(null==t?c=e=r=n=null:(c=+t[0][0],e=+t[0][1],r=+t[1][0],n=+t[1][1]),u()):null==c?null:[[c,e],[r,n]]},u()}function te(t){return(0,g.Ml)((g.TW+t)/2)}function ee(t,e){var r=(0,g.gn)(t),n=t===e?(0,g.F8)(t):(0,g.Rm)(r/(0,g.gn)(e))/(0,g.Rm)(te(e)/te(t)),i=r*(0,g.n7)(te(t),n)/n;if(!n)return Jt;function a(t,e){i>0?e<-g.TW+g.Ni&&(e=-g.TW+g.Ni):e>g.TW-g.Ni&&(e=g.TW-g.Ni);var r=i/(0,g.n7)(te(e),n);return[r*(0,g.F8)(n*t),i-r*(0,g.gn)(n*t)]}return a.invert=function(t,e){var r=i-e,a=(0,g._S)(n)*(0,g.RZ)(t*t+r*r),o=(0,g.FP)(t,(0,g.tn)(r))*(0,g._S)(r);return r*n<0&&(o-=g.pi*(0,g._S)(t)*(0,g._S)(r)),[o/n,2*(0,g.rY)((0,g.n7)(i/a,1/n))-g.TW]},a}function re(){return Vt(ee).scale(109.5).parallels([30,30])}Jt.invert=function(t,e){return[t,2*(0,g.rY)((0,g.oN)(e))-g.TW]};var ne=r(18139);function ie(t,e){var r=(0,g.gn)(t),n=t===e?(0,g.F8)(t):(r-(0,g.gn)(e))/(e-t),i=r/n+t;if((0,g.tn)(n)<g.Ni)return ne.f;function a(t,e){var r=i-e,a=n*t;return[r*(0,g.F8)(a),i-r*(0,g.gn)(a)]}return a.invert=function(t,e){var r=i-e,a=(0,g.FP)(t,(0,g.tn)(r))*(0,g._S)(r);return r*n<0&&(a-=g.pi*(0,g._S)(t)*(0,g._S)(r)),[a/n,i-(0,g._S)(n)*(0,g.RZ)(t*t+r*r)]},a}function ae(){return Vt(ie).scale(131.154).center([0,13.9389])}var oe=1.340264,se=-.081106,le=893e-6,ce=.003796,ue=(0,g.RZ)(3)/2;function he(t,e){var r=(0,g.qR)(ue*(0,g.F8)(e)),n=r*r,i=n*n*n;return[t*(0,g.gn)(r)/(ue*(oe+3*se*n+i*(7*le+9*ce*n))),r*(oe+se*n+i*(le+ce*n))]}function fe(){return(0,Ut.A)(he).scale(177.158)}he.invert=function(t,e){for(var r,n=e,i=n*n,a=i*i*i,o=0;o<12&&(a=(i=(n-=r=(n*(oe+se*i+a*(le+ce*i))-e)/(oe+3*se*i+a*(7*le+9*ce*i)))*n)*i*i,!((0,g.tn)(r)<g.$t));++o);return[ue*t*(oe+3*se*i+a*(7*le+9*ce*i))/(0,g.gn)(n),(0,g.qR)((0,g.F8)(n)/ue)]};var pe=r(48419),de=r(913);function me(){var t,e,r,n,i,a,o,s=1,l=0,u=0,h=1,f=1,p=0,d=null,m=1,y=1,v=(0,de.G)({point:function(t,e){var r=b([t,e]);this.stream.point(r[0],r[1])}}),x=W.A;function _(){return m=s*h,y=s*f,a=o=null,b}function b(r){var n=r[0]*m,i=r[1]*y;if(p){var a=i*t-n*e;n=n*t+i*e,i=a}return[n+l,i+u]}return b.invert=function(r){var n=r[0]-l,i=r[1]-u;if(p){var a=i*t+n*e;n=n*t-i*e,i=a}return[n/m,i/y]},b.stream=function(t){return a&&o===t?a:a=v(x(o=t))},b.postclip=function(t){return arguments.length?(x=t,d=r=n=i=null,_()):x},b.clipExtent=function(t){return arguments.length?(x=null==t?(d=r=n=i=null,W.A):(0,c.A)(d=+t[0][0],r=+t[0][1],n=+t[1][0],i=+t[1][1]),_()):null==d?null:[[d,r],[n,i]]},b.scale=function(t){return arguments.length?(s=+t,_()):s},b.translate=function(t){return arguments.length?(l=+t[0],u=+t[1],_()):[l,u]},b.angle=function(r){return arguments.length?(p=r%360*g.F2,e=(0,g.F8)(p),t=(0,g.gn)(p),_()):p*g.uj},b.reflectX=function(t){return arguments.length?(h=t?-1:1,_()):h<0},b.reflectY=function(t){return arguments.length?(f=t?-1:1,_()):f<0},b.fitExtent=function(t,e){return(0,Zt.sp)(b,t,e)},b.fitSize=function(t,e){return(0,Zt.Hv)(b,t,e)},b.fitWidth=function(t,e){return(0,Zt.G0)(b,t,e)},b.fitHeight=function(t,e){return(0,Zt.FL)(b,t,e)},b}var ge=r(57949),ye=r(53253),ve=r(57738);function xe(t,e){var r=(0,g.gn)(e),n=1+(0,g.gn)(t)*r;return[r*(0,g.F8)(t)/n,(0,g.F8)(e)/n]}function _e(){return(0,Ut.A)(xe).scale(250).clipAngle(142)}function be(t,e){return[(0,g.Rm)((0,g.Ml)((g.TW+e)/2)),-t]}function we(){var t=Qt(be),e=t.center,r=t.rotate;return t.center=function(t){return arguments.length?e([-t[1],t[0]]):[(t=e())[1],-t[0]]},t.rotate=function(t){return arguments.length?r([t[0],t[1],t.length>2?t[2]+90:90]):[(t=r())[0],t[1],t[2]-90]},r([0,0,90]).scale(159.155)}xe.invert=(0,ve.I)((function(t){return 2*(0,g.rY)(t)})),be.invert=function(t,e){return[-e,2*(0,g.rY)((0,g.oN)(t))-g.TW]}},81758:function(t,e,r){\"use strict\";r.d(e,{A:function(){return i}});var n=r(61323);function i(t,e){var r=t[0]*n.F2,i=t[1]*n.F2,a=e[0]*n.F2,o=e[1]*n.F2,s=(0,n.gn)(i),l=(0,n.F8)(i),c=(0,n.gn)(o),u=(0,n.F8)(o),h=s*(0,n.gn)(r),f=s*(0,n.F8)(r),p=c*(0,n.gn)(a),d=c*(0,n.F8)(a),m=2*(0,n.qR)((0,n.RZ)((0,n.bo)(o-i)+s*c*(0,n.bo)(a-r))),g=(0,n.F8)(m),y=m?function(t){var e=(0,n.F8)(t*=m)/g,r=(0,n.F8)(m-t)/g,i=r*h+e*p,a=r*f+e*d,o=r*l+e*u;return[(0,n.FP)(a,i)*n.uj,(0,n.FP)(o,(0,n.RZ)(i*i+a*a))*n.uj]}:function(){return[r*n.uj,i*n.uj]};return y.distance=m,y}},61323:function(t,e,r){\"use strict\";r.d(e,{$t:function(){return i},F2:function(){return u},F8:function(){return x},FA:function(){return l},FP:function(){return p},HQ:function(){return T},Ml:function(){return w},Ni:function(){return n},RZ:function(){return b},Rm:function(){return y},TW:function(){return o},_S:function(){return _},bo:function(){return A},gn:function(){return d},gz:function(){return s},mk:function(){return m},n7:function(){return v},oN:function(){return g},pi:function(){return a},qR:function(){return k},rY:function(){return f},tn:function(){return h},uj:function(){return c}});var n=1e-6,i=1e-12,a=Math.PI,o=a/2,s=a/4,l=2*a,c=180/a,u=a/180,h=Math.abs,f=Math.atan,p=Math.atan2,d=Math.cos,m=Math.ceil,g=Math.exp,y=(Math.floor,Math.log),v=Math.pow,x=Math.sin,_=Math.sign||function(t){return t>0?1:t<0?-1:0},b=Math.sqrt,w=Math.tan;function T(t){return t>1?0:t<-1?a:Math.acos(t)}function k(t){return t>1?o:t<-1?-o:Math.asin(t)}function A(t){return(t=x(t/2))*t}},53341:function(t,e,r){\"use strict\";function n(){}r.d(e,{A:function(){return n}})},33028:function(t,e,r){\"use strict\";var n=r(53341),i=1/0,a=i,o=-i,s=o,l={point:function(t,e){t<i&&(i=t),t>o&&(o=t),e<a&&(a=e),e>s&&(s=e)},lineStart:n.A,lineEnd:n.A,polygonStart:n.A,polygonEnd:n.A,result:function(){var t=[[i,a],[o,s]];return o=s=-(a=i=1/0),t}};e.A=l},28759:function(t,e,r){\"use strict\";r.d(e,{A:function(){return i}});var n=r(61323);function i(t,e){return(0,n.tn)(t[0]-e[0])<n.Ni&&(0,n.tn)(t[1]-e[1])<n.Ni}},2274:function(t,e,r){\"use strict\";r.d(e,{A:function(){return l}});var n=r(49353),i=r(20375),a=r(61323),o=(0,n.A)();function s(t){return(0,a.tn)(t[0])<=a.pi?t[0]:(0,a._S)(t[0])*(((0,a.tn)(t[0])+a.pi)%a.FA-a.pi)}function l(t,e){var r=s(e),n=e[1],l=(0,a.F8)(n),c=[(0,a.F8)(r),-(0,a.gn)(r),0],u=0,h=0;o.reset(),1===l?n=a.TW+a.Ni:-1===l&&(n=-a.TW-a.Ni);for(var f=0,p=t.length;f<p;++f)if(m=(d=t[f]).length)for(var d,m,g=d[m-1],y=s(g),v=g[1]/2+a.gz,x=(0,a.F8)(v),_=(0,a.gn)(v),b=0;b<m;++b,y=T,x=A,_=M,g=w){var w=d[b],T=s(w),k=w[1]/2+a.gz,A=(0,a.F8)(k),M=(0,a.gn)(k),S=T-y,E=S>=0?1:-1,C=E*S,L=C>a.pi,I=x*A;if(o.add((0,a.FP)(I*E*(0,a.F8)(C),_*M+I*(0,a.gn)(C))),u+=L?S+E*a.FA:S,L^y>=r^T>=r){var P=(0,i.r8)((0,i.jf)(g),(0,i.jf)(w));(0,i.Cx)(P);var z=(0,i.r8)(c,P);(0,i.Cx)(z);var O=(L^S>=0?-1:1)*(0,a.qR)(z[2]);(n>O||n===O&&(P[0]||P[1]))&&(h+=L^S>=0?1:-1)}}return(u<-a.Ni||u<a.Ni&&o<-a.Ni)^1&h}},57738:function(t,e,r){\"use strict\";r.d(e,{I:function(){return a},c:function(){return i}});var n=r(61323);function i(t){return function(e,r){var i=(0,n.gn)(e),a=(0,n.gn)(r),o=t(i*a);return[o*a*(0,n.F8)(e),o*(0,n.F8)(r)]}}function a(t){return function(e,r){var i=(0,n.RZ)(e*e+r*r),a=t(i),o=(0,n.F8)(a),s=(0,n.gn)(a);return[(0,n.FP)(e*o,i*s),(0,n.qR)(i&&r*o/i)]}}},30729:function(t,e,r){\"use strict\";r.d(e,{A:function(){return s},n:function(){return o}});var n=r(61323),i=r(57738),a=r(94684),o=(0,i.c)((function(t){return(0,n.RZ)(2/(1+t))}));function s(){return(0,a.A)(o).scale(124.75).clipAngle(179.999)}o.invert=(0,i.I)((function(t){return 2*(0,n.qR)(t/2)}))},61957:function(t,e,r){\"use strict\";r.d(e,{A:function(){return s},j:function(){return o}});var n=r(61323),i=r(57738),a=r(94684),o=(0,i.c)((function(t){return(t=(0,n.HQ)(t))&&t/(0,n.F8)(t)}));function s(){return(0,a.A)(o).scale(79.4188).clipAngle(179.999)}o.invert=(0,i.I)((function(t){return t}))},18139:function(t,e,r){\"use strict\";r.d(e,{A:function(){return a},f:function(){return i}});var n=r(94684);function i(t,e){return[t,e]}function a(){return(0,n.A)(i).scale(152.63)}i.invert=i},7944:function(t,e,r){\"use strict\";r.d(e,{FL:function(){return c},G0:function(){return l},Hv:function(){return s},sp:function(){return o}});var n=r(20465),i=r(33028);function a(t,e,r){var a=t.clipExtent&&t.clipExtent();return t.scale(150).translate([0,0]),null!=a&&t.clipExtent(null),(0,n.A)(r,t.stream(i.A)),e(i.A.result()),null!=a&&t.clipExtent(a),t}function o(t,e,r){return a(t,(function(r){var n=e[1][0]-e[0][0],i=e[1][1]-e[0][1],a=Math.min(n/(r[1][0]-r[0][0]),i/(r[1][1]-r[0][1])),o=+e[0][0]+(n-a*(r[1][0]+r[0][0]))/2,s=+e[0][1]+(i-a*(r[1][1]+r[0][1]))/2;t.scale(150*a).translate([o,s])}),r)}function s(t,e,r){return o(t,[[0,0],e],r)}function l(t,e,r){return a(t,(function(r){var n=+e,i=n/(r[1][0]-r[0][0]),a=(n-i*(r[1][0]+r[0][0]))/2,o=-i*r[0][1];t.scale(150*i).translate([a,o])}),r)}function c(t,e,r){return a(t,(function(r){var n=+e,i=n/(r[1][1]-r[0][1]),a=-i*r[0][0],o=(n-i*(r[1][1]+r[0][1]))/2;t.scale(150*i).translate([a,o])}),r)}},48419:function(t,e,r){\"use strict\";r.d(e,{A:function(){return s},T:function(){return o}});var n=r(61323),i=r(57738),a=r(94684);function o(t,e){var r=(0,n.gn)(e),i=(0,n.gn)(t)*r;return[r*(0,n.F8)(t)/i,(0,n.F8)(e)/i]}function s(){return(0,a.A)(o).scale(144.049).clipAngle(60)}o.invert=(0,i.I)(n.rY)},94684:function(t,e,r){\"use strict\";r.d(e,{A:function(){return x},U:function(){return _}});var n=r(42413),i=r(47402),a=r(21503),o=r(19057),s=r(26827),l=r(61323),c=r(30915),u=r(913),h=r(7944),f=r(20375),p=16,d=(0,l.gn)(30*l.F2);function m(t,e){return+e?function(t,e){function r(n,i,a,o,s,c,u,h,f,p,m,g,y,v){var x=u-n,_=h-i,b=x*x+_*_;if(b>4*e&&y--){var w=o+p,T=s+m,k=c+g,A=(0,l.RZ)(w*w+T*T+k*k),M=(0,l.qR)(k/=A),S=(0,l.tn)((0,l.tn)(k)-1)<l.Ni||(0,l.tn)(a-f)<l.Ni?(a+f)/2:(0,l.FP)(T,w),E=t(S,M),C=E[0],L=E[1],I=C-n,P=L-i,z=_*I-x*P;(z*z/b>e||(0,l.tn)((x*I+_*P)/b-.5)>.3||o*p+s*m+c*g<d)&&(r(n,i,a,o,s,c,C,L,S,w/=A,T/=A,k,y,v),v.point(C,L),r(C,L,S,w,T,k,u,h,f,p,m,g,y,v))}}return function(e){var n,i,a,o,s,l,c,u,h,d,m,g,y={point:v,lineStart:x,lineEnd:b,polygonStart:function(){e.polygonStart(),y.lineStart=w},polygonEnd:function(){e.polygonEnd(),y.lineStart=x}};function v(r,n){r=t(r,n),e.point(r[0],r[1])}function x(){u=NaN,y.point=_,e.lineStart()}function _(n,i){var a=(0,f.jf)([n,i]),o=t(n,i);r(u,h,c,d,m,g,u=o[0],h=o[1],c=n,d=a[0],m=a[1],g=a[2],p,e),e.point(u,h)}function b(){y.point=v,e.lineEnd()}function w(){x(),y.point=T,y.lineEnd=k}function T(t,e){_(n=t,e),i=u,a=h,o=d,s=m,l=g,y.point=_}function k(){r(u,h,c,d,m,g,i,a,n,o,s,l,p,e),y.lineEnd=b,b()}return y}}(t,e):function(t){return(0,u.G)({point:function(e,r){e=t(e,r),this.stream.point(e[0],e[1])}})}(t)}var g=(0,u.G)({point:function(t,e){this.stream.point(t*l.F2,e*l.F2)}});function y(t,e,r,n,i){function a(a,o){return[e+t*(a*=n),r-t*(o*=i)]}return a.invert=function(a,o){return[(a-e)/t*n,(r-o)/t*i]},a}function v(t,e,r,n,i,a){var o=(0,l.gn)(a),s=(0,l.F8)(a),c=o*t,u=s*t,h=o/t,f=s/t,p=(s*r-o*e)/t,d=(s*e+o*r)/t;function m(t,a){return[c*(t*=n)-u*(a*=i)+e,r-u*t-c*a]}return m.invert=function(t,e){return[n*(h*t-f*e+p),i*(d-f*t-h*e)]},m}function x(t){return _((function(){return t}))()}function _(t){var e,r,f,p,d,x,_,b,w,T,k=150,A=480,M=250,S=0,E=0,C=0,L=0,I=0,P=0,z=1,O=1,D=null,R=n.A,F=null,B=s.A,N=.5;function j(t){return b(t[0]*l.F2,t[1]*l.F2)}function U(t){return(t=b.invert(t[0],t[1]))&&[t[0]*l.uj,t[1]*l.uj]}function V(){var t=v(k,0,0,z,O,P).apply(null,e(S,E)),n=(P?v:y)(k,A-t[0],M-t[1],z,O,P);return r=(0,c.y)(C,L,I),_=(0,o.A)(e,n),b=(0,o.A)(r,_),x=m(_,N),q()}function q(){return w=T=null,j}return j.stream=function(t){return w&&T===t?w:w=g(function(t){return(0,u.G)({point:function(e,r){var n=t(e,r);return this.stream.point(n[0],n[1])}})}(r)(R(x(B(T=t)))))},j.preclip=function(t){return arguments.length?(R=t,D=void 0,q()):R},j.postclip=function(t){return arguments.length?(B=t,F=f=p=d=null,q()):B},j.clipAngle=function(t){return arguments.length?(R=+t?(0,i.A)(D=t*l.F2):(D=null,n.A),q()):D*l.uj},j.clipExtent=function(t){return arguments.length?(B=null==t?(F=f=p=d=null,s.A):(0,a.A)(F=+t[0][0],f=+t[0][1],p=+t[1][0],d=+t[1][1]),q()):null==F?null:[[F,f],[p,d]]},j.scale=function(t){return arguments.length?(k=+t,V()):k},j.translate=function(t){return arguments.length?(A=+t[0],M=+t[1],V()):[A,M]},j.center=function(t){return arguments.length?(S=t[0]%360*l.F2,E=t[1]%360*l.F2,V()):[S*l.uj,E*l.uj]},j.rotate=function(t){return arguments.length?(C=t[0]%360*l.F2,L=t[1]%360*l.F2,I=t.length>2?t[2]%360*l.F2:0,V()):[C*l.uj,L*l.uj,I*l.uj]},j.angle=function(t){return arguments.length?(P=t%360*l.F2,V()):P*l.uj},j.reflectX=function(t){return arguments.length?(z=t?-1:1,V()):z<0},j.reflectY=function(t){return arguments.length?(O=t?-1:1,V()):O<0},j.precision=function(t){return arguments.length?(x=m(_,N=t*t),q()):(0,l.RZ)(N)},j.fitExtent=function(t,e){return(0,h.sp)(j,t,e)},j.fitSize=function(t,e){return(0,h.Hv)(j,t,e)},j.fitWidth=function(t,e){return(0,h.G0)(j,t,e)},j.fitHeight=function(t,e){return(0,h.FL)(j,t,e)},function(){return e=t.apply(this,arguments),j.invert=e.invert&&U,V()}}},57949:function(t,e,r){\"use strict\";r.d(e,{A:function(){return o},P:function(){return a}});var n=r(94684),i=r(61323);function a(t,e){var r=e*e,n=r*r;return[t*(.8707-.131979*r+n*(n*(.003971*r-.001529*n)-.013791)),e*(1.007226+r*(.015085+n*(.028874*r-.044475-.005916*n)))]}function o(){return(0,n.A)(a).scale(175.295)}a.invert=function(t,e){var r,n=e,a=25;do{var o=n*n,s=o*o;n-=r=(n*(1.007226+o*(.015085+s*(.028874*o-.044475-.005916*s)))-e)/(1.007226+o*(.045255+s*(.259866*o-.311325-.005916*11*s)))}while((0,i.tn)(r)>i.Ni&&--a>0);return[t/(.8707+(o=n*n)*(o*(o*o*o*(.003971-.001529*o)-.013791)-.131979)),n]}},53253:function(t,e,r){\"use strict\";r.d(e,{A:function(){return s},x:function(){return o}});var n=r(61323),i=r(57738),a=r(94684);function o(t,e){return[(0,n.gn)(e)*(0,n.F8)(t),(0,n.F8)(e)]}function s(){return(0,a.A)(o).scale(249.5).clipAngle(90+n.Ni)}o.invert=(0,i.I)(n.qR)},30915:function(t,e,r){\"use strict\";r.d(e,{A:function(){return u},y:function(){return o}});var n=r(19057),i=r(61323);function a(t,e){return[(0,i.tn)(t)>i.pi?t+Math.round(-t/i.FA)*i.FA:t,e]}function o(t,e,r){return(t%=i.FA)?e||r?(0,n.A)(l(t),c(e,r)):l(t):e||r?c(e,r):a}function s(t){return function(e,r){return[(e+=t)>i.pi?e-i.FA:e<-i.pi?e+i.FA:e,r]}}function l(t){var e=s(t);return e.invert=s(-t),e}function c(t,e){var r=(0,i.gn)(t),n=(0,i.F8)(t),a=(0,i.gn)(e),o=(0,i.F8)(e);function s(t,e){var s=(0,i.gn)(e),l=(0,i.gn)(t)*s,c=(0,i.F8)(t)*s,u=(0,i.F8)(e),h=u*r+l*n;return[(0,i.FP)(c*a-h*o,l*r-u*n),(0,i.qR)(h*a+c*o)]}return s.invert=function(t,e){var s=(0,i.gn)(e),l=(0,i.gn)(t)*s,c=(0,i.F8)(t)*s,u=(0,i.F8)(e),h=u*a-c*o;return[(0,i.FP)(c*a+u*o,l*r+h*n),(0,i.qR)(h*r-l*n)]},s}function u(t){function e(e){return(e=t(e[0]*i.F2,e[1]*i.F2))[0]*=i.uj,e[1]*=i.uj,e}return t=o(t[0]*i.F2,t[1]*i.F2,t.length>2?t[2]*i.F2:0),e.invert=function(e){return(e=t.invert(e[0]*i.F2,e[1]*i.F2))[0]*=i.uj,e[1]*=i.uj,e},e}a.invert=a},20465:function(t,e,r){\"use strict\";function n(t,e){t&&a.hasOwnProperty(t.type)&&a[t.type](t,e)}r.d(e,{A:function(){return l}});var i={Feature:function(t,e){n(t.geometry,e)},FeatureCollection:function(t,e){for(var r=t.features,i=-1,a=r.length;++i<a;)n(r[i].geometry,e)}},a={Sphere:function(t,e){e.sphere()},Point:function(t,e){t=t.coordinates,e.point(t[0],t[1],t[2])},MultiPoint:function(t,e){for(var r=t.coordinates,n=-1,i=r.length;++n<i;)t=r[n],e.point(t[0],t[1],t[2])},LineString:function(t,e){o(t.coordinates,e,0)},MultiLineString:function(t,e){for(var r=t.coordinates,n=-1,i=r.length;++n<i;)o(r[n],e,0)},Polygon:function(t,e){s(t.coordinates,e)},MultiPolygon:function(t,e){for(var r=t.coordinates,n=-1,i=r.length;++n<i;)s(r[n],e)},GeometryCollection:function(t,e){for(var r=t.geometries,i=-1,a=r.length;++i<a;)n(r[i],e)}};function o(t,e,r){var n,i=-1,a=t.length-r;for(e.lineStart();++i<a;)n=t[i],e.point(n[0],n[1],n[2]);e.lineEnd()}function s(t,e){var r=-1,n=t.length;for(e.polygonStart();++r<n;)o(t[r],e,1);e.polygonEnd()}function l(t,e){t&&i.hasOwnProperty(t.type)?i[t.type](t,e):n(t,e)}},913:function(t,e,r){\"use strict\";function n(t){return{stream:i(t)}}function i(t){return function(e){var r=new a;for(var n in t)r[n]=t[n];return r.stream=e,r}}function a(){}r.d(e,{A:function(){return n},G:function(){return i}}),a.prototype={constructor:a,point:function(t,e){this.stream.point(t,e)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}}},92264:function(t,e,r){\"use strict\";function n(t,e){return t.parent===e.parent?1:2}function i(t,e){return t+e.x}function a(t,e){return Math.max(t,e.y)}function o(){var t=n,e=1,r=1,o=!1;function s(n){var s,l=0;n.eachAfter((function(e){var r=e.children;r?(e.x=function(t){return t.reduce(i,0)/t.length}(r),e.y=function(t){return 1+t.reduce(a,0)}(r)):(e.x=s?l+=t(e,s):0,e.y=0,s=e)}));var c=function(t){for(var e;e=t.children;)t=e[0];return t}(n),u=function(t){for(var e;e=t.children;)t=e[e.length-1];return t}(n),h=c.x-t(c,u)/2,f=u.x+t(u,c)/2;return n.eachAfter(o?function(t){t.x=(t.x-n.x)*e,t.y=(n.y-t.y)*r}:function(t){t.x=(t.x-h)/(f-h)*e,t.y=(1-(n.y?t.y/n.y:1))*r})}return s.separation=function(e){return arguments.length?(t=e,s):t},s.size=function(t){return arguments.length?(o=!1,e=+t[0],r=+t[1],s):o?null:[e,r]},s.nodeSize=function(t){return arguments.length?(o=!0,e=+t[0],r=+t[1],s):o?[e,r]:null},s}function s(t){var e=0,r=t.children,n=r&&r.length;if(n)for(;--n>=0;)e+=r[n].value;else e=1;t.value=e}function l(t,e){var r,n,i,a,o,s=new f(t),l=+t.value&&(s.value=t.value),u=[s];for(null==e&&(e=c);r=u.pop();)if(l&&(r.value=+r.data.value),(i=e(r.data))&&(o=i.length))for(r.children=new Array(o),a=o-1;a>=0;--a)u.push(n=r.children[a]=new f(i[a])),n.parent=r,n.depth=r.depth+1;return s.eachBefore(h)}function c(t){return t.children}function u(t){t.data=t.data.data}function h(t){var e=0;do{t.height=e}while((t=t.parent)&&t.height<++e)}function f(t){this.data=t,this.depth=this.height=0,this.parent=null}r.r(e),r.d(e,{cluster:function(){return o},hierarchy:function(){return l},pack:function(){return P},packEnclose:function(){return d},packSiblings:function(){return S},partition:function(){return B},stratify:function(){return H},tree:function(){return J},treemap:function(){return rt},treemapBinary:function(){return nt},treemapDice:function(){return F},treemapResquarify:function(){return at},treemapSlice:function(){return K},treemapSliceDice:function(){return it},treemapSquarify:function(){return et}}),f.prototype=l.prototype={constructor:f,count:function(){return this.eachAfter(s)},each:function(t){var e,r,n,i,a=this,o=[a];do{for(e=o.reverse(),o=[];a=e.pop();)if(t(a),r=a.children)for(n=0,i=r.length;n<i;++n)o.push(r[n])}while(o.length);return this},eachAfter:function(t){for(var e,r,n,i=this,a=[i],o=[];i=a.pop();)if(o.push(i),e=i.children)for(r=0,n=e.length;r<n;++r)a.push(e[r]);for(;i=o.pop();)t(i);return this},eachBefore:function(t){for(var e,r,n=this,i=[n];n=i.pop();)if(t(n),e=n.children)for(r=e.length-1;r>=0;--r)i.push(e[r]);return this},sum:function(t){return this.eachAfter((function(e){for(var r=+t(e.data)||0,n=e.children,i=n&&n.length;--i>=0;)r+=n[i].value;e.value=r}))},sort:function(t){return this.eachBefore((function(e){e.children&&e.children.sort(t)}))},path:function(t){for(var e=this,r=function(t,e){if(t===e)return t;var r=t.ancestors(),n=e.ancestors(),i=null;for(t=r.pop(),e=n.pop();t===e;)i=t,t=r.pop(),e=n.pop();return i}(e,t),n=[e];e!==r;)e=e.parent,n.push(e);for(var i=n.length;t!==r;)n.splice(i,0,t),t=t.parent;return n},ancestors:function(){for(var t=this,e=[t];t=t.parent;)e.push(t);return e},descendants:function(){var t=[];return this.each((function(e){t.push(e)})),t},leaves:function(){var t=[];return this.eachBefore((function(e){e.children||t.push(e)})),t},links:function(){var t=this,e=[];return t.each((function(r){r!==t&&e.push({source:r.parent,target:r})})),e},copy:function(){return l(this).eachBefore(u)}};var p=Array.prototype.slice;function d(t){for(var e,r,n=0,i=(t=function(t){for(var e,r,n=t.length;n;)r=Math.random()*n--|0,e=t[n],t[n]=t[r],t[r]=e;return t}(p.call(t))).length,a=[];n<i;)e=t[n],r&&y(r,e)?++n:(r=x(a=m(a,e)),n=0);return r}function m(t,e){var r,n;if(v(e,t))return[e];for(r=0;r<t.length;++r)if(g(e,t[r])&&v(_(t[r],e),t))return[t[r],e];for(r=0;r<t.length-1;++r)for(n=r+1;n<t.length;++n)if(g(_(t[r],t[n]),e)&&g(_(t[r],e),t[n])&&g(_(t[n],e),t[r])&&v(b(t[r],t[n],e),t))return[t[r],t[n],e];throw new Error}function g(t,e){var r=t.r-e.r,n=e.x-t.x,i=e.y-t.y;return r<0||r*r<n*n+i*i}function y(t,e){var r=t.r-e.r+1e-6,n=e.x-t.x,i=e.y-t.y;return r>0&&r*r>n*n+i*i}function v(t,e){for(var r=0;r<e.length;++r)if(!y(t,e[r]))return!1;return!0}function x(t){switch(t.length){case 1:return{x:(e=t[0]).x,y:e.y,r:e.r};case 2:return _(t[0],t[1]);case 3:return b(t[0],t[1],t[2])}var e}function _(t,e){var r=t.x,n=t.y,i=t.r,a=e.x,o=e.y,s=e.r,l=a-r,c=o-n,u=s-i,h=Math.sqrt(l*l+c*c);return{x:(r+a+l/h*u)/2,y:(n+o+c/h*u)/2,r:(h+i+s)/2}}function b(t,e,r){var n=t.x,i=t.y,a=t.r,o=e.x,s=e.y,l=e.r,c=r.x,u=r.y,h=r.r,f=n-o,p=n-c,d=i-s,m=i-u,g=l-a,y=h-a,v=n*n+i*i-a*a,x=v-o*o-s*s+l*l,_=v-c*c-u*u+h*h,b=p*d-f*m,w=(d*_-m*x)/(2*b)-n,T=(m*g-d*y)/b,k=(p*x-f*_)/(2*b)-i,A=(f*y-p*g)/b,M=T*T+A*A-1,S=2*(a+w*T+k*A),E=w*w+k*k-a*a,C=-(M?(S+Math.sqrt(S*S-4*M*E))/(2*M):E/S);return{x:n+w+T*C,y:i+k+A*C,r:C}}function w(t,e,r){var n,i,a,o,s=t.x-e.x,l=t.y-e.y,c=s*s+l*l;c?(i=e.r+r.r,i*=i,o=t.r+r.r,i>(o*=o)?(n=(c+o-i)/(2*c),a=Math.sqrt(Math.max(0,o/c-n*n)),r.x=t.x-n*s-a*l,r.y=t.y-n*l+a*s):(n=(c+i-o)/(2*c),a=Math.sqrt(Math.max(0,i/c-n*n)),r.x=e.x+n*s-a*l,r.y=e.y+n*l+a*s)):(r.x=e.x+r.r,r.y=e.y)}function T(t,e){var r=t.r+e.r-1e-6,n=e.x-t.x,i=e.y-t.y;return r>0&&r*r>n*n+i*i}function k(t){var e=t._,r=t.next._,n=e.r+r.r,i=(e.x*r.r+r.x*e.r)/n,a=(e.y*r.r+r.y*e.r)/n;return i*i+a*a}function A(t){this._=t,this.next=null,this.previous=null}function M(t){if(!(i=t.length))return 0;var e,r,n,i,a,o,s,l,c,u,h;if((e=t[0]).x=0,e.y=0,!(i>1))return e.r;if(r=t[1],e.x=-r.r,r.x=e.r,r.y=0,!(i>2))return e.r+r.r;w(r,e,n=t[2]),e=new A(e),r=new A(r),n=new A(n),e.next=n.previous=r,r.next=e.previous=n,n.next=r.previous=e;t:for(s=3;s<i;++s){w(e._,r._,n=t[s]),n=new A(n),l=r.next,c=e.previous,u=r._.r,h=e._.r;do{if(u<=h){if(T(l._,n._)){r=l,e.next=r,r.previous=e,--s;continue t}u+=l._.r,l=l.next}else{if(T(c._,n._)){(e=c).next=r,r.previous=e,--s;continue t}h+=c._.r,c=c.previous}}while(l!==c.next);for(n.previous=e,n.next=r,e.next=r.previous=r=n,a=k(e);(n=n.next)!==r;)(o=k(n))<a&&(e=n,a=o);r=e.next}for(e=[r._],n=r;(n=n.next)!==r;)e.push(n._);for(n=d(e),s=0;s<i;++s)(e=t[s]).x-=n.x,e.y-=n.y;return n.r}function S(t){return M(t),t}function E(t){if(\"function\"!=typeof t)throw new Error;return t}function C(){return 0}function L(t){return function(){return t}}function I(t){return Math.sqrt(t.value)}function P(){var t=null,e=1,r=1,n=C;function i(i){return i.x=e/2,i.y=r/2,t?i.eachBefore(z(t)).eachAfter(O(n,.5)).eachBefore(D(1)):i.eachBefore(z(I)).eachAfter(O(C,1)).eachAfter(O(n,i.r/Math.min(e,r))).eachBefore(D(Math.min(e,r)/(2*i.r))),i}return i.radius=function(e){return arguments.length?(t=null==(r=e)?null:E(r),i):t;var r},i.size=function(t){return arguments.length?(e=+t[0],r=+t[1],i):[e,r]},i.padding=function(t){return arguments.length?(n=\"function\"==typeof t?t:L(+t),i):n},i}function z(t){return function(e){e.children||(e.r=Math.max(0,+t(e)||0))}}function O(t,e){return function(r){if(n=r.children){var n,i,a,o=n.length,s=t(r)*e||0;if(s)for(i=0;i<o;++i)n[i].r+=s;if(a=M(n),s)for(i=0;i<o;++i)n[i].r-=s;r.r=a+s}}}function D(t){return function(e){var r=e.parent;e.r*=t,r&&(e.x=r.x+t*e.x,e.y=r.y+t*e.y)}}function R(t){t.x0=Math.round(t.x0),t.y0=Math.round(t.y0),t.x1=Math.round(t.x1),t.y1=Math.round(t.y1)}function F(t,e,r,n,i){for(var a,o=t.children,s=-1,l=o.length,c=t.value&&(n-e)/t.value;++s<l;)(a=o[s]).y0=r,a.y1=i,a.x0=e,a.x1=e+=a.value*c}function B(){var t=1,e=1,r=0,n=!1;function i(i){var a=i.height+1;return i.x0=i.y0=r,i.x1=t,i.y1=e/a,i.eachBefore(function(t,e){return function(n){n.children&&F(n,n.x0,t*(n.depth+1)/e,n.x1,t*(n.depth+2)/e);var i=n.x0,a=n.y0,o=n.x1-r,s=n.y1-r;o<i&&(i=o=(i+o)/2),s<a&&(a=s=(a+s)/2),n.x0=i,n.y0=a,n.x1=o,n.y1=s}}(e,a)),n&&i.eachBefore(R),i}return i.round=function(t){return arguments.length?(n=!!t,i):n},i.size=function(r){return arguments.length?(t=+r[0],e=+r[1],i):[t,e]},i.padding=function(t){return arguments.length?(r=+t,i):r},i}var N=\"$\",j={depth:-1},U={};function V(t){return t.id}function q(t){return t.parentId}function H(){var t=V,e=q;function r(r){var n,i,a,o,s,l,c,u=r.length,p=new Array(u),d={};for(i=0;i<u;++i)n=r[i],s=p[i]=new f(n),null!=(l=t(n,i,r))&&(l+=\"\")&&(d[c=N+(s.id=l)]=c in d?U:s);for(i=0;i<u;++i)if(s=p[i],null!=(l=e(r[i],i,r))&&(l+=\"\")){if(!(o=d[N+l]))throw new Error(\"missing: \"+l);if(o===U)throw new Error(\"ambiguous: \"+l);o.children?o.children.push(s):o.children=[s],s.parent=o}else{if(a)throw new Error(\"multiple roots\");a=s}if(!a)throw new Error(\"no root\");if(a.parent=j,a.eachBefore((function(t){t.depth=t.parent.depth+1,--u})).eachBefore(h),a.parent=null,u>0)throw new Error(\"cycle\");return a}return r.id=function(e){return arguments.length?(t=E(e),r):t},r.parentId=function(t){return arguments.length?(e=E(t),r):e},r}function G(t,e){return t.parent===e.parent?1:2}function Z(t){var e=t.children;return e?e[0]:t.t}function W(t){var e=t.children;return e?e[e.length-1]:t.t}function Y(t,e,r){var n=r/(e.i-t.i);e.c-=n,e.s+=r,t.c+=n,e.z+=r,e.m+=r}function X(t,e,r){return t.a.parent===e.parent?t.a:r}function $(t,e){this._=t,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=e}function J(){var t=G,e=1,r=1,n=null;function i(i){var l=function(t){for(var e,r,n,i,a,o=new $(t,0),s=[o];e=s.pop();)if(n=e._.children)for(e.children=new Array(a=n.length),i=a-1;i>=0;--i)s.push(r=e.children[i]=new $(n[i],i)),r.parent=e;return(o.parent=new $(null,0)).children=[o],o}(i);if(l.eachAfter(a),l.parent.m=-l.z,l.eachBefore(o),n)i.eachBefore(s);else{var c=i,u=i,h=i;i.eachBefore((function(t){t.x<c.x&&(c=t),t.x>u.x&&(u=t),t.depth>h.depth&&(h=t)}));var f=c===u?1:t(c,u)/2,p=f-c.x,d=e/(u.x+f+p),m=r/(h.depth||1);i.eachBefore((function(t){t.x=(t.x+p)*d,t.y=t.depth*m}))}return i}function a(e){var r=e.children,n=e.parent.children,i=e.i?n[e.i-1]:null;if(r){!function(t){for(var e,r=0,n=0,i=t.children,a=i.length;--a>=0;)(e=i[a]).z+=r,e.m+=r,r+=e.s+(n+=e.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],c=a.m,u=o.m,h=s.m,f=l.m;s=W(s),a=Z(a),s&&a;)l=Z(l),(o=W(o)).a=e,(i=s.z+h-a.z-c+t(s._,a._))>0&&(Y(X(s,e,n),e,i),c+=i,u+=i),h+=s.m,c+=a.m,f+=l.m,u+=o.m;s&&!W(o)&&(o.t=s,o.m+=h-u),a&&!Z(l)&&(l.t=a,l.m+=c-f,n=e)}return n}(e,i,e.parent.A||n[0])}function o(t){t._.x=t.z+t.parent.m,t.m+=t.parent.m}function s(t){t.x*=e,t.y=t.depth*r}return i.separation=function(e){return arguments.length?(t=e,i):t},i.size=function(t){return arguments.length?(n=!1,e=+t[0],r=+t[1],i):n?null:[e,r]},i.nodeSize=function(t){return arguments.length?(n=!0,e=+t[0],r=+t[1],i):n?[e,r]:null},i}function K(t,e,r,n,i){for(var a,o=t.children,s=-1,l=o.length,c=t.value&&(i-r)/t.value;++s<l;)(a=o[s]).x0=e,a.x1=n,a.y0=r,a.y1=r+=a.value*c}$.prototype=Object.create(f.prototype);var Q=(1+Math.sqrt(5))/2;function tt(t,e,r,n,i,a){for(var o,s,l,c,u,h,f,p,d,m,g,y=[],v=e.children,x=0,_=0,b=v.length,w=e.value;x<b;){l=i-r,c=a-n;do{u=v[_++].value}while(!u&&_<b);for(h=f=u,g=u*u*(m=Math.max(c/l,l/c)/(w*t)),d=Math.max(f/g,g/h);_<b;++_){if(u+=s=v[_].value,s<h&&(h=s),s>f&&(f=s),g=u*u*m,(p=Math.max(f/g,g/h))>d){u-=s;break}d=p}y.push(o={value:u,dice:l<c,children:v.slice(x,_)}),o.dice?F(o,r,n,i,w?n+=c*u/w:a):K(o,r,n,w?r+=l*u/w:i,a),w-=u,x=_}return y}var et=function t(e){function r(t,r,n,i,a){tt(e,t,r,n,i,a)}return r.ratio=function(e){return t((e=+e)>1?e:1)},r}(Q);function rt(){var t=et,e=!1,r=1,n=1,i=[0],a=C,o=C,s=C,l=C,c=C;function u(t){return t.x0=t.y0=0,t.x1=r,t.y1=n,t.eachBefore(h),i=[0],e&&t.eachBefore(R),t}function h(e){var r=i[e.depth],n=e.x0+r,u=e.y0+r,h=e.x1-r,f=e.y1-r;h<n&&(n=h=(n+h)/2),f<u&&(u=f=(u+f)/2),e.x0=n,e.y0=u,e.x1=h,e.y1=f,e.children&&(r=i[e.depth+1]=a(e)/2,n+=c(e)-r,u+=o(e)-r,(h-=s(e)-r)<n&&(n=h=(n+h)/2),(f-=l(e)-r)<u&&(u=f=(u+f)/2),t(e,n,u,h,f))}return u.round=function(t){return arguments.length?(e=!!t,u):e},u.size=function(t){return arguments.length?(r=+t[0],n=+t[1],u):[r,n]},u.tile=function(e){return arguments.length?(t=E(e),u):t},u.padding=function(t){return arguments.length?u.paddingInner(t).paddingOuter(t):u.paddingInner()},u.paddingInner=function(t){return arguments.length?(a=\"function\"==typeof t?t:L(+t),u):a},u.paddingOuter=function(t){return arguments.length?u.paddingTop(t).paddingRight(t).paddingBottom(t).paddingLeft(t):u.paddingTop()},u.paddingTop=function(t){return arguments.length?(o=\"function\"==typeof t?t:L(+t),u):o},u.paddingRight=function(t){return arguments.length?(s=\"function\"==typeof t?t:L(+t),u):s},u.paddingBottom=function(t){return arguments.length?(l=\"function\"==typeof t?t:L(+t),u):l},u.paddingLeft=function(t){return arguments.length?(c=\"function\"==typeof t?t:L(+t),u):c},u}function nt(t,e,r,n,i){var a,o,s=t.children,l=s.length,c=new Array(l+1);for(c[0]=o=a=0;a<l;++a)c[a+1]=o+=s[a].value;!function t(e,r,n,i,a,o,l){if(e>=r-1){var u=s[e];return u.x0=i,u.y0=a,u.x1=o,void(u.y1=l)}for(var h=c[e],f=n/2+h,p=e+1,d=r-1;p<d;){var m=p+d>>>1;c[m]<f?p=m+1:d=m}f-c[p-1]<c[p]-f&&e+1<p&&--p;var g=c[p]-h,y=n-g;if(o-i>l-a){var v=(i*y+o*g)/n;t(e,p,g,i,a,v,l),t(p,r,y,v,a,o,l)}else{var x=(a*y+l*g)/n;t(e,p,g,i,a,o,x),t(p,r,y,i,x,o,l)}}(0,l,t.value,e,r,n,i)}function it(t,e,r,n,i){(1&t.depth?K:F)(t,e,r,n,i)}var at=function t(e){function r(t,r,n,i,a){if((o=t._squarify)&&o.ratio===e)for(var o,s,l,c,u,h=-1,f=o.length,p=t.value;++h<f;){for(l=(s=o[h]).children,c=s.value=0,u=l.length;c<u;++c)s.value+=l[c].value;s.dice?F(s,r,n,i,n+=(a-n)*s.value/p):K(s,r,n,r+=(i-r)*s.value/p,a),p-=s.value}else t._squarify=o=tt(e,t,r,n,i,a),o.ratio=e}return r.ratio=function(e){return t((e=+e)>1?e:1)},r}(Q)},48544:function(t,e,r){\"use strict\";r.d(e,{pq: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(t,e){this._+=\"M\"+(this._x0=this._x1=+t)+\",\"+(this._y0=this._y1=+e)},closePath:function(){null!==this._x1&&(this._x1=this._x0,this._y1=this._y0,this._+=\"Z\")},lineTo:function(t,e){this._+=\"L\"+(this._x1=+t)+\",\"+(this._y1=+e)},quadraticCurveTo:function(t,e,r,n){this._+=\"Q\"+ +t+\",\"+ +e+\",\"+(this._x1=+r)+\",\"+(this._y1=+n)},bezierCurveTo:function(t,e,r,n,i,a){this._+=\"C\"+ +t+\",\"+ +e+\",\"+ +r+\",\"+ +n+\",\"+(this._x1=+i)+\",\"+(this._y1=+a)},arcTo:function(t,e,r,i,o){t=+t,e=+e,r=+r,i=+i,o=+o;var s=this._x1,l=this._y1,c=r-t,u=i-e,h=s-t,f=l-e,p=h*h+f*f;if(o<0)throw new Error(\"negative radius: \"+o);if(null===this._x1)this._+=\"M\"+(this._x1=t)+\",\"+(this._y1=e);else if(p>a)if(Math.abs(f*c-u*h)>a&&o){var d=r-s,m=i-l,g=c*c+u*u,y=d*d+m*m,v=Math.sqrt(g),x=Math.sqrt(p),_=o*Math.tan((n-Math.acos((g+p-y)/(2*v*x)))/2),b=_/x,w=_/v;Math.abs(b-1)>a&&(this._+=\"L\"+(t+b*h)+\",\"+(e+b*f)),this._+=\"A\"+o+\",\"+o+\",0,0,\"+ +(f*d>h*m)+\",\"+(this._x1=t+w*c)+\",\"+(this._y1=e+w*u)}else this._+=\"L\"+(this._x1=t)+\",\"+(this._y1=e)},arc:function(t,e,r,s,l,c){t=+t,e=+e,c=!!c;var u=(r=+r)*Math.cos(s),h=r*Math.sin(s),f=t+u,p=e+h,d=1^c,m=c?s-l:l-s;if(r<0)throw new Error(\"negative radius: \"+r);null===this._x1?this._+=\"M\"+f+\",\"+p:(Math.abs(this._x1-f)>a||Math.abs(this._y1-p)>a)&&(this._+=\"L\"+f+\",\"+p),r&&(m<0&&(m=m%i+i),m>o?this._+=\"A\"+r+\",\"+r+\",0,1,\"+d+\",\"+(t-u)+\",\"+(e-h)+\"A\"+r+\",\"+r+\",0,1,\"+d+\",\"+(this._x1=f)+\",\"+(this._y1=p):m>a&&(this._+=\"A\"+r+\",\"+r+\",0,\"+ +(m>=n)+\",\"+d+\",\"+(this._x1=t+r*Math.cos(l))+\",\"+(this._y1=e+r*Math.sin(l))))},rect:function(t,e,r,n){this._+=\"M\"+(this._x0=this._x1=+t)+\",\"+(this._y0=this._y1=+e)+\"h\"+ +r+\"v\"+ +n+\"h\"+-r+\"Z\"},toString:function(){return this._}};var c=l,u=Array.prototype.slice;function h(t){return function(){return t}}function f(t){return t[0]}function p(t){return t[1]}function d(t){return t.source}function m(t){return t.target}function g(t,e,r,n,i){t.moveTo(e,r),t.bezierCurveTo(e=(e+n)/2,r,e,i,n,i)}function y(){return function(t){var e=d,r=m,n=f,i=p,a=null;function o(){var o,s=u.call(arguments),l=e.apply(this,s),h=r.apply(this,s);if(a||(a=o=c()),t(a,+n.apply(this,(s[0]=l,s)),+i.apply(this,s),+n.apply(this,(s[0]=h,s)),+i.apply(this,s)),o)return a=null,o+\"\"||null}return o.source=function(t){return arguments.length?(e=t,o):e},o.target=function(t){return arguments.length?(r=t,o):r},o.x=function(t){return arguments.length?(n=\"function\"==typeof t?t:h(+t),o):n},o.y=function(t){return arguments.length?(i=\"function\"==typeof t?t:h(+t),o):i},o.context=function(t){return arguments.length?(a=null==t?null:t,o):a},o}(g)}},42696:function(t,e,r){\"use strict\";r.d(e,{DC:function(){return d},de:function(){return f},aL:function(){return m}});var n=r(1681),i=r(72543),a=r(55735),o=r(47265),s=r(9830),l=r(59764);function c(t){if(0<=t.y&&t.y<100){var e=new Date(-1,t.m,t.d,t.H,t.M,t.S,t.L);return e.setFullYear(t.y),e}return new Date(t.y,t.m,t.d,t.H,t.M,t.S,t.L)}function u(t){if(0<=t.y&&t.y<100){var e=new Date(Date.UTC(-1,t.m,t.d,t.H,t.M,t.S,t.L));return e.setUTCFullYear(t.y),e}return new Date(Date.UTC(t.y,t.m,t.d,t.H,t.M,t.S,t.L))}function h(t,e,r){return{y:t,m:e,d:r,H:0,M:0,S:0,L:0}}function f(t){var e=t.dateTime,r=t.date,s=t.time,l=t.periods,f=t.days,p=t.shortDays,d=t.months,m=t.shortMonths,y=w(l),v=T(l),x=w(f),_=T(f),b=w(p),St=T(p),Et=w(d),Ct=T(d),Lt=w(m),It=T(m),Pt={a:function(t){return p[t.getDay()]},A:function(t){return f[t.getDay()]},b:function(t){return m[t.getMonth()]},B:function(t){return d[t.getMonth()]},c:null,d:H,e:H,f:X,H:G,I:Z,j:W,L:Y,m:$,M:J,p:function(t){return l[+(t.getHours()>=12)]},q:function(t){return 1+~~(t.getMonth()/3)},Q:At,s:Mt,S:K,u:Q,U:tt,V:et,w:rt,W:nt,x:null,X:null,y:it,Y:at,Z:ot,\"%\":kt},zt={a:function(t){return p[t.getUTCDay()]},A:function(t){return f[t.getUTCDay()]},b:function(t){return m[t.getUTCMonth()]},B:function(t){return d[t.getUTCMonth()]},c:null,d:st,e:st,f:ft,H:lt,I:ct,j:ut,L:ht,m:pt,M:dt,p:function(t){return l[+(t.getUTCHours()>=12)]},q:function(t){return 1+~~(t.getUTCMonth()/3)},Q:At,s:Mt,S:mt,u:gt,U:yt,V:vt,w:xt,W:_t,x:null,X:null,y:bt,Y:wt,Z:Tt,\"%\":kt},Ot={a:function(t,e,r){var n=b.exec(e.slice(r));return n?(t.w=St[n[0].toLowerCase()],r+n[0].length):-1},A:function(t,e,r){var n=x.exec(e.slice(r));return n?(t.w=_[n[0].toLowerCase()],r+n[0].length):-1},b:function(t,e,r){var n=Lt.exec(e.slice(r));return n?(t.m=It[n[0].toLowerCase()],r+n[0].length):-1},B:function(t,e,r){var n=Et.exec(e.slice(r));return n?(t.m=Ct[n[0].toLowerCase()],r+n[0].length):-1},c:function(t,r,n){return Ft(t,e,r,n)},d:O,e:O,f:j,H:R,I:R,j:D,L:N,m:z,M:F,p:function(t,e,r){var n=y.exec(e.slice(r));return n?(t.p=v[n[0].toLowerCase()],r+n[0].length):-1},q:P,Q:V,s:q,S:B,u:A,U:M,V:S,w:k,W:E,x:function(t,e,n){return Ft(t,r,e,n)},X:function(t,e,r){return Ft(t,s,e,r)},y:L,Y:C,Z:I,\"%\":U};function Dt(t,e){return function(r){var n,i,a,o=[],s=-1,l=0,c=t.length;for(r instanceof Date||(r=new Date(+r));++s<c;)37===t.charCodeAt(s)&&(o.push(t.slice(l,s)),null!=(i=g[n=t.charAt(++s)])?n=t.charAt(++s):i=\"e\"===n?\" \":\"0\",(a=e[n])&&(n=a(r,i)),o.push(n),l=s+1);return o.push(t.slice(l,s)),o.join(\"\")}}function Rt(t,e){return function(r){var s,l,f=h(1900,void 0,1);if(Ft(f,t,r+=\"\",0)!=r.length)return null;if(\"Q\"in f)return new Date(f.Q);if(\"s\"in f)return new Date(1e3*f.s+(\"L\"in f?f.L:0));if(e&&!(\"Z\"in f)&&(f.Z=0),\"p\"in f&&(f.H=f.H%12+12*f.p),void 0===f.m&&(f.m=\"q\"in f?f.q:0),\"V\"in f){if(f.V<1||f.V>53)return null;\"w\"in f||(f.w=1),\"Z\"in f?(l=(s=u(h(f.y,0,1))).getUTCDay(),s=l>4||0===l?n.rt.ceil(s):(0,n.rt)(s),s=i.A.offset(s,7*(f.V-1)),f.y=s.getUTCFullYear(),f.m=s.getUTCMonth(),f.d=s.getUTCDate()+(f.w+6)%7):(l=(s=c(h(f.y,0,1))).getDay(),s=l>4||0===l?a.By.ceil(s):(0,a.By)(s),s=o.A.offset(s,7*(f.V-1)),f.y=s.getFullYear(),f.m=s.getMonth(),f.d=s.getDate()+(f.w+6)%7)}else(\"W\"in f||\"U\"in f)&&(\"w\"in f||(f.w=\"u\"in f?f.u%7:\"W\"in f?1:0),l=\"Z\"in f?u(h(f.y,0,1)).getUTCDay():c(h(f.y,0,1)).getDay(),f.m=0,f.d=\"W\"in f?(f.w+6)%7+7*f.W-(l+5)%7:f.w+7*f.U-(l+6)%7);return\"Z\"in f?(f.H+=f.Z/100|0,f.M+=f.Z%100,u(f)):c(f)}}function Ft(t,e,r,n){for(var i,a,o=0,s=e.length,l=r.length;o<s;){if(n>=l)return-1;if(37===(i=e.charCodeAt(o++))){if(i=e.charAt(o++),!(a=Ot[i in g?e.charAt(o++):i])||(n=a(t,r,n))<0)return-1}else if(i!=r.charCodeAt(n++))return-1}return n}return Pt.x=Dt(r,Pt),Pt.X=Dt(s,Pt),Pt.c=Dt(e,Pt),zt.x=Dt(r,zt),zt.X=Dt(s,zt),zt.c=Dt(e,zt),{format:function(t){var e=Dt(t+=\"\",Pt);return e.toString=function(){return t},e},parse:function(t){var e=Rt(t+=\"\",!1);return e.toString=function(){return t},e},utcFormat:function(t){var e=Dt(t+=\"\",zt);return e.toString=function(){return t},e},utcParse:function(t){var e=Rt(t+=\"\",!0);return e.toString=function(){return t},e}}}var p,d,m,g={\"-\":\"\",_:\" \",0:\"0\"},y=/^\\s*\\d+/,v=/^%/,x=/[\\\\^$*+?|[\\]().{}]/g;function _(t,e,r){var n=t<0?\"-\":\"\",i=(n?-t:t)+\"\",a=i.length;return n+(a<r?new Array(r-a+1).join(e)+i:i)}function b(t){return t.replace(x,\"\\\\$&\")}function w(t){return new RegExp(\"^(?:\"+t.map(b).join(\"|\")+\")\",\"i\")}function T(t){for(var e={},r=-1,n=t.length;++r<n;)e[t[r].toLowerCase()]=r;return e}function k(t,e,r){var n=y.exec(e.slice(r,r+1));return n?(t.w=+n[0],r+n[0].length):-1}function A(t,e,r){var n=y.exec(e.slice(r,r+1));return n?(t.u=+n[0],r+n[0].length):-1}function M(t,e,r){var n=y.exec(e.slice(r,r+2));return n?(t.U=+n[0],r+n[0].length):-1}function S(t,e,r){var n=y.exec(e.slice(r,r+2));return n?(t.V=+n[0],r+n[0].length):-1}function E(t,e,r){var n=y.exec(e.slice(r,r+2));return n?(t.W=+n[0],r+n[0].length):-1}function C(t,e,r){var n=y.exec(e.slice(r,r+4));return n?(t.y=+n[0],r+n[0].length):-1}function L(t,e,r){var n=y.exec(e.slice(r,r+2));return n?(t.y=+n[0]+(+n[0]>68?1900:2e3),r+n[0].length):-1}function I(t,e,r){var n=/^(Z)|([+-]\\d\\d)(?::?(\\d\\d))?/.exec(e.slice(r,r+6));return n?(t.Z=n[1]?0:-(n[2]+(n[3]||\"00\")),r+n[0].length):-1}function P(t,e,r){var n=y.exec(e.slice(r,r+1));return n?(t.q=3*n[0]-3,r+n[0].length):-1}function z(t,e,r){var n=y.exec(e.slice(r,r+2));return n?(t.m=n[0]-1,r+n[0].length):-1}function O(t,e,r){var n=y.exec(e.slice(r,r+2));return n?(t.d=+n[0],r+n[0].length):-1}function D(t,e,r){var n=y.exec(e.slice(r,r+3));return n?(t.m=0,t.d=+n[0],r+n[0].length):-1}function R(t,e,r){var n=y.exec(e.slice(r,r+2));return n?(t.H=+n[0],r+n[0].length):-1}function F(t,e,r){var n=y.exec(e.slice(r,r+2));return n?(t.M=+n[0],r+n[0].length):-1}function B(t,e,r){var n=y.exec(e.slice(r,r+2));return n?(t.S=+n[0],r+n[0].length):-1}function N(t,e,r){var n=y.exec(e.slice(r,r+3));return n?(t.L=+n[0],r+n[0].length):-1}function j(t,e,r){var n=y.exec(e.slice(r,r+6));return n?(t.L=Math.floor(n[0]/1e3),r+n[0].length):-1}function U(t,e,r){var n=v.exec(e.slice(r,r+1));return n?r+n[0].length:-1}function V(t,e,r){var n=y.exec(e.slice(r));return n?(t.Q=+n[0],r+n[0].length):-1}function q(t,e,r){var n=y.exec(e.slice(r));return n?(t.s=+n[0],r+n[0].length):-1}function H(t,e){return _(t.getDate(),e,2)}function G(t,e){return _(t.getHours(),e,2)}function Z(t,e){return _(t.getHours()%12||12,e,2)}function W(t,e){return _(1+o.A.count((0,s.A)(t),t),e,3)}function Y(t,e){return _(t.getMilliseconds(),e,3)}function X(t,e){return Y(t,e)+\"000\"}function $(t,e){return _(t.getMonth()+1,e,2)}function J(t,e){return _(t.getMinutes(),e,2)}function K(t,e){return _(t.getSeconds(),e,2)}function Q(t){var e=t.getDay();return 0===e?7:e}function tt(t,e){return _(a.fz.count((0,s.A)(t)-1,t),e,2)}function et(t,e){var r=t.getDay();return t=r>=4||0===r?(0,a.dt)(t):a.dt.ceil(t),_(a.dt.count((0,s.A)(t),t)+(4===(0,s.A)(t).getDay()),e,2)}function rt(t){return t.getDay()}function nt(t,e){return _(a.By.count((0,s.A)(t)-1,t),e,2)}function it(t,e){return _(t.getFullYear()%100,e,2)}function at(t,e){return _(t.getFullYear()%1e4,e,4)}function ot(t){var e=t.getTimezoneOffset();return(e>0?\"-\":(e*=-1,\"+\"))+_(e/60|0,\"0\",2)+_(e%60,\"0\",2)}function st(t,e){return _(t.getUTCDate(),e,2)}function lt(t,e){return _(t.getUTCHours(),e,2)}function ct(t,e){return _(t.getUTCHours()%12||12,e,2)}function ut(t,e){return _(1+i.A.count((0,l.A)(t),t),e,3)}function ht(t,e){return _(t.getUTCMilliseconds(),e,3)}function ft(t,e){return ht(t,e)+\"000\"}function pt(t,e){return _(t.getUTCMonth()+1,e,2)}function dt(t,e){return _(t.getUTCMinutes(),e,2)}function mt(t,e){return _(t.getUTCSeconds(),e,2)}function gt(t){var e=t.getUTCDay();return 0===e?7:e}function yt(t,e){return _(n.Hl.count((0,l.A)(t)-1,t),e,2)}function vt(t,e){var r=t.getUTCDay();return t=r>=4||0===r?(0,n.pT)(t):n.pT.ceil(t),_(n.pT.count((0,l.A)(t),t)+(4===(0,l.A)(t).getUTCDay()),e,2)}function xt(t){return t.getUTCDay()}function _t(t,e){return _(n.rt.count((0,l.A)(t)-1,t),e,2)}function bt(t,e){return _(t.getUTCFullYear()%100,e,2)}function wt(t,e){return _(t.getUTCFullYear()%1e4,e,4)}function Tt(){return\"+0000\"}function kt(){return\"%\"}function At(t){return+t}function Mt(t){return Math.floor(+t/1e3)}p=f({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\"]}),d=p.format,p.parse,m=p.utcFormat,p.utcParse},47265:function(t,e,r){\"use strict\";r.d(e,{_:function(){return o}});var n=r(53398),i=r(66291),a=(0,n.A)((function(t){t.setHours(0,0,0,0)}),(function(t,e){t.setDate(t.getDate()+e)}),(function(t,e){return(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*i.rR)/i.Nm}),(function(t){return t.getDate()-1}));e.A=a;var o=a.range},66291:function(t,e,r){\"use strict\";r.d(e,{Fq:function(){return s},JJ:function(){return a},Nm:function(){return o},Tt:function(){return n},rR:function(){return i}});var n=1e3,i=6e4,a=36e5,o=864e5,s=6048e5},50936:function(t,e,r){\"use strict\";r.r(e),r.d(e,{timeDay:function(){return y.A},timeDays:function(){return y._},timeFriday:function(){return v.Sh},timeFridays:function(){return v.tz},timeHour:function(){return m},timeHours:function(){return g},timeInterval:function(){return n.A},timeMillisecond:function(){return a},timeMilliseconds:function(){return o},timeMinute:function(){return f},timeMinutes:function(){return p},timeMonday:function(){return v.By},timeMondays:function(){return v.KP},timeMonth:function(){return _},timeMonths:function(){return b},timeSaturday:function(){return v.kS},timeSaturdays:function(){return v.t$},timeSecond:function(){return c},timeSeconds:function(){return u},timeSunday:function(){return v.fz},timeSundays:function(){return v.se},timeThursday:function(){return v.dt},timeThursdays:function(){return v.Q$},timeTuesday:function(){return v.eQ},timeTuesdays:function(){return v.yW},timeWednesday:function(){return v.l3},timeWednesdays:function(){return v.gf},timeWeek:function(){return v.fz},timeWeeks:function(){return v.se},timeYear:function(){return w.A},timeYears:function(){return w.V},utcDay:function(){return C.A},utcDays:function(){return C.o},utcFriday:function(){return L.a1},utcFridays:function(){return L.Zn},utcHour:function(){return S},utcHours:function(){return E},utcMillisecond:function(){return a},utcMilliseconds:function(){return o},utcMinute:function(){return k},utcMinutes:function(){return A},utcMonday:function(){return L.rt},utcMondays:function(){return L.ON},utcMonth:function(){return P},utcMonths:function(){return z},utcSaturday:function(){return L.c8},utcSaturdays:function(){return L.Xo},utcSecond:function(){return c},utcSeconds:function(){return u},utcSunday:function(){return L.Hl},utcSundays:function(){return L.aZ},utcThursday:function(){return L.pT},utcThursdays:function(){return L.wr},utcTuesday:function(){return L.sr},utcTuesdays:function(){return L.jN},utcWednesday:function(){return L.z2},utcWednesdays:function(){return L.G6},utcWeek:function(){return L.Hl},utcWeeks:function(){return L.aZ},utcYear:function(){return O.A},utcYears:function(){return O.j}});var n=r(53398),i=(0,n.A)((function(){}),(function(t,e){t.setTime(+t+e)}),(function(t,e){return e-t}));i.every=function(t){return t=Math.floor(t),isFinite(t)&&t>0?t>1?(0,n.A)((function(e){e.setTime(Math.floor(e/t)*t)}),(function(e,r){e.setTime(+e+r*t)}),(function(e,r){return(r-e)/t})):i:null};var a=i,o=i.range,s=r(66291),l=(0,n.A)((function(t){t.setTime(t-t.getMilliseconds())}),(function(t,e){t.setTime(+t+e*s.Tt)}),(function(t,e){return(e-t)/s.Tt}),(function(t){return t.getUTCSeconds()})),c=l,u=l.range,h=(0,n.A)((function(t){t.setTime(t-t.getMilliseconds()-t.getSeconds()*s.Tt)}),(function(t,e){t.setTime(+t+e*s.rR)}),(function(t,e){return(e-t)/s.rR}),(function(t){return t.getMinutes()})),f=h,p=h.range,d=(0,n.A)((function(t){t.setTime(t-t.getMilliseconds()-t.getSeconds()*s.Tt-t.getMinutes()*s.rR)}),(function(t,e){t.setTime(+t+e*s.JJ)}),(function(t,e){return(e-t)/s.JJ}),(function(t){return t.getHours()})),m=d,g=d.range,y=r(47265),v=r(55735),x=(0,n.A)((function(t){t.setDate(1),t.setHours(0,0,0,0)}),(function(t,e){t.setMonth(t.getMonth()+e)}),(function(t,e){return e.getMonth()-t.getMonth()+12*(e.getFullYear()-t.getFullYear())}),(function(t){return t.getMonth()})),_=x,b=x.range,w=r(9830),T=(0,n.A)((function(t){t.setUTCSeconds(0,0)}),(function(t,e){t.setTime(+t+e*s.rR)}),(function(t,e){return(e-t)/s.rR}),(function(t){return t.getUTCMinutes()})),k=T,A=T.range,M=(0,n.A)((function(t){t.setUTCMinutes(0,0,0)}),(function(t,e){t.setTime(+t+e*s.JJ)}),(function(t,e){return(e-t)/s.JJ}),(function(t){return t.getUTCHours()})),S=M,E=M.range,C=r(72543),L=r(1681),I=(0,n.A)((function(t){t.setUTCDate(1),t.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCMonth(t.getUTCMonth()+e)}),(function(t,e){return e.getUTCMonth()-t.getUTCMonth()+12*(e.getUTCFullYear()-t.getUTCFullYear())}),(function(t){return t.getUTCMonth()})),P=I,z=I.range,O=r(59764)},53398:function(t,e,r){\"use strict\";r.d(e,{A:function(){return a}});var n=new Date,i=new Date;function a(t,e,r,o){function s(e){return t(e=0===arguments.length?new Date:new Date(+e)),e}return s.floor=function(e){return t(e=new Date(+e)),e},s.ceil=function(r){return t(r=new Date(r-1)),e(r,1),t(r),r},s.round=function(t){var e=s(t),r=s.ceil(t);return t-e<r-t?e:r},s.offset=function(t,r){return e(t=new Date(+t),null==r?1:Math.floor(r)),t},s.range=function(r,n,i){var a,o=[];if(r=s.ceil(r),i=null==i?1:Math.floor(i),!(r<n&&i>0))return o;do{o.push(a=new Date(+r)),e(r,i),t(r)}while(a<r&&r<n);return o},s.filter=function(r){return a((function(e){if(e>=e)for(;t(e),!r(e);)e.setTime(e-1)}),(function(t,n){if(t>=t)if(n<0)for(;++n<=0;)for(;e(t,-1),!r(t););else for(;--n>=0;)for(;e(t,1),!r(t););}))},r&&(s.count=function(e,a){return n.setTime(+e),i.setTime(+a),t(n),t(i),Math.floor(r(n,i))},s.every=function(t){return t=Math.floor(t),isFinite(t)&&t>0?t>1?s.filter(o?function(e){return o(e)%t==0}:function(e){return s.count(0,e)%t==0}):s:null}),s}},72543:function(t,e,r){\"use strict\";r.d(e,{o:function(){return o}});var n=r(53398),i=r(66291),a=(0,n.A)((function(t){t.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCDate(t.getUTCDate()+e)}),(function(t,e){return(e-t)/i.Nm}),(function(t){return t.getUTCDate()-1}));e.A=a;var o=a.range},1681:function(t,e,r){\"use strict\";r.d(e,{G6:function(){return g},Hl:function(){return o},ON:function(){return d},Xo:function(){return x},Zn:function(){return v},a1:function(){return h},aZ:function(){return p},c8:function(){return f},jN:function(){return m},pT:function(){return u},rt:function(){return s},sr:function(){return l},wr:function(){return y},z2:function(){return c}});var n=r(53398),i=r(66291);function a(t){return(0,n.A)((function(e){e.setUTCDate(e.getUTCDate()-(e.getUTCDay()+7-t)%7),e.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCDate(t.getUTCDate()+7*e)}),(function(t,e){return(e-t)/i.Fq}))}var o=a(0),s=a(1),l=a(2),c=a(3),u=a(4),h=a(5),f=a(6),p=o.range,d=s.range,m=l.range,g=c.range,y=u.range,v=h.range,x=f.range},59764:function(t,e,r){\"use strict\";r.d(e,{j:function(){return a}});var n=r(53398),i=(0,n.A)((function(t){t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCFullYear(t.getUTCFullYear()+e)}),(function(t,e){return e.getUTCFullYear()-t.getUTCFullYear()}),(function(t){return t.getUTCFullYear()}));i.every=function(t){return isFinite(t=Math.floor(t))&&t>0?(0,n.A)((function(e){e.setUTCFullYear(Math.floor(e.getUTCFullYear()/t)*t),e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)}),(function(e,r){e.setUTCFullYear(e.getUTCFullYear()+r*t)})):null},e.A=i;var a=i.range},55735:function(t,e,r){\"use strict\";r.d(e,{By:function(){return s},KP:function(){return d},Q$:function(){return y},Sh:function(){return h},dt:function(){return u},eQ:function(){return l},fz:function(){return o},gf:function(){return g},kS:function(){return f},l3:function(){return c},se:function(){return p},t$:function(){return x},tz:function(){return v},yW:function(){return m}});var n=r(53398),i=r(66291);function a(t){return(0,n.A)((function(e){e.setDate(e.getDate()-(e.getDay()+7-t)%7),e.setHours(0,0,0,0)}),(function(t,e){t.setDate(t.getDate()+7*e)}),(function(t,e){return(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*i.rR)/i.Fq}))}var o=a(0),s=a(1),l=a(2),c=a(3),u=a(4),h=a(5),f=a(6),p=o.range,d=s.range,m=l.range,g=c.range,y=u.range,v=h.range,x=f.range},9830:function(t,e,r){\"use strict\";r.d(e,{V:function(){return a}});var n=r(53398),i=(0,n.A)((function(t){t.setMonth(0,1),t.setHours(0,0,0,0)}),(function(t,e){t.setFullYear(t.getFullYear()+e)}),(function(t,e){return e.getFullYear()-t.getFullYear()}),(function(t){return t.getFullYear()}));i.every=function(t){return isFinite(t=Math.floor(t))&&t>0?(0,n.A)((function(e){e.setFullYear(Math.floor(e.getFullYear()/t)*t),e.setMonth(0,1),e.setHours(0,0,0,0)}),(function(e,r){e.setFullYear(e.getFullYear()+r*t)})):null},e.A=i;var a=i.range},70973:function(t,e,r){\"use strict\";var n=r(40891),i=r(98800),a=r(48631),o=r(52991);t.exports=function(t,e,r){if(!t||\"object\"!=typeof t&&\"function\"!=typeof t)throw new a(\"`obj` must be an object or a function`\");if(\"string\"!=typeof e&&\"symbol\"!=typeof e)throw new a(\"`property` must be a string or a symbol`\");if(arguments.length>3&&\"boolean\"!=typeof arguments[3]&&null!==arguments[3])throw new a(\"`nonEnumerable`, if provided, must be a boolean or null\");if(arguments.length>4&&\"boolean\"!=typeof arguments[4]&&null!==arguments[4])throw new a(\"`nonWritable`, if provided, must be a boolean or null\");if(arguments.length>5&&\"boolean\"!=typeof arguments[5]&&null!==arguments[5])throw new a(\"`nonConfigurable`, if provided, must be a boolean or null\");if(arguments.length>6&&\"boolean\"!=typeof arguments[6])throw new a(\"`loose`, if provided, must be a boolean\");var s=arguments.length>3?arguments[3]:null,l=arguments.length>4?arguments[4]:null,c=arguments.length>5?arguments[5]:null,u=arguments.length>6&&arguments[6],h=!!o&&o(t,e);if(n)n(t,e,{configurable:null===c&&h?h.configurable:!c,enumerable:null===s&&h?h.enumerable:!s,value:r,writable:null===l&&h?h.writable:!l});else{if(!u&&(s||l||c))throw new i(\"This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.\");t[e]=r}}},97936:function(t,e,r){\"use strict\";var n=r(99433),i=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol(\"foo\"),a=Object.prototype.toString,o=Array.prototype.concat,s=Object.defineProperty,l=r(74268)(),c=s&&l,u=function(t,e,r,n){if(e in t)if(!0===n){if(t[e]===r)return}else if(\"function\"!=typeof(i=n)||\"[object Function]\"!==a.call(i)||!n())return;var i;c?s(t,e,{configurable:!0,enumerable:!1,value:r,writable:!0}):t[e]=r},h=function(t,e){var r=arguments.length>2?arguments[2]:{},a=n(e);i&&(a=o.call(a,Object.getOwnPropertySymbols(e)));for(var s=0;s<a.length;s+=1)u(t,a[s],e[a[s]],r[a[s]])};h.supportsDescriptors=!!c,t.exports=h},68650:function(t){t.exports=function(){for(var t=0;t<arguments.length;t++)if(void 0!==arguments[t])return arguments[t]}},44431:function(t){\"use strict\";t.exports=n;var e=(n.canvas=document.createElement(\"canvas\")).getContext(\"2d\"),r=i([32,126]);function n(t,n){Array.isArray(t)&&(t=t.join(\", \"));var a,o={},s=16,l=.05;n&&(2===n.length&&\"number\"==typeof n[0]?a=i(n):Array.isArray(n)?a=n:(n.o?a=i(n.o):n.pairs&&(a=n.pairs),n.fontSize&&(s=n.fontSize),null!=n.threshold&&(l=n.threshold))),a||(a=r),e.font=s+\"px \"+t;for(var c=0;c<a.length;c++){var u=a[c],h=e.measureText(u[0]).width+e.measureText(u[1]).width,f=e.measureText(u).width;if(Math.abs(h-f)>s*l){var p=(f-h)/s;o[u]=1e3*p}}return o}function i(t){for(var e=[],r=t[0];r<=t[1];r++)for(var n=String.fromCharCode(r),i=t[0];i<t[1];i++){var a=n+String.fromCharCode(i);e.push(a)}return e}n.createPairs=i,n.ascii=r},95620:function(t,e,r){var n=r(16844),i=r(60265),a={M:\"moveTo\",C:\"bezierCurveTo\"};t.exports=function(t,e){t.beginPath(),i(n(e)).forEach((function(e){var r=e[0],n=e.slice(1);t[a[r]].apply(t,n)})),t.closePath()}},10275:function(t){t.exports=function(t){switch(t){case\"int8\":return Int8Array;case\"int16\":return Int16Array;case\"int32\":return Int32Array;case\"uint8\":return Uint8Array;case\"uint16\":return Uint16Array;case\"uint32\":return Uint32Array;case\"float32\":return Float32Array;case\"float64\":return Float64Array;case\"array\":return Array;case\"uint8_clamped\":return Uint8ClampedArray}}},49523:function(t){\"use strict\";function e(t,r,n){var i=0|t[n];if(i<=0)return[];var a,o=new Array(i);if(n===t.length-1)for(a=0;a<i;++a)o[a]=r;else for(a=0;a<i;++a)o[a]=e(t,r,n+1);return o}t.exports=function(t,r){switch(void 0===r&&(r=0),typeof t){case\"number\":if(t>0)return function(t,e){var r,n;for(r=new Array(t),n=0;n<t;++n)r[n]=e;return r}(0|t,r);break;case\"object\":if(\"number\"==typeof t.length)return e(t,r,0)}return[]}},25782:function(t){\"use strict\";function e(t,e,n){n=n||2;var a,o,s,l,h,f,d,m=e&&e.length,g=m?e[0]*n:t.length,y=r(t,0,g,n,!0),v=[];if(!y||y.next===y.prev)return v;if(m&&(y=function(t,e,n,i){var a,o,s,l=[];for(a=0,o=e.length;a<o;a++)(s=r(t,e[a]*i,a<o-1?e[a+1]*i:t.length,i,!1))===s.next&&(s.steiner=!0),l.push(p(s));for(l.sort(c),a=0;a<l.length;a++)n=u(l[a],n);return n}(t,e,y,n)),t.length>80*n){a=s=t[0],o=l=t[1];for(var x=n;x<g;x+=n)(h=t[x])<a&&(a=h),(f=t[x+1])<o&&(o=f),h>s&&(s=h),f>l&&(l=f);d=0!==(d=Math.max(s-a,l-o))?32767/d:0}return i(y,v,n,a,o,d,0),v}function r(t,e,r,n,i){var a,o;if(i===M(t,e,r,n)>0)for(a=e;a<r;a+=n)o=T(a,t[a],t[a+1],o);else for(a=r-n;a>=e;a-=n)o=T(a,t[a],t[a+1],o);return o&&y(o,o.next)&&(k(o),o=o.next),o}function n(t,e){if(!t)return t;e||(e=t);var r,n=t;do{if(r=!1,n.steiner||!y(n,n.next)&&0!==g(n.prev,n,n.next))n=n.next;else{if(k(n),(n=e=n.prev)===n.next)break;r=!0}}while(r||n!==e);return e}function i(t,e,r,c,u,h,p){if(t){!p&&h&&function(t,e,r,n){var i=t;do{0===i.z&&(i.z=f(i.x,i.y,e,r,n)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next}while(i!==t);i.prevZ.nextZ=null,i.prevZ=null,function(t){var e,r,n,i,a,o,s,l,c=1;do{for(r=t,t=null,a=null,o=0;r;){for(o++,n=r,s=0,e=0;e<c&&(s++,n=n.nextZ);e++);for(l=c;s>0||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:t=i,i.prevZ=a,a=i;r=n}a.nextZ=null,c*=2}while(o>1)}(i)}(t,c,u,h);for(var d,m,g=t;t.prev!==t.next;)if(d=t.prev,m=t.next,h?o(t,c,u,h):a(t))e.push(d.i/r|0),e.push(t.i/r|0),e.push(m.i/r|0),k(t),t=m.next,g=m.next;else if((t=m)===g){p?1===p?i(t=s(n(t),e,r),e,r,c,u,h,2):2===p&&l(t,e,r,c,u,h):i(n(t),e,r,c,u,h,1);break}}}function a(t){var e=t.prev,r=t,n=t.next;if(g(e,r,n)>=0)return!1;for(var i=e.x,a=r.x,o=n.x,s=e.y,l=r.y,c=n.y,u=i<a?i<o?i:o:a<o?a:o,h=s<l?s<c?s:c:l<c?l:c,f=i>a?i>o?i:o:a>o?a:o,p=s>l?s>c?s:c:l>c?l:c,m=n.next;m!==e;){if(m.x>=u&&m.x<=f&&m.y>=h&&m.y<=p&&d(i,s,a,l,o,c,m.x,m.y)&&g(m.prev,m,m.next)>=0)return!1;m=m.next}return!0}function o(t,e,r,n){var i=t.prev,a=t,o=t.next;if(g(i,a,o)>=0)return!1;for(var s=i.x,l=a.x,c=o.x,u=i.y,h=a.y,p=o.y,m=s<l?s<c?s:c:l<c?l:c,y=u<h?u<p?u:p:h<p?h:p,v=s>l?s>c?s:c:l>c?l:c,x=u>h?u>p?u:p:h>p?h:p,_=f(m,y,e,r,n),b=f(v,x,e,r,n),w=t.prevZ,T=t.nextZ;w&&w.z>=_&&T&&T.z<=b;){if(w.x>=m&&w.x<=v&&w.y>=y&&w.y<=x&&w!==i&&w!==o&&d(s,u,l,h,c,p,w.x,w.y)&&g(w.prev,w,w.next)>=0)return!1;if(w=w.prevZ,T.x>=m&&T.x<=v&&T.y>=y&&T.y<=x&&T!==i&&T!==o&&d(s,u,l,h,c,p,T.x,T.y)&&g(T.prev,T,T.next)>=0)return!1;T=T.nextZ}for(;w&&w.z>=_;){if(w.x>=m&&w.x<=v&&w.y>=y&&w.y<=x&&w!==i&&w!==o&&d(s,u,l,h,c,p,w.x,w.y)&&g(w.prev,w,w.next)>=0)return!1;w=w.prevZ}for(;T&&T.z<=b;){if(T.x>=m&&T.x<=v&&T.y>=y&&T.y<=x&&T!==i&&T!==o&&d(s,u,l,h,c,p,T.x,T.y)&&g(T.prev,T,T.next)>=0)return!1;T=T.nextZ}return!0}function s(t,e,r){var i=t;do{var a=i.prev,o=i.next.next;!y(a,o)&&v(a,i,i.next,o)&&b(a,o)&&b(o,a)&&(e.push(a.i/r|0),e.push(i.i/r|0),e.push(o.i/r|0),k(i),k(i.next),i=t=o),i=i.next}while(i!==t);return n(i)}function l(t,e,r,a,o,s){var l=t;do{for(var c=l.next.next;c!==l.prev;){if(l.i!==c.i&&m(l,c)){var u=w(l,c);return l=n(l,l.next),u=n(u,u.next),i(l,e,r,a,o,s,0),void i(u,e,r,a,o,s,0)}c=c.next}l=l.next}while(l!==t)}function c(t,e){return t.x-e.x}function u(t,e){var r=function(t,e){var r,n=e,i=t.x,a=t.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&&(o=s,r=n.x<n.next.x?n:n.next,s===i))return r}n=n.next}while(n!==e);if(!r)return null;var l,c=r,u=r.x,f=r.y,p=1/0;n=r;do{i>=n.x&&n.x>=u&&i!==n.x&&d(a<f?i:o,a,u,f,a<f?o:i,a,n.x,n.y)&&(l=Math.abs(a-n.y)/(i-n.x),b(n,t)&&(l<p||l===p&&(n.x>r.x||n.x===r.x&&h(r,n)))&&(r=n,p=l)),n=n.next}while(n!==c);return r}(t,e);if(!r)return e;var i=w(r,t);return n(i,i.next),n(r,r.next)}function h(t,e){return g(t.prev,t,e.prev)<0&&g(e.next,t,t.next)<0}function f(t,e,r,n,i){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=(t-r)*i|0)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=(e-n)*i|0)|e<<8))|e<<4))|e<<2))|e<<1))<<1}function p(t){var e=t,r=t;do{(e.x<r.x||e.x===r.x&&e.y<r.y)&&(r=e),e=e.next}while(e!==t);return r}function d(t,e,r,n,i,a,o,s){return(i-o)*(e-s)>=(t-o)*(a-s)&&(t-o)*(n-s)>=(r-o)*(e-s)&&(r-o)*(a-s)>=(i-o)*(n-s)}function m(t,e){return t.next.i!==e.i&&t.prev.i!==e.i&&!function(t,e){var r=t;do{if(r.i!==t.i&&r.next.i!==t.i&&r.i!==e.i&&r.next.i!==e.i&&v(r,r.next,t,e))return!0;r=r.next}while(r!==t);return!1}(t,e)&&(b(t,e)&&b(e,t)&&function(t,e){var r=t,n=!1,i=(t.x+e.x)/2,a=(t.y+e.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!==t);return n}(t,e)&&(g(t.prev,t,e.prev)||g(t,e.prev,e))||y(t,e)&&g(t.prev,t,t.next)>0&&g(e.prev,e,e.next)>0)}function g(t,e,r){return(e.y-t.y)*(r.x-e.x)-(e.x-t.x)*(r.y-e.y)}function y(t,e){return t.x===e.x&&t.y===e.y}function v(t,e,r,n){var i=_(g(t,e,r)),a=_(g(t,e,n)),o=_(g(r,n,t)),s=_(g(r,n,e));return i!==a&&o!==s||!(0!==i||!x(t,r,e))||!(0!==a||!x(t,n,e))||!(0!==o||!x(r,t,n))||!(0!==s||!x(r,e,n))}function x(t,e,r){return e.x<=Math.max(t.x,r.x)&&e.x>=Math.min(t.x,r.x)&&e.y<=Math.max(t.y,r.y)&&e.y>=Math.min(t.y,r.y)}function _(t){return t>0?1:t<0?-1:0}function b(t,e){return g(t.prev,t,t.next)<0?g(t,e,t.next)>=0&&g(t,t.prev,e)>=0:g(t,e,t.prev)<0||g(t,t.next,e)<0}function w(t,e){var r=new A(t.i,t.x,t.y),n=new A(e.i,e.x,e.y),i=t.next,a=e.prev;return t.next=e,e.prev=t,r.next=i,i.prev=r,n.next=r,r.prev=n,a.next=n,n.prev=a,n}function T(t,e,r,n){var i=new A(t,e,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 k(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)}function A(t,e,r){this.i=t,this.x=e,this.y=r,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}function M(t,e,r,n){for(var i=0,a=e,o=r-n;a<r;a+=n)i+=(t[o]-t[a])*(t[a+1]+t[o+1]),o=a;return i}t.exports=e,t.exports.default=e,e.deviation=function(t,e,r,n){var i=e&&e.length,a=i?e[0]*r:t.length,o=Math.abs(M(t,0,a,r));if(i)for(var s=0,l=e.length;s<l;s++){var c=e[s]*r,u=s<l-1?e[s+1]*r:t.length;o-=Math.abs(M(t,c,u,r))}var h=0;for(s=0;s<n.length;s+=3){var f=n[s]*r,p=n[s+1]*r,d=n[s+2]*r;h+=Math.abs((t[f]-t[d])*(t[p+1]-t[f+1])-(t[f]-t[p])*(t[d+1]-t[f+1]))}return 0===o&&0===h?0:Math.abs((h-o)/o)},e.flatten=function(t){for(var e=t[0][0].length,r={vertices:[],holes:[],dimensions:e},n=0,i=0;i<t.length;i++){for(var a=0;a<t[i].length;a++)for(var o=0;o<e;o++)r.vertices.push(t[i][a][o]);i>0&&(n+=t[i-1].length,r.holes.push(n))}return r}},96143:function(t,e,r){var n=r(26381);t.exports=function(t,e){var r,i=[],a=[],o=[],s={},l=[];function c(t){o[t]=!1,s.hasOwnProperty(t)&&Object.keys(s[t]).forEach((function(e){delete s[t][e],o[e]&&c(e)}))}function u(t){var e,n,i=!1;for(a.push(t),o[t]=!0,e=0;e<l[t].length;e++)(n=l[t][e])===r?(h(r,a),i=!0):o[n]||(i=u(n));if(i)c(t);else for(e=0;e<l[t].length;e++){n=l[t][e];var f=s[n];f||(f={},s[n]=f),f[n]=!0}return a.pop(),i}function h(t,r){var n=[].concat(r).concat(t);e?e(u):i.push(n)}function f(e){!function(e){for(var r=0;r<t.length;r++)r<e&&(t[r]=[]),t[r]=t[r].filter((function(t){return t>=e}))}(e);for(var r,i=n(t).components.filter((function(t){return t.length>1})),a=1/0,o=0;o<i.length;o++)for(var s=0;s<i[o].length;s++)i[o][s]<a&&(a=i[o][s],r=o);var l=i[r];if(!l)return!1;var c=t.map((function(t,e){return-1===l.indexOf(e)?[]:t.filter((function(t){return-1!==l.indexOf(t)}))}));return{leastVertex:a,adjList:c}}r=0;for(var p=t.length;r<p;){var d=f(r);if(r=d.leastVertex,l=d.adjList){for(var m=0;m<l.length;m++)for(var g=0;g<l[m].length;g++){var y=l[m][g];o[+y]=!1,s[y]={}}u(r),r+=1}else r=p}return e?void 0:i}},40891:function(t,e,r){\"use strict\";var n=r(71129)(\"%Object.defineProperty%\",!0)||!1;if(n)try{n({},\"a\",{value:1})}catch(t){n=!1}t.exports=n},35465:function(t){\"use strict\";t.exports=EvalError},77731:function(t){\"use strict\";t.exports=Error},30582:function(t){\"use strict\";t.exports=RangeError},50294:function(t){\"use strict\";t.exports=ReferenceError},98800:function(t){\"use strict\";t.exports=SyntaxError},48631:function(t){\"use strict\";t.exports=TypeError},33149:function(t){\"use strict\";t.exports=URIError},91445:function(t,e,r){\"use strict\";var n=r(69746);t.exports=function(){return n(this).length=0,this}},82377:function(t,e,r){\"use strict\";t.exports=r(57712)()?Array.from:r(33468)},57712:function(t){\"use strict\";t.exports=function(){var t,e,r=Array.from;return\"function\"==typeof r&&(e=r(t=[\"raz\",\"dwa\"]),Boolean(e&&e!==t&&\"dwa\"===e[1]))}},33468:function(t,e,r){\"use strict\";var n=r(63008).iterator,i=r(82262),a=r(59356),o=r(54653),s=r(52359),l=r(69746),c=r(1974),u=r(48488),h=Array.isArray,f=Function.prototype.call,p={configurable:!0,enumerable:!0,writable:!0,value:null},d=Object.defineProperty;t.exports=function(t){var e,r,m,g,y,v,x,_,b,w,T=arguments[1],k=arguments[2];if(t=Object(l(t)),c(T)&&s(T),this&&this!==Array&&a(this))e=this;else{if(!T){if(i(t))return 1!==(y=t.length)?Array.apply(null,t):((g=new Array(1))[0]=t[0],g);if(h(t)){for(g=new Array(y=t.length),r=0;r<y;++r)g[r]=t[r];return g}}g=[]}if(!h(t))if(void 0!==(b=t[n])){for(x=s(b).call(t),e&&(g=new e),_=x.next(),r=0;!_.done;)w=T?f.call(T,k,_.value,r):_.value,e?(p.value=w,d(g,r,p)):g[r]=w,_=x.next(),++r;y=r}else if(u(t)){for(y=t.length,e&&(g=new e),r=0,m=0;r<y;++r)w=t[r],r+1<y&&(v=w.charCodeAt(0))>=55296&&v<=56319&&(w+=t[++r]),w=T?f.call(T,k,w,m):w,e?(p.value=w,d(g,m,p)):g[m]=w,++m;y=m}if(void 0===y)for(y=o(t.length),e&&(g=new e(y)),r=0;r<y;++r)w=T?f.call(T,k,t[r],r):t[r],e?(p.value=w,d(g,r,p)):g[r]=w;return e&&(p.value=null,g.length=y),g}},82262:function(t){\"use strict\";var e=Object.prototype.toString,r=e.call(function(){return arguments}());t.exports=function(t){return e.call(t)===r}},59356:function(t){\"use strict\";var e=Object.prototype.toString,r=RegExp.prototype.test.bind(/^[object [A-Za-z0-9]*Function]$/);t.exports=function(t){return\"function\"==typeof t&&r(e.call(t))}},62039:function(t){\"use strict\";t.exports=function(){}},53579:function(t,e,r){\"use strict\";t.exports=r(67394)()?Math.sign:r(37122)},67394:function(t){\"use strict\";t.exports=function(){var t=Math.sign;return\"function\"==typeof t&&1===t(10)&&-1===t(-20)}},37122:function(t){\"use strict\";t.exports=function(t){return t=Number(t),isNaN(t)||0===t?t:t>0?1:-1}},10226:function(t,e,r){\"use strict\";var n=r(53579),i=Math.abs,a=Math.floor;t.exports=function(t){return isNaN(t)?0:0!==(t=Number(t))&&isFinite(t)?n(t)*a(i(t)):t}},54653:function(t,e,r){\"use strict\";var n=r(10226),i=Math.max;t.exports=function(t){return i(0,n(t))}},39395:function(t,e,r){\"use strict\";var n=r(52359),i=r(69746),a=Function.prototype.bind,o=Function.prototype.call,s=Object.keys,l=Object.prototype.propertyIsEnumerable;t.exports=function(t,e){return function(r,c){var u,h=arguments[2],f=arguments[3];return r=Object(i(r)),n(c),u=s(r),f&&u.sort(\"function\"==typeof f?a.call(f,r):void 0),\"function\"!=typeof t&&(t=u[t]),o.call(t,u,(function(t,n){return l.call(r,t)?o.call(c,h,r[t],t,r,n):e}))}}},1920:function(t,e,r){\"use strict\";t.exports=r(41271)()?Object.assign:r(26399)},41271:function(t){\"use strict\";t.exports=function(){var t,e=Object.assign;return\"function\"==typeof e&&(e(t={foo:\"raz\"},{bar:\"dwa\"},{trzy:\"trzy\"}),t.foo+t.bar+t.trzy===\"razdwatrzy\")}},26399:function(t,e,r){\"use strict\";var n=r(36353),i=r(69746),a=Math.max;t.exports=function(t,e){var r,o,s,l=a(arguments.length,2);for(t=Object(i(t)),s=function(n){try{t[n]=e[n]}catch(t){r||(r=t)}},o=1;o<l;++o)n(e=arguments[o]).forEach(s);if(void 0!==r)throw r;return t}},86591:function(t,e,r){\"use strict\";var n=r(82377),i=r(1920),a=r(69746);t.exports=function(t){var e=Object(a(t)),r=arguments[1],o=Object(arguments[2]);if(e!==t&&!r)return e;var s={};return r?n(r,(function(e){(o.ensure||e in t)&&(s[e]=t[e])})):i(s,t),s}},57842:function(t,e,r){\"use strict\";var n,i,a,o,s=Object.create;r(90361)()||(n=r(45765)),t.exports=n?1!==n.level?s:(i={},a={},o={configurable:!1,enumerable:!1,writable:!0,value:void 0},Object.getOwnPropertyNames(Object.prototype).forEach((function(t){a[t]=\"__proto__\"!==t?o:{configurable:!0,enumerable:!1,writable:!0,value:void 0}})),Object.defineProperties(i,a),Object.defineProperty(n,\"nullPolyfill\",{configurable:!1,enumerable:!1,writable:!1,value:i}),function(t,e){return s(null===t?i:t,e)}):s},82813:function(t,e,r){\"use strict\";t.exports=r(39395)(\"forEach\")},76064:function(t,e,r){\"use strict\";var n=r(1974),i={function:!0,object:!0};t.exports=function(t){return n(t)&&i[typeof t]||!1}},1974:function(t,e,r){\"use strict\";var n=r(62039)();t.exports=function(t){return t!==n&&null!==t}},36353:function(t,e,r){\"use strict\";t.exports=r(83800)()?Object.keys:r(67044)},83800:function(t){\"use strict\";t.exports=function(){try{return Object.keys(\"primitive\"),!0}catch(t){return!1}}},67044:function(t,e,r){\"use strict\";var n=r(1974),i=Object.keys;t.exports=function(t){return i(n(t)?Object(t):t)}},29854:function(t,e,r){\"use strict\";var n=r(52359),i=r(82813),a=Function.prototype.call;t.exports=function(t,e){var r={},o=arguments[2];return n(e),i(t,(function(t,n,i,s){r[n]=a.call(e,o,t,n,i,s)})),r}},76504:function(t,e,r){\"use strict\";var n=r(1974),i=Array.prototype.forEach,a=Object.create;t.exports=function(t){var e=a(null);return i.call(arguments,(function(t){n(t)&&function(t,e){var r;for(r in t)e[r]=t[r]}(Object(t),e)})),e}},22834:function(t,e,r){\"use strict\";t.exports=r(90361)()?Object.setPrototypeOf:r(45765)},90361:function(t){\"use strict\";var e=Object.create,r=Object.getPrototypeOf,n={};t.exports=function(){var t=Object.setPrototypeOf;return\"function\"==typeof t&&r(t((arguments[0]||e)(null),n))===n}},45765:function(t,e,r){\"use strict\";var n,i,a,o,s=r(76064),l=r(69746),c=Object.prototype.isPrototypeOf,u=Object.defineProperty,h={configurable:!0,enumerable:!1,writable:!0,value:void 0};n=function(t,e){if(l(t),null===e||s(e))return t;throw new TypeError(\"Prototype must be null or an object\")},t.exports=(i=function(){var t,e=Object.create(null),r={},n=Object.getOwnPropertyDescriptor(Object.prototype,\"__proto__\");if(n){try{(t=n.set).call(e,r)}catch(t){}if(Object.getPrototypeOf(e)===r)return{set:t,level:2}}return e.__proto__=r,Object.getPrototypeOf(e)===r?{level:2}:((e={}).__proto__=r,Object.getPrototypeOf(e)===r&&{level:1})}(),i?(2===i.level?i.set?(o=i.set,a=function(t,e){return o.call(n(t,e),e),t}):a=function(t,e){return n(t,e).__proto__=e,t}:a=function t(e,r){var i;return n(e,r),(i=c.call(t.nullPolyfill,e))&&delete t.nullPolyfill.__proto__,null===r&&(r=t.nullPolyfill),e.__proto__=r,i&&u(t.nullPolyfill,\"__proto__\",h),e},Object.defineProperty(a,\"level\",{configurable:!1,enumerable:!1,writable:!1,value:i.level})):null),r(57842)},52359:function(t){\"use strict\";t.exports=function(t){if(\"function\"!=typeof t)throw new TypeError(t+\" is not a function\");return t}},11004:function(t,e,r){\"use strict\";var n=r(76064);t.exports=function(t){if(!n(t))throw new TypeError(t+\" is not an Object\");return t}},69746:function(t,e,r){\"use strict\";var n=r(1974);t.exports=function(t){if(!n(t))throw new TypeError(\"Cannot use null or undefined\");return t}},2338:function(t,e,r){\"use strict\";t.exports=r(65961)()?String.prototype.contains:r(9461)},65961:function(t){\"use strict\";var e=\"razdwatrzy\";t.exports=function(){return\"function\"==typeof e.contains&&!0===e.contains(\"dwa\")&&!1===e.contains(\"foo\")}},9461:function(t){\"use strict\";var e=String.prototype.indexOf;t.exports=function(t){return e.call(this,t,arguments[1])>-1}},48488:function(t){\"use strict\";var e=Object.prototype.toString,r=e.call(\"\");t.exports=function(t){return\"string\"==typeof t||t&&\"object\"==typeof t&&(t instanceof String||e.call(t)===r)||!1}},43497:function(t){\"use strict\";var e=Object.create(null),r=Math.random;t.exports=function(){var t;do{t=r().toString(36).slice(2)}while(e[t]);return t}},71343:function(t,e,r){\"use strict\";var n,i=r(22834),a=r(2338),o=r(91819),s=r(63008),l=r(85490),c=Object.defineProperty;n=t.exports=function(t,e){if(!(this instanceof n))throw new TypeError(\"Constructor requires 'new'\");l.call(this,t),e=e?a.call(e,\"key+value\")?\"key+value\":a.call(e,\"key\")?\"key\":\"value\":\"value\",c(this,\"__kind__\",o(\"\",e))},i&&i(n,l),delete n.prototype.constructor,n.prototype=Object.create(l.prototype,{_resolve:o((function(t){return\"value\"===this.__kind__?this.__list__[t]:\"key+value\"===this.__kind__?[t,this.__list__[t]]:t}))}),c(n.prototype,s.toStringTag,o(\"c\",\"Array Iterator\"))},58755:function(t,e,r){\"use strict\";var n=r(82262),i=r(52359),a=r(48488),o=r(34494),s=Array.isArray,l=Function.prototype.call,c=Array.prototype.some;t.exports=function(t,e){var r,u,h,f,p,d,m,g,y=arguments[2];if(s(t)||n(t)?r=\"array\":a(t)?r=\"string\":t=o(t),i(e),h=function(){f=!0},\"array\"!==r)if(\"string\"!==r)for(u=t.next();!u.done;){if(l.call(e,y,u.value,h),f)return;u=t.next()}else for(d=t.length,p=0;p<d&&(m=t[p],p+1<d&&(g=m.charCodeAt(0))>=55296&&g<=56319&&(m+=t[++p]),l.call(e,y,m,h),!f);++p);else c.call(t,(function(t){return l.call(e,y,t,h),f}))}},34494:function(t,e,r){\"use strict\";var n=r(82262),i=r(48488),a=r(71343),o=r(23417),s=r(82831),l=r(63008).iterator;t.exports=function(t){return\"function\"==typeof s(t)[l]?t[l]():n(t)?new a(t):i(t)?new o(t):new a(t)}},85490:function(t,e,r){\"use strict\";var n,i=r(91445),a=r(1920),o=r(52359),s=r(69746),l=r(91819),c=r(84510),u=r(63008),h=Object.defineProperty,f=Object.defineProperties;t.exports=n=function(t,e){if(!(this instanceof n))throw new TypeError(\"Constructor requires 'new'\");f(this,{__list__:l(\"w\",s(t)),__context__:l(\"w\",e),__nextIndex__:l(\"w\",0)}),e&&(o(e.on),e.on(\"_add\",this._onAdd),e.on(\"_delete\",this._onDelete),e.on(\"_clear\",this._onClear))},delete n.prototype.constructor,f(n.prototype,a({_next:l((function(){var t;if(this.__list__)return this.__redo__&&void 0!==(t=this.__redo__.shift())?t:this.__nextIndex__<this.__list__.length?this.__nextIndex__++:void this._unBind()})),next:l((function(){return this._createResult(this._next())})),_createResult:l((function(t){return void 0===t?{done:!0,value:void 0}:{done:!1,value:this._resolve(t)}})),_resolve:l((function(t){return this.__list__[t]})),_unBind:l((function(){this.__list__=null,delete this.__redo__,this.__context__&&(this.__context__.off(\"_add\",this._onAdd),this.__context__.off(\"_delete\",this._onDelete),this.__context__.off(\"_clear\",this._onClear),this.__context__=null)})),toString:l((function(){return\"[object \"+(this[u.toStringTag]||\"Object\")+\"]\"}))},c({_onAdd:l((function(t){t>=this.__nextIndex__||(++this.__nextIndex__,this.__redo__?(this.__redo__.forEach((function(e,r){e>=t&&(this.__redo__[r]=++e)}),this),this.__redo__.push(t)):h(this,\"__redo__\",l(\"c\",[t])))})),_onDelete:l((function(t){var e;t>=this.__nextIndex__||(--this.__nextIndex__,this.__redo__&&(-1!==(e=this.__redo__.indexOf(t))&&this.__redo__.splice(e,1),this.__redo__.forEach((function(e,r){e>t&&(this.__redo__[r]=--e)}),this)))})),_onClear:l((function(){this.__redo__&&i.call(this.__redo__),this.__nextIndex__=0}))}))),h(n.prototype,u.iterator,l((function(){return this})))},50567:function(t,e,r){\"use strict\";var n=r(82262),i=r(1974),a=r(48488),o=r(63008).iterator,s=Array.isArray;t.exports=function(t){return!(!i(t)||!s(t)&&!a(t)&&!n(t)&&\"function\"!=typeof t[o])}},23417:function(t,e,r){\"use strict\";var n,i=r(22834),a=r(91819),o=r(63008),s=r(85490),l=Object.defineProperty;n=t.exports=function(t){if(!(this instanceof n))throw new TypeError(\"Constructor requires 'new'\");t=String(t),s.call(this,t),l(this,\"__length__\",a(\"\",t.length))},i&&i(n,s),delete n.prototype.constructor,n.prototype=Object.create(s.prototype,{_next:a((function(){if(this.__list__)return this.__nextIndex__<this.__length__?this.__nextIndex__++:void this._unBind()})),_resolve:a((function(t){var e,r=this.__list__[t];return this.__nextIndex__===this.__length__?r:(e=r.charCodeAt(0))>=55296&&e<=56319?r+this.__list__[this.__nextIndex__++]:r}))}),l(n.prototype,o.toStringTag,a(\"c\",\"String Iterator\"))},82831:function(t,e,r){\"use strict\";var n=r(50567);t.exports=function(t){if(!n(t))throw new TypeError(t+\" is not iterable\");return t}},63008:function(t,e,r){\"use strict\";t.exports=r(25143)()?r(64725).Symbol:r(81905)},25143:function(t,e,r){\"use strict\";var n=r(64725),i={object:!0,symbol:!0};t.exports=function(){var t,e=n.Symbol;if(\"function\"!=typeof e)return!1;t=e(\"test symbol\");try{String(t)}catch(t){return!1}return!!i[typeof e.iterator]&&!!i[typeof e.toPrimitive]&&!!i[typeof e.toStringTag]}},41707:function(t){\"use strict\";t.exports=function(t){return!!t&&(\"symbol\"==typeof t||!!t.constructor&&\"Symbol\"===t.constructor.name&&\"Symbol\"===t[t.constructor.toStringTag])}},74009:function(t,e,r){\"use strict\";var n=r(91819),i=Object.create,a=Object.defineProperty,o=Object.prototype,s=i(null);t.exports=function(t){for(var e,r,i=0;s[t+(i||\"\")];)++i;return s[t+=i||\"\"]=!0,a(o,e=\"@@\"+t,n.gs(null,(function(t){r||(r=!0,a(this,e,n(t)),r=!1)}))),e}},40313:function(t,e,r){\"use strict\";var n=r(91819),i=r(64725).Symbol;t.exports=function(t){return Object.defineProperties(t,{hasInstance:n(\"\",i&&i.hasInstance||t(\"hasInstance\")),isConcatSpreadable:n(\"\",i&&i.isConcatSpreadable||t(\"isConcatSpreadable\")),iterator:n(\"\",i&&i.iterator||t(\"iterator\")),match:n(\"\",i&&i.match||t(\"match\")),replace:n(\"\",i&&i.replace||t(\"replace\")),search:n(\"\",i&&i.search||t(\"search\")),species:n(\"\",i&&i.species||t(\"species\")),split:n(\"\",i&&i.split||t(\"split\")),toPrimitive:n(\"\",i&&i.toPrimitive||t(\"toPrimitive\")),toStringTag:n(\"\",i&&i.toStringTag||t(\"toStringTag\")),unscopables:n(\"\",i&&i.unscopables||t(\"unscopables\"))})}},21290:function(t,e,r){\"use strict\";var n=r(91819),i=r(91765),a=Object.create(null);t.exports=function(t){return Object.defineProperties(t,{for:n((function(e){return a[e]?a[e]:a[e]=t(String(e))})),keyFor:n((function(t){var e;for(e in i(t),a)if(a[e]===t)return e}))})}},81905:function(t,e,r){\"use strict\";var n,i,a,o=r(91819),s=r(91765),l=r(64725).Symbol,c=r(74009),u=r(40313),h=r(21290),f=Object.create,p=Object.defineProperties,d=Object.defineProperty;if(\"function\"==typeof l)try{String(l()),a=!0}catch(t){}else l=null;i=function(t){if(this instanceof i)throw new TypeError(\"Symbol is not a constructor\");return n(t)},t.exports=n=function t(e){var r;if(this instanceof t)throw new TypeError(\"Symbol is not a constructor\");return a?l(e):(r=f(i.prototype),e=void 0===e?\"\":String(e),p(r,{__description__:o(\"\",e),__name__:o(\"\",c(e))}))},u(n),h(n),p(i.prototype,{constructor:o(n),toString:o(\"\",(function(){return this.__name__}))}),p(n.prototype,{toString:o((function(){return\"Symbol (\"+s(this).__description__+\")\"})),valueOf:o((function(){return s(this)}))}),d(n.prototype,n.toPrimitive,o(\"\",(function(){var t=s(this);return\"symbol\"==typeof t?t:t.toString()}))),d(n.prototype,n.toStringTag,o(\"c\",\"Symbol\")),d(i.prototype,n.toStringTag,o(\"c\",n.prototype[n.toStringTag])),d(i.prototype,n.toPrimitive,o(\"c\",n.prototype[n.toPrimitive]))},91765:function(t,e,r){\"use strict\";var n=r(41707);t.exports=function(t){if(!n(t))throw new TypeError(t+\" is not a symbol\");return t}},93103:function(t,e,r){\"use strict\";t.exports=r(22742)()?WeakMap:r(21780)},22742:function(t){\"use strict\";t.exports=function(){var t,e;if(\"function\"!=typeof WeakMap)return!1;try{t=new WeakMap([[e={},\"one\"],[{},\"two\"],[{},\"three\"]])}catch(t){return!1}return\"[object WeakMap]\"===String(t)&&\"function\"==typeof t.set&&t.set({},1)===t&&\"function\"==typeof t.delete&&\"function\"==typeof t.has&&\"one\"===t.get(e)}},81810:function(t){\"use strict\";t.exports=\"function\"==typeof WeakMap&&\"[object WeakMap]\"===Object.prototype.toString.call(new WeakMap)},21780:function(t,e,r){\"use strict\";var n,i=r(1974),a=r(22834),o=r(11004),s=r(69746),l=r(43497),c=r(91819),u=r(34494),h=r(58755),f=r(63008).toStringTag,p=r(81810),d=Array.isArray,m=Object.defineProperty,g=Object.prototype.hasOwnProperty,y=Object.getPrototypeOf;t.exports=n=function(){var t,e=arguments[0];if(!(this instanceof n))throw new TypeError(\"Constructor requires 'new'\");return t=p&&a&&WeakMap!==n?a(new WeakMap,y(this)):this,i(e)&&(d(e)||(e=u(e))),m(t,\"__weakMapData__\",c(\"c\",\"$weakMap$\"+l())),e?(h(e,(function(e){s(e),t.set(e[0],e[1])})),t):t},p&&(a&&a(n,WeakMap),n.prototype=Object.create(WeakMap.prototype,{constructor:c(n)})),Object.defineProperties(n.prototype,{delete:c((function(t){return!!g.call(o(t),this.__weakMapData__)&&(delete t[this.__weakMapData__],!0)})),get:c((function(t){if(g.call(o(t),this.__weakMapData__))return t[this.__weakMapData__]})),has:c((function(t){return g.call(o(t),this.__weakMapData__)})),set:c((function(t,e){return m(o(t),this.__weakMapData__,c(\"c\",e)),this})),toString:c((function(){return\"[object WeakMap]\"}))}),m(n.prototype,f,c(\"c\",\"WeakMap\"))},7683:function(t){\"use strict\";var e,r=\"object\"==typeof Reflect?Reflect:null,n=r&&\"function\"==typeof r.apply?r.apply:function(t,e,r){return Function.prototype.apply.call(t,e,r)};e=r&&\"function\"==typeof r.ownKeys?r.ownKeys:Object.getOwnPropertySymbols?function(t){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))}:function(t){return Object.getOwnPropertyNames(t)};var i=Number.isNaN||function(t){return t!=t};function a(){a.init.call(this)}t.exports=a,t.exports.once=function(t,e){return new Promise((function(r,n){function i(r){t.removeListener(e,a),n(r)}function a(){\"function\"==typeof t.removeListener&&t.removeListener(\"error\",i),r([].slice.call(arguments))}m(t,e,a,{once:!0}),\"error\"!==e&&function(t,e,r){\"function\"==typeof t.on&&m(t,\"error\",e,{once:!0})}(t,i)}))},a.EventEmitter=a,a.prototype._events=void 0,a.prototype._eventsCount=0,a.prototype._maxListeners=void 0;var o=10;function s(t){if(\"function\"!=typeof t)throw new TypeError('The \"listener\" argument must be of type Function. Received type '+typeof t)}function l(t){return void 0===t._maxListeners?a.defaultMaxListeners:t._maxListeners}function c(t,e,r,n){var i,a,o,c;if(s(r),void 0===(a=t._events)?(a=t._events=Object.create(null),t._eventsCount=0):(void 0!==a.newListener&&(t.emit(\"newListener\",e,r.listener?r.listener:r),a=t._events),o=a[e]),void 0===o)o=a[e]=r,++t._eventsCount;else if(\"function\"==typeof o?o=a[e]=n?[r,o]:[o,r]:n?o.unshift(r):o.push(r),(i=l(t))>0&&o.length>i&&!o.warned){o.warned=!0;var u=new Error(\"Possible EventEmitter memory leak detected. \"+o.length+\" \"+String(e)+\" listeners added. Use emitter.setMaxListeners() to increase limit\");u.name=\"MaxListenersExceededWarning\",u.emitter=t,u.type=e,u.count=o.length,c=u,console&&console.warn&&console.warn(c)}return t}function u(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function h(t,e,r){var n={fired:!1,wrapFn:void 0,target:t,type:e,listener:r},i=u.bind(n);return i.listener=r,n.wrapFn=i,i}function f(t,e,r){var n=t._events;if(void 0===n)return[];var i=n[e];return void 0===i?[]:\"function\"==typeof i?r?[i.listener||i]:[i]:r?function(t){for(var e=new Array(t.length),r=0;r<e.length;++r)e[r]=t[r].listener||t[r];return e}(i):d(i,i.length)}function p(t){var e=this._events;if(void 0!==e){var r=e[t];if(\"function\"==typeof r)return 1;if(void 0!==r)return r.length}return 0}function d(t,e){for(var r=new Array(e),n=0;n<e;++n)r[n]=t[n];return r}function m(t,e,r,n){if(\"function\"==typeof t.on)n.once?t.once(e,r):t.on(e,r);else{if(\"function\"!=typeof t.addEventListener)throw new TypeError('The \"emitter\" argument must be of type EventEmitter. Received type '+typeof t);t.addEventListener(e,(function i(a){n.once&&t.removeEventListener(e,i),r(a)}))}}Object.defineProperty(a,\"defaultMaxListeners\",{enumerable:!0,get:function(){return o},set:function(t){if(\"number\"!=typeof t||t<0||i(t))throw new RangeError('The value of \"defaultMaxListeners\" is out of range. It must be a non-negative number. Received '+t+\".\");o=t}}),a.init=function(){void 0!==this._events&&this._events!==Object.getPrototypeOf(this)._events||(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},a.prototype.setMaxListeners=function(t){if(\"number\"!=typeof t||t<0||i(t))throw new RangeError('The value of \"n\" is out of range. It must be a non-negative number. Received '+t+\".\");return this._maxListeners=t,this},a.prototype.getMaxListeners=function(){return l(this)},a.prototype.emit=function(t){for(var e=[],r=1;r<arguments.length;r++)e.push(arguments[r]);var i=\"error\"===t,a=this._events;if(void 0!==a)i=i&&void 0===a.error;else if(!i)return!1;if(i){var o;if(e.length>0&&(o=e[0]),o instanceof Error)throw o;var s=new Error(\"Unhandled error.\"+(o?\" (\"+o.message+\")\":\"\"));throw s.context=o,s}var l=a[t];if(void 0===l)return!1;if(\"function\"==typeof l)n(l,this,e);else{var c=l.length,u=d(l,c);for(r=0;r<c;++r)n(u[r],this,e)}return!0},a.prototype.addListener=function(t,e){return c(this,t,e,!1)},a.prototype.on=a.prototype.addListener,a.prototype.prependListener=function(t,e){return c(this,t,e,!0)},a.prototype.once=function(t,e){return s(e),this.on(t,h(this,t,e)),this},a.prototype.prependOnceListener=function(t,e){return s(e),this.prependListener(t,h(this,t,e)),this},a.prototype.removeListener=function(t,e){var r,n,i,a,o;if(s(e),void 0===(n=this._events))return this;if(void 0===(r=n[t]))return this;if(r===e||r.listener===e)0==--this._eventsCount?this._events=Object.create(null):(delete n[t],n.removeListener&&this.emit(\"removeListener\",t,r.listener||e));else if(\"function\"!=typeof r){for(i=-1,a=r.length-1;a>=0;a--)if(r[a]===e||r[a].listener===e){o=r[a].listener,i=a;break}if(i<0)return this;0===i?r.shift():function(t,e){for(;e+1<t.length;e++)t[e]=t[e+1];t.pop()}(r,i),1===r.length&&(n[t]=r[0]),void 0!==n.removeListener&&this.emit(\"removeListener\",t,o||e)}return this},a.prototype.off=a.prototype.removeListener,a.prototype.removeAllListeners=function(t){var e,r,n;if(void 0===(r=this._events))return this;if(void 0===r.removeListener)return 0===arguments.length?(this._events=Object.create(null),this._eventsCount=0):void 0!==r[t]&&(0==--this._eventsCount?this._events=Object.create(null):delete r[t]),this;if(0===arguments.length){var i,a=Object.keys(r);for(n=0;n<a.length;++n)\"removeListener\"!==(i=a[n])&&this.removeAllListeners(i);return this.removeAllListeners(\"removeListener\"),this._events=Object.create(null),this._eventsCount=0,this}if(\"function\"==typeof(e=r[t]))this.removeListener(t,e);else if(void 0!==e)for(n=e.length-1;n>=0;n--)this.removeListener(t,e[n]);return this},a.prototype.listeners=function(t){return f(this,t,!0)},a.prototype.rawListeners=function(t){return f(this,t,!1)},a.listenerCount=function(t,e){return\"function\"==typeof t.listenerCount?t.listenerCount(e):p.call(t,e)},a.prototype.listenerCount=p,a.prototype.eventNames=function(){return this._eventsCount>0?e(this._events):[]}},77083:function(t){var e=function(){if(\"object\"==typeof self&&self)return self;if(\"object\"==typeof window&&window)return window;throw new Error(\"Unable to resolve global `this`\")};t.exports=function(){if(this)return this;try{Object.defineProperty(Object.prototype,\"__global__\",{get:function(){return this},configurable:!0})}catch(t){return e()}try{return __global__||e()}finally{delete Object.prototype.__global__}}()},64725:function(t,e,r){\"use strict\";t.exports=r(17804)()?globalThis:r(77083)},17804:function(t){\"use strict\";t.exports=function(){return\"object\"==typeof globalThis&&!!globalThis&&globalThis.Array===Array}},10721:function(t,e,r){\"use strict\";var n=r(9914);t.exports=function(t){var e=typeof t;if(\"string\"===e){var r=t;if(0==(t=+t)&&n(r))return!1}else if(\"number\"!==e)return!1;return t-t<1}},83473:function(t,e,r){var n=r(10275);t.exports=function(t,e,r){if(!t)throw new TypeError(\"must specify data as first parameter\");if(r=0|+(r||0),Array.isArray(t)&&t[0]&&\"number\"==typeof t[0][0]){var i,a,o,s,l=t[0].length,c=t.length*l;e&&\"string\"!=typeof e||(e=new(n(e||\"float32\"))(c+r));var u=e.length-r;if(c!==u)throw new Error(\"source length \"+c+\" (\"+l+\"x\"+t.length+\") does not match destination length \"+u);for(i=0,o=r;i<t.length;i++)for(a=0;a<l;a++)e[o++]=null===t[i][a]?NaN:t[i][a]}else if(e&&\"string\"!=typeof e)e.set(t,r);else{var h=n(e||\"float32\");if(Array.isArray(t)||\"array\"===e)for(i=0,o=r,s=(e=new h(t.length+r)).length;o<s;o++,i++)e[o]=null===t[i]?NaN:t[i];else 0===r?e=new h(t):(e=new h(t.length+r)).set(t,r)}return e}},68950:function(t,e,r){\"use strict\";var n=r(38211),i=[32,126];t.exports=function(t){var e=(t=t||{}).shape?t.shape:t.canvas?[t.canvas.width,t.canvas.height]:[512,512],r=t.canvas||document.createElement(\"canvas\"),a=t.font,o=\"number\"==typeof t.step?[t.step,t.step]:t.step||[32,32],s=t.chars||i;if(a&&\"string\"!=typeof a&&(a=n(a)),Array.isArray(s)){if(2===s.length&&\"number\"==typeof s[0]&&\"number\"==typeof s[1]){for(var l=[],c=s[0],u=0;c<=s[1];c++)l[u++]=String.fromCharCode(c);s=l}}else s=String(s).split(\"\");e=e.slice(),r.width=e[0],r.height=e[1];var h=r.getContext(\"2d\");h.fillStyle=\"#000\",h.fillRect(0,0,r.width,r.height),h.font=a,h.textAlign=\"center\",h.textBaseline=\"middle\",h.fillStyle=\"#fff\";var f=o[0]/2,p=o[1]/2;for(c=0;c<s.length;c++)h.fillText(s[c],f,p),(f+=o[0])>e[0]-o[0]/2&&(f=o[0]/2,p+=o[1]);return r}},12673:function(t){\"use strict\";function e(t,a){a||(a={}),(\"string\"==typeof t||Array.isArray(t))&&(a.family=t);var o=Array.isArray(a.family)?a.family.join(\", \"):a.family;if(!o)throw Error(\"`family` must be defined\");var s=a.size||a.fontSize||a.em||48,l=a.weight||a.fontWeight||\"\",c=(t=[a.style||a.fontStyle||\"\",l,s].join(\" \")+\"px \"+o,a.origin||\"top\");if(e.cache[o]&&s<=e.cache[o].em)return r(e.cache[o],c);var u=a.canvas||e.canvas,h=u.getContext(\"2d\"),f={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\"},p=Math.ceil(1.5*s);u.height=p,u.width=.5*p,h.font=t;var d=\"H\",m={top:0};h.clearRect(0,0,p,p),h.textBaseline=\"top\",h.fillStyle=\"black\",h.fillText(d,0,0);var g=n(h.getImageData(0,0,p,p));h.clearRect(0,0,p,p),h.textBaseline=\"bottom\",h.fillText(d,0,p);var y=n(h.getImageData(0,0,p,p));m.lineHeight=m.bottom=p-y+g,h.clearRect(0,0,p,p),h.textBaseline=\"alphabetic\",h.fillText(d,0,p);var v=p-n(h.getImageData(0,0,p,p))-1+g;m.baseline=m.alphabetic=v,h.clearRect(0,0,p,p),h.textBaseline=\"middle\",h.fillText(d,0,.5*p);var x=n(h.getImageData(0,0,p,p));m.median=m.middle=p-x-1+g-.5*p,h.clearRect(0,0,p,p),h.textBaseline=\"hanging\",h.fillText(d,0,.5*p);var _=n(h.getImageData(0,0,p,p));m.hanging=p-_-1+g-.5*p,h.clearRect(0,0,p,p),h.textBaseline=\"ideographic\",h.fillText(d,0,p);var b=n(h.getImageData(0,0,p,p));if(m.ideographic=p-b-1+g,f.upper&&(h.clearRect(0,0,p,p),h.textBaseline=\"top\",h.fillText(f.upper,0,0),m.upper=n(h.getImageData(0,0,p,p)),m.capHeight=m.baseline-m.upper),f.lower&&(h.clearRect(0,0,p,p),h.textBaseline=\"top\",h.fillText(f.lower,0,0),m.lower=n(h.getImageData(0,0,p,p)),m.xHeight=m.baseline-m.lower),f.tittle&&(h.clearRect(0,0,p,p),h.textBaseline=\"top\",h.fillText(f.tittle,0,0),m.tittle=n(h.getImageData(0,0,p,p))),f.ascent&&(h.clearRect(0,0,p,p),h.textBaseline=\"top\",h.fillText(f.ascent,0,0),m.ascent=n(h.getImageData(0,0,p,p))),f.descent&&(h.clearRect(0,0,p,p),h.textBaseline=\"top\",h.fillText(f.descent,0,0),m.descent=i(h.getImageData(0,0,p,p))),f.overshoot){h.clearRect(0,0,p,p),h.textBaseline=\"top\",h.fillText(f.overshoot,0,0);var w=i(h.getImageData(0,0,p,p));m.overshoot=w-v}for(var T in m)m[T]/=s;return m.em=s,e.cache[o]=m,r(m,c)}function r(t,e){var r={};for(var n in\"string\"==typeof e&&(e=t[e]),t)\"em\"!==n&&(r[n]=t[n]-e);return r}function n(t){for(var e=t.height,r=t.data,n=3;n<r.length;n+=4)if(0!==r[n])return Math.floor(.25*(n-3)/e)}function i(t){for(var e=t.height,r=t.data,n=r.length-1;n>0;n-=4)if(0!==r[n])return Math.floor(.25*(n-3)/e)}t.exports=e,e.canvas=document.createElement(\"canvas\"),e.cache={}},61262:function(t,e,r){\"use strict\";var n=r(82756),i=Object.prototype.toString,a=Object.prototype.hasOwnProperty;t.exports=function(t,e,r){if(!n(e))throw new TypeError(\"iterator must be a function\");var o;arguments.length>=3&&(o=r),\"[object Array]\"===i.call(t)?function(t,e,r){for(var n=0,i=t.length;n<i;n++)a.call(t,n)&&(null==r?e(t[n],n,t):e.call(r,t[n],n,t))}(t,e,o):\"string\"==typeof t?function(t,e,r){for(var n=0,i=t.length;n<i;n++)null==r?e(t.charAt(n),n,t):e.call(r,t.charAt(n),n,t)}(t,e,o):function(t,e,r){for(var n in t)a.call(t,n)&&(null==r?e(t[n],n,t):e.call(r,t[n],n,t))}(t,e,o)}},31917:function(t){\"use strict\";var e=Object.prototype.toString,r=Math.max,n=function(t,e){for(var r=[],n=0;n<t.length;n+=1)r[n]=t[n];for(var i=0;i<e.length;i+=1)r[i+t.length]=e[i];return r};t.exports=function(t){var i=this;if(\"function\"!=typeof i||\"[object Function]\"!==e.apply(i))throw new TypeError(\"Function.prototype.bind called on incompatible \"+i);for(var a,o=function(t,e){for(var r=[],n=1,i=0;n<t.length;n+=1,i+=1)r[i]=t[n];return r}(arguments),s=r(0,i.length-o.length),l=[],c=0;c<s;c++)l[c]=\"$\"+c;if(a=Function(\"binder\",\"return function (\"+function(t,e){for(var r=\"\",n=0;n<t.length;n+=1)r+=t[n],n+1<t.length&&(r+=\",\");return r}(l)+\"){ return binder.apply(this,arguments); }\")((function(){if(this instanceof a){var e=i.apply(this,n(o,arguments));return Object(e)===e?e:this}return i.apply(t,n(o,arguments))})),i.prototype){var u=function(){};u.prototype=i.prototype,a.prototype=new u,u.prototype=null}return a}},87547:function(t,e,r){\"use strict\";var n=r(31917);t.exports=Function.prototype.bind||n},72880:function(t){t.exports=function(t,e){if(\"string\"!=typeof t)throw new TypeError(\"must specify type string\");if(e=e||{},\"undefined\"==typeof document&&!e.canvas)return null;var r=e.canvas||document.createElement(\"canvas\");\"number\"==typeof e.width&&(r.width=e.width),\"number\"==typeof e.height&&(r.height=e.height);var n,i=e;try{var a=[t];0===t.indexOf(\"webgl\")&&a.push(\"experimental-\"+t);for(var o=0;o<a.length;o++)if(n=r.getContext(a[o],i))return n}catch(t){n=null}return n||null}},71129:function(t,e,r){\"use strict\";var n,i=r(77731),a=r(35465),o=r(30582),s=r(50294),l=r(98800),c=r(48631),u=r(33149),h=Function,f=function(t){try{return h('\"use strict\"; return ('+t+\").constructor;\")()}catch(t){}},p=Object.getOwnPropertyDescriptor;if(p)try{p({},\"\")}catch(t){p=null}var d=function(){throw new c},m=p?function(){try{return d}catch(t){try{return p(arguments,\"callee\").get}catch(t){return d}}}():d,g=r(8771)(),y=r(58436)(),v=Object.getPrototypeOf||(y?function(t){return t.__proto__}:null),x={},_=\"undefined\"!=typeof Uint8Array&&v?v(Uint8Array):n,b={__proto__:null,\"%AggregateError%\":\"undefined\"==typeof AggregateError?n:AggregateError,\"%Array%\":Array,\"%ArrayBuffer%\":\"undefined\"==typeof ArrayBuffer?n:ArrayBuffer,\"%ArrayIteratorPrototype%\":g&&v?v([][Symbol.iterator]()):n,\"%AsyncFromSyncIteratorPrototype%\":n,\"%AsyncFunction%\":x,\"%AsyncGenerator%\":x,\"%AsyncGeneratorFunction%\":x,\"%AsyncIteratorPrototype%\":x,\"%Atomics%\":\"undefined\"==typeof Atomics?n:Atomics,\"%BigInt%\":\"undefined\"==typeof BigInt?n:BigInt,\"%BigInt64Array%\":\"undefined\"==typeof BigInt64Array?n:BigInt64Array,\"%BigUint64Array%\":\"undefined\"==typeof BigUint64Array?n:BigUint64Array,\"%Boolean%\":Boolean,\"%DataView%\":\"undefined\"==typeof DataView?n:DataView,\"%Date%\":Date,\"%decodeURI%\":decodeURI,\"%decodeURIComponent%\":decodeURIComponent,\"%encodeURI%\":encodeURI,\"%encodeURIComponent%\":encodeURIComponent,\"%Error%\":i,\"%eval%\":eval,\"%EvalError%\":a,\"%Float32Array%\":\"undefined\"==typeof Float32Array?n:Float32Array,\"%Float64Array%\":\"undefined\"==typeof Float64Array?n:Float64Array,\"%FinalizationRegistry%\":\"undefined\"==typeof FinalizationRegistry?n:FinalizationRegistry,\"%Function%\":h,\"%GeneratorFunction%\":x,\"%Int8Array%\":\"undefined\"==typeof Int8Array?n:Int8Array,\"%Int16Array%\":\"undefined\"==typeof Int16Array?n:Int16Array,\"%Int32Array%\":\"undefined\"==typeof Int32Array?n:Int32Array,\"%isFinite%\":isFinite,\"%isNaN%\":isNaN,\"%IteratorPrototype%\":g&&v?v(v([][Symbol.iterator]())):n,\"%JSON%\":\"object\"==typeof JSON?JSON:n,\"%Map%\":\"undefined\"==typeof Map?n:Map,\"%MapIteratorPrototype%\":\"undefined\"!=typeof Map&&g&&v?v((new Map)[Symbol.iterator]()):n,\"%Math%\":Math,\"%Number%\":Number,\"%Object%\":Object,\"%parseFloat%\":parseFloat,\"%parseInt%\":parseInt,\"%Promise%\":\"undefined\"==typeof Promise?n:Promise,\"%Proxy%\":\"undefined\"==typeof Proxy?n:Proxy,\"%RangeError%\":o,\"%ReferenceError%\":s,\"%Reflect%\":\"undefined\"==typeof Reflect?n:Reflect,\"%RegExp%\":RegExp,\"%Set%\":\"undefined\"==typeof Set?n:Set,\"%SetIteratorPrototype%\":\"undefined\"!=typeof Set&&g&&v?v((new Set)[Symbol.iterator]()):n,\"%SharedArrayBuffer%\":\"undefined\"==typeof SharedArrayBuffer?n:SharedArrayBuffer,\"%String%\":String,\"%StringIteratorPrototype%\":g&&v?v(\"\"[Symbol.iterator]()):n,\"%Symbol%\":g?Symbol:n,\"%SyntaxError%\":l,\"%ThrowTypeError%\":m,\"%TypedArray%\":_,\"%TypeError%\":c,\"%Uint8Array%\":\"undefined\"==typeof Uint8Array?n:Uint8Array,\"%Uint8ClampedArray%\":\"undefined\"==typeof Uint8ClampedArray?n:Uint8ClampedArray,\"%Uint16Array%\":\"undefined\"==typeof Uint16Array?n:Uint16Array,\"%Uint32Array%\":\"undefined\"==typeof Uint32Array?n:Uint32Array,\"%URIError%\":u,\"%WeakMap%\":\"undefined\"==typeof WeakMap?n:WeakMap,\"%WeakRef%\":\"undefined\"==typeof WeakRef?n:WeakRef,\"%WeakSet%\":\"undefined\"==typeof WeakSet?n:WeakSet};if(v)try{null.error}catch(t){var w=v(v(t));b[\"%Error.prototype%\"]=w}var T=function t(e){var r;if(\"%AsyncFunction%\"===e)r=f(\"async function () {}\");else if(\"%GeneratorFunction%\"===e)r=f(\"function* () {}\");else if(\"%AsyncGeneratorFunction%\"===e)r=f(\"async function* () {}\");else if(\"%AsyncGenerator%\"===e){var n=t(\"%AsyncGeneratorFunction%\");n&&(r=n.prototype)}else if(\"%AsyncIteratorPrototype%\"===e){var i=t(\"%AsyncGenerator%\");i&&v&&(r=v(i.prototype))}return b[e]=r,r},k={__proto__:null,\"%ArrayBufferPrototype%\":[\"ArrayBuffer\",\"prototype\"],\"%ArrayPrototype%\":[\"Array\",\"prototype\"],\"%ArrayProto_entries%\":[\"Array\",\"prototype\",\"entries\"],\"%ArrayProto_forEach%\":[\"Array\",\"prototype\",\"forEach\"],\"%ArrayProto_keys%\":[\"Array\",\"prototype\",\"keys\"],\"%ArrayProto_values%\":[\"Array\",\"prototype\",\"values\"],\"%AsyncFunctionPrototype%\":[\"AsyncFunction\",\"prototype\"],\"%AsyncGenerator%\":[\"AsyncGeneratorFunction\",\"prototype\"],\"%AsyncGeneratorPrototype%\":[\"AsyncGeneratorFunction\",\"prototype\",\"prototype\"],\"%BooleanPrototype%\":[\"Boolean\",\"prototype\"],\"%DataViewPrototype%\":[\"DataView\",\"prototype\"],\"%DatePrototype%\":[\"Date\",\"prototype\"],\"%ErrorPrototype%\":[\"Error\",\"prototype\"],\"%EvalErrorPrototype%\":[\"EvalError\",\"prototype\"],\"%Float32ArrayPrototype%\":[\"Float32Array\",\"prototype\"],\"%Float64ArrayPrototype%\":[\"Float64Array\",\"prototype\"],\"%FunctionPrototype%\":[\"Function\",\"prototype\"],\"%Generator%\":[\"GeneratorFunction\",\"prototype\"],\"%GeneratorPrototype%\":[\"GeneratorFunction\",\"prototype\",\"prototype\"],\"%Int8ArrayPrototype%\":[\"Int8Array\",\"prototype\"],\"%Int16ArrayPrototype%\":[\"Int16Array\",\"prototype\"],\"%Int32ArrayPrototype%\":[\"Int32Array\",\"prototype\"],\"%JSONParse%\":[\"JSON\",\"parse\"],\"%JSONStringify%\":[\"JSON\",\"stringify\"],\"%MapPrototype%\":[\"Map\",\"prototype\"],\"%NumberPrototype%\":[\"Number\",\"prototype\"],\"%ObjectPrototype%\":[\"Object\",\"prototype\"],\"%ObjProto_toString%\":[\"Object\",\"prototype\",\"toString\"],\"%ObjProto_valueOf%\":[\"Object\",\"prototype\",\"valueOf\"],\"%PromisePrototype%\":[\"Promise\",\"prototype\"],\"%PromiseProto_then%\":[\"Promise\",\"prototype\",\"then\"],\"%Promise_all%\":[\"Promise\",\"all\"],\"%Promise_reject%\":[\"Promise\",\"reject\"],\"%Promise_resolve%\":[\"Promise\",\"resolve\"],\"%RangeErrorPrototype%\":[\"RangeError\",\"prototype\"],\"%ReferenceErrorPrototype%\":[\"ReferenceError\",\"prototype\"],\"%RegExpPrototype%\":[\"RegExp\",\"prototype\"],\"%SetPrototype%\":[\"Set\",\"prototype\"],\"%SharedArrayBufferPrototype%\":[\"SharedArrayBuffer\",\"prototype\"],\"%StringPrototype%\":[\"String\",\"prototype\"],\"%SymbolPrototype%\":[\"Symbol\",\"prototype\"],\"%SyntaxErrorPrototype%\":[\"SyntaxError\",\"prototype\"],\"%TypedArrayPrototype%\":[\"TypedArray\",\"prototype\"],\"%TypeErrorPrototype%\":[\"TypeError\",\"prototype\"],\"%Uint8ArrayPrototype%\":[\"Uint8Array\",\"prototype\"],\"%Uint8ClampedArrayPrototype%\":[\"Uint8ClampedArray\",\"prototype\"],\"%Uint16ArrayPrototype%\":[\"Uint16Array\",\"prototype\"],\"%Uint32ArrayPrototype%\":[\"Uint32Array\",\"prototype\"],\"%URIErrorPrototype%\":[\"URIError\",\"prototype\"],\"%WeakMapPrototype%\":[\"WeakMap\",\"prototype\"],\"%WeakSetPrototype%\":[\"WeakSet\",\"prototype\"]},A=r(87547),M=r(80753),S=A.call(Function.call,Array.prototype.concat),E=A.call(Function.apply,Array.prototype.splice),C=A.call(Function.call,String.prototype.replace),L=A.call(Function.call,String.prototype.slice),I=A.call(Function.call,RegExp.prototype.exec),P=/[^%.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|%$))/g,z=/\\\\(\\\\)?/g,O=function(t,e){var r,n=t;if(M(k,n)&&(n=\"%\"+(r=k[n])[0]+\"%\"),M(b,n)){var i=b[n];if(i===x&&(i=T(n)),void 0===i&&!e)throw new c(\"intrinsic \"+t+\" exists, but is not available. Please file an issue!\");return{alias:r,name:n,value:i}}throw new l(\"intrinsic \"+t+\" does not exist!\")};t.exports=function(t,e){if(\"string\"!=typeof t||0===t.length)throw new c(\"intrinsic name must be a non-empty string\");if(arguments.length>1&&\"boolean\"!=typeof e)throw new c('\"allowMissing\" argument must be a boolean');if(null===I(/^%?[^%]*%?$/,t))throw new l(\"`%` may not be present anywhere but at the beginning and end of the intrinsic name\");var r=function(t){var e=L(t,0,1),r=L(t,-1);if(\"%\"===e&&\"%\"!==r)throw new l(\"invalid intrinsic syntax, expected closing `%`\");if(\"%\"===r&&\"%\"!==e)throw new l(\"invalid intrinsic syntax, expected opening `%`\");var n=[];return C(t,P,(function(t,e,r,i){n[n.length]=r?C(i,z,\"$1\"):e||t})),n}(t),n=r.length>0?r[0]:\"\",i=O(\"%\"+n+\"%\",e),a=i.name,o=i.value,s=!1,u=i.alias;u&&(n=u[0],E(r,S([0,1],u)));for(var h=1,f=!0;h<r.length;h+=1){var d=r[h],m=L(d,0,1),g=L(d,-1);if(('\"'===m||\"'\"===m||\"`\"===m||'\"'===g||\"'\"===g||\"`\"===g)&&m!==g)throw new l(\"property names with quotes must have matching quotes\");if(\"constructor\"!==d&&f||(s=!0),M(b,a=\"%\"+(n+=\".\"+d)+\"%\"))o=b[a];else if(null!=o){if(!(d in o)){if(!e)throw new c(\"base intrinsic for \"+t+\" exists, but the property is not available.\");return}if(p&&h+1>=r.length){var y=p(o,d);o=(f=!!y)&&\"get\"in y&&!(\"originalValue\"in y.get)?y.get:o[d]}else f=M(o,d),o=o[d];f&&!s&&(b[a]=o)}}return o}},84840:function(t){t.exports=function(t,e){var r=e[0],n=e[1],i=e[2],a=e[3],o=e[4],s=e[5],l=e[6],c=e[7],u=e[8],h=e[9],f=e[10],p=e[11],d=e[12],m=e[13],g=e[14],y=e[15];return t[0]=s*(f*y-p*g)-h*(l*y-c*g)+m*(l*p-c*f),t[1]=-(n*(f*y-p*g)-h*(i*y-a*g)+m*(i*p-a*f)),t[2]=n*(l*y-c*g)-s*(i*y-a*g)+m*(i*c-a*l),t[3]=-(n*(l*p-c*f)-s*(i*p-a*f)+h*(i*c-a*l)),t[4]=-(o*(f*y-p*g)-u*(l*y-c*g)+d*(l*p-c*f)),t[5]=r*(f*y-p*g)-u*(i*y-a*g)+d*(i*p-a*f),t[6]=-(r*(l*y-c*g)-o*(i*y-a*g)+d*(i*c-a*l)),t[7]=r*(l*p-c*f)-o*(i*p-a*f)+u*(i*c-a*l),t[8]=o*(h*y-p*m)-u*(s*y-c*m)+d*(s*p-c*h),t[9]=-(r*(h*y-p*m)-u*(n*y-a*m)+d*(n*p-a*h)),t[10]=r*(s*y-c*m)-o*(n*y-a*m)+d*(n*c-a*s),t[11]=-(r*(s*p-c*h)-o*(n*p-a*h)+u*(n*c-a*s)),t[12]=-(o*(h*g-f*m)-u*(s*g-l*m)+d*(s*f-l*h)),t[13]=r*(h*g-f*m)-u*(n*g-i*m)+d*(n*f-i*h),t[14]=-(r*(s*g-l*m)-o*(n*g-i*m)+d*(n*l-i*s)),t[15]=r*(s*f-l*h)-o*(n*f-i*h)+u*(n*l-i*s),t}},99698:function(t){t.exports=function(t){var e=new Float32Array(16);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}},57938:function(t){t.exports=function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}},87519:function(t){t.exports=function(){var t=new Float32Array(16);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}},6900:function(t){t.exports=function(t){var e=t[0],r=t[1],n=t[2],i=t[3],a=t[4],o=t[5],s=t[6],l=t[7],c=t[8],u=t[9],h=t[10],f=t[11],p=t[12],d=t[13],m=t[14],g=t[15];return(e*o-r*a)*(h*g-f*m)-(e*s-n*a)*(u*g-f*d)+(e*l-i*a)*(u*m-h*d)+(r*s-n*o)*(c*g-f*p)-(r*l-i*o)*(c*m-h*p)+(n*l-i*s)*(c*d-u*p)}},36472:function(t){t.exports=function(t,e){var r=e[0],n=e[1],i=e[2],a=e[3],o=r+r,s=n+n,l=i+i,c=r*o,u=n*o,h=n*s,f=i*o,p=i*s,d=i*l,m=a*o,g=a*s,y=a*l;return t[0]=1-h-d,t[1]=u+y,t[2]=f-g,t[3]=0,t[4]=u-y,t[5]=1-c-d,t[6]=p+m,t[7]=0,t[8]=f+g,t[9]=p-m,t[10]=1-c-h,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}},43061:function(t){t.exports=function(t,e,r){var n,i,a,o=r[0],s=r[1],l=r[2],c=Math.sqrt(o*o+s*s+l*l);return Math.abs(c)<1e-6?null:(o*=c=1/c,s*=c,l*=c,n=Math.sin(e),a=1-(i=Math.cos(e)),t[0]=o*o*a+i,t[1]=s*o*a+l*n,t[2]=l*o*a-s*n,t[3]=0,t[4]=o*s*a-l*n,t[5]=s*s*a+i,t[6]=l*s*a+o*n,t[7]=0,t[8]=o*l*a+s*n,t[9]=s*l*a-o*n,t[10]=l*l*a+i,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t)}},33606:function(t){t.exports=function(t,e,r){var n=e[0],i=e[1],a=e[2],o=e[3],s=n+n,l=i+i,c=a+a,u=n*s,h=n*l,f=n*c,p=i*l,d=i*c,m=a*c,g=o*s,y=o*l,v=o*c;return t[0]=1-(p+m),t[1]=h+v,t[2]=f-y,t[3]=0,t[4]=h-v,t[5]=1-(u+m),t[6]=d+g,t[7]=0,t[8]=f+y,t[9]=d-g,t[10]=1-(u+p),t[11]=0,t[12]=r[0],t[13]=r[1],t[14]=r[2],t[15]=1,t}},98698:function(t){t.exports=function(t,e){return t[0]=e[0],t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=e[1],t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=e[2],t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}},6924:function(t){t.exports=function(t,e){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=e[0],t[13]=e[1],t[14]=e[2],t[15]=1,t}},81181:function(t){t.exports=function(t,e){var r=Math.sin(e),n=Math.cos(e);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=n,t[6]=r,t[7]=0,t[8]=0,t[9]=-r,t[10]=n,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}},95258:function(t){t.exports=function(t,e){var r=Math.sin(e),n=Math.cos(e);return t[0]=n,t[1]=0,t[2]=-r,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=r,t[9]=0,t[10]=n,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}},94815:function(t){t.exports=function(t,e){var r=Math.sin(e),n=Math.cos(e);return t[0]=n,t[1]=r,t[2]=0,t[3]=0,t[4]=-r,t[5]=n,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}},87301:function(t){t.exports=function(t,e,r,n,i,a,o){var s=1/(r-e),l=1/(i-n),c=1/(a-o);return t[0]=2*a*s,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=2*a*l,t[6]=0,t[7]=0,t[8]=(r+e)*s,t[9]=(i+n)*l,t[10]=(o+a)*c,t[11]=-1,t[12]=0,t[13]=0,t[14]=o*a*2*c,t[15]=0,t}},87193:function(t){t.exports=function(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}},11191:function(t,e,r){t.exports={create:r(87519),clone:r(99698),copy:r(57938),identity:r(87193),transpose:r(10256),invert:r(96559),adjoint:r(84840),determinant:r(6900),multiply:r(14787),translate:r(4165),scale:r(8697),rotate:r(32416),rotateX:r(81066),rotateY:r(54201),rotateZ:r(33920),fromRotation:r(43061),fromRotationTranslation:r(33606),fromScaling:r(98698),fromTranslation:r(6924),fromXRotation:r(81181),fromYRotation:r(95258),fromZRotation:r(94815),fromQuat:r(36472),frustum:r(87301),perspective:r(5313),perspectiveFromFieldOfView:r(22253),ortho:r(4633),lookAt:r(26645),str:r(66992)}},96559:function(t){t.exports=function(t,e){var r=e[0],n=e[1],i=e[2],a=e[3],o=e[4],s=e[5],l=e[6],c=e[7],u=e[8],h=e[9],f=e[10],p=e[11],d=e[12],m=e[13],g=e[14],y=e[15],v=r*s-n*o,x=r*l-i*o,_=r*c-a*o,b=n*l-i*s,w=n*c-a*s,T=i*c-a*l,k=u*m-h*d,A=u*g-f*d,M=u*y-p*d,S=h*g-f*m,E=h*y-p*m,C=f*y-p*g,L=v*C-x*E+_*S+b*M-w*A+T*k;return L?(L=1/L,t[0]=(s*C-l*E+c*S)*L,t[1]=(i*E-n*C-a*S)*L,t[2]=(m*T-g*w+y*b)*L,t[3]=(f*w-h*T-p*b)*L,t[4]=(l*M-o*C-c*A)*L,t[5]=(r*C-i*M+a*A)*L,t[6]=(g*_-d*T-y*x)*L,t[7]=(u*T-f*_+p*x)*L,t[8]=(o*E-s*M+c*k)*L,t[9]=(n*M-r*E-a*k)*L,t[10]=(d*w-m*_+y*v)*L,t[11]=(h*_-u*w-p*v)*L,t[12]=(s*A-o*S-l*k)*L,t[13]=(r*S-n*A+i*k)*L,t[14]=(m*x-d*b-g*v)*L,t[15]=(u*b-h*x+f*v)*L,t):null}},26645:function(t,e,r){var n=r(87193);t.exports=function(t,e,r,i){var a,o,s,l,c,u,h,f,p,d,m=e[0],g=e[1],y=e[2],v=i[0],x=i[1],_=i[2],b=r[0],w=r[1],T=r[2];return Math.abs(m-b)<1e-6&&Math.abs(g-w)<1e-6&&Math.abs(y-T)<1e-6?n(t):(h=m-b,f=g-w,p=y-T,a=x*(p*=d=1/Math.sqrt(h*h+f*f+p*p))-_*(f*=d),o=_*(h*=d)-v*p,s=v*f-x*h,(d=Math.sqrt(a*a+o*o+s*s))?(a*=d=1/d,o*=d,s*=d):(a=0,o=0,s=0),l=f*s-p*o,c=p*a-h*s,u=h*o-f*a,(d=Math.sqrt(l*l+c*c+u*u))?(l*=d=1/d,c*=d,u*=d):(l=0,c=0,u=0),t[0]=a,t[1]=l,t[2]=h,t[3]=0,t[4]=o,t[5]=c,t[6]=f,t[7]=0,t[8]=s,t[9]=u,t[10]=p,t[11]=0,t[12]=-(a*m+o*g+s*y),t[13]=-(l*m+c*g+u*y),t[14]=-(h*m+f*g+p*y),t[15]=1,t)}},14787:function(t){t.exports=function(t,e,r){var n=e[0],i=e[1],a=e[2],o=e[3],s=e[4],l=e[5],c=e[6],u=e[7],h=e[8],f=e[9],p=e[10],d=e[11],m=e[12],g=e[13],y=e[14],v=e[15],x=r[0],_=r[1],b=r[2],w=r[3];return t[0]=x*n+_*s+b*h+w*m,t[1]=x*i+_*l+b*f+w*g,t[2]=x*a+_*c+b*p+w*y,t[3]=x*o+_*u+b*d+w*v,x=r[4],_=r[5],b=r[6],w=r[7],t[4]=x*n+_*s+b*h+w*m,t[5]=x*i+_*l+b*f+w*g,t[6]=x*a+_*c+b*p+w*y,t[7]=x*o+_*u+b*d+w*v,x=r[8],_=r[9],b=r[10],w=r[11],t[8]=x*n+_*s+b*h+w*m,t[9]=x*i+_*l+b*f+w*g,t[10]=x*a+_*c+b*p+w*y,t[11]=x*o+_*u+b*d+w*v,x=r[12],_=r[13],b=r[14],w=r[15],t[12]=x*n+_*s+b*h+w*m,t[13]=x*i+_*l+b*f+w*g,t[14]=x*a+_*c+b*p+w*y,t[15]=x*o+_*u+b*d+w*v,t}},4633:function(t){t.exports=function(t,e,r,n,i,a,o){var s=1/(e-r),l=1/(n-i),c=1/(a-o);return t[0]=-2*s,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*l,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*c,t[11]=0,t[12]=(e+r)*s,t[13]=(i+n)*l,t[14]=(o+a)*c,t[15]=1,t}},5313:function(t){t.exports=function(t,e,r,n,i){var a=1/Math.tan(e/2),o=1/(n-i);return t[0]=a/r,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=a,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=(i+n)*o,t[11]=-1,t[12]=0,t[13]=0,t[14]=2*i*n*o,t[15]=0,t}},22253:function(t){t.exports=function(t,e,r,n){var i=Math.tan(e.upDegrees*Math.PI/180),a=Math.tan(e.downDegrees*Math.PI/180),o=Math.tan(e.leftDegrees*Math.PI/180),s=Math.tan(e.rightDegrees*Math.PI/180),l=2/(o+s),c=2/(i+a);return t[0]=l,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=c,t[6]=0,t[7]=0,t[8]=-(o-s)*l*.5,t[9]=(i-a)*c*.5,t[10]=n/(r-n),t[11]=-1,t[12]=0,t[13]=0,t[14]=n*r/(r-n),t[15]=0,t}},32416:function(t){t.exports=function(t,e,r,n){var i,a,o,s,l,c,u,h,f,p,d,m,g,y,v,x,_,b,w,T,k,A,M,S,E=n[0],C=n[1],L=n[2],I=Math.sqrt(E*E+C*C+L*L);return Math.abs(I)<1e-6?null:(E*=I=1/I,C*=I,L*=I,i=Math.sin(r),o=1-(a=Math.cos(r)),s=e[0],l=e[1],c=e[2],u=e[3],h=e[4],f=e[5],p=e[6],d=e[7],m=e[8],g=e[9],y=e[10],v=e[11],x=E*E*o+a,_=C*E*o+L*i,b=L*E*o-C*i,w=E*C*o-L*i,T=C*C*o+a,k=L*C*o+E*i,A=E*L*o+C*i,M=C*L*o-E*i,S=L*L*o+a,t[0]=s*x+h*_+m*b,t[1]=l*x+f*_+g*b,t[2]=c*x+p*_+y*b,t[3]=u*x+d*_+v*b,t[4]=s*w+h*T+m*k,t[5]=l*w+f*T+g*k,t[6]=c*w+p*T+y*k,t[7]=u*w+d*T+v*k,t[8]=s*A+h*M+m*S,t[9]=l*A+f*M+g*S,t[10]=c*A+p*M+y*S,t[11]=u*A+d*M+v*S,e!==t&&(t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t)}},81066:function(t){t.exports=function(t,e,r){var n=Math.sin(r),i=Math.cos(r),a=e[4],o=e[5],s=e[6],l=e[7],c=e[8],u=e[9],h=e[10],f=e[11];return e!==t&&(t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[4]=a*i+c*n,t[5]=o*i+u*n,t[6]=s*i+h*n,t[7]=l*i+f*n,t[8]=c*i-a*n,t[9]=u*i-o*n,t[10]=h*i-s*n,t[11]=f*i-l*n,t}},54201:function(t){t.exports=function(t,e,r){var n=Math.sin(r),i=Math.cos(r),a=e[0],o=e[1],s=e[2],l=e[3],c=e[8],u=e[9],h=e[10],f=e[11];return e!==t&&(t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=a*i-c*n,t[1]=o*i-u*n,t[2]=s*i-h*n,t[3]=l*i-f*n,t[8]=a*n+c*i,t[9]=o*n+u*i,t[10]=s*n+h*i,t[11]=l*n+f*i,t}},33920:function(t){t.exports=function(t,e,r){var n=Math.sin(r),i=Math.cos(r),a=e[0],o=e[1],s=e[2],l=e[3],c=e[4],u=e[5],h=e[6],f=e[7];return e!==t&&(t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=a*i+c*n,t[1]=o*i+u*n,t[2]=s*i+h*n,t[3]=l*i+f*n,t[4]=c*i-a*n,t[5]=u*i-o*n,t[6]=h*i-s*n,t[7]=f*i-l*n,t}},8697:function(t){t.exports=function(t,e,r){var n=r[0],i=r[1],a=r[2];return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t[3]=e[3]*n,t[4]=e[4]*i,t[5]=e[5]*i,t[6]=e[6]*i,t[7]=e[7]*i,t[8]=e[8]*a,t[9]=e[9]*a,t[10]=e[10]*a,t[11]=e[11]*a,t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}},66992:function(t){t.exports=function(t){return\"mat4(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\", \"+t[3]+\", \"+t[4]+\", \"+t[5]+\", \"+t[6]+\", \"+t[7]+\", \"+t[8]+\", \"+t[9]+\", \"+t[10]+\", \"+t[11]+\", \"+t[12]+\", \"+t[13]+\", \"+t[14]+\", \"+t[15]+\")\"}},4165:function(t){t.exports=function(t,e,r){var n,i,a,o,s,l,c,u,h,f,p,d,m=r[0],g=r[1],y=r[2];return e===t?(t[12]=e[0]*m+e[4]*g+e[8]*y+e[12],t[13]=e[1]*m+e[5]*g+e[9]*y+e[13],t[14]=e[2]*m+e[6]*g+e[10]*y+e[14],t[15]=e[3]*m+e[7]*g+e[11]*y+e[15]):(n=e[0],i=e[1],a=e[2],o=e[3],s=e[4],l=e[5],c=e[6],u=e[7],h=e[8],f=e[9],p=e[10],d=e[11],t[0]=n,t[1]=i,t[2]=a,t[3]=o,t[4]=s,t[5]=l,t[6]=c,t[7]=u,t[8]=h,t[9]=f,t[10]=p,t[11]=d,t[12]=n*m+s*g+h*y+e[12],t[13]=i*m+l*g+f*y+e[13],t[14]=a*m+c*g+p*y+e[14],t[15]=o*m+u*g+d*y+e[15]),t}},10256:function(t){t.exports=function(t,e){if(t===e){var r=e[1],n=e[2],i=e[3],a=e[6],o=e[7],s=e[11];t[1]=e[4],t[2]=e[8],t[3]=e[12],t[4]=r,t[6]=e[9],t[7]=e[13],t[8]=n,t[9]=a,t[11]=e[14],t[12]=i,t[13]=o,t[14]=s}else t[0]=e[0],t[1]=e[4],t[2]=e[8],t[3]=e[12],t[4]=e[1],t[5]=e[5],t[6]=e[9],t[7]=e[13],t[8]=e[2],t[9]=e[6],t[10]=e[10],t[11]=e[14],t[12]=e[3],t[13]=e[7],t[14]=e[11],t[15]=e[15];return t}},74024:function(t,e,r){\"use strict\";var n=r(59518),i=r(6807),a=r(81330),o=r(38862),s=r(93103),l=r(162),c=r(68950),u=r(66127),h=r(5137),f=r(29388),p=r(4957),d=r(44626),m=r(44431),g=r(27976),y=r(12673),v=r(83473),x=r(54689).nextPow2,_=new s,b=!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&&(b=!0),document.body.removeChild(w)}var T=function(t){!function(t){return\"function\"==typeof t&&t._gl&&t.prop&&t.texture&&t.buffer}(t)?this.gl=o(t):(t={regl:t},this.gl=t.regl._gl),this.shader=_.get(this.gl),this.shader?this.regl=this.shader.regl:this.regl=t.regl||a({gl:this.gl}),this.charBuffer=this.regl.buffer({type:\"uint8\",usage:\"stream\"}),this.sizeBuffer=this.regl.buffer({type:\"float\",usage:\"stream\"}),this.shader||(this.shader=this.createShader(),_.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(f(t)?t:{})};T.prototype.createShader=function(){var t=this.regl,e=t({blend:{enable:!0,color:[0,0,0,1],func:{srcRGB:\"src alpha\",dstRGB:\"one minus src alpha\",srcAlpha:\"one minus dst alpha\",dstAlpha:\"one\"}},stencil:{enable:!1},depth:{enable:!1},count:t.prop(\"count\"),offset:t.prop(\"offset\"),attributes:{charOffset:{offset:4,stride:8,buffer:t.this(\"sizeBuffer\")},width:{offset:0,stride:8,buffer:t.this(\"sizeBuffer\")},char:t.this(\"charBuffer\"),position:t.this(\"position\")},uniforms:{atlasSize:function(t,e){return[e.atlas.width,e.atlas.height]},atlasDim:function(t,e){return[e.atlas.cols,e.atlas.rows]},atlas:function(t,e){return e.atlas.texture},charStep:function(t,e){return e.atlas.step},em:function(t,e){return e.atlas.em},color:t.prop(\"color\"),opacity:t.prop(\"opacity\"),viewport:t.this(\"viewportArray\"),scale:t.this(\"scale\"),align:t.prop(\"align\"),baseline:t.prop(\"baseline\"),translate:t.this(\"translate\"),positionOffset:t.prop(\"positionOffset\")},primitive:\"points\",viewport:t.this(\"viewport\"),vert:\"\\n\\t\\t\\tprecision highp float;\\n\\t\\t\\tattribute float width, charOffset, char;\\n\\t\\t\\tattribute vec2 position;\\n\\t\\t\\tuniform float fontSize, charStep, em, align, baseline;\\n\\t\\t\\tuniform vec4 viewport;\\n\\t\\t\\tuniform vec4 color;\\n\\t\\t\\tuniform vec2 atlasSize, atlasDim, scale, translate, positionOffset;\\n\\t\\t\\tvarying vec2 charCoord, charId;\\n\\t\\t\\tvarying float charWidth;\\n\\t\\t\\tvarying vec4 fontColor;\\n\\t\\t\\tvoid main () {\\n\\t\\t\\t\\tvec2 offset = floor(em * (vec2(align + charOffset, baseline)\\n\\t\\t\\t\\t\\t+ vec2(positionOffset.x, -positionOffset.y)))\\n\\t\\t\\t\\t\\t/ (viewport.zw * scale.xy);\\n\\n\\t\\t\\t\\tvec2 position = (position + translate) * scale;\\n\\t\\t\\t\\tposition += offset * scale;\\n\\n\\t\\t\\t\\tcharCoord = position * viewport.zw + viewport.xy;\\n\\n\\t\\t\\t\\tgl_Position = vec4(position * 2. - 1., 0, 1);\\n\\n\\t\\t\\t\\tgl_PointSize = charStep;\\n\\n\\t\\t\\t\\tcharId.x = mod(char, atlasDim.x);\\n\\t\\t\\t\\tcharId.y = floor(char / atlasDim.x);\\n\\n\\t\\t\\t\\tcharWidth = width * em;\\n\\n\\t\\t\\t\\tfontColor = color / 255.;\\n\\t\\t\\t}\",frag:\"\\n\\t\\t\\tprecision highp float;\\n\\t\\t\\tuniform float fontSize, charStep, opacity;\\n\\t\\t\\tuniform vec2 atlasSize;\\n\\t\\t\\tuniform vec4 viewport;\\n\\t\\t\\tuniform sampler2D atlas;\\n\\t\\t\\tvarying vec4 fontColor;\\n\\t\\t\\tvarying vec2 charCoord, charId;\\n\\t\\t\\tvarying float charWidth;\\n\\n\\t\\t\\tfloat lightness(vec4 color) {\\n\\t\\t\\t\\treturn color.r * 0.299 + color.g * 0.587 + color.b * 0.114;\\n\\t\\t\\t}\\n\\n\\t\\t\\tvoid main () {\\n\\t\\t\\t\\tvec2 uv = gl_FragCoord.xy - charCoord + charStep * .5;\\n\\t\\t\\t\\tfloat halfCharStep = floor(charStep * .5 + .5);\\n\\n\\t\\t\\t\\t// invert y and shift by 1px (FF expecially needs that)\\n\\t\\t\\t\\tuv.y = charStep - uv.y;\\n\\n\\t\\t\\t\\t// ignore points outside of character bounding box\\n\\t\\t\\t\\tfloat halfCharWidth = ceil(charWidth * .5);\\n\\t\\t\\t\\tif (floor(uv.x) > halfCharStep + halfCharWidth ||\\n\\t\\t\\t\\t\\tfloor(uv.x) < halfCharStep - halfCharWidth) return;\\n\\n\\t\\t\\t\\tuv += charId * charStep;\\n\\t\\t\\t\\tuv = uv / atlasSize;\\n\\n\\t\\t\\t\\tvec4 color = fontColor;\\n\\t\\t\\t\\tvec4 mask = texture2D(atlas, uv);\\n\\n\\t\\t\\t\\tfloat maskY = lightness(mask);\\n\\t\\t\\t\\t// float colorY = lightness(color);\\n\\t\\t\\t\\tcolor.a *= maskY;\\n\\t\\t\\t\\tcolor.a *= opacity;\\n\\n\\t\\t\\t\\t// color.a += .1;\\n\\n\\t\\t\\t\\t// antialiasing, see yiq color space y-channel formula\\n\\t\\t\\t\\t// color.rgb += (1. - color.rgb) * (1. - mask.rgb);\\n\\n\\t\\t\\t\\tgl_FragColor = color;\\n\\t\\t\\t}\"});return{regl:t,draw:e,atlas:{}}},T.prototype.update=function(t){var e=this;if(\"string\"==typeof t)t={text:t};else if(!t)return;null!=(t=i(t,{position:\"position positions coord coords coordinates\",font:\"font fontFace fontface typeface cssFont css-font family fontFamily\",fontSize:\"fontSize fontsize size font-size\",text:\"text texts chars characters value values symbols\",align:\"align alignment textAlign textbaseline\",baseline:\"baseline textBaseline textbaseline\",direction:\"dir direction textDirection\",color:\"color colour fill fill-color fillColor textColor textcolor\",kerning:\"kerning kern\",range:\"range dataBox\",viewport:\"vp viewport viewBox viewbox viewPort\",opacity:\"opacity alpha transparency visible visibility opaque\",offset:\"offset positionOffset padding shift indent indentation\"},!0)).opacity&&(Array.isArray(t.opacity)?this.opacity=t.opacity.map((function(t){return parseFloat(t)})):this.opacity=parseFloat(t.opacity)),null!=t.viewport&&(this.viewport=h(t.viewport),this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),null==this.viewport&&(this.viewport={x:0,y:0,width:this.gl.drawingBufferWidth,height:this.gl.drawingBufferHeight},this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),null!=t.kerning&&(this.kerning=t.kerning),null!=t.offset&&(\"number\"==typeof t.offset&&(t.offset=[t.offset,0]),this.positionOffset=v(t.offset)),t.direction&&(this.direction=t.direction),t.range&&(this.range=t.range,this.scale=[1/(t.range[2]-t.range[0]),1/(t.range[3]-t.range[1])],this.translate=[-t.range[0],-t.range[1]]),t.scale&&(this.scale=t.scale),t.translate&&(this.translate=t.translate),this.scale||(this.scale=[1/this.viewport.width,1/this.viewport.height]),this.translate||(this.translate=[0,0]),this.font.length||t.font||(t.font=T.baseFontSize+\"px sans-serif\");var r,a=!1,o=!1;if(t.font&&(Array.isArray(t.font)?t.font:[t.font]).forEach((function(t,r){if(\"string\"==typeof t)try{t=n.parse(t)}catch(e){t=n.parse(T.baseFontSize+\"px \"+t)}else{var i=t.style,s=t.weight,l=t.stretch,c=t.variant;t=n.parse(n.stringify(t)),i&&(t.style=i),s&&(t.weight=s),l&&(t.stretch=l),c&&(t.variant=c)}var u=n.stringify({size:T.baseFontSize,family:t.family,stretch:b?t.stretch:void 0,variant:t.variant,weight:t.weight,style:t.style}),h=p(t.size),f=Math.round(h[0]*d(h[1]));if(f!==e.fontSize[r]&&(o=!0,e.fontSize[r]=f),!(e.font[r]&&u==e.font[r].baseString||(a=!0,e.font[r]=T.fonts[u],e.font[r]))){var m=t.family.join(\", \"),g=[t.style];t.style!=t.variant&&g.push(t.variant),t.variant!=t.weight&&g.push(t.weight),b&&t.weight!=t.stretch&&g.push(t.stretch),e.font[r]={baseString:u,family:m,weight:t.weight,stretch:t.stretch,style:t.style,variant:t.variant,width:{},kerning:{},metrics:y(m,{origin:\"top\",fontSize:T.baseFontSize,fontStyle:g.join(\" \")})},T.fonts[u]=e.font[r]}})),(a||o)&&this.font.forEach((function(r,i){var a=n.stringify({size:e.fontSize[i],family:r.family,stretch:b?r.stretch:void 0,variant:r.variant,weight:r.weight,style:r.style});if(e.fontAtlas[i]=e.shader.atlas[a],!e.fontAtlas[i]){var o=r.metrics;e.shader.atlas[a]=e.fontAtlas[i]={fontString:a,step:2*Math.ceil(e.fontSize[i]*o.bottom*.5),em:e.fontSize[i],cols:0,rows:0,height:0,width:0,chars:[],ids:{},texture:e.regl.texture()}}null==t.text&&(t.text=e.text)})),\"string\"==typeof t.text&&t.position&&t.position.length>2){for(var s=Array(.5*t.position.length),f=0;f<s.length;f++)s[f]=t.text;t.text=s}if(null!=t.text||a){if(this.textOffsets=[0],Array.isArray(t.text)){this.count=t.text[0].length,this.counts=[this.count];for(var _=1;_<t.text.length;_++)this.textOffsets[_]=this.textOffsets[_-1]+t.text[_-1].length,this.count+=t.text[_].length,this.counts.push(t.text[_].length);this.text=t.text.join(\"\")}else this.text=t.text,this.count=this.text.length,this.counts=[this.count];r=[],this.font.forEach((function(t,n){T.atlasContext.font=t.baseString;for(var i=e.fontAtlas[n],a=0;a<e.text.length;a++){var o=e.text.charAt(a);if(null==i.ids[o]&&(i.ids[o]=i.chars.length,i.chars.push(o),r.push(o)),null==t.width[o]&&(t.width[o]=T.atlasContext.measureText(o).width/T.baseFontSize,e.kerning)){var s=[];for(var l in t.width)s.push(l+o,o+l);g(t.kerning,m(t.family,{pairs:s}))}}}))}if(t.position)if(t.position.length>2){for(var w=!t.position[0].length,k=u.mallocFloat(2*this.count),A=0,M=0;A<this.counts.length;A++){var S=this.counts[A];if(w)for(var E=0;E<S;E++)k[M++]=t.position[2*A],k[M++]=t.position[2*A+1];else for(var C=0;C<S;C++)k[M++]=t.position[A][0],k[M++]=t.position[A][1]}this.position.call?this.position({type:\"float\",data:k}):this.position=this.regl.buffer({type:\"float\",data:k}),u.freeFloat(k)}else this.position.destroy&&this.position.destroy(),this.position={constant:t.position};if(t.text||a){var L=u.mallocUint8(this.count),I=u.mallocFloat(2*this.count);this.textWidth=[];for(var P=0,z=0;P<this.counts.length;P++){for(var O=this.counts[P],D=this.font[P]||this.font[0],R=this.fontAtlas[P]||this.fontAtlas[0],F=0;F<O;F++){var B=this.text.charAt(z),N=this.text.charAt(z-1);if(L[z]=R.ids[B],I[2*z]=D.width[B],F){var j=I[2*z-2],U=I[2*z],V=I[2*z-1]+.5*j+.5*U;if(this.kerning){var q=D.kerning[N+B];q&&(V+=.001*q)}I[2*z+1]=V}else I[2*z+1]=.5*I[2*z];z++}this.textWidth.push(I.length?.5*I[2*z-2]+I[2*z-1]:0)}t.align||(t.align=this.align),this.charBuffer({data:L,type:\"uint8\",usage:\"stream\"}),this.sizeBuffer({data:I,type:\"float\",usage:\"stream\"}),u.freeUint8(L),u.freeFloat(I),r.length&&this.font.forEach((function(t,r){var n=e.fontAtlas[r],i=n.step,a=Math.floor(T.maxAtlasSize/i),o=Math.min(a,n.chars.length),s=Math.ceil(n.chars.length/o),l=x(o*i),u=x(s*i);n.width=l,n.height=u,n.rows=s,n.cols=o,n.em&&n.texture({data:c({canvas:T.atlasCanvas,font:n.fontString,chars:n.chars,shape:[l,u],step:[i,i]})})}))}if(t.align&&(this.align=t.align,this.alignOffset=this.textWidth.map((function(t,r){var n=Array.isArray(e.align)?e.align.length>1?e.align[r]:e.align[0]:e.align;if(\"number\"==typeof n)return n;switch(n){case\"right\":case\"end\":return-t;case\"center\":case\"centre\":case\"middle\":return.5*-t}return 0}))),null==this.baseline&&null==t.baseline&&(t.baseline=0),null!=t.baseline&&(this.baseline=t.baseline,Array.isArray(this.baseline)||(this.baseline=[this.baseline]),this.baselineOffset=this.baseline.map((function(t,r){var n=(e.font[r]||e.font[0]).metrics,i=0;return i+=.5*n.bottom,-1*(i+=\"number\"==typeof t?t-n.baseline:-n[t])}))),null!=t.color)if(t.color||(t.color=\"transparent\"),\"string\"!=typeof t.color&&isNaN(t.color)){var H;if(\"number\"==typeof t.color[0]&&t.color.length>this.counts.length){var G=t.color.length;H=u.mallocUint8(G);for(var Z=(t.color.subarray||t.color.slice).bind(t.color),W=0;W<G;W+=4)H.set(l(Z(W,W+4),\"uint8\"),W)}else{var Y=t.color.length;H=u.mallocUint8(4*Y);for(var X=0;X<Y;X++)H.set(l(t.color[X]||0,\"uint8\"),4*X)}this.color=H}else this.color=l(t.color,\"uint8\");if(t.position||t.text||t.color||t.baseline||t.align||t.font||t.offset||t.opacity)if(this.color.length>4||this.baselineOffset.length>1||this.align&&this.align.length>1||this.fontAtlas.length>1||this.positionOffset.length>2){var $=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($);for(var J=0;J<this.batch.length;J++)this.batch[J]={count:this.counts.length>1?this.counts[J]:this.counts[0],offset:this.textOffsets.length>1?this.textOffsets[J]:this.textOffsets[0],color:this.color?this.color.length<=4?this.color:this.color.subarray(4*J,4*J+4):[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[J]:this.opacity,baseline:null!=this.baselineOffset[J]?this.baselineOffset[J]:this.baselineOffset[0],align:this.align?null!=this.alignOffset[J]?this.alignOffset[J]:this.alignOffset[0]:0,atlas:this.fontAtlas[J]||this.fontAtlas[0],positionOffset:this.positionOffset.length>2?this.positionOffset.subarray(2*J,2*J+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=[]},T.prototype.destroy=function(){},T.prototype.kerning=!0,T.prototype.position={constant:new Float32Array(2)},T.prototype.translate=null,T.prototype.scale=null,T.prototype.font=null,T.prototype.text=\"\",T.prototype.positionOffset=[0,0],T.prototype.opacity=1,T.prototype.color=new Uint8Array([0,0,0,255]),T.prototype.alignOffset=[0,0],T.maxAtlasSize=1024,T.atlasCanvas=document.createElement(\"canvas\"),T.atlasContext=T.atlasCanvas.getContext(\"2d\",{alpha:!1}),T.baseFontSize=64,T.fonts={},t.exports=T},38862:function(t,e,r){\"use strict\";var n=r(6807);function i(t){if(t.container)if(t.container==document.body)document.body.style.width||(t.canvas.width=t.width||t.pixelRatio*r.g.innerWidth),document.body.style.height||(t.canvas.height=t.height||t.pixelRatio*r.g.innerHeight);else{var e=t.container.getBoundingClientRect();t.canvas.width=t.width||e.right-e.left,t.canvas.height=t.height||e.bottom-e.top}}function a(t){return\"function\"==typeof t.getContext&&\"width\"in t&&\"height\"in t}function o(){var t=document.createElement(\"canvas\");return t.style.position=\"absolute\",t.style.top=0,t.style.left=0,t}t.exports=function(t){var e;if(t?\"string\"==typeof t&&(t={container:t}):t={},(t=a(t)||\"string\"==typeof(e=t).nodeName&&\"function\"==typeof e.appendChild&&\"function\"==typeof e.getBoundingClientRect?{container:t}:function(t){return\"function\"==typeof t.drawArrays||\"function\"==typeof t.drawElements}(t)?{gl:t}:n(t,{container:\"container target element el canvas holder parent parentNode wrapper use ref root node\",gl:\"gl context webgl glContext\",attrs:\"attributes attrs contextAttributes\",pixelRatio:\"pixelRatio pxRatio px ratio pxratio pixelratio\",width:\"w width\",height:\"h height\"},!0)).pixelRatio||(t.pixelRatio=r.g.pixelRatio||1),t.gl)return t.gl;if(t.canvas&&(t.container=t.canvas.parentNode),t.container){if(\"string\"==typeof t.container){var s=document.querySelector(t.container);if(!s)throw Error(\"Element \"+t.container+\" is not found\");t.container=s}a(t.container)?(t.canvas=t.container,t.container=t.canvas.parentNode):t.canvas||(t.canvas=o(),t.container.appendChild(t.canvas),i(t))}else if(!t.canvas){if(\"undefined\"==typeof document)throw Error(\"Not DOM environment. Use headless-gl.\");t.container=document.body||document.documentElement,t.canvas=o(),t.container.appendChild(t.canvas),i(t)}return t.gl||[\"webgl\",\"experimental-webgl\",\"webgl-experimental\"].some((function(e){try{t.gl=t.canvas.getContext(e,t.attrs)}catch(t){}return t.gl})),t.gl}},76765:function(t){t.exports=function(t){\"string\"==typeof t&&(t=[t]);for(var e=[].slice.call(arguments,1),r=[],n=0;n<t.length-1;n++)r.push(t[n],e[n]||\"\");return r.push(t[n]),r.join(\"\")}},52991:function(t,e,r){\"use strict\";var n=r(71129)(\"%Object.getOwnPropertyDescriptor%\",!0);if(n)try{n([],\"length\")}catch(t){n=null}t.exports=n},39784:function(t,e,r){\"use strict\";var n,i=r(78253);n=\"function\"==typeof r.g.matchMedia?!r.g.matchMedia(\"(hover: none)\").matches:i,t.exports=n},74043:function(t,e,r){\"use strict\";var n=r(78253);t.exports=n&&function(){var t=!1;try{var e=Object.defineProperty({},\"passive\",{get:function(){t=!0}});window.addEventListener(\"test\",null,e),window.removeEventListener(\"test\",null,e)}catch(e){t=!1}return t}()},74268:function(t,e,r){\"use strict\";var n=r(40891),i=function(){return!!n};i.hasArrayLengthDefineBug=function(){if(!n)return null;try{return 1!==n([],\"length\",{value:1}).length}catch(t){return!0}},t.exports=i},58436:function(t){\"use strict\";var e={foo:{}},r=Object;t.exports=function(){return{__proto__:e}.foo===e.foo&&!({__proto__:null}instanceof r)}},8771:function(t,e,r){\"use strict\";var n=\"undefined\"!=typeof Symbol&&Symbol,i=r(59457);t.exports=function(){return\"function\"==typeof n&&\"function\"==typeof Symbol&&\"symbol\"==typeof n(\"foo\")&&\"symbol\"==typeof Symbol(\"bar\")&&i()}},59457:function(t){\"use strict\";t.exports=function(){if(\"function\"!=typeof Symbol||\"function\"!=typeof Object.getOwnPropertySymbols)return!1;if(\"symbol\"==typeof Symbol.iterator)return!0;var t={},e=Symbol(\"test\"),r=Object(e);if(\"string\"==typeof e)return!1;if(\"[object Symbol]\"!==Object.prototype.toString.call(e))return!1;if(\"[object Symbol]\"!==Object.prototype.toString.call(r))return!1;for(e in t[e]=42,t)return!1;if(\"function\"==typeof Object.keys&&0!==Object.keys(t).length)return!1;if(\"function\"==typeof Object.getOwnPropertyNames&&0!==Object.getOwnPropertyNames(t).length)return!1;var n=Object.getOwnPropertySymbols(t);if(1!==n.length||n[0]!==e)return!1;if(!Object.prototype.propertyIsEnumerable.call(t,e))return!1;if(\"function\"==typeof Object.getOwnPropertyDescriptor){var i=Object.getOwnPropertyDescriptor(t,e);if(42!==i.value||!0!==i.enumerable)return!1}return!0}},36912:function(t,e,r){\"use strict\";var n=r(59457);t.exports=function(){return n()&&!!Symbol.toStringTag}},80753:function(t,e,r){\"use strict\";var n=Function.prototype.call,i=Object.prototype.hasOwnProperty,a=r(87547);t.exports=a.call(n,i)},27415:function(t,e){e.read=function(t,e,r,n,i){var a,o,s=8*i-n-1,l=(1<<s)-1,c=l>>1,u=-7,h=r?i-1:0,f=r?-1:1,p=t[e+h];for(h+=f,a=p&(1<<-u)-1,p>>=-u,u+=s;u>0;a=256*a+t[e+h],h+=f,u-=8);for(o=a&(1<<-u)-1,a>>=-u,u+=n;u>0;o=256*o+t[e+h],h+=f,u-=8);if(0===a)a=1-c;else{if(a===l)return o?NaN:1/0*(p?-1:1);o+=Math.pow(2,n),a-=c}return(p?-1:1)*o*Math.pow(2,a-n)},e.write=function(t,e,r,n,i,a){var o,s,l,c=8*a-i-1,u=(1<<c)-1,h=u>>1,f=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,p=n?0:a-1,d=n?1:-1,m=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,o=u):(o=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-o))<1&&(o--,l*=2),(e+=o+h>=1?f/l:f*Math.pow(2,1-h))*l>=2&&(o++,l/=2),o+h>=u?(s=0,o=u):o+h>=1?(s=(e*l-1)*Math.pow(2,i),o+=h):(s=e*Math.pow(2,h-1)*Math.pow(2,i),o=0));i>=8;t[r+p]=255&s,p+=d,s/=256,i-=8);for(o=o<<i|s,c+=i;c>0;t[r+p]=255&o,p+=d,o/=256,c-=8);t[r+p-d]|=128*m}},28062:function(t){\"function\"==typeof Object.create?t.exports=function(t,e){e&&(t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:t.exports=function(t,e){if(e){t.super_=e;var r=function(){};r.prototype=e.prototype,t.prototype=new r,t.prototype.constructor=t}}},40280:function(t,e,r){\"use strict\";var n=r(36912)(),i=r(63063)(\"Object.prototype.toString\"),a=function(t){return!(n&&t&&\"object\"==typeof t&&Symbol.toStringTag in t)&&\"[object Arguments]\"===i(t)},o=function(t){return!!a(t)||null!==t&&\"object\"==typeof t&&\"number\"==typeof t.length&&t.length>=0&&\"[object Array]\"!==i(t)&&\"[object Function]\"===i(t.callee)},s=function(){return a(arguments)}();a.isLegacyArguments=o,t.exports=s?a:o},78253:function(t){t.exports=!0},82756:function(t){\"use strict\";var e,r,n=Function.prototype.toString,i=\"object\"==typeof Reflect&&null!==Reflect&&Reflect.apply;if(\"function\"==typeof i&&\"function\"==typeof Object.defineProperty)try{e=Object.defineProperty({},\"length\",{get:function(){throw r}}),r={},i((function(){throw 42}),null,e)}catch(t){t!==r&&(i=null)}else i=null;var a=/^\\s*class\\b/,o=function(t){try{var e=n.call(t);return a.test(e)}catch(t){return!1}},s=function(t){try{return!o(t)&&(n.call(t),!0)}catch(t){return!1}},l=Object.prototype.toString,c=\"function\"==typeof Symbol&&!!Symbol.toStringTag,u=!(0 in[,]),h=function(){return!1};if(\"object\"==typeof document){var f=document.all;l.call(f)===l.call(document.all)&&(h=function(t){if((u||!t)&&(void 0===t||\"object\"==typeof t))try{var e=l.call(t);return(\"[object HTMLAllCollection]\"===e||\"[object HTML document.all class]\"===e||\"[object HTMLCollection]\"===e||\"[object Object]\"===e)&&null==t(\"\")}catch(t){}return!1})}t.exports=i?function(t){if(h(t))return!0;if(!t)return!1;if(\"function\"!=typeof t&&\"object\"!=typeof t)return!1;try{i(t,null,e)}catch(t){if(t!==r)return!1}return!o(t)&&s(t)}:function(t){if(h(t))return!0;if(!t)return!1;if(\"function\"!=typeof t&&\"object\"!=typeof t)return!1;if(c)return s(t);if(o(t))return!1;var e=l.call(t);return!(\"[object Function]\"!==e&&\"[object GeneratorFunction]\"!==e&&!/^\\[object HTML/.test(e))&&s(t)}},80340:function(t,e,r){\"use strict\";var n,i=Object.prototype.toString,a=Function.prototype.toString,o=/^\\s*(?:function)?\\*/,s=r(36912)(),l=Object.getPrototypeOf;t.exports=function(t){if(\"function\"!=typeof t)return!1;if(o.test(a.call(t)))return!0;if(!s)return\"[object GeneratorFunction]\"===i.call(t);if(!l)return!1;if(void 0===n){var e=function(){if(!s)return!1;try{return Function(\"return function*() {}\")()}catch(t){}}();n=!!e&&l(e)}return l(t)===n}},39488:function(t){\"use strict\";t.exports=\"undefined\"!=typeof navigator&&(/MSIE/.test(navigator.userAgent)||/Trident\\//.test(navigator.appVersion))},73287:function(t){\"use strict\";t.exports=function(t){return t!=t}},63057:function(t,e,r){\"use strict\";var n=r(87227),i=r(97936),a=r(73287),o=r(60758),s=r(85684),l=n(o(),Number);i(l,{getPolyfill:o,implementation:a,shim:s}),t.exports=l},60758:function(t,e,r){\"use strict\";var n=r(73287);t.exports=function(){return Number.isNaN&&Number.isNaN(NaN)&&!Number.isNaN(\"a\")?Number.isNaN:n}},85684:function(t,e,r){\"use strict\";var n=r(97936),i=r(60758);t.exports=function(){var t=i();return n(Number,{isNaN:t},{isNaN:function(){return Number.isNaN!==t}}),t}},60201:function(t){\"use strict\";t.exports=function(t){var e=typeof t;return null!==t&&(\"object\"===e||\"function\"===e)}},29388:function(t){\"use strict\";var e=Object.prototype.toString;t.exports=function(t){var r;return\"[object Object]\"===e.call(t)&&(null===(r=Object.getPrototypeOf(t))||r===Object.getPrototypeOf({}))}},9914:function(t){\"use strict\";t.exports=function(t){for(var e,r=t.length,n=0;n<r;n++)if(((e=t.charCodeAt(n))<9||e>13)&&32!==e&&133!==e&&160!==e&&5760!==e&&6158!==e&&(e<8192||e>8205)&&8232!==e&&8233!==e&&8239!==e&&8287!==e&&8288!==e&&12288!==e&&65279!==e)return!1;return!0}},13986:function(t){\"use strict\";t.exports=function(t){return\"string\"==typeof t&&(t=t.trim(),!!(/^[mzlhvcsqta]\\s*[-+.0-9][^mlhvzcsqta]+/i.test(t)&&/[\\dz]$/i.test(t)&&t.length>4))}},15628:function(t,e,r){\"use strict\";var n=r(61262),i=r(70085),a=r(63063),o=a(\"Object.prototype.toString\"),s=r(36912)(),l=r(52991),c=\"undefined\"==typeof globalThis?r.g:globalThis,u=i(),h=a(\"Array.prototype.indexOf\",!0)||function(t,e){for(var r=0;r<t.length;r+=1)if(t[r]===e)return r;return-1},f=a(\"String.prototype.slice\"),p={},d=Object.getPrototypeOf;s&&l&&d&&n(u,(function(t){var e=new c[t];if(Symbol.toStringTag in e){var r=d(e),n=l(r,Symbol.toStringTag);if(!n){var i=d(r);n=l(i,Symbol.toStringTag)}p[t]=n.get}})),t.exports=function(t){if(!t||\"object\"!=typeof t)return!1;if(!s||!(Symbol.toStringTag in t)){var e=f(o(t),8,-1);return h(u,e)>-1}return!!l&&function(t){var e=!1;return n(p,(function(r,n){if(!e)try{e=r.call(t)===n}catch(t){}})),e}(t)}},62914:function(t){\"use strict\";t.exports=Math.log2||function(t){return Math.log(t)*Math.LOG2E}},99978:function(t,e,r){\"use strict\";t.exports=function(t,e){e||(e=t,t=window);var r=0,i=0,a=0,o={shift:!1,alt:!1,control:!1,meta:!1},s=!1;function l(t){var e=!1;return\"altKey\"in t&&(e=e||t.altKey!==o.alt,o.alt=!!t.altKey),\"shiftKey\"in t&&(e=e||t.shiftKey!==o.shift,o.shift=!!t.shiftKey),\"ctrlKey\"in t&&(e=e||t.ctrlKey!==o.control,o.control=!!t.ctrlKey),\"metaKey\"in t&&(e=e||t.metaKey!==o.meta,o.meta=!!t.metaKey),e}function c(t,s){var c=n.x(s),u=n.y(s);\"buttons\"in s&&(t=0|s.buttons),(t!==r||c!==i||u!==a||l(s))&&(r=0|t,i=c||0,a=u||0,e&&e(r,i,a,o))}function u(t){c(0,t)}function h(){(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,e&&e(0,0,0,o))}function f(t){l(t)&&e&&e(r,i,a,o)}function p(t){0===n.buttons(t)?c(0,t):c(r,t)}function d(t){c(r|n.buttons(t),t)}function m(t){c(r&~n.buttons(t),t)}function g(){s||(s=!0,t.addEventListener(\"mousemove\",p),t.addEventListener(\"mousedown\",d),t.addEventListener(\"mouseup\",m),t.addEventListener(\"mouseleave\",u),t.addEventListener(\"mouseenter\",u),t.addEventListener(\"mouseout\",u),t.addEventListener(\"mouseover\",u),t.addEventListener(\"blur\",h),t.addEventListener(\"keyup\",f),t.addEventListener(\"keydown\",f),t.addEventListener(\"keypress\",f),t!==window&&(window.addEventListener(\"blur\",h),window.addEventListener(\"keyup\",f),window.addEventListener(\"keydown\",f),window.addEventListener(\"keypress\",f)))}g();var y={element:t};return Object.defineProperties(y,{enabled:{get:function(){return s},set:function(e){e?g():s&&(s=!1,t.removeEventListener(\"mousemove\",p),t.removeEventListener(\"mousedown\",d),t.removeEventListener(\"mouseup\",m),t.removeEventListener(\"mouseleave\",u),t.removeEventListener(\"mouseenter\",u),t.removeEventListener(\"mouseout\",u),t.removeEventListener(\"mouseover\",u),t.removeEventListener(\"blur\",h),t.removeEventListener(\"keyup\",f),t.removeEventListener(\"keydown\",f),t.removeEventListener(\"keypress\",f),t!==window&&(window.removeEventListener(\"blur\",h),window.removeEventListener(\"keyup\",f),window.removeEventListener(\"keydown\",f),window.removeEventListener(\"keypress\",f)))},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}}),y};var n=r(41926)},44039:function(t){var e={left:0,top:0};t.exports=function(t,r,n){r=r||t.currentTarget||t.srcElement,Array.isArray(n)||(n=[0,0]);var i,a=t.clientX||0,o=t.clientY||0,s=(i=r)===window||i===document||i===document.body?e:i.getBoundingClientRect();return n[0]=a-s.left,n[1]=o-s.top,n}},41926:function(t,e){\"use strict\";function r(t){return t.target||t.srcElement||window}e.buttons=function(t){if(\"object\"==typeof t){if(\"buttons\"in t)return t.buttons;if(\"which\"in t){if(2===(e=t.which))return 4;if(3===e)return 2;if(e>0)return 1<<e-1}else if(\"button\"in t){var e;if(1===(e=t.button))return 4;if(2===e)return 2;if(e>=0)return 1<<e}}return 0},e.element=r,e.x=function(t){if(\"object\"==typeof t){if(\"offsetX\"in t)return t.offsetX;var e=r(t).getBoundingClientRect();return t.clientX-e.left}return 0},e.y=function(t){if(\"object\"==typeof t){if(\"offsetY\"in t)return t.offsetY;var e=r(t).getBoundingClientRect();return t.clientY-e.top}return 0}},20573:function(t,e,r){\"use strict\";var n=r(44626);t.exports=function(t,e,r){\"function\"==typeof t&&(r=!!e,e=t,t=window);var i=n(\"ex\",t),a=function(t){r&&t.preventDefault();var n=t.deltaX||0,a=t.deltaY||0,o=t.deltaZ||0,s=1;switch(t.deltaMode){case 1:s=i;break;case 2:s=window.innerHeight}if(a*=s,o*=s,(n*=s)||a||o)return e(n,a,o,t)};return t.addEventListener(\"wheel\",a),a}},71116:function(t,e,r){var n;!function(i,a,o){a[i]=a[i]||function(){\"use strict\";var t,e,r,n=Object.prototype.toString,i=\"undefined\"!=typeof setImmediate?function(t){return setImmediate(t)}:setTimeout;try{Object.defineProperty({},\"x\",{}),t=function(t,e,r,n){return Object.defineProperty(t,e,{value:r,writable:!0,configurable:!1!==n})}}catch(e){t=function(t,e,r){return t[e]=r,t}}function a(t,n){r.add(t,n),e||(e=i(r.drain))}function o(t){var e,r=typeof t;return null==t||\"object\"!=r&&\"function\"!=r||(e=t.then),\"function\"==typeof e&&e}function s(){for(var t=0;t<this.chain.length;t++)l(this,1===this.state?this.chain[t].success:this.chain[t].failure,this.chain[t]);this.chain.length=0}function l(t,e,r){var n,i;try{!1===e?r.reject(t.msg):(n=!0===e?t.msg:e.call(void 0,t.msg))===r.promise?r.reject(TypeError(\"Promise-chain cycle\")):(i=o(n))?i.call(n,r.resolve,r.reject):r.resolve(n)}catch(t){r.reject(t)}}function c(t){var e,r=this;if(!r.triggered){r.triggered=!0,r.def&&(r=r.def);try{(e=o(t))?a((function(){var n=new f(r);try{e.call(t,(function(){c.apply(n,arguments)}),(function(){u.apply(n,arguments)}))}catch(t){u.call(n,t)}})):(r.msg=t,r.state=1,r.chain.length>0&&a(s,r))}catch(t){u.call(new f(r),t)}}}function u(t){var e=this;e.triggered||(e.triggered=!0,e.def&&(e=e.def),e.msg=t,e.state=2,e.chain.length>0&&a(s,e))}function h(t,e,r,n){for(var i=0;i<e.length;i++)!function(i){t.resolve(e[i]).then((function(t){r(i,t)}),n)}(i)}function f(t){this.def=t,this.triggered=!1}function p(t){this.promise=t,this.state=0,this.triggered=!1,this.chain=[],this.msg=void 0}function d(t){if(\"function\"!=typeof t)throw TypeError(\"Not a function\");if(0!==this.__NPO__)throw TypeError(\"Not a promise\");this.__NPO__=1;var e=new p(this);this.then=function(t,r){var n={success:\"function\"!=typeof t||t,failure:\"function\"==typeof r&&r};return n.promise=new this.constructor((function(t,e){if(\"function\"!=typeof t||\"function\"!=typeof e)throw TypeError(\"Not a function\");n.resolve=t,n.reject=e})),e.chain.push(n),0!==e.state&&a(s,e),n.promise},this.catch=function(t){return this.then(void 0,t)};try{t.call(void 0,(function(t){c.call(e,t)}),(function(t){u.call(e,t)}))}catch(t){u.call(e,t)}}r=function(){var t,r,n;function i(t,e){this.fn=t,this.self=e,this.next=void 0}return{add:function(e,a){n=new i(e,a),r?r.next=n:t=n,r=n,n=void 0},drain:function(){var n=t;for(t=r=e=void 0;n;)n.fn.call(n.self),n=n.next}}}();var m=t({},\"constructor\",d,!1);return d.prototype=m,t(m,\"__NPO__\",0,!1),t(d,\"resolve\",(function(t){return t&&\"object\"==typeof t&&1===t.__NPO__?t:new this((function(e,r){if(\"function\"!=typeof e||\"function\"!=typeof r)throw TypeError(\"Not a function\");e(t)}))})),t(d,\"reject\",(function(t){return new this((function(e,r){if(\"function\"!=typeof e||\"function\"!=typeof r)throw TypeError(\"Not a function\");r(t)}))})),t(d,\"all\",(function(t){var e=this;return\"[object Array]\"!=n.call(t)?e.reject(TypeError(\"Not an array\")):0===t.length?e.resolve([]):new e((function(r,n){if(\"function\"!=typeof r||\"function\"!=typeof n)throw TypeError(\"Not a function\");var i=t.length,a=Array(i),o=0;h(e,t,(function(t,e){a[t]=e,++o===i&&r(a)}),n)}))})),t(d,\"race\",(function(t){var e=this;return\"[object Array]\"!=n.call(t)?e.reject(TypeError(\"Not an array\")):new e((function(r,n){if(\"function\"!=typeof r||\"function\"!=typeof n)throw TypeError(\"Not a function\");h(e,t,(function(t,e){r(e)}),n)}))})),d}(),t.exports?t.exports=a[i]:void 0===(n=function(){return a[i]}.call(e,r,e,t))||(t.exports=n)}(\"Promise\",void 0!==r.g?r.g:this)},60265:function(t){var e=Math.PI,r=s(120);function n(t,e,r,n){return[\"C\",t,e,r,n,r,n]}function i(t,e,r,n,i,a){return[\"C\",t/3+2/3*r,e/3+2/3*n,i/3+2/3*r,a/3+2/3*n,i,a]}function a(t,n,i,s,l,c,u,h,f,p){if(p)T=p[0],k=p[1],b=p[2],w=p[3];else{var d=o(t,n,-l);t=d.x,n=d.y;var m=(t-(h=(d=o(h,f,-l)).x))/2,g=(n-(f=d.y))/2,y=m*m/(i*i)+g*g/(s*s);y>1&&(i*=y=Math.sqrt(y),s*=y);var v=i*i,x=s*s,_=(c==u?-1:1)*Math.sqrt(Math.abs((v*x-v*g*g-x*m*m)/(v*g*g+x*m*m)));_==1/0&&(_=1);var b=_*i*g/s+(t+h)/2,w=_*-s*m/i+(n+f)/2,T=Math.asin(((n-w)/s).toFixed(9)),k=Math.asin(((f-w)/s).toFixed(9));(T=t<b?e-T:T)<0&&(T=2*e+T),(k=h<b?e-k:k)<0&&(k=2*e+k),u&&T>k&&(T-=2*e),!u&&k>T&&(k-=2*e)}if(Math.abs(k-T)>r){var A=k,M=h,S=f;k=T+r*(u&&k>T?1:-1);var E=a(h=b+i*Math.cos(k),f=w+s*Math.sin(k),i,s,l,0,u,M,S,[k,A,b,w])}var C=Math.tan((k-T)/4),L=4/3*i*C,I=4/3*s*C,P=[2*t-(t+L*Math.sin(T)),2*n-(n-I*Math.cos(T)),h+L*Math.sin(k),f-I*Math.cos(k),h,f];if(p)return P;E&&(P=P.concat(E));for(var z=0;z<P.length;){var O=o(P[z],P[z+1],l);P[z++]=O.x,P[z++]=O.y}return P}function o(t,e,r){return{x:t*Math.cos(r)-e*Math.sin(r),y:t*Math.sin(r)+e*Math.cos(r)}}function s(t){return t*(e/180)}t.exports=function(t){for(var e,r=[],o=0,l=0,c=0,u=0,h=null,f=null,p=0,d=0,m=0,g=t.length;m<g;m++){var y=t[m],v=y[0];switch(v){case\"M\":c=y[1],u=y[2];break;case\"A\":(y=a(p,d,y[1],y[2],s(y[3]),y[4],y[5],y[6],y[7])).unshift(\"C\"),y.length>7&&(r.push(y.splice(0,7)),y.unshift(\"C\"));break;case\"S\":var x=p,_=d;\"C\"!=e&&\"S\"!=e||(x+=x-o,_+=_-l),y=[\"C\",x,_,y[1],y[2],y[3],y[4]];break;case\"T\":\"Q\"==e||\"T\"==e?(h=2*p-h,f=2*d-f):(h=p,f=d),y=i(p,d,h,f,y[1],y[2]);break;case\"Q\":h=y[1],f=y[2],y=i(p,d,y[1],y[2],y[3],y[4]);break;case\"L\":y=n(p,d,y[1],y[2]);break;case\"H\":y=n(p,d,y[1],d);break;case\"V\":y=n(p,d,p,y[1]);break;case\"Z\":y=n(p,d,c,u)}e=v,p=y[y.length-2],d=y[y.length-1],y.length>4?(o=y[y.length-4],l=y[y.length-3]):(o=p,l=d),r.push(y)}return r}},27976:function(t){\"use strict\";var e=Object.getOwnPropertySymbols,r=Object.prototype.hasOwnProperty,n=Object.prototype.propertyIsEnumerable;t.exports=function(){try{if(!Object.assign)return!1;var t=new String(\"abc\");if(t[5]=\"de\",\"5\"===Object.getOwnPropertyNames(t)[0])return!1;for(var e={},r=0;r<10;r++)e[\"_\"+String.fromCharCode(r)]=r;if(\"0123456789\"!==Object.getOwnPropertyNames(e).map((function(t){return e[t]})).join(\"\"))return!1;var n={};return\"abcdefghijklmnopqrst\".split(\"\").forEach((function(t){n[t]=t})),\"abcdefghijklmnopqrst\"===Object.keys(Object.assign({},n)).join(\"\")}catch(t){return!1}}()?Object.assign:function(t,i){for(var a,o,s=function(t){if(null==t)throw new TypeError(\"Object.assign cannot be called with null or undefined\");return Object(t)}(t),l=1;l<arguments.length;l++){for(var c in a=Object(arguments[l]))r.call(a,c)&&(s[c]=a[c]);if(e){o=e(a);for(var u=0;u<o.length;u++)n.call(a,o[u])&&(s[o[u]]=a[o[u]])}}return s}},93063:function(t){\"use strict\";var e=function(t){return t!=t};t.exports=function(t,r){return 0===t&&0===r?1/t==1/r:t===r||!(!e(t)||!e(r))}},13969:function(t,e,r){\"use strict\";var n=r(97936),i=r(87227),a=r(93063),o=r(9622),s=r(79796),l=i(o(),Object);n(l,{getPolyfill:o,implementation:a,shim:s}),t.exports=l},9622:function(t,e,r){\"use strict\";var n=r(93063);t.exports=function(){return\"function\"==typeof Object.is?Object.is:n}},79796:function(t,e,r){\"use strict\";var n=r(9622),i=r(97936);t.exports=function(){var t=n();return i(Object,{is:t},{is:function(){return Object.is!==t}}),t}},61663:function(t,e,r){\"use strict\";var n;if(!Object.keys){var i=Object.prototype.hasOwnProperty,a=Object.prototype.toString,o=r(52385),s=Object.prototype.propertyIsEnumerable,l=!s.call({toString:null},\"toString\"),c=s.call((function(){}),\"prototype\"),u=[\"toString\",\"toLocaleString\",\"valueOf\",\"hasOwnProperty\",\"isPrototypeOf\",\"propertyIsEnumerable\",\"constructor\"],h=function(t){var e=t.constructor;return e&&e.prototype===t},f={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},p=function(){if(\"undefined\"==typeof window)return!1;for(var t in window)try{if(!f[\"$\"+t]&&i.call(window,t)&&null!==window[t]&&\"object\"==typeof window[t])try{h(window[t])}catch(t){return!0}}catch(t){return!0}return!1}();n=function(t){var e=null!==t&&\"object\"==typeof t,r=\"[object Function]\"===a.call(t),n=o(t),s=e&&\"[object String]\"===a.call(t),f=[];if(!e&&!r&&!n)throw new TypeError(\"Object.keys called on a non-object\");var d=c&&r;if(s&&t.length>0&&!i.call(t,0))for(var m=0;m<t.length;++m)f.push(String(m));if(n&&t.length>0)for(var g=0;g<t.length;++g)f.push(String(g));else for(var y in t)d&&\"prototype\"===y||!i.call(t,y)||f.push(String(y));if(l)for(var v=function(t){if(\"undefined\"==typeof window||!p)return h(t);try{return h(t)}catch(t){return!1}}(t),x=0;x<u.length;++x)v&&\"constructor\"===u[x]||!i.call(t,u[x])||f.push(u[x]);return f}}t.exports=n},99433:function(t,e,r){\"use strict\";var n=Array.prototype.slice,i=r(52385),a=Object.keys,o=a?function(t){return a(t)}:r(61663),s=Object.keys;o.shim=function(){if(Object.keys){var t=function(){var t=Object.keys(arguments);return t&&t.length===arguments.length}(1,2);t||(Object.keys=function(t){return i(t)?s(n.call(t)):s(t)})}else Object.keys=o;return Object.keys||o},t.exports=o},52385:function(t){\"use strict\";var e=Object.prototype.toString;t.exports=function(t){var r=e.call(t),n=\"[object Arguments]\"===r;return n||(n=\"[object Array]\"!==r&&null!==t&&\"object\"==typeof t&&\"number\"==typeof t.length&&t.length>=0&&\"[object Function]\"===e.call(t.callee)),n}},96927:function(t,e,r){\"use strict\";var n=r(99433),i=r(59457)(),a=r(63063),o=Object,s=a(\"Array.prototype.push\"),l=a(\"Object.prototype.propertyIsEnumerable\"),c=i?Object.getOwnPropertySymbols:null;t.exports=function(t,e){if(null==t)throw new TypeError(\"target must be an object\");var r=o(t);if(1===arguments.length)return r;for(var a=1;a<arguments.length;++a){var u=o(arguments[a]),h=n(u),f=i&&(Object.getOwnPropertySymbols||c);if(f)for(var p=f(u),d=0;d<p.length;++d){var m=p[d];l(u,m)&&s(h,m)}for(var g=0;g<h.length;++g){var y=h[g];if(l(u,y)){var v=u[y];r[y]=v}}}return r}},68686:function(t,e,r){\"use strict\";var n=r(96927);t.exports=function(){return Object.assign?function(){if(!Object.assign)return!1;for(var t=\"abcdefghijklmnopqrst\",e=t.split(\"\"),r={},n=0;n<e.length;++n)r[e[n]]=e[n];var i=Object.assign({},r),a=\"\";for(var o in i)a+=o;return t!==a}()||function(){if(!Object.assign||!Object.preventExtensions)return!1;var t=Object.preventExtensions({1:2});try{Object.assign(t,\"xy\")}catch(e){return\"y\"===t[1]}return!1}()?n:Object.assign:n}},59811:function(t){\"use strict\";function e(t,e){if(\"string\"!=typeof t)return[t];var r=[t];\"string\"==typeof e||Array.isArray(e)?e={brackets:e}:e||(e={});var n=e.brackets?Array.isArray(e.brackets)?e.brackets:[e.brackets]:[\"{}\",\"[]\",\"()\"],i=e.escape||\"___\",a=!!e.flat;n.forEach((function(t){var e=new RegExp([\"\\\\\",t[0],\"[^\\\\\",t[0],\"\\\\\",t[1],\"]*\\\\\",t[1]].join(\"\")),n=[];function a(e,a,o){var s=r.push(e.slice(t[0].length,-t[1].length))-1;return n.push(s),i+s+i}r.forEach((function(t,n){for(var i,o=0;t!=i;)if(i=t,t=t.replace(e,a),o++>1e4)throw Error(\"References have circular dependency. Please, check them.\");r[n]=t})),n=n.reverse(),r=r.map((function(e){return n.forEach((function(r){e=e.replace(new RegExp(\"(\\\\\"+i+r+\"\\\\\"+i+\")\",\"g\"),t[0]+\"$1\"+t[1])})),e}))}));var o=new RegExp(\"\\\\\"+i+\"([0-9]+)\\\\\"+i);return a?r:function t(e,r,n){for(var i,a=[],s=0;i=o.exec(e);){if(s++>1e4)throw Error(\"Circular references in parenthesis\");a.push(e.slice(0,i.index)),a.push(t(r[i[1]],r)),e=e.slice(i.index+i[0].length)}return a.push(e),a}(r[0],r)}function r(t,e){if(e&&e.flat){var r,n=e&&e.escape||\"___\",i=t[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 \"+t);r=i,i=i.replace(a,s)}return i}return t.reduce((function t(e,r){return Array.isArray(r)&&(r=r.reduce(t,\"\")),e+r}),\"\");function s(e,r){if(null==t[r])throw Error(\"Reference \"+r+\"is undefined\");return t[r]}}function n(t,n){return Array.isArray(t)?r(t,n):e(t,n)}n.parse=e,n.stringify=r,t.exports=n},5137:function(t,e,r){\"use strict\";var n=r(6807);t.exports=function(t){var e;return arguments.length>1&&(t=arguments),\"string\"==typeof t?t=t.split(/\\s/).map(parseFloat):\"number\"==typeof t&&(t=[t]),t.length&&\"number\"==typeof t[0]?e=1===t.length?{width:t[0],height:t[0],x:0,y:0}:2===t.length?{width:t[0],height:t[1],x:0,y:0}:{x:t[0],y:t[1],width:t[2]-t[0]||0,height:t[3]-t[1]||0}:t&&(e={x:(t=n(t,{left:\"x l left Left\",top:\"y t top Top\",width:\"w width W Width\",height:\"h height W Width\",bottom:\"b bottom Bottom\",right:\"r right Right\"})).left||0,y:t.top||0},null==t.width?t.right?e.width=t.right-e.x:e.width=0:e.width=t.width,null==t.height?t.bottom?e.height=t.bottom-e.y:e.height=0:e.height=t.height),e}},26953:function(t){t.exports=function(t){var i=[];return t.replace(r,(function(t,r,a){var o=r.toLowerCase();for(a=function(t){var e=t.match(n);return e?e.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==e[o])return a.unshift(r),i.push(a);if(a.length<e[o])throw new Error(\"malformed path data\");i.push([r].concat(a.splice(0,e[o])))}})),i};var e={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},r=/([astvzqmhlc])([^astvzqmhlc]*)/gi,n=/-?[0-9]*\\.?[0-9]+(?:e[-+]?\\d+)?/gi},4957:function(t){t.exports=function(t,e){e||(e=[0,\"\"]),t=String(t);var r=parseFloat(t,10);return e[0]=r,e[1]=t.match(/[\\d.\\-\\+]*\\s*(.*)/)[1]||\"\",e}},71879:function(t,e,r){var n=r(33282);(function(){var e,r,i,a,o,s;\"undefined\"!=typeof performance&&null!==performance&&performance.now?t.exports=function(){return performance.now()}:null!=n&&n.hrtime?(t.exports=function(){return(e()-o)/1e6},r=n.hrtime,a=(e=function(){var t;return 1e9*(t=r())[0]+t[1]})(),s=1e9*n.uptime(),o=a-s):Date.now?(t.exports=function(){return Date.now()-i},i=Date.now()):(t.exports=function(){return(new Date).getTime()-i},i=(new Date).getTime())}).call(this)},6807:function(t){\"use strict\";t.exports=function(t,e,n){var i,a,o={};if(\"string\"==typeof e&&(e=r(e)),Array.isArray(e)){var s={};for(a=0;a<e.length;a++)s[e[a]]=!0;e=s}for(i in e)e[i]=r(e[i]);var l={};for(i in e){var c=e[i];if(Array.isArray(c))for(a=0;a<c.length;a++){var u=c[a];if(n&&(l[u]=!0),u in t){if(o[i]=t[u],n)for(var h=a;h<c.length;h++)l[c[h]]=!0;break}}else i in t&&(e[i]&&(o[i]=t[i]),n&&(l[i]=!0))}if(n)for(i in t)l[i]||(o[i]=t[i]);return o};var e={};function r(t){return e[t]?e[t]:(\"string\"==typeof t&&(t=e[t]=t.split(/\\s*,\\s*|\\s+/)),t)}},52773:function(t){t.exports=function(t,e,r,n){var i=t[0],a=t[1],o=!1;void 0===r&&(r=0),void 0===n&&(n=e.length);for(var s=n-r,l=0,c=s-1;l<s;c=l++){var u=e[l+r][0],h=e[l+r][1],f=e[c+r][0],p=e[c+r][1];h>a!=p>a&&i<(f-u)*(a-h)/(p-h)+u&&(o=!o)}return o}},11516:function(t,e,r){var n,i=r(42391),a=r(92990),o=r(26202),s=r(22222),l=r(17527),c=r(24491),u=!1,h=a();function f(t,e,r){var i=n.segments(t),a=n.segments(e),o=r(n.combine(i,a));return n.polygon(o)}n={buildLog:function(t){return!0===t?u=i():!1===t&&(u=!1),!1!==u&&u.list},epsilon:function(t){return h.epsilon(t)},segments:function(t){var e=o(!0,h,u);return t.regions.forEach(e.addRegion),{segments:e.calculate(t.inverted),inverted:t.inverted}},combine:function(t,e){return{combined:o(!1,h,u).calculate(t.segments,t.inverted,e.segments,e.inverted),inverted1:t.inverted,inverted2:e.inverted}},selectUnion:function(t){return{segments:l.union(t.combined,u),inverted:t.inverted1||t.inverted2}},selectIntersect:function(t){return{segments:l.intersect(t.combined,u),inverted:t.inverted1&&t.inverted2}},selectDifference:function(t){return{segments:l.difference(t.combined,u),inverted:t.inverted1&&!t.inverted2}},selectDifferenceRev:function(t){return{segments:l.differenceRev(t.combined,u),inverted:!t.inverted1&&t.inverted2}},selectXor:function(t){return{segments:l.xor(t.combined,u),inverted:t.inverted1!==t.inverted2}},polygon:function(t){return{regions:s(t.segments,h,u),inverted:t.inverted}},polygonFromGeoJSON:function(t){return c.toPolygon(n,t)},polygonToGeoJSON:function(t){return c.fromPolygon(n,h,t)},union:function(t,e){return f(t,e,n.selectUnion)},intersect:function(t,e){return f(t,e,n.selectIntersect)},difference:function(t,e){return f(t,e,n.selectDifference)},differenceRev:function(t,e){return f(t,e,n.selectDifferenceRev)},xor:function(t,e){return f(t,e,n.selectXor)}},\"object\"==typeof window&&(window.PolyBool=n),t.exports=n},42391:function(t){t.exports=function(){var t,e=0,r=!1;function n(e,r){return t.list.push({type:e,data:r?JSON.parse(JSON.stringify(r)):void 0}),t}return t={list:[],segmentId:function(){return e++},checkIntersection:function(t,e){return n(\"check\",{seg1:t,seg2:e})},segmentChop:function(t,e){return n(\"div_seg\",{seg:t,pt:e}),n(\"chop\",{seg:t,pt:e})},statusRemove:function(t){return n(\"pop_seg\",{seg:t})},segmentUpdate:function(t){return n(\"seg_update\",{seg:t})},segmentNew:function(t,e){return n(\"new_seg\",{seg:t,primary:e})},segmentRemove:function(t){return n(\"rem_seg\",{seg:t})},tempStatus:function(t,e,r){return n(\"temp_status\",{seg:t,above:e,below:r})},rewind:function(t){return n(\"rewind\",{seg:t})},status:function(t,e,r){return n(\"status\",{seg:t,above:e,below:r})},vert:function(e){return e===r?t:(r=e,n(\"vert\",{x:e}))},log:function(t){return\"string\"!=typeof t&&(t=JSON.stringify(t,!1,\" \")),n(\"log\",{txt:t})},reset:function(){return n(\"reset\")},selected:function(t){return n(\"selected\",{segs:t})},chainStart:function(t){return n(\"chain_start\",{seg:t})},chainRemoveHead:function(t,e){return n(\"chain_rem_head\",{index:t,pt:e})},chainRemoveTail:function(t,e){return n(\"chain_rem_tail\",{index:t,pt:e})},chainNew:function(t,e){return n(\"chain_new\",{pt1:t,pt2:e})},chainMatch:function(t){return n(\"chain_match\",{index:t})},chainClose:function(t){return n(\"chain_close\",{index:t})},chainAddHead:function(t,e){return n(\"chain_add_head\",{index:t,pt:e})},chainAddTail:function(t,e){return n(\"chain_add_tail\",{index:t,pt:e})},chainConnect:function(t,e){return n(\"chain_con\",{index1:t,index2:e})},chainReverse:function(t){return n(\"chain_rev\",{index:t})},chainJoin:function(t,e){return n(\"chain_join\",{index1:t,index2:e})},done:function(){return n(\"done\")}}}},92990:function(t){t.exports=function(t){\"number\"!=typeof t&&(t=1e-10);var e={epsilon:function(e){return\"number\"==typeof e&&(t=e),t},pointAboveOrOnLine:function(e,r,n){var i=r[0],a=r[1],o=n[0],s=n[1],l=e[0];return(o-i)*(e[1]-a)-(s-a)*(l-i)>=-t},pointBetween:function(e,r,n){var i=e[1]-r[1],a=n[0]-r[0],o=e[0]-r[0],s=n[1]-r[1],l=o*a+i*s;return!(l<t||l-(a*a+s*s)>-t)},pointsSameX:function(e,r){return Math.abs(e[0]-r[0])<t},pointsSameY:function(e,r){return Math.abs(e[1]-r[1])<t},pointsSame:function(t,r){return e.pointsSameX(t,r)&&e.pointsSameY(t,r)},pointsCompare:function(t,r){return e.pointsSameX(t,r)?e.pointsSameY(t,r)?0:t[1]<r[1]?-1:1:t[0]<r[0]?-1:1},pointsCollinear:function(e,r,n){var i=e[0]-r[0],a=e[1]-r[1],o=r[0]-n[0],s=r[1]-n[1];return Math.abs(i*s-o*a)<t},linesIntersect:function(e,r,n,i){var a=r[0]-e[0],o=r[1]-e[1],s=i[0]-n[0],l=i[1]-n[1],c=a*l-o*s;if(Math.abs(c)<t)return!1;var u=e[0]-n[0],h=e[1]-n[1],f=(s*h-l*u)/c,p=(a*h-o*u)/c,d={alongA:0,alongB:0,pt:[e[0]+f*a,e[1]+f*o]};return d.alongA=f<=-t?-2:f<t?-1:f-1<=-t?0:f-1<t?1:2,d.alongB=p<=-t?-2:p<t?-1:p-1<=-t?0:p-1<t?1:2,d},pointInsideRegion:function(e,r){for(var n=e[0],i=e[1],a=r[r.length-1][0],o=r[r.length-1][1],s=!1,l=0;l<r.length;l++){var c=r[l][0],u=r[l][1];u-i>t!=o-i>t&&(a-c)*(i-u)/(o-u)+c-n>t&&(s=!s),a=c,o=u}return s}};return e}},24491:function(t){var e={toPolygon:function(t,e){function r(e){if(e.length<=0)return t.segments({inverted:!1,regions:[]});function r(e){var r=e.slice(0,e.length-1);return t.segments({inverted:!1,regions:[r]})}for(var n=r(e[0]),i=1;i<e.length;i++)n=t.selectDifference(t.combine(n,r(e[i])));return n}if(\"Polygon\"===e.type)return t.polygon(r(e.coordinates));if(\"MultiPolygon\"===e.type){for(var n=t.segments({inverted:!1,regions:[]}),i=0;i<e.coordinates.length;i++)n=t.selectUnion(t.combine(n,r(e.coordinates[i])));return t.polygon(n)}throw new Error(\"PolyBool: Cannot convert GeoJSON object to PolyBool polygon\")},fromPolygon:function(t,e,r){function n(t,r){return e.pointInsideRegion([.5*(t[0][0]+t[1][0]),.5*(t[0][1]+t[1][1])],r)}function i(t){return{region:t,children:[]}}r=t.polygon(t.segments(r));var a=i(null);function o(t,e){for(var r=0;r<t.children.length;r++)if(n(e,(s=t.children[r]).region))return void o(s,e);var a=i(e);for(r=0;r<t.children.length;r++){var s;n((s=t.children[r]).region,e)&&(a.children.push(s),t.children.splice(r,1),r--)}t.children.push(a)}for(var s=0;s<r.regions.length;s++){var l=r.regions[s];l.length<3||o(a,l)}function c(t,e){for(var r=0,n=t[t.length-1][0],i=t[t.length-1][1],a=[],o=0;o<t.length;o++){var s=t[o][0],l=t[o][1];a.push([s,l]),r+=l*n-s*i,n=s,i=l}return r<0!==e&&a.reverse(),a.push([a[0][0],a[0][1]]),a}var u=[];function h(t){var e=[c(t.region,!1)];u.push(e);for(var r=0;r<t.children.length;r++)e.push(f(t.children[r]))}function f(t){for(var e=0;e<t.children.length;e++)h(t.children[e]);return c(t.region,!0)}for(s=0;s<a.children.length;s++)h(a.children[s]);return u.length<=0?{type:\"Polygon\",coordinates:[]}:1==u.length?{type:\"Polygon\",coordinates:u[0]}:{type:\"MultiPolygon\",coordinates:u}}};t.exports=e},26202:function(t,e,r){var n=r(48916);t.exports=function(t,e,r){function i(t,e,n){return{id:r?r.segmentId():-1,start:t,end:e,myFill:{above:n.myFill.above,below:n.myFill.below},otherFill:null}}var a=n.create();function o(t,r){a.insertBefore(t,(function(n){return i=t.isStart,a=t.pt,o=r,s=n.isStart,l=n.pt,c=n.other.pt,(0!==(u=e.pointsCompare(a,l))?u:e.pointsSame(o,c)?0:i!==s?i?1:-1:e.pointAboveOrOnLine(o,s?l:c,s?c:l)?1:-1)<0;var i,a,o,s,l,c,u}))}function s(t,e){var r=function(t,e){var r=n.node({isStart:!0,pt:t.start,seg:t,primary:e,other:null,status:null});return o(r,t.end),r}(t,e);return function(t,e,r){var i=n.node({isStart:!1,pt:e.end,seg:e,primary:r,other:t,status:null});t.other=i,o(i,t.pt)}(r,t,e),r}function l(t,e){var n=i(e,t.seg.end,t.seg);return function(t,e){r&&r.segmentChop(t.seg,e),t.other.remove(),t.seg.end=e,t.other.pt=e,o(t.other,t.pt)}(t,e),s(n,t.primary)}function c(i,o){var s=n.create();function c(t){return s.findTransition((function(r){var n,i,a,o,s,l;return n=t,i=r.ev,a=n.seg.start,o=n.seg.end,s=i.seg.start,l=i.seg.end,(e.pointsCollinear(a,s,l)?e.pointsCollinear(o,s,l)||e.pointAboveOrOnLine(o,s,l)?1:-1:e.pointAboveOrOnLine(a,s,l)?1:-1)>0}))}function u(t,n){var i=t.seg,a=n.seg,o=i.start,s=i.end,c=a.start,u=a.end;r&&r.checkIntersection(i,a);var h=e.linesIntersect(o,s,c,u);if(!1===h){if(!e.pointsCollinear(o,s,c))return!1;if(e.pointsSame(o,u)||e.pointsSame(s,c))return!1;var f=e.pointsSame(o,c),p=e.pointsSame(s,u);if(f&&p)return n;var d=!f&&e.pointBetween(o,c,u),m=!p&&e.pointBetween(s,c,u);if(f)return m?l(n,s):l(t,u),n;d&&(p||(m?l(n,s):l(t,u)),l(n,o))}else 0===h.alongA&&(-1===h.alongB?l(t,c):0===h.alongB?l(t,h.pt):1===h.alongB&&l(t,u)),0===h.alongB&&(-1===h.alongA?l(n,o):0===h.alongA?l(n,h.pt):1===h.alongA&&l(n,s));return!1}for(var h=[];!a.isEmpty();){var f=a.getHead();if(r&&r.vert(f.pt[0]),f.isStart){r&&r.segmentNew(f.seg,f.primary);var p=c(f),d=p.before?p.before.ev:null,m=p.after?p.after.ev:null;function g(){if(d){var t=u(f,d);if(t)return t}return!!m&&u(f,m)}r&&r.tempStatus(f.seg,!!d&&d.seg,!!m&&m.seg);var y,v,x=g();if(x)t?(v=null===f.seg.myFill.below||f.seg.myFill.above!==f.seg.myFill.below)&&(x.seg.myFill.above=!x.seg.myFill.above):x.seg.otherFill=f.seg.myFill,r&&r.segmentUpdate(x.seg),f.other.remove(),f.remove();if(a.getHead()!==f){r&&r.rewind(f.seg);continue}t?(v=null===f.seg.myFill.below||f.seg.myFill.above!==f.seg.myFill.below,f.seg.myFill.below=m?m.seg.myFill.above:i,f.seg.myFill.above=v?!f.seg.myFill.below:f.seg.myFill.below):null===f.seg.otherFill&&(y=m?f.primary===m.primary?m.seg.otherFill.above:m.seg.myFill.above:f.primary?o:i,f.seg.otherFill={above:y,below:y}),r&&r.status(f.seg,!!d&&d.seg,!!m&&m.seg),f.other.status=p.insert(n.node({ev:f}))}else{var _=f.status;if(null===_)throw new Error(\"PolyBool: Zero-length segment detected; your epsilon is probably too small or too large\");if(s.exists(_.prev)&&s.exists(_.next)&&u(_.prev.ev,_.next.ev),r&&r.statusRemove(_.ev.seg),_.remove(),!f.primary){var b=f.seg.myFill;f.seg.myFill=f.seg.otherFill,f.seg.otherFill=b}h.push(f.seg)}a.getHead().remove()}return r&&r.done(),h}return t?{addRegion:function(t){for(var n,i,a,o=t[t.length-1],l=0;l<t.length;l++){n=o,o=t[l];var c=e.pointsCompare(n,o);0!==c&&s((i=c<0?n:o,a=c<0?o:n,{id:r?r.segmentId():-1,start:i,end:a,myFill:{above:null,below:null},otherFill:null}),!0)}},calculate:function(t){return c(t,!1)}}:{calculate:function(t,e,r,n){return t.forEach((function(t){s(i(t.start,t.end,t),!0)})),r.forEach((function(t){s(i(t.start,t.end,t),!1)})),c(e,n)}}}},48916:function(t){t.exports={create:function(){var t={root:{root:!0,next:null},exists:function(e){return null!==e&&e!==t.root},isEmpty:function(){return null===t.root.next},getHead:function(){return t.root.next},insertBefore:function(e,r){for(var n=t.root,i=t.root.next;null!==i;){if(r(i))return e.prev=i.prev,e.next=i,i.prev.next=e,void(i.prev=e);n=i,i=i.next}n.next=e,e.prev=n,e.next=null},findTransition:function(e){for(var r=t.root,n=t.root.next;null!==n&&!e(n);)r=n,n=n.next;return{before:r===t.root?null:r,after:n,insert:function(t){return t.prev=r,t.next=n,r.next=t,null!==n&&(n.prev=t),t}}}};return t},node:function(t){return t.prev=null,t.next=null,t.remove=function(){t.prev.next=t.next,t.next&&(t.next.prev=t.prev),t.prev=null,t.next=null},t}}},22222:function(t){t.exports=function(t,e,r){var n=[],i=[];return t.forEach((function(t){var a=t.start,o=t.end;if(e.pointsSame(a,o))console.warn(\"PolyBool: Warning: Zero-length segment detected; your epsilon is probably too small or too large\");else{r&&r.chainStart(t);for(var s={index:0,matches_head:!1,matches_pt1:!1},l={index:0,matches_head:!1,matches_pt1:!1},c=s,u=0;u<n.length;u++){var h=(g=n[u])[0],f=(g[1],g[g.length-1]);if(g[g.length-2],e.pointsSame(h,a)){if(k(u,!0,!0))break}else if(e.pointsSame(h,o)){if(k(u,!0,!1))break}else if(e.pointsSame(f,a)){if(k(u,!1,!0))break}else if(e.pointsSame(f,o)&&k(u,!1,!1))break}if(c===s)return n.push([a,o]),void(r&&r.chainNew(a,o));if(c===l){r&&r.chainMatch(s.index);var p=s.index,d=s.matches_pt1?o:a,m=s.matches_head,g=n[p],y=m?g[0]:g[g.length-1],v=m?g[1]:g[g.length-2],x=m?g[g.length-1]:g[0],_=m?g[g.length-2]:g[1];return e.pointsCollinear(v,y,d)&&(m?(r&&r.chainRemoveHead(s.index,d),g.shift()):(r&&r.chainRemoveTail(s.index,d),g.pop()),y=v),e.pointsSame(x,d)?(n.splice(p,1),e.pointsCollinear(_,x,y)&&(m?(r&&r.chainRemoveTail(s.index,y),g.pop()):(r&&r.chainRemoveHead(s.index,y),g.shift())),r&&r.chainClose(s.index),void i.push(g)):void(m?(r&&r.chainAddHead(s.index,d),g.unshift(d)):(r&&r.chainAddTail(s.index,d),g.push(d)))}var b=s.index,w=l.index;r&&r.chainConnect(b,w);var T=n[b].length<n[w].length;s.matches_head?l.matches_head?T?(A(b),M(b,w)):(A(w),M(w,b)):M(w,b):l.matches_head?M(b,w):T?(A(b),M(w,b)):(A(w),M(b,w))}function k(t,e,r){return c.index=t,c.matches_head=e,c.matches_pt1=r,c===s?(c=l,!1):(c=null,!0)}function A(t){r&&r.chainReverse(t),n[t].reverse()}function M(t,i){var a=n[t],o=n[i],s=a[a.length-1],l=a[a.length-2],c=o[0],u=o[1];e.pointsCollinear(l,s,c)&&(r&&r.chainRemoveTail(t,s),a.pop(),s=l),e.pointsCollinear(s,c,u)&&(r&&r.chainRemoveHead(i,c),o.shift()),r&&r.chainJoin(t,i),n[t]=a.concat(o),n.splice(i,1)}})),i}},17527:function(t){function e(t,e,r){var n=[];return t.forEach((function(t){var i=(t.myFill.above?8:0)+(t.myFill.below?4:0)+(t.otherFill&&t.otherFill.above?2:0)+(t.otherFill&&t.otherFill.below?1:0);0!==e[i]&&n.push({id:r?r.segmentId():-1,start:t.start,end:t.end,myFill:{above:1===e[i],below:2===e[i]},otherFill:null})})),r&&r.selected(n),n}var r={union:function(t,r){return e(t,[0,2,1,0,2,2,0,0,1,0,1,0,0,0,0,0],r)},intersect:function(t,r){return e(t,[0,0,0,0,0,2,0,2,0,0,1,1,0,2,1,0],r)},difference:function(t,r){return e(t,[0,0,0,0,2,0,2,0,1,1,0,0,0,1,2,0],r)},differenceRev:function(t,r){return e(t,[0,2,1,0,0,0,1,1,0,2,0,2,0,0,0,0],r)},xor:function(t,r){return e(t,[0,2,1,0,2,0,0,1,1,0,0,2,0,1,2,0],r)}};t.exports=r},3944:function(t,e,r){\"use strict\";var n=r(90386).Transform,i=r(79743);function a(){n.call(this,{readableObjectMode:!0})}function o(t,e,r){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack||\"\",this.name=this.constructor.name,this.message=t,e&&(this.code=e),r&&(this.statusCode=r)}a.prototype=Object.create(n.prototype),a.prototype.constructor=a,i(a.prototype),e.rU=function(t,e,r){for(var n=e,i=0;i<r.length;)if(t[n++]!==r[i++])return!1;return!0},e.VG=function(t,e){var r=[],n=0;if(e&&\"hex\"===e)for(;n<t.length;)r.push(parseInt(t.slice(n,n+2),16)),n+=2;else for(;n<t.length;n++)r.push(255&t.charCodeAt(n));return r},e.$l=function(t,e){return t[e]|t[e+1]<<8},e.bc=function(t,e){return t[e+1]|t[e]<<8},e.tF=function(t,e){return t[e]|t[e+1]<<8|t[e+2]<<16|16777216*t[e+3]},e.bb=function(t,e){return t[e+3]|t[e+2]<<8|t[e+1]<<16|16777216*t[e]},o.prototype=Object.create(Error.prototype),o.prototype.constructor=o},19789:function(t){\"use strict\";function e(t,e){var r=new Error(t);return r.code=e,r}function r(t){try{return decodeURIComponent(escape(t))}catch(e){return t}}function n(t,r,n){this.input=t.subarray(r,n),this.start=r;var i=String.fromCharCode.apply(null,this.input.subarray(0,4));if(\"II*\\0\"!==i&&\"MM\\0*\"!==i)throw e(\"invalid TIFF signature\",\"EBADDATA\");this.big_endian=\"M\"===i[0]}n.prototype.each=function(t){this.aborted=!1;var e=this.read_uint32(4);for(this.ifds_to_read=[{id:0,offset:e}];this.ifds_to_read.length>0&&!this.aborted;){var r=this.ifds_to_read.shift();r.offset&&this.scan_ifd(r.id,r.offset,t)}},n.prototype.read_uint16=function(t){var r=this.input;if(t+2>r.length)throw e(\"unexpected EOF\",\"EBADDATA\");return this.big_endian?256*r[t]+r[t+1]:r[t]+256*r[t+1]},n.prototype.read_uint32=function(t){var r=this.input;if(t+4>r.length)throw e(\"unexpected EOF\",\"EBADDATA\");return this.big_endian?16777216*r[t]+65536*r[t+1]+256*r[t+2]+r[t+3]:r[t]+256*r[t+1]+65536*r[t+2]+16777216*r[t+3]},n.prototype.is_subifd_link=function(t,e){return 0===t&&34665===e||0===t&&34853===e||34665===t&&40965===e},n.prototype.exif_format_length=function(t){switch(t){case 1:case 2:case 6:case 7:return 1;case 3:case 8:return 2;case 4:case 9:case 11:return 4;case 5:case 10:case 12:return 8;default:return 0}},n.prototype.exif_format_read=function(t,e){var r;switch(t){case 1:case 2:return this.input[e];case 6:return(r=this.input[e])|33554430*(128&r);case 3:return this.read_uint16(e);case 8:return(r=this.read_uint16(e))|131070*(32768&r);case 4:return this.read_uint32(e);case 9:return 0|this.read_uint32(e);default:return null}},n.prototype.scan_ifd=function(t,n,i){var a=this.read_uint16(n);n+=2;for(var o=0;o<a;o++){var s=this.read_uint16(n),l=this.read_uint16(n+2),c=this.read_uint32(n+4),u=this.exif_format_length(l),h=c*u,f=h<=4?n+8:this.read_uint32(n+8),p=!1;if(f+h>this.input.length)throw e(\"unexpected EOF\",\"EBADDATA\");for(var d=[],m=f,g=0;g<c;g++,m+=u){var y=this.exif_format_read(l,m);if(null===y){d=null;break}d.push(y)}if(Array.isArray(d)&&2===l&&(d=r(String.fromCharCode.apply(null,d)))&&\"\\0\"===d[d.length-1]&&(d=d.slice(0,-1)),this.is_subifd_link(t,s)&&Array.isArray(d)&&Number.isInteger(d[0])&&d[0]>0&&(this.ifds_to_read.push({id:s,offset:d[0]}),p=!0),!1===i({is_big_endian:this.big_endian,ifd:t,tag:s,format:l,count:c,entry_offset:n+this.start,data_length:h,data_offset:f+this.start,value:d,is_subifd_link:p}))return void(this.aborted=!0);n+=12}0===t&&this.ifds_to_read.push({id:1,offset:this.read_uint32(n)})},t.exports.ExifParser=n,t.exports.get_orientation=function(t){var e=0;try{return new n(t,0,t.length).each((function(t){if(0===t.ifd&&274===t.tag&&Array.isArray(t.value))return e=t.value[0],!1})),e}catch(t){return-1}}},20186:function(t,e,r){\"use strict\";var n=r(3944).bc,i=r(3944).bb;function a(t,e){if(t.length<4+e)return null;var r=i(t,e);return t.length<r+e||r<8?null:{boxtype:String.fromCharCode.apply(null,t.slice(e+4,e+8)),data:t.slice(e+8,e+r),end:e+r}}function o(t,e){for(var r=0;;){var n=a(t,r);if(!n)break;switch(n.boxtype){case\"ispe\":e.sizes.push({width:i(n.data,4),height:i(n.data,8)});break;case\"irot\":e.transforms.push({type:\"irot\",value:3&n.data[0]});break;case\"imir\":e.transforms.push({type:\"imir\",value:1&n.data[0]})}r=n.end}}function s(t,e,r){for(var n=0,i=0;i<r;i++)n=256*n+(t[e+i]||0);return n}function l(t,e){for(var r=t[4]>>4&15,i=15&t[4],a=t[5]>>4&15,o=n(t,6),l=8,c=0;c<o;c++){var u=n(t,l),h=n(t,l+=2),f=s(t,l+=2,a),p=n(t,l+=a);if(l+=2,0===h&&1===p){var d=s(t,l,r),m=s(t,l+r,i);e.item_loc[u]={length:m,offset:d+f}}l+=p*(r+i)}}function c(t,e){for(var r=n(t,4),i=6,o=0;o<r;o++){var s=a(t,i);if(!s)break;if(\"infe\"===s.boxtype){for(var l=n(s.data,4),c=\"\",u=8;u<s.data.length&&s.data[u];u++)c+=String.fromCharCode(s.data[u]);e.item_inf[c]=l}i=s.end}}function u(t,e){for(var r=0;;){var n=a(t,r);if(!n)break;\"ipco\"===n.boxtype&&o(n.data,e),r=n.end}}t.exports.unbox=a,t.exports.readSizeFromMeta=function(t){var e={sizes:[],transforms:[],item_inf:{},item_loc:{}};if(function(t,e){for(var r=4;;){var n=a(t,r);if(!n)break;\"iprp\"===n.boxtype&&u(n.data,e),\"iloc\"===n.boxtype&&l(n.data,e),\"iinf\"===n.boxtype&&c(n.data,e),r=n.end}}(t,e),e.sizes.length){var r,n,i,o=(n=(r=e.sizes).reduce((function(t,e){return t.width>e.width||t.width===e.width&&t.height>e.height?t:e})),i=r.reduce((function(t,e){return t.height>e.height||t.height===e.height&&t.width>e.width?t:e})),n.width>i.height||n.width===i.height&&n.height>i.width?n:i),s=1;e.transforms.forEach((function(t){var e={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\"===t.type&&(s=0===t.value?r[s]:e[s=e[s=r[s]]]),\"irot\"===t.type)for(var n=0;n<t.value;n++)s=e[s]}));var h=null;return e.item_inf.Exif&&(h=e.item_loc[e.item_inf.Exif]),{width:o.width,height:o.height,orientation:e.transforms.length?s:null,variants:e.sizes,exif_location:h}}},t.exports.getMimeType=function(t){var e=String.fromCharCode.apply(null,t.slice(0,4)),r={};r[e]=!0;for(var n=8;n<t.length;n+=4)r[String.fromCharCode.apply(null,t.slice(n,n+4))]=!0;if(r.mif1||r.msf1||r.miaf)return\"avif\"===e||\"avis\"===e||\"avio\"===e?{type:\"avif\",mime:\"image/avif\"}:\"heic\"===e||\"heix\"===e?{type:\"heic\",mime:\"image/heic\"}:\"hevc\"===e||\"hevx\"===e?{type:\"heic\",mime:\"image/heic-sequence\"}:r.avif||r.avis?{type:\"avif\",mime:\"image/avif\"}:r.heic||r.heix||r.hevc||r.hevx||r.heis?r.msf1?{type:\"heif\",mime:\"image/heif-sequence\"}:{type:\"heif\",mime:\"image/heif\"}:{type:\"avif\",mime:\"image/avif\"}}},31149:function(t,e,r){\"use strict\";var n=r(3944).VG,i=r(3944).rU,a=r(3944).bb,o=r(20186),s=r(19789),l=n(\"ftyp\");t.exports=function(t){if(i(t,4,l)){var e=o.unbox(t,0);if(e){var r=o.getMimeType(e.data);if(r){for(var n,c=e.end;;){var u=o.unbox(t,c);if(!u)break;if(c=u.end,\"mdat\"===u.boxtype)return;if(\"meta\"===u.boxtype){n=u.data;break}}if(n){var h=o.readSizeFromMeta(n);if(h){var f={width:h.width,height:h.height,type:r.type,mime:r.mime,wUnits:\"px\",hUnits:\"px\"};if(h.variants.length>1&&(f.variants=h.variants),h.orientation&&(f.orientation=h.orientation),h.exif_location&&h.exif_location.offset+h.exif_location.length<=t.length){var p=a(t,h.exif_location.offset),d=t.slice(h.exif_location.offset+p+4,h.exif_location.offset+h.exif_location.length),m=s.get_orientation(d);m>0&&(f.orientation=m)}return f}}}}}}},78218:function(t,e,r){\"use strict\";var n=r(3944).VG,i=r(3944).rU,a=r(3944).$l,o=n(\"BM\");t.exports=function(t){if(!(t.length<26)&&i(t,0,o))return{width:a(t,18),height:a(t,22),type:\"bmp\",mime:\"image/bmp\",wUnits:\"px\",hUnits:\"px\"}}},37495:function(t,e,r){\"use strict\";var n=r(3944).VG,i=r(3944).rU,a=r(3944).$l,o=n(\"GIF87a\"),s=n(\"GIF89a\");t.exports=function(t){if(!(t.length<10)&&(i(t,0,o)||i(t,0,s)))return{width:a(t,6),height:a(t,8),type:\"gif\",mime:\"image/gif\",wUnits:\"px\",hUnits:\"px\"}}},88708:function(t,e,r){\"use strict\";var n=r(3944).$l;t.exports=function(t){var e=n(t,0),r=n(t,2),i=n(t,4);if(0===e&&1===r&&i){for(var a=[],o={width:0,height:0},s=0;s<i;s++){var l=t[6+16*s]||256,c=t[6+16*s+1]||256,u={width:l,height:c};a.push(u),(l>o.width||c>o.height)&&(o=u)}return{width:o.width,height:o.height,variants:a,type:\"ico\",mime:\"image/x-icon\",wUnits:\"px\",hUnits:\"px\"}}}},13827:function(t,e,r){\"use strict\";var n=r(3944).bc,i=r(3944).VG,a=r(3944).rU,o=r(19789),s=i(\"Exif\\0\\0\");t.exports=function(t){if(!(t.length<2)&&255===t[0]&&216===t[1]&&255===t[2])for(var e=2;;){for(;;){if(t.length-e<2)return;if(255===t[e++])break}for(var r,i,l=t[e++];255===l;)l=t[e++];if(208<=l&&l<=217||1===l)r=0;else{if(!(192<=l&&l<=254))return;if(t.length-e<2)return;r=n(t,e)-2,e+=2}if(217===l||218===l)return;if(225===l&&r>=10&&a(t,e,s)&&(i=o.get_orientation(t.slice(e+6,e+r))),r>=5&&192<=l&&l<=207&&196!==l&&200!==l&&204!==l){if(t.length-e<r)return;var c={width:n(t,e+3),height:n(t,e+1),type:\"jpg\",mime:\"image/jpeg\",wUnits:\"px\",hUnits:\"px\"};return i>0&&(c.orientation=i),c}e+=r}}},46594:function(t,e,r){\"use strict\";var n=r(3944).VG,i=r(3944).rU,a=r(3944).bb,o=n(\"‰PNG\\r\\n\u001a\\n\"),s=n(\"IHDR\");t.exports=function(t){if(!(t.length<24)&&i(t,0,o)&&i(t,12,s))return{width:a(t,16),height:a(t,20),type:\"png\",mime:\"image/png\",wUnits:\"px\",hUnits:\"px\"}}},13198:function(t,e,r){\"use strict\";var n=r(3944).VG,i=r(3944).rU,a=r(3944).bb,o=n(\"8BPS\\0\u0001\");t.exports=function(t){if(!(t.length<22)&&i(t,0,o))return{width:a(t,18),height:a(t,14),type:\"psd\",mime:\"image/vnd.adobe.photoshop\",wUnits:\"px\",hUnits:\"px\"}}},94203:function(t){\"use strict\";function e(t){return\"number\"==typeof t&&isFinite(t)&&t>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(t){return s.test(t)?t.match(s)[0]:\"px\"}t.exports=function(t){if(function(t){var e,r=0,n=t.length;for(239===t[0]&&187===t[1]&&191===t[2]&&(r=3);r<n&&(32===(e=t[r])||9===e||13===e||10===e);)r++;return r!==n&&60===t[r]}(t)){for(var s=\"\",c=0;c<t.length;c++)s+=String.fromCharCode(t[c]);var u=(s.match(r)||[\"\"])[0];if(n.test(u)){var h=function(t){var e=t.match(i),r=t.match(a),n=t.match(o);return{width:e&&(e[1]||e[2]),height:r&&(r[1]||r[2]),viewbox:n&&(n[1]||n[2])}}(u),f=parseFloat(h.width),p=parseFloat(h.height);if(h.width&&h.height){if(!e(f)||!e(p))return;return{width:f,height:p,type:\"svg\",mime:\"image/svg+xml\",wUnits:l(h.width),hUnits:l(h.height)}}var d=(h.viewbox||\"\").split(\" \"),m={width:d[2],height:d[3]},g=parseFloat(m.width),y=parseFloat(m.height);if(e(g)&&e(y)&&l(m.width)===l(m.height)){var v=g/y;if(h.width){if(!e(f))return;return{width:f,height:f/v,type:\"svg\",mime:\"image/svg+xml\",wUnits:l(h.width),hUnits:l(h.width)}}if(h.height){if(!e(p))return;return{width:p*v,height:p,type:\"svg\",mime:\"image/svg+xml\",wUnits:l(h.height),hUnits:l(h.height)}}return{width:g,height:y,type:\"svg\",mime:\"image/svg+xml\",wUnits:l(m.width),hUnits:l(m.height)}}}}}},46966:function(t,e,r){\"use strict\";var n=r(3944).VG,i=r(3944).rU,a=r(3944).$l,o=r(3944).bc,s=r(3944).tF,l=r(3944).bb,c=n(\"II*\\0\"),u=n(\"MM\\0*\");function h(t,e,r){return r?o(t,e):a(t,e)}function f(t,e,r){return r?l(t,e):s(t,e)}function p(t,e,r){var n=h(t,e+2,r);return 1!==f(t,e+4,r)||3!==n&&4!==n?null:3===n?h(t,e+8,r):f(t,e+8,r)}t.exports=function(t){if(!(t.length<8)&&(i(t,0,c)||i(t,0,u))){var e=77===t[0],r=f(t,4,e)-8;if(!(r<0)){var n=r+8;if(!(t.length-n<2)){var a=12*h(t,n+0,e);if(!(a<=0||(n+=2,t.length-n<a))){var o,s,l,d;for(o=0;o<a;o+=12)256===(d=h(t,n+o,e))?s=p(t,n+o,e):257===d&&(l=p(t,n+o,e));return s&&l?{width:s,height:l,type:\"tiff\",mime:\"image/tiff\",wUnits:\"px\",hUnits:\"px\"}:void 0}}}}}},88023:function(t,e,r){\"use strict\";var n=r(3944).VG,i=r(3944).rU,a=r(3944).$l,o=r(3944).tF,s=r(19789),l=n(\"RIFF\"),c=n(\"WEBP\");function u(t,e){if(157===t[e+3]&&1===t[e+4]&&42===t[e+5])return{width:16383&a(t,e+6),height:16383&a(t,e+8),type:\"webp\",mime:\"image/webp\",wUnits:\"px\",hUnits:\"px\"}}function h(t,e){if(47===t[e]){var r=o(t,e+1);return{width:1+(16383&r),height:1+(r>>14&16383),type:\"webp\",mime:\"image/webp\",wUnits:\"px\",hUnits:\"px\"}}}function f(t,e){return{width:1+(t[e+6]<<16|t[e+5]<<8|t[e+4]),height:1+(t[e+9]<<e|t[e+8]<<8|t[e+7]),type:\"webp\",mime:\"image/webp\",wUnits:\"px\",hUnits:\"px\"}}t.exports=function(t){if(!(t.length<16)&&(i(t,0,l)||i(t,8,c))){var e=12,r=null,n=0,a=o(t,4)+8;if(!(a>t.length)){for(;e+8<a;)if(0!==t[e]){var p=String.fromCharCode.apply(null,t.slice(e,e+4)),d=o(t,e+4);\"VP8 \"===p&&d>=10?r=r||u(t,e+8):\"VP8L\"===p&&d>=9?r=r||h(t,e+8):\"VP8X\"===p&&d>=10?r=r||f(t,e+8):\"EXIF\"===p&&(n=s.get_orientation(t.slice(e+8,e+8+d)),e=1/0),e+=8+d}else e++;if(r)return n>0&&(r.orientation=n),r}}}},43751:function(t,e,r){\"use strict\";t.exports={avif:r(31149),bmp:r(78218),gif:r(37495),ico:r(88708),jpeg:r(13827),png:r(46594),psd:r(13198),svg:r(94203),tiff:r(46966),webp:r(88023)}},19490:function(t,e,r){\"use strict\";var n=r(43751);t.exports=function(t){return function(t){for(var e=Object.keys(n),r=0;r<e.length;r++){var i=n[e[r]](t);if(i)return i}return null}(t)},t.exports.parsers=n},33282:function(t){var e,r,n=t.exports={};function i(){throw new Error(\"setTimeout has not been defined\")}function a(){throw new Error(\"clearTimeout has not been defined\")}function o(t){if(e===setTimeout)return setTimeout(t,0);if((e===i||!e)&&setTimeout)return e=setTimeout,setTimeout(t,0);try{return e(t,0)}catch(r){try{return e.call(null,t,0)}catch(r){return e.call(this,t,0)}}}!function(){try{e=\"function\"==typeof setTimeout?setTimeout:i}catch(t){e=i}try{r=\"function\"==typeof clearTimeout?clearTimeout:a}catch(t){r=a}}();var s,l=[],c=!1,u=-1;function h(){c&&s&&(c=!1,s.length?l=s.concat(l):u=-1,l.length&&f())}function f(){if(!c){var t=o(h);c=!0;for(var e=l.length;e;){for(s=l,l=[];++u<e;)s&&s[u].run();u=-1,e=l.length}s=null,c=!1,function(t){if(r===clearTimeout)return clearTimeout(t);if((r===a||!r)&&clearTimeout)return r=clearTimeout,clearTimeout(t);try{return r(t)}catch(e){try{return r.call(null,t)}catch(e){return r.call(this,t)}}}(t)}}function p(t,e){this.fun=t,this.array=e}function d(){}n.nextTick=function(t){var e=new Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)e[r-1]=arguments[r];l.push(new p(t,e)),1!==l.length||c||o(f)},p.prototype.run=function(){this.fun.apply(null,this.array)},n.title=\"browser\",n.browser=!0,n.env={},n.argv=[],n.version=\"\",n.versions={},n.on=d,n.addListener=d,n.once=d,n.off=d,n.removeListener=d,n.removeAllListeners=d,n.emit=d,n.prependListener=d,n.prependOnceListener=d,n.listeners=function(t){return[]},n.binding=function(t){throw new Error(\"process.binding is not supported\")},n.cwd=function(){return\"/\"},n.chdir=function(t){throw new Error(\"process.chdir is not supported\")},n.umask=function(){return 0}},16494:function(t,e,r){for(var n=r(71879),i=\"undefined\"==typeof window?r.g:window,a=[\"moz\",\"webkit\"],o=\"AnimationFrame\",s=i[\"request\"+o],l=i[\"cancel\"+o]||i[\"cancelRequest\"+o],c=0;!s&&c<a.length;c++)s=i[a[c]+\"Request\"+o],l=i[a[c]+\"Cancel\"+o]||i[a[c]+\"CancelRequest\"+o];if(!s||!l){var u=0,h=0,f=[];s=function(t){if(0===f.length){var e=n(),r=Math.max(0,16.666666666666668-(e-u));u=r+e,setTimeout((function(){var t=f.slice(0);f.length=0;for(var e=0;e<t.length;e++)if(!t[e].cancelled)try{t[e].callback(u)}catch(t){setTimeout((function(){throw t}),0)}}),Math.round(r))}return f.push({handle:++h,callback:t,cancelled:!1}),h},l=function(t){for(var e=0;e<f.length;e++)f[e].handle===t&&(f[e].cancelled=!0)}}t.exports=function(t){return s.call(i,t)},t.exports.cancel=function(){l.apply(i,arguments)},t.exports.polyfill=function(t){t||(t=i),t.requestAnimationFrame=s,t.cancelAnimationFrame=l}},29978:function(t,e,r){\"use strict\";var n=r(78112),i=r(162),a=r(79788),o=r(6807),s=r(27976),l=r(83473),c=r(51498),u=c.float32,h=c.fract32;t.exports=function(t,e){if(\"function\"==typeof t?(e||(e={}),e.regl=t):e=t,e.length&&(e.positions=e),!(t=e.regl).hasExtension(\"ANGLE_instanced_arrays\"))throw Error(\"regl-error2d: `ANGLE_instanced_arrays` extension should be enabled\");var r,c,p,d,m,g,y=t._gl,v={color:\"black\",capSize:5,lineWidth:1,opacity:1,viewport:null,range:null,offset:0,count:0,bounds:null,positions:[],errors:[]},x=[];return d=t.buffer({usage:\"dynamic\",type:\"uint8\",data:new Uint8Array(0)}),c=t.buffer({usage:\"dynamic\",type:\"float\",data:new Uint8Array(0)}),p=t.buffer({usage:\"dynamic\",type:\"float\",data:new Uint8Array(0)}),m=t.buffer({usage:\"dynamic\",type:\"float\",data:new Uint8Array(0)}),g=t.buffer({usage:\"static\",type:\"float\",data:f}),T(e),r=t({vert:\"\\n\\t\\tprecision highp float;\\n\\n\\t\\tattribute vec2 position, positionFract;\\n\\t\\tattribute vec4 error;\\n\\t\\tattribute vec4 color;\\n\\n\\t\\tattribute vec2 direction, lineOffset, capOffset;\\n\\n\\t\\tuniform vec4 viewport;\\n\\t\\tuniform float lineWidth, capSize;\\n\\t\\tuniform vec2 scale, scaleFract, translate, translateFract;\\n\\n\\t\\tvarying vec4 fragColor;\\n\\n\\t\\tvoid main() {\\n\\t\\t\\tfragColor = color / 255.;\\n\\n\\t\\t\\tvec2 pixelOffset = lineWidth * lineOffset + (capSize + lineWidth) * capOffset;\\n\\n\\t\\t\\tvec2 dxy = -step(.5, direction.xy) * error.xz + step(direction.xy, vec2(-.5)) * error.yw;\\n\\n\\t\\t\\tvec2 position = position + dxy;\\n\\n\\t\\t\\tvec2 pos = (position + translate) * scale\\n\\t\\t\\t\\t+ (positionFract + translateFract) * scale\\n\\t\\t\\t\\t+ (position + translate) * scaleFract\\n\\t\\t\\t\\t+ (positionFract + translateFract) * scaleFract;\\n\\n\\t\\t\\tpos += pixelOffset / viewport.zw;\\n\\n\\t\\t\\tgl_Position = vec4(pos * 2. - 1., 0, 1);\\n\\t\\t}\\n\\t\\t\",frag:\"\\n\\t\\tprecision highp float;\\n\\n\\t\\tvarying vec4 fragColor;\\n\\n\\t\\tuniform float opacity;\\n\\n\\t\\tvoid main() {\\n\\t\\t\\tgl_FragColor = fragColor;\\n\\t\\t\\tgl_FragColor.a *= opacity;\\n\\t\\t}\\n\\t\\t\",uniforms:{range:t.prop(\"range\"),lineWidth:t.prop(\"lineWidth\"),capSize:t.prop(\"capSize\"),opacity:t.prop(\"opacity\"),scale:t.prop(\"scale\"),translate:t.prop(\"translate\"),scaleFract:t.prop(\"scaleFract\"),translateFract:t.prop(\"translateFract\"),viewport:function(t,e){return[e.viewport.x,e.viewport.y,t.viewportWidth,t.viewportHeight]}},attributes:{color:{buffer:d,offset:function(t,e){return 4*e.offset},divisor:1},position:{buffer:c,offset:function(t,e){return 8*e.offset},divisor:1},positionFract:{buffer:p,offset:function(t,e){return 8*e.offset},divisor:1},error:{buffer:m,offset:function(t,e){return 16*e.offset},divisor:1},direction:{buffer:g,stride:24,offset:0},lineOffset:{buffer:g,stride:24,offset:8},capOffset:{buffer:g,stride:24,offset:16}},primitive:\"triangles\",blend:{enable:!0,color:[0,0,0,0],equation:{rgb:\"add\",alpha:\"add\"},func:{srcRGB:\"src alpha\",dstRGB:\"one minus src alpha\",srcAlpha:\"one minus dst alpha\",dstAlpha:\"one\"}},depth:{enable:!1},scissor:{enable:!0,box:t.prop(\"viewport\")},viewport:t.prop(\"viewport\"),stencil:!1,instances:t.prop(\"count\"),count:f.length}),s(_,{update:T,draw:b,destroy:k,regl:t,gl:y,canvas:y.canvas,groups:x}),_;function _(t){t?T(t):null===t&&k(),b()}function b(e){if(\"number\"==typeof e)return w(e);e&&!Array.isArray(e)&&(e=[e]),t._refresh(),x.forEach((function(t,r){t&&(e&&(e[r]?t.draw=!0:t.draw=!1),t.draw?w(r):t.draw=!0)}))}function w(t){\"number\"==typeof t&&(t=x[t]),null!=t&&t&&t.count&&t.color&&t.opacity&&t.positions&&t.positions.length>1&&(t.scaleRatio=[t.scale[0]*t.viewport.width,t.scale[1]*t.viewport.height],r(t),t.after&&t.after(t))}function T(t){if(t){null!=t.length?\"number\"==typeof t[0]&&(t=[{positions:t}]):Array.isArray(t)||(t=[t]);var e=0,r=0;if(_.groups=x=t.map((function(t,c){var u=x[c];return t?(\"function\"==typeof t?t={after:t}:\"number\"==typeof t[0]&&(t={positions:t}),t=o(t,{color:\"color colors fill\",capSize:\"capSize cap capsize cap-size\",lineWidth:\"lineWidth line-width width line thickness\",opacity:\"opacity alpha\",range:\"range dataBox\",viewport:\"viewport viewBox\",errors:\"errors error\",positions:\"positions position data points\"}),u||(x[c]=u={id:c,scale:null,translate:null,scaleFract:null,translateFract:null,draw:!0},t=s({},v,t)),a(u,t,[{lineWidth:function(t){return.5*+t},capSize:function(t){return.5*+t},opacity:parseFloat,errors:function(t){return t=l(t),r+=t.length,t},positions:function(t,r){return t=l(t,\"float64\"),r.count=Math.floor(t.length/2),r.bounds=n(t,2),r.offset=e,e+=r.count,t}},{color:function(t,e){var r=e.count;if(t||(t=\"transparent\"),!Array.isArray(t)||\"number\"==typeof t[0]){var n=t;t=Array(r);for(var a=0;a<r;a++)t[a]=n}if(t.length<r)throw Error(\"Not enough colors\");for(var o=new Uint8Array(4*r),s=0;s<r;s++){var l=i(t[s],\"uint8\");o.set(l,4*s)}return o},range:function(t,e,r){var n=e.bounds;return t||(t=n),e.scale=[1/(t[2]-t[0]),1/(t[3]-t[1])],e.translate=[-t[0],-t[1]],e.scaleFract=h(e.scale),e.translateFract=h(e.translate),t},viewport:function(t){var e;return Array.isArray(t)?e={x:t[0],y:t[1],width:t[2]-t[0],height:t[3]-t[1]}:t?(e={x:t.x||t.left||0,y:t.y||t.top||0},t.right?e.width=t.right-e.x:e.width=t.w||t.width||0,t.bottom?e.height=t.bottom-e.y:e.height=t.h||t.height||0):e={x:0,y:0,width:y.drawingBufferWidth,height:y.drawingBufferHeight},e}}]),u):u})),e||r){var f=x.reduce((function(t,e,r){return t+(e?e.count:0)}),0),g=new Float64Array(2*f),b=new Uint8Array(4*f),w=new Float32Array(4*f);x.forEach((function(t,e){if(t){var r=t.positions,n=t.count,i=t.offset,a=t.color,o=t.errors;n&&(b.set(a,4*i),w.set(o,4*i),g.set(r,2*i))}}));var T=u(g);c(T);var k=h(g,T);p(k),d(b),m(w)}}}function k(){c.destroy(),p.destroy(),d.destroy(),m.destroy(),g.destroy()}};var f=[[1,0,0,1,0,0],[1,0,0,-1,0,0],[-1,0,0,-1,0,0],[-1,0,0,-1,0,0],[-1,0,0,1,0,0],[1,0,0,1,0,0],[1,0,-1,0,0,1],[1,0,-1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,1],[1,0,-1,0,0,1],[-1,0,-1,0,0,1],[-1,0,-1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,1],[-1,0,-1,0,0,1],[0,1,1,0,0,0],[0,1,-1,0,0,0],[0,-1,-1,0,0,0],[0,-1,-1,0,0,0],[0,1,1,0,0,0],[0,-1,1,0,0,0],[0,1,0,-1,1,0],[0,1,0,-1,-1,0],[0,1,0,1,-1,0],[0,1,0,1,1,0],[0,1,0,-1,1,0],[0,1,0,1,-1,0],[0,-1,0,-1,1,0],[0,-1,0,-1,-1,0],[0,-1,0,1,-1,0],[0,-1,0,1,1,0],[0,-1,0,-1,1,0],[0,-1,0,1,-1,0]]},49478:function(t,e,r){\"use strict\";var n=r(162),i=r(78112),a=r(27976),o=r(6807),s=r(83473),l=r(25782),c=r(90956),u=r(51498),h=u.float32,f=u.fract32,p=r(93103),d=r(5137),m=r(33055);function g(t,e){if(!(this instanceof g))return new g(t,e);if(\"function\"==typeof t?(e||(e={}),e.regl=t):e=t,e.length&&(e.positions=e),!(t=e.regl).hasExtension(\"ANGLE_instanced_arrays\"))throw Error(\"regl-error2d: `ANGLE_instanced_arrays` extension should be enabled\");this.gl=t._gl,this.regl=t,this.passes=[],this.shaders=g.shaders.has(t)?g.shaders.get(t):g.shaders.set(t,g.createShaders(t)).get(t),this.update(e)}t.exports=g,g.dashMult=2,g.maxPatternLength=256,g.precisionThreshold=3e6,g.maxPoints=1e4,g.maxLines=2048,g.shaders=new p,g.createShaders=function(t){var e,r=t.buffer({usage:\"static\",type:\"float\",data:[0,1,0,0,1,1,1,0]}),n={primitive:\"triangle strip\",instances:t.prop(\"count\"),count:4,offset:0,uniforms:{miterMode:function(t,e){return\"round\"===e.join?2:1},miterLimit:t.prop(\"miterLimit\"),scale:t.prop(\"scale\"),scaleFract:t.prop(\"scaleFract\"),translateFract:t.prop(\"translateFract\"),translate:t.prop(\"translate\"),thickness:t.prop(\"thickness\"),dashTexture:t.prop(\"dashTexture\"),opacity:t.prop(\"opacity\"),pixelRatio:t.context(\"pixelRatio\"),id:t.prop(\"id\"),dashLength:t.prop(\"dashLength\"),viewport:function(t,e){return[e.viewport.x,e.viewport.y,t.viewportWidth,t.viewportHeight]},depth:t.prop(\"depth\")},blend:{enable:!0,color:[0,0,0,0],equation:{rgb:\"add\",alpha:\"add\"},func:{srcRGB:\"src alpha\",dstRGB:\"one minus src alpha\",srcAlpha:\"one minus dst alpha\",dstAlpha:\"one\"}},depth:{enable:function(t,e){return!e.overlay}},stencil:{enable:!1},scissor:{enable:!0,box:t.prop(\"viewport\")},viewport:t.prop(\"viewport\")},i=t(a({vert:\"\\nprecision highp float;\\n\\nattribute vec2 aCoord, bCoord, aCoordFract, bCoordFract;\\nattribute vec4 color;\\nattribute float lineEnd, lineTop;\\n\\nuniform vec2 scale, scaleFract, translate, translateFract;\\nuniform float thickness, pixelRatio, id, depth;\\nuniform vec4 viewport;\\n\\nvarying vec4 fragColor;\\nvarying vec2 tangent;\\n\\nvec2 project(vec2 position, vec2 positionFract, vec2 scale, vec2 scaleFract, vec2 translate, vec2 translateFract) {\\n\\t// the order is important\\n\\treturn position * scale + translate\\n + positionFract * scale + translateFract\\n + position * scaleFract\\n + positionFract * scaleFract;\\n}\\n\\nvoid main() {\\n\\tfloat lineStart = 1. - lineEnd;\\n\\tfloat lineOffset = lineTop * 2. - 1.;\\n\\n\\tvec2 diff = (bCoord + bCoordFract - aCoord - aCoordFract);\\n\\ttangent = normalize(diff * scale * viewport.zw);\\n\\tvec2 normal = vec2(-tangent.y, tangent.x);\\n\\n\\tvec2 position = project(aCoord, aCoordFract, scale, scaleFract, translate, translateFract) * lineStart\\n\\t\\t+ project(bCoord, bCoordFract, scale, scaleFract, translate, translateFract) * lineEnd\\n\\n\\t\\t+ thickness * normal * .5 * lineOffset / viewport.zw;\\n\\n\\tgl_Position = vec4(position * 2.0 - 1.0, depth, 1);\\n\\n\\tfragColor = color / 255.;\\n}\\n\",frag:\"\\nprecision highp float;\\n\\nuniform float dashLength, pixelRatio, thickness, opacity, id;\\nuniform sampler2D dashTexture;\\n\\nvarying vec4 fragColor;\\nvarying vec2 tangent;\\n\\nvoid main() {\\n\\tfloat alpha = 1.;\\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},aCoord:{buffer:t.prop(\"positionBuffer\"),stride:8,offset:8,divisor:1},bCoord:{buffer:t.prop(\"positionBuffer\"),stride:8,offset:16,divisor:1},aCoordFract:{buffer:t.prop(\"positionFractBuffer\"),stride:8,offset:8,divisor:1},bCoordFract:{buffer:t.prop(\"positionFractBuffer\"),stride:8,offset:16,divisor:1},color:{buffer:t.prop(\"colorBuffer\"),stride:4,offset:0,divisor:1}}},n));try{e=t(a({cull:{enable:!0,face:\"back\"},vert:\"\\nprecision highp float;\\n\\nattribute vec2 aCoord, bCoord, nextCoord, prevCoord;\\nattribute vec4 aColor, bColor;\\nattribute float lineEnd, lineTop;\\n\\nuniform vec2 scale, translate;\\nuniform float thickness, pixelRatio, id, depth;\\nuniform vec4 viewport;\\nuniform float miterLimit, miterMode;\\n\\nvarying vec4 fragColor;\\nvarying vec4 startCutoff, endCutoff;\\nvarying vec2 tangent;\\nvarying vec2 startCoord, endCoord;\\nvarying float enableStartMiter, enableEndMiter;\\n\\nconst float REVERSE_THRESHOLD = -.875;\\nconst float MIN_DIFF = 1e-6;\\n\\n// TODO: possible optimizations: avoid overcalculating all for vertices and calc just one instead\\n// TODO: precalculate dot products, normalize things beforehead etc.\\n// TODO: refactor to rectangular algorithm\\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\\nbool isNaN( float val ){\\n return ( val < 0.0 || 0.0 < val || val == 0.0 ) ? false : true;\\n}\\n\\nvoid main() {\\n\\tvec2 aCoord = aCoord, bCoord = bCoord, prevCoord = prevCoord, nextCoord = nextCoord;\\n\\n vec2 adjustedScale;\\n adjustedScale.x = (abs(scale.x) < MIN_DIFF) ? MIN_DIFF : scale.x;\\n adjustedScale.y = (abs(scale.y) < MIN_DIFF) ? MIN_DIFF : scale.y;\\n\\n vec2 scaleRatio = adjustedScale * viewport.zw;\\n\\tvec2 normalWidth = thickness / scaleRatio;\\n\\n\\tfloat lineStart = 1. - lineEnd;\\n\\tfloat lineBot = 1. - lineTop;\\n\\n\\tfragColor = (lineStart * aColor + lineEnd * bColor) / 255.;\\n\\n\\tif (isNaN(aCoord.x) || isNaN(aCoord.y) || isNaN(bCoord.x) || isNaN(bCoord.y)) return;\\n\\n\\tif (aCoord == prevCoord) prevCoord = aCoord + normalize(bCoord - aCoord);\\n\\tif (bCoord == nextCoord) nextCoord = bCoord - normalize(bCoord - aCoord);\\n\\n\\n\\tvec2 prevDiff = aCoord - prevCoord;\\n\\tvec2 currDiff = bCoord - aCoord;\\n\\tvec2 nextDiff = nextCoord - bCoord;\\n\\n\\tvec2 prevTangent = normalize(prevDiff * scaleRatio);\\n\\tvec2 currTangent = normalize(currDiff * scaleRatio);\\n\\tvec2 nextTangent = normalize(nextDiff * scaleRatio);\\n\\n\\tvec2 prevNormal = vec2(-prevTangent.y, prevTangent.x);\\n\\tvec2 currNormal = vec2(-currTangent.y, currTangent.x);\\n\\tvec2 nextNormal = vec2(-nextTangent.y, nextTangent.x);\\n\\n\\tvec2 startJoinDirection = normalize(prevTangent - currTangent);\\n\\tvec2 endJoinDirection = normalize(currTangent - nextTangent);\\n\\n\\t// collapsed/unidirectional segment cases\\n\\t// FIXME: there should be more elegant solution\\n\\tvec2 prevTanDiff = abs(prevTangent - currTangent);\\n\\tvec2 nextTanDiff = abs(nextTangent - currTangent);\\n\\tif (max(prevTanDiff.x, prevTanDiff.y) < MIN_DIFF) {\\n\\t\\tstartJoinDirection = currNormal;\\n\\t}\\n\\tif (max(nextTanDiff.x, nextTanDiff.y) < MIN_DIFF) {\\n\\t\\tendJoinDirection = currNormal;\\n\\t}\\n\\tif (aCoord == bCoord) {\\n\\t\\tendJoinDirection = startJoinDirection;\\n\\t\\tcurrNormal = prevNormal;\\n\\t\\tcurrTangent = prevTangent;\\n\\t}\\n\\n\\ttangent = currTangent;\\n\\n\\t//calculate join shifts relative to normals\\n\\tfloat startJoinShift = dot(currNormal, startJoinDirection);\\n\\tfloat endJoinShift = dot(currNormal, endJoinDirection);\\n\\n\\tfloat startMiterRatio = abs(1. / startJoinShift);\\n\\tfloat endMiterRatio = abs(1. / endJoinShift);\\n\\n\\tvec2 startJoin = startJoinDirection * startMiterRatio;\\n\\tvec2 endJoin = endJoinDirection * endMiterRatio;\\n\\n\\tvec2 startTopJoin, startBotJoin, endTopJoin, endBotJoin;\\n\\tstartTopJoin = sign(startJoinShift) * startJoin * .5;\\n\\tstartBotJoin = -startTopJoin;\\n\\n\\tendTopJoin = sign(endJoinShift) * endJoin * .5;\\n\\tendBotJoin = -endTopJoin;\\n\\n\\tvec2 aTopCoord = aCoord + normalWidth * startTopJoin;\\n\\tvec2 bTopCoord = bCoord + normalWidth * endTopJoin;\\n\\tvec2 aBotCoord = aCoord + normalWidth * startBotJoin;\\n\\tvec2 bBotCoord = bCoord + normalWidth * endBotJoin;\\n\\n\\t//miter anti-clipping\\n\\tfloat baClipping = distToLine(bCoord, aCoord, aBotCoord) / dot(normalize(normalWidth * endBotJoin), normalize(normalWidth.yx * vec2(-startBotJoin.y, startBotJoin.x)));\\n\\tfloat abClipping = distToLine(aCoord, bCoord, bTopCoord) / dot(normalize(normalWidth * startBotJoin), normalize(normalWidth.yx * vec2(-endBotJoin.y, endBotJoin.x)));\\n\\n\\t//prevent close to reverse direction switch\\n\\tbool prevReverse = dot(currTangent, prevTangent) <= REVERSE_THRESHOLD && abs(dot(currTangent, prevNormal)) * min(length(prevDiff), length(currDiff)) < length(normalWidth * currNormal);\\n\\tbool nextReverse = dot(currTangent, nextTangent) <= REVERSE_THRESHOLD && abs(dot(currTangent, nextNormal)) * min(length(nextDiff), length(currDiff)) < length(normalWidth * currNormal);\\n\\n\\tif (prevReverse) {\\n\\t\\t//make join rectangular\\n\\t\\tvec2 miterShift = normalWidth * startJoinDirection * miterLimit * .5;\\n\\t\\tfloat normalAdjust = 1. - min(miterLimit / startMiterRatio, 1.);\\n\\t\\taBotCoord = aCoord + miterShift - normalAdjust * normalWidth * currNormal * .5;\\n\\t\\taTopCoord = aCoord + miterShift + normalAdjust * normalWidth * currNormal * .5;\\n\\t}\\n\\telse if (!nextReverse && baClipping > 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:\"\\nprecision highp float;\\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:t.prop(\"colorBuffer\"),stride:4,offset:0,divisor:1},bColor:{buffer:t.prop(\"colorBuffer\"),stride:4,offset:4,divisor:1},prevCoord:{buffer:t.prop(\"positionBuffer\"),stride:8,offset:0,divisor:1},aCoord:{buffer:t.prop(\"positionBuffer\"),stride:8,offset:8,divisor:1},bCoord:{buffer:t.prop(\"positionBuffer\"),stride:8,offset:16,divisor:1},nextCoord:{buffer:t.prop(\"positionBuffer\"),stride:8,offset:24,divisor:1}}},n))}catch(t){e=i}return{fill:t({primitive:\"triangle\",elements:function(t,e){return e.triangles},offset:0,vert:\"\\nprecision highp float;\\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:\"\\nprecision highp float;\\nvarying vec4 fragColor;\\n\\nvoid main() {\\n\\tgl_FragColor = fragColor;\\n}\\n\",uniforms:{scale:t.prop(\"scale\"),color:t.prop(\"fill\"),scaleFract:t.prop(\"scaleFract\"),translateFract:t.prop(\"translateFract\"),translate:t.prop(\"translate\"),opacity:t.prop(\"opacity\"),pixelRatio:t.context(\"pixelRatio\"),id:t.prop(\"id\"),viewport:function(t,e){return[e.viewport.x,e.viewport.y,t.viewportWidth,t.viewportHeight]}},attributes:{position:{buffer:t.prop(\"positionBuffer\"),stride:8,offset:8},positionFract:{buffer:t.prop(\"positionFractBuffer\"),stride:8,offset:8}},blend:n.blend,depth:{enable:!1},scissor:n.scissor,stencil:n.stencil,viewport:n.viewport}),rect:i,miter:e}},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 t,e=[],r=arguments.length;r--;)e[r]=arguments[r];e.length&&(t=this).update.apply(t,e),this.draw()},g.prototype.draw=function(){for(var t=this,e=[],r=arguments.length;r--;)e[r]=arguments[r];return(e.length?e:this.passes).forEach((function(e,r){var n;if(e&&Array.isArray(e))return(n=t).draw.apply(n,e);\"number\"==typeof e&&(e=t.passes[e]),e&&e.count>1&&e.opacity&&(t.regl._refresh(),e.fill&&e.triangles&&e.triangles.length>2&&t.shaders.fill(e),e.thickness&&(e.scale[0]*e.viewport.width>g.precisionThreshold||e.scale[1]*e.viewport.height>g.precisionThreshold||\"rect\"===e.join||!e.join&&(e.thickness<=2||e.count>=g.maxPoints)?t.shaders.rect(e):t.shaders.miter(e)))})),this},g.prototype.update=function(t){var e=this;if(t){null!=t.length?\"number\"==typeof t[0]&&(t=[{positions:t}]):Array.isArray(t)||(t=[t]);var r=this.regl,u=this.gl;if(t.forEach((function(t,p){var y=e.passes[p];if(void 0!==t)if(null!==t){if(\"number\"==typeof t[0]&&(t={positions:t}),t=o(t,{positions:\"positions points data coords\",thickness:\"thickness lineWidth lineWidths line-width linewidth width stroke-width strokewidth strokeWidth\",join:\"lineJoin linejoin join type mode\",miterLimit:\"miterlimit miterLimit\",dashes:\"dash dashes dasharray dash-array dashArray\",color:\"color colour stroke colors colours stroke-color strokeColor\",fill:\"fill fill-color fillColor\",opacity:\"alpha opacity\",overlay:\"overlay crease overlap intersect\",close:\"closed close closed-path closePath\",range:\"range dataBox\",viewport:\"viewport viewBox\",hole:\"holes hole hollow\",splitNull:\"splitNull\"}),y||(e.passes[p]=y={id:p,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})},t=a({},g.defaults,t)),null!=t.thickness&&(y.thickness=parseFloat(t.thickness)),null!=t.opacity&&(y.opacity=parseFloat(t.opacity)),null!=t.miterLimit&&(y.miterLimit=parseFloat(t.miterLimit)),null!=t.overlay&&(y.overlay=!!t.overlay,p<g.maxLines&&(y.depth=2*(g.maxLines-1-p%g.maxLines)/g.maxLines-1)),null!=t.join&&(y.join=t.join),null!=t.hole&&(y.hole=t.hole),null!=t.fill&&(y.fill=t.fill?n(t.fill,\"uint8\"):null),null!=t.viewport&&(y.viewport=d(t.viewport)),y.viewport||(y.viewport=d([u.drawingBufferWidth,u.drawingBufferHeight])),null!=t.close&&(y.close=t.close),null===t.positions&&(t.positions=[]),t.positions){var v,x;if(t.positions.x&&t.positions.y){var _=t.positions.x,b=t.positions.y;x=y.count=Math.max(_.length,b.length),v=new Float64Array(2*x);for(var w=0;w<x;w++)v[2*w]=_[w],v[2*w+1]=b[w]}else v=s(t.positions,\"float64\"),x=y.count=Math.floor(v.length/2);var T=y.bounds=i(v,2);if(y.fill){for(var k=[],A={},M=0,S=0,E=0,C=y.count;S<C;S++){var L=v[2*S],I=v[2*S+1];isNaN(L)||isNaN(I)||null==L||null==I?(L=v[2*M],I=v[2*M+1],A[S]=M):M=S,k[E++]=L,k[E++]=I}if(t.splitNull){y.count-1 in A||(A[y.count]=y.count-1);var P=Object.keys(A).map(Number).sort((function(t,e){return t-e})),z=[],O=0,D=null!=y.hole?y.hole[0]:null;if(null!=D){var R=m(P,(function(t){return t>=D}));(P=P.slice(0,R)).push(D)}for(var F=function(t){var e=k.slice(2*O,2*P[t]).concat(D?k.slice(2*D):[]),r=(y.hole||[]).map((function(e){return e-D+(P[t]-O)})),n=l(e,r);n=n.map((function(e){return e+O+(e+O<P[t]?0:D-P[t])})),z.push.apply(z,n),O=P[t]+1},B=0;B<P.length;B++)F(B);for(var N=0,j=z.length;N<j;N++)null!=A[z[N]]&&(z[N]=A[z[N]]);y.triangles=z}else{for(var U=l(k,y.hole||[]),V=0,q=U.length;V<q;V++)null!=A[U[V]]&&(U[V]=A[U[V]]);y.triangles=U}}var H=new Float64Array(v);c(H,2,T);var G=new Float64Array(2*x+6);y.close?v[0]===v[2*x-2]&&v[1]===v[2*x-1]?(G[0]=H[2*x-4],G[1]=H[2*x-3]):(G[0]=H[2*x-2],G[1]=H[2*x-1]):(G[0]=H[0],G[1]=H[1]),G.set(H,2),y.close?v[0]===v[2*x-2]&&v[1]===v[2*x-1]?(G[2*x+2]=H[2],G[2*x+3]=H[3],y.count-=1):(G[2*x+2]=H[0],G[2*x+3]=H[1],G[2*x+4]=H[2],G[2*x+5]=H[3]):(G[2*x+2]=H[2*x-2],G[2*x+3]=H[2*x-1],G[2*x+4]=H[2*x-2],G[2*x+5]=H[2*x-1]);var Z=h(G);y.positionBuffer(Z);var W=f(G,Z);y.positionFractBuffer(W)}if(t.range?y.range=t.range:y.range||(y.range=y.bounds),(t.range||t.positions)&&y.count){var Y=y.bounds,X=Y[2]-Y[0],$=Y[3]-Y[1],J=y.range[2]-y.range[0],K=y.range[3]-y.range[1];y.scale=[X/J,$/K],y.translate=[-y.range[0]/J+Y[0]/J||0,-y.range[1]/K+Y[1]/K||0],y.scaleFract=f(y.scale),y.translateFract=f(y.translate)}if(t.dashes){var Q,tt=0;if(!t.dashes||t.dashes.length<2)tt=1,Q=new Uint8Array([255,255,255,255,255,255,255,255]);else{tt=0;for(var et=0;et<t.dashes.length;++et)tt+=t.dashes[et];Q=new Uint8Array(tt*g.dashMult);for(var rt=0,nt=255,it=0;it<2;it++)for(var at=0;at<t.dashes.length;++at){for(var ot=0,st=t.dashes[at]*g.dashMult*.5;ot<st;++ot)Q[rt++]=nt;nt^=255}}y.dashLength=tt,y.dashTexture({channels:1,data:Q,width:Q.length,height:1,mag:\"linear\",min:\"linear\"},0,0)}if(t.color){var lt=y.count,ct=t.color;ct||(ct=\"transparent\");var ut=new Uint8Array(4*lt+4);if(Array.isArray(ct)&&\"number\"!=typeof ct[0]){for(var ht=0;ht<lt;ht++){var ft=n(ct[ht],\"uint8\");ut.set(ft,4*ht)}ut.set(n(ct[0],\"uint8\"),4*lt)}else for(var pt=n(ct,\"uint8\"),dt=0;dt<lt+1;dt++)ut.set(pt,4*dt);y.colorBuffer({usage:\"dynamic\",type:\"uint8\",data:ut})}}else e.passes[p]=null})),t.length<this.passes.length){for(var p=t.length;p<this.passes.length;p++){var y=this.passes[p];y&&(y.colorBuffer.destroy(),y.positionBuffer.destroy(),y.dashTexture.destroy())}this.passes.length=t.length}for(var v=[],x=0;x<this.passes.length;x++)null!==this.passes[x]&&v.push(this.passes[x]);return this.passes=v,this}},g.prototype.destroy=function(){return this.passes.forEach((function(t){t.colorBuffer.destroy(),t.positionBuffer.destroy(),t.dashTexture.destroy()})),this.passes.length=0,this}},62172:function(t,e,r){\"use strict\";function n(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:\"undefined\"!=typeof Symbol&&t[Symbol.iterator]||t[\"@@iterator\"];if(null!=r){var n,i,a,o,s=[],l=!0,c=!1;try{if(a=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=a.call(r)).done)&&(s.push(n.value),s.length!==e);l=!0);}catch(t){c=!0,i=t}finally{try{if(!l&&null!=r.return&&(o=r.return(),Object(o)!==o))return}finally{if(c)throw i}}return s}}(t,e)||i(t,e)||function(){throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function i(t,e){if(t){if(\"string\"==typeof t)return a(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return\"Object\"===r&&t.constructor&&(r=t.constructor.name),\"Map\"===r||\"Set\"===r?Array.from(t):\"Arguments\"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?a(t,e):void 0}}function a(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}var o=r(162),s=r(78112),l=r(46762),c=r(27549),u=r(27976),h=r(76765),f=r(6807),p=r(79788),d=r(83473),m=r(39488),g=r(51498),y=r(5137),v=x;function x(t,e){var r=this;if(!(this instanceof x))return new x(t,e);\"function\"==typeof t?(e||(e={}),e.regl=t):(e=t,t=null),e&&e.length&&(e.positions=e);var n,i=(t=e.regl)._gl,a=[];this.tooManyColors=m,n=t.texture({data:new Uint8Array(1020),width:255,height:1,type:\"uint8\",format:\"rgba\",wrapS:\"clamp\",wrapT:\"clamp\",mag:\"nearest\",min:\"nearest\"}),u(this,{regl:t,gl:i,groups:[],markerCache:[null],markerTextures:[null],palette:a,paletteIds:{},paletteTexture:n,maxColors:255,maxSize:100,canvas:i.canvas}),this.update(e);var o={uniforms:{constPointSize:!!e.constPointSize,opacity:t.prop(\"opacity\"),paletteSize:function(t,e){return[r.tooManyColors?0:255,n.height]},pixelRatio:t.context(\"pixelRatio\"),scale:t.prop(\"scale\"),scaleFract:t.prop(\"scaleFract\"),translate:t.prop(\"translate\"),translateFract:t.prop(\"translateFract\"),markerTexture:t.prop(\"markerTexture\"),paletteTexture:n},attributes:{x:function(t,e){return e.xAttr||{buffer:e.positionBuffer,stride:8,offset:0}},y:function(t,e){return e.yAttr||{buffer:e.positionBuffer,stride:8,offset:4}},xFract:function(t,e){return e.xAttr?{constant:[0,0]}:{buffer:e.positionFractBuffer,stride:8,offset:0}},yFract:function(t,e){return e.yAttr?{constant:[0,0]}:{buffer:e.positionFractBuffer,stride:8,offset:4}},size:function(t,e){return e.size.length?{buffer:e.sizeBuffer,stride:2,offset:0}:{constant:[Math.round(255*e.size/r.maxSize)]}},borderSize:function(t,e){return e.borderSize.length?{buffer:e.sizeBuffer,stride:2,offset:1}:{constant:[Math.round(255*e.borderSize/r.maxSize)]}},colorId:function(t,e){return e.color.length?{buffer:e.colorBuffer,stride:r.tooManyColors?8:4,offset:0}:{constant:r.tooManyColors?a.slice(4*e.color,4*e.color+4):[e.color]}},borderColorId:function(t,e){return e.borderColor.length?{buffer:e.colorBuffer,stride:r.tooManyColors?8:4,offset:r.tooManyColors?4:2}:{constant:r.tooManyColors?a.slice(4*e.borderColor,4*e.borderColor+4):[e.borderColor]}},isActive:function(t,e){return!0===e.activation?{constant:[1]}:e.activation?e.activation:{constant:[0]}}},blend:{enable:!0,color:[0,0,0,1],func:{srcRGB:\"src alpha\",dstRGB:\"one minus src alpha\",srcAlpha:\"one minus dst alpha\",dstAlpha:\"one\"}},scissor:{enable:!0,box:t.prop(\"viewport\")},viewport:t.prop(\"viewport\"),stencil:{enable:!1},depth:{enable:!1},elements:t.prop(\"elements\"),count:t.prop(\"count\"),offset:t.prop(\"offset\"),primitive:\"points\"},s=u({},o);s.frag=h([\"precision highp float;\\n#define GLSLIFY 1\\n\\nuniform float opacity;\\nuniform sampler2D markerTexture;\\n\\nvarying vec4 fragColor, fragBorderColor;\\nvarying float fragWidth, fragBorderColorLevel, fragColorLevel;\\n\\nfloat smoothStep(float x, float y) {\\n return 1.0 / (1.0 + exp(50.0*(x - y)));\\n}\\n\\nvoid main() {\\n float dist = texture2D(markerTexture, gl_PointCoord).r, delta = fragWidth;\\n\\n // max-distance alpha\\n if (dist < 0.003) discard;\\n\\n // null-border case\\n if (fragBorderColorLevel == fragColorLevel || fragBorderColor.a == 0.) {\\n float colorAmt = smoothstep(.5 - delta, .5 + delta, dist);\\n gl_FragColor = vec4(fragColor.rgb, colorAmt * fragColor.a * opacity);\\n }\\n else {\\n float borderColorAmt = smoothstep(fragBorderColorLevel - delta, fragBorderColorLevel + delta, dist);\\n float colorAmt = smoothstep(fragColorLevel - delta, fragColorLevel + delta, dist);\\n\\n vec4 color = fragBorderColor;\\n color.a *= borderColorAmt;\\n color = mix(color, fragColor, colorAmt);\\n color.a *= opacity;\\n\\n gl_FragColor = color;\\n }\\n\\n}\\n\"]),s.vert=h([\"precision highp float;\\n#define GLSLIFY 1\\n\\nattribute float x, y, xFract, yFract;\\nattribute float size, borderSize;\\nattribute vec4 colorId, borderColorId;\\nattribute float isActive;\\n\\n// `invariant` effectively turns off optimizations for the position.\\n// We need this because -fast-math on M1 Macs is re-ordering\\n// floating point operations in a way that causes floating point\\n// precision limits to put points in the wrong locations.\\ninvariant gl_Position;\\n\\nuniform bool constPointSize;\\nuniform float pixelRatio;\\nuniform vec2 scale, scaleFract, translate, translateFract, paletteSize;\\nuniform sampler2D paletteTexture;\\n\\nconst float maxSize = 100.;\\nconst float borderLevel = .5;\\n\\nvarying vec4 fragColor, fragBorderColor;\\nvarying float fragPointSize, fragBorderRadius, fragWidth, fragBorderColorLevel, fragColorLevel;\\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 = 2. * size * pointSizeScale;\\n fragPointSize = size * pixelRatio;\\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 fragColor = color;\\n fragBorderColor = borderColor;\\n fragWidth = 1. / gl_PointSize;\\n\\n fragBorderColorLevel = clamp(borderLevel - borderLevel * borderSize / size, 0., 1.);\\n fragColorLevel = clamp(borderLevel + (1. - borderLevel) * borderSize / size, 0., 1.);\\n}\\n\"]),this.drawMarker=t(s);var l=u({},o);l.frag=h([\"precision highp float;\\n#define GLSLIFY 1\\n\\nvarying vec4 fragColor, fragBorderColor;\\nvarying float fragBorderRadius, fragWidth;\\n\\nuniform float opacity;\\n\\nfloat smoothStep(float edge0, float edge1, float x) {\\n\\tfloat t;\\n\\tt = clamp((x - edge0) / (edge1 - edge0), 0.0, 1.0);\\n\\treturn t * t * (3.0 - 2.0 * t);\\n}\\n\\nvoid main() {\\n\\tfloat radius, alpha = 1.0, delta = fragWidth;\\n\\n\\tradius = length(2.0 * gl_PointCoord.xy - 1.0);\\n\\n\\tif (radius > 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\"]),l.vert=h([\"precision highp float;\\n#define GLSLIFY 1\\n\\nattribute float x, y, xFract, yFract;\\nattribute float size, borderSize;\\nattribute vec4 colorId, borderColorId;\\nattribute float isActive;\\n\\n// `invariant` effectively turns off optimizations for the position.\\n// We need this because -fast-math on M1 Macs is re-ordering\\n// floating point operations in a way that causes floating point\\n// precision limits to put points in the wrong locations.\\ninvariant gl_Position;\\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&&(l.frag=l.frag.replace(\"smoothstep\",\"smoothStep\"),s.frag=s.frag.replace(\"smoothstep\",\"smoothStep\")),this.drawCircle=t(l)}x.defaults={color:\"black\",borderColor:\"transparent\",borderSize:0,size:12,opacity:1,marker:void 0,viewport:null,range:null,pixelSize:null,count:0,offset:0,bounds:null,positions:[],snap:1e4},x.prototype.render=function(){return arguments.length&&this.update.apply(this,arguments),this.draw(),this},x.prototype.draw=function(){for(var t=this,e=arguments.length,r=new Array(e),n=0;n<e;n++)r[n]=arguments[n];var i=this.groups;if(1===r.length&&Array.isArray(r[0])&&(null===r[0][0]||Array.isArray(r[0][0]))&&(r=r[0]),this.regl._refresh(),r.length)for(var a=0;a<r.length;a++)this.drawItem(a,r[a]);else i.forEach((function(e,r){t.drawItem(r)}));return this},x.prototype.drawItem=function(t,e){var r,n=this.groups,o=n[t];if(\"number\"==typeof e&&(t=e,o=n[e],e=null),o&&o.count&&o.opacity){o.activation[0]&&this.drawCircle(this.getMarkerDrawOptions(0,o,e));for(var s=[],l=1;l<o.activation.length;l++)o.activation[l]&&(!0===o.activation[l]||o.activation[l].data.length)&&s.push.apply(s,function(t){if(Array.isArray(t))return a(t)}(r=this.getMarkerDrawOptions(l,o,e))||function(t){if(\"undefined\"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t[\"@@iterator\"])return Array.from(t)}(r)||i(r)||function(){throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}());s.length&&this.drawMarker(s)}},x.prototype.getMarkerDrawOptions=function(t,e,r){var i=e.range,a=e.tree,o=e.viewport,s=e.activation,l=e.selectionBuffer,c=e.count;if(this.regl,!a)return r?[u({},e,{markerTexture:this.markerTextures[t],activation:s[t],count:r.length,elements:r,offset:0})]:[u({},e,{markerTexture:this.markerTextures[t],activation:s[t],offset:0})];var h=[],f=a.range(i,{lod:!0,px:[(i[2]-i[0])/o.width,(i[3]-i[1])/o.height]});if(r){for(var p=s[t].data,d=new Uint8Array(c),m=0;m<r.length;m++){var g=r[m];d[g]=p?p[g]:1}l.subdata(d)}for(var y=f.length;y--;){var v=n(f[y],2),x=v[0],_=v[1];h.push(u({},e,{markerTexture:this.markerTextures[t],activation:r?l:s[t],offset:x,count:_-x}))}return h},x.prototype.update=function(){for(var t=this,e=arguments.length,r=new Array(e),n=0;n<e;n++)r[n]=arguments[n];if(r.length){1===r.length&&Array.isArray(r[0])&&(r=r[0]);var i=this.groups,a=this.gl,o=this.regl,l=this.maxSize,h=this.maxColors,m=this.palette;this.groups=i=r.map((function(e,r){var n=i[r];if(void 0===e)return n;null===e?e={positions:null}:\"function\"==typeof e?e={ondraw:e}:\"number\"==typeof e[0]&&(e={positions:e}),null===(e=f(e,{positions:\"positions data points\",snap:\"snap cluster lod tree\",size:\"sizes size radius\",borderSize:\"borderSizes borderSize border-size bordersize borderWidth borderWidths border-width borderwidth stroke-width strokeWidth strokewidth outline\",color:\"colors color fill fill-color fillColor\",borderColor:\"borderColors borderColor stroke stroke-color strokeColor\",marker:\"markers marker shape\",range:\"range dataBox databox\",viewport:\"viewport viewPort viewBox viewbox\",opacity:\"opacity alpha transparency\",bounds:\"bound bounds boundaries limits\",tooManyColors:\"tooManyColors palette paletteMode optimizePalette enablePalette\"})).positions&&(e.positions=[]),null!=e.tooManyColors&&(t.tooManyColors=e.tooManyColors),n||(i[r]=n={id:r,scale:null,translate:null,scaleFract:null,translateFract:null,activation:[],selectionBuffer:o.buffer({data:new Uint8Array(0),usage:\"stream\",type:\"uint8\"}),sizeBuffer:o.buffer({data:new Uint8Array(0),usage:\"dynamic\",type:\"uint8\"}),colorBuffer:o.buffer({data:new Uint8Array(0),usage:\"dynamic\",type:\"uint8\"}),positionBuffer:o.buffer({data:new Uint8Array(0),usage:\"dynamic\",type:\"float\"}),positionFractBuffer:o.buffer({data:new Uint8Array(0),usage:\"dynamic\",type:\"float\"})},e=u({},x.defaults,e)),e.positions&&!(\"marker\"in e)&&(e.marker=n.marker,delete n.marker),e.marker&&!(\"positions\"in e)&&(e.positions=n.positions,delete n.positions);var v=0,_=0;if(p(n,e,[{snap:!0,size:function(t,e){return null==t&&(t=x.defaults.size),v+=t&&t.length?1:0,t},borderSize:function(t,e){return null==t&&(t=x.defaults.borderSize),v+=t&&t.length?1:0,t},opacity:parseFloat,color:function(e,r){return null==e&&(e=x.defaults.color),e=t.updateColor(e),_++,e},borderColor:function(e,r){return null==e&&(e=x.defaults.borderColor),e=t.updateColor(e),_++,e},bounds:function(t,e,r){return\"range\"in r||(r.range=null),t},positions:function(t,e,r){var n=e.snap,i=e.positionBuffer,a=e.positionFractBuffer,l=e.selectionBuffer;if(t.x||t.y)return t.x.length?e.xAttr={buffer:o.buffer(t.x),offset:0,stride:4,count:t.x.length}:e.xAttr={buffer:t.x.buffer,offset:4*t.x.offset||0,stride:4*(t.x.stride||1),count:t.x.count},t.y.length?e.yAttr={buffer:o.buffer(t.y),offset:0,stride:4,count:t.y.length}:e.yAttr={buffer:t.y.buffer,offset:4*t.y.offset||0,stride:4*(t.y.stride||1),count:t.y.count},e.count=Math.max(e.xAttr.count,e.yAttr.count),t;t=d(t,\"float64\");var u=e.count=Math.floor(t.length/2),h=e.bounds=u?s(t,2):null;if(r.range||e.range||(delete e.range,r.range=h),r.marker||e.marker||(delete e.marker,r.marker=null),n&&(!0===n||u>n)?e.tree=c(t,{bounds:h}):n&&n.length&&(e.tree=n),e.tree){var f={primitive:\"points\",usage:\"static\",data:e.tree,type:\"uint32\"};e.elements?e.elements(f):e.elements=o.elements(f)}var p=g.float32(t);return i({data:p,usage:\"dynamic\"}),a({data:g.fract32(t,p),usage:\"dynamic\"}),l({data:new Uint8Array(u),type:\"uint8\",usage:\"stream\"}),t}},{marker:function(e,r,n){var i=r.activation;if(i.forEach((function(t){return t&&t.destroy&&t.destroy()})),i.length=0,e&&\"number\"!=typeof e[0]){for(var a=[],s=0,l=Math.min(e.length,r.count);s<l;s++){var c=t.addMarker(e[s]);a[c]||(a[c]=new Uint8Array(r.count)),a[c][s]=1}for(var u=0;u<a.length;u++)if(a[u]){var h={data:a[u],type:\"uint8\",usage:\"static\"};i[u]?i[u](h):i[u]=o.buffer(h),i[u].data=a[u]}}else i[t.addMarker(e)]=!0;return e},range:function(t,e,r){var n=e.bounds;if(n)return t||(t=n),e.scale=[1/(t[2]-t[0]),1/(t[3]-t[1])],e.translate=[-t[0],-t[1]],e.scaleFract=g.fract(e.scale),e.translateFract=g.fract(e.translate),t},viewport:function(t){return y(t||[a.drawingBufferWidth,a.drawingBufferHeight])}}]),v){var b=n,w=b.count,T=b.size,k=b.borderSize,A=b.sizeBuffer,M=new Uint8Array(2*w);if(T.length||k.length)for(var S=0;S<w;S++)M[2*S]=Math.round(255*(null==T[S]?T:T[S])/l),M[2*S+1]=Math.round(255*(null==k[S]?k:k[S])/l);A({data:M,usage:\"dynamic\"})}if(_){var E,C=n,L=C.count,I=C.color,P=C.borderColor,z=C.colorBuffer;if(t.tooManyColors){if(I.length||P.length){E=new Uint8Array(8*L);for(var O=0;O<L;O++){var D=I[O];E[8*O]=m[4*D],E[8*O+1]=m[4*D+1],E[8*O+2]=m[4*D+2],E[8*O+3]=m[4*D+3];var R=P[O];E[8*O+4]=m[4*R],E[8*O+5]=m[4*R+1],E[8*O+6]=m[4*R+2],E[8*O+7]=m[4*R+3]}}}else if(I.length||P.length){E=new Uint8Array(4*L+2);for(var F=0;F<L;F++)null!=I[F]&&(E[4*F]=I[F]%h,E[4*F+1]=Math.floor(I[F]/h)),null!=P[F]&&(E[4*F+2]=P[F]%h,E[4*F+3]=Math.floor(P[F]/h))}z({data:E||new Uint8Array(0),type:\"uint8\",usage:\"dynamic\"})}return n}))}},x.prototype.addMarker=function(t){var e,r=this.markerTextures,n=this.regl,i=this.markerCache,a=null==t?0:i.indexOf(t);if(a>=0)return a;if(t instanceof Uint8Array||t instanceof Uint8ClampedArray)e=t;else{e=new Uint8Array(t.length);for(var o=0,s=t.length;o<s;o++)e[o]=255*t[o]}var l=Math.floor(Math.sqrt(e.length));return a=r.length,i.push(t),r.push(n.texture({channels:1,data:e,radius:l,mag:\"linear\",min:\"linear\"})),a},x.prototype.updateColor=function(t){var e=this.paletteIds,r=this.palette,n=this.maxColors;Array.isArray(t)||(t=[t]);var i=[];if(\"number\"==typeof t[0]){var a=[];if(Array.isArray(t))for(var s=0;s<t.length;s+=4)a.push(t.slice(s,s+4));else for(var c=0;c<t.length;c+=4)a.push(t.subarray(c,c+4));t=a}for(var u=0;u<t.length;u++){var h=t[u];h=o(h,\"uint8\");var f=l(h,!1);if(null==e[f]){var p=r.length;e[f]=Math.floor(p/4),r[p]=h[0],r[p+1]=h[1],r[p+2]=h[2],r[p+3]=h[3]}i[u]=e[f]}return!this.tooManyColors&&r.length>4*n&&(this.tooManyColors=!0),this.updatePalette(r),1===i.length?i[0]:i},x.prototype.updatePalette=function(t){if(!this.tooManyColors){var e=this.maxColors,r=this.paletteTexture,n=Math.ceil(.25*t.length/e);if(n>1)for(var i=.25*(t=t.slice()).length%e;i<n*e;i++)t.push(0,0,0,0);r.height<n&&r.resize(e,n),r.subimage({width:Math.min(.25*t.length,e),height:n,data:t},0,0)}},x.prototype.destroy=function(){return this.groups.forEach((function(t){t.sizeBuffer.destroy(),t.positionBuffer.destroy(),t.positionFractBuffer.destroy(),t.colorBuffer.destroy(),t.activation.forEach((function(t){return t&&t.destroy&&t.destroy()})),t.selectionBuffer.destroy(),t.elements&&t.elements.destroy()})),this.groups.length=0,this.paletteTexture.destroy(),this.markerTextures.forEach((function(t){return t&&t.destroy&&t.destroy()})),this};var _=r(27976);t.exports=function(t,e){var r=new v(t,e),n=r.render.bind(r);return _(n,{render:n,update:r.update.bind(r),draw:r.draw.bind(r),destroy:r.destroy.bind(r),regl:r.regl,gl:r.gl,canvas:r.gl.canvas,groups:r.groups,markers:r.markerCache,palette:r.palette}),n}},31239:function(t,e,r){\"use strict\";var n=r(62172),i=r(6807),a=r(78112),o=r(16494),s=r(27902),l=r(5137),c=r(83473);function u(t,e){if(!(this instanceof u))return new u(t,e);this.traces=[],this.passes={},this.regl=t,this.scatter=n(t),this.canvas=this.scatter.canvas}function h(t,e,r){return(null!=t.id?t.id:t)<<16|(255&e)<<8|255&r}function f(t,e,r){var n,i,a,o,s=t[e],l=t[r];return s.length>2?(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 p(t){if(\"number\"==typeof t)return[t,t,t,t];if(2===t.length)return[t[0],t[1],t[0],t[1]];var e=l(t);return[e.x,e.y,e.x+e.width,e.y+e.height]}t.exports=u,u.prototype.render=function(){for(var t,e=this,r=[],n=arguments.length;n--;)r[n]=arguments[n];return r.length&&(t=this).update.apply(t,r),this.regl.attributes.preserveDrawingBuffer?this.draw():(this.dirty?null==this.planned&&(this.planned=o((function(){e.draw(),e.dirty=!0,e.planned=null}))):(this.draw(),this.dirty=!0,o((function(){e.dirty=!1}))),this)},u.prototype.update=function(){for(var t,e=[],r=arguments.length;r--;)e[r]=arguments[r];if(e.length){for(var n=0;n<e.length;n++)this.updateItem(n,e[n]);this.traces=this.traces.filter(Boolean);for(var i=[],a=0,o=0;o<this.traces.length;o++){for(var s=this.traces[o],l=this.traces[o].passes,c=0;c<l.length;c++)i.push(this.passes[l[c]]);s.passOffset=a,a+=s.passes.length}return(t=this.scatter).update.apply(t,i),this}},u.prototype.updateItem=function(t,e){var r=this.regl;if(null===e)return this.traces[t]=null,this;if(!e)return this;var n,o=i(e,{data:\"data items columns rows values dimensions samples x\",snap:\"snap cluster\",size:\"sizes size radius\",color:\"colors color fill fill-color fillColor\",opacity:\"opacity alpha transparency opaque\",borderSize:\"borderSizes borderSize border-size bordersize borderWidth borderWidths border-width borderwidth stroke-width strokeWidth strokewidth outline\",borderColor:\"borderColors borderColor bordercolor stroke stroke-color strokeColor\",marker:\"markers marker shape\",range:\"range ranges databox dataBox\",viewport:\"viewport viewBox viewbox\",domain:\"domain domains area areas\",padding:\"pad padding paddings pads margin margins\",transpose:\"transpose transposed\",diagonal:\"diagonal diag showDiagonal\",upper:\"upper up top upperhalf upperHalf showupperhalf showUpper showUpperHalf\",lower:\"lower low bottom lowerhalf lowerHalf showlowerhalf showLowerHalf showLower\"}),s=this.traces[t]||(this.traces[t]={id:t,buffer:r.buffer({usage:\"dynamic\",type:\"float\",data:new Uint8Array}),color:\"black\",marker:null,size:12,borderColor:\"transparent\",borderSize:1,viewport:l([r._gl.drawingBufferWidth,r._gl.drawingBufferHeight]),padding:[0,0,0,0],opacity:1,diagonal:!0,upper:!0,lower:!0});if(null!=o.color&&(s.color=o.color),null!=o.size&&(s.size=o.size),null!=o.marker&&(s.marker=o.marker),null!=o.borderColor&&(s.borderColor=o.borderColor),null!=o.borderSize&&(s.borderSize=o.borderSize),null!=o.opacity&&(s.opacity=o.opacity),o.viewport&&(s.viewport=l(o.viewport)),null!=o.diagonal&&(s.diagonal=o.diagonal),null!=o.upper&&(s.upper=o.upper),null!=o.lower&&(s.lower=o.lower),o.data){s.buffer(c(o.data)),s.columns=o.data.length,s.count=o.data[0].length,s.bounds=[];for(var u=0;u<s.columns;u++)s.bounds[u]=a(o.data[u],1)}o.range&&(s.range=o.range,n=s.range&&\"number\"!=typeof s.range[0]),o.domain&&(s.domain=o.domain);var d=!1;null!=o.padding&&(Array.isArray(o.padding)&&o.padding.length===s.columns&&\"number\"==typeof o.padding[o.padding.length-1]?(s.padding=o.padding.map(p),d=!0):s.padding=p(o.padding));var m=s.columns,g=s.count,y=s.viewport.width,v=s.viewport.height,x=s.viewport.x,_=s.viewport.y,b=y/m,w=v/m;s.passes=[];for(var T=0;T<m;T++)for(var k=0;k<m;k++)if((s.diagonal||k!==T)&&(s.upper||!(T>k))&&(s.lower||!(T<k))){var A=h(s.id,T,k),M=this.passes[A]||(this.passes[A]={});if(o.data&&(o.transpose?M.positions={x:{buffer:s.buffer,offset:k,count:g,stride:m},y:{buffer:s.buffer,offset:T,count:g,stride:m}}:M.positions={x:{buffer:s.buffer,offset:k*g,count:g},y:{buffer:s.buffer,offset:T*g,count:g}},M.bounds=f(s.bounds,T,k)),o.domain||o.viewport||o.data){var S=d?f(s.padding,T,k):s.padding;if(s.domain){var E=f(s.domain,T,k),C=E[0],L=E[1],I=E[2],P=E[3];M.viewport=[x+C*y+S[0],_+L*v+S[1],x+I*y-S[2],_+P*v-S[3]]}else M.viewport=[x+k*b+b*S[0],_+T*w+w*S[1],x+(k+1)*b-b*S[2],_+(T+1)*w-w*S[3]]}o.color&&(M.color=s.color),o.size&&(M.size=s.size),o.marker&&(M.marker=s.marker),o.borderSize&&(M.borderSize=s.borderSize),o.borderColor&&(M.borderColor=s.borderColor),o.opacity&&(M.opacity=s.opacity),o.range&&(M.range=n?f(s.range,T,k):s.range||M.bounds),s.passes.push(A)}return this},u.prototype.draw=function(){for(var t,e=[],r=arguments.length;r--;)e[r]=arguments[r];if(e.length){for(var n=[],i=0;i<e.length;i++)if(\"number\"==typeof e[i]){var a=this.traces[e[i]],o=a.passes,l=a.passOffset;n.push.apply(n,s(l,l+o.length))}else if(e[i].length){var c=e[i],u=this.traces[i],h=u.passes,f=u.passOffset;h=h.map((function(t,e){n[f+e]=c}))}(t=this.scatter).draw.apply(t,n)}else this.scatter.draw();return this},u.prototype.destroy=function(){return this.traces.forEach((function(t){t.buffer&&t.buffer.destroy&&t.buffer.destroy()})),this.traces=null,this.passes=null,this.scatter.destroy(),this}},81330:function(t){t.exports=function(){function t(t,e){this.id=Z++,this.type=t,this.data=e}function e(t){if(0===t.length)return[];var r=t.charAt(0),n=t.charAt(t.length-1);if(1<t.length&&r===n&&('\"'===r||\"'\"===r))return['\"'+t.substr(1,t.length-2).replace(/\\\\/g,\"\\\\\\\\\").replace(/\"/g,'\\\\\"')+'\"'];if(r=/\\[(false|true|null|\\d+|'[^']*'|\"[^\"]*\")\\]/.exec(t))return e(t.substr(0,r.index)).concat(e(r[1])).concat(e(t.substr(r.index+r[0].length)));if(1===(r=t.split(\".\")).length)return['\"'+t.replace(/\\\\/g,\"\\\\\\\\\").replace(/\"/g,'\\\\\"')+'\"'];for(t=[],n=0;n<r.length;++n)t=t.concat(e(r[n]));return t}function r(t){return\"[\"+e(t).join(\"][\")+\"]\"}function n(t){return\"string\"==typeof t?t.split():t}function i(t){return\"string\"==typeof t?document.querySelector(t):t}function a(t){var e,r,a,o,s=t||{};t={};var l=[],c=[],u=\"undefined\"==typeof window?1:window.devicePixelRatio,h=!1,f={},p=function(t){},d=function(){};if(\"string\"==typeof s?e=document.querySelector(s):\"object\"==typeof s&&(\"string\"==typeof s.nodeName&&\"function\"==typeof s.appendChild&&\"function\"==typeof s.getBoundingClientRect?e=s:\"function\"==typeof s.drawArrays||\"function\"==typeof s.drawElements?a=(o=s).canvas:(\"gl\"in s?o=s.gl:\"canvas\"in s?a=i(s.canvas):\"container\"in s&&(r=i(s.container)),\"attributes\"in s&&(t=s.attributes),\"extensions\"in s&&(l=n(s.extensions)),\"optionalExtensions\"in s&&(c=n(s.optionalExtensions)),\"onDone\"in s&&(p=s.onDone),\"profile\"in s&&(h=!!s.profile),\"pixelRatio\"in s&&(u=+s.pixelRatio),\"cachedCode\"in s&&(f=s.cachedCode))),e&&(\"canvas\"===e.nodeName.toLowerCase()?a=e:r=e),!o){if(!a){if(!(e=function(t,e,r){function n(){var e=window.innerWidth,n=window.innerHeight;t!==document.body&&(e=(n=a.getBoundingClientRect()).right-n.left,n=n.bottom-n.top),a.width=r*e,a.height=r*n}var i,a=document.createElement(\"canvas\");return G(a.style,{border:0,margin:0,padding:0,top:0,left:0,width:\"100%\",height:\"100%\"}),t.appendChild(a),t===document.body&&(a.style.position=\"absolute\",G(t.style,{margin:0,padding:0})),t!==document.body&&\"function\"==typeof ResizeObserver?(i=new ResizeObserver((function(){setTimeout(n)}))).observe(t):window.addEventListener(\"resize\",n,!1),n(),{canvas:a,onDestroy:function(){i?i.disconnect():window.removeEventListener(\"resize\",n),t.removeChild(a)}}}(r||document.body,0,u)))return null;a=e.canvas,d=e.onDestroy}void 0===t.premultipliedAlpha&&(t.premultipliedAlpha=!0),o=function(t,e){function r(r){try{return t.getContext(r,e)}catch(t){return null}}return r(\"webgl\")||r(\"experimental-webgl\")||r(\"webgl-experimental\")}(a,t)}return o?{gl:o,canvas:a,container:r,extensions:l,optionalExtensions:c,pixelRatio:u,profile:h,cachedCode:f,onDone:p,onDestroy:d}:(d(),p(\"webgl not supported, try upgrading your browser or graphics drivers http://get.webgl.org\"),null)}function o(t,e){for(var r=Array(t),n=0;n<t;++n)r[n]=e(n);return r}function s(t){var e,r;return e=(65535<t)<<4,e|=r=(255<(t>>>=e))<<3,(e|=r=(15<(t>>>=r))<<2)|(r=(3<(t>>>=r))<<1)|t>>>r>>1}function l(){function t(t){t:{for(var e=16;268435456>=e;e*=16)if(t<=e){t=e;break t}t=0}return 0<(e=r[s(t)>>2]).length?e.pop():new ArrayBuffer(t)}function e(t){r[s(t.byteLength)>>2].push(t)}var r=o(8,(function(){return[]}));return{alloc:t,free:e,allocType:function(e,r){var n=null;switch(e){case 5120:n=new Int8Array(t(r),0,r);break;case 5121:n=new Uint8Array(t(r),0,r);break;case 5122:n=new Int16Array(t(2*r),0,r);break;case 5123:n=new Uint16Array(t(2*r),0,r);break;case 5124:n=new Int32Array(t(4*r),0,r);break;case 5125:n=new Uint32Array(t(4*r),0,r);break;case 5126:n=new Float32Array(t(4*r),0,r);break;default:return null}return n.length!==r?n.subarray(0,r):n},freeType:function(t){e(t.buffer)}}}function c(t){return!!t&&\"object\"==typeof t&&Array.isArray(t.shape)&&Array.isArray(t.stride)&&\"number\"==typeof t.offset&&t.shape.length===t.stride.length&&(Array.isArray(t.data)||K(t.data))}function u(t,e,r,n,i,a){for(var o=0;o<e;++o)for(var s=t[o],l=0;l<r;++l)for(var c=s[l],u=0;u<n;++u)i[a++]=c[u]}function h(t,e,r,n,i){for(var a=1,o=r+1;o<e.length;++o)a*=e[o];var s=e[r];if(4==e.length-r){var l=e[r+1],c=e[r+2];for(e=e[r+3],o=0;o<s;++o)u(t[o],l,c,e,n,i),i+=a}else for(o=0;o<s;++o)h(t[o],e,r+1,n,i),i+=a}function f(t){return 0|et[Object.prototype.toString.call(t)]}function p(t,e){for(var r=0;r<e.length;++r)t[r]=e[r]}function d(t,e,r,n,i,a,o){for(var s=0,l=0;l<r;++l)for(var c=0;c<n;++c)t[s++]=e[i*l+a*c+o]}function m(t,e,r,n){function i(e){this.id=l++,this.buffer=t.createBuffer(),this.type=e,this.usage=35044,this.byteLength=0,this.dimension=1,this.dtype=5121,this.persistentData=null,r.profile&&(this.stats={size:0})}function a(e,r,n){e.byteLength=r.byteLength,t.bufferData(e.type,r,n)}function o(t,e,r,n,i,o){if(t.usage=r,Array.isArray(e)){if(t.dtype=n||5126,0<e.length)if(Array.isArray(e[0])){i=at(e);for(var s=n=1;s<i.length;++s)n*=i[s];t.dimension=n,a(t,e=it(e,i,t.dtype),r),o?t.persistentData=e:$.freeType(e)}else\"number\"==typeof e[0]?(t.dimension=i,p(i=$.allocType(t.dtype,e.length),e),a(t,i,r),o?t.persistentData=i:$.freeType(i)):K(e[0])&&(t.dimension=e[0].length,t.dtype=n||f(e[0])||5126,a(t,e=it(e,[e.length,e[0].length],t.dtype),r),o?t.persistentData=e:$.freeType(e))}else if(K(e))t.dtype=n||f(e),t.dimension=i,a(t,e,r),o&&(t.persistentData=new Uint8Array(new Uint8Array(e.buffer)));else if(c(e)){i=e.shape;var l=e.stride,u=(s=e.offset,0),h=0,m=0,g=0;1===i.length?(u=i[0],h=1,m=l[0],g=0):2===i.length&&(u=i[0],h=i[1],m=l[0],g=l[1]),t.dtype=n||f(e.data)||5126,t.dimension=h,d(i=$.allocType(t.dtype,u*h),e.data,u,h,m,g,s),a(t,i,r),o?t.persistentData=i:$.freeType(i)}else e instanceof ArrayBuffer&&(t.dtype=5121,t.dimension=i,a(t,e,r),o&&(t.persistentData=new Uint8Array(new Uint8Array(e))))}function s(r){e.bufferCount--,n(r),t.deleteBuffer(r.buffer),r.buffer=null,delete u[r.id]}var l=0,u={};i.prototype.bind=function(){t.bindBuffer(this.type,this.buffer)},i.prototype.destroy=function(){s(this)};var h=[];return r.profile&&(e.getTotalBufferSize=function(){var t=0;return Object.keys(u).forEach((function(e){t+=u[e].stats.size})),t}),{create:function(n,a,l,h){function m(e){var n=35044,i=null,a=0,s=0,l=1;return Array.isArray(e)||K(e)||c(e)||e instanceof ArrayBuffer?i=e:\"number\"==typeof e?a=0|e:e&&(\"data\"in e&&(i=e.data),\"usage\"in e&&(n=nt[e.usage]),\"type\"in e&&(s=rt[e.type]),\"dimension\"in e&&(l=0|e.dimension),\"length\"in e&&(a=0|e.length)),g.bind(),i?o(g,i,n,s,l,h):(a&&t.bufferData(g.type,a,n),g.dtype=s||5121,g.usage=n,g.dimension=l,g.byteLength=a),r.profile&&(g.stats.size=g.byteLength*ot[g.dtype]),m}e.bufferCount++;var g=new i(a);return u[g.id]=g,l||m(n),m._reglType=\"buffer\",m._buffer=g,m.subdata=function(e,r){var n,i=0|(r||0);if(g.bind(),K(e)||e instanceof ArrayBuffer)t.bufferSubData(g.type,i,e);else if(Array.isArray(e)){if(0<e.length)if(\"number\"==typeof e[0]){var a=$.allocType(g.dtype,e.length);p(a,e),t.bufferSubData(g.type,i,a),$.freeType(a)}else(Array.isArray(e[0])||K(e[0]))&&(n=at(e),a=it(e,n,g.dtype),t.bufferSubData(g.type,i,a),$.freeType(a))}else if(c(e)){n=e.shape;var o=e.stride,s=a=0,l=0,u=0;1===n.length?(a=n[0],s=1,l=o[0],u=0):2===n.length&&(a=n[0],s=n[1],l=o[0],u=o[1]),n=Array.isArray(e.data)?g.dtype:f(e.data),d(n=$.allocType(n,a*s),e.data,a,s,l,u,e.offset),t.bufferSubData(g.type,i,n),$.freeType(n)}return m},r.profile&&(m.stats=g.stats),m.destroy=function(){s(g)},m},createStream:function(t,e){var r=h.pop();return r||(r=new i(t)),r.bind(),o(r,e,35040,0,1,!1),r},destroyStream:function(t){h.push(t)},clear:function(){Q(u).forEach(s),h.forEach(s)},getBuffer:function(t){return t&&t._buffer instanceof i?t._buffer:null},restore:function(){Q(u).forEach((function(e){e.buffer=t.createBuffer(),t.bindBuffer(e.type,e.buffer),t.bufferData(e.type,e.persistentData||e.byteLength,e.usage)}))},_initBuffer:o}}function g(t,e,r,n){function i(t){this.id=l++,s[this.id]=this,this.buffer=t,this.primType=4,this.type=this.vertCount=0}function a(n,i,a,o,s,l,u){var h;if(n.buffer.bind(),i?((h=u)||K(i)&&(!c(i)||K(i.data))||(h=e.oes_element_index_uint?5125:5123),r._initBuffer(n.buffer,i,a,h,3)):(t.bufferData(34963,l,a),n.buffer.dtype=h||5121,n.buffer.usage=a,n.buffer.dimension=3,n.buffer.byteLength=l),h=u,!u){switch(n.buffer.dtype){case 5121:case 5120:h=5121;break;case 5123:case 5122:h=5123;break;case 5125:case 5124:h=5125}n.buffer.dtype=h}n.type=h,0>(i=s)&&(i=n.buffer.byteLength,5123===h?i>>=1:5125===h&&(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(t){n.elementsCount--,delete s[t.id],t.buffer.destroy(),t.buffer=null}var s={},l=0,u={uint8:5121,uint16:5123};e.oes_element_index_uint&&(u.uint32=5125),i.prototype.bind=function(){this.buffer.bind()};var h=[];return{create:function(t,e){function s(t){if(t)if(\"number\"==typeof t)l(t),h.primType=4,h.vertCount=0|t,h.type=5121;else{var e=null,r=35044,n=-1,i=-1,o=0,f=0;Array.isArray(t)||K(t)||c(t)?e=t:(\"data\"in t&&(e=t.data),\"usage\"in t&&(r=nt[t.usage]),\"primitive\"in t&&(n=st[t.primitive]),\"count\"in t&&(i=0|t.count),\"type\"in t&&(f=u[t.type]),\"length\"in t?o=0|t.length:(o=i,5123===f||5122===f?o*=2:5125!==f&&5124!==f||(o*=4))),a(h,e,r,n,i,o,f)}else l(),h.primType=4,h.vertCount=0,h.type=5121;return s}var l=r.create(null,34963,!0),h=new i(l._buffer);return n.elementsCount++,s(t),s._reglType=\"elements\",s._elements=h,s.subdata=function(t,e){return l.subdata(t,e),s},s.destroy=function(){o(h)},s},createStream:function(t){var e=h.pop();return e||(e=new i(r.create(null,34963,!0,!1)._buffer)),a(e,t,35040,-1,-1,0,0),e},destroyStream:function(t){h.push(t)},getElements:function(t){return\"function\"==typeof t&&t._elements instanceof i?t._elements:null},clear:function(){Q(s).forEach(o)}}}function y(t){for(var e=$.allocType(5123,t.length),r=0;r<t.length;++r)if(isNaN(t[r]))e[r]=65535;else if(1/0===t[r])e[r]=31744;else if(-1/0===t[r])e[r]=64512;else{lt[0]=t[r];var n=(a=ct[0])>>>31<<15,i=(a<<1>>>24)-127,a=a>>13&1023;e[r]=-24>i?n:-14>i?n+(a+1024>>-14-i):15<i?n+31744:n+(i+15<<10)+a}return e}function v(t){return Array.isArray(t)||K(t)}function x(t){return\"[object \"+t+\"]\"}function _(t){return Array.isArray(t)&&(0===t.length||\"number\"==typeof t[0])}function b(t){return!(!Array.isArray(t)||0===t.length||!v(t[0]))}function w(t){return Object.prototype.toString.call(t)}function T(t){if(!t)return!1;var e=w(t);return 0<=xt.indexOf(e)||_(t)||b(t)||c(t)}function k(t,e){36193===t.type?(t.data=y(e),$.freeType(e)):t.data=e}function A(t,e,r,n,i,a){if(t=void 0!==bt[t]?bt[t]:ft[t]*_t[e],a&&(t*=6),i){for(n=0;1<=r;)n+=t*r*r,r/=2;return n}return t*r*n}function M(t,e,r,n,i,a,o){function s(){this.format=this.internalformat=6408,this.type=5121,this.flipY=this.premultiplyAlpha=this.compressed=!1,this.unpackAlignment=1,this.colorSpace=37444,this.channels=this.height=this.width=0}function l(t,e){t.internalformat=e.internalformat,t.format=e.format,t.type=e.type,t.compressed=e.compressed,t.premultiplyAlpha=e.premultiplyAlpha,t.flipY=e.flipY,t.unpackAlignment=e.unpackAlignment,t.colorSpace=e.colorSpace,t.width=e.width,t.height=e.height,t.channels=e.channels}function u(t,e){if(\"object\"==typeof e&&e){\"premultiplyAlpha\"in e&&(t.premultiplyAlpha=e.premultiplyAlpha),\"flipY\"in e&&(t.flipY=e.flipY),\"alignment\"in e&&(t.unpackAlignment=e.alignment),\"colorSpace\"in e&&(t.colorSpace=V[e.colorSpace]),\"type\"in e&&(t.type=q[e.type]);var r=t.width,n=t.height,i=t.channels,a=!1;\"shape\"in e?(r=e.shape[0],n=e.shape[1],3===e.shape.length&&(i=e.shape[2],a=!0)):(\"radius\"in e&&(r=n=e.radius),\"width\"in e&&(r=e.width),\"height\"in e&&(n=e.height),\"channels\"in e&&(i=e.channels,a=!0)),t.width=0|r,t.height=0|n,t.channels=0|i,r=!1,\"format\"in e&&(r=e.format,n=t.internalformat=H[r],t.format=at[n],r in q&&!(\"type\"in e)&&(t.type=q[r]),r in Z&&(t.compressed=!0),r=!0),!a&&r?t.channels=ft[t.format]:a&&!r&&t.channels!==ht[t.format]&&(t.format=t.internalformat=ht[t.channels])}}function h(e){t.pixelStorei(37440,e.flipY),t.pixelStorei(37441,e.premultiplyAlpha),t.pixelStorei(37443,e.colorSpace),t.pixelStorei(3317,e.unpackAlignment)}function f(){s.call(this),this.yOffset=this.xOffset=0,this.data=null,this.needsFree=!1,this.element=null,this.needsCopy=!1}function p(t,e){var r=null;if(T(e)?r=e:e&&(u(t,e),\"x\"in e&&(t.xOffset=0|e.x),\"y\"in e&&(t.yOffset=0|e.y),T(e.data)&&(r=e.data)),e.copy){var n=i.viewportWidth,a=i.viewportHeight;t.width=t.width||n-t.xOffset,t.height=t.height||a-t.yOffset,t.needsCopy=!0}else if(r){if(K(r))t.channels=t.channels||4,t.data=r,\"type\"in e||5121!==t.type||(t.type=0|et[Object.prototype.toString.call(r)]);else if(_(r)){switch(t.channels=t.channels||4,a=(n=r).length,t.type){case 5121:case 5123:case 5125:case 5126:(a=$.allocType(t.type,a)).set(n),t.data=a;break;case 36193:t.data=y(n)}t.alignment=1,t.needsFree=!0}else if(c(r)){n=r.data,Array.isArray(n)||5121!==t.type||(t.type=0|et[Object.prototype.toString.call(n)]),a=r.shape;var o,s,l,h,f=r.stride;3===a.length?(l=a[2],h=f[2]):h=l=1,o=a[0],s=a[1],a=f[0],f=f[1],t.alignment=1,t.width=o,t.height=s,t.channels=l,t.format=t.internalformat=ht[l],t.needsFree=!0,o=h,r=r.offset,l=t.width,h=t.height,s=t.channels;for(var p=$.allocType(36193===t.type?5126:t.type,l*h*s),d=0,m=0;m<h;++m)for(var g=0;g<l;++g)for(var x=0;x<s;++x)p[d++]=n[a*g+f*m+o*x+r];k(t,p)}else if(w(r)===pt||w(r)===dt||w(r)===mt)w(r)===pt||w(r)===dt?t.element=r:t.element=r.canvas,t.width=t.element.width,t.height=t.element.height,t.channels=4;else if(w(r)===gt)t.element=r,t.width=r.width,t.height=r.height,t.channels=4;else if(w(r)===yt)t.element=r,t.width=r.naturalWidth,t.height=r.naturalHeight,t.channels=4;else if(w(r)===vt)t.element=r,t.width=r.videoWidth,t.height=r.videoHeight,t.channels=4;else if(b(r)){for(n=t.width||r[0].length,a=t.height||r.length,f=t.channels,f=v(r[0][0])?f||r[0][0].length:f||1,o=tt.shape(r),l=1,h=0;h<o.length;++h)l*=o[h];l=$.allocType(36193===t.type?5126:t.type,l),tt.flatten(r,o,\"\",l),k(t,l),t.alignment=1,t.width=n,t.height=a,t.channels=f,t.format=t.internalformat=ht[f],t.needsFree=!0}}else t.width=t.width||1,t.height=t.height||1,t.channels=t.channels||4}function d(e,r,i,a,o){var s=e.element,l=e.data,c=e.internalformat,u=e.format,f=e.type,p=e.width,d=e.height;h(e),s?t.texSubImage2D(r,o,i,a,u,f,s):e.compressed?t.compressedTexSubImage2D(r,o,i,a,c,p,d,l):e.needsCopy?(n(),t.copyTexSubImage2D(r,o,i,a,e.xOffset,e.yOffset,p,d)):t.texSubImage2D(r,o,i,a,p,d,u,f,l)}function m(){return ot.pop()||new f}function g(t){t.needsFree&&$.freeType(t.data),f.call(t),ot.push(t)}function x(){s.call(this),this.genMipmaps=!1,this.mipmapHint=4352,this.mipmask=0,this.images=Array(16)}function M(t,e,r){var n=t.images[0]=m();t.mipmask=1,n.width=t.width=e,n.height=t.height=r,n.channels=t.channels=4}function S(t,e){var r=null;if(T(e))l(r=t.images[0]=m(),t),p(r,e),t.mipmask=1;else if(u(t,e),Array.isArray(e.mipmap))for(var n=e.mipmap,i=0;i<n.length;++i)l(r=t.images[i]=m(),t),r.width>>=i,r.height>>=i,p(r,n[i]),t.mipmask|=1<<i;else l(r=t.images[0]=m(),t),p(r,e),t.mipmask=1;l(t,t.images[0])}function E(e,r){for(var i=e.images,a=0;a<i.length&&i[a];++a){var o=i[a],s=r,l=a,c=o.element,u=o.data,f=o.internalformat,p=o.format,d=o.type,m=o.width,g=o.height;h(o),c?t.texImage2D(s,l,p,p,d,c):o.compressed?t.compressedTexImage2D(s,l,f,m,g,0,u):o.needsCopy?(n(),t.copyTexImage2D(s,l,p,o.xOffset,o.yOffset,m,g,0)):t.texImage2D(s,l,p,m,g,0,p,d,u||null)}}function C(){var t=st.pop()||new x;s.call(t);for(var e=t.mipmask=0;16>e;++e)t.images[e]=null;return t}function L(t){for(var e=t.images,r=0;r<e.length;++r)e[r]&&g(e[r]),e[r]=null;st.push(t)}function I(){this.magFilter=this.minFilter=9728,this.wrapT=this.wrapS=33071,this.anisotropic=1,this.genMipmaps=!1,this.mipmapHint=4352}function P(t,e){\"min\"in e&&(t.minFilter=U[e.min],0<=ut.indexOf(t.minFilter)&&!(\"faces\"in e)&&(t.genMipmaps=!0)),\"mag\"in e&&(t.magFilter=j[e.mag]);var r=t.wrapS,n=t.wrapT;if(\"wrap\"in e){var i=e.wrap;\"string\"==typeof i?r=n=N[i]:Array.isArray(i)&&(r=N[i[0]],n=N[i[1]])}else\"wrapS\"in e&&(r=N[e.wrapS]),\"wrapT\"in e&&(n=N[e.wrapT]);if(t.wrapS=r,t.wrapT=n,\"anisotropic\"in e&&(t.anisotropic=e.anisotropic),\"mipmap\"in e){switch(r=!1,typeof e.mipmap){case\"string\":t.mipmapHint=B[e.mipmap],r=t.genMipmaps=!0;break;case\"boolean\":r=t.genMipmaps=e.mipmap;break;case\"object\":t.genMipmaps=!1,r=!0}!r||\"min\"in e||(t.minFilter=9984)}}function z(r,n){t.texParameteri(n,10241,r.minFilter),t.texParameteri(n,10240,r.magFilter),t.texParameteri(n,10242,r.wrapS),t.texParameteri(n,10243,r.wrapT),e.ext_texture_filter_anisotropic&&t.texParameteri(n,34046,r.anisotropic),r.genMipmaps&&(t.hint(33170,r.mipmapHint),t.generateMipmap(n))}function O(e){s.call(this),this.mipmask=0,this.internalformat=6408,this.id=lt++,this.refCount=1,this.target=e,this.texture=t.createTexture(),this.unit=-1,this.bindCount=0,this.texInfo=new I,o.profile&&(this.stats={size:0})}function D(e){t.activeTexture(33984),t.bindTexture(e.target,e.texture)}function R(){var e=_t[0];e?t.bindTexture(e.target,e.texture):t.bindTexture(3553,null)}function F(e){var r=e.texture,n=e.unit,i=e.target;0<=n&&(t.activeTexture(33984+n),t.bindTexture(i,null),_t[n]=null),t.deleteTexture(r),e.texture=null,e.params=null,e.pixels=null,e.refCount=0,delete ct[e.id],a.textureCount--}var B={\"don't care\":4352,\"dont care\":4352,nice:4354,fast:4353},N={repeat:10497,clamp:33071,mirror:33648},j={nearest:9728,linear:9729},U=G({mipmap:9987,\"nearest mipmap nearest\":9984,\"linear mipmap nearest\":9985,\"nearest mipmap linear\":9986,\"linear mipmap linear\":9987},j),V={none:0,browser:37444},q={uint8:5121,rgba4:32819,rgb565:33635,\"rgb5 a1\":32820},H={alpha:6406,luminance:6409,\"luminance alpha\":6410,rgb:6407,rgba:6408,rgba4:32854,\"rgb5 a1\":32855,rgb565:36194},Z={};e.ext_srgb&&(H.srgb=35904,H.srgba=35906),e.oes_texture_float&&(q.float32=q.float=5126),e.oes_texture_half_float&&(q.float16=q[\"half float\"]=36193),e.webgl_depth_texture&&(G(H,{depth:6402,\"depth stencil\":34041}),G(q,{uint16:5123,uint32:5125,\"depth stencil\":34042})),e.webgl_compressed_texture_s3tc&&G(Z,{\"rgb s3tc dxt1\":33776,\"rgba s3tc dxt1\":33777,\"rgba s3tc dxt3\":33778,\"rgba s3tc dxt5\":33779}),e.webgl_compressed_texture_atc&&G(Z,{\"rgb atc\":35986,\"rgba atc explicit alpha\":35987,\"rgba atc interpolated alpha\":34798}),e.webgl_compressed_texture_pvrtc&&G(Z,{\"rgb pvrtc 4bppv1\":35840,\"rgb pvrtc 2bppv1\":35841,\"rgba pvrtc 4bppv1\":35842,\"rgba pvrtc 2bppv1\":35843}),e.webgl_compressed_texture_etc1&&(Z[\"rgb etc1\"]=36196);var W=Array.prototype.slice.call(t.getParameter(34467));Object.keys(Z).forEach((function(t){var e=Z[t];0<=W.indexOf(e)&&(H[t]=e)}));var Y=Object.keys(H);r.textureFormats=Y;var X=[];Object.keys(H).forEach((function(t){X[H[t]]=t}));var J=[];Object.keys(q).forEach((function(t){J[q[t]]=t}));var rt=[];Object.keys(j).forEach((function(t){rt[j[t]]=t}));var nt=[];Object.keys(U).forEach((function(t){nt[U[t]]=t}));var it=[];Object.keys(N).forEach((function(t){it[N[t]]=t}));var at=Y.reduce((function(t,r){var n=H[r];return 6409===n||6406===n||6409===n||6410===n||6402===n||34041===n||e.ext_srgb&&(35904===n||35906===n)?t[n]=n:32855===n||0<=r.indexOf(\"rgba\")?t[n]=6408:t[n]=6407,t}),{}),ot=[],st=[],lt=0,ct={},xt=r.maxTextureUnits,_t=Array(xt).map((function(){return null}));return G(O.prototype,{bind:function(){this.bindCount+=1;var e=this.unit;if(0>e){for(var r=0;r<xt;++r){var n=_t[r];if(n){if(0<n.bindCount)continue;n.unit=-1}_t[r]=this,e=r;break}o.profile&&a.maxTextureUnits<e+1&&(a.maxTextureUnits=e+1),this.unit=e,t.activeTexture(33984+e),t.bindTexture(this.target,this.texture)}return e},unbind:function(){--this.bindCount},decRef:function(){0>=--this.refCount&&F(this)}}),o.profile&&(a.getTotalTextureSize=function(){var t=0;return Object.keys(ct).forEach((function(e){t+=ct[e].stats.size})),t}),{create2D:function(e,r){function n(t,e){var r=i.texInfo;I.call(r);var a=C();return\"number\"==typeof t?M(a,0|t,\"number\"==typeof e?0|e:0|t):t?(P(r,t),S(a,t)):M(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,D(i),E(a,3553),z(r,3553),R(),L(a),o.profile&&(i.stats.size=A(i.internalformat,i.type,a.width,a.height,r.genMipmaps,!1)),n.format=X[i.internalformat],n.type=J[i.type],n.mag=rt[r.magFilter],n.min=nt[r.minFilter],n.wrapS=it[r.wrapS],n.wrapT=it[r.wrapT],n}var i=new O(3553);return ct[i.id]=i,a.textureCount++,n(e,r),n.subimage=function(t,e,r,a){e|=0,r|=0,a|=0;var o=m();return l(o,i),o.width=0,o.height=0,p(o,t),o.width=o.width||(i.width>>a)-e,o.height=o.height||(i.height>>a)-r,D(i),d(o,3553,e,r,a),R(),g(o),n},n.resize=function(e,r){var a=0|e,s=0|r||a;if(a===i.width&&s===i.height)return n;n.width=i.width=a,n.height=i.height=s,D(i);for(var l=0;i.mipmask>>l;++l){var c=a>>l,u=s>>l;if(!c||!u)break;t.texImage2D(3553,l,i.format,c,u,0,i.format,i.type,null)}return R(),o.profile&&(i.stats.size=A(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(e,r,n,i,s,c){function h(t,e,r,n,i,a){var s,c=f.texInfo;for(I.call(c),s=0;6>s;++s)y[s]=C();if(\"number\"!=typeof t&&t){if(\"object\"==typeof t)if(e)S(y[0],t),S(y[1],e),S(y[2],r),S(y[3],n),S(y[4],i),S(y[5],a);else if(P(c,t),u(f,t),\"faces\"in t)for(t=t.faces,s=0;6>s;++s)l(y[s],f),S(y[s],t[s]);else for(s=0;6>s;++s)S(y[s],t)}else for(t=0|t||1,s=0;6>s;++s)M(y[s],t,t);for(l(f,y[0]),f.mipmask=c.genMipmaps?(y[0].width<<1)-1:y[0].mipmask,f.internalformat=y[0].internalformat,h.width=y[0].width,h.height=y[0].height,D(f),s=0;6>s;++s)E(y[s],34069+s);for(z(c,34067),R(),o.profile&&(f.stats.size=A(f.internalformat,f.type,h.width,h.height,c.genMipmaps,!0)),h.format=X[f.internalformat],h.type=J[f.type],h.mag=rt[c.magFilter],h.min=nt[c.minFilter],h.wrapS=it[c.wrapS],h.wrapT=it[c.wrapT],s=0;6>s;++s)L(y[s]);return h}var f=new O(34067);ct[f.id]=f,a.cubeCount++;var y=Array(6);return h(e,r,n,i,s,c),h.subimage=function(t,e,r,n,i){r|=0,n|=0,i|=0;var a=m();return l(a,f),a.width=0,a.height=0,p(a,e),a.width=a.width||(f.width>>i)-r,a.height=a.height||(f.height>>i)-n,D(f),d(a,34069+t,r,n,i),R(),g(a),h},h.resize=function(e){if((e|=0)!==f.width){h.width=f.width=e,h.height=f.height=e,D(f);for(var r=0;6>r;++r)for(var n=0;f.mipmask>>n;++n)t.texImage2D(34069+r,n,f.format,e>>n,e>>n,0,f.format,f.type,null);return R(),o.profile&&(f.stats.size=A(f.internalformat,f.type,h.width,h.height,!1,!0)),h}},h._reglType=\"textureCube\",h._texture=f,o.profile&&(h.stats=f.stats),h.destroy=function(){f.decRef()},h},clear:function(){for(var e=0;e<xt;++e)t.activeTexture(33984+e),t.bindTexture(3553,null),_t[e]=null;Q(ct).forEach(F),a.cubeCount=0,a.textureCount=0},getTexture:function(t){return null},restore:function(){for(var e=0;e<xt;++e){var r=_t[e];r&&(r.bindCount=0,r.unit=-1,_t[e]=null)}Q(ct).forEach((function(e){e.texture=t.createTexture(),t.bindTexture(e.target,e.texture);for(var r=0;32>r;++r)if(0!=(e.mipmask&1<<r))if(3553===e.target)t.texImage2D(3553,r,e.internalformat,e.width>>r,e.height>>r,0,e.internalformat,e.type,null);else for(var n=0;6>n;++n)t.texImage2D(34069+n,r,e.internalformat,e.width>>r,e.height>>r,0,e.internalformat,e.type,null);z(e.texInfo,e.target)}))},refresh:function(){for(var e=0;e<xt;++e){var r=_t[e];r&&(r.bindCount=0,r.unit=-1,_t[e]=null),t.activeTexture(33984+e),t.bindTexture(3553,null),t.bindTexture(34067,null)}}}}function S(t,e,r,n,i,a){function o(t,e,r){this.target=t,this.texture=e,this.renderbuffer=r;var n=t=0;e?(t=e.width,n=e.height):r&&(t=r.width,n=r.height),this.width=t,this.height=n}function s(t){t&&(t.texture&&t.texture._texture.decRef(),t.renderbuffer&&t.renderbuffer._renderbuffer.decRef())}function l(t,e,r){t&&(t.texture?t.texture._texture.refCount+=1:t.renderbuffer._renderbuffer.refCount+=1)}function c(e,r){r&&(r.texture?t.framebufferTexture2D(36160,e,r.target,r.texture._texture.texture,0):t.framebufferRenderbuffer(36160,e,36161,r.renderbuffer._renderbuffer.renderbuffer))}function u(t){var e=3553,r=null,n=null,i=t;return\"object\"==typeof t&&(i=t.data,\"target\"in t&&(e=0|t.target)),\"texture2d\"===(t=i._reglType)||\"textureCube\"===t?r=i:\"renderbuffer\"===t&&(n=i,e=36161),new o(e,r,n)}function h(t,e,r,a,s){return r?((t=n.create2D({width:t,height:e,format:a,type:s}))._texture.refCount=0,new o(3553,t,null)):((t=i.create({width:t,height:e,format:a}))._renderbuffer.refCount=0,new o(36161,null,t))}function f(t){return t&&(t.texture||t.renderbuffer)}function p(t,e,r){t&&(t.texture?t.texture.resize(e,r):t.renderbuffer&&t.renderbuffer.resize(e,r),t.width=e,t.height=r)}function d(){this.id=T++,k[this.id]=this,this.framebuffer=t.createFramebuffer(),this.height=this.width=0,this.colorAttachments=[],this.depthStencilAttachment=this.stencilAttachment=this.depthAttachment=null}function m(t){t.colorAttachments.forEach(s),s(t.depthAttachment),s(t.stencilAttachment),s(t.depthStencilAttachment)}function g(e){t.deleteFramebuffer(e.framebuffer),e.framebuffer=null,a.framebufferCount--,delete k[e.id]}function y(e){var n;t.bindFramebuffer(36160,e.framebuffer);var i=e.colorAttachments;for(n=0;n<i.length;++n)c(36064+n,i[n]);for(n=i.length;n<r.maxColorAttachments;++n)t.framebufferTexture2D(36160,36064+n,3553,null,0);t.framebufferTexture2D(36160,33306,3553,null,0),t.framebufferTexture2D(36160,36096,3553,null,0),t.framebufferTexture2D(36160,36128,3553,null,0),c(36096,e.depthAttachment),c(36128,e.stencilAttachment),c(33306,e.depthStencilAttachment),t.checkFramebufferStatus(36160),t.isContextLost(),t.bindFramebuffer(36160,x.next?x.next.framebuffer:null),x.cur=x.next,t.getError()}function v(t,e){function r(t,e){var i,a=0,o=0,s=!0,c=!0;i=null;var p=!0,d=\"rgba\",g=\"uint8\",v=1,x=null,w=null,T=null,k=!1;\"number\"==typeof t?(a=0|t,o=0|e||a):t?(\"shape\"in t?(a=(o=t.shape)[0],o=o[1]):(\"radius\"in t&&(a=o=t.radius),\"width\"in t&&(a=t.width),\"height\"in t&&(o=t.height)),(\"color\"in t||\"colors\"in t)&&(i=t.color||t.colors,Array.isArray(i)),i||(\"colorCount\"in t&&(v=0|t.colorCount),\"colorTexture\"in t&&(p=!!t.colorTexture,d=\"rgba4\"),\"colorType\"in t&&(g=t.colorType,!p)&&(\"half float\"===g||\"float16\"===g?d=\"rgba16f\":\"float\"!==g&&\"float32\"!==g||(d=\"rgba32f\")),\"colorFormat\"in t&&(d=t.colorFormat,0<=_.indexOf(d)?p=!0:0<=b.indexOf(d)&&(p=!1))),(\"depthTexture\"in t||\"depthStencilTexture\"in t)&&(k=!(!t.depthTexture&&!t.depthStencilTexture)),\"depth\"in t&&(\"boolean\"==typeof t.depth?s=t.depth:(x=t.depth,c=!1)),\"stencil\"in t&&(\"boolean\"==typeof t.stencil?c=t.stencil:(w=t.stencil,s=!1)),\"depthStencil\"in t&&(\"boolean\"==typeof t.depthStencil?s=c=t.depthStencil:(T=t.depthStencil,c=s=!1))):a=o=1;var A=null,M=null,S=null,E=null;if(Array.isArray(i))A=i.map(u);else if(i)A=[u(i)];else for(A=Array(v),i=0;i<v;++i)A[i]=h(a,o,p,d,g);for(a=a||A[0].width,o=o||A[0].height,x?M=u(x):s&&!c&&(M=h(a,o,k,\"depth\",\"uint32\")),w?S=u(w):c&&!s&&(S=h(a,o,!1,\"stencil\",\"uint8\")),T?E=u(T):!x&&!w&&c&&s&&(E=h(a,o,k,\"depth stencil\",\"depth stencil\")),s=null,i=0;i<A.length;++i)l(A[i]),A[i]&&A[i].texture&&(c=kt[A[i].texture._texture.format]*At[A[i].texture._texture.type],null===s&&(s=c));return l(M),l(S),l(E),m(n),n.width=a,n.height=o,n.colorAttachments=A,n.depthAttachment=M,n.stencilAttachment=S,n.depthStencilAttachment=E,r.color=A.map(f),r.depth=f(M),r.stencil=f(S),r.depthStencil=f(E),r.width=n.width,r.height=n.height,y(n),r}var n=new d;return a.framebufferCount++,r(t,e),G(r,{resize:function(t,e){var i=Math.max(0|t,1),a=Math.max(0|e||i,1);if(i===n.width&&a===n.height)return r;for(var o=n.colorAttachments,s=0;s<o.length;++s)p(o[s],i,a);return p(n.depthAttachment,i,a),p(n.stencilAttachment,i,a),p(n.depthStencilAttachment,i,a),n.width=r.width=i,n.height=r.height=a,y(n),r},_reglType:\"framebuffer\",_framebuffer:n,destroy:function(){g(n),m(n)},use:function(t){x.setFBO({framebuffer:r},t)}})}var x={cur:null,next:null,dirty:!1,setFBO:null},_=[\"rgba\"],b=[\"rgba4\",\"rgb565\",\"rgb5 a1\"];e.ext_srgb&&b.push(\"srgba\"),e.ext_color_buffer_half_float&&b.push(\"rgba16f\",\"rgb16f\"),e.webgl_color_buffer_float&&b.push(\"rgba32f\");var w=[\"uint8\"];e.oes_texture_half_float&&w.push(\"half float\",\"float16\"),e.oes_texture_float&&w.push(\"float\",\"float32\");var T=0,k={};return G(x,{getFramebuffer:function(t){return\"function\"==typeof t&&\"framebuffer\"===t._reglType&&(t=t._framebuffer)instanceof d?t:null},create:v,createCube:function(t){function e(t){var i,a={color:null},o=0,s=null;i=\"rgba\";var l=\"uint8\",c=1;if(\"number\"==typeof t?o=0|t:t?(\"shape\"in t?o=t.shape[0]:(\"radius\"in t&&(o=0|t.radius),\"width\"in t?o=0|t.width:\"height\"in t&&(o=0|t.height)),(\"color\"in t||\"colors\"in t)&&(s=t.color||t.colors,Array.isArray(s)),s||(\"colorCount\"in t&&(c=0|t.colorCount),\"colorType\"in t&&(l=t.colorType),\"colorFormat\"in t&&(i=t.colorFormat)),\"depth\"in t&&(a.depth=t.depth),\"stencil\"in t&&(a.stencil=t.stencil),\"depthStencil\"in t&&(a.depthStencil=t.depthStencil)):o=1,s)if(Array.isArray(s))for(t=[],i=0;i<s.length;++i)t[i]=s[i];else t=[s];else for(t=Array(c),s={radius:o,format:i,type:l},i=0;i<c;++i)t[i]=n.createCube(s);for(a.color=Array(t.length),i=0;i<t.length;++i)c=t[i],o=o||c.width,a.color[i]={target:34069,data:t[i]};for(i=0;6>i;++i){for(c=0;c<t.length;++c)a.color[c].target=34069+i;0<i&&(a.depth=r[0].depth,a.stencil=r[0].stencil,a.depthStencil=r[0].depthStencil),r[i]?r[i](a):r[i]=v(a)}return G(e,{width:o,height:o,color:t})}var r=Array(6);return e(t),G(e,{faces:r,resize:function(t){var n=0|t;if(n===e.width)return e;var i=e.color;for(t=0;t<i.length;++t)i[t].resize(n);for(t=0;6>t;++t)r[t].resize(n);return e.width=e.height=n,e},_reglType:\"framebufferCube\",destroy:function(){r.forEach((function(t){t.destroy()}))}})},clear:function(){Q(k).forEach(g)},restore:function(){x.cur=null,x.next=null,x.dirty=!0,Q(k).forEach((function(e){e.framebuffer=t.createFramebuffer(),y(e)}))}})}function E(){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 C(t,e,r,n,i,a,o){function s(){this.id=++h,this.attributes=[],this.elements=null,this.ownsElements=!1,this.offset=this.count=0,this.instances=-1,this.primitive=4;var t=e.oes_vertex_array_object;this.vao=t?t.createVertexArrayOES():null,f[this.id]=this,this.buffers=[]}var l=r.maxAttributes,u=Array(l);for(r=0;r<l;++r)u[r]=new E;var h=0,f={},p={Record:E,scope:{},state:u,currentVAO:null,targetVAO:null,restore:e.oes_vertex_array_object?function(){e.oes_vertex_array_object&&Q(f).forEach((function(t){t.refresh()}))}:function(){},createVAO:function(t){function e(t){var n;Array.isArray(t)?(n=t,r.elements&&r.ownsElements&&r.elements.destroy(),r.elements=null,r.ownsElements=!1,r.offset=0,r.count=0,r.instances=-1,r.primitive=4):(t.elements?(n=t.elements,r.ownsElements?(\"function\"==typeof n&&\"elements\"===n._reglType?r.elements.destroy():r.elements(n),r.ownsElements=!1):a.getElements(t.elements)?(r.elements=t.elements,r.ownsElements=!1):(r.elements=a.create(t.elements),r.ownsElements=!0)):(r.elements=null,r.ownsElements=!1),n=t.attributes,r.offset=0,r.count=-1,r.instances=-1,r.primitive=4,r.elements&&(r.count=r.elements._elements.vertCount,r.primitive=r.elements._elements.primType),\"offset\"in t&&(r.offset=0|t.offset),\"count\"in t&&(r.count=0|t.count),\"instances\"in t&&(r.instances=0|t.instances),\"primitive\"in t&&(r.primitive=st[t.primitive])),t={};var o=r.attributes;o.length=n.length;for(var s=0;s<n.length;++s){var l,u=n[s],h=o[s]=new E,f=u.data||u;Array.isArray(f)||K(f)||c(f)?(r.buffers[s]&&(l=r.buffers[s],K(f)&&l._buffer.byteLength>=f.byteLength?l.subdata(f):(l.destroy(),r.buffers[s]=null)),r.buffers[s]||(l=r.buffers[s]=i.create(u,34962,!1,!0)),h.buffer=i.getBuffer(l),h.size=0|h.buffer.dimension,h.normalized=!1,h.type=h.buffer.dtype,h.offset=0,h.stride=0,h.divisor=0,h.state=1,t[s]=1):i.getBuffer(u)?(h.buffer=i.getBuffer(u),h.size=0|h.buffer.dimension,h.normalized=!1,h.type=h.buffer.dtype,h.offset=0,h.stride=0,h.divisor=0,h.state=1):i.getBuffer(u.buffer)?(h.buffer=i.getBuffer(u.buffer),h.size=0|(+u.size||h.buffer.dimension),h.normalized=!!u.normalized||!1,h.type=\"type\"in u?rt[u.type]:h.buffer.dtype,h.offset=0|(u.offset||0),h.stride=0|(u.stride||0),h.divisor=0|(u.divisor||0),h.state=1):\"x\"in u&&(h.x=+u.x||0,h.y=+u.y||0,h.z=+u.z||0,h.w=+u.w||0,h.state=2)}for(l=0;l<r.buffers.length;++l)!t[l]&&r.buffers[l]&&(r.buffers[l].destroy(),r.buffers[l]=null);return r.refresh(),e}var r=new s;return n.vaoCount+=1,e.destroy=function(){for(var t=0;t<r.buffers.length;++t)r.buffers[t]&&r.buffers[t].destroy();r.buffers.length=0,r.ownsElements&&(r.elements.destroy(),r.elements=null,r.ownsElements=!1),r.destroy()},e._vao=r,e._reglType=\"vao\",e(t)},getVAO:function(t){return\"function\"==typeof t&&t._vao?t._vao:null},destroyBuffer:function(e){for(var r=0;r<u.length;++r){var n=u[r];n.buffer===e&&(t.disableVertexAttribArray(r),n.buffer=null)}},setVAO:e.oes_vertex_array_object?function(t){if(t!==p.currentVAO){var r=e.oes_vertex_array_object;t?r.bindVertexArrayOES(t.vao):r.bindVertexArrayOES(null),p.currentVAO=t}}:function(r){if(r!==p.currentVAO){if(r)r.bindAttrs();else{for(var n=e.angle_instanced_arrays,i=0;i<u.length;++i){var a=u[i];a.buffer?(t.enableVertexAttribArray(i),a.buffer.bind(),t.vertexAttribPointer(i,a.size,a.type,a.normalized,a.stride,a.offfset),n&&a.divisor&&n.vertexAttribDivisorANGLE(i,a.divisor)):(t.disableVertexAttribArray(i),t.vertexAttrib4f(i,a.x,a.y,a.z,a.w))}o.elements?t.bindBuffer(34963,o.elements.buffer.buffer):t.bindBuffer(34963,null)}p.currentVAO=r}},clear:e.oes_vertex_array_object?function(){Q(f).forEach((function(t){t.destroy()}))}:function(){}};return s.prototype.bindAttrs=function(){for(var r=e.angle_instanced_arrays,n=this.attributes,i=0;i<n.length;++i){var o=n[i];o.buffer?(t.enableVertexAttribArray(i),t.bindBuffer(34962,o.buffer.buffer),t.vertexAttribPointer(i,o.size,o.type,o.normalized,o.stride,o.offset),r&&o.divisor&&r.vertexAttribDivisorANGLE(i,o.divisor)):(t.disableVertexAttribArray(i),t.vertexAttrib4f(i,o.x,o.y,o.z,o.w))}for(r=n.length;r<l;++r)t.disableVertexAttribArray(r);(r=a.getElements(this.elements))?t.bindBuffer(34963,r.buffer.buffer):t.bindBuffer(34963,null)},s.prototype.refresh=function(){var t=e.oes_vertex_array_object;t&&(t.bindVertexArrayOES(this.vao),this.bindAttrs(),p.currentVAO=null,t.bindVertexArrayOES(null))},s.prototype.destroy=function(){if(this.vao){var t=e.oes_vertex_array_object;this===p.currentVAO&&(p.currentVAO=null,t.bindVertexArrayOES(null)),t.deleteVertexArrayOES(this.vao),this.vao=null}this.ownsElements&&(this.elements.destroy(),this.elements=null,this.ownsElements=!1),f[this.id]&&(delete f[this.id],--n.vaoCount)},p}function L(t,e,r,n){function i(t,e,r,n){this.name=t,this.id=e,this.location=r,this.info=n}function a(t,e){for(var r=0;r<t.length;++r)if(t[r].id===e.id)return void(t[r].location=e.location);t.push(e)}function o(r,n,i){if(!(o=(i=35632===r?c:u)[n])){var a=e.str(n),o=t.createShader(r);t.shaderSource(o,a),t.compileShader(o),i[n]=o}return o}function s(t,e){this.id=p++,this.fragId=t,this.vertId=e,this.program=null,this.uniforms=[],this.attributes=[],this.refCount=1,n.profile&&(this.stats={uniformsCount:0,attributesCount:0})}function l(r,s,l){var c;c=o(35632,r.fragId);var u=o(35633,r.vertId);if(s=r.program=t.createProgram(),t.attachShader(s,c),t.attachShader(s,u),l)for(c=0;c<l.length;++c)u=l[c],t.bindAttribLocation(s,u[0],u[1]);t.linkProgram(s),u=t.getProgramParameter(s,35718),n.profile&&(r.stats.uniformsCount=u);var h=r.uniforms;for(c=0;c<u;++c)if(l=t.getActiveUniform(s,c))if(1<l.size)for(var f=0;f<l.size;++f){var p=l.name.replace(\"[0]\",\"[\"+f+\"]\");a(h,new i(p,e.id(p),t.getUniformLocation(s,p),l))}else a(h,new i(l.name,e.id(l.name),t.getUniformLocation(s,l.name),l));for(u=t.getProgramParameter(s,35721),n.profile&&(r.stats.attributesCount=u),r=r.attributes,c=0;c<u;++c)(l=t.getActiveAttrib(s,c))&&a(r,new i(l.name,e.id(l.name),t.getAttribLocation(s,l.name),l))}var c={},u={},h={},f=[],p=0;return n.profile&&(r.getMaxUniformsCount=function(){var t=0;return f.forEach((function(e){e.stats.uniformsCount>t&&(t=e.stats.uniformsCount)})),t},r.getMaxAttributesCount=function(){var t=0;return f.forEach((function(e){e.stats.attributesCount>t&&(t=e.stats.attributesCount)})),t}),{clear:function(){var e=t.deleteShader.bind(t);Q(c).forEach(e),c={},Q(u).forEach(e),u={},f.forEach((function(e){t.deleteProgram(e.program)})),f.length=0,h={},r.shaderCount=0},program:function(e,n,i,a){var o=h[n];o||(o=h[n]={});var p=o[e];if(p&&(p.refCount++,!a))return p;var d=new s(n,e);return r.shaderCount++,l(d,i,a),p||(o[e]=d),f.push(d),G(d,{destroy:function(){if(d.refCount--,0>=d.refCount){t.deleteProgram(d.program);var e=f.indexOf(d);f.splice(e,1),r.shaderCount--}0>=o[d.vertId].refCount&&(t.deleteShader(u[d.vertId]),delete u[d.vertId],delete h[d.fragId][d.vertId]),Object.keys(h[d.fragId]).length||(t.deleteShader(c[d.fragId]),delete c[d.fragId],delete h[d.fragId])}})},restore:function(){c={},u={};for(var t=0;t<f.length;++t)l(f[t],null,f[t].attributes.map((function(t){return[t.location,t.name]})))},shader:o,frag:-1,vert:-1}}function I(t,e,r,n,i,a,o){function s(i){var a;a=null===e.next?5121:e.next.colorAttachments[0].texture._texture.type;var o=0,s=0,l=n.framebufferWidth,c=n.framebufferHeight,u=null;return K(i)?u=i:i&&(o=0|i.x,s=0|i.y,l=0|(i.width||n.framebufferWidth-o),c=0|(i.height||n.framebufferHeight-s),u=i.data||null),r(),i=l*c*4,u||(5121===a?u=new Uint8Array(i):5126===a&&(u=u||new Float32Array(i))),t.pixelStorei(3333,4),t.readPixels(o,s,l,c,6408,a,u),u}return function(t){return t&&\"framebuffer\"in t?function(t){var r;return e.setFBO({framebuffer:t.framebuffer},(function(){r=s(t)})),r}(t):s(t)}}function P(t,e){return t>>>e|t<<32-e}function z(t,e){var r=(65535&t)+(65535&e);return(t>>16)+(e>>16)+(r>>16)<<16|65535&r}function O(t){return Array.prototype.slice.call(t)}function D(t){return O(t).join(\"\")}function R(t){function e(){var t=[],e=[];return G((function(){t.push.apply(t,O(arguments))}),{def:function(){var r=\"v\"+i++;return e.push(r),0<arguments.length&&(t.push(r,\"=\"),t.push.apply(t,O(arguments)),t.push(\";\")),r},toString:function(){return D([0<e.length?\"var \"+e.join(\",\")+\";\":\"\",D(t)])}})}function r(){function t(t,e){n(t,e,\"=\",r.def(t,e),\";\")}var r=e(),n=e(),i=r.toString,a=n.toString;return G((function(){r.apply(r,O(arguments))}),{def:r.def,entry:r,exit:n,save:t,set:function(e,n,i){t(e,n),r(e,n,\"=\",i,\";\")},toString:function(){return i()+a()}})}var n=t&&t.cache,i=0,a=[],o=[],s=[],l=e(),c={};return{global:l,link:function(t,e){var r=e&&e.stable;if(!r)for(var n=0;n<o.length;++n)if(o[n]===t&&!s[n])return a[n];return n=\"g\"+i++,a.push(n),o.push(t),s.push(r),n},block:e,proc:function(t,e){function n(){var t=\"a\"+i.length;return i.push(t),t}var i=[];e=e||0;for(var a=0;a<e;++a)n();var o=(a=r()).toString;return c[t]=G(a,{arg:n,toString:function(){return D([\"function(\",i.join(),\"){\",o(),\"}\"])}})},scope:r,cond:function(){var t=D(arguments),e=r(),n=r(),i=e.toString,a=n.toString;return G(e,{then:function(){return e.apply(e,O(arguments)),this},else:function(){return n.apply(n,O(arguments)),this},toString:function(){var e=a();return e&&(e=\"else{\"+e+\"}\"),D([\"if(\",t,\"){\",i(),\"}\",e])}})},compile:function(){var t=['\"use strict\";',l,\"return {\"];Object.keys(c).forEach((function(e){t.push('\"',e,'\":',c[e].toString(),\",\")})),t.push(\"}\");var e,r=D(t).replace(/;/g,\";\\n\").replace(/}/g,\"}\\n\").replace(/{/g,\"{\\n\");return n&&(e=function(t){for(var e,r=\"\",n=0;n<t.length;n++)e=t.charCodeAt(n),r+=\"0123456789abcdef\".charAt(e>>>4&15)+\"0123456789abcdef\".charAt(15&e);return r}(function(t){for(var e=Array(t.length>>2),r=0;r<e.length;r++)e[r]=0;for(r=0;r<8*t.length;r+=8)e[r>>5]|=(255&t.charCodeAt(r/8))<<24-r%32;var n,i,a,o,s,l,c,u,h,f,p,d=8*t.length;for(t=[1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225],r=Array(64),e[d>>5]|=128<<24-d%32,e[15+(d+64>>9<<4)]=d,u=0;u<e.length;u+=16){for(d=t[0],n=t[1],i=t[2],a=t[3],o=t[4],s=t[5],l=t[6],c=t[7],h=0;64>h;h++){var m;16>h?r[h]=e[h+u]:(f=h,p=z(p=P(p=r[h-2],17)^P(p,19)^p>>>10,r[h-7]),m=P(m=r[h-15],7)^P(m,18)^m>>>3,r[f]=z(z(p,m),r[h-16])),f=z(z(z(z(c,f=P(f=o,6)^P(f,11)^P(f,25)),o&s^~o&l),Mt[h]),r[h]),p=z(c=P(c=d,2)^P(c,13)^P(c,22),d&n^d&i^n&i),c=l,l=s,s=o,o=z(a,f),a=i,i=n,n=d,d=z(f,p)}t[0]=z(d,t[0]),t[1]=z(n,t[1]),t[2]=z(i,t[2]),t[3]=z(a,t[3]),t[4]=z(o,t[4]),t[5]=z(s,t[5]),t[6]=z(l,t[6]),t[7]=z(c,t[7])}for(e=\"\",r=0;r<32*t.length;r+=8)e+=String.fromCharCode(t[r>>5]>>>24-r%32&255);return e}(function(t){for(var e,r,n=\"\",i=-1;++i<t.length;)e=t.charCodeAt(i),r=i+1<t.length?t.charCodeAt(i+1):0,55296<=e&&56319>=e&&56320<=r&&57343>=r&&(e=65536+((1023&e)<<10)+(1023&r),i++),127>=e?n+=String.fromCharCode(e):2047>=e?n+=String.fromCharCode(192|e>>>6&31,128|63&e):65535>=e?n+=String.fromCharCode(224|e>>>12&15,128|e>>>6&63,128|63&e):2097151>=e&&(n+=String.fromCharCode(240|e>>>18&7,128|e>>>12&63,128|e>>>6&63,128|63&e));return n}(r))),n[e])?n[e].apply(null,o):(r=Function.apply(null,a.concat(r)),n&&(n[e]=r),r.apply(null,o))}}}function F(t){return Array.isArray(t)||K(t)||c(t)}function B(t){return t.sort((function(t,e){return\"viewport\"===t?-1:\"viewport\"===e?1:t<e?-1:1}))}function N(t,e,r,n){this.thisDep=t,this.contextDep=e,this.propDep=r,this.append=n}function j(t){return t&&!(t.thisDep||t.contextDep||t.propDep)}function U(t){return new N(!1,!1,!1,t)}function V(t,e){var r=t.type;if(0===r)return new N(!0,1<=(r=t.data.length),2<=r,e);if(4===r)return new N((r=t.data).thisDep,r.contextDep,r.propDep,e);if(5===r)return new N(!1,!1,!1,e);if(6===r){for(var n=r=!1,i=!1,a=0;a<t.data.length;++a){var o=t.data[a];1===o.type?i=!0:2===o.type?n=!0:3===o.type?r=!0:0===o.type?(r=!0,1<=(o=o.data)&&(n=!0),2<=o&&(i=!0)):4===o.type&&(r=r||o.data.thisDep,n=n||o.data.contextDep,i=i||o.data.propDep)}return new N(r,n,i,e)}return new N(3===r,2===r,1===r,e)}function q(t,e,r,n,i,a,s,l,c,u,h,f,p,d,m,g){function y(t){return t.replace(\".\",\"_\")}function x(t,e,r){var n=y(t);at.push(t),it[n]=nt[n]=!!r,ot[n]=e}function _(t,e,r){var n=y(t);at.push(t),Array.isArray(r)?(nt[n]=r.slice(),it[n]=r.slice()):nt[n]=it[n]=r,lt[n]=e}function b(){var t=R({cache:m}),r=t.link,n=t.global;t.id=ht++,t.batchId=\"0\";var i=r(ct),a=t.shared={props:\"a0\"};Object.keys(ct).forEach((function(t){a[t]=n.def(i,\".\",t)}));var o=t.next={},s=t.current={};Object.keys(lt).forEach((function(t){Array.isArray(nt[t])&&(o[t]=n.def(a.next,\".\",t),s[t]=n.def(a.current,\".\",t))}));var l=t.constants={};Object.keys(ut).forEach((function(t){l[t]=n.def(JSON.stringify(ut[t]))})),t.invoke=function(e,n){switch(n.type){case 0:var i=[\"this\",a.context,a.props,t.batchId];return e.def(r(n.data),\".call(\",i.slice(0,Math.max(n.data.length+1,4)),\")\");case 1:return e.def(a.props,n.data);case 2:return e.def(a.context,n.data);case 3:return e.def(\"this\",n.data);case 4:return n.data.append(t,e),n.data.ref;case 5:return n.data.toString();case 6:return n.data.map((function(r){return t.invoke(e,r)}))}},t.attribCache={};var c={};return t.scopeAttrib=function(t){if((t=e.id(t))in c)return c[t];var n=u.scope[t];return n||(n=u.scope[t]=new J),c[t]=r(n)},t}function w(t,e){var r=t.static,n=t.dynamic;if(\"framebuffer\"in r){var i=r.framebuffer;return i?(i=l.getFramebuffer(i),U((function(t,e){var r=t.link(i),n=t.shared;return e.set(n.framebuffer,\".next\",r),n=n.context,e.set(n,\".framebufferWidth\",r+\".width\"),e.set(n,\".framebufferHeight\",r+\".height\"),r}))):U((function(t,e){var r=t.shared;return e.set(r.framebuffer,\".next\",\"null\"),r=r.context,e.set(r,\".framebufferWidth\",r+\".drawingBufferWidth\"),e.set(r,\".framebufferHeight\",r+\".drawingBufferHeight\"),\"null\"}))}if(\"framebuffer\"in n){var a=n.framebuffer;return V(a,(function(t,e){var r=t.invoke(e,a),n=t.shared,i=n.framebuffer;return r=e.def(i,\".getFramebuffer(\",r,\")\"),e.set(i,\".next\",r),n=n.context,e.set(n,\".framebufferWidth\",r+\"?\"+r+\".width:\"+n+\".drawingBufferWidth\"),e.set(n,\".framebufferHeight\",r+\"?\"+r+\".height:\"+n+\".drawingBufferHeight\"),r}))}return null}function T(t,r,n){function i(t){if(t in a){var r=e.id(a[t]);return(t=U((function(){return r}))).id=r,t}if(t in o){var n=o[t];return V(n,(function(t,e){var r=t.invoke(e,n);return e.def(t.shared.strings,\".id(\",r,\")\")}))}return null}var a=t.static,o=t.dynamic,s=i(\"frag\"),l=i(\"vert\"),c=null;return j(s)&&j(l)?(c=h.program(l.id,s.id,null,n),t=U((function(t,e){return t.link(c)}))):t=new N(s&&s.thisDep||l&&l.thisDep,s&&s.contextDep||l&&l.contextDep,s&&s.propDep||l&&l.propDep,(function(t,e){var r,n,i=t.shared.shader;return r=s?s.append(t,e):e.def(i,\".\",\"frag\"),n=l?l.append(t,e):e.def(i,\".\",\"vert\"),e.def(i+\".program(\"+n+\",\"+r+\")\")})),{frag:s,vert:l,progVar:t,program:c}}function k(t,e){function r(t,e){if(t in n){var r=0|n[t];return e?o.offset=r:o.instances=r,U((function(t,n){return e&&(t.OFFSET=r),r}))}if(t in i){var a=i[t];return V(a,(function(t,r){var n=t.invoke(r,a);return e&&(t.OFFSET=n),n}))}if(e){if(c)return U((function(t,e){return t.OFFSET=0}));if(s)return new N(l.thisDep,l.contextDep,l.propDep,(function(t,e){return e.def(t.shared.vao+\".currentVAO?\"+t.shared.vao+\".currentVAO.offset:0\")}))}else if(s)return new N(l.thisDep,l.contextDep,l.propDep,(function(t,e){return e.def(t.shared.vao+\".currentVAO?\"+t.shared.vao+\".currentVAO.instances:-1\")}));return null}var n=t.static,i=t.dynamic,o={},s=!1,l=function(){if(\"vao\"in n){var t=n.vao;return null!==t&&null===u.getVAO(t)&&(t=u.createVAO(t)),s=!0,o.vao=t,U((function(e){var r=u.getVAO(t);return r?e.link(r):\"null\"}))}if(\"vao\"in i){s=!0;var e=i.vao;return V(e,(function(t,r){var n=t.invoke(r,e);return r.def(t.shared.vao+\".getVAO(\"+n+\")\")}))}return null}(),c=!1,h=function(){if(\"elements\"in n){var t=n.elements;if(o.elements=t,F(t)){var e=o.elements=a.create(t,!0);t=a.getElements(e),c=!0}else t&&(t=a.getElements(t),c=!0);return e=U((function(e,r){if(t){var n=e.link(t);return e.ELEMENTS=n}return e.ELEMENTS=null})),e.value=t,e}if(\"elements\"in i){c=!0;var r=i.elements;return V(r,(function(t,e){var n=(i=t.shared).isBufferArgs,i=i.elements,a=t.invoke(e,r),o=e.def(\"null\");return n=e.def(n,\"(\",a,\")\"),a=t.cond(n).then(o,\"=\",i,\".createStream(\",a,\");\").else(o,\"=\",i,\".getElements(\",a,\");\"),e.entry(a),e.exit(t.cond(n).then(i,\".destroyStream(\",o,\");\")),t.ELEMENTS=o}))}return s?new N(l.thisDep,l.contextDep,l.propDep,(function(t,e){return e.def(t.shared.vao+\".currentVAO?\"+t.shared.elements+\".getElements(\"+t.shared.vao+\".currentVAO.elements):null\")})):null}(),f=r(\"offset\",!0),p=function(){if(\"primitive\"in n){var t=n.primitive;return o.primitive=t,U((function(e,r){return st[t]}))}if(\"primitive\"in i){var e=i.primitive;return V(e,(function(t,r){var n=t.constants.primTypes,i=t.invoke(r,e);return r.def(n,\"[\",i,\"]\")}))}return c?j(h)?h.value?U((function(t,e){return e.def(t.ELEMENTS,\".primType\")})):U((function(){return 4})):new N(h.thisDep,h.contextDep,h.propDep,(function(t,e){var r=t.ELEMENTS;return e.def(r,\"?\",r,\".primType:\",4)})):s?new N(l.thisDep,l.contextDep,l.propDep,(function(t,e){return e.def(t.shared.vao+\".currentVAO?\"+t.shared.vao+\".currentVAO.primitive:4\")})):null}(),d=function(){if(\"count\"in n){var t=0|n.count;return o.count=t,U((function(){return t}))}if(\"count\"in i){var e=i.count;return V(e,(function(t,r){return t.invoke(r,e)}))}return c?j(h)?h?f?new N(f.thisDep,f.contextDep,f.propDep,(function(t,e){return e.def(t.ELEMENTS,\".vertCount-\",t.OFFSET)})):U((function(t,e){return e.def(t.ELEMENTS,\".vertCount\")})):U((function(){return-1})):new N(h.thisDep||f.thisDep,h.contextDep||f.contextDep,h.propDep||f.propDep,(function(t,e){var r=t.ELEMENTS;return t.OFFSET?e.def(r,\"?\",r,\".vertCount-\",t.OFFSET,\":-1\"):e.def(r,\"?\",r,\".vertCount:-1\")})):s?new N(l.thisDep,l.contextDep,l.propDep,(function(t,e){return e.def(t.shared.vao,\".currentVAO?\",t.shared.vao,\".currentVAO.count:-1\")})):null}(),m=r(\"instances\",!1);return{elements:h,primitive:p,count:d,instances:m,offset:f,vao:l,vaoActive:s,elementsActive:c,static:o}}function A(t,r){var n=t.static,a=t.dynamic,o={};return Object.keys(n).forEach((function(t){var r=n[t],a=e.id(t),s=new J;if(F(r))s.state=1,s.buffer=i.getBuffer(i.create(r,34962,!1,!0)),s.type=0;else if(c=i.getBuffer(r))s.state=1,s.buffer=c,s.type=0;else if(\"constant\"in r){var l=r.constant;s.buffer=\"null\",s.state=2,\"number\"==typeof l?s.x=l:St.forEach((function(t,e){e<l.length&&(s[t]=l[e])}))}else{var c=F(r.buffer)?i.getBuffer(i.create(r.buffer,34962,!1,!0)):i.getBuffer(r.buffer),u=0|r.offset,h=0|r.stride,f=0|r.size,p=!!r.normalized,d=0;\"type\"in r&&(d=rt[r.type]),r=0|r.divisor,s.buffer=c,s.state=1,s.size=f,s.normalized=p,s.type=d||c.dtype,s.offset=u,s.stride=h,s.divisor=r}o[t]=U((function(t,e){var r=t.attribCache;if(a in r)return r[a];var n={isStream:!1};return Object.keys(s).forEach((function(t){n[t]=s[t]})),s.buffer&&(n.buffer=t.link(s.buffer),n.type=n.type||n.buffer+\".dtype\"),r[a]=n}))})),Object.keys(a).forEach((function(t){var e=a[t];o[t]=V(e,(function(t,r){function n(t){r(l[t],\"=\",i,\".\",t,\"|0;\")}var i=t.invoke(r,e),a=t.shared,o=t.constants,s=a.isBufferArgs,l=(a=a.buffer,{isStream:r.def(!1)}),c=new J;c.state=1,Object.keys(c).forEach((function(t){l[t]=r.def(\"\"+c[t])}));var u=l.buffer,h=l.type;return r(\"if(\",s,\"(\",i,\")){\",l.isStream,\"=true;\",u,\"=\",a,\".createStream(\",34962,\",\",i,\");\",h,\"=\",u,\".dtype;\",\"}else{\",u,\"=\",a,\".getBuffer(\",i,\");\",\"if(\",u,\"){\",h,\"=\",u,\".dtype;\",'}else if(\"constant\" in ',i,\"){\",l.state,\"=\",2,\";\",\"if(typeof \"+i+'.constant === \"number\"){',l[St[0]],\"=\",i,\".constant;\",St.slice(1).map((function(t){return l[t]})).join(\"=\"),\"=0;\",\"}else{\",St.map((function(t,e){return l[t]+\"=\"+i+\".constant.length>\"+e+\"?\"+i+\".constant[\"+e+\"]:0;\"})).join(\"\"),\"}}else{\",\"if(\",s,\"(\",i,\".buffer)){\",u,\"=\",a,\".createStream(\",34962,\",\",i,\".buffer);\",\"}else{\",u,\"=\",a,\".getBuffer(\",i,\".buffer);\",\"}\",h,'=\"type\" in ',i,\"?\",o.glTypes,\"[\",i,\".type]:\",u,\".dtype;\",l.normalized,\"=!!\",i,\".normalized;\"),n(\"size\"),n(\"offset\"),n(\"stride\"),n(\"divisor\"),r(\"}}\"),r.exit(\"if(\",l.isStream,\"){\",a,\".destroyStream(\",u,\");\",\"}\"),l}))})),o}function M(t,e,n,i,a){function s(t){var e=c[t];e&&(f[t]=e)}var l=function(t,e){if(\"string\"==typeof(r=t.static).frag&&\"string\"==typeof r.vert){if(0<Object.keys(e.dynamic).length)return null;var r=e.static,n=Object.keys(r);if(0<n.length&&\"number\"==typeof r[n[0]]){for(var i=[],a=0;a<n.length;++a)i.push([0|r[n[a]],n[a]]);return i}}return null}(t,e),c=function(t,e,r){function n(t){if(t in i){var r=i[t];t=!0;var n,o,s=0|r.x,l=0|r.y;return\"width\"in r?n=0|r.width:t=!1,\"height\"in r?o=0|r.height:t=!1,new N(!t&&e&&e.thisDep,!t&&e&&e.contextDep,!t&&e&&e.propDep,(function(t,e){var i=t.shared.context,a=n;\"width\"in r||(a=e.def(i,\".\",\"framebufferWidth\",\"-\",s));var c=o;return\"height\"in r||(c=e.def(i,\".\",\"framebufferHeight\",\"-\",l)),[s,l,a,c]}))}if(t in a){var c=a[t];return t=V(c,(function(t,e){var r=t.invoke(e,c),n=t.shared.context,i=e.def(r,\".x|0\"),a=e.def(r,\".y|0\");return[i,a,e.def('\"width\" in ',r,\"?\",r,\".width|0:\",\"(\",n,\".\",\"framebufferWidth\",\"-\",i,\")\"),r=e.def('\"height\" in ',r,\"?\",r,\".height|0:\",\"(\",n,\".\",\"framebufferHeight\",\"-\",a,\")\")]})),e&&(t.thisDep=t.thisDep||e.thisDep,t.contextDep=t.contextDep||e.contextDep,t.propDep=t.propDep||e.propDep),t}return e?new N(e.thisDep,e.contextDep,e.propDep,(function(t,e){var r=t.shared.context;return[0,0,e.def(r,\".\",\"framebufferWidth\"),e.def(r,\".\",\"framebufferHeight\")]})):null}var i=t.static,a=t.dynamic;if(t=n(\"viewport\")){var o=t;t=new N(t.thisDep,t.contextDep,t.propDep,(function(t,e){var r=o.append(t,e),n=t.shared.context;return e.set(n,\".viewportWidth\",r[2]),e.set(n,\".viewportHeight\",r[3]),r}))}return{viewport:t,scissor_box:n(\"scissor.box\")}}(t,d=w(t)),h=k(t),f=function(t,e){var r=t.static,n=t.dynamic,i={};return at.forEach((function(t){function e(e,o){if(t in r){var s=e(r[t]);i[a]=U((function(){return s}))}else if(t in n){var l=n[t];i[a]=V(l,(function(t,e){return o(t,e,t.invoke(e,l))}))}}var a=y(t);switch(t){case\"cull.enable\":case\"blend.enable\":case\"dither\":case\"stencil.enable\":case\"depth.enable\":case\"scissor.enable\":case\"polygonOffset.enable\":case\"sample.alpha\":case\"sample.enable\":case\"depth.mask\":case\"lineWidth\":return e((function(t){return t}),(function(t,e,r){return r}));case\"depth.func\":return e((function(t){return Lt[t]}),(function(t,e,r){return e.def(t.constants.compareFuncs,\"[\",r,\"]\")}));case\"depth.range\":return e((function(t){return t}),(function(t,e,r){return[e.def(\"+\",r,\"[0]\"),e=e.def(\"+\",r,\"[1]\")]}));case\"blend.func\":return e((function(t){return[Ct[\"srcRGB\"in t?t.srcRGB:t.src],Ct[\"dstRGB\"in t?t.dstRGB:t.dst],Ct[\"srcAlpha\"in t?t.srcAlpha:t.src],Ct[\"dstAlpha\"in t?t.dstAlpha:t.dst]]}),(function(t,e,r){function n(t,n){return e.def('\"',t,n,'\" in ',r,\"?\",r,\".\",t,n,\":\",r,\".\",t)}t=t.constants.blendFuncs;var i=n(\"src\",\"RGB\"),a=n(\"dst\",\"RGB\"),o=(i=e.def(t,\"[\",i,\"]\"),e.def(t,\"[\",n(\"src\",\"Alpha\"),\"]\"));return[i,a=e.def(t,\"[\",a,\"]\"),o,t=e.def(t,\"[\",n(\"dst\",\"Alpha\"),\"]\")]}));case\"blend.equation\":return e((function(t){return\"string\"==typeof t?[K[t],K[t]]:\"object\"==typeof t?[K[t.rgb],K[t.alpha]]:void 0}),(function(t,e,r){var n=t.constants.blendEquations,i=e.def(),a=e.def();return(t=t.cond(\"typeof \",r,'===\"string\"')).then(i,\"=\",a,\"=\",n,\"[\",r,\"];\"),t.else(i,\"=\",n,\"[\",r,\".rgb];\",a,\"=\",n,\"[\",r,\".alpha];\"),e(t),[i,a]}));case\"blend.color\":return e((function(t){return o(4,(function(e){return+t[e]}))}),(function(t,e,r){return o(4,(function(t){return e.def(\"+\",r,\"[\",t,\"]\")}))}));case\"stencil.mask\":return e((function(t){return 0|t}),(function(t,e,r){return e.def(r,\"|0\")}));case\"stencil.func\":return e((function(t){return[Lt[t.cmp||\"keep\"],t.ref||0,\"mask\"in t?t.mask:-1]}),(function(t,e,r){return[t=e.def('\"cmp\" in ',r,\"?\",t.constants.compareFuncs,\"[\",r,\".cmp]\",\":\",7680),e.def(r,\".ref|0\"),e=e.def('\"mask\" in ',r,\"?\",r,\".mask|0:-1\")]}));case\"stencil.opFront\":case\"stencil.opBack\":return e((function(e){return[\"stencil.opBack\"===t?1029:1028,It[e.fail||\"keep\"],It[e.zfail||\"keep\"],It[e.zpass||\"keep\"]]}),(function(e,r,n){function i(t){return r.def('\"',t,'\" in ',n,\"?\",a,\"[\",n,\".\",t,\"]:\",7680)}var a=e.constants.stencilOps;return[\"stencil.opBack\"===t?1029:1028,i(\"fail\"),i(\"zfail\"),i(\"zpass\")]}));case\"polygonOffset.offset\":return e((function(t){return[0|t.factor,0|t.units]}),(function(t,e,r){return[e.def(r,\".factor|0\"),e=e.def(r,\".units|0\")]}));case\"cull.face\":return e((function(t){var e=0;return\"front\"===t?e=1028:\"back\"===t&&(e=1029),e}),(function(t,e,r){return e.def(r,'===\"front\"?',1028,\":\",1029)}));case\"frontFace\":return e((function(t){return Pt[t]}),(function(t,e,r){return e.def(r+'===\"cw\"?2304:2305')}));case\"colorMask\":return e((function(t){return t.map((function(t){return!!t}))}),(function(t,e,r){return o(4,(function(t){return\"!!\"+r+\"[\"+t+\"]\"}))}));case\"sample.coverage\":return e((function(t){return[\"value\"in t?t.value:1,!!t.invert]}),(function(t,e,r){return[e.def('\"value\" in ',r,\"?+\",r,\".value:1\"),e=e.def(\"!!\",r,\".invert\")]}))}})),i}(t),p=T(t,0,l);s(\"viewport\"),s(y(\"scissor.box\"));var d,m=0<Object.keys(f).length;if((d={framebuffer:d,draw:h,shader:p,state:f,dirty:m,scopeVAO:null,drawVAO:null,useVAO:!1,attributes:{}}).profile=function(t){var e,r=t.static;if(t=t.dynamic,\"profile\"in r){var n=!!r.profile;(e=U((function(t,e){return n}))).enable=n}else if(\"profile\"in t){var i=t.profile;e=V(i,(function(t,e){return t.invoke(e,i)}))}return e}(t),d.uniforms=function(t,e){var r=t.static,n=t.dynamic,i={};return Object.keys(r).forEach((function(t){var e,n=r[t];if(\"number\"==typeof n||\"boolean\"==typeof n)e=U((function(){return n}));else if(\"function\"==typeof n){var a=n._reglType;\"texture2d\"===a||\"textureCube\"===a?e=U((function(t){return t.link(n)})):\"framebuffer\"!==a&&\"framebufferCube\"!==a||(e=U((function(t){return t.link(n.color[0])})))}else v(n)&&(e=U((function(t){return t.global.def(\"[\",o(n.length,(function(t){return n[t]})),\"]\")})));e.value=n,i[t]=e})),Object.keys(n).forEach((function(t){var e=n[t];i[t]=V(e,(function(t,r){return t.invoke(r,e)}))})),i}(n),d.drawVAO=d.scopeVAO=h.vao,!d.drawVAO&&p.program&&!l&&r.angle_instanced_arrays&&h.static.elements){var g=!0;if(t=p.program.attributes.map((function(t){return t=e.static[t],g=g&&!!t,t})),g&&0<t.length){var x=u.getVAO(u.createVAO({attributes:t,elements:h.static.elements}));d.drawVAO=new N(null,null,null,(function(t,e){return t.link(x)})),d.useVAO=!0}}return l?d.useVAO=!0:d.attributes=A(e),d.context=function(t){var e=t.static,r=t.dynamic,n={};return Object.keys(e).forEach((function(t){var r=e[t];n[t]=U((function(t,e){return\"number\"==typeof r||\"boolean\"==typeof r?\"\"+r:t.link(r)}))})),Object.keys(r).forEach((function(t){var e=r[t];n[t]=V(e,(function(t,r){return t.invoke(r,e)}))})),n}(i),d}function S(t,e,r){var n=t.shared.context,i=t.scope();Object.keys(r).forEach((function(a){e.save(n,\".\"+a);var o=r[a].append(t,e);Array.isArray(o)?i(n,\".\",a,\"=[\",o.join(),\"];\"):i(n,\".\",a,\"=\",o,\";\")})),e(i)}function E(t,e,r,n){var i,a=(s=t.shared).gl,o=s.framebuffer;tt&&(i=e.def(s.extensions,\".webgl_draw_buffers\"));var s=(l=t.constants).drawBuffer,l=l.backBuffer;t=r?r.append(t,e):e.def(o,\".next\"),n||e(\"if(\",t,\"!==\",o,\".cur){\"),e(\"if(\",t,\"){\",a,\".bindFramebuffer(\",36160,\",\",t,\".framebuffer);\"),tt&&e(i,\".drawBuffersWEBGL(\",s,\"[\",t,\".colorAttachments.length]);\"),e(\"}else{\",a,\".bindFramebuffer(\",36160,\",null);\"),tt&&e(i,\".drawBuffersWEBGL(\",l,\");\"),e(\"}\",o,\".cur=\",t,\";\"),n||e(\"}\")}function C(t,e,r){var n=t.shared,i=n.gl,a=t.current,s=t.next,l=n.current,c=n.next,u=t.cond(l,\".dirty\");at.forEach((function(e){var n,h;if(!((e=y(e))in r.state))if(e in s){n=s[e],h=a[e];var f=o(nt[e].length,(function(t){return u.def(n,\"[\",t,\"]\")}));u(t.cond(f.map((function(t,e){return t+\"!==\"+h+\"[\"+e+\"]\"})).join(\"||\")).then(i,\".\",lt[e],\"(\",f,\");\",f.map((function(t,e){return h+\"[\"+e+\"]=\"+t})).join(\";\"),\";\"))}else n=u.def(c,\".\",e),f=t.cond(n,\"!==\",l,\".\",e),u(f),e in ot?f(t.cond(n).then(i,\".enable(\",ot[e],\");\").else(i,\".disable(\",ot[e],\");\"),l,\".\",e,\"=\",n,\";\"):f(i,\".\",lt[e],\"(\",n,\");\",l,\".\",e,\"=\",n,\";\")})),0===Object.keys(r.state).length&&u(l,\".dirty=false;\"),e(u)}function L(t,e,r,n){var i,a=t.shared,o=t.current,s=a.current,l=a.gl;B(Object.keys(r)).forEach((function(a){var c=r[a];if(!n||n(c)){var u=c.append(t,e);if(ot[a]){var h=ot[a];j(c)?(i=t.link(u,{stable:!0}),e(t.cond(i).then(l,\".enable(\",h,\");\").else(l,\".disable(\",h,\");\")),e(s,\".\",a,\"=\",i,\";\")):(e(t.cond(u).then(l,\".enable(\",h,\");\").else(l,\".disable(\",h,\");\")),e(s,\".\",a,\"=\",u,\";\"))}else if(v(u)){var f=o[a];e(l,\".\",lt[a],\"(\",u,\");\",u.map((function(t,e){return f+\"[\"+e+\"]=\"+t})).join(\";\"),\";\")}else j(c)?(i=t.link(u,{stable:!0}),e(l,\".\",lt[a],\"(\",i,\");\",s,\".\",a,\"=\",i,\";\")):e(l,\".\",lt[a],\"(\",u,\");\",s,\".\",a,\"=\",u,\";\")}}))}function I(t,e){Q&&(t.instancing=e.def(t.shared.extensions,\".angle_instanced_arrays\"))}function P(t,e,r,n,i){function a(){return\"undefined\"==typeof performance?\"Date.now()\":\"performance.now()\"}function o(t){t(c=e.def(),\"=\",a(),\";\"),\"string\"==typeof i?t(f,\".count+=\",i,\";\"):t(f,\".count++;\"),d&&(n?t(u=e.def(),\"=\",m,\".getNumPendingQueries();\"):t(m,\".beginQuery(\",f,\");\"))}function s(t){t(f,\".cpuTime+=\",a(),\"-\",c,\";\"),d&&(n?t(m,\".pushScopeStats(\",u,\",\",m,\".getNumPendingQueries(),\",f,\");\"):t(m,\".endQuery();\"))}function l(t){var r=e.def(p,\".profile\");e(p,\".profile=\",t,\";\"),e.exit(p,\".profile=\",r,\";\")}var c,u,h=t.shared,f=t.stats,p=h.current,m=h.timer;if(r=r.profile){if(j(r))return void(r.enable?(o(e),s(e.exit),l(\"true\")):l(\"false\"));l(r=r.append(t,e))}else r=e.def(p,\".profile\");o(h=t.block()),e(\"if(\",r,\"){\",h,\"}\"),s(t=t.block()),e.exit(\"if(\",r,\"){\",t,\"}\")}function z(t,e,r,n,i){function a(r,n,i){function a(){e(\"if(!\",u,\".buffer){\",l,\".enableVertexAttribArray(\",c,\");}\");var r,a=i.type;r=i.size?e.def(i.size,\"||\",n):n,e(\"if(\",u,\".type!==\",a,\"||\",u,\".size!==\",r,\"||\",p.map((function(t){return u+\".\"+t+\"!==\"+i[t]})).join(\"||\"),\"){\",l,\".bindBuffer(\",34962,\",\",h,\".buffer);\",l,\".vertexAttribPointer(\",[c,r,a,i.normalized,i.stride,i.offset],\");\",u,\".type=\",a,\";\",u,\".size=\",r,\";\",p.map((function(t){return u+\".\"+t+\"=\"+i[t]+\";\"})).join(\"\"),\"}\"),Q&&(a=i.divisor,e(\"if(\",u,\".divisor!==\",a,\"){\",t.instancing,\".vertexAttribDivisorANGLE(\",[c,a],\");\",u,\".divisor=\",a,\";}\"))}function s(){e(\"if(\",u,\".buffer){\",l,\".disableVertexAttribArray(\",c,\");\",u,\".buffer=null;\",\"}if(\",St.map((function(t,e){return u+\".\"+t+\"!==\"+f[e]})).join(\"||\"),\"){\",l,\".vertexAttrib4f(\",c,\",\",f,\");\",St.map((function(t,e){return u+\".\"+t+\"=\"+f[e]+\";\"})).join(\"\"),\"}\")}var l=o.gl,c=e.def(r,\".location\"),u=e.def(o.attributes,\"[\",c,\"]\");r=i.state;var h=i.buffer,f=[i.x,i.y,i.z,i.w],p=[\"buffer\",\"normalized\",\"offset\",\"stride\"];1===r?a():2===r?s():(e(\"if(\",r,\"===\",1,\"){\"),a(),e(\"}else{\"),s(),e(\"}\"))}var o=t.shared;n.forEach((function(n){var o,s=n.name,l=r.attributes[s];if(l){if(!i(l))return;o=l.append(t,e)}else{if(!i(zt))return;var c=t.scopeAttrib(s);o={},Object.keys(new J).forEach((function(t){o[t]=e.def(c,\".\",t)}))}a(t.link(n),function(t){switch(t){case 35664:case 35667:case 35671:return 2;case 35665:case 35668:case 35672:return 3;case 35666:case 35669:case 35673:return 4;default:return 1}}(n.info.type),o)}))}function O(t,r,n,i,a,s){for(var l,c=t.shared,u=c.gl,h=0;h<i.length;++h){var f,p=(g=i[h]).name,d=g.info.type,m=n.uniforms[p],g=t.link(g)+\".location\";if(m){if(!a(m))continue;if(j(m)){if(p=m.value,35678===d||35680===d)r(u,\".uniform1i(\",g,\",\",(d=t.link(p._texture||p.color[0]._texture))+\".bind());\"),r.exit(d,\".unbind();\");else if(35674===d||35675===d||35676===d)m=2,35675===d?m=3:35676===d&&(m=4),r(u,\".uniformMatrix\",m,\"fv(\",g,\",false,\",p=t.global.def(\"new Float32Array([\"+Array.prototype.slice.call(p)+\"])\"),\");\");else{switch(d){case 5126:l=\"1f\";break;case 35664:l=\"2f\";break;case 35665:l=\"3f\";break;case 35666:l=\"4f\";break;case 35670:case 5124:l=\"1i\";break;case 35671:case 35667:l=\"2i\";break;case 35672:case 35668:l=\"3i\";break;case 35673:case 35669:l=\"4i\"}r(u,\".uniform\",l,\"(\",g,\",\",v(p)?Array.prototype.slice.call(p):p,\");\")}continue}f=m.append(t,r)}else{if(!a(zt))continue;f=r.def(c.uniforms,\"[\",e.id(p),\"]\")}switch(35678===d?r(\"if(\",f,\"&&\",f,'._reglType===\"framebuffer\"){',f,\"=\",f,\".color[0];\",\"}\"):35680===d&&r(\"if(\",f,\"&&\",f,'._reglType===\"framebufferCube\"){',f,\"=\",f,\".color[0];\",\"}\"),p=1,d){case 35678:case 35680:d=r.def(f,\"._texture\"),r(u,\".uniform1i(\",g,\",\",d,\".bind());\"),r.exit(d,\".unbind();\");continue;case 5124:case 35670:l=\"1i\";break;case 35667:case 35671:l=\"2i\",p=2;break;case 35668:case 35672:l=\"3i\",p=3;break;case 35669:case 35673:l=\"4i\",p=4;break;case 5126:l=\"1f\";break;case 35664:l=\"2f\",p=2;break;case 35665:l=\"3f\",p=3;break;case 35666:l=\"4f\",p=4;break;case 35674:l=\"Matrix2fv\";break;case 35675:l=\"Matrix3fv\";break;case 35676:l=\"Matrix4fv\"}if(\"M\"===l.charAt(0)){r(u,\".uniform\",l,\"(\",g,\",\"),g=Math.pow(d-35674+2,2);var y=t.global.def(\"new Float32Array(\",g,\")\");Array.isArray(f)?r(\"false,(\",o(g,(function(t){return y+\"[\"+t+\"]=\"+f[t]})),\",\",y,\")\"):r(\"false,(Array.isArray(\",f,\")||\",f,\" instanceof Float32Array)?\",f,\":(\",o(g,(function(t){return y+\"[\"+t+\"]=\"+f+\"[\"+t+\"]\"})),\",\",y,\")\"),r(\");\")}else{if(1<p){d=[];var x=[];for(m=0;m<p;++m)Array.isArray(f)?x.push(f[m]):x.push(r.def(f+\"[\"+m+\"]\")),s&&d.push(r.def());s&&r(\"if(!\",t.batchId,\"||\",d.map((function(t,e){return t+\"!==\"+x[e]})).join(\"||\"),\"){\",d.map((function(t,e){return t+\"=\"+x[e]+\";\"})).join(\"\")),r(u,\".uniform\",l,\"(\",g,\",\",x.join(\",\"),\");\")}else s&&(d=r.def(),r(\"if(!\",t.batchId,\"||\",d,\"!==\",f,\"){\",d,\"=\",f,\";\")),r(u,\".uniform\",l,\"(\",g,\",\",f,\");\");s&&r(\"}\")}}}function D(t,e,r,n){function i(i){var a=f[i];return a?a.contextDep&&n.contextDynamic||a.propDep?a.append(t,r):a.append(t,e):e.def(h,\".\",i)}function a(){function t(){r(l,\".drawElementsInstancedANGLE(\",[d,g,y,m+\"<<((\"+y+\"-5121)>>1)\",s],\");\")}function e(){r(l,\".drawArraysInstancedANGLE(\",[d,m,g,s],\");\")}p&&\"null\"!==p?v?t():(r(\"if(\",p,\"){\"),t(),r(\"}else{\"),e(),r(\"}\")):e()}function o(){function t(){r(u+\".drawElements(\"+[d,g,y,m+\"<<((\"+y+\"-5121)>>1)\"]+\");\")}function e(){r(u+\".drawArrays(\"+[d,m,g]+\");\")}p&&\"null\"!==p?v?t():(r(\"if(\",p,\"){\"),t(),r(\"}else{\"),e(),r(\"}\")):e()}var s,l,c=t.shared,u=c.gl,h=c.draw,f=n.draw,p=function(){var i=f.elements,a=e;return i?((i.contextDep&&n.contextDynamic||i.propDep)&&(a=r),i=i.append(t,a),f.elementsActive&&a(\"if(\"+i+\")\"+u+\".bindBuffer(34963,\"+i+\".buffer.buffer);\")):(i=a.def(),a(i,\"=\",h,\".\",\"elements\",\";\",\"if(\",i,\"){\",u,\".bindBuffer(\",34963,\",\",i,\".buffer.buffer);}\",\"else if(\",c.vao,\".currentVAO){\",i,\"=\",t.shared.elements+\".getElements(\"+c.vao,\".currentVAO.elements);\",et?\"\":\"if(\"+i+\")\"+u+\".bindBuffer(34963,\"+i+\".buffer.buffer);\",\"}\")),i}(),d=i(\"primitive\"),m=i(\"offset\"),g=function(){var i=f.count,a=e;return i?((i.contextDep&&n.contextDynamic||i.propDep)&&(a=r),i=i.append(t,a)):i=a.def(h,\".\",\"count\"),i}();if(\"number\"==typeof g){if(0===g)return}else r(\"if(\",g,\"){\"),r.exit(\"}\");Q&&(s=i(\"instances\"),l=t.instancing);var y=p+\".type\",v=f.elements&&j(f.elements)&&!f.vaoActive;Q&&(\"number\"!=typeof s||0<=s)?\"string\"==typeof s?(r(\"if(\",s,\">0){\"),a(),r(\"}else if(\",s,\"<0){\"),o(),r(\"}\")):a():o()}function q(t,e,r,n,i){return i=(e=b()).proc(\"body\",i),Q&&(e.instancing=i.def(e.shared.extensions,\".angle_instanced_arrays\")),t(e,i,r,n),e.compile().body}function H(t,e,r,n){I(t,e),r.useVAO?r.drawVAO?e(t.shared.vao,\".setVAO(\",r.drawVAO.append(t,e),\");\"):e(t.shared.vao,\".setVAO(\",t.shared.vao,\".targetVAO);\"):(e(t.shared.vao,\".setVAO(null);\"),z(t,e,r,n.attributes,(function(){return!0}))),O(t,e,r,n.uniforms,(function(){return!0}),!1),D(t,e,e,r)}function Z(t,e,r,n){function i(){return!0}t.batchId=\"a1\",I(t,e),z(t,e,r,n.attributes,i),O(t,e,r,n.uniforms,i,!1),D(t,e,e,r)}function Y(t,e,r,n){function i(t){return t.contextDep&&o||t.propDep}function a(t){return!i(t)}I(t,e);var o=r.contextDep,s=e.def(),l=e.def();t.shared.props=l,t.batchId=s;var c=t.scope(),u=t.scope();e(c.entry,\"for(\",s,\"=0;\",s,\"<\",\"a1\",\";++\",s,\"){\",l,\"=\",\"a0\",\"[\",s,\"];\",u,\"}\",c.exit),r.needsContext&&S(t,u,r.context),r.needsFramebuffer&&E(t,u,r.framebuffer),L(t,u,r.state,i),r.profile&&i(r.profile)&&P(t,u,r,!1,!0),n?(r.useVAO?r.drawVAO?i(r.drawVAO)?u(t.shared.vao,\".setVAO(\",r.drawVAO.append(t,u),\");\"):c(t.shared.vao,\".setVAO(\",r.drawVAO.append(t,c),\");\"):c(t.shared.vao,\".setVAO(\",t.shared.vao,\".targetVAO);\"):(c(t.shared.vao,\".setVAO(null);\"),z(t,c,r,n.attributes,a),z(t,u,r,n.attributes,i)),O(t,c,r,n.uniforms,a,!1),O(t,u,r,n.uniforms,i,!0),D(t,c,u,r)):(e=t.global.def(\"{}\"),n=r.shader.progVar.append(t,u),l=u.def(n,\".id\"),c=u.def(e,\"[\",l,\"]\"),u(t.shared.gl,\".useProgram(\",n,\".program);\",\"if(!\",c,\"){\",c,\"=\",e,\"[\",l,\"]=\",t.link((function(e){return q(Z,t,r,e,2)})),\"(\",n,\");}\",c,\".call(this,a0[\",s,\"],\",s,\");\"))}function X(t,r){function n(e){var n=r.shader[e];n&&(n=n.append(t,i),isNaN(n)?i.set(a.shader,\".\"+e,n):i.set(a.shader,\".\"+e,t.link(n,{stable:!0})))}var i=t.proc(\"scope\",3);t.batchId=\"a2\";var a=t.shared,o=a.current;if(S(t,i,r.context),r.framebuffer&&r.framebuffer.append(t,i),B(Object.keys(r.state)).forEach((function(e){var n=r.state[e],o=n.append(t,i);v(o)?o.forEach((function(r,n){isNaN(r)?i.set(t.next[e],\"[\"+n+\"]\",r):i.set(t.next[e],\"[\"+n+\"]\",t.link(r,{stable:!0}))})):j(n)?i.set(a.next,\".\"+e,t.link(o,{stable:!0})):i.set(a.next,\".\"+e,o)})),P(t,i,r,!0,!0),[\"elements\",\"offset\",\"count\",\"instances\",\"primitive\"].forEach((function(e){var n=r.draw[e];n&&(n=n.append(t,i),isNaN(n)?i.set(a.draw,\".\"+e,n):i.set(a.draw,\".\"+e,t.link(n),{stable:!0}))})),Object.keys(r.uniforms).forEach((function(n){var o=r.uniforms[n].append(t,i);Array.isArray(o)&&(o=\"[\"+o.map((function(e){return isNaN(e)?e:t.link(e,{stable:!0})}))+\"]\"),i.set(a.uniforms,\"[\"+t.link(e.id(n),{stable:!0})+\"]\",o)})),Object.keys(r.attributes).forEach((function(e){var n=r.attributes[e].append(t,i),a=t.scopeAttrib(e);Object.keys(new J).forEach((function(t){i.set(a,\".\"+t,n[t])}))})),r.scopeVAO){var s=r.scopeVAO.append(t,i);isNaN(s)?i.set(a.vao,\".targetVAO\",s):i.set(a.vao,\".targetVAO\",t.link(s,{stable:!0}))}n(\"vert\"),n(\"frag\"),0<Object.keys(r.state).length&&(i(o,\".dirty=true;\"),i.exit(o,\".dirty=true;\")),i(\"a1(\",t.shared.context,\",a0,\",t.batchId,\");\")}function $(t,e,r){var n=e.static[r];if(n&&function(t){if(\"object\"==typeof t&&!v(t)){for(var e=Object.keys(t),r=0;r<e.length;++r)if(W.isDynamic(t[e[r]]))return!0;return!1}}(n)){var i=t.global,a=Object.keys(n),o=!1,s=!1,l=!1,c=t.global.def(\"{}\");a.forEach((function(e){var r=n[e];if(W.isDynamic(r))\"function\"==typeof r&&(r=n[e]=W.unbox(r)),e=V(r,null),o=o||e.thisDep,l=l||e.propDep,s=s||e.contextDep;else{switch(i(c,\".\",e,\"=\"),typeof r){case\"number\":i(r);break;case\"string\":i('\"',r,'\"');break;case\"object\":Array.isArray(r)&&i(\"[\",r.join(),\"]\");break;default:i(t.link(r))}i(\";\")}})),e.dynamic[r]=new W.DynamicVariable(4,{thisDep:o,contextDep:s,propDep:l,ref:c,append:function(t,e){a.forEach((function(r){var i=n[r];W.isDynamic(i)&&(i=t.invoke(e,i),e(c,\".\",r,\"=\",i,\";\"))}))}}),delete e.static[r]}}var J=u.Record,K={add:32774,subtract:32778,\"reverse subtract\":32779};r.ext_blend_minmax&&(K.min=32775,K.max=32776);var Q=r.angle_instanced_arrays,tt=r.webgl_draw_buffers,et=r.oes_vertex_array_object,nt={dirty:!0,profile:g.profile},it={},at=[],ot={},lt={};x(\"dither\",3024),x(\"blend.enable\",3042),_(\"blend.color\",\"blendColor\",[0,0,0,0]),_(\"blend.equation\",\"blendEquationSeparate\",[32774,32774]),_(\"blend.func\",\"blendFuncSeparate\",[1,0,1,0]),x(\"depth.enable\",2929,!0),_(\"depth.func\",\"depthFunc\",513),_(\"depth.range\",\"depthRange\",[0,1]),_(\"depth.mask\",\"depthMask\",!0),_(\"colorMask\",\"colorMask\",[!0,!0,!0,!0]),x(\"cull.enable\",2884),_(\"cull.face\",\"cullFace\",1029),_(\"frontFace\",\"frontFace\",2305),_(\"lineWidth\",\"lineWidth\",1),x(\"polygonOffset.enable\",32823),_(\"polygonOffset.offset\",\"polygonOffset\",[0,0]),x(\"sample.alpha\",32926),x(\"sample.enable\",32928),_(\"sample.coverage\",\"sampleCoverage\",[1,!1]),x(\"stencil.enable\",2960),_(\"stencil.mask\",\"stencilMask\",-1),_(\"stencil.func\",\"stencilFunc\",[519,0,-1]),_(\"stencil.opFront\",\"stencilOpSeparate\",[1028,7680,7680,7680]),_(\"stencil.opBack\",\"stencilOpSeparate\",[1029,7680,7680,7680]),x(\"scissor.enable\",3089),_(\"scissor.box\",\"scissor\",[0,0,t.drawingBufferWidth,t.drawingBufferHeight]),_(\"viewport\",\"viewport\",[0,0,t.drawingBufferWidth,t.drawingBufferHeight]);var ct={gl:t,context:p,strings:e,next:it,current:nt,draw:f,elements:a,buffer:i,shader:h,attributes:u.state,vao:u,uniforms:c,framebuffer:l,extensions:r,timer:d,isBufferArgs:F},ut={primTypes:st,compareFuncs:Lt,blendFuncs:Ct,blendEquations:K,stencilOps:It,glTypes:rt,orientationType:Pt};tt&&(ut.backBuffer=[1029],ut.drawBuffer=o(n.maxDrawbuffers,(function(t){return 0===t?[0]:o(t,(function(t){return 36064+t}))})));var ht=0;return{next:it,current:nt,procs:function(){var t=b(),e=t.proc(\"poll\"),i=t.proc(\"refresh\"),a=t.block();e(a),i(a);var s,l=(h=t.shared).gl,c=h.next,u=h.current;a(u,\".dirty=false;\"),E(t,e),E(t,i,null,!0),Q&&(s=t.link(Q)),r.oes_vertex_array_object&&i(t.link(r.oes_vertex_array_object),\".bindVertexArrayOES(null);\");var h=i.def(h.attributes),f=i.def(0),p=t.cond(f,\".buffer\");p.then(l,\".enableVertexAttribArray(i);\",l,\".bindBuffer(\",34962,\",\",f,\".buffer.buffer);\",l,\".vertexAttribPointer(i,\",f,\".size,\",f,\".type,\",f,\".normalized,\",f,\".stride,\",f,\".offset);\").else(l,\".disableVertexAttribArray(i);\",l,\".vertexAttrib4f(i,\",f,\".x,\",f,\".y,\",f,\".z,\",f,\".w);\",f,\".buffer=null;\");var d=t.link(n.maxAttributes,{stable:!0});return i(\"for(var i=0;i<\",d,\";++i){\",f,\"=\",h,\"[i];\",p,\"}\"),Q&&i(\"for(var i=0;i<\",d,\";++i){\",s,\".vertexAttribDivisorANGLE(i,\",h,\"[i].divisor);\",\"}\"),i(t.shared.vao,\".currentVAO=null;\",t.shared.vao,\".setVAO(\",t.shared.vao,\".targetVAO);\"),Object.keys(ot).forEach((function(r){var n=ot[r],o=a.def(c,\".\",r),s=t.block();s(\"if(\",o,\"){\",l,\".enable(\",n,\")}else{\",l,\".disable(\",n,\")}\",u,\".\",r,\"=\",o,\";\"),i(s),e(\"if(\",o,\"!==\",u,\".\",r,\"){\",s,\"}\")})),Object.keys(lt).forEach((function(r){var n,s,h=lt[r],f=nt[r],p=t.block();p(l,\".\",h,\"(\"),v(f)?(h=f.length,n=t.global.def(c,\".\",r),s=t.global.def(u,\".\",r),p(o(h,(function(t){return n+\"[\"+t+\"]\"})),\");\",o(h,(function(t){return s+\"[\"+t+\"]=\"+n+\"[\"+t+\"];\"})).join(\"\")),e(\"if(\",o(h,(function(t){return n+\"[\"+t+\"]!==\"+s+\"[\"+t+\"]\"})).join(\"||\"),\"){\",p,\"}\")):(n=a.def(c,\".\",r),s=a.def(u,\".\",r),p(n,\");\",u,\".\",r,\"=\",n,\";\"),e(\"if(\",n,\"!==\",s,\"){\",p,\"}\")),i(p)})),t.compile()}(),compile:function(t,e,r,n,i){var a=b();a.stats=a.link(i),Object.keys(e.static).forEach((function(t){$(a,e,t)})),Et.forEach((function(e){$(a,t,e)}));var o=M(t,e,r,n);return o.shader.program&&(o.shader.program.attributes.sort((function(t,e){return t.name<e.name?-1:1})),o.shader.program.uniforms.sort((function(t,e){return t.name<e.name?-1:1}))),function(t,e){var r=t.proc(\"draw\",1);I(t,r),S(t,r,e.context),E(t,r,e.framebuffer),C(t,r,e),L(t,r,e.state),P(t,r,e,!1,!0);var n=e.shader.progVar.append(t,r);if(r(t.shared.gl,\".useProgram(\",n,\".program);\"),e.shader.program)H(t,r,e,e.shader.program);else{r(t.shared.vao,\".setVAO(null);\");var i=t.global.def(\"{}\"),a=r.def(n,\".id\"),o=r.def(i,\"[\",a,\"]\");r(t.cond(o).then(o,\".call(this,a0);\").else(o,\"=\",i,\"[\",a,\"]=\",t.link((function(r){return q(H,t,e,r,1)})),\"(\",n,\");\",o,\".call(this,a0);\"))}0<Object.keys(e.state).length&&r(t.shared.current,\".dirty=true;\"),t.shared.vao&&r(t.shared.vao,\".setVAO(null);\")}(a,o),X(a,o),function(t,e){function r(t){return t.contextDep&&i||t.propDep}var n=t.proc(\"batch\",2);t.batchId=\"0\",I(t,n);var i=!1,a=!0;Object.keys(e.context).forEach((function(t){i=i||e.context[t].propDep})),i||(S(t,n,e.context),a=!1);var o=!1;if((s=e.framebuffer)?(s.propDep?i=o=!0:s.contextDep&&i&&(o=!0),o||E(t,n,s)):E(t,n,null),e.state.viewport&&e.state.viewport.propDep&&(i=!0),C(t,n,e),L(t,n,e.state,(function(t){return!r(t)})),e.profile&&r(e.profile)||P(t,n,e,!1,\"a1\"),e.contextDep=i,e.needsContext=a,e.needsFramebuffer=o,(a=e.shader.progVar).contextDep&&i||a.propDep)Y(t,n,e,null);else if(a=a.append(t,n),n(t.shared.gl,\".useProgram(\",a,\".program);\"),e.shader.program)Y(t,n,e,e.shader.program);else{n(t.shared.vao,\".setVAO(null);\");var s=t.global.def(\"{}\"),l=(o=n.def(a,\".id\"),n.def(s,\"[\",o,\"]\"));n(t.cond(l).then(l,\".call(this,a0,a1);\").else(l,\"=\",s,\"[\",o,\"]=\",t.link((function(r){return q(Y,t,e,r,2)})),\"(\",a,\");\",l,\".call(this,a0,a1);\"))}0<Object.keys(e.state).length&&n(t.shared.current,\".dirty=true;\"),t.shared.vao&&n(t.shared.vao,\".setVAO(null);\")}(a,o),G(a.compile(),{destroy:function(){o.shader.program.destroy()}})}}}function H(t,e){for(var r=0;r<t.length;++r)if(t[r]===e)return r;return-1}var G=function(t,e){for(var r=Object.keys(e),n=0;n<r.length;++n)t[r[n]]=e[r[n]];return t},Z=0,W={DynamicVariable:t,define:function(e,n){return new t(e,r(n+\"\"))},isDynamic:function(e){return\"function\"==typeof e&&!e._reglType||e instanceof t},unbox:function e(r,n){return\"function\"==typeof r?new t(0,r):\"number\"==typeof r||\"boolean\"==typeof r?new t(5,r):Array.isArray(r)?new t(6,r.map((function(t,r){return e(t,n+\"[\"+r+\"]\")}))):r instanceof t?r:void 0},accessor:r},Y={next:\"function\"==typeof requestAnimationFrame?function(t){return requestAnimationFrame(t)}:function(t){return setTimeout(t,16)},cancel:\"function\"==typeof cancelAnimationFrame?function(t){return cancelAnimationFrame(t)}:clearTimeout},X=\"undefined\"!=typeof performance&&performance.now?function(){return performance.now()}:function(){return+new Date},$=l();$.zero=l();var J=function(t,e){var r=1;e.ext_texture_filter_anisotropic&&(r=t.getParameter(34047));var n=1,i=1;e.webgl_draw_buffers&&(n=t.getParameter(34852),i=t.getParameter(36063));var a=!!e.oes_texture_float;if(a){a=t.createTexture(),t.bindTexture(3553,a),t.texImage2D(3553,0,6408,1,1,0,6408,5126,null);var o=t.createFramebuffer();if(t.bindFramebuffer(36160,o),t.framebufferTexture2D(36160,36064,3553,a,0),t.bindTexture(3553,null),36053!==t.checkFramebufferStatus(36160))a=!1;else{t.viewport(0,0,1,1),t.clearColor(1,0,0,1),t.clear(16384);var s=$.allocType(5126,4);t.readPixels(0,0,1,1,6408,5126,s),t.getError()?a=!1:(t.deleteFramebuffer(o),t.deleteTexture(a),a=1===s[0]),$.freeType(s)}}return s=!0,\"undefined\"!=typeof navigator&&(/MSIE/.test(navigator.userAgent)||/Trident\\//.test(navigator.appVersion)||/Edge/.test(navigator.userAgent))||(s=t.createTexture(),o=$.allocType(5121,36),t.activeTexture(33984),t.bindTexture(34067,s),t.texImage2D(34069,0,6408,3,3,0,6408,5121,o),$.freeType(o),t.bindTexture(34067,null),t.deleteTexture(s),s=!t.getError()),{colorBits:[t.getParameter(3410),t.getParameter(3411),t.getParameter(3412),t.getParameter(3413)],depthBits:t.getParameter(3414),stencilBits:t.getParameter(3415),subpixelBits:t.getParameter(3408),extensions:Object.keys(e).filter((function(t){return!!e[t]})),maxAnisotropic:r,maxDrawbuffers:n,maxColorAttachments:i,pointSizeDims:t.getParameter(33901),lineWidthDims:t.getParameter(33902),maxViewportDims:t.getParameter(3386),maxCombinedTextureUnits:t.getParameter(35661),maxCubeMapSize:t.getParameter(34076),maxRenderbufferSize:t.getParameter(34024),maxTextureUnits:t.getParameter(34930),maxTextureSize:t.getParameter(3379),maxAttributes:t.getParameter(34921),maxVertexUniforms:t.getParameter(36347),maxVertexTextureUnits:t.getParameter(35660),maxVaryingVectors:t.getParameter(36348),maxFragmentUniforms:t.getParameter(36349),glsl:t.getParameter(35724),renderer:t.getParameter(7937),vendor:t.getParameter(7936),version:t.getParameter(7938),readFloat:a,npotTextureCube:s}},K=function(t){return t instanceof Uint8Array||t instanceof Uint16Array||t instanceof Uint32Array||t instanceof Int8Array||t instanceof Int16Array||t instanceof Int32Array||t instanceof Float32Array||t instanceof Float64Array||t instanceof Uint8ClampedArray},Q=function(t){return Object.keys(t).map((function(e){return t[e]}))},tt={shape:function(t){for(var e=[];t.length;t=t[0])e.push(t.length);return e},flatten:function(t,e,r,n){var i=1;if(e.length)for(var a=0;a<e.length;++a)i*=e[a];else i=0;switch(r=n||$.allocType(r,i),e.length){case 0:break;case 1:for(n=e[0],e=0;e<n;++e)r[e]=t[e];break;case 2:for(n=e[0],e=e[1],a=i=0;a<n;++a)for(var o=t[a],s=0;s<e;++s)r[i++]=o[s];break;case 3:u(t,e[0],e[1],e[2],r,0);break;default:h(t,e,0,r,0)}return r}},et={\"[object Int8Array]\":5120,\"[object Int16Array]\":5122,\"[object Int32Array]\":5124,\"[object Uint8Array]\":5121,\"[object Uint8ClampedArray]\":5121,\"[object Uint16Array]\":5123,\"[object Uint32Array]\":5125,\"[object Float32Array]\":5126,\"[object Float64Array]\":5121,\"[object ArrayBuffer]\":5121},rt={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,float:5126,float32:5126},nt={dynamic:35048,stream:35040,static:35044},it=tt.flatten,at=tt.shape,ot=[];ot[5120]=1,ot[5122]=2,ot[5124]=4,ot[5121]=1,ot[5123]=2,ot[5125]=4,ot[5126]=4;var st={points:0,point:0,lines:1,line:1,triangles:4,triangle:4,\"line loop\":2,\"line strip\":3,\"triangle strip\":5,\"triangle fan\":6},lt=new Float32Array(1),ct=new Uint32Array(lt.buffer),ut=[9984,9986,9985,9987],ht=[0,6409,6410,6407,6408],ft={};ft[6409]=ft[6406]=ft[6402]=1,ft[34041]=ft[6410]=2,ft[6407]=ft[35904]=3,ft[6408]=ft[35906]=4;var pt=x(\"HTMLCanvasElement\"),dt=x(\"OffscreenCanvas\"),mt=x(\"CanvasRenderingContext2D\"),gt=x(\"ImageBitmap\"),yt=x(\"HTMLImageElement\"),vt=x(\"HTMLVideoElement\"),xt=Object.keys(et).concat([pt,dt,mt,gt,yt,vt]),_t=[];_t[5121]=1,_t[5126]=4,_t[36193]=2,_t[5123]=2,_t[5125]=4;var bt=[];bt[32854]=2,bt[32855]=2,bt[36194]=2,bt[34041]=4,bt[33776]=.5,bt[33777]=.5,bt[33778]=1,bt[33779]=1,bt[35986]=.5,bt[35987]=1,bt[34798]=1,bt[35840]=.5,bt[35841]=.25,bt[35842]=.5,bt[35843]=.25,bt[36196]=.5;var wt=[];wt[32854]=2,wt[32855]=2,wt[36194]=2,wt[33189]=2,wt[36168]=1,wt[34041]=4,wt[35907]=4,wt[34836]=16,wt[34842]=8,wt[34843]=6;var Tt=function(t,e,r,n,i){function a(t){this.id=c++,this.refCount=1,this.renderbuffer=t,this.format=32854,this.height=this.width=0,i.profile&&(this.stats={size:0})}function o(e){var r=e.renderbuffer;t.bindRenderbuffer(36161,null),t.deleteRenderbuffer(r),e.renderbuffer=null,e.refCount=0,delete u[e.id],n.renderbufferCount--}var s={rgba4:32854,rgb565:36194,\"rgb5 a1\":32855,depth:33189,stencil:36168,\"depth stencil\":34041};e.ext_srgb&&(s.srgba=35907),e.ext_color_buffer_half_float&&(s.rgba16f=34842,s.rgb16f=34843),e.webgl_color_buffer_float&&(s.rgba32f=34836);var l=[];Object.keys(s).forEach((function(t){l[s[t]]=t}));var c=0,u={};return a.prototype.decRef=function(){0>=--this.refCount&&o(this)},i.profile&&(n.getTotalRenderbufferSize=function(){var t=0;return Object.keys(u).forEach((function(e){t+=u[e].stats.size})),t}),{create:function(e,r){function o(e,r){var n=0,a=0,u=32854;if(\"object\"==typeof e&&e?(\"shape\"in e?(n=0|(a=e.shape)[0],a=0|a[1]):(\"radius\"in e&&(n=a=0|e.radius),\"width\"in e&&(n=0|e.width),\"height\"in e&&(a=0|e.height)),\"format\"in e&&(u=s[e.format])):\"number\"==typeof e?(n=0|e,a=\"number\"==typeof r?0|r:n):e||(n=a=1),n!==c.width||a!==c.height||u!==c.format)return o.width=c.width=n,o.height=c.height=a,c.format=u,t.bindRenderbuffer(36161,c.renderbuffer),t.renderbufferStorage(36161,u,n,a),i.profile&&(c.stats.size=wt[c.format]*c.width*c.height),o.format=l[c.format],o}var c=new a(t.createRenderbuffer());return u[c.id]=c,n.renderbufferCount++,o(e,r),o.resize=function(e,r){var n=0|e,a=0|r||n;return n===c.width&&a===c.height||(o.width=c.width=n,o.height=c.height=a,t.bindRenderbuffer(36161,c.renderbuffer),t.renderbufferStorage(36161,c.format,n,a),i.profile&&(c.stats.size=wt[c.format]*c.width*c.height)),o},o._reglType=\"renderbuffer\",o._renderbuffer=c,i.profile&&(o.stats=c.stats),o.destroy=function(){c.decRef()},o},clear:function(){Q(u).forEach(o)},restore:function(){Q(u).forEach((function(e){e.renderbuffer=t.createRenderbuffer(),t.bindRenderbuffer(36161,e.renderbuffer),t.renderbufferStorage(36161,e.format,e.width,e.height)})),t.bindRenderbuffer(36161,null)}}},kt=[];kt[6408]=4,kt[6407]=3;var At=[];At[5121]=1,At[5126]=4,At[36193]=2;var Mt=[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],St=[\"x\",\"y\",\"z\",\"w\"],Et=\"blend.func blend.equation stencil.func stencil.opFront stencil.opBack sample.coverage viewport scissor.box polygonOffset.offset\".split(\" \"),Ct={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},Lt={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},It={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,\"increment wrap\":34055,\"decrement wrap\":34056,invert:5386},Pt={cw:2304,ccw:2305},zt=new N(!1,!1,!1,(function(){}));return function(t){function e(){if(0===$.length)T&&T.update(),et=null;else{et=Y.next(e),h();for(var t=$.length-1;0<=t;--t){var r=$[t];r&&r(P,null,0)}d.flush(),T&&T.update()}}function r(){!et&&0<$.length&&(et=Y.next(e))}function n(){et&&(Y.cancel(e),et=null)}function i(t){t.preventDefault(),n(),K.forEach((function(t){t()}))}function o(t){d.getError(),v.restore(),F.restore(),O.restore(),B.restore(),N.restore(),j.restore(),R.restore(),T&&T.restore(),U.procs.refresh(),r(),Q.forEach((function(t){t()}))}function s(t){function e(t,e){var r={},n={};return Object.keys(t).forEach((function(i){var a=t[i];if(W.isDynamic(a))n[i]=W.unbox(a,i);else{if(e&&Array.isArray(a))for(var o=0;o<a.length;++o)if(W.isDynamic(a[o]))return void(n[i]=W.unbox(a,i));r[i]=a}})),{dynamic:n,static:r}}var r=e(t.context||{},!0),n=e(t.uniforms||{},!0),i=e(t.attributes||{},!1);t=e(function(t){function e(t){if(t in r){var e=r[t];delete r[t],Object.keys(e).forEach((function(n){r[t+\".\"+n]=e[n]}))}}var r=G({},t);return delete r.uniforms,delete r.attributes,delete r.context,delete r.vao,\"stencil\"in r&&r.stencil.op&&(r.stencil.opBack=r.stencil.opFront=r.stencil.op,delete r.stencil.op),e(\"blend\"),e(\"depth\"),e(\"cull\"),e(\"stencil\"),e(\"polygonOffset\"),e(\"scissor\"),e(\"sample\"),\"vao\"in t&&(r.vao=t.vao),r}(t),!1);var a={gpuTime:0,cpuTime:0,count:0},o=U.compile(t,i,n,r,a),s=o.draw,l=o.batch,c=o.scope,u=[];return G((function(t,e){var r;if(\"function\"==typeof t)return c.call(this,null,t,0);if(\"function\"==typeof e)if(\"number\"==typeof t)for(r=0;r<t;++r)c.call(this,null,e,r);else{if(!Array.isArray(t))return c.call(this,t,e,0);for(r=0;r<t.length;++r)c.call(this,t[r],e,r)}else if(\"number\"==typeof t){if(0<t)return l.call(this,function(t){for(;u.length<t;)u.push(null);return u}(0|t),0|t)}else{if(!Array.isArray(t))return s.call(this,t);if(t.length)return l.call(this,t,t.length)}}),{stats:a,destroy:function(){o.destroy()}})}function l(t,e){var r=0;U.procs.poll();var n=e.color;n&&(d.clearColor(+n[0]||0,+n[1]||0,+n[2]||0,+n[3]||0),r|=16384),\"depth\"in e&&(d.clearDepth(+e.depth),r|=256),\"stencil\"in e&&(d.clearStencil(0|e.stencil),r|=1024),d.clear(r)}function c(t){return $.push(t),r(),{cancel:function(){var e=H($,t);$[e]=function t(){var e=H($,t);$[e]=$[$.length-1],--$.length,0>=$.length&&n()}}}}function u(){var t=V.viewport,e=V.scissor_box;t[0]=t[1]=e[0]=e[1]=0,P.viewportWidth=P.framebufferWidth=P.drawingBufferWidth=t[2]=e[2]=d.drawingBufferWidth,P.viewportHeight=P.framebufferHeight=P.drawingBufferHeight=t[3]=e[3]=d.drawingBufferHeight}function h(){P.tick+=1,P.time=p(),u(),U.procs.poll()}function f(){B.refresh(),u(),U.procs.refresh(),T&&T.update()}function p(){return(X()-k)/1e3}if(!(t=a(t)))return null;var d=t.gl,y=d.getContextAttributes();d.isContextLost();var v=function(t,e){function r(e){var r;e=e.toLowerCase();try{r=n[e]=t.getExtension(e)}catch(t){}return!!r}for(var n={},i=0;i<e.extensions.length;++i){var a=e.extensions[i];if(!r(a))return e.onDestroy(),e.onDone('\"'+a+'\" extension is not supported by the current WebGL context, try upgrading your system or a different browser'),null}return e.optionalExtensions.forEach(r),{extensions:n,restore:function(){Object.keys(n).forEach((function(t){if(n[t]&&!r(t))throw Error(\"(regl): error restoring extension \"+t)}))}}}(d,t);if(!v)return null;var x=function(){var t={\"\":0},e=[\"\"];return{id:function(r){var n=t[r];return n||(n=t[r]=e.length,e.push(r),n)},str:function(t){return e[t]}}}(),_={vaoCount:0,bufferCount:0,elementsCount:0,framebufferCount:0,shaderCount:0,textureCount:0,cubeCount:0,renderbufferCount:0,maxTextureUnits:0},b=t.cachedCode||{},w=v.extensions,T=function(t,e){function r(){this.endQueryIndex=this.startQueryIndex=-1,this.sum=0,this.stats=null}function n(t,e,n){var i=o.pop()||new r;i.startQueryIndex=t,i.endQueryIndex=e,i.sum=0,i.stats=n,s.push(i)}if(!e.ext_disjoint_timer_query)return null;var i=[],a=[],o=[],s=[],l=[],c=[];return{beginQuery:function(t){var r=i.pop()||e.ext_disjoint_timer_query.createQueryEXT();e.ext_disjoint_timer_query.beginQueryEXT(35007,r),a.push(r),n(a.length-1,a.length,t)},endQuery:function(){e.ext_disjoint_timer_query.endQueryEXT(35007)},pushScopeStats:n,update:function(){var t,r;if(0!==(t=a.length)){c.length=Math.max(c.length,t+1),l.length=Math.max(l.length,t+1),l[0]=0;var n=c[0]=0;for(r=t=0;r<a.length;++r){var u=a[r];e.ext_disjoint_timer_query.getQueryObjectEXT(u,34919)?(n+=e.ext_disjoint_timer_query.getQueryObjectEXT(u,34918),i.push(u)):a[t++]=u,l[r+1]=n,c[r+1]=t}for(a.length=t,r=t=0;r<s.length;++r){var h=(n=s[r]).startQueryIndex;u=n.endQueryIndex,n.sum+=l[u]-l[h],h=c[h],(u=c[u])===h?(n.stats.gpuTime+=n.sum/1e6,o.push(n)):(n.startQueryIndex=h,n.endQueryIndex=u,s[t++]=n)}s.length=t}},getNumPendingQueries:function(){return a.length},clear:function(){i.push.apply(i,a);for(var t=0;t<i.length;t++)e.ext_disjoint_timer_query.deleteQueryEXT(i[t]);a.length=0,i.length=0},restore:function(){a.length=0,i.length=0}}}(0,w),k=X(),A=d.drawingBufferWidth,E=d.drawingBufferHeight,P={tick:0,time:0,viewportWidth:A,viewportHeight:E,framebufferWidth:A,framebufferHeight:E,drawingBufferWidth:A,drawingBufferHeight:E,pixelRatio:t.pixelRatio},z=(A={elements:null,primitive:4,count:-1,offset:0,instances:-1},J(d,w)),O=m(d,_,t,(function(t){return R.destroyBuffer(t)})),D=g(d,w,O,_),R=C(d,w,z,_,O,D,A),F=L(d,x,_,t),B=M(d,w,z,(function(){U.procs.poll()}),P,_,t),N=Tt(d,w,0,_,t),j=S(d,w,z,B,N,_),U=q(d,x,w,z,O,D,0,j,{},R,F,A,P,T,b,t),V=(x=I(d,j,U.procs.poll,P),U.next),Z=d.canvas,$=[],K=[],Q=[],tt=[t.onDestroy],et=null;Z&&(Z.addEventListener(\"webglcontextlost\",i,!1),Z.addEventListener(\"webglcontextrestored\",o,!1));var rt=j.setFBO=s({framebuffer:W.define.call(null,1,\"framebuffer\")});return f(),y=G(s,{clear:function(t){if(\"framebuffer\"in t)if(t.framebuffer&&\"framebufferCube\"===t.framebuffer_reglType)for(var e=0;6>e;++e)rt(G({framebuffer:t.framebuffer.faces[e]},t),l);else rt(t,l);else l(0,t)},prop:W.define.bind(null,1),context:W.define.bind(null,2),this:W.define.bind(null,3),draw:s({}),buffer:function(t){return O.create(t,34962,!1,!1)},elements:function(t){return D.create(t,!1)},texture:B.create2D,cube:B.createCube,renderbuffer:N.create,framebuffer:j.create,framebufferCube:j.createCube,vao:R.createVAO,attributes:y,frame:c,on:function(t,e){var r;switch(t){case\"frame\":return c(e);case\"lost\":r=K;break;case\"restore\":r=Q;break;case\"destroy\":r=tt}return r.push(e),{cancel:function(){for(var t=0;t<r.length;++t)if(r[t]===e){r[t]=r[r.length-1],r.pop();break}}}},limits:z,hasExtension:function(t){return 0<=z.extensions.indexOf(t.toLowerCase())},read:x,destroy:function(){$.length=0,n(),Z&&(Z.removeEventListener(\"webglcontextlost\",i),Z.removeEventListener(\"webglcontextrestored\",o)),F.clear(),j.clear(),N.clear(),R.clear(),B.clear(),D.clear(),O.clear(),T&&T.clear(),tt.forEach((function(t){t()}))},_gl:d,_refresh:f,poll:function(){h(),T&&T.update()},now:p,stats:_,getCachedCode:function(){return b},preloadCachedCode:function(t){Object.entries(t).forEach((function(t){b[t[0]]=t[1]}))}}),t.onDone(null,y),y}}()},41041:function(t,e,r){var n=r(45708),i=n.Buffer;function a(t,e){for(var r in t)e[r]=t[r]}function o(t,e,r){return i(t,e,r)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?t.exports=n:(a(n,e),e.Buffer=o),o.prototype=Object.create(i.prototype),a(i,o),o.from=function(t,e,r){if(\"number\"==typeof t)throw new TypeError(\"Argument must not be a number\");return i(t,e,r)},o.alloc=function(t,e,r){if(\"number\"!=typeof t)throw new TypeError(\"Argument must be a number\");var n=i(t);return void 0!==e?\"string\"==typeof r?n.fill(e,r):n.fill(e):n.fill(0),n},o.allocUnsafe=function(t){if(\"number\"!=typeof t)throw new TypeError(\"Argument must be a number\");return i(t)},o.allocUnsafeSlow=function(t){if(\"number\"!=typeof t)throw new TypeError(\"Argument must be a number\");return n.SlowBuffer(t)}},73285:function(t,e,r){\"use strict\";var n=r(71129),i=r(70973),a=r(74268)(),o=r(52991),s=r(48631),l=n(\"%Math.floor%\");t.exports=function(t,e){if(\"function\"!=typeof t)throw new s(\"`fn` is not a function\");if(\"number\"!=typeof e||e<0||e>4294967295||l(e)!==e)throw new s(\"`length` must be a positive 32-bit integer\");var r=arguments.length>2&&!!arguments[2],n=!0,c=!0;if(\"length\"in t&&o){var u=o(t,\"length\");u&&!u.configurable&&(n=!1),u&&!u.writable&&(c=!1)}return(n||c||!r)&&(a?i(t,\"length\",e,!0,!0):i(t,\"length\",e)),t}},90386:function(t,e,r){t.exports=i;var n=r(7683).EventEmitter;function i(){n.call(this)}r(28062)(i,n),i.Readable=r(44639),i.Writable=r(84627),i.Duplex=r(71977),i.Transform=r(40255),i.PassThrough=r(28765),i.finished=r(37165),i.pipeline=r(6772),i.Stream=i,i.prototype.pipe=function(t,e){var r=this;function i(e){t.writable&&!1===t.write(e)&&r.pause&&r.pause()}function a(){r.readable&&r.resume&&r.resume()}r.on(\"data\",i),t.on(\"drain\",a),t._isStdio||e&&!1===e.end||(r.on(\"end\",s),r.on(\"close\",l));var o=!1;function s(){o||(o=!0,t.end())}function l(){o||(o=!0,\"function\"==typeof t.destroy&&t.destroy())}function c(t){if(u(),0===n.listenerCount(this,\"error\"))throw t}function u(){r.removeListener(\"data\",i),t.removeListener(\"drain\",a),r.removeListener(\"end\",s),r.removeListener(\"close\",l),r.removeListener(\"error\",c),t.removeListener(\"error\",c),r.removeListener(\"end\",u),r.removeListener(\"close\",u),t.removeListener(\"close\",u)}return r.on(\"error\",c),t.on(\"error\",c),r.on(\"end\",u),r.on(\"close\",u),t.on(\"close\",u),t.emit(\"pipe\",r),t}},44059:function(t){\"use strict\";var e={};function r(t,r,n){n||(n=Error);var i=function(t){var e,n;function i(e,n,i){return t.call(this,function(t,e,n){return\"string\"==typeof r?r:r(t,e,n)}(e,n,i))||this}return n=t,(e=i).prototype=Object.create(n.prototype),e.prototype.constructor=e,e.__proto__=n,i}(n);i.prototype.name=n.name,i.prototype.code=t,e[t]=i}function n(t,e){if(Array.isArray(t)){var r=t.length;return t=t.map((function(t){return String(t)})),r>2?\"one of \".concat(e,\" \").concat(t.slice(0,r-1).join(\", \"),\", or \")+t[r-1]:2===r?\"one of \".concat(e,\" \").concat(t[0],\" or \").concat(t[1]):\"of \".concat(e,\" \").concat(t[0])}return\"of \".concat(e,\" \").concat(String(t))}r(\"ERR_INVALID_OPT_VALUE\",(function(t,e){return'The value \"'+e+'\" is invalid for option \"'+t+'\"'}),TypeError),r(\"ERR_INVALID_ARG_TYPE\",(function(t,e,r){var i,a,o,s,l;if(\"string\"==typeof e&&(a=\"not \",e.substr(0,4)===a)?(i=\"must not be\",e=e.replace(/^not /,\"\")):i=\"must be\",function(t,e,r){return(void 0===r||r>t.length)&&(r=t.length),t.substring(r-9,r)===e}(t,\" argument\"))o=\"The \".concat(t,\" \").concat(i,\" \").concat(n(e,\"type\"));else{var c=(\"number\"!=typeof l&&(l=0),l+1>(s=t).length||-1===s.indexOf(\".\",l)?\"argument\":\"property\");o='The \"'.concat(t,'\" ').concat(c,\" \").concat(i,\" \").concat(n(e,\"type\"))}return o+\". Received type \".concat(typeof r)}),TypeError),r(\"ERR_STREAM_PUSH_AFTER_EOF\",\"stream.push() after EOF\"),r(\"ERR_METHOD_NOT_IMPLEMENTED\",(function(t){return\"The \"+t+\" method is not implemented\"})),r(\"ERR_STREAM_PREMATURE_CLOSE\",\"Premature close\"),r(\"ERR_STREAM_DESTROYED\",(function(t){return\"Cannot call \"+t+\" 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(t){return\"Unknown encoding: \"+t}),TypeError),r(\"ERR_STREAM_UNSHIFT_AFTER_END_EVENT\",\"stream.unshift() after end event\"),t.exports.F=e},71977:function(t,e,r){\"use strict\";var n=r(33282),i=Object.keys||function(t){var e=[];for(var r in t)e.push(r);return e};t.exports=u;var a=r(44639),o=r(84627);r(28062)(u,a);for(var s=i(o.prototype),l=0;l<s.length;l++){var c=s[l];u.prototype[c]||(u.prototype[c]=o.prototype[c])}function u(t){if(!(this instanceof u))return new u(t);a.call(this,t),o.call(this,t),this.allowHalfOpen=!0,t&&(!1===t.readable&&(this.readable=!1),!1===t.writable&&(this.writable=!1),!1===t.allowHalfOpen&&(this.allowHalfOpen=!1,this.once(\"end\",h)))}function h(){this._writableState.ended||n.nextTick(f,this)}function f(t){t.end()}Object.defineProperty(u.prototype,\"writableHighWaterMark\",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(u.prototype,\"writableBuffer\",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(u.prototype,\"writableLength\",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(u.prototype,\"destroyed\",{enumerable:!1,get:function(){return void 0!==this._readableState&&void 0!==this._writableState&&this._readableState.destroyed&&this._writableState.destroyed},set:function(t){void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed=t,this._writableState.destroyed=t)}})},28765:function(t,e,r){\"use strict\";t.exports=i;var n=r(40255);function i(t){if(!(this instanceof i))return new i(t);n.call(this,t)}r(28062)(i,n),i.prototype._transform=function(t,e,r){r(null,t)}},44639:function(t,e,r){\"use strict\";var n,i=r(33282);t.exports=A,A.ReadableState=k,r(7683).EventEmitter;var a,o=function(t,e){return t.listeners(e).length},s=r(60032),l=r(45708).Buffer,c=r.g.Uint8Array||function(){},u=r(77199);a=u&&u.debuglog?u.debuglog(\"stream\"):function(){};var h,f,p,d=r(29930),m=r(52023),g=r(31976).getHighWaterMark,y=r(44059).F,v=y.ERR_INVALID_ARG_TYPE,x=y.ERR_STREAM_PUSH_AFTER_EOF,_=y.ERR_METHOD_NOT_IMPLEMENTED,b=y.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;r(28062)(A,s);var w=m.errorOrDestroy,T=[\"error\",\"close\",\"destroy\",\"pause\",\"resume\"];function k(t,e,i){n=n||r(71977),t=t||{},\"boolean\"!=typeof i&&(i=e instanceof n),this.objectMode=!!t.objectMode,i&&(this.objectMode=this.objectMode||!!t.readableObjectMode),this.highWaterMark=g(this,t,\"readableHighWaterMark\",i),this.buffer=new d,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=!1!==t.emitClose,this.autoDestroy=!!t.autoDestroy,this.destroyed=!1,this.defaultEncoding=t.defaultEncoding||\"utf8\",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,t.encoding&&(h||(h=r(54304).I),this.decoder=new h(t.encoding),this.encoding=t.encoding)}function A(t){if(n=n||r(71977),!(this instanceof A))return new A(t);var e=this instanceof n;this._readableState=new k(t,this,e),this.readable=!0,t&&(\"function\"==typeof t.read&&(this._read=t.read),\"function\"==typeof t.destroy&&(this._destroy=t.destroy)),s.call(this)}function M(t,e,r,n,i){a(\"readableAddChunk\",e);var o,s=t._readableState;if(null===e)s.reading=!1,function(t,e){if(a(\"onEofChunk\"),!e.ended){if(e.decoder){var r=e.decoder.end();r&&r.length&&(e.buffer.push(r),e.length+=e.objectMode?1:r.length)}e.ended=!0,e.sync?L(t):(e.needReadable=!1,e.emittedReadable||(e.emittedReadable=!0,I(t)))}}(t,s);else if(i||(o=function(t,e){var r,n;return n=e,l.isBuffer(n)||n instanceof c||\"string\"==typeof e||void 0===e||t.objectMode||(r=new v(\"chunk\",[\"string\",\"Buffer\",\"Uint8Array\"],e)),r}(s,e)),o)w(t,o);else if(s.objectMode||e&&e.length>0)if(\"string\"==typeof e||s.objectMode||Object.getPrototypeOf(e)===l.prototype||(e=function(t){return l.from(t)}(e)),n)s.endEmitted?w(t,new b):S(t,s,e,!0);else if(s.ended)w(t,new x);else{if(s.destroyed)return!1;s.reading=!1,s.decoder&&!r?(e=s.decoder.write(e),s.objectMode||0!==e.length?S(t,s,e,!1):P(t,s)):S(t,s,e,!1)}else n||(s.reading=!1,P(t,s));return!s.ended&&(s.length<s.highWaterMark||0===s.length)}function S(t,e,r,n){e.flowing&&0===e.length&&!e.sync?(e.awaitDrain=0,t.emit(\"data\",r)):(e.length+=e.objectMode?1:r.length,n?e.buffer.unshift(r):e.buffer.push(r),e.needReadable&&L(t)),P(t,e)}Object.defineProperty(A.prototype,\"destroyed\",{enumerable:!1,get:function(){return void 0!==this._readableState&&this._readableState.destroyed},set:function(t){this._readableState&&(this._readableState.destroyed=t)}}),A.prototype.destroy=m.destroy,A.prototype._undestroy=m.undestroy,A.prototype._destroy=function(t,e){e(t)},A.prototype.push=function(t,e){var r,n=this._readableState;return n.objectMode?r=!0:\"string\"==typeof t&&((e=e||n.defaultEncoding)!==n.encoding&&(t=l.from(t,e),e=\"\"),r=!0),M(this,t,e,!1,r)},A.prototype.unshift=function(t){return M(this,t,null,!0,!1)},A.prototype.isPaused=function(){return!1===this._readableState.flowing},A.prototype.setEncoding=function(t){h||(h=r(54304).I);var e=new h(t);this._readableState.decoder=e,this._readableState.encoding=this._readableState.decoder.encoding;for(var n=this._readableState.buffer.head,i=\"\";null!==n;)i+=e.write(n.data),n=n.next;return this._readableState.buffer.clear(),\"\"!==i&&this._readableState.buffer.push(i),this._readableState.length=i.length,this};var E=1073741824;function C(t,e){return t<=0||0===e.length&&e.ended?0:e.objectMode?1:t!=t?e.flowing&&e.length?e.buffer.head.data.length:e.length:(t>e.highWaterMark&&(e.highWaterMark=function(t){return t>=E?t=E:(t--,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,t|=t>>>16,t++),t}(t)),t<=e.length?t:e.ended?e.length:(e.needReadable=!0,0))}function L(t){var e=t._readableState;a(\"emitReadable\",e.needReadable,e.emittedReadable),e.needReadable=!1,e.emittedReadable||(a(\"emitReadable\",e.flowing),e.emittedReadable=!0,i.nextTick(I,t))}function I(t){var e=t._readableState;a(\"emitReadable_\",e.destroyed,e.length,e.ended),e.destroyed||!e.length&&!e.ended||(t.emit(\"readable\"),e.emittedReadable=!1),e.needReadable=!e.flowing&&!e.ended&&e.length<=e.highWaterMark,F(t)}function P(t,e){e.readingMore||(e.readingMore=!0,i.nextTick(z,t,e))}function z(t,e){for(;!e.reading&&!e.ended&&(e.length<e.highWaterMark||e.flowing&&0===e.length);){var r=e.length;if(a(\"maybeReadMore read 0\"),t.read(0),r===e.length)break}e.readingMore=!1}function O(t){var e=t._readableState;e.readableListening=t.listenerCount(\"readable\")>0,e.resumeScheduled&&!e.paused?e.flowing=!0:t.listenerCount(\"data\")>0&&t.resume()}function D(t){a(\"readable nexttick read 0\"),t.read(0)}function R(t,e){a(\"resume\",e.reading),e.reading||t.read(0),e.resumeScheduled=!1,t.emit(\"resume\"),F(t),e.flowing&&!e.reading&&t.read(0)}function F(t){var e=t._readableState;for(a(\"flow\",e.flowing);e.flowing&&null!==t.read(););}function B(t,e){return 0===e.length?null:(e.objectMode?r=e.buffer.shift():!t||t>=e.length?(r=e.decoder?e.buffer.join(\"\"):1===e.buffer.length?e.buffer.first():e.buffer.concat(e.length),e.buffer.clear()):r=e.buffer.consume(t,e.decoder),r);var r}function N(t){var e=t._readableState;a(\"endReadable\",e.endEmitted),e.endEmitted||(e.ended=!0,i.nextTick(j,e,t))}function j(t,e){if(a(\"endReadableNT\",t.endEmitted,t.length),!t.endEmitted&&0===t.length&&(t.endEmitted=!0,e.readable=!1,e.emit(\"end\"),t.autoDestroy)){var r=e._writableState;(!r||r.autoDestroy&&r.finished)&&e.destroy()}}function U(t,e){for(var r=0,n=t.length;r<n;r++)if(t[r]===e)return r;return-1}A.prototype.read=function(t){a(\"read\",t),t=parseInt(t,10);var e=this._readableState,r=t;if(0!==t&&(e.emittedReadable=!1),0===t&&e.needReadable&&((0!==e.highWaterMark?e.length>=e.highWaterMark:e.length>0)||e.ended))return a(\"read: emitReadable\",e.length,e.ended),0===e.length&&e.ended?N(this):L(this),null;if(0===(t=C(t,e))&&e.ended)return 0===e.length&&N(this),null;var n,i=e.needReadable;return a(\"need readable\",i),(0===e.length||e.length-t<e.highWaterMark)&&a(\"length less than watermark\",i=!0),e.ended||e.reading?a(\"reading or ended\",i=!1):i&&(a(\"do read\"),e.reading=!0,e.sync=!0,0===e.length&&(e.needReadable=!0),this._read(e.highWaterMark),e.sync=!1,e.reading||(t=C(r,e))),null===(n=t>0?B(t,e):null)?(e.needReadable=e.length<=e.highWaterMark,t=0):(e.length-=t,e.awaitDrain=0),0===e.length&&(e.ended||(e.needReadable=!0),r!==t&&e.ended&&N(this)),null!==n&&this.emit(\"data\",n),n},A.prototype._read=function(t){w(this,new _(\"_read()\"))},A.prototype.pipe=function(t,e){var r=this,n=this._readableState;switch(n.pipesCount){case 0:n.pipes=t;break;case 1:n.pipes=[n.pipes,t];break;default:n.pipes.push(t)}n.pipesCount+=1,a(\"pipe count=%d opts=%j\",n.pipesCount,e);var s=e&&!1===e.end||t===i.stdout||t===i.stderr?m:l;function l(){a(\"onend\"),t.end()}n.endEmitted?i.nextTick(s):r.once(\"end\",s),t.on(\"unpipe\",(function e(i,o){a(\"onunpipe\"),i===r&&o&&!1===o.hasUnpiped&&(o.hasUnpiped=!0,a(\"cleanup\"),t.removeListener(\"close\",p),t.removeListener(\"finish\",d),t.removeListener(\"drain\",c),t.removeListener(\"error\",f),t.removeListener(\"unpipe\",e),r.removeListener(\"end\",l),r.removeListener(\"end\",m),r.removeListener(\"data\",h),u=!0,!n.awaitDrain||t._writableState&&!t._writableState.needDrain||c())}));var c=function(t){return function(){var e=t._readableState;a(\"pipeOnDrain\",e.awaitDrain),e.awaitDrain&&e.awaitDrain--,0===e.awaitDrain&&o(t,\"data\")&&(e.flowing=!0,F(t))}}(r);t.on(\"drain\",c);var u=!1;function h(e){a(\"ondata\");var i=t.write(e);a(\"dest.write\",i),!1===i&&((1===n.pipesCount&&n.pipes===t||n.pipesCount>1&&-1!==U(n.pipes,t))&&!u&&(a(\"false write response, pause\",n.awaitDrain),n.awaitDrain++),r.pause())}function f(e){a(\"onerror\",e),m(),t.removeListener(\"error\",f),0===o(t,\"error\")&&w(t,e)}function p(){t.removeListener(\"finish\",d),m()}function d(){a(\"onfinish\"),t.removeListener(\"close\",p),m()}function m(){a(\"unpipe\"),r.unpipe(t)}return r.on(\"data\",h),function(t,e,r){if(\"function\"==typeof t.prependListener)return t.prependListener(e,r);t._events&&t._events[e]?Array.isArray(t._events[e])?t._events[e].unshift(r):t._events[e]=[r,t._events[e]]:t.on(e,r)}(t,\"error\",f),t.once(\"close\",p),t.once(\"finish\",d),t.emit(\"pipe\",r),n.flowing||(a(\"pipe resume\"),r.resume()),t},A.prototype.unpipe=function(t){var e=this._readableState,r={hasUnpiped:!1};if(0===e.pipesCount)return this;if(1===e.pipesCount)return t&&t!==e.pipes||(t||(t=e.pipes),e.pipes=null,e.pipesCount=0,e.flowing=!1,t&&t.emit(\"unpipe\",this,r)),this;if(!t){var n=e.pipes,i=e.pipesCount;e.pipes=null,e.pipesCount=0,e.flowing=!1;for(var a=0;a<i;a++)n[a].emit(\"unpipe\",this,{hasUnpiped:!1});return this}var o=U(e.pipes,t);return-1===o||(e.pipes.splice(o,1),e.pipesCount-=1,1===e.pipesCount&&(e.pipes=e.pipes[0]),t.emit(\"unpipe\",this,r)),this},A.prototype.on=function(t,e){var r=s.prototype.on.call(this,t,e),n=this._readableState;return\"data\"===t?(n.readableListening=this.listenerCount(\"readable\")>0,!1!==n.flowing&&this.resume()):\"readable\"===t&&(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(D,this))),r},A.prototype.addListener=A.prototype.on,A.prototype.removeListener=function(t,e){var r=s.prototype.removeListener.call(this,t,e);return\"readable\"===t&&i.nextTick(O,this),r},A.prototype.removeAllListeners=function(t){var e=s.prototype.removeAllListeners.apply(this,arguments);return\"readable\"!==t&&void 0!==t||i.nextTick(O,this),e},A.prototype.resume=function(){var t=this._readableState;return t.flowing||(a(\"resume\"),t.flowing=!t.readableListening,function(t,e){e.resumeScheduled||(e.resumeScheduled=!0,i.nextTick(R,t,e))}(this,t)),t.paused=!1,this},A.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},A.prototype.wrap=function(t){var e=this,r=this._readableState,n=!1;for(var i in t.on(\"end\",(function(){if(a(\"wrapped end\"),r.decoder&&!r.ended){var t=r.decoder.end();t&&t.length&&e.push(t)}e.push(null)})),t.on(\"data\",(function(i){a(\"wrapped data\"),r.decoder&&(i=r.decoder.write(i)),r.objectMode&&null==i||(r.objectMode||i&&i.length)&&(e.push(i)||(n=!0,t.pause()))})),t)void 0===this[i]&&\"function\"==typeof t[i]&&(this[i]=function(e){return function(){return t[e].apply(t,arguments)}}(i));for(var o=0;o<T.length;o++)t.on(T[o],this.emit.bind(this,T[o]));return this._read=function(e){a(\"wrapped _read\",e),n&&(n=!1,t.resume())},this},\"function\"==typeof Symbol&&(A.prototype[Symbol.asyncIterator]=function(){return void 0===f&&(f=r(73726)),f(this)}),Object.defineProperty(A.prototype,\"readableHighWaterMark\",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),Object.defineProperty(A.prototype,\"readableBuffer\",{enumerable:!1,get:function(){return this._readableState&&this._readableState.buffer}}),Object.defineProperty(A.prototype,\"readableFlowing\",{enumerable:!1,get:function(){return this._readableState.flowing},set:function(t){this._readableState&&(this._readableState.flowing=t)}}),A._fromList=B,Object.defineProperty(A.prototype,\"readableLength\",{enumerable:!1,get:function(){return this._readableState.length}}),\"function\"==typeof Symbol&&(A.from=function(t,e){return void 0===p&&(p=r(37108)),p(A,t,e)})},40255:function(t,e,r){\"use strict\";t.exports=u;var n=r(44059).F,i=n.ERR_METHOD_NOT_IMPLEMENTED,a=n.ERR_MULTIPLE_CALLBACK,o=n.ERR_TRANSFORM_ALREADY_TRANSFORMING,s=n.ERR_TRANSFORM_WITH_LENGTH_0,l=r(71977);function c(t,e){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(null===n)return this.emit(\"error\",new a);r.writechunk=null,r.writecb=null,null!=e&&this.push(e),n(t);var i=this._readableState;i.reading=!1,(i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}function u(t){if(!(this instanceof u))return new u(t);l.call(this,t),this._transformState={afterTransform:c.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,t&&(\"function\"==typeof t.transform&&(this._transform=t.transform),\"function\"==typeof t.flush&&(this._flush=t.flush)),this.on(\"prefinish\",h)}function h(){var t=this;\"function\"!=typeof this._flush||this._readableState.destroyed?f(this,null,null):this._flush((function(e,r){f(t,e,r)}))}function f(t,e,r){if(e)return t.emit(\"error\",e);if(null!=r&&t.push(r),t._writableState.length)throw new s;if(t._transformState.transforming)throw new o;return t.push(null)}r(28062)(u,l),u.prototype.push=function(t,e){return this._transformState.needTransform=!1,l.prototype.push.call(this,t,e)},u.prototype._transform=function(t,e,r){r(new i(\"_transform()\"))},u.prototype._write=function(t,e,r){var n=this._transformState;if(n.writecb=r,n.writechunk=t,n.writeencoding=e,!n.transforming){var i=this._readableState;(n.needTransform||i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}},u.prototype._read=function(t){var e=this._transformState;null===e.writechunk||e.transforming?e.needTransform=!0:(e.transforming=!0,this._transform(e.writechunk,e.writeencoding,e.afterTransform))},u.prototype._destroy=function(t,e){l.prototype._destroy.call(this,t,(function(t){e(t)}))}},84627:function(t,e,r){\"use strict\";var n,i=r(33282);function a(t){var e=this;this.next=null,this.entry=null,this.finish=function(){!function(t,e,r){var n=t.entry;for(t.entry=null;n;){var i=n.callback;e.pendingcb--,i(undefined),n=n.next}e.corkedRequestsFree.next=t}(e,t)}}t.exports=A,A.WritableState=k;var o,s={deprecate:r(71103)},l=r(60032),c=r(45708).Buffer,u=r.g.Uint8Array||function(){},h=r(52023),f=r(31976).getHighWaterMark,p=r(44059).F,d=p.ERR_INVALID_ARG_TYPE,m=p.ERR_METHOD_NOT_IMPLEMENTED,g=p.ERR_MULTIPLE_CALLBACK,y=p.ERR_STREAM_CANNOT_PIPE,v=p.ERR_STREAM_DESTROYED,x=p.ERR_STREAM_NULL_VALUES,_=p.ERR_STREAM_WRITE_AFTER_END,b=p.ERR_UNKNOWN_ENCODING,w=h.errorOrDestroy;function T(){}function k(t,e,o){n=n||r(71977),t=t||{},\"boolean\"!=typeof o&&(o=e instanceof n),this.objectMode=!!t.objectMode,o&&(this.objectMode=this.objectMode||!!t.writableObjectMode),this.highWaterMark=f(this,t,\"writableHighWaterMark\",o),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var s=!1===t.decodeStrings;this.decodeStrings=!s,this.defaultEncoding=t.defaultEncoding||\"utf8\",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(t){!function(t,e){var r=t._writableState,n=r.sync,a=r.writecb;if(\"function\"!=typeof a)throw new g;if(function(t){t.writing=!1,t.writecb=null,t.length-=t.writelen,t.writelen=0}(r),e)!function(t,e,r,n,a){--e.pendingcb,r?(i.nextTick(a,n),i.nextTick(I,t,e),t._writableState.errorEmitted=!0,w(t,n)):(a(n),t._writableState.errorEmitted=!0,w(t,n),I(t,e))}(t,r,n,e,a);else{var o=C(r)||t.destroyed;o||r.corked||r.bufferProcessing||!r.bufferedRequest||E(t,r),n?i.nextTick(S,t,r,o,a):S(t,r,o,a)}}(e,t)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=!1!==t.emitClose,this.autoDestroy=!!t.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new a(this)}function A(t){var e=this instanceof(n=n||r(71977));if(!e&&!o.call(A,this))return new A(t);this._writableState=new k(t,this,e),this.writable=!0,t&&(\"function\"==typeof t.write&&(this._write=t.write),\"function\"==typeof t.writev&&(this._writev=t.writev),\"function\"==typeof t.destroy&&(this._destroy=t.destroy),\"function\"==typeof t.final&&(this._final=t.final)),l.call(this)}function M(t,e,r,n,i,a,o){e.writelen=n,e.writecb=o,e.writing=!0,e.sync=!0,e.destroyed?e.onwrite(new v(\"write\")):r?t._writev(i,e.onwrite):t._write(i,a,e.onwrite),e.sync=!1}function S(t,e,r,n){r||function(t,e){0===e.length&&e.needDrain&&(e.needDrain=!1,t.emit(\"drain\"))}(t,e),e.pendingcb--,n(),I(t,e)}function E(t,e){e.bufferProcessing=!0;var r=e.bufferedRequest;if(t._writev&&r&&r.next){var n=e.bufferedRequestCount,i=new Array(n),o=e.corkedRequestsFree;o.entry=r;for(var s=0,l=!0;r;)i[s]=r,r.isBuf||(l=!1),r=r.next,s+=1;i.allBuffers=l,M(t,e,!0,e.length,i,\"\",o.finish),e.pendingcb++,e.lastBufferedRequest=null,o.next?(e.corkedRequestsFree=o.next,o.next=null):e.corkedRequestsFree=new a(e),e.bufferedRequestCount=0}else{for(;r;){var c=r.chunk,u=r.encoding,h=r.callback;if(M(t,e,!1,e.objectMode?1:c.length,c,u,h),r=r.next,e.bufferedRequestCount--,e.writing)break}null===r&&(e.lastBufferedRequest=null)}e.bufferedRequest=r,e.bufferProcessing=!1}function C(t){return t.ending&&0===t.length&&null===t.bufferedRequest&&!t.finished&&!t.writing}function L(t,e){t._final((function(r){e.pendingcb--,r&&w(t,r),e.prefinished=!0,t.emit(\"prefinish\"),I(t,e)}))}function I(t,e){var r=C(e);if(r&&(function(t,e){e.prefinished||e.finalCalled||(\"function\"!=typeof t._final||e.destroyed?(e.prefinished=!0,t.emit(\"prefinish\")):(e.pendingcb++,e.finalCalled=!0,i.nextTick(L,t,e)))}(t,e),0===e.pendingcb&&(e.finished=!0,t.emit(\"finish\"),e.autoDestroy))){var n=t._readableState;(!n||n.autoDestroy&&n.endEmitted)&&t.destroy()}return r}r(28062)(A,l),k.prototype.getBuffer=function(){for(var t=this.bufferedRequest,e=[];t;)e.push(t),t=t.next;return e},function(){try{Object.defineProperty(k.prototype,\"buffer\",{get:s.deprecate((function(){return this.getBuffer()}),\"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.\",\"DEP0003\")})}catch(t){}}(),\"function\"==typeof Symbol&&Symbol.hasInstance&&\"function\"==typeof Function.prototype[Symbol.hasInstance]?(o=Function.prototype[Symbol.hasInstance],Object.defineProperty(A,Symbol.hasInstance,{value:function(t){return!!o.call(this,t)||this===A&&t&&t._writableState instanceof k}})):o=function(t){return t instanceof this},A.prototype.pipe=function(){w(this,new y)},A.prototype.write=function(t,e,r){var n,a=this._writableState,o=!1,s=!a.objectMode&&(n=t,c.isBuffer(n)||n instanceof u);return s&&!c.isBuffer(t)&&(t=function(t){return c.from(t)}(t)),\"function\"==typeof e&&(r=e,e=null),s?e=\"buffer\":e||(e=a.defaultEncoding),\"function\"!=typeof r&&(r=T),a.ending?function(t,e){var r=new _;w(t,r),i.nextTick(e,r)}(this,r):(s||function(t,e,r,n){var a;return null===r?a=new x:\"string\"==typeof r||e.objectMode||(a=new d(\"chunk\",[\"string\",\"Buffer\"],r)),!a||(w(t,a),i.nextTick(n,a),!1)}(this,a,t,r))&&(a.pendingcb++,o=function(t,e,r,n,i,a){if(!r){var o=function(t,e,r){return t.objectMode||!1===t.decodeStrings||\"string\"!=typeof e||(e=c.from(e,r)),e}(e,n,i);n!==o&&(r=!0,i=\"buffer\",n=o)}var s=e.objectMode?1:n.length;e.length+=s;var l=e.length<e.highWaterMark;if(l||(e.needDrain=!0),e.writing||e.corked){var u=e.lastBufferedRequest;e.lastBufferedRequest={chunk:n,encoding:i,isBuf:r,callback:a,next:null},u?u.next=e.lastBufferedRequest:e.bufferedRequest=e.lastBufferedRequest,e.bufferedRequestCount+=1}else M(t,e,!1,s,n,i,a);return l}(this,a,s,t,e,r)),o},A.prototype.cork=function(){this._writableState.corked++},A.prototype.uncork=function(){var t=this._writableState;t.corked&&(t.corked--,t.writing||t.corked||t.bufferProcessing||!t.bufferedRequest||E(this,t))},A.prototype.setDefaultEncoding=function(t){if(\"string\"==typeof t&&(t=t.toLowerCase()),!([\"hex\",\"utf8\",\"utf-8\",\"ascii\",\"binary\",\"base64\",\"ucs2\",\"ucs-2\",\"utf16le\",\"utf-16le\",\"raw\"].indexOf((t+\"\").toLowerCase())>-1))throw new b(t);return this._writableState.defaultEncoding=t,this},Object.defineProperty(A.prototype,\"writableBuffer\",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(A.prototype,\"writableHighWaterMark\",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),A.prototype._write=function(t,e,r){r(new m(\"_write()\"))},A.prototype._writev=null,A.prototype.end=function(t,e,r){var n=this._writableState;return\"function\"==typeof t?(r=t,t=null,e=null):\"function\"==typeof e&&(r=e,e=null),null!=t&&this.write(t,e),n.corked&&(n.corked=1,this.uncork()),n.ending||function(t,e,r){e.ending=!0,I(t,e),r&&(e.finished?i.nextTick(r):t.once(\"finish\",r)),e.ended=!0,t.writable=!1}(this,n,r),this},Object.defineProperty(A.prototype,\"writableLength\",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(A.prototype,\"destroyed\",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(t){this._writableState&&(this._writableState.destroyed=t)}}),A.prototype.destroy=h.destroy,A.prototype._undestroy=h.undestroy,A.prototype._destroy=function(t,e){e(t)}},73726:function(t,e,r){\"use strict\";var n,i=r(33282);function a(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}var o=r(37165),s=Symbol(\"lastResolve\"),l=Symbol(\"lastReject\"),c=Symbol(\"error\"),u=Symbol(\"ended\"),h=Symbol(\"lastPromise\"),f=Symbol(\"handlePromise\"),p=Symbol(\"stream\");function d(t,e){return{value:t,done:e}}function m(t){var e=t[s];if(null!==e){var r=t[p].read();null!==r&&(t[h]=null,t[s]=null,t[l]=null,e(d(r,!1)))}}function g(t){i.nextTick(m,t)}var y=Object.getPrototypeOf((function(){})),v=Object.setPrototypeOf((a(n={get stream(){return this[p]},next:function(){var t=this,e=this[c];if(null!==e)return Promise.reject(e);if(this[u])return Promise.resolve(d(void 0,!0));if(this[p].destroyed)return new Promise((function(e,r){i.nextTick((function(){t[c]?r(t[c]):e(d(void 0,!0))}))}));var r,n=this[h];if(n)r=new Promise(function(t,e){return function(r,n){t.then((function(){e[u]?r(d(void 0,!0)):e[f](r,n)}),n)}}(n,this));else{var a=this[p].read();if(null!==a)return Promise.resolve(d(a,!1));r=new Promise(this[f])}return this[h]=r,r}},Symbol.asyncIterator,(function(){return this})),a(n,\"return\",(function(){var t=this;return new Promise((function(e,r){t[p].destroy(null,(function(t){t?r(t):e(d(void 0,!0))}))}))})),n),y);t.exports=function(t){var e,r=Object.create(v,(a(e={},p,{value:t,writable:!0}),a(e,s,{value:null,writable:!0}),a(e,l,{value:null,writable:!0}),a(e,c,{value:null,writable:!0}),a(e,u,{value:t._readableState.endEmitted,writable:!0}),a(e,f,{value:function(t,e){var n=r[p].read();n?(r[h]=null,r[s]=null,r[l]=null,t(d(n,!1))):(r[s]=t,r[l]=e)},writable:!0}),e));return r[h]=null,o(t,(function(t){if(t&&\"ERR_STREAM_PREMATURE_CLOSE\"!==t.code){var e=r[l];return null!==e&&(r[h]=null,r[s]=null,r[l]=null,e(t)),void(r[c]=t)}var n=r[s];null!==n&&(r[h]=null,r[s]=null,r[l]=null,n(d(void 0,!0))),r[u]=!0})),t.on(\"readable\",g.bind(null,r)),r}},29930:function(t,e,r){\"use strict\";function n(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function i(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function a(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(t,n.key,n)}}var o=r(45708).Buffer,s=r(63779).inspect,l=s&&s.custom||\"inspect\";t.exports=function(){function t(){!function(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}(this,t),this.head=null,this.tail=null,this.length=0}var e,r;return e=t,r=[{key:\"push\",value:function(t){var e={data:t,next:null};this.length>0?this.tail.next=e:this.head=e,this.tail=e,++this.length}},{key:\"unshift\",value:function(t){var e={data:t,next:this.head};0===this.length&&(this.tail=e),this.head=e,++this.length}},{key:\"shift\",value:function(){if(0!==this.length){var t=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,t}}},{key:\"clear\",value:function(){this.head=this.tail=null,this.length=0}},{key:\"join\",value:function(t){if(0===this.length)return\"\";for(var e=this.head,r=\"\"+e.data;e=e.next;)r+=t+e.data;return r}},{key:\"concat\",value:function(t){if(0===this.length)return o.alloc(0);for(var e,r,n,i=o.allocUnsafe(t>>>0),a=this.head,s=0;a;)e=a.data,r=i,n=s,o.prototype.copy.call(e,r,n),s+=a.data.length,a=a.next;return i}},{key:\"consume\",value:function(t,e){var r;return t<this.head.data.length?(r=this.head.data.slice(0,t),this.head.data=this.head.data.slice(t)):r=t===this.head.data.length?this.shift():e?this._getString(t):this._getBuffer(t),r}},{key:\"first\",value:function(){return this.head.data}},{key:\"_getString\",value:function(t){var e=this.head,r=1,n=e.data;for(t-=n.length;e=e.next;){var i=e.data,a=t>i.length?i.length:t;if(a===i.length?n+=i:n+=i.slice(0,t),0==(t-=a)){a===i.length?(++r,e.next?this.head=e.next:this.head=this.tail=null):(this.head=e,e.data=i.slice(a));break}++r}return this.length-=r,n}},{key:\"_getBuffer\",value:function(t){var e=o.allocUnsafe(t),r=this.head,n=1;for(r.data.copy(e),t-=r.data.length;r=r.next;){var i=r.data,a=t>i.length?i.length:t;if(i.copy(e,e.length-t,0,a),0==(t-=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,e}},{key:l,value:function(t,e){return s(this,function(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?n(Object(r),!0).forEach((function(e){i(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):n(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}({},e,{depth:0,customInspect:!1}))}}],r&&a(e.prototype,r),t}()},52023:function(t,e,r){\"use strict\";var n=r(33282);function i(t,e){o(t,e),a(t)}function a(t){t._writableState&&!t._writableState.emitClose||t._readableState&&!t._readableState.emitClose||t.emit(\"close\")}function o(t,e){t.emit(\"error\",e)}t.exports={destroy:function(t,e){var r=this,s=this._readableState&&this._readableState.destroyed,l=this._writableState&&this._writableState.destroyed;return s||l?(e?e(t):t&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,n.nextTick(o,this,t)):n.nextTick(o,this,t)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(t||null,(function(t){!e&&t?r._writableState?r._writableState.errorEmitted?n.nextTick(a,r):(r._writableState.errorEmitted=!0,n.nextTick(i,r,t)):n.nextTick(i,r,t):e?(n.nextTick(a,r),e(t)):n.nextTick(a,r)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)},errorOrDestroy:function(t,e){var r=t._readableState,n=t._writableState;r&&r.autoDestroy||n&&n.autoDestroy?t.destroy(e):t.emit(\"error\",e)}}},37165:function(t,e,r){\"use strict\";var n=r(44059).F.ERR_STREAM_PREMATURE_CLOSE;function i(){}t.exports=function t(e,r,a){if(\"function\"==typeof r)return t(e,null,r);r||(r={}),a=function(t){var e=!1;return function(){if(!e){e=!0;for(var r=arguments.length,n=new Array(r),i=0;i<r;i++)n[i]=arguments[i];t.apply(this,n)}}}(a||i);var o=r.readable||!1!==r.readable&&e.readable,s=r.writable||!1!==r.writable&&e.writable,l=function(){e.writable||u()},c=e._writableState&&e._writableState.finished,u=function(){s=!1,c=!0,o||a.call(e)},h=e._readableState&&e._readableState.endEmitted,f=function(){o=!1,h=!0,s||a.call(e)},p=function(t){a.call(e,t)},d=function(){var t;return o&&!h?(e._readableState&&e._readableState.ended||(t=new n),a.call(e,t)):s&&!c?(e._writableState&&e._writableState.ended||(t=new n),a.call(e,t)):void 0},m=function(){e.req.on(\"finish\",u)};return function(t){return t.setHeader&&\"function\"==typeof t.abort}(e)?(e.on(\"complete\",u),e.on(\"abort\",d),e.req?m():e.on(\"request\",m)):s&&!e._writableState&&(e.on(\"end\",l),e.on(\"close\",l)),e.on(\"end\",f),e.on(\"finish\",u),!1!==r.error&&e.on(\"error\",p),e.on(\"close\",d),function(){e.removeListener(\"complete\",u),e.removeListener(\"abort\",d),e.removeListener(\"request\",m),e.req&&e.req.removeListener(\"finish\",u),e.removeListener(\"end\",l),e.removeListener(\"close\",l),e.removeListener(\"finish\",u),e.removeListener(\"end\",f),e.removeListener(\"error\",p),e.removeListener(\"close\",d)}}},37108:function(t){t.exports=function(){throw new Error(\"Readable.from is not available in the browser\")}},6772:function(t,e,r){\"use strict\";var n,i=r(44059).F,a=i.ERR_MISSING_ARGS,o=i.ERR_STREAM_DESTROYED;function s(t){if(t)throw t}function l(t){t()}function c(t,e){return t.pipe(e)}t.exports=function(){for(var t=arguments.length,e=new Array(t),i=0;i<t;i++)e[i]=arguments[i];var u,h=function(t){return t.length?\"function\"!=typeof t[t.length-1]?s:t.pop():s}(e);if(Array.isArray(e[0])&&(e=e[0]),e.length<2)throw new a(\"streams\");var f=e.map((function(t,i){var a=i<e.length-1;return function(t,e,i,a){a=function(t){var e=!1;return function(){e||(e=!0,t.apply(void 0,arguments))}}(a);var s=!1;t.on(\"close\",(function(){s=!0})),void 0===n&&(n=r(37165)),n(t,{readable:e,writable:i},(function(t){if(t)return a(t);s=!0,a()}));var l=!1;return function(e){if(!s&&!l)return l=!0,function(t){return t.setHeader&&\"function\"==typeof t.abort}(t)?t.abort():\"function\"==typeof t.destroy?t.destroy():void a(e||new o(\"pipe\"))}}(t,a,i>0,(function(t){u||(u=t),t&&f.forEach(l),a||(f.forEach(l),h(u))}))}));return e.reduce(c)}},31976:function(t,e,r){\"use strict\";var n=r(44059).F.ERR_INVALID_OPT_VALUE;t.exports={getHighWaterMark:function(t,e,r,i){var a=function(t,e,r){return null!=t.highWaterMark?t.highWaterMark:e?t[r]:null}(e,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 t.objectMode?16:16384}}},60032:function(t,e,r){t.exports=r(7683).EventEmitter},54304:function(t,e,r){\"use strict\";var n=r(41041).Buffer,i=n.isEncoding||function(t){switch((t=\"\"+t)&&t.toLowerCase()){case\"hex\":case\"utf8\":case\"utf-8\":case\"ascii\":case\"binary\":case\"base64\":case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":case\"raw\":return!0;default:return!1}};function a(t){var e;switch(this.encoding=function(t){var e=function(t){if(!t)return\"utf8\";for(var e;;)switch(t){case\"utf8\":case\"utf-8\":return\"utf8\";case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return\"utf16le\";case\"latin1\":case\"binary\":return\"latin1\";case\"base64\":case\"ascii\":case\"hex\":return t;default:if(e)return;t=(\"\"+t).toLowerCase(),e=!0}}(t);if(\"string\"!=typeof e&&(n.isEncoding===i||!i(t)))throw new Error(\"Unknown encoding: \"+t);return e||t}(t),this.encoding){case\"utf16le\":this.text=l,this.end=c,e=4;break;case\"utf8\":this.fillLast=s,e=4;break;case\"base64\":this.text=u,this.end=h,e=3;break;default:return this.write=f,void(this.end=p)}this.lastNeed=0,this.lastTotal=0,this.lastChar=n.allocUnsafe(e)}function o(t){return t<=127?0:t>>5==6?2:t>>4==14?3:t>>3==30?4:t>>6==2?-1:-2}function s(t){var e=this.lastTotal-this.lastNeed,r=function(t,e,r){if(128!=(192&e[0]))return t.lastNeed=0,\"<22>\";if(t.lastNeed>1&&e.length>1){if(128!=(192&e[1]))return t.lastNeed=1,\"<22>\";if(t.lastNeed>2&&e.length>2&&128!=(192&e[2]))return t.lastNeed=2,\"<22>\"}}(this,t);return void 0!==r?r:this.lastNeed<=t.length?(t.copy(this.lastChar,e,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(t.copy(this.lastChar,e,0,t.length),void(this.lastNeed-=t.length))}function l(t,e){if((t.length-e)%2==0){var r=t.toString(\"utf16le\",e);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=t[t.length-1],t.toString(\"utf16le\",e,t.length-1)}function c(t){var e=t&&t.length?this.write(t):\"\";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return e+this.lastChar.toString(\"utf16le\",0,r)}return e}function u(t,e){var r=(t.length-e)%3;return 0===r?t.toString(\"base64\",e):(this.lastNeed=3-r,this.lastTotal=3,1===r?this.lastChar[0]=t[t.length-1]:(this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1]),t.toString(\"base64\",e,t.length-r))}function h(t){var e=t&&t.length?this.write(t):\"\";return this.lastNeed?e+this.lastChar.toString(\"base64\",0,3-this.lastNeed):e}function f(t){return t.toString(this.encoding)}function p(t){return t&&t.length?this.write(t):\"\"}e.I=a,a.prototype.write=function(t){if(0===t.length)return\"\";var e,r;if(this.lastNeed){if(void 0===(e=this.fillLast(t)))return\"\";r=this.lastNeed,this.lastNeed=0}else r=0;return r<t.length?e?e+this.text(t,r):this.text(t,r):e||\"\"},a.prototype.end=function(t){var e=t&&t.length?this.write(t):\"\";return this.lastNeed?e+\"<22>\":e},a.prototype.text=function(t,e){var r=function(t,e,r){var n=e.length-1;if(n<r)return 0;var i=o(e[n]);return i>=0?(i>0&&(t.lastNeed=i-1),i):--n<r||-2===i?0:(i=o(e[n]))>=0?(i>0&&(t.lastNeed=i-2),i):--n<r||-2===i?0:(i=o(e[n]))>=0?(i>0&&(2===i?i=0:t.lastNeed=i-3),i):0}(this,t,e);if(!this.lastNeed)return t.toString(\"utf8\",e);this.lastTotal=r;var n=t.length-(r-this.lastNeed);return t.copy(this.lastChar,0,n),t.toString(\"utf8\",e,n)},a.prototype.fillLast=function(t){if(this.lastNeed<=t.length)return t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,t.length),this.lastNeed-=t.length}},79743:function(t,e,r){var n=r(45708).Buffer,i=r(85672),a=r(79399)(\"stream-parser\");t.exports=function(t){var e=t&&\"function\"==typeof t._transform,r=t&&\"function\"==typeof t._write;if(!e&&!r)throw new Error(\"must pass a Writable or Transform stream in\");a(\"extending Parser into stream\"),t._bytes=h,t._skipBytes=f,e&&(t._passthrough=p),e?t._transform=m:t._write=d};var o=-1,s=0,l=1,c=2;function u(t){a(\"initializing parser stream\"),t._parserBytesLeft=0,t._parserBuffers=[],t._parserBuffered=0,t._parserState=o,t._parserCallback=null,\"function\"==typeof t.push&&(t._parserOutput=t.push.bind(t)),t._parserInit=!0}function h(t,e){i(!this._parserCallback,'there is already a \"callback\" set!'),i(isFinite(t)&&t>0,'can only buffer a finite number of bytes > 0, got \"'+t+'\"'),this._parserInit||u(this),a(\"buffering %o bytes\",t),this._parserBytesLeft=t,this._parserCallback=e,this._parserState=s}function f(t,e){i(!this._parserCallback,'there is already a \"callback\" set!'),i(t>0,'can only skip > 0 bytes, got \"'+t+'\"'),this._parserInit||u(this),a(\"skipping %o bytes\",t),this._parserBytesLeft=t,this._parserCallback=e,this._parserState=l}function p(t,e){i(!this._parserCallback,'There is already a \"callback\" set!'),i(t>0,'can only pass through > 0 bytes, got \"'+t+'\"'),this._parserInit||u(this),a(\"passing through %o bytes\",t),this._parserBytesLeft=t,this._parserCallback=e,this._parserState=c}function d(t,e,r){this._parserInit||u(this),a(\"write(%o bytes)\",t.length),\"function\"==typeof e&&(r=e),y(this,t,null,r)}function m(t,e,r){this._parserInit||u(this),a(\"transform(%o bytes)\",t.length),\"function\"!=typeof e&&(e=this._parserOutput),y(this,t,e,r)}function g(t,e,r,i){if(t._parserBytesLeft-=e.length,a(\"%o bytes left for stream piece\",t._parserBytesLeft),t._parserState===s?(t._parserBuffers.push(e),t._parserBuffered+=e.length):t._parserState===c&&r(e),0!==t._parserBytesLeft)return i;var l=t._parserCallback;if(l&&t._parserState===s&&t._parserBuffers.length>1&&(e=n.concat(t._parserBuffers,t._parserBuffered)),t._parserState!==s&&(e=null),t._parserCallback=null,t._parserBuffered=0,t._parserState=o,t._parserBuffers.splice(0),l){var u=[];e&&u.push(e),r&&u.push(r);var h=l.length>u.length;h&&u.push(v(i));var f=l.apply(t,u);if(!h||i===f)return i}}var y=v((function t(e,r,n,i){return e._parserBytesLeft<=0?i(new Error(\"got data but not currently parsing anything\")):r.length<=e._parserBytesLeft?function(){return g(e,r,n,i)}:function(){var a=r.slice(0,e._parserBytesLeft);return g(e,a,n,(function(o){return o?i(o):r.length>a.length?function(){return t(e,r.slice(a.length),n,i)}:void 0}))}}));function v(t){return function(){for(var e=t.apply(this,arguments);\"function\"==typeof e;)e=e();return e}}},79399:function(t,e,r){var n=r(33282);function i(){var t;try{t=e.storage.debug}catch(t){}return!t&&void 0!==n&&\"env\"in n&&(t=n.env.DEBUG),t}(e=t.exports=r(43228)).log=function(){return\"object\"==typeof console&&console.log&&Function.prototype.apply.call(console.log,console,arguments)},e.formatArgs=function(t){var r=this.useColors;if(t[0]=(r?\"%c\":\"\")+this.namespace+(r?\" %c\":\" \")+t[0]+(r?\"%c \":\" \")+\"+\"+e.humanize(this.diff),r){var n=\"color: \"+this.color;t.splice(1,0,n,\"color: inherit\");var i=0,a=0;t[0].replace(/%[a-zA-Z%]/g,(function(t){\"%%\"!==t&&(i++,\"%c\"===t&&(a=i))})),t.splice(a,0,n)}},e.save=function(t){try{null==t?e.storage.removeItem(\"debug\"):e.storage.debug=t}catch(t){}},e.load=i,e.useColors=function(){return!(\"undefined\"==typeof window||!window.process||\"renderer\"!==window.process.type)||(\"undefined\"!=typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||\"undefined\"!=typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||\"undefined\"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\\/(\\d+)/)&&parseInt(RegExp.$1,10)>=31||\"undefined\"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\\/(\\d+)/))},e.storage=\"undefined\"!=typeof chrome&&void 0!==chrome.storage?chrome.storage.local:function(){try{return window.localStorage}catch(t){}}(),e.colors=[\"lightseagreen\",\"forestgreen\",\"goldenrod\",\"dodgerblue\",\"darkorchid\",\"crimson\"],e.formatters.j=function(t){try{return JSON.stringify(t)}catch(t){return\"[UnexpectedJSONParseError]: \"+t.message}},e.enable(i())},43228:function(t,e,r){var n;function i(t){function r(){if(r.enabled){var t=r,i=+new Date,a=i-(n||i);t.diff=a,t.prev=n,t.curr=i,n=i;for(var o=new Array(arguments.length),s=0;s<o.length;s++)o[s]=arguments[s];o[0]=e.coerce(o[0]),\"string\"!=typeof o[0]&&o.unshift(\"%O\");var l=0;o[0]=o[0].replace(/%([a-zA-Z%])/g,(function(r,n){if(\"%%\"===r)return r;l++;var i=e.formatters[n];if(\"function\"==typeof i){var a=o[l];r=i.call(t,a),o.splice(l,1),l--}return r})),e.formatArgs.call(t,o),(r.log||e.log||console.log.bind(console)).apply(t,o)}}return r.namespace=t,r.enabled=e.enabled(t),r.useColors=e.useColors(),r.color=function(t){var r,n=0;for(r in t)n=(n<<5)-n+t.charCodeAt(r),n|=0;return e.colors[Math.abs(n)%e.colors.length]}(t),\"function\"==typeof e.init&&e.init(r),r}(e=t.exports=i.debug=i.default=i).coerce=function(t){return t instanceof Error?t.stack||t.message:t},e.disable=function(){e.enable(\"\")},e.enable=function(t){e.save(t),e.names=[],e.skips=[];for(var r=(\"string\"==typeof t?t:\"\").split(/[\\s,]+/),n=r.length,i=0;i<n;i++)r[i]&&(\"-\"===(t=r[i].replace(/\\*/g,\".*?\"))[0]?e.skips.push(new RegExp(\"^\"+t.substr(1)+\"$\")):e.names.push(new RegExp(\"^\"+t+\"$\")))},e.enabled=function(t){var r,n;for(r=0,n=e.skips.length;r<n;r++)if(e.skips[r].test(t))return!1;for(r=0,n=e.names.length;r<n;r++)if(e.names[r].test(t))return!0;return!1},e.humanize=r(13883),e.names=[],e.skips=[],e.formatters={}},13883:function(t){var e=1e3,r=60*e,n=60*r,i=24*n;function a(t,e,r){if(!(t<e))return t<1.5*e?Math.floor(t/e)+\" \"+r:Math.ceil(t/e)+\" \"+r+\"s\"}t.exports=function(t,o){o=o||{};var s,l=typeof t;if(\"string\"===l&&t.length>0)return function(t){if(!((t=String(t)).length>100)){var a=/^((?:\\d+)?\\.?\\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(t);if(a){var o=parseFloat(a[1]);switch((a[2]||\"ms\").toLowerCase()){case\"years\":case\"year\":case\"yrs\":case\"yr\":case\"y\":return 315576e5*o;case\"days\":case\"day\":case\"d\":return o*i;case\"hours\":case\"hour\":case\"hrs\":case\"hr\":case\"h\":return o*n;case\"minutes\":case\"minute\":case\"mins\":case\"min\":case\"m\":return o*r;case\"seconds\":case\"second\":case\"secs\":case\"sec\":case\"s\":return o*e;case\"milliseconds\":case\"millisecond\":case\"msecs\":case\"msec\":case\"ms\":return o;default:return}}}}(t);if(\"number\"===l&&!1===isNaN(t))return o.long?a(s=t,i,\"day\")||a(s,n,\"hour\")||a(s,r,\"minute\")||a(s,e,\"second\")||s+\" ms\":function(t){return t>=i?Math.round(t/i)+\"d\":t>=n?Math.round(t/n)+\"h\":t>=r?Math.round(t/r)+\"m\":t>=e?Math.round(t/e)+\"s\":t+\"ms\"}(t);throw new Error(\"val is not a non-empty string or a valid number. val=\"+JSON.stringify(t))}},28089:function(t,e,r){\"use strict\";var n=r(59811);t.exports=function(t,e,r){if(null==t)throw Error(\"First argument should be a string\");if(null==e)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=[\"[]\",\"()\",\"{}\",\"<>\",'\"\"',\"''\",\"``\",\"“”\",\"«»\"]:(\"string\"==typeof r.ignore&&(r.ignore=[r.ignore]),r.ignore=r.ignore.map((function(t){return 1===t.length&&(t+=t),t})));var i=n.parse(t,{flat:!0,brackets:r.ignore}),a=i[0].split(e);if(r.escape){for(var o=[],s=0;s<a.length;s++){var l=a[s],c=a[s+1];\"\\\\\"===l[l.length-1]&&\"\\\\\"!==l[l.length-2]?(o.push(l+e+c),s++):o.push(l)}a=o}for(s=0;s<a.length;s++)i[0]=a[s],a[s]=n.stringify(i,{flat:!0});return a}},26381:function(t){\"use strict\";t.exports=function(t){for(var e=t.length,r=new Array(e),n=new Array(e),i=new Array(e),a=new Array(e),o=new Array(e),s=new Array(e),l=0;l<e;++l)r[l]=-1,n[l]=0,i[l]=!1,a[l]=0,o[l]=-1,s[l]=[];var c,u=0,h=[],f=[];function p(e){var l=[e],c=[e];for(r[e]=n[e]=u,i[e]=!0,u+=1;c.length>0;){e=c[c.length-1];var p=t[e];if(a[e]<p.length){for(var d=a[e];d<p.length;++d){var m=p[d];if(r[m]<0){r[m]=n[m]=u,i[m]=!0,u+=1,l.push(m),c.push(m);break}i[m]&&(n[e]=0|Math.min(n[e],n[m])),o[m]>=0&&s[e].push(o[m])}a[e]=d}else{if(n[e]===r[e]){var g=[],y=[],v=0;for(d=l.length-1;d>=0;--d){var x=l[d];if(i[x]=!1,g.push(x),y.push(s[x]),v+=s[x].length,o[x]=h.length,x===e){l.length=d;break}}h.push(g);var _=new Array(v);for(d=0;d<y.length;d++)for(var b=0;b<y[d].length;b++)_[--v]=y[d][b];f.push(_)}c.pop()}}}for(l=0;l<e;++l)r[l]<0&&p(l);for(l=0;l<f.length;l++){var d=f[l];if(0!==d.length){d.sort((function(t,e){return t-e})),c=[d[0]];for(var m=1;m<d.length;m++)d[m]!==d[m-1]&&c.push(d[m]);f[l]=c}}return{components:h,adjacencyList:f}}},13193:function(t,e,r){\"use strict\";r.r(e);var n=2*Math.PI,i=function(t,e,r,n,i,a,o){var s=t.x,l=t.y;return{x:n*(s*=e)-i*(l*=r)+a,y:i*s+n*l+o}},a=function(t,e){var r=1.5707963267948966===e?.551915024494:-1.5707963267948966===e?-.551915024494:4/3*Math.tan(e/4),n=Math.cos(t),i=Math.sin(t),a=Math.cos(t+e),o=Math.sin(t+e);return[{x:n-i*r,y:i+n*r},{x:a+o*r,y:o-a*r},{x:a,y:o}]},o=function(t,e,r,n){var i=t*r+e*n;return i>1&&(i=1),i<-1&&(i=-1),(t*n-e*r<0?-1:1)*Math.acos(i)};e.default=function(t){var e=t.px,r=t.py,s=t.cx,l=t.cy,c=t.rx,u=t.ry,h=t.xAxisRotation,f=void 0===h?0:h,p=t.largeArcFlag,d=void 0===p?0:p,m=t.sweepFlag,g=void 0===m?0:m,y=[];if(0===c||0===u)return[];var v=Math.sin(f*n/360),x=Math.cos(f*n/360),_=x*(e-s)/2+v*(r-l)/2,b=-v*(e-s)/2+x*(r-l)/2;if(0===_&&0===b)return[];c=Math.abs(c),u=Math.abs(u);var w=Math.pow(_,2)/Math.pow(c,2)+Math.pow(b,2)/Math.pow(u,2);w>1&&(c*=Math.sqrt(w),u*=Math.sqrt(w));var T=function(t,e,r,i,a,s,l,c,u,h,f,p){var d=Math.pow(a,2),m=Math.pow(s,2),g=Math.pow(f,2),y=Math.pow(p,2),v=d*m-d*y-m*g;v<0&&(v=0),v/=d*y+m*g;var x=(v=Math.sqrt(v)*(l===c?-1:1))*a/s*p,_=v*-s/a*f,b=h*x-u*_+(t+r)/2,w=u*x+h*_+(e+i)/2,T=(f-x)/a,k=(p-_)/s,A=(-f-x)/a,M=(-p-_)/s,S=o(1,0,T,k),E=o(T,k,A,M);return 0===c&&E>0&&(E-=n),1===c&&E<0&&(E+=n),[b,w,S,E]}(e,r,s,l,c,u,d,g,v,x,_,b),k=function(t,e){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return function(t,e){var r=[],n=!0,i=!1,a=void 0;try{for(var o,s=t[Symbol.iterator]();!(n=(o=s.next()).done)&&(r.push(o.value),!e||r.length!==e);n=!0);}catch(t){i=!0,a=t}finally{try{!n&&s.return&&s.return()}finally{if(i)throw a}}return r}(t,e);throw new TypeError(\"Invalid attempt to destructure non-iterable instance\")}(T,4),A=k[0],M=k[1],S=k[2],E=k[3],C=Math.abs(E)/(n/4);Math.abs(1-C)<1e-7&&(C=1);var L=Math.max(Math.ceil(C),1);E/=L;for(var I=0;I<L;I++)y.push(a(S,E)),S+=E;return y.map((function(t){var e=i(t[0],c,u,x,v,A,M),r=e.x,n=e.y,a=i(t[1],c,u,x,v,A,M),o=a.x,s=a.y,l=i(t[2],c,u,x,v,A,M);return{x1:r,y1:n,x2:o,y2:s,x:l.x,y:l.y}}))}},97251:function(t,e,r){\"use strict\";var n=r(26953),i=r(16844),a=r(41883),o=r(13986),s=r(85672);t.exports=function(t){if(Array.isArray(t)&&1===t.length&&\"string\"==typeof t[0]&&(t=t[0]),\"string\"==typeof t&&(s(o(t),\"String is not an SVG path.\"),t=n(t)),s(Array.isArray(t),\"Argument should be a string or an array of path segments.\"),t=i(t),!(t=a(t)).length)return[0,0,0,0];for(var e=[1/0,1/0,-1/0,-1/0],r=0,l=t.length;r<l;r++)for(var c=t[r].slice(1),u=0;u<c.length;u+=2)c[u+0]<e[0]&&(e[0]=c[u+0]),c[u+1]<e[1]&&(e[1]=c[u+1]),c[u+0]>e[2]&&(e[2]=c[u+0]),c[u+1]>e[3]&&(e[3]=c[u+1]);return e}},41883:function(t,e,r){\"use strict\";t.exports=function(t){for(var e,r=[],o=0,s=0,l=0,c=0,u=null,h=null,f=0,p=0,d=0,m=t.length;d<m;d++){var g=t[d],y=g[0];switch(y){case\"M\":l=g[1],c=g[2];break;case\"A\":var v=n({px:f,py:p,cx:g[6],cy:g[7],rx:g[1],ry:g[2],xAxisRotation:g[3],largeArcFlag:g[4],sweepFlag:g[5]});if(!v.length)continue;for(var x,_=0;_<v.length;_++)g=[\"C\",(x=v[_]).x1,x.y1,x.x2,x.y2,x.x,x.y],_<v.length-1&&r.push(g);break;case\"S\":var b=f,w=p;\"C\"!=e&&\"S\"!=e||(b+=b-o,w+=w-s),g=[\"C\",b,w,g[1],g[2],g[3],g[4]];break;case\"T\":\"Q\"==e||\"T\"==e?(u=2*f-u,h=2*p-h):(u=f,h=p),g=a(f,p,u,h,g[1],g[2]);break;case\"Q\":u=g[1],h=g[2],g=a(f,p,g[1],g[2],g[3],g[4]);break;case\"L\":g=i(f,p,g[1],g[2]);break;case\"H\":g=i(f,p,g[1],p);break;case\"V\":g=i(f,p,f,g[1]);break;case\"Z\":g=i(f,p,l,c)}e=y,f=g[g.length-2],p=g[g.length-1],g.length>4?(o=g[g.length-4],s=g[g.length-3]):(o=f,s=p),r.push(g)}return r};var n=r(13193);function i(t,e,r,n){return[\"C\",t,e,r,n,r,n]}function a(t,e,r,n,i,a){return[\"C\",t/3+2/3*r,e/3+2/3*n,i/3+2/3*r,a/3+2/3*n,i,a]}},96021:function(t,e,r){\"use strict\";var n,i=r(97251),a=r(26953),o=r(95620),s=r(13986),l=r(88772),c=document.createElement(\"canvas\"),u=c.getContext(\"2d\");t.exports=function(t,e){if(!s(t))throw Error(\"Argument should be valid svg path string\");var r,h;e||(e={}),e.shape?(r=e.shape[0],h=e.shape[1]):(r=c.width=e.w||e.width||200,h=c.height=e.h||e.height||200);var f=Math.min(r,h),p=e.stroke||0,d=e.viewbox||e.viewBox||i(t),m=[r/(d[2]-d[0]),h/(d[3]-d[1])],g=Math.min(m[0]||0,m[1]||0)/2;if(u.fillStyle=\"black\",u.fillRect(0,0,r,h),u.fillStyle=\"white\",p&&(\"number\"!=typeof p&&(p=1),u.strokeStyle=p>0?\"white\":\"black\",u.lineWidth=Math.abs(p)),u.translate(.5*r,.5*h),u.scale(g,g),function(){if(null!=n)return n;var t=document.createElement(\"canvas\").getContext(\"2d\");if(t.canvas.width=t.canvas.height=1,!window.Path2D)return n=!1;var e=new Path2D(\"M0,0h1v1h-1v-1Z\");t.fillStyle=\"black\",t.fill(e);var r=t.getImageData(0,0,1,1);return n=r&&r.data&&255===r.data[3]}()){var y=new Path2D(t);u.fill(y),p&&u.stroke(y)}else{var v=a(t);o(u,v),u.fill(),p&&u.stroke()}return u.setTransform(1,0,0,1,0,0),l(u,{cutoff:null!=e.cutoff?e.cutoff:.5,radius:null!=e.radius?e.radius:.5*f})}},65657:function(t,e,r){var n;!function(i){var a=/^\\s+/,o=/\\s+$/,s=0,l=i.round,c=i.min,u=i.max,h=i.random;function f(t,e){if(e=e||{},(t=t||\"\")instanceof f)return t;if(!(this instanceof f))return new f(t,e);var r=function(t){var e,r,n,s={r:0,g:0,b:0},l=1,h=null,f=null,p=null,d=!1,m=!1;return\"string\"==typeof t&&(t=function(t){t=t.replace(a,\"\").replace(o,\"\").toLowerCase();var e,r=!1;if(L[t])t=L[t],r=!0;else if(\"transparent\"==t)return{r:0,g:0,b:0,a:0,format:\"name\"};return(e=q.rgb.exec(t))?{r:e[1],g:e[2],b:e[3]}:(e=q.rgba.exec(t))?{r:e[1],g:e[2],b:e[3],a:e[4]}:(e=q.hsl.exec(t))?{h:e[1],s:e[2],l:e[3]}:(e=q.hsla.exec(t))?{h:e[1],s:e[2],l:e[3],a:e[4]}:(e=q.hsv.exec(t))?{h:e[1],s:e[2],v:e[3]}:(e=q.hsva.exec(t))?{h:e[1],s:e[2],v:e[3],a:e[4]}:(e=q.hex8.exec(t))?{r:D(e[1]),g:D(e[2]),b:D(e[3]),a:N(e[4]),format:r?\"name\":\"hex8\"}:(e=q.hex6.exec(t))?{r:D(e[1]),g:D(e[2]),b:D(e[3]),format:r?\"name\":\"hex\"}:(e=q.hex4.exec(t))?{r:D(e[1]+\"\"+e[1]),g:D(e[2]+\"\"+e[2]),b:D(e[3]+\"\"+e[3]),a:N(e[4]+\"\"+e[4]),format:r?\"name\":\"hex8\"}:!!(e=q.hex3.exec(t))&&{r:D(e[1]+\"\"+e[1]),g:D(e[2]+\"\"+e[2]),b:D(e[3]+\"\"+e[3]),format:r?\"name\":\"hex\"}}(t)),\"object\"==typeof t&&(H(t.r)&&H(t.g)&&H(t.b)?(e=t.r,r=t.g,n=t.b,s={r:255*z(e,255),g:255*z(r,255),b:255*z(n,255)},d=!0,m=\"%\"===String(t.r).substr(-1)?\"prgb\":\"rgb\"):H(t.h)&&H(t.s)&&H(t.v)?(h=F(t.s),f=F(t.v),s=function(t,e,r){t=6*z(t,360),e=z(e,100),r=z(r,100);var n=i.floor(t),a=t-n,o=r*(1-e),s=r*(1-a*e),l=r*(1-(1-a)*e),c=n%6;return{r:255*[r,s,o,o,l,r][c],g:255*[l,r,r,s,o,o][c],b:255*[o,o,l,r,r,s][c]}}(t.h,h,f),d=!0,m=\"hsv\"):H(t.h)&&H(t.s)&&H(t.l)&&(h=F(t.s),p=F(t.l),s=function(t,e,r){var n,i,a;function o(t,e,r){return r<0&&(r+=1),r>1&&(r-=1),r<1/6?t+6*(e-t)*r:r<.5?e:r<2/3?t+(e-t)*(2/3-r)*6:t}if(t=z(t,360),e=z(e,100),r=z(r,100),0===e)n=i=a=r;else{var s=r<.5?r*(1+e):r+e-r*e,l=2*r-s;n=o(l,s,t+1/3),i=o(l,s,t),a=o(l,s,t-1/3)}return{r:255*n,g:255*i,b:255*a}}(t.h,h,p),d=!0,m=\"hsl\"),t.hasOwnProperty(\"a\")&&(l=t.a)),l=P(l),{ok:d,format:t.format||m,r:c(255,u(s.r,0)),g:c(255,u(s.g,0)),b:c(255,u(s.b,0)),a:l}}(t);this._originalInput=t,this._r=r.r,this._g=r.g,this._b=r.b,this._a=r.a,this._roundA=l(100*this._a)/100,this._format=e.format||r.format,this._gradientType=e.gradientType,this._r<1&&(this._r=l(this._r)),this._g<1&&(this._g=l(this._g)),this._b<1&&(this._b=l(this._b)),this._ok=r.ok,this._tc_id=s++}function p(t,e,r){t=z(t,255),e=z(e,255),r=z(r,255);var n,i,a=u(t,e,r),o=c(t,e,r),s=(a+o)/2;if(a==o)n=i=0;else{var l=a-o;switch(i=s>.5?l/(2-a-o):l/(a+o),a){case t:n=(e-r)/l+(e<r?6:0);break;case e:n=(r-t)/l+2;break;case r:n=(t-e)/l+4}n/=6}return{h:n,s:i,l:s}}function d(t,e,r){t=z(t,255),e=z(e,255),r=z(r,255);var n,i,a=u(t,e,r),o=c(t,e,r),s=a,l=a-o;if(i=0===a?0:l/a,a==o)n=0;else{switch(a){case t:n=(e-r)/l+(e<r?6:0);break;case e:n=(r-t)/l+2;break;case r:n=(t-e)/l+4}n/=6}return{h:n,s:i,v:s}}function m(t,e,r,n){var i=[R(l(t).toString(16)),R(l(e).toString(16)),R(l(r).toString(16))];return n&&i[0].charAt(0)==i[0].charAt(1)&&i[1].charAt(0)==i[1].charAt(1)&&i[2].charAt(0)==i[2].charAt(1)?i[0].charAt(0)+i[1].charAt(0)+i[2].charAt(0):i.join(\"\")}function g(t,e,r,n){return[R(B(n)),R(l(t).toString(16)),R(l(e).toString(16)),R(l(r).toString(16))].join(\"\")}function y(t,e){e=0===e?0:e||10;var r=f(t).toHsl();return r.s-=e/100,r.s=O(r.s),f(r)}function v(t,e){e=0===e?0:e||10;var r=f(t).toHsl();return r.s+=e/100,r.s=O(r.s),f(r)}function x(t){return f(t).desaturate(100)}function _(t,e){e=0===e?0:e||10;var r=f(t).toHsl();return r.l+=e/100,r.l=O(r.l),f(r)}function b(t,e){e=0===e?0:e||10;var r=f(t).toRgb();return r.r=u(0,c(255,r.r-l(-e/100*255))),r.g=u(0,c(255,r.g-l(-e/100*255))),r.b=u(0,c(255,r.b-l(-e/100*255))),f(r)}function w(t,e){e=0===e?0:e||10;var r=f(t).toHsl();return r.l-=e/100,r.l=O(r.l),f(r)}function T(t,e){var r=f(t).toHsl(),n=(r.h+e)%360;return r.h=n<0?360+n:n,f(r)}function k(t){var e=f(t).toHsl();return e.h=(e.h+180)%360,f(e)}function A(t){var e=f(t).toHsl(),r=e.h;return[f(t),f({h:(r+120)%360,s:e.s,l:e.l}),f({h:(r+240)%360,s:e.s,l:e.l})]}function M(t){var e=f(t).toHsl(),r=e.h;return[f(t),f({h:(r+90)%360,s:e.s,l:e.l}),f({h:(r+180)%360,s:e.s,l:e.l}),f({h:(r+270)%360,s:e.s,l:e.l})]}function S(t){var e=f(t).toHsl(),r=e.h;return[f(t),f({h:(r+72)%360,s:e.s,l:e.l}),f({h:(r+216)%360,s:e.s,l:e.l})]}function E(t,e,r){e=e||6,r=r||30;var n=f(t).toHsl(),i=360/r,a=[f(t)];for(n.h=(n.h-(i*e>>1)+720)%360;--e;)n.h=(n.h+i)%360,a.push(f(n));return a}function C(t,e){e=e||6;for(var r=f(t).toHsv(),n=r.h,i=r.s,a=r.v,o=[],s=1/e;e--;)o.push(f({h:n,s:i,v:a})),a=(a+s)%1;return o}f.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var t=this.toRgb();return(299*t.r+587*t.g+114*t.b)/1e3},getLuminance:function(){var t,e,r,n=this.toRgb();return t=n.r/255,e=n.g/255,r=n.b/255,.2126*(t<=.03928?t/12.92:i.pow((t+.055)/1.055,2.4))+.7152*(e<=.03928?e/12.92:i.pow((e+.055)/1.055,2.4))+.0722*(r<=.03928?r/12.92:i.pow((r+.055)/1.055,2.4))},setAlpha:function(t){return this._a=P(t),this._roundA=l(100*this._a)/100,this},toHsv:function(){var t=d(this._r,this._g,this._b);return{h:360*t.h,s:t.s,v:t.v,a:this._a}},toHsvString:function(){var t=d(this._r,this._g,this._b),e=l(360*t.h),r=l(100*t.s),n=l(100*t.v);return 1==this._a?\"hsv(\"+e+\", \"+r+\"%, \"+n+\"%)\":\"hsva(\"+e+\", \"+r+\"%, \"+n+\"%, \"+this._roundA+\")\"},toHsl:function(){var t=p(this._r,this._g,this._b);return{h:360*t.h,s:t.s,l:t.l,a:this._a}},toHslString:function(){var t=p(this._r,this._g,this._b),e=l(360*t.h),r=l(100*t.s),n=l(100*t.l);return 1==this._a?\"hsl(\"+e+\", \"+r+\"%, \"+n+\"%)\":\"hsla(\"+e+\", \"+r+\"%, \"+n+\"%, \"+this._roundA+\")\"},toHex:function(t){return m(this._r,this._g,this._b,t)},toHexString:function(t){return\"#\"+this.toHex(t)},toHex8:function(t){return function(t,e,r,n,i){var a=[R(l(t).toString(16)),R(l(e).toString(16)),R(l(r).toString(16)),R(B(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,t)},toHex8String:function(t){return\"#\"+this.toHex8(t)},toRgb:function(){return{r:l(this._r),g:l(this._g),b:l(this._b),a:this._a}},toRgbString:function(){return 1==this._a?\"rgb(\"+l(this._r)+\", \"+l(this._g)+\", \"+l(this._b)+\")\":\"rgba(\"+l(this._r)+\", \"+l(this._g)+\", \"+l(this._b)+\", \"+this._roundA+\")\"},toPercentageRgb:function(){return{r:l(100*z(this._r,255))+\"%\",g:l(100*z(this._g,255))+\"%\",b:l(100*z(this._b,255))+\"%\",a:this._a}},toPercentageRgbString:function(){return 1==this._a?\"rgb(\"+l(100*z(this._r,255))+\"%, \"+l(100*z(this._g,255))+\"%, \"+l(100*z(this._b,255))+\"%)\":\"rgba(\"+l(100*z(this._r,255))+\"%, \"+l(100*z(this._g,255))+\"%, \"+l(100*z(this._b,255))+\"%, \"+this._roundA+\")\"},toName:function(){return 0===this._a?\"transparent\":!(this._a<1)&&(I[m(this._r,this._g,this._b,!0)]||!1)},toFilter:function(t){var e=\"#\"+g(this._r,this._g,this._b,this._a),r=e,n=this._gradientType?\"GradientType = 1, \":\"\";if(t){var i=f(t);r=\"#\"+g(i._r,i._g,i._b,i._a)}return\"progid:DXImageTransform.Microsoft.gradient(\"+n+\"startColorstr=\"+e+\",endColorstr=\"+r+\")\"},toString:function(t){var e=!!t;t=t||this._format;var r=!1,n=this._a<1&&this._a>=0;return e||!n||\"hex\"!==t&&\"hex6\"!==t&&\"hex3\"!==t&&\"hex4\"!==t&&\"hex8\"!==t&&\"name\"!==t?(\"rgb\"===t&&(r=this.toRgbString()),\"prgb\"===t&&(r=this.toPercentageRgbString()),\"hex\"!==t&&\"hex6\"!==t||(r=this.toHexString()),\"hex3\"===t&&(r=this.toHexString(!0)),\"hex4\"===t&&(r=this.toHex8String(!0)),\"hex8\"===t&&(r=this.toHex8String()),\"name\"===t&&(r=this.toName()),\"hsl\"===t&&(r=this.toHslString()),\"hsv\"===t&&(r=this.toHsvString()),r||this.toHexString()):\"name\"===t&&0===this._a?this.toName():this.toRgbString()},clone:function(){return f(this.toString())},_applyModification:function(t,e){var r=t.apply(null,[this].concat([].slice.call(e)));return this._r=r._r,this._g=r._g,this._b=r._b,this.setAlpha(r._a),this},lighten:function(){return this._applyModification(_,arguments)},brighten:function(){return this._applyModification(b,arguments)},darken:function(){return this._applyModification(w,arguments)},desaturate:function(){return this._applyModification(y,arguments)},saturate:function(){return this._applyModification(v,arguments)},greyscale:function(){return this._applyModification(x,arguments)},spin:function(){return this._applyModification(T,arguments)},_applyCombination:function(t,e){return t.apply(null,[this].concat([].slice.call(e)))},analogous:function(){return this._applyCombination(E,arguments)},complement:function(){return this._applyCombination(k,arguments)},monochromatic:function(){return this._applyCombination(C,arguments)},splitcomplement:function(){return this._applyCombination(S,arguments)},triad:function(){return this._applyCombination(A,arguments)},tetrad:function(){return this._applyCombination(M,arguments)}},f.fromRatio=function(t,e){if(\"object\"==typeof t){var r={};for(var n in t)t.hasOwnProperty(n)&&(r[n]=\"a\"===n?t[n]:F(t[n]));t=r}return f(t,e)},f.equals=function(t,e){return!(!t||!e)&&f(t).toRgbString()==f(e).toRgbString()},f.random=function(){return f.fromRatio({r:h(),g:h(),b:h()})},f.mix=function(t,e,r){r=0===r?0:r||50;var n=f(t).toRgb(),i=f(e).toRgb(),a=r/100;return f({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})},f.readability=function(t,e){var r=f(t),n=f(e);return(i.max(r.getLuminance(),n.getLuminance())+.05)/(i.min(r.getLuminance(),n.getLuminance())+.05)},f.isReadable=function(t,e,r){var n,i,a,o,s,l=f.readability(t,e);switch(i=!1,(a=r,\"AA\"!==(o=((a=a||{level:\"AA\",size:\"small\"}).level||\"AA\").toUpperCase())&&\"AAA\"!==o&&(o=\"AA\"),\"small\"!==(s=(a.size||\"small\").toLowerCase())&&\"large\"!==s&&(s=\"small\"),n={level:o,size:s}).level+n.size){case\"AAsmall\":case\"AAAlarge\":i=l>=4.5;break;case\"AAlarge\":i=l>=3;break;case\"AAAsmall\":i=l>=7}return i},f.mostReadable=function(t,e,r){var n,i,a,o,s=null,l=0;i=(r=r||{}).includeFallbackColors,a=r.level,o=r.size;for(var c=0;c<e.length;c++)(n=f.readability(t,e[c]))>l&&(l=n,s=f(e[c]));return f.isReadable(t,s,{level:a,size:o})||!i?s:(r.includeFallbackColors=!1,f.mostReadable(t,[\"#fff\",\"#000\"],r))};var L=f.names={aliceblue:\"f0f8ff\",antiquewhite:\"faebd7\",aqua:\"0ff\",aquamarine:\"7fffd4\",azure:\"f0ffff\",beige:\"f5f5dc\",bisque:\"ffe4c4\",black:\"000\",blanchedalmond:\"ffebcd\",blue:\"00f\",blueviolet:\"8a2be2\",brown:\"a52a2a\",burlywood:\"deb887\",burntsienna:\"ea7e5d\",cadetblue:\"5f9ea0\",chartreuse:\"7fff00\",chocolate:\"d2691e\",coral:\"ff7f50\",cornflowerblue:\"6495ed\",cornsilk:\"fff8dc\",crimson:\"dc143c\",cyan:\"0ff\",darkblue:\"00008b\",darkcyan:\"008b8b\",darkgoldenrod:\"b8860b\",darkgray:\"a9a9a9\",darkgreen:\"006400\",darkgrey:\"a9a9a9\",darkkhaki:\"bdb76b\",darkmagenta:\"8b008b\",darkolivegreen:\"556b2f\",darkorange:\"ff8c00\",darkorchid:\"9932cc\",darkred:\"8b0000\",darksalmon:\"e9967a\",darkseagreen:\"8fbc8f\",darkslateblue:\"483d8b\",darkslategray:\"2f4f4f\",darkslategrey:\"2f4f4f\",darkturquoise:\"00ced1\",darkviolet:\"9400d3\",deeppink:\"ff1493\",deepskyblue:\"00bfff\",dimgray:\"696969\",dimgrey:\"696969\",dodgerblue:\"1e90ff\",firebrick:\"b22222\",floralwhite:\"fffaf0\",forestgreen:\"228b22\",fuchsia:\"f0f\",gainsboro:\"dcdcdc\",ghostwhite:\"f8f8ff\",gold:\"ffd700\",goldenrod:\"daa520\",gray:\"808080\",green:\"008000\",greenyellow:\"adff2f\",grey:\"808080\",honeydew:\"f0fff0\",hotpink:\"ff69b4\",indianred:\"cd5c5c\",indigo:\"4b0082\",ivory:\"fffff0\",khaki:\"f0e68c\",lavender:\"e6e6fa\",lavenderblush:\"fff0f5\",lawngreen:\"7cfc00\",lemonchiffon:\"fffacd\",lightblue:\"add8e6\",lightcoral:\"f08080\",lightcyan:\"e0ffff\",lightgoldenrodyellow:\"fafad2\",lightgray:\"d3d3d3\",lightgreen:\"90ee90\",lightgrey:\"d3d3d3\",lightpink:\"ffb6c1\",lightsalmon:\"ffa07a\",lightseagreen:\"20b2aa\",lightskyblue:\"87cefa\",lightslategray:\"789\",lightslategrey:\"789\",lightsteelblue:\"b0c4de\",lightyellow:\"ffffe0\",lime:\"0f0\",limegreen:\"32cd32\",linen:\"faf0e6\",magenta:\"f0f\",maroon:\"800000\",mediumaquamarine:\"66cdaa\",mediumblue:\"0000cd\",mediumorchid:\"ba55d3\",mediumpurple:\"9370db\",mediumseagreen:\"3cb371\",mediumslateblue:\"7b68ee\",mediumspringgreen:\"00fa9a\",mediumturquoise:\"48d1cc\",mediumvioletred:\"c71585\",midnightblue:\"191970\",mintcream:\"f5fffa\",mistyrose:\"ffe4e1\",moccasin:\"ffe4b5\",navajowhite:\"ffdead\",navy:\"000080\",oldlace:\"fdf5e6\",olive:\"808000\",olivedrab:\"6b8e23\",orange:\"ffa500\",orangered:\"ff4500\",orchid:\"da70d6\",palegoldenrod:\"eee8aa\",palegreen:\"98fb98\",paleturquoise:\"afeeee\",palevioletred:\"db7093\",papayawhip:\"ffefd5\",peachpuff:\"ffdab9\",peru:\"cd853f\",pink:\"ffc0cb\",plum:\"dda0dd\",powderblue:\"b0e0e6\",purple:\"800080\",rebeccapurple:\"663399\",red:\"f00\",rosybrown:\"bc8f8f\",royalblue:\"4169e1\",saddlebrown:\"8b4513\",salmon:\"fa8072\",sandybrown:\"f4a460\",seagreen:\"2e8b57\",seashell:\"fff5ee\",sienna:\"a0522d\",silver:\"c0c0c0\",skyblue:\"87ceeb\",slateblue:\"6a5acd\",slategray:\"708090\",slategrey:\"708090\",snow:\"fffafa\",springgreen:\"00ff7f\",steelblue:\"4682b4\",tan:\"d2b48c\",teal:\"008080\",thistle:\"d8bfd8\",tomato:\"ff6347\",turquoise:\"40e0d0\",violet:\"ee82ee\",wheat:\"f5deb3\",white:\"fff\",whitesmoke:\"f5f5f5\",yellow:\"ff0\",yellowgreen:\"9acd32\"},I=f.hexNames=function(t){var e={};for(var r in t)t.hasOwnProperty(r)&&(e[t[r]]=r);return e}(L);function P(t){return t=parseFloat(t),(isNaN(t)||t<0||t>1)&&(t=1),t}function z(t,e){(function(t){return\"string\"==typeof t&&-1!=t.indexOf(\".\")&&1===parseFloat(t)})(t)&&(t=\"100%\");var r=function(t){return\"string\"==typeof t&&-1!=t.indexOf(\"%\")}(t);return t=c(e,u(0,parseFloat(t))),r&&(t=parseInt(t*e,10)/100),i.abs(t-e)<1e-6?1:t%e/parseFloat(e)}function O(t){return c(1,u(0,t))}function D(t){return parseInt(t,16)}function R(t){return 1==t.length?\"0\"+t:\"\"+t}function F(t){return t<=1&&(t=100*t+\"%\"),t}function B(t){return i.round(255*parseFloat(t)).toString(16)}function N(t){return D(t)/255}var j,U,V,q=(U=\"[\\\\s|\\\\(]+(\"+(j=\"(?:[-\\\\+]?\\\\d*\\\\.\\\\d+%?)|(?:[-\\\\+]?\\\\d+%?)\")+\")[,|\\\\s]+(\"+j+\")[,|\\\\s]+(\"+j+\")\\\\s*\\\\)?\",V=\"[\\\\s|\\\\(]+(\"+j+\")[,|\\\\s]+(\"+j+\")[,|\\\\s]+(\"+j+\")[,|\\\\s]+(\"+j+\")\\\\s*\\\\)?\",{CSS_UNIT:new RegExp(j),rgb:new RegExp(\"rgb\"+U),rgba:new RegExp(\"rgba\"+V),hsl:new RegExp(\"hsl\"+U),hsla:new RegExp(\"hsla\"+V),hsv:new RegExp(\"hsv\"+U),hsva:new RegExp(\"hsva\"+V),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 H(t){return!!q.CSS_UNIT.exec(t)}t.exports?t.exports=f:void 0===(n=function(){return f}.call(e,r,e,t))||(t.exports=n)}(Math)},51498:function(t){\"use strict\";t.exports=r,t.exports.float32=t.exports.float=r,t.exports.fract32=t.exports.fract=function(t,e){if(t.length){if(t instanceof Float32Array)return new Float32Array(t.length);e instanceof Float32Array||(e=r(t));for(var n=0,i=e.length;n<i;n++)e[n]=t[n]-e[n];return e}return r(t-r(t))};var e=new Float32Array(1);function r(t){return t.length?t instanceof Float32Array?t:new Float32Array(t):(e[0]=t,e[0])}},44626:function(t,e,r){\"use strict\";var n=r(4957);t.exports=o;var i=96;function a(t,e){var r=n(getComputedStyle(t).getPropertyValue(e));return r[0]*o(r[1],t)}function o(t,e){switch(e=e||document.body,t=(t||\"px\").trim().toLowerCase(),e!==window&&e!==document||(e=document.body),t){case\"%\":return e.clientHeight/100;case\"ch\":case\"ex\":return function(t,e){var r=document.createElement(\"div\");r.style[\"font-size\"]=\"128\"+t,e.appendChild(r);var n=a(r,\"font-size\")/128;return e.removeChild(r),n}(t,e);case\"em\":return a(e,\"font-size\");case\"rem\":return a(document.body,\"font-size\");case\"vw\":return window.innerWidth/100;case\"vh\":return window.innerHeight/100;case\"vmin\":return Math.min(window.innerWidth,window.innerHeight)/100;case\"vmax\":return Math.max(window.innerWidth,window.innerHeight)/100;case\"in\":return i;case\"cm\":return i/2.54;case\"mm\":return i/25.4;case\"pt\":return i/72;case\"pc\":return i/6}return 1}},48640:function(t,e,r){\"use strict\";function n(t){return t}function i(t,e){return\"string\"==typeof e&&(e=t.objects[e]),\"GeometryCollection\"===e.type?{type:\"FeatureCollection\",features:e.geometries.map((function(e){return a(t,e)}))}:a(t,e)}function a(t,e){var r=e.id,i=e.bbox,a=null==e.properties?{}:e.properties,o=function(t,e){var r=function(t){if(null==t)return n;var e,r,i=t.scale[0],a=t.scale[1],o=t.translate[0],s=t.translate[1];return function(t,n){n||(e=r=0);var l=2,c=t.length,u=new Array(c);for(u[0]=(e+=t[0])*i+o,u[1]=(r+=t[1])*a+s;l<c;)u[l]=t[l],++l;return u}}(t.transform),i=t.arcs;function a(t,e){e.length&&e.pop();for(var n=i[t<0?~t:t],a=0,o=n.length;a<o;++a)e.push(r(n[a],a));t<0&&function(t,e){for(var r,n=t.length,i=n-e;i<--n;)r=t[i],t[i++]=t[n],t[n]=r}(e,o)}function o(t){return r(t)}function s(t){for(var e=[],r=0,n=t.length;r<n;++r)a(t[r],e);return e.length<2&&e.push(e[0]),e}function l(t){for(var e=s(t);e.length<4;)e.push(e[0]);return e}function c(t){return t.map(l)}return function t(e){var r,n=e.type;switch(n){case\"GeometryCollection\":return{type:n,geometries:e.geometries.map(t)};case\"Point\":r=o(e.coordinates);break;case\"MultiPoint\":r=e.coordinates.map(o);break;case\"LineString\":r=s(e.arcs);break;case\"MultiLineString\":r=e.arcs.map(s);break;case\"Polygon\":r=c(e.arcs);break;case\"MultiPolygon\":r=e.arcs.map(c);break;default:return null}return{type:n,coordinates:r}}(e)}(t,e);return null==r&&null==i?{type:\"Feature\",properties:a,geometry:o}:null==i?{type:\"Feature\",id:r,properties:a,geometry:o}:{type:\"Feature\",id:r,bbox:i,properties:a,geometry:o}}r.d(e,{N4:function(){return i}})},64276:function(t,e,r){\"use strict\";var n=r(31350);t.exports=function(t){if(\"function\"!=typeof t)return!1;if(!hasOwnProperty.call(t,\"length\"))return!1;try{if(\"number\"!=typeof t.length)return!1;if(\"function\"!=typeof t.call)return!1;if(\"function\"!=typeof t.apply)return!1}catch(t){return!1}return!n(t)}},99497:function(t,e,r){\"use strict\";var n=r(80299),i=r(76481),a=r(58698),o=r(60461),s=function(t,e){return t.replace(\"%v\",o(e))};t.exports=function(t,e,r){if(!i(r))throw new TypeError(s(e,t));if(!n(t)){if(\"default\"in r)return r.default;if(r.isOptional)return null}var o=a(r.errorMessage);throw n(o)||(o=e),new TypeError(s(o,t))}},78696:function(t){\"use strict\";t.exports=function(t){try{return t.toString()}catch(e){try{return String(t)}catch(t){return null}}}},60461:function(t,e,r){\"use strict\";var n=r(78696),i=/[\\n\\r\\u2028\\u2029]/g;t.exports=function(t){var e=n(t);return null===e?\"<Non-coercible to string value>\":(e.length>100&&(e=e.slice(0,99)+\"…\"),e=e.replace(i,(function(t){switch(t){case\"\\n\":return\"\\\\n\";case\"\\r\":return\"\\\\r\";case\"\\u2028\":return\"\\\\u2028\";case\"\\u2029\":return\"\\\\u2029\";default:throw new Error(\"Unexpected character\")}})))}},76481:function(t,e,r){\"use strict\";var n=r(80299),i={object:!0,function:!0,undefined:!0};t.exports=function(t){return!!n(t)&&hasOwnProperty.call(i,typeof t)}},6887:function(t,e,r){\"use strict\";var n=r(99497),i=r(63461);t.exports=function(t){return i(t)?t:n(t,\"%v is not a plain function\",arguments[1])}},63461:function(t,e,r){\"use strict\";var n=r(64276),i=/^\\s*class[\\s{/}]/,a=Function.prototype.toString;t.exports=function(t){return!!n(t)&&!i.test(a.call(t))}},31350:function(t,e,r){\"use strict\";var n=r(76481);t.exports=function(t){if(!n(t))return!1;try{return!!t.constructor&&t.constructor.prototype===t}catch(t){return!1}}},58698:function(t,e,r){\"use strict\";var n=r(80299),i=r(76481),a=Object.prototype.toString;t.exports=function(t){if(!n(t))return null;if(i(t)){var e=t.toString;if(\"function\"!=typeof e)return null;if(e===a)return null}try{return\"\"+t}catch(t){return null}}},9557:function(t,e,r){\"use strict\";var n=r(99497),i=r(80299);t.exports=function(t){return i(t)?t:n(t,\"Cannot use %v\",arguments[1])}},80299:function(t){\"use strict\";t.exports=function(t){return null!=t}},66127:function(t,e,r){\"use strict\";var n=r(54689),i=r(49523),a=r(45708).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,c=r.g.__TYPEDARRAY_POOL;c.UINT8C||(c.UINT8C=i([32,0])),c.BIGUINT64||(c.BIGUINT64=i([32,0])),c.BIGINT64||(c.BIGINT64=i([32,0])),c.BUFFER||(c.BUFFER=i([32,0]));var u=c.DATA,h=c.BUFFER;function f(t){if(t){var e=t.length||t.byteLength,r=n.log2(e);u[r].push(t)}}function p(t){t=n.nextPow2(t);var e=n.log2(t),r=u[e];return r.length>0?r.pop():new ArrayBuffer(t)}function d(t){return new Uint8Array(p(t),0,t)}function m(t){return new Uint16Array(p(2*t),0,t)}function g(t){return new Uint32Array(p(4*t),0,t)}function y(t){return new Int8Array(p(t),0,t)}function v(t){return new Int16Array(p(2*t),0,t)}function x(t){return new Int32Array(p(4*t),0,t)}function _(t){return new Float32Array(p(4*t),0,t)}function b(t){return new Float64Array(p(8*t),0,t)}function w(t){return o?new Uint8ClampedArray(p(t),0,t):d(t)}function T(t){return s?new BigUint64Array(p(8*t),0,t):null}function k(t){return l?new BigInt64Array(p(8*t),0,t):null}function A(t){return new DataView(p(t),0,t)}function M(t){t=n.nextPow2(t);var e=n.log2(t),r=h[e];return r.length>0?r.pop():new a(t)}e.free=function(t){if(a.isBuffer(t))h[n.log2(t.length)].push(t);else{if(\"[object ArrayBuffer]\"!==Object.prototype.toString.call(t)&&(t=t.buffer),!t)return;var e=t.length||t.byteLength,r=0|n.log2(e);u[r].push(t)}},e.freeUint8=e.freeUint16=e.freeUint32=e.freeBigUint64=e.freeInt8=e.freeInt16=e.freeInt32=e.freeBigInt64=e.freeFloat32=e.freeFloat=e.freeFloat64=e.freeDouble=e.freeUint8Clamped=e.freeDataView=function(t){f(t.buffer)},e.freeArrayBuffer=f,e.freeBuffer=function(t){h[n.log2(t.length)].push(t)},e.malloc=function(t,e){if(void 0===e||\"arraybuffer\"===e)return p(t);switch(e){case\"uint8\":return d(t);case\"uint16\":return m(t);case\"uint32\":return g(t);case\"int8\":return y(t);case\"int16\":return v(t);case\"int32\":return x(t);case\"float\":case\"float32\":return _(t);case\"double\":case\"float64\":return b(t);case\"uint8_clamped\":return w(t);case\"bigint64\":return k(t);case\"biguint64\":return T(t);case\"buffer\":return M(t);case\"data\":case\"dataview\":return A(t);default:return null}return null},e.mallocArrayBuffer=p,e.mallocUint8=d,e.mallocUint16=m,e.mallocUint32=g,e.mallocInt8=y,e.mallocInt16=v,e.mallocInt32=x,e.mallocFloat32=e.mallocFloat=_,e.mallocFloat64=e.mallocDouble=b,e.mallocUint8Clamped=w,e.mallocBigUint64=T,e.mallocBigInt64=k,e.mallocDataView=A,e.mallocBuffer=M,e.clearCache=function(){for(var t=0;t<32;++t)c.UINT8[t].length=0,c.UINT16[t].length=0,c.UINT32[t].length=0,c.INT8[t].length=0,c.INT16[t].length=0,c.INT32[t].length=0,c.FLOAT[t].length=0,c.DOUBLE[t].length=0,c.BIGUINT64[t].length=0,c.BIGINT64[t].length=0,c.UINT8C[t].length=0,u[t].length=0,h[t].length=0}},80886:function(t){var e=/[\\'\\\"]/;t.exports=function(t){return t?(e.test(t.charAt(0))&&(t=t.substr(1)),e.test(t.charAt(t.length-1))&&(t=t.substr(0,t.length-1)),t):\"\"}},79788:function(t){\"use strict\";t.exports=function(t,e,r){Array.isArray(r)||(r=[].slice.call(arguments,2));for(var n=0,i=r.length;n<i;n++){var a=r[n];for(var o in a)if((void 0===e[o]||Array.isArray(e[o])||t[o]!==e[o])&&o in e){var s;if(!0===a[o])s=e[o];else{if(!1===a[o])continue;if(\"function\"==typeof a[o]&&void 0===(s=a[o](e[o],t,e)))continue}t[o]=s}}return t}},71103:function(t,e,r){function n(t){try{if(!r.g.localStorage)return!1}catch(t){return!1}var e=r.g.localStorage[t];return null!=e&&\"true\"===String(e).toLowerCase()}t.exports=function(t,e){if(n(\"noDeprecation\"))return t;var r=!1;return function(){if(!r){if(n(\"throwDeprecation\"))throw new Error(e);n(\"traceDeprecation\")?console.trace(e):console.warn(e),r=!0}return t.apply(this,arguments)}}},44123:function(t){t.exports=function(t){return t&&\"object\"==typeof t&&\"function\"==typeof t.copy&&\"function\"==typeof t.fill&&\"function\"==typeof t.readUInt8}},15724:function(t,e,r){\"use strict\";var n=r(40280),i=r(80340),a=r(96835),o=r(15628);function s(t){return t.call.bind(t)}var l=\"undefined\"!=typeof BigInt,c=\"undefined\"!=typeof Symbol,u=s(Object.prototype.toString),h=s(Number.prototype.valueOf),f=s(String.prototype.valueOf),p=s(Boolean.prototype.valueOf);if(l)var d=s(BigInt.prototype.valueOf);if(c)var m=s(Symbol.prototype.valueOf);function g(t,e){if(\"object\"!=typeof t)return!1;try{return e(t),!0}catch(t){return!1}}function y(t){return\"[object Map]\"===u(t)}function v(t){return\"[object Set]\"===u(t)}function x(t){return\"[object WeakMap]\"===u(t)}function _(t){return\"[object WeakSet]\"===u(t)}function b(t){return\"[object ArrayBuffer]\"===u(t)}function w(t){return\"undefined\"!=typeof ArrayBuffer&&(b.working?b(t):t instanceof ArrayBuffer)}function T(t){return\"[object DataView]\"===u(t)}function k(t){return\"undefined\"!=typeof DataView&&(T.working?T(t):t instanceof DataView)}e.isArgumentsObject=n,e.isGeneratorFunction=i,e.isTypedArray=o,e.isPromise=function(t){return\"undefined\"!=typeof Promise&&t instanceof Promise||null!==t&&\"object\"==typeof t&&\"function\"==typeof t.then&&\"function\"==typeof t.catch},e.isArrayBufferView=function(t){return\"undefined\"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(t):o(t)||k(t)},e.isUint8Array=function(t){return\"Uint8Array\"===a(t)},e.isUint8ClampedArray=function(t){return\"Uint8ClampedArray\"===a(t)},e.isUint16Array=function(t){return\"Uint16Array\"===a(t)},e.isUint32Array=function(t){return\"Uint32Array\"===a(t)},e.isInt8Array=function(t){return\"Int8Array\"===a(t)},e.isInt16Array=function(t){return\"Int16Array\"===a(t)},e.isInt32Array=function(t){return\"Int32Array\"===a(t)},e.isFloat32Array=function(t){return\"Float32Array\"===a(t)},e.isFloat64Array=function(t){return\"Float64Array\"===a(t)},e.isBigInt64Array=function(t){return\"BigInt64Array\"===a(t)},e.isBigUint64Array=function(t){return\"BigUint64Array\"===a(t)},y.working=\"undefined\"!=typeof Map&&y(new Map),e.isMap=function(t){return\"undefined\"!=typeof Map&&(y.working?y(t):t instanceof Map)},v.working=\"undefined\"!=typeof Set&&v(new Set),e.isSet=function(t){return\"undefined\"!=typeof Set&&(v.working?v(t):t instanceof Set)},x.working=\"undefined\"!=typeof WeakMap&&x(new WeakMap),e.isWeakMap=function(t){return\"undefined\"!=typeof WeakMap&&(x.working?x(t):t instanceof WeakMap)},_.working=\"undefined\"!=typeof WeakSet&&_(new WeakSet),e.isWeakSet=function(t){return _(t)},b.working=\"undefined\"!=typeof ArrayBuffer&&b(new ArrayBuffer),e.isArrayBuffer=w,T.working=\"undefined\"!=typeof ArrayBuffer&&\"undefined\"!=typeof DataView&&T(new DataView(new ArrayBuffer(1),0,1)),e.isDataView=k;var A=\"undefined\"!=typeof SharedArrayBuffer?SharedArrayBuffer:void 0;function M(t){return\"[object SharedArrayBuffer]\"===u(t)}function S(t){return void 0!==A&&(void 0===M.working&&(M.working=M(new A)),M.working?M(t):t instanceof A)}function E(t){return g(t,h)}function C(t){return g(t,f)}function L(t){return g(t,p)}function I(t){return l&&g(t,d)}function P(t){return c&&g(t,m)}e.isSharedArrayBuffer=S,e.isAsyncFunction=function(t){return\"[object AsyncFunction]\"===u(t)},e.isMapIterator=function(t){return\"[object Map Iterator]\"===u(t)},e.isSetIterator=function(t){return\"[object Set Iterator]\"===u(t)},e.isGeneratorObject=function(t){return\"[object Generator]\"===u(t)},e.isWebAssemblyCompiledModule=function(t){return\"[object WebAssembly.Module]\"===u(t)},e.isNumberObject=E,e.isStringObject=C,e.isBooleanObject=L,e.isBigIntObject=I,e.isSymbolObject=P,e.isBoxedPrimitive=function(t){return E(t)||C(t)||L(t)||I(t)||P(t)},e.isAnyArrayBuffer=function(t){return\"undefined\"!=typeof Uint8Array&&(w(t)||S(t))},[\"isProxy\",\"isExternal\",\"isModuleNamespaceObject\"].forEach((function(t){Object.defineProperty(e,t,{enumerable:!1,value:function(){throw new Error(t+\" is not supported in userland\")}})}))},56557:function(t,e,r){var n=r(33282),i=Object.getOwnPropertyDescriptors||function(t){for(var e=Object.keys(t),r={},n=0;n<e.length;n++)r[e[n]]=Object.getOwnPropertyDescriptor(t,e[n]);return r},a=/%[sdj%]/g;e.format=function(t){if(!x(t)){for(var e=[],r=0;r<arguments.length;r++)e.push(c(arguments[r]));return e.join(\" \")}r=1;for(var n=arguments,i=n.length,o=String(t).replace(a,(function(t){if(\"%%\"===t)return\"%\";if(r>=i)return t;switch(t){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 t}})),s=n[r];r<i;s=n[++r])y(s)||!w(s)?o+=\" \"+s:o+=\" \"+c(s);return o},e.deprecate=function(t,r){if(void 0!==n&&!0===n.noDeprecation)return t;if(void 0===n)return function(){return e.deprecate(t,r).apply(this,arguments)};var i=!1;return function(){if(!i){if(n.throwDeprecation)throw new Error(r);n.traceDeprecation?console.trace(r):console.error(r),i=!0}return t.apply(this,arguments)}};var o={},s=/^$/;if(n.env.NODE_DEBUG){var l=n.env.NODE_DEBUG;l=l.replace(/[|\\\\{}()[\\]^$+?.]/g,\"\\\\$&\").replace(/\\*/g,\".*\").replace(/,/g,\"$|^\").toUpperCase(),s=new RegExp(\"^\"+l+\"$\",\"i\")}function c(t,r){var n={seen:[],stylize:h};return arguments.length>=3&&(n.depth=arguments[2]),arguments.length>=4&&(n.colors=arguments[3]),g(r)?n.showHidden=r:r&&e._extend(n,r),_(n.showHidden)&&(n.showHidden=!1),_(n.depth)&&(n.depth=2),_(n.colors)&&(n.colors=!1),_(n.customInspect)&&(n.customInspect=!0),n.colors&&(n.stylize=u),f(n,t,n.depth)}function u(t,e){var r=c.styles[e];return r?\"\u001b[\"+c.colors[r][0]+\"m\"+t+\"\u001b[\"+c.colors[r][1]+\"m\":t}function h(t,e){return t}function f(t,r,n){if(t.customInspect&&r&&A(r.inspect)&&r.inspect!==e.inspect&&(!r.constructor||r.constructor.prototype!==r)){var i=r.inspect(n,t);return x(i)||(i=f(t,i,n)),i}var a=function(t,e){if(_(e))return t.stylize(\"undefined\",\"undefined\");if(x(e)){var r=\"'\"+JSON.stringify(e).replace(/^\"|\"$/g,\"\").replace(/'/g,\"\\\\'\").replace(/\\\\\"/g,'\"')+\"'\";return t.stylize(r,\"string\")}return v(e)?t.stylize(\"\"+e,\"number\"):g(e)?t.stylize(\"\"+e,\"boolean\"):y(e)?t.stylize(\"null\",\"null\"):void 0}(t,r);if(a)return a;var o=Object.keys(r),s=function(t){var e={};return t.forEach((function(t,r){e[t]=!0})),e}(o);if(t.showHidden&&(o=Object.getOwnPropertyNames(r)),k(r)&&(o.indexOf(\"message\")>=0||o.indexOf(\"description\")>=0))return p(r);if(0===o.length){if(A(r)){var l=r.name?\": \"+r.name:\"\";return t.stylize(\"[Function\"+l+\"]\",\"special\")}if(b(r))return t.stylize(RegExp.prototype.toString.call(r),\"regexp\");if(T(r))return t.stylize(Date.prototype.toString.call(r),\"date\");if(k(r))return p(r)}var c,u=\"\",h=!1,w=[\"{\",\"}\"];return m(r)&&(h=!0,w=[\"[\",\"]\"]),A(r)&&(u=\" [Function\"+(r.name?\": \"+r.name:\"\")+\"]\"),b(r)&&(u=\" \"+RegExp.prototype.toString.call(r)),T(r)&&(u=\" \"+Date.prototype.toUTCString.call(r)),k(r)&&(u=\" \"+p(r)),0!==o.length||h&&0!=r.length?n<0?b(r)?t.stylize(RegExp.prototype.toString.call(r),\"regexp\"):t.stylize(\"[Object]\",\"special\"):(t.seen.push(r),c=h?function(t,e,r,n,i){for(var a=[],o=0,s=e.length;o<s;++o)C(e,String(o))?a.push(d(t,e,r,n,String(o),!0)):a.push(\"\");return i.forEach((function(i){i.match(/^\\d+$/)||a.push(d(t,e,r,n,i,!0))})),a}(t,r,n,s,o):o.map((function(e){return d(t,r,n,s,e,h)})),t.seen.pop(),function(t,e,r){return t.reduce((function(t,e){return e.indexOf(\"\\n\"),t+e.replace(/\\u001b\\[\\d\\d?m/g,\"\").length+1}),0)>60?r[0]+(\"\"===e?\"\":e+\"\\n \")+\" \"+t.join(\",\\n \")+\" \"+r[1]:r[0]+e+\" \"+t.join(\", \")+\" \"+r[1]}(c,u,w)):w[0]+u+w[1]}function p(t){return\"[\"+Error.prototype.toString.call(t)+\"]\"}function d(t,e,r,n,i,a){var o,s,l;if((l=Object.getOwnPropertyDescriptor(e,i)||{value:e[i]}).get?s=l.set?t.stylize(\"[Getter/Setter]\",\"special\"):t.stylize(\"[Getter]\",\"special\"):l.set&&(s=t.stylize(\"[Setter]\",\"special\")),C(n,i)||(o=\"[\"+i+\"]\"),s||(t.seen.indexOf(l.value)<0?(s=y(r)?f(t,l.value,null):f(t,l.value,r-1)).indexOf(\"\\n\")>-1&&(s=a?s.split(\"\\n\").map((function(t){return\" \"+t})).join(\"\\n\").slice(2):\"\\n\"+s.split(\"\\n\").map((function(t){return\" \"+t})).join(\"\\n\")):s=t.stylize(\"[Circular]\",\"special\")),_(o)){if(a&&i.match(/^\\d+$/))return s;(o=JSON.stringify(\"\"+i)).match(/^\"([a-zA-Z_][a-zA-Z_0-9]*)\"$/)?(o=o.slice(1,-1),o=t.stylize(o,\"name\")):(o=o.replace(/'/g,\"\\\\'\").replace(/\\\\\"/g,'\"').replace(/(^\"|\"$)/g,\"'\"),o=t.stylize(o,\"string\"))}return o+\": \"+s}function m(t){return Array.isArray(t)}function g(t){return\"boolean\"==typeof t}function y(t){return null===t}function v(t){return\"number\"==typeof t}function x(t){return\"string\"==typeof t}function _(t){return void 0===t}function b(t){return w(t)&&\"[object RegExp]\"===M(t)}function w(t){return\"object\"==typeof t&&null!==t}function T(t){return w(t)&&\"[object Date]\"===M(t)}function k(t){return w(t)&&(\"[object Error]\"===M(t)||t instanceof Error)}function A(t){return\"function\"==typeof t}function M(t){return Object.prototype.toString.call(t)}function S(t){return t<10?\"0\"+t.toString(10):t.toString(10)}e.debuglog=function(t){if(t=t.toUpperCase(),!o[t])if(s.test(t)){var r=n.pid;o[t]=function(){var n=e.format.apply(e,arguments);console.error(\"%s %d: %s\",t,r,n)}}else o[t]=function(){};return o[t]},e.inspect=c,c.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},c.styles={special:\"cyan\",number:\"yellow\",boolean:\"yellow\",undefined:\"grey\",null:\"bold\",string:\"green\",date:\"magenta\",regexp:\"red\"},e.types=r(15724),e.isArray=m,e.isBoolean=g,e.isNull=y,e.isNullOrUndefined=function(t){return null==t},e.isNumber=v,e.isString=x,e.isSymbol=function(t){return\"symbol\"==typeof t},e.isUndefined=_,e.isRegExp=b,e.types.isRegExp=b,e.isObject=w,e.isDate=T,e.types.isDate=T,e.isError=k,e.types.isNativeError=k,e.isFunction=A,e.isPrimitive=function(t){return null===t||\"boolean\"==typeof t||\"number\"==typeof t||\"string\"==typeof t||\"symbol\"==typeof t||void 0===t},e.isBuffer=r(44123);var E=[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"];function C(t,e){return Object.prototype.hasOwnProperty.call(t,e)}e.log=function(){var t,r;console.log(\"%s - %s\",(r=[S((t=new Date).getHours()),S(t.getMinutes()),S(t.getSeconds())].join(\":\"),[t.getDate(),E[t.getMonth()],r].join(\" \")),e.format.apply(e,arguments))},e.inherits=r(28062),e._extend=function(t,e){if(!e||!w(e))return t;for(var r=Object.keys(e),n=r.length;n--;)t[r[n]]=e[r[n]];return t};var L=\"undefined\"!=typeof Symbol?Symbol(\"util.promisify.custom\"):void 0;function I(t,e){if(!t){var r=new Error(\"Promise was rejected with a falsy value\");r.reason=t,t=r}return e(t)}e.promisify=function(t){if(\"function\"!=typeof t)throw new TypeError('The \"original\" argument must be of type Function');if(L&&t[L]){var e;if(\"function\"!=typeof(e=t[L]))throw new TypeError('The \"util.promisify.custom\" argument must be of type Function');return Object.defineProperty(e,L,{value:e,enumerable:!1,writable:!1,configurable:!0}),e}function e(){for(var e,r,n=new Promise((function(t,n){e=t,r=n})),i=[],a=0;a<arguments.length;a++)i.push(arguments[a]);i.push((function(t,n){t?r(t):e(n)}));try{t.apply(this,i)}catch(t){r(t)}return n}return Object.setPrototypeOf(e,Object.getPrototypeOf(t)),L&&Object.defineProperty(e,L,{value:e,enumerable:!1,writable:!1,configurable:!0}),Object.defineProperties(e,i(t))},e.promisify.custom=L,e.callbackify=function(t){if(\"function\"!=typeof t)throw new TypeError('The \"original\" argument must be of type Function');function e(){for(var e=[],r=0;r<arguments.length;r++)e.push(arguments[r]);var i=e.pop();if(\"function\"!=typeof i)throw new TypeError(\"The last argument must be of type Function\");var a=this,o=function(){return i.apply(a,arguments)};t.apply(this,e).then((function(t){n.nextTick(o.bind(null,null,t))}),(function(t){n.nextTick(I.bind(null,t,o))}))}return Object.setPrototypeOf(e,Object.getPrototypeOf(t)),Object.defineProperties(e,i(t)),e}},22248:function(t,e,r){var n=r(72880);t.exports=function(t){return n(\"webgl\",t)}},96835:function(t,e,r){\"use strict\";var n=r(61262),i=r(70085),a=r(87227),o=r(63063),s=r(52991),l=o(\"Object.prototype.toString\"),c=r(36912)(),u=\"undefined\"==typeof globalThis?r.g:globalThis,h=i(),f=o(\"String.prototype.slice\"),p=Object.getPrototypeOf,d=o(\"Array.prototype.indexOf\",!0)||function(t,e){for(var r=0;r<t.length;r+=1)if(t[r]===e)return r;return-1},m={__proto__:null};n(h,c&&s&&p?function(t){var e=new u[t];if(Symbol.toStringTag in e){var r=p(e),n=s(r,Symbol.toStringTag);if(!n){var i=p(r);n=s(i,Symbol.toStringTag)}m[\"$\"+t]=a(n.get)}}:function(t){var e=new u[t],r=e.slice||e.set;r&&(m[\"$\"+t]=a(r))}),t.exports=function(t){if(!t||\"object\"!=typeof t)return!1;if(!c){var e=f(l(t),8,-1);return d(h,e)>-1?e:\"Object\"===e&&function(t){var e=!1;return n(m,(function(r,n){if(!e)try{r(t),e=f(n,1)}catch(t){}})),e}(t)}return s?function(t){var e=!1;return n(m,(function(r,n){if(!e)try{\"$\"+r(t)===n&&(e=f(n,1))}catch(t){}})),e}(t):null}},1401:function(t,e,r){var n=r(24453),i=r(27976),a=n.instance();function o(t){this.local=this.regionalOptions[t||\"\"]||this.regionalOptions[\"\"]}o.prototype=new n.baseCalendar,i(o.prototype,{name:\"Chinese\",jdEpoch:1721425.5,hasYearZero:!1,minMonth:0,firstMonth:0,minDay:1,regionalOptions:{\"\":{name:\"Chinese\",epochs:[\"BEC\",\"EC\"],monthNumbers:function(t,e){if(\"string\"==typeof t){var r=t.match(l);return r?r[0]:\"\"}var n=this._validateYear(t),i=t.month(),a=\"\"+this.toChineseMonth(n,i);return e&&a.length<2&&(a=\"0\"+a),this.isIntercalaryMonth(n,i)&&(a+=\"i\"),a},monthNames:function(t){if(\"string\"==typeof t){var e=t.match(c);return e?e[0]:\"\"}var r=this._validateYear(t),n=t.month(),i=[\"一月\",\"二月\",\"三月\",\"四月\",\"五月\",\"六月\",\"七月\",\"八月\",\"九月\",\"十月\",\"十一月\",\"十二月\"][this.toChineseMonth(r,n)-1];return this.isIntercalaryMonth(r,n)&&(i=\"闰\"+i),i},monthNamesShort:function(t){if(\"string\"==typeof t){var e=t.match(u);return e?e[0]:\"\"}var r=this._validateYear(t),n=t.month(),i=[\"一\",\"二\",\"三\",\"四\",\"五\",\"六\",\"七\",\"八\",\"九\",\"十\",\"十一\",\"十二\"][this.toChineseMonth(r,n)-1];return this.isIntercalaryMonth(r,n)&&(i=\"闰\"+i),i},parseMonth:function(t,e){t=this._validateYear(t);var r,n=parseInt(e);if(isNaN(n))\"闰\"===e[0]&&(r=!0,e=e.substring(1)),\"月\"===e[e.length-1]&&(e=e.substring(0,e.length-1)),n=1+[\"一\",\"二\",\"三\",\"四\",\"五\",\"六\",\"七\",\"八\",\"九\",\"十\",\"十一\",\"十二\"].indexOf(e);else{var i=e[e.length-1];r=\"i\"===i||\"I\"===i}return this.toMonthIndex(t,n,r)},dayNames:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],dayNamesShort:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],dayNamesMin:[\"Su\",\"Mo\",\"Tu\",\"We\",\"Th\",\"Fr\",\"Sa\"],digits:null,dateFormat:\"yyyy/mm/dd\",firstDay:1,isRTL:!1}},_validateYear:function(t,e){if(t.year&&(t=t.year()),\"number\"!=typeof t||t<1888||t>2111)throw e.replace(/\\{0\\}/,this.local.name);return t},toMonthIndex:function(t,e,r){var i=this.intercalaryMonth(t);if(r&&e!==i||e<1||e>12)throw n.local.invalidMonth.replace(/\\{0\\}/,this.local.name);return i?!r&&e<=i?e-1:e:e-1},toChineseMonth:function(t,e){t.year&&(e=(t=t.year()).month());var r=this.intercalaryMonth(t);if(e<0||e>(r?12:11))throw n.local.invalidMonth.replace(/\\{0\\}/,this.local.name);return r?e<r?e+1:e:e+1},intercalaryMonth:function(t){return t=this._validateYear(t),h[t-h[0]]>>13},isIntercalaryMonth:function(t,e){t.year&&(e=(t=t.year()).month());var r=this.intercalaryMonth(t);return!!r&&r===e},leapYear:function(t){return 0!==this.intercalaryMonth(t)},weekOfYear:function(t,e,r){var i,o=this._validateYear(t,n.local.invalidyear),s=f[o-f[0]],l=s>>9&4095,c=s>>5&15,u=31&s;(i=a.newDate(l,c,u)).add(4-(i.dayOfWeek()||7),\"d\");var h=this.toJD(t,e,r)-i.toJD();return 1+Math.floor(h/7)},monthsInYear:function(t){return this.leapYear(t)?13:12},daysInMonth:function(t,e){t.year&&(e=t.month(),t=t.year()),t=this._validateYear(t);var r=h[t-h[0]];if(e>(r>>13?12:11))throw n.local.invalidMonth.replace(/\\{0\\}/,this.local.name);return r&1<<12-e?30:29},weekDay:function(t,e,r){return(this.dayOfWeek(t,e,r)||7)<6},toJD:function(t,e,r){var i=this._validate(t,s,r,n.local.invalidDate);t=this._validateYear(i.year()),e=i.month(),r=i.day();var o=this.isIntercalaryMonth(t,e),s=this.toChineseMonth(t,e),l=function(t,e,r,n,i){var a,o,s;if(\"object\"==typeof t)o=t,a=e||{};else{var l;if(!(\"number\"==typeof t&&t>=1888&&t<=2111))throw new Error(\"Lunar year outside range 1888-2111\");if(!(\"number\"==typeof e&&e>=1&&e<=12))throw new Error(\"Lunar month outside range 1 - 12\");if(!(\"number\"==typeof r&&r>=1&&r<=30))throw new Error(\"Lunar day outside range 1 - 30\");\"object\"==typeof n?(l=!1,a=n):(l=!!n,a={}),o={year:t,month:e,day:r,isIntercalary:l}}s=o.day-1;var c,u=h[o.year-h[0]],p=u>>13;c=p&&(o.month>p||o.isIntercalary)?o.month:o.month-1;for(var d=0;d<c;d++)s+=u&1<<12-d?30:29;var m=f[o.year-f[0]],g=new Date(m>>9&4095,(m>>5&15)-1,(31&m)+s);return a.year=g.getFullYear(),a.month=1+g.getMonth(),a.day=g.getDate(),a}(t,s,r,o);return a.toJD(l.year,l.month,l.day)},fromJD:function(t){var e=a.fromJD(t),r=function(t,e,r,n){var i,a;if(\"object\"==typeof t)i=t,a=e||{};else{if(!(\"number\"==typeof t&&t>=1888&&t<=2111))throw new Error(\"Solar year outside range 1888-2111\");if(!(\"number\"==typeof e&&e>=1&&e<=12))throw new Error(\"Solar month outside range 1 - 12\");if(!(\"number\"==typeof r&&r>=1&&r<=31))throw new Error(\"Solar day outside range 1 - 31\");i={year:t,month:e,day:r},a={}}var o=f[i.year-f[0]],s=i.year<<9|i.month<<5|i.day;a.year=s>=o?i.year:i.year-1,o=f[a.year-f[0]];var l,c=new Date(o>>9&4095,(o>>5&15)-1,31&o),u=new Date(i.year,i.month-1,i.day);l=Math.round((u-c)/864e5);var p,d=h[a.year-h[0]];for(p=0;p<13;p++){var m=d&1<<12-p?30:29;if(l<m)break;l-=m}var g=d>>13;return!g||p<g?(a.isIntercalary=!1,a.month=1+p):p===g?(a.isIntercalary=!0,a.month=p):(a.isIntercalary=!1,a.month=p),a.day=1+l,a}(e.year(),e.month(),e.day()),n=this.toMonthIndex(r.year,r.month,r.isIntercalary);return this.newDate(r.year,n,r.day)},fromString:function(t){var e=t.match(s),r=this._validateYear(+e[1]),n=+e[2],i=!!e[3],a=this.toMonthIndex(r,n,i),o=+e[4];return this.newDate(r,a,o)},add:function(t,e,r){var n=t.year(),i=t.month(),a=this.isIntercalaryMonth(n,i),s=this.toChineseMonth(n,i),l=Object.getPrototypeOf(o.prototype).add.call(this,t,e,r);if(\"y\"===r){var c=l.year(),u=l.month(),h=this.isIntercalaryMonth(c,s),f=a&&h?this.toMonthIndex(c,s,!0):this.toMonthIndex(c,s,!1);f!==u&&l.month(f)}return l}});var s=/^\\s*(-?\\d\\d\\d\\d|\\d\\d)[-/](\\d?\\d)([iI]?)[-/](\\d?\\d)/m,l=/^\\d?\\d[iI]?/m,c=/^闰?十?[一二三四五六七八九]?月/m,u=/^闰?十?[一二三四五六七八九]?/m;n.calendars.chinese=o;var h=[1887,5780,5802,19157,2742,50359,1198,2646,46378,7466,3412,30122,5482,67949,2396,5294,43597,6732,6954,36181,2772,4954,18781,2396,54427,5274,6730,47781,5800,6868,21210,4790,59703,2350,5270,46667,3402,3496,38325,1388,4782,18735,2350,52374,6804,7498,44457,2906,1388,29294,4700,63789,6442,6804,56138,5802,2772,38235,1210,4698,22827,5418,63125,3476,5802,43701,2484,5302,27223,2646,70954,7466,3412,54698,5482,2412,38062,5294,2636,32038,6954,60245,2772,4826,43357,2394,5274,39501,6730,72357,5800,5844,53978,4790,2358,38039,5270,87627,3402,3496,54708,5484,4782,43311,2350,3222,27978,7498,68965,2904,5484,45677,4700,6444,39573,6804,6986,19285,2772,62811,1210,4698,47403,5418,5780,38570,5546,76469,2420,5302,51799,2646,5414,36501,3412,5546,18869,2412,54446,5276,6732,48422,6822,2900,28010,4826,92509,2394,5274,55883,6730,6820,47956,5812,2778,18779,2358,62615,5270,5450,46757,3492,5556,27318,4718,67887,2350,3222,52554,7498,3428,38252,5468,4700,31022,6444,64149,6804,6986,43861,2772,5338,35421,2650,70955,5418,5780,54954,5546,2740,38074,5302,2646,29991,3366,61011,3412,5546,43445,2412,5294,35406,6732,72998,6820,6996,52586,2778,2396,38045,5274,6698,23333,6820,64338,5812,2746,43355,2358,5270,39499,5450,79525,3492,5548],f=[1887,966732,967231,967733,968265,968766,969297,969798,970298,970829,971330,971830,972362,972863,973395,973896,974397,974928,975428,975929,976461,976962,977462,977994,978494,979026,979526,980026,980558,981059,981559,982091,982593,983124,983624,984124,984656,985157,985656,986189,986690,987191,987722,988222,988753,989254,989754,990286,990788,991288,991819,992319,992851,993352,993851,994383,994885,995385,995917,996418,996918,997450,997949,998481,998982,999483,1000014,1000515,1001016,1001548,1002047,1002578,1003080,1003580,1004111,1004613,1005113,1005645,1006146,1006645,1007177,1007678,1008209,1008710,1009211,1009743,1010243,1010743,1011275,1011775,1012306,1012807,1013308,1013840,1014341,1014841,1015373,1015874,1016404,1016905,1017405,1017937,1018438,1018939,1019471,1019972,1020471,1021002,1021503,1022035,1022535,1023036,1023568,1024069,1024568,1025100,1025601,1026102,1026633,1027133,1027666,1028167,1028666,1029198,1029699,1030199,1030730,1031231,1031763,1032264,1032764,1033296,1033797,1034297,1034828,1035329,1035830,1036362,1036861,1037393,1037894,1038394,1038925,1039427,1039927,1040459,1040959,1041491,1041992,1042492,1043023,1043524,1044024,1044556,1045057,1045558,1046090,1046590,1047121,1047622,1048122,1048654,1049154,1049655,1050187,1050689,1051219,1051720,1052220,1052751,1053252,1053752,1054284,1054786,1055285,1055817,1056317,1056849,1057349,1057850,1058382,1058883,1059383,1059915,1060415,1060947,1061447,1061947,1062479,1062981,1063480,1064012,1064514,1065014,1065545,1066045,1066577,1067078,1067578,1068110,1068611,1069112,1069642,1070142,1070674,1071175,1071675,1072207,1072709,1073209,1073740,1074241,1074741,1075273,1075773,1076305,1076807,1077308,1077839,1078340,1078840,1079372,1079871,1080403,1080904]},72210:function(t,e,r){var n=r(24453),i=r(27976);function a(t){this.local=this.regionalOptions[t||\"\"]||this.regionalOptions[\"\"]}a.prototype=new n.baseCalendar,i(a.prototype,{name:\"Coptic\",jdEpoch:1825029.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:\"Coptic\",epochs:[\"BAM\",\"AM\"],monthNames:[\"Thout\",\"Paopi\",\"Hathor\",\"Koiak\",\"Tobi\",\"Meshir\",\"Paremhat\",\"Paremoude\",\"Pashons\",\"Paoni\",\"Epip\",\"Mesori\",\"Pi Kogi Enavot\"],monthNamesShort:[\"Tho\",\"Pao\",\"Hath\",\"Koi\",\"Tob\",\"Mesh\",\"Pat\",\"Pad\",\"Pash\",\"Pao\",\"Epi\",\"Meso\",\"PiK\"],dayNames:[\"Tkyriaka\",\"Pesnau\",\"Pshoment\",\"Peftoou\",\"Ptiou\",\"Psoou\",\"Psabbaton\"],dayNamesShort:[\"Tky\",\"Pes\",\"Psh\",\"Pef\",\"Pti\",\"Pso\",\"Psa\"],dayNamesMin:[\"Tk\",\"Pes\",\"Psh\",\"Pef\",\"Pt\",\"Pso\",\"Psa\"],digits:null,dateFormat:\"dd/mm/yyyy\",firstDay:0,isRTL:!1}},leapYear:function(t){var e=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear);return(t=e.year()+(e.year()<0?1:0))%4==3||t%4==-1},monthsInYear:function(t){return this._validate(t,this.minMonth,this.minDay,n.local.invalidYear||n.regionalOptions[\"\"].invalidYear),13},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(-n.dayOfWeek(),\"d\"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(t,e){var r=this._validate(t,e,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(13===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(t,e,r){return(this.dayOfWeek(t,e,r)||7)<6},toJD:function(t,e,r){var i=this._validate(t,e,r,n.local.invalidDate);return(t=i.year())<0&&t++,i.day()+30*(i.month()-1)+365*(t-1)+Math.floor(t/4)+this.jdEpoch-1},fromJD:function(t){var e=Math.floor(t)+.5-this.jdEpoch,r=Math.floor((e-Math.floor((e+366)/1461))/365)+1;r<=0&&r--,e=Math.floor(t)+.5-this.newDate(r,1,1).toJD();var n=Math.floor(e/30)+1,i=e-30*(n-1)+1;return this.newDate(r,n,i)}}),n.calendars.coptic=a},28569:function(t,e,r){var n=r(24453),i=r(27976);function a(t){this.local=this.regionalOptions[t||\"\"]||this.regionalOptions[\"\"]}a.prototype=new n.baseCalendar,i(a.prototype,{name:\"Discworld\",jdEpoch:1721425.5,daysPerMonth:[16,32,32,32,32,32,32,32,32,32,32,32,32],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{\"\":{name:\"Discworld\",epochs:[\"BUC\",\"UC\"],monthNames:[\"Ick\",\"Offle\",\"February\",\"March\",\"April\",\"May\",\"June\",\"Grune\",\"August\",\"Spune\",\"Sektober\",\"Ember\",\"December\"],monthNamesShort:[\"Ick\",\"Off\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Gru\",\"Aug\",\"Spu\",\"Sek\",\"Emb\",\"Dec\"],dayNames:[\"Sunday\",\"Octeday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],dayNamesShort:[\"Sun\",\"Oct\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],dayNamesMin:[\"Su\",\"Oc\",\"Mo\",\"Tu\",\"We\",\"Th\",\"Fr\",\"Sa\"],digits:null,dateFormat:\"yyyy/mm/dd\",firstDay:2,isRTL:!1}},leapYear:function(t){return this._validate(t,this.minMonth,this.minDay,n.local.invalidYear),!1},monthsInYear:function(t){return this._validate(t,this.minMonth,this.minDay,n.local.invalidYear),13},daysInYear:function(t){return this._validate(t,this.minMonth,this.minDay,n.local.invalidYear),400},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(-n.dayOfWeek(),\"d\"),Math.floor((n.dayOfYear()-1)/8)+1},daysInMonth:function(t,e){var r=this._validate(t,e,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]},daysInWeek:function(){return 8},dayOfWeek:function(t,e,r){return(this._validate(t,e,r,n.local.invalidDate).day()+1)%8},weekDay:function(t,e,r){var n=this.dayOfWeek(t,e,r);return n>=2&&n<=6},extraInfo:function(t,e,r){var i=this._validate(t,e,r,n.local.invalidDate);return{century:o[Math.floor((i.year()-1)/100)+1]||\"\"}},toJD:function(t,e,r){var i=this._validate(t,e,r,n.local.invalidDate);return t=i.year()+(i.year()<0?1:0),e=i.month(),(r=i.day())+(e>1?16:0)+(e>2?32*(e-2):0)+400*(t-1)+this.jdEpoch-1},fromJD:function(t){t=Math.floor(t+.5)-Math.floor(this.jdEpoch)-1;var e=Math.floor(t/400)+1;t-=400*(e-1),t+=t>15?16:0;var r=Math.floor(t/32)+1,n=t-32*(r-1)+1;return this.newDate(e<=0?e-1:e,r,n)}});var o={20:\"Fruitbat\",21:\"Anchovy\"};n.calendars.discworld=a},81133:function(t,e,r){var n=r(24453),i=r(27976);function a(t){this.local=this.regionalOptions[t||\"\"]||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(t){var e=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear);return(t=e.year()+(e.year()<0?1:0))%4==3||t%4==-1},monthsInYear:function(t){return this._validate(t,this.minMonth,this.minDay,n.local.invalidYear||n.regionalOptions[\"\"].invalidYear),13},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(-n.dayOfWeek(),\"d\"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(t,e){var r=this._validate(t,e,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(13===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(t,e,r){return(this.dayOfWeek(t,e,r)||7)<6},toJD:function(t,e,r){var i=this._validate(t,e,r,n.local.invalidDate);return(t=i.year())<0&&t++,i.day()+30*(i.month()-1)+365*(t-1)+Math.floor(t/4)+this.jdEpoch-1},fromJD:function(t){var e=Math.floor(t)+.5-this.jdEpoch,r=Math.floor((e-Math.floor((e+366)/1461))/365)+1;r<=0&&r--,e=Math.floor(t)+.5-this.newDate(r,1,1).toJD();var n=Math.floor(e/30)+1,i=e-30*(n-1)+1;return this.newDate(r,n,i)}}),n.calendars.ethiopian=a},78295:function(t,e,r){var n=r(24453),i=r(27976);function a(t){this.local=this.regionalOptions[t||\"\"]||this.regionalOptions[\"\"]}function o(t,e){return t-e*Math.floor(t/e)}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(t){var e=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear);return this._leapYear(e.year())},_leapYear:function(t){return o(7*(t=t<0?t+1:t)+1,19)<7},monthsInYear:function(t){return this._validate(t,this.minMonth,this.minDay,n.local.invalidYear),this._leapYear(t.year?t.year():t)?13:12},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(-n.dayOfWeek(),\"d\"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(t){return t=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear).year(),this.toJD(-1===t?1:t+1,7,1)-this.toJD(t,7,1)},daysInMonth:function(t,e){return t.year&&(e=t.month(),t=t.year()),this._validate(t,e,this.minDay,n.local.invalidMonth),12===e&&this.leapYear(t)||8===e&&5===o(this.daysInYear(t),10)?30:9===e&&3===o(this.daysInYear(t),10)?29:this.daysPerMonth[e-1]},weekDay:function(t,e,r){return 6!==this.dayOfWeek(t,e,r)},extraInfo:function(t,e,r){var i=this._validate(t,e,r,n.local.invalidDate);return{yearType:(this.leapYear(i)?\"embolismic\":\"common\")+\" \"+[\"deficient\",\"regular\",\"complete\"][this.daysInYear(i)%10-3]}},toJD:function(t,e,r){var i=this._validate(t,e,r,n.local.invalidDate);t=i.year(),e=i.month(),r=i.day();var a=t<=0?t+1:t,o=this.jdEpoch+this._delay1(a)+this._delay2(a)+r+1;if(e<7){for(var s=7;s<=this.monthsInYear(t);s++)o+=this.daysInMonth(t,s);for(s=1;s<e;s++)o+=this.daysInMonth(t,s)}else for(s=7;s<e;s++)o+=this.daysInMonth(t,s);return o},_delay1:function(t){var e=Math.floor((235*t-234)/19),r=12084+13753*e,n=29*e+Math.floor(r/25920);return o(3*(n+1),7)<3&&n++,n},_delay2:function(t){var e=this._delay1(t-1),r=this._delay1(t);return this._delay1(t+1)-r==356?2:r-e==382?1:0},fromJD:function(t){t=Math.floor(t)+.5;for(var e=Math.floor(98496*(t-this.jdEpoch)/35975351)-1;t>=this.toJD(-1===e?1:e+1,7,1);)e++;for(var r=t<this.toJD(e,1,1)?7:1;t>this.toJD(e,r,this.daysInMonth(e,r));)r++;var n=t-this.toJD(e,r,1)+1;return this.newDate(e,r,n)}}),n.calendars.hebrew=a},25512:function(t,e,r){var n=r(24453),i=r(27976);function a(t){this.local=this.regionalOptions[t||\"\"]||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īs\",\"Yawm al-jum'a\",\"Yawm as-sabt\"],dayNamesShort:[\"Aha\",\"Ith\",\"Thu\",\"Arb\",\"Kha\",\"Jum\",\"Sab\"],dayNamesMin:[\"Ah\",\"It\",\"Th\",\"Ar\",\"Kh\",\"Ju\",\"Sa\"],digits:null,dateFormat:\"yyyy/mm/dd\",firstDay:6,isRTL:!1}},leapYear:function(t){return(11*this._validate(t,this.minMonth,this.minDay,n.local.invalidYear).year()+14)%30<11},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(-n.dayOfWeek(),\"d\"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(t){return this.leapYear(t)?355:354},daysInMonth:function(t,e){var r=this._validate(t,e,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(12===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(t,e,r){return 5!==this.dayOfWeek(t,e,r)},toJD:function(t,e,r){var i=this._validate(t,e,r,n.local.invalidDate);return t=i.year(),e=i.month(),t=t<=0?t+1:t,(r=i.day())+Math.ceil(29.5*(e-1))+354*(t-1)+Math.floor((3+11*t)/30)+this.jdEpoch-1},fromJD:function(t){t=Math.floor(t)+.5;var e=Math.floor((30*(t-this.jdEpoch)+10646)/10631);e=e<=0?e-1:e;var r=Math.min(12,Math.ceil((t-29-this.toJD(e,1,1))/29.5)+1),n=t-this.toJD(e,r,1)+1;return this.newDate(e,r,n)}}),n.calendars.islamic=a},42645:function(t,e,r){var n=r(24453),i=r(27976);function a(t){this.local=this.regionalOptions[t||\"\"]||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(t){var e=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear);return(t=e.year()<0?e.year()+1:e.year())%4==0},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(4-(n.dayOfWeek()||7),\"d\"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(t,e){var r=this._validate(t,e,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(2===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(t,e,r){return(this.dayOfWeek(t,e,r)||7)<6},toJD:function(t,e,r){var i=this._validate(t,e,r,n.local.invalidDate);return t=i.year(),e=i.month(),r=i.day(),t<0&&t++,e<=2&&(t--,e+=12),Math.floor(365.25*(t+4716))+Math.floor(30.6001*(e+1))+r-1524.5},fromJD:function(t){var e=Math.floor(t+.5)+1524,r=Math.floor((e-122.1)/365.25),n=Math.floor(365.25*r),i=Math.floor((e-n)/30.6001),a=i-Math.floor(i<14?1:13),o=r-Math.floor(a>2?4716:4715),s=e-n-Math.floor(30.6001*i);return o<=0&&o--,this.newDate(o,a,s)}}),n.calendars.julian=a},62324:function(t,e,r){var n=r(24453),i=r(27976);function a(t){this.local=this.regionalOptions[t||\"\"]||this.regionalOptions[\"\"]}function o(t,e){return t-e*Math.floor(t/e)}function s(t,e){return o(t-1,e)+1}a.prototype=new 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(t){return this._validate(t,this.minMonth,this.minDay,n.local.invalidYear),!1},formatYear:function(t){t=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear).year();var e=Math.floor(t/400);return t%=400,t+=t<0?400:0,e+\".\"+Math.floor(t/20)+\".\"+t%20},forYear:function(t){if((t=t.split(\".\")).length<3)throw\"Invalid Mayan year\";for(var e=0,r=0;r<t.length;r++){var n=parseInt(t[r],10);if(Math.abs(n)>19||r>0&&n<0)throw\"Invalid Mayan year\";e=20*e+n}return e},monthsInYear:function(t){return this._validate(t,this.minMonth,this.minDay,n.local.invalidYear),18},weekOfYear:function(t,e,r){return this._validate(t,e,r,n.local.invalidDate),0},daysInYear:function(t){return this._validate(t,this.minMonth,this.minDay,n.local.invalidYear),360},daysInMonth:function(t,e){return this._validate(t,e,this.minDay,n.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(t,e,r){return this._validate(t,e,r,n.local.invalidDate).day()},weekDay:function(t,e,r){return this._validate(t,e,r,n.local.invalidDate),!0},extraInfo:function(t,e,r){var i=this._validate(t,e,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(t){var e=o(8+(t-=this.jdEpoch)+340,365);return[Math.floor(e/20)+1,o(e,20)]},_toTzolkin:function(t){return[s(20+(t-=this.jdEpoch),20),s(t+4,13)]},toJD:function(t,e,r){var i=this._validate(t,e,r,n.local.invalidDate);return i.day()+20*i.month()+360*i.year()+this.jdEpoch},fromJD:function(t){t=Math.floor(t)+.5-this.jdEpoch;var e=Math.floor(t/360);t%=360,t+=t<0?360:0;var r=Math.floor(t/20),n=t%20;return this.newDate(e,r,n)}}),n.calendars.mayan=a},91662:function(t,e,r){var n=r(24453),i=r(27976);function a(t){this.local=this.regionalOptions[t||\"\"]||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(t){var e=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear||n.regionalOptions[\"\"].invalidYear);return o.leapYear(e.year()+(e.year()<1?1:0)+1469)},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(1-(n.dayOfWeek()||7),\"d\"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(t,e){var r=this._validate(t,e,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(12===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(t,e,r){return(this.dayOfWeek(t,e,r)||7)<6},toJD:function(t,e,r){var i=this._validate(t,e,r,n.local.invalidMonth);(t=i.year())<0&&t++;for(var a=i.day(),s=1;s<i.month();s++)a+=this.daysPerMonth[s-1];return a+o.toJD(t+1468,3,13)},fromJD:function(t){t=Math.floor(t+.5);for(var e=Math.floor((t-(this.jdEpoch-1))/366);t>=this.toJD(e+1,1,1);)e++;for(var r=t-Math.floor(this.toJD(e,1,1)+.5)+1,n=1;r>this.daysInMonth(e,n);)r-=this.daysInMonth(e,n),n++;return this.newDate(e,n,r)}}),n.calendars.nanakshahi=a},66445:function(t,e,r){var n=r(24453),i=r(27976);function a(t){this.local=this.regionalOptions[t||\"\"]||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(t){return this.daysInYear(t)!==this.daysPerYear},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(-n.dayOfWeek(),\"d\"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(t){if(t=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear).year(),void 0===this.NEPALI_CALENDAR_DATA[t])return this.daysPerYear;for(var e=0,r=this.minMonth;r<=12;r++)e+=this.NEPALI_CALENDAR_DATA[t][r];return e},daysInMonth:function(t,e){return t.year&&(e=t.month(),t=t.year()),this._validate(t,e,this.minDay,n.local.invalidMonth),void 0===this.NEPALI_CALENDAR_DATA[t]?this.daysPerMonth[e-1]:this.NEPALI_CALENDAR_DATA[t][e]},weekDay:function(t,e,r){return 6!==this.dayOfWeek(t,e,r)},toJD:function(t,e,r){var i=this._validate(t,e,r,n.local.invalidDate);t=i.year(),e=i.month(),r=i.day();var a=n.instance(),o=0,s=e,l=t;this._createMissingCalendarData(t);var c=t-(s>9||9===s&&r>=this.NEPALI_CALENDAR_DATA[l][0]?56:57);for(9!==e&&(o=r,s--);9!==s;)s<=0&&(s=12,l--),o+=this.NEPALI_CALENDAR_DATA[l][s],s--;return 9===e?(o+=r-this.NEPALI_CALENDAR_DATA[l][0])<0&&(o+=a.daysInYear(c)):o+=this.NEPALI_CALENDAR_DATA[l][9]-this.NEPALI_CALENDAR_DATA[l][0],a.newDate(c,1,1).add(o,\"d\").toJD()},fromJD:function(t){var e=n.instance().fromJD(t),r=e.year(),i=e.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 c=this.NEPALI_CALENDAR_DATA[a][o]-(l-i);return this.newDate(a,o,c)},_createMissingCalendarData:function(t){var e=this.daysPerMonth.slice(0);e.unshift(17);for(var r=t-1;r<t+2;r++)void 0===this.NEPALI_CALENDAR_DATA[r]&&(this.NEPALI_CALENDAR_DATA[r]=e)},NEPALI_CALENDAR_DATA:{1970:[18,31,31,32,31,31,31,30,29,30,29,30,30],1971:[18,31,31,32,31,32,30,30,29,30,29,30,30],1972:[17,31,32,31,32,31,30,30,30,29,29,30,30],1973:[19,30,32,31,32,31,30,30,30,29,30,29,31],1974:[19,31,31,32,30,31,31,30,29,30,29,30,30],1975:[18,31,31,32,32,30,31,30,29,30,29,30,30],1976:[17,31,32,31,32,31,30,30,30,29,29,30,31],1977:[18,31,32,31,32,31,31,29,30,29,30,29,31],1978:[18,31,31,32,31,31,31,30,29,30,29,30,30],1979:[18,31,31,32,32,31,30,30,29,30,29,30,30],1980:[17,31,32,31,32,31,30,30,30,29,29,30,31],1981:[18,31,31,31,32,31,31,29,30,30,29,30,30],1982:[18,31,31,32,31,31,31,30,29,30,29,30,30],1983:[18,31,31,32,32,31,30,30,29,30,29,30,30],1984:[17,31,32,31,32,31,30,30,30,29,29,30,31],1985:[18,31,31,31,32,31,31,29,30,30,29,30,30],1986:[18,31,31,32,31,31,31,30,29,30,29,30,30],1987:[18,31,32,31,32,31,30,30,29,30,29,30,30],1988:[17,31,32,31,32,31,30,30,30,29,29,30,31],1989:[18,31,31,31,32,31,31,30,29,30,29,30,30],1990:[18,31,31,32,31,31,31,30,29,30,29,30,30],1991:[18,31,32,31,32,31,30,30,29,30,29,30,30],1992:[17,31,32,31,32,31,30,30,30,29,30,29,31],1993:[18,31,31,31,32,31,31,30,29,30,29,30,30],1994:[18,31,31,32,31,31,31,30,29,30,29,30,30],1995:[17,31,32,31,32,31,30,30,30,29,29,30,30],1996:[17,31,32,31,32,31,30,30,30,29,30,29,31],1997:[18,31,31,32,31,31,31,30,29,30,29,30,30],1998:[18,31,31,32,31,31,31,30,29,30,29,30,30],1999:[17,31,32,31,32,31,30,30,30,29,29,30,31],2e3:[17,30,32,31,32,31,30,30,30,29,30,29,31],2001:[18,31,31,32,31,31,31,30,29,30,29,30,30],2002:[18,31,31,32,32,31,30,30,29,30,29,30,30],2003:[17,31,32,31,32,31,30,30,30,29,29,30,31],2004:[17,30,32,31,32,31,30,30,30,29,30,29,31],2005:[18,31,31,32,31,31,31,30,29,30,29,30,30],2006:[18,31,31,32,32,31,30,30,29,30,29,30,30],2007:[17,31,32,31,32,31,30,30,30,29,29,30,31],2008:[17,31,31,31,32,31,31,29,30,30,29,29,31],2009:[18,31,31,32,31,31,31,30,29,30,29,30,30],2010:[18,31,31,32,32,31,30,30,29,30,29,30,30],2011:[17,31,32,31,32,31,30,30,30,29,29,30,31],2012:[17,31,31,31,32,31,31,29,30,30,29,30,30],2013:[18,31,31,32,31,31,31,30,29,30,29,30,30],2014:[18,31,31,32,32,31,30,30,29,30,29,30,30],2015:[17,31,32,31,32,31,30,30,30,29,29,30,31],2016:[17,31,31,31,32,31,31,29,30,30,29,30,30],2017:[18,31,31,32,31,31,31,30,29,30,29,30,30],2018:[18,31,32,31,32,31,30,30,29,30,29,30,30],2019:[17,31,32,31,32,31,30,30,30,29,30,29,31],2020:[17,31,31,31,32,31,31,30,29,30,29,30,30],2021:[18,31,31,32,31,31,31,30,29,30,29,30,30],2022:[17,31,32,31,32,31,30,30,30,29,29,30,30],2023:[17,31,32,31,32,31,30,30,30,29,30,29,31],2024:[17,31,31,31,32,31,31,30,29,30,29,30,30],2025:[18,31,31,32,31,31,31,30,29,30,29,30,30],2026:[17,31,32,31,32,31,30,30,30,29,29,30,31],2027:[17,30,32,31,32,31,30,30,30,29,30,29,31],2028:[17,31,31,32,31,31,31,30,29,30,29,30,30],2029:[18,31,31,32,31,32,30,30,29,30,29,30,30],2030:[17,31,32,31,32,31,30,30,30,30,30,30,31],2031:[17,31,32,31,32,31,31,31,31,31,31,31,31],2032:[17,32,32,32,32,32,32,32,32,32,32,32,32],2033:[18,31,31,32,32,31,30,30,29,30,29,30,30],2034:[17,31,32,31,32,31,30,30,30,29,29,30,31],2035:[17,30,32,31,32,31,31,29,30,30,29,29,31],2036:[17,31,31,32,31,31,31,30,29,30,29,30,30],2037:[18,31,31,32,32,31,30,30,29,30,29,30,30],2038:[17,31,32,31,32,31,30,30,30,29,29,30,31],2039:[17,31,31,31,32,31,31,29,30,30,29,30,30],2040:[17,31,31,32,31,31,31,30,29,30,29,30,30],2041:[18,31,31,32,32,31,30,30,29,30,29,30,30],2042:[17,31,32,31,32,31,30,30,30,29,29,30,31],2043:[17,31,31,31,32,31,31,29,30,30,29,30,30],2044:[17,31,31,32,31,31,31,30,29,30,29,30,30],2045:[18,31,32,31,32,31,30,30,29,30,29,30,30],2046:[17,31,32,31,32,31,30,30,30,29,29,30,31],2047:[17,31,31,31,32,31,31,30,29,30,29,30,30],2048:[17,31,31,32,31,31,31,30,29,30,29,30,30],2049:[17,31,32,31,32,31,30,30,30,29,29,30,30],2050:[17,31,32,31,32,31,30,30,30,29,30,29,31],2051:[17,31,31,31,32,31,31,30,29,30,29,30,30],2052:[17,31,31,32,31,31,31,30,29,30,29,30,30],2053:[17,31,32,31,32,31,30,30,30,29,29,30,30],2054:[17,31,32,31,32,31,30,30,30,29,30,29,31],2055:[17,31,31,32,31,31,31,30,29,30,30,29,30],2056:[17,31,31,32,31,32,30,30,29,30,29,30,30],2057:[17,31,32,31,32,31,30,30,30,29,29,30,31],2058:[17,30,32,31,32,31,30,30,30,29,30,29,31],2059:[17,31,31,32,31,31,31,30,29,30,29,30,30],2060:[17,31,31,32,32,31,30,30,29,30,29,30,30],2061:[17,31,32,31,32,31,30,30,30,29,29,30,31],2062:[17,30,32,31,32,31,31,29,30,29,30,29,31],2063:[17,31,31,32,31,31,31,30,29,30,29,30,30],2064:[17,31,31,32,32,31,30,30,29,30,29,30,30],2065:[17,31,32,31,32,31,30,30,30,29,29,30,31],2066:[17,31,31,31,32,31,31,29,30,30,29,29,31],2067:[17,31,31,32,31,31,31,30,29,30,29,30,30],2068:[17,31,31,32,32,31,30,30,29,30,29,30,30],2069:[17,31,32,31,32,31,30,30,30,29,29,30,31],2070:[17,31,31,31,32,31,31,29,30,30,29,30,30],2071:[17,31,31,32,31,31,31,30,29,30,29,30,30],2072:[17,31,32,31,32,31,30,30,29,30,29,30,30],2073:[17,31,32,31,32,31,30,30,30,29,29,30,31],2074:[17,31,31,31,32,31,31,30,29,30,29,30,30],2075:[17,31,31,32,31,31,31,30,29,30,29,30,30],2076:[16,31,32,31,32,31,30,30,30,29,29,30,30],2077:[17,31,32,31,32,31,30,30,30,29,30,29,31],2078:[17,31,31,31,32,31,31,30,29,30,29,30,30],2079:[17,31,31,32,31,31,31,30,29,30,29,30,30],2080:[16,31,32,31,32,31,30,30,30,29,29,30,30],2081:[17,31,31,32,32,31,30,30,30,29,30,30,30],2082:[17,31,32,31,32,31,30,30,30,29,30,30,30],2083:[17,31,31,32,31,31,30,30,30,29,30,30,30],2084:[17,31,31,32,31,31,30,30,30,29,30,30,30],2085:[17,31,32,31,32,31,31,30,30,29,30,30,30],2086:[17,31,32,31,32,31,30,30,30,29,30,30,30],2087:[16,31,31,32,31,31,31,30,30,29,30,30,30],2088:[16,30,31,32,32,30,31,30,30,29,30,30,30],2089:[17,31,32,31,32,31,30,30,30,29,30,30,30],2090:[17,31,32,31,32,31,30,30,30,29,30,30,30],2091:[16,31,31,32,31,31,31,30,30,29,30,30,30],2092:[16,31,31,32,32,31,30,30,30,29,30,30,30],2093:[17,31,32,31,32,31,30,30,30,29,30,30,30],2094:[17,31,31,32,31,31,30,30,30,29,30,30,30],2095:[17,31,31,32,31,31,31,30,29,30,30,30,30],2096:[17,30,31,32,32,31,30,30,29,30,29,30,30],2097:[17,31,32,31,32,31,30,30,30,29,30,30,30],2098:[17,31,31,32,31,31,31,29,30,29,30,30,31],2099:[17,31,31,32,31,31,31,30,29,29,30,30,30],2100:[17,31,32,31,32,30,31,30,29,30,29,30,30]}}),n.calendars.nepali=a},50506:function(t,e,r){var n=r(24453),i=r(27976);function a(t){this.local=this.regionalOptions[t||\"\"]||this.regionalOptions[\"\"]}function o(t,e){return t-e*Math.floor(t/e)}a.prototype=new n.baseCalendar,i(a.prototype,{name:\"Persian\",jdEpoch:1948320.5,daysPerMonth:[31,31,31,31,31,31,30,30,30,30,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{\"\":{name:\"Persian\",epochs:[\"BP\",\"AP\"],monthNames:[\"Farvardin\",\"Ordibehesht\",\"Khordad\",\"Tir\",\"Mordad\",\"Shahrivar\",\"Mehr\",\"Aban\",\"Azar\",\"Day\",\"Bahman\",\"Esfand\"],monthNamesShort:[\"Far\",\"Ord\",\"Kho\",\"Tir\",\"Mor\",\"Sha\",\"Meh\",\"Aba\",\"Aza\",\"Day\",\"Bah\",\"Esf\"],dayNames:[\"Yekshambe\",\"Doshambe\",\"Seshambe\",\"Chæharshambe\",\"Panjshambe\",\"Jom'e\",\"Shambe\"],dayNamesShort:[\"Yek\",\"Do\",\"Se\",\"Chæ\",\"Panj\",\"Jom\",\"Sha\"],dayNamesMin:[\"Ye\",\"Do\",\"Se\",\"Ch\",\"Pa\",\"Jo\",\"Sh\"],digits:null,dateFormat:\"yyyy/mm/dd\",firstDay:6,isRTL:!1}},leapYear:function(t){var e=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear);return 682*((e.year()-(e.year()>0?474:473))%2820+474+38)%2816<682},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(-(n.dayOfWeek()+1)%7,\"d\"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(t,e){var r=this._validate(t,e,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(12===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(t,e,r){return 5!==this.dayOfWeek(t,e,r)},toJD:function(t,e,r){var i=this._validate(t,e,r,n.local.invalidDate);t=i.year(),e=i.month(),r=i.day();var a=t-(t>=0?474:473),s=474+o(a,2820);return r+(e<=7?31*(e-1):30*(e-1)+6)+Math.floor((682*s-110)/2816)+365*(s-1)+1029983*Math.floor(a/2820)+this.jdEpoch-1},fromJD:function(t){var e=(t=Math.floor(t)+.5)-this.toJD(475,1,1),r=Math.floor(e/1029983),n=o(e,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 c=t-this.toJD(l,1,1)+1,u=c<=186?Math.ceil(c/31):Math.ceil((c-6)/30),h=t-this.toJD(l,u,1)+1;return this.newDate(l,u,h)}}),n.calendars.persian=a,n.calendars.jalali=a},84756:function(t,e,r){var n=r(24453),i=r(27976),a=n.instance();function o(t){this.local=this.regionalOptions[t||\"\"]||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(t){var e=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear);return t=this._t2gYear(e.year()),a.leapYear(t)},weekOfYear:function(t,e,r){var i=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear);return t=this._t2gYear(i.year()),a.weekOfYear(t,i.month(),i.day())},daysInMonth:function(t,e){var r=this._validate(t,e,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(2===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(t,e,r){return(this.dayOfWeek(t,e,r)||7)<6},toJD:function(t,e,r){var i=this._validate(t,e,r,n.local.invalidDate);return t=this._t2gYear(i.year()),a.toJD(t,i.month(),i.day())},fromJD:function(t){var e=a.fromJD(t),r=this._g2tYear(e.year());return this.newDate(r,e.month(),e.day())},_t2gYear:function(t){return t+this.yearsOffset+(t>=-this.yearsOffset&&t<=-1?1:0)},_g2tYear:function(t){return t-this.yearsOffset-(t>=1&&t<=this.yearsOffset?1:0)}}),n.calendars.taiwan=o},41858:function(t,e,r){var n=r(24453),i=r(27976),a=n.instance();function o(t){this.local=this.regionalOptions[t||\"\"]||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(t){var e=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear);return t=this._t2gYear(e.year()),a.leapYear(t)},weekOfYear:function(t,e,r){var i=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear);return t=this._t2gYear(i.year()),a.weekOfYear(t,i.month(),i.day())},daysInMonth:function(t,e){var r=this._validate(t,e,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(2===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(t,e,r){return(this.dayOfWeek(t,e,r)||7)<6},toJD:function(t,e,r){var i=this._validate(t,e,r,n.local.invalidDate);return t=this._t2gYear(i.year()),a.toJD(t,i.month(),i.day())},fromJD:function(t){var e=a.fromJD(t),r=this._g2tYear(e.year());return this.newDate(r,e.month(),e.day())},_t2gYear:function(t){return t-this.yearsOffset-(t>=1&&t<=this.yearsOffset?1:0)},_g2tYear:function(t){return t+this.yearsOffset+(t>=-this.yearsOffset&&t<=-1?1:0)}}),n.calendars.thai=o},57985:function(t,e,r){var n=r(24453),i=r(27976);function a(t){this.local=this.regionalOptions[t||\"\"]||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āthā\",\"Yawm al-Arbaā\",\"Yawm al-Khamīs\",\"Yawm al-Juma\",\"Yawm al-Sabt\"],dayNamesMin:[\"Ah\",\"Ith\",\"Th\",\"Ar\",\"Kh\",\"Ju\",\"Sa\"],digits:null,dateFormat:\"yyyy/mm/dd\",firstDay:6,isRTL:!0}},leapYear:function(t){var e=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear);return 355===this.daysInYear(e.year())},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(-n.dayOfWeek(),\"d\"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(t){for(var e=0,r=1;r<=12;r++)e+=this.daysInMonth(t,r);return e},daysInMonth:function(t,e){for(var r=this._validate(t,e,this.minDay,n.local.invalidMonth).toJD()-24e5+.5,i=0,a=0;a<o.length;a++){if(o[a]>r)return o[i]-o[i-1];i++}return 30},weekDay:function(t,e,r){return 5!==this.dayOfWeek(t,e,r)},toJD:function(t,e,r){var i=this._validate(t,e,r,n.local.invalidDate),a=12*(i.year()-1)+i.month()-15292;return i.day()+o[a-1]-1+24e5-.5},fromJD:function(t){for(var e=t-24e5+.5,r=0,n=0;n<o.length&&!(o[n]>e);n++)r++;var i=r+15292,a=Math.floor((i-1)/12),s=a+1,l=i-12*a,c=e-o[r-1]+1;return this.newDate(s,l,c)},isValid:function(t,e,r){var i=n.baseCalendar.prototype.isValid.apply(this,arguments);return i&&(i=(t=null!=t.year?t.year:t)>=1276&&t<=1500),i},_validate:function(t,e,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]},24453:function(t,e,r){var n=r(27976);function i(){this.regionalOptions=[],this.regionalOptions[\"\"]={invalidCalendar:\"Calendar {0} not found\",invalidDate:\"Invalid {0} date\",invalidMonth:\"Invalid {0} month\",invalidYear:\"Invalid {0} year\",differentCalendars:\"Cannot mix {0} and {1} dates\"},this.local=this.regionalOptions[\"\"],this.calendars={},this._localCals={}}function a(t,e,r,n){if(this._calendar=t,this._year=e,this._month=r,this._day=n,0===this._calendar._validateLevel&&!this._calendar.isValid(this._year,this._month,this._day))throw(c.local.invalidDate||c.regionalOptions[\"\"].invalidDate).replace(/\\{0\\}/,this._calendar.local.name)}function o(t,e){return\"000000\".substring(0,e-(t=\"\"+t).length)+t}function s(){this.shortYearCutoff=\"+10\"}function l(t){this.local=this.regionalOptions[t]||this.regionalOptions[\"\"]}n(i.prototype,{instance:function(t,e){t=(t||\"gregorian\").toLowerCase(),e=e||\"\";var r=this._localCals[t+\"-\"+e];if(!r&&this.calendars[t]&&(r=new this.calendars[t](e),this._localCals[t+\"-\"+e]=r),!r)throw(this.local.invalidCalendar||this.regionalOptions[\"\"].invalidCalendar).replace(/\\{0\\}/,t);return r},newDate:function(t,e,r,n,i){return(n=(null!=t&&t.year?t.calendar():\"string\"==typeof n?this.instance(n,i):n)||this.instance()).newDate(t,e,r)},substituteDigits:function(t){return function(e){return(e+\"\").replace(/[0-9]/g,(function(e){return t[e]}))}},substituteChineseDigits:function(t,e){return function(r){for(var n=\"\",i=0;r>0;){var a=r%10;n=(0===a?\"\":t[a]+e[i])+n,i++,r=Math.floor(r/10)}return 0===n.indexOf(t[1]+e[1])&&(n=n.substr(1)),n||t[0]}}}),n(a.prototype,{newDate:function(t,e,r){return this._calendar.newDate(null==t?this:t,e,r)},year:function(t){return 0===arguments.length?this._year:this.set(t,\"y\")},month:function(t){return 0===arguments.length?this._month:this.set(t,\"m\")},day:function(t){return 0===arguments.length?this._day:this.set(t,\"d\")},date:function(t,e,r){if(!this._calendar.isValid(t,e,r))throw(c.local.invalidDate||c.regionalOptions[\"\"].invalidDate).replace(/\\{0\\}/,this._calendar.local.name);return this._year=t,this._month=e,this._day=r,this},leapYear:function(){return this._calendar.leapYear(this)},epoch:function(){return this._calendar.epoch(this)},formatYear:function(){return this._calendar.formatYear(this)},monthOfYear:function(){return this._calendar.monthOfYear(this)},weekOfYear:function(){return this._calendar.weekOfYear(this)},daysInYear:function(){return this._calendar.daysInYear(this)},dayOfYear:function(){return this._calendar.dayOfYear(this)},daysInMonth:function(){return this._calendar.daysInMonth(this)},dayOfWeek:function(){return this._calendar.dayOfWeek(this)},weekDay:function(){return this._calendar.weekDay(this)},extraInfo:function(){return this._calendar.extraInfo(this)},add:function(t,e){return this._calendar.add(this,t,e)},set:function(t,e){return this._calendar.set(this,t,e)},compareTo:function(t){if(this._calendar.name!==t._calendar.name)throw(c.local.differentCalendars||c.regionalOptions[\"\"].differentCalendars).replace(/\\{0\\}/,this._calendar.local.name).replace(/\\{1\\}/,t._calendar.local.name);var e=this._year!==t._year?this._year-t._year:this._month!==t._month?this.monthOfYear()-t.monthOfYear():this._day-t._day;return 0===e?0:e<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(t){return this._calendar.fromJD(t)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(t){return this._calendar.fromJSDate(t)},toString:function(){return(this.year()<0?\"-\":\"\")+o(Math.abs(this.year()),4)+\"-\"+o(this.month(),2)+\"-\"+o(this.day(),2)}}),n(s.prototype,{_validateLevel:0,newDate:function(t,e,r){return null==t?this.today():(t.year&&(this._validate(t,e,r,c.local.invalidDate||c.regionalOptions[\"\"].invalidDate),r=t.day(),e=t.month(),t=t.year()),new a(this,t,e,r))},today:function(){return this.fromJSDate(new Date)},epoch:function(t){return this._validate(t,this.minMonth,this.minDay,c.local.invalidYear||c.regionalOptions[\"\"].invalidYear).year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(t){var e=this._validate(t,this.minMonth,this.minDay,c.local.invalidYear||c.regionalOptions[\"\"].invalidYear);return(e.year()<0?\"-\":\"\")+o(Math.abs(e.year()),4)},monthsInYear:function(t){return this._validate(t,this.minMonth,this.minDay,c.local.invalidYear||c.regionalOptions[\"\"].invalidYear),12},monthOfYear:function(t,e){var r=this._validate(t,e,this.minDay,c.local.invalidMonth||c.regionalOptions[\"\"].invalidMonth);return(r.month()+this.monthsInYear(r)-this.firstMonth)%this.monthsInYear(r)+this.minMonth},fromMonthOfYear:function(t,e){var r=(e+this.firstMonth-2*this.minMonth)%this.monthsInYear(t)+this.minMonth;return this._validate(t,r,this.minDay,c.local.invalidMonth||c.regionalOptions[\"\"].invalidMonth),r},daysInYear:function(t){var e=this._validate(t,this.minMonth,this.minDay,c.local.invalidYear||c.regionalOptions[\"\"].invalidYear);return this.leapYear(e)?366:365},dayOfYear:function(t,e,r){var n=this._validate(t,e,r,c.local.invalidDate||c.regionalOptions[\"\"].invalidDate);return n.toJD()-this.newDate(n.year(),this.fromMonthOfYear(n.year(),this.minMonth),this.minDay).toJD()+1},daysInWeek:function(){return 7},dayOfWeek:function(t,e,r){var n=this._validate(t,e,r,c.local.invalidDate||c.regionalOptions[\"\"].invalidDate);return(Math.floor(this.toJD(n))+2)%this.daysInWeek()},extraInfo:function(t,e,r){return this._validate(t,e,r,c.local.invalidDate||c.regionalOptions[\"\"].invalidDate),{}},add:function(t,e,r){return this._validate(t,this.minMonth,this.minDay,c.local.invalidDate||c.regionalOptions[\"\"].invalidDate),this._correctAdd(t,this._add(t,e,r),e,r)},_add:function(t,e,r){if(this._validateLevel++,\"d\"===r||\"w\"===r){var n=t.toJD()+e*(\"w\"===r?this.daysInWeek():1),i=t.calendar().fromJD(n);return this._validateLevel--,[i.year(),i.month(),i.day()]}try{var a=t.year()+(\"y\"===r?e:0),o=t.monthOfYear()+(\"m\"===r?e:0);i=t.day(),\"y\"===r?(t.month()!==this.fromMonthOfYear(a,o)&&(o=this.newDate(a,t.month(),this.minDay).monthOfYear()),o=Math.min(o,this.monthsInYear(a)),i=Math.min(i,this.daysInMonth(a,this.fromMonthOfYear(a,o)))):\"m\"===r&&(function(t){for(;o<t.minMonth;)a--,o+=t.monthsInYear(a);for(var e=t.monthsInYear(a);o>e-1+t.minMonth;)a++,o-=e,e=t.monthsInYear(a)}(this),i=Math.min(i,this.daysInMonth(a,this.fromMonthOfYear(a,o))));var s=[a,this.fromMonthOfYear(a,o),i];return this._validateLevel--,s}catch(t){throw this._validateLevel--,t}},_correctAdd:function(t,e,r,n){if(!(this.hasYearZero||\"y\"!==n&&\"m\"!==n||0!==e[0]&&t.year()>0==e[0]>0)){var i={y:[1,1,\"y\"],m:[1,this.monthsInYear(-1),\"m\"],w:[this.daysInWeek(),this.daysInYear(-1),\"d\"],d:[1,this.daysInYear(-1),\"d\"]}[n],a=r<0?-1:1;e=this._add(t,r*i[0]+a*i[1],i[2])}return t.date(e[0],e[1],e[2])},set:function(t,e,r){this._validate(t,this.minMonth,this.minDay,c.local.invalidDate||c.regionalOptions[\"\"].invalidDate);var n=\"y\"===r?e:t.year(),i=\"m\"===r?e:t.month(),a=\"d\"===r?e:t.day();return\"y\"!==r&&\"m\"!==r||(a=Math.min(a,this.daysInMonth(n,i))),t.date(n,i,a)},isValid:function(t,e,r){this._validateLevel++;var n=this.hasYearZero||0!==t;if(n){var i=this.newDate(t,e,this.minDay);n=e>=this.minMonth&&e-this.minMonth<this.monthsInYear(i)&&r>=this.minDay&&r-this.minDay<this.daysInMonth(i)}return this._validateLevel--,n},toJSDate:function(t,e,r){var n=this._validate(t,e,r,c.local.invalidDate||c.regionalOptions[\"\"].invalidDate);return c.instance().fromJD(this.toJD(n)).toJSDate()},fromJSDate:function(t){return this.fromJD(c.instance().fromJSDate(t).toJD())},_validate:function(t,e,r,n){if(t.year){if(0===this._validateLevel&&this.name!==t.calendar().name)throw(c.local.differentCalendars||c.regionalOptions[\"\"].differentCalendars).replace(/\\{0\\}/,this.local.name).replace(/\\{1\\}/,t.calendar().local.name);return t}try{if(this._validateLevel++,1===this._validateLevel&&!this.isValid(t,e,r))throw n.replace(/\\{0\\}/,this.local.name);var i=this.newDate(t,e,r);return this._validateLevel--,i}catch(t){throw this._validateLevel--,t}}}),l.prototype=new s,n(l.prototype,{name:\"Gregorian\",jdEpoch:1721425.5,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{\"\":{name:\"Gregorian\",epochs:[\"BCE\",\"CE\"],monthNames:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],monthNamesShort:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],dayNames:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],dayNamesShort:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],dayNamesMin:[\"Su\",\"Mo\",\"Tu\",\"We\",\"Th\",\"Fr\",\"Sa\"],digits:null,dateFormat:\"mm/dd/yyyy\",firstDay:0,isRTL:!1}},leapYear:function(t){var e=this._validate(t,this.minMonth,this.minDay,c.local.invalidYear||c.regionalOptions[\"\"].invalidYear);return(t=e.year()+(e.year()<0?1:0))%4==0&&(t%100!=0||t%400==0)},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(4-(n.dayOfWeek()||7),\"d\"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(t,e){var r=this._validate(t,e,this.minDay,c.local.invalidMonth||c.regionalOptions[\"\"].invalidMonth);return this.daysPerMonth[r.month()-1]+(2===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(t,e,r){return(this.dayOfWeek(t,e,r)||7)<6},toJD:function(t,e,r){var n=this._validate(t,e,r,c.local.invalidDate||c.regionalOptions[\"\"].invalidDate);t=n.year(),e=n.month(),r=n.day(),t<0&&t++,e<3&&(e+=12,t--);var i=Math.floor(t/100),a=2-i+Math.floor(i/4);return Math.floor(365.25*(t+4716))+Math.floor(30.6001*(e+1))+r+a-1524.5},fromJD:function(t){var e=Math.floor(t+.5),r=Math.floor((e-1867216.25)/36524.25),n=1524+(r=e+1+r-Math.floor(r/4)),i=Math.floor((n-122.1)/365.25),a=Math.floor(365.25*i),o=Math.floor((n-a)/30.6001),s=n-a-Math.floor(30.6001*o),l=o-(o>13.5?13:1),c=i-(l>2.5?4716:4715);return c<=0&&c--,this.newDate(c,l,s)},toJSDate:function(t,e,r){var n=this._validate(t,e,r,c.local.invalidDate||c.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(t){return this.newDate(t.getFullYear(),t.getMonth()+1,t.getDate())}});var c=t.exports=new i;c.cdate=a,c.baseCalendar=s,c.calendars.gregorian=l},23428:function(t,e,r){var n=r(27976),i=r(24453);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(t,e){return\"string\"!=typeof t&&(e=t,t=\"\"),this._calendar.formatDate(t||\"\",this,e)}}),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(t,e,r){if(\"string\"!=typeof t&&(r=e,e=t,t=\"\"),!e)return\"\";if(e.calendar()!==this)throw i.local.invalidFormat||i.regionalOptions[\"\"].invalidFormat;t=t||this.local.dateFormat;for(var n,a,o,s=(r=r||{}).dayNamesShort||this.local.dayNamesShort,l=r.dayNames||this.local.dayNames,c=r.monthNumbers||this.local.monthNumbers,u=r.monthNamesShort||this.local.monthNamesShort,h=r.monthNames||this.local.monthNames,f=(r.calculateWeek||this.local.calculateWeek,function(e,r){for(var n=1;b+n<t.length&&t.charAt(b+n)===e;)n++;return b+=n-1,Math.floor(n/(r||1))>1}),p=function(t,e,r,n){var i=\"\"+e;if(f(t,n))for(;i.length<r;)i=\"0\"+i;return i},d=this,m=function(t){return\"function\"==typeof c?c.call(d,t,f(\"m\")):v(p(\"m\",t.month(),2))},g=function(t,e){return e?\"function\"==typeof h?h.call(d,t):h[t.month()-d.minMonth]:\"function\"==typeof u?u.call(d,t):u[t.month()-d.minMonth]},y=this.local.digits,v=function(t){return r.localNumbers&&y?y(t):t},x=\"\",_=!1,b=0;b<t.length;b++)if(_)\"'\"!==t.charAt(b)||f(\"'\")?x+=t.charAt(b):_=!1;else switch(t.charAt(b)){case\"d\":x+=v(p(\"d\",e.day(),2));break;case\"D\":x+=(\"D\",n=e.dayOfWeek(),a=s,o=l,f(\"D\")?o[n]:a[n]);break;case\"o\":x+=p(\"o\",e.dayOfYear(),3);break;case\"w\":x+=p(\"w\",e.weekOfYear(),2);break;case\"m\":x+=m(e);break;case\"M\":x+=g(e,f(\"M\"));break;case\"y\":x+=f(\"y\",2)?e.year():(e.year()%100<10?\"0\":\"\")+e.year()%100;break;case\"Y\":f(\"Y\",2),x+=e.formatYear();break;case\"J\":x+=e.toJD();break;case\"@\":x+=(e.toJD()-this.UNIX_EPOCH)*this.SECS_PER_DAY;break;case\"!\":x+=(e.toJD()-this.TICKS_EPOCH)*this.TICKS_PER_DAY;break;case\"'\":f(\"'\")?x+=\"'\":_=!0;break;default:x+=t.charAt(b)}return x},parseDate:function(t,e,r){if(null==e)throw i.local.invalidArguments||i.regionalOptions[\"\"].invalidArguments;if(\"\"===(e=\"object\"==typeof e?e.toString():e+\"\"))return null;t=t||this.local.dateFormat;var n=(r=r||{}).shortYearCutoff||this.shortYearCutoff;n=\"string\"!=typeof n?n:this.today().year()%100+parseInt(n,10);for(var a=r.dayNamesShort||this.local.dayNamesShort,o=r.dayNames||this.local.dayNames,s=r.parseMonth||this.local.parseMonth,l=r.monthNumbers||this.local.monthNumbers,c=r.monthNamesShort||this.local.monthNamesShort,u=r.monthNames||this.local.monthNames,h=-1,f=-1,p=-1,d=-1,m=-1,g=!1,y=!1,v=function(e,r){for(var n=1;M+n<t.length&&t.charAt(M+n)===e;)n++;return M+=n-1,Math.floor(n/(r||1))>1},x=function(t,r){var n=v(t,r),a=[2,3,n?4:2,n?4:2,10,11,20][\"oyYJ@!\".indexOf(t)+1],o=new RegExp(\"^-?\\\\d{1,\"+a+\"}\"),s=e.substring(A).match(o);if(!s)throw(i.local.missingNumberAt||i.regionalOptions[\"\"].missingNumberAt).replace(/\\{0\\}/,A);return A+=s[0].length,parseInt(s[0],10)},_=this,b=function(){if(\"function\"==typeof l){v(\"m\");var t=l.call(_,e.substring(A));return A+=t.length,t}return x(\"m\")},w=function(t,r,n,a){for(var o=v(t,a)?n:r,s=0;s<o.length;s++)if(e.substr(A,o[s].length).toLowerCase()===o[s].toLowerCase())return A+=o[s].length,s+_.minMonth;throw(i.local.unknownNameAt||i.regionalOptions[\"\"].unknownNameAt).replace(/\\{0\\}/,A)},T=function(){if(\"function\"==typeof u){var t=v(\"M\")?u.call(_,e.substring(A)):c.call(_,e.substring(A));return A+=t.length,t}return w(\"M\",c,u)},k=function(){if(e.charAt(A)!==t.charAt(M))throw(i.local.unexpectedLiteralAt||i.regionalOptions[\"\"].unexpectedLiteralAt).replace(/\\{0\\}/,A);A++},A=0,M=0;M<t.length;M++)if(y)\"'\"!==t.charAt(M)||v(\"'\")?k():y=!1;else switch(t.charAt(M)){case\"d\":d=x(\"d\");break;case\"D\":w(\"D\",a,o);break;case\"o\":m=x(\"o\");break;case\"w\":x(\"w\");break;case\"m\":p=b();break;case\"M\":p=T();break;case\"y\":var S=M;g=!v(\"y\",2),M=S,f=x(\"y\",2);break;case\"Y\":f=x(\"Y\",2);break;case\"J\":h=x(\"J\")+.5,\".\"===e.charAt(A)&&(A++,x(\"J\"));break;case\"@\":h=x(\"@\")/this.SECS_PER_DAY+this.UNIX_EPOCH;break;case\"!\":h=x(\"!\")/this.TICKS_PER_DAY+this.TICKS_EPOCH;break;case\"*\":A=e.length;break;case\"'\":v(\"'\")?k():y=!0;break;default:k()}if(A<e.length)throw i.local.unexpectedText||i.regionalOptions[\"\"].unexpectedText;if(-1===f?f=this.today().year():f<100&&g&&(f+=-1===n?1900:this.today().year()-this.today().year()%100-(f<=n?0:100)),\"string\"==typeof p&&(p=s.call(this,f,p)),m>-1){p=1,d=m;for(var E=this.daysInMonth(f,p);d>E;E=this.daysInMonth(f,p))p++,d-=E}return h>-1?this.fromJD(h):this.newDate(f,p,d)},determineDate:function(t,e,r,n,i){r&&\"object\"!=typeof r&&(i=n,n=r,r=null),\"string\"!=typeof n&&(i=n,n=\"\");var a=this;return e=e?e.newDate():null,null==t?e:\"string\"==typeof t?function(t){try{return a.parseDate(n,t,i)}catch(t){}for(var e=((t=t.toLowerCase()).match(/^c/)&&r?r.newDate():null)||a.today(),o=/([+-]?[0-9]+)\\s*(d|w|m|y)?/g,s=o.exec(t);s;)e.add(parseInt(s[1],10),s[2]||\"d\"),s=o.exec(t);return e}(t):\"number\"==typeof t?isNaN(t)||t===1/0||t===-1/0?e:a.today().add(t,\"d\"):a.newDate(t)}})},96144:function(t,e,r){\"use strict\";r.r(e);var n=r(85072),i=r.n(n),a=r(97825),o=r.n(a),s=r(77659),l=r.n(s),c=r(55056),u=r.n(c),h=r(10540),f=r.n(h),p=r(41113),d=r.n(p),m=r(5955),g={};g.styleTagTransform=d(),g.setAttributes=u(),g.insert=l().bind(null,\"head\"),g.domAPI=o(),g.insertStyleElement=f(),i()(m.A,g),e.default=m.A&&m.A.locals?m.A.locals:void 0},85072:function(t){\"use strict\";var e=[];function r(t){for(var r=-1,n=0;n<e.length;n++)if(e[n].identifier===t){r=n;break}return r}function n(t,n){for(var a={},o=[],s=0;s<t.length;s++){var l=t[s],c=n.base?l[0]+n.base:l[0],u=a[c]||0,h=\"\".concat(c,\" \").concat(u);a[c]=u+1;var f=r(h),p={css:l[1],media:l[2],sourceMap:l[3],supports:l[4],layer:l[5]};if(-1!==f)e[f].references++,e[f].updater(p);else{var d=i(p,n);n.byIndex=s,e.splice(s,0,{identifier:h,updater:d,references:1})}o.push(h)}return o}function i(t,e){var r=e.domAPI(e);return r.update(t),function(e){if(e){if(e.css===t.css&&e.media===t.media&&e.sourceMap===t.sourceMap&&e.supports===t.supports&&e.layer===t.layer)return;r.update(t=e)}else r.remove()}}t.exports=function(t,i){var a=n(t=t||[],i=i||{});return function(t){t=t||[];for(var o=0;o<a.length;o++){var s=r(a[o]);e[s].references--}for(var l=n(t,i),c=0;c<a.length;c++){var u=r(a[c]);0===e[u].references&&(e[u].updater(),e.splice(u,1))}a=l}}},77659:function(t){\"use strict\";var e={};t.exports=function(t,r){var n=function(t){if(void 0===e[t]){var r=document.querySelector(t);if(window.HTMLIFrameElement&&r instanceof window.HTMLIFrameElement)try{r=r.contentDocument.head}catch(t){r=null}e[t]=r}return e[t]}(t);if(!n)throw new Error(\"Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.\");n.appendChild(r)}},10540:function(t){\"use strict\";t.exports=function(t){var e=document.createElement(\"style\");return t.setAttributes(e,t.attributes),t.insert(e,t.options),e}},55056:function(t,e,r){\"use strict\";t.exports=function(t){var e=r.nc;e&&t.setAttribute(\"nonce\",e)}},97825:function(t){\"use strict\";t.exports=function(t){if(\"undefined\"==typeof document)return{update:function(){},remove:function(){}};var e=t.insertStyleElement(t);return{update:function(r){!function(t,e,r){var n=\"\";r.supports&&(n+=\"@supports (\".concat(r.supports,\") {\")),r.media&&(n+=\"@media \".concat(r.media,\" {\"));var i=void 0!==r.layer;i&&(n+=\"@layer\".concat(r.layer.length>0?\" \".concat(r.layer):\"\",\" {\")),n+=r.css,i&&(n+=\"}\"),r.media&&(n+=\"}\"),r.supports&&(n+=\"}\");var a=r.sourceMap;a&&\"undefined\"!=typeof btoa&&(n+=\"\\n/*# sourceMappingURL=data:application/json;base64,\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(a)))),\" */\")),e.styleTagTransform(n,t,e.options)}(e,t,r)},remove:function(){!function(t){if(null===t.parentNode)return!1;t.parentNode.removeChild(t)}(e)}}}},41113:function(t){\"use strict\";t.exports=function(t,e){if(e.styleSheet)e.styleSheet.cssText=t;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(t))}}},25446:function(t){\"use strict\";t.exports=\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2722%27 height=%2722%27 fill=%27%23333%27 viewBox=%270 0 22 22%27%3E%3Cpath d=%27m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0%27/%3E%3C/svg%3E\"},56694:function(t){\"use strict\";t.exports=\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2722%27 height=%2722%27 fill=%27%2333b5e5%27 viewBox=%270 0 22 22%27%3E%3Cpath d=%27m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0%27/%3E%3C/svg%3E\"},26117:function(t){\"use strict\";t.exports=\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2724%27 height=%2724%27 fill-rule=%27evenodd%27 viewBox=%270 0 20 20%27%3E%3Cpath d=%27M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0%27/%3E%3C/svg%3E\"},66311:function(t){\"use strict\";t.exports=\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2724%27 height=%2724%27 fill=%27%23fff%27 fill-rule=%27evenodd%27 viewBox=%270 0 20 20%27%3E%3Cpath d=%27M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0%27/%3E%3C/svg%3E\"},24420:function(t){\"use strict\";t.exports=\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2729%27 height=%2729%27 fill=%27%23333%27 viewBox=%270 0 20 20%27%3E%3Cpath d=%27M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7%27/%3E%3Ccircle cx=%2710%27 cy=%2710%27 r=%272%27/%3E%3C/svg%3E\"},77035:function(t){\"use strict\";t.exports=\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2729%27 height=%2729%27 fill=%27%23333%27 viewBox=%270 0 29 29%27%3E%3Cpath d=%27M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z%27/%3E%3C/svg%3E\"},43470:function(t){\"use strict\";t.exports=\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2729%27 height=%2729%27 fill=%27%23333%27 viewBox=%270 0 29 29%27%3E%3Cpath d=%27M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5%27/%3E%3C/svg%3E\"},13490:function(t){\"use strict\";t.exports=\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2729%27 height=%2729%27 fill=%27%23333%27 viewBox=%270 0 29 29%27%3E%3Cpath d=%27M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z%27/%3E%3C/svg%3E\"},80216:function(t){\"use strict\";t.exports=\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2729%27 height=%2729%27 fill=%27%23333%27 viewBox=%270 0 29 29%27%3E%3Cpath d=%27m10.5 14 4-8 4 8z%27/%3E%3Cpath fill=%27%23ccc%27 d=%27m10.5 16 4 8 4-8z%27/%3E%3C/svg%3E\"},47695:function(t){\"use strict\";t.exports=\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2729%27 height=%2729%27 fill=%27%2333b5e5%27 viewBox=%270 0 20 20%27%3E%3Cpath d=%27M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7%27/%3E%3C/svg%3E\"},92228:function(t){\"use strict\";t.exports=\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2729%27 height=%2729%27 fill=%27%2333b5e5%27 viewBox=%270 0 20 20%27%3E%3Cpath d=%27M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7%27/%3E%3Ccircle cx=%2710%27 cy=%2710%27 r=%272%27/%3E%3C/svg%3E\"},43737:function(t){\"use strict\";t.exports=\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2729%27 height=%2729%27 fill=%27%23666%27 viewBox=%270 0 20 20%27%3E%3Cpath d=%27M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7%27/%3E%3Ccircle cx=%2710%27 cy=%2710%27 r=%272%27/%3E%3Cpath fill=%27red%27 d=%27m14 5 1 1-9 9-1-1z%27/%3E%3C/svg%3E\"},48460:function(t){\"use strict\";t.exports=\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2729%27 height=%2729%27 fill=%27%23999%27 viewBox=%270 0 20 20%27%3E%3Cpath d=%27M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7%27/%3E%3Ccircle cx=%2710%27 cy=%2710%27 r=%272%27/%3E%3Cpath fill=%27red%27 d=%27m14 5 1 1-9 9-1-1z%27/%3E%3C/svg%3E\"},75796:function(t){\"use strict\";t.exports=\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2729%27 height=%2729%27 fill=%27%23aaa%27 viewBox=%270 0 20 20%27%3E%3Cpath d=%27M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7%27/%3E%3Ccircle cx=%2710%27 cy=%2710%27 r=%272%27/%3E%3Cpath fill=%27red%27 d=%27m14 5 1 1-9 9-1-1z%27/%3E%3C/svg%3E\"},28869:function(t){\"use strict\";t.exports=\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2729%27 height=%2729%27 fill=%27%23e54e33%27 viewBox=%270 0 20 20%27%3E%3Cpath d=%27M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7%27/%3E%3C/svg%3E\"},9819:function(t){\"use strict\";t.exports=\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2729%27 height=%2729%27 fill=%27%23e58978%27 viewBox=%270 0 20 20%27%3E%3Cpath d=%27M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7%27/%3E%3Ccircle cx=%2710%27 cy=%2710%27 r=%272%27/%3E%3C/svg%3E\"},30557:function(t){\"use strict\";t.exports=\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2729%27 height=%2729%27 fill=%27%23fff%27 viewBox=%270 0 20 20%27%3E%3Cpath d=%27M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7%27/%3E%3Ccircle cx=%2710%27 cy=%2710%27 r=%272%27/%3E%3C/svg%3E\"},68164:function(t){\"use strict\";t.exports=\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2729%27 height=%2729%27 fill=%27%23fff%27 viewBox=%270 0 29 29%27%3E%3Cpath d=%27M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z%27/%3E%3C/svg%3E\"},64665:function(t){\"use strict\";t.exports=\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2729%27 height=%2729%27 fill=%27%23fff%27 viewBox=%270 0 29 29%27%3E%3Cpath d=%27M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5%27/%3E%3C/svg%3E\"},91413:function(t){\"use strict\";t.exports=\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2729%27 height=%2729%27 fill=%27%23fff%27 viewBox=%270 0 29 29%27%3E%3Cpath d=%27M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z%27/%3E%3C/svg%3E\"},13913:function(t){\"use strict\";t.exports=\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2729%27 height=%2729%27 fill=%27%23fff%27 viewBox=%270 0 29 29%27%3E%3Cpath d=%27M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z%27/%3E%3C/svg%3E\"},61907:function(t){\"use strict\";t.exports=\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2729%27 height=%2729%27 fill=%27%23fff%27 viewBox=%270 0 29 29%27%3E%3Cpath d=%27m10.5 14 4-8 4 8z%27/%3E%3Cpath fill=%27%23ccc%27 d=%27m10.5 16 4 8 4-8z%27/%3E%3C/svg%3E\"},56539:function(t){\"use strict\";t.exports=\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2729%27 height=%2729%27 viewBox=%270 0 20 20%27%3E%3Cpath d=%27M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7%27/%3E%3Ccircle cx=%2710%27 cy=%2710%27 r=%272%27/%3E%3C/svg%3E\"},4890:function(t){\"use strict\";t.exports=\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2729%27 height=%2729%27 viewBox=%270 0 29 29%27%3E%3Cpath d=%27M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13z%27/%3E%3C/svg%3E\"},13363:function(t){\"use strict\";t.exports=\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2729%27 height=%2729%27 viewBox=%270 0 29 29%27%3E%3Cpath d=%27M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5%27/%3E%3C/svg%3E\"},47603:function(t){\"use strict\";t.exports=\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2729%27 height=%2729%27 viewBox=%270 0 29 29%27%3E%3Cpath d=%27M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z%27/%3E%3C/svg%3E\"},64643:function(t){\"use strict\";t.exports=\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2729%27 height=%2729%27 viewBox=%270 0 29 29%27%3E%3Cpath d=%27M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z%27/%3E%3C/svg%3E\"},68605:function(t){\"use strict\";t.exports=\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2729%27 height=%2729%27 viewBox=%270 0 29 29%27%3E%3Cpath d=%27m10.5 14 4-8 4 8z%27/%3E%3Cpath fill=%27%23ccc%27 d=%27m10.5 16 4 8 4-8z%27/%3E%3C/svg%3E\"},47914:function(t){\"use strict\";t.exports=\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2788%27 height=%2723%27 fill=%27none%27%3E%3Cpath fill=%27%23000%27 fill-opacity=%27.4%27 fill-rule=%27evenodd%27 d=%27M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z%27/%3E%3Cpath fill=%27%23fff%27 d=%27m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z%27/%3E%3Cpath fill=%27%23e1e3e9%27 d=%27M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z%27/%3E%3Cpath d=%27M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z%27 style=%27fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001%27/%3E%3Cg style=%27stroke-width:1.12603545%27%3E%3Cpath d=%27M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668%27 style=%27color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto%27 transform=%27translate%2815.553 2.85%29scale%28.88807%29%27/%3E%3Cpath d=%27M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3%27 style=%27clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4%27 transform=%27translate%2815.553 2.85%29scale%28.88807%29%27/%3E%3Cpath d=%27M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z%27 style=%27clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4%27 transform=%27translate%2815.553 2.85%29scale%28.88807%29%27/%3E%3C/g%3E%3C/svg%3E\"},63779:function(){},77199:function(){},61990:function(t,e,r){\"use strict\";Object.defineProperty(e,\"__esModule\",{value:!0});var n=r(85846),i=r(66030);function a(t){return i.geomReduce.call(void 0,t,((t,e)=>t+function(t){let e,r=0;switch(t.type){case\"Polygon\":return o(t.coordinates);case\"MultiPolygon\":for(e=0;e<t.coordinates.length;e++)r+=o(t.coordinates[e]);return r;case\"Point\":case\"MultiPoint\":case\"LineString\":case\"MultiLineString\":return 0}return 0}(e)),0)}function o(t){let e=0;if(t&&t.length>0){e+=Math.abs(c(t[0]));for(let r=1;r<t.length;r++)e-=Math.abs(c(t[r]))}return e}var s=n.earthRadius*n.earthRadius/2,l=Math.PI/180;function c(t){const e=t.length-1;if(e<=2)return 0;let r=0,n=0;for(;n<e;){const i=t[n],a=t[n+1===e?0:n+1],o=t[n+2>=e?(n+2)%e:n+2],s=i[0]*l,c=a[1]*l;r+=(o[0]*l-s)*Math.sin(c),n++}return r*s}var u=a;e.area=a,e.default=u},25368:function(t,e,r){\"use strict\";Object.defineProperty(e,\"__esModule\",{value:!0});var n=r(66030);function i(t,e={}){if(null!=t.bbox&&!0!==e.recompute)return t.bbox;const r=[1/0,1/0,-1/0,-1/0];return n.coordEach.call(void 0,t,(t=>{r[0]>t[0]&&(r[0]=t[0]),r[1]>t[1]&&(r[1]=t[1]),r[2]<t[0]&&(r[2]=t[0]),r[3]<t[1]&&(r[3]=t[1])})),r}var a=i;e.bbox=i,e.default=a},30035:function(t,e,r){\"use strict\";Object.defineProperty(e,\"__esModule\",{value:!0});var n=r(85846),i=r(66030);function a(t,e={}){let r=0,a=0,o=0;return i.coordEach.call(void 0,t,(function(t){r+=t[0],a+=t[1],o++}),!0),n.point.call(void 0,[r/o,a/o],e.properties)}var o=a;e.centroid=a,e.default=o},85846:function(t,e){\"use strict\";Object.defineProperty(e,\"__esModule\",{value:!0});var r=6371008.8,n={centimeters:637100880,centimetres:637100880,degrees:360/(2*Math.PI),feet:20902260.511392,inches:39.37*r,kilometers:6371.0088,kilometres:6371.0088,meters:r,metres:r,miles:3958.761333810546,millimeters:6371008800,millimetres:6371008800,nauticalmiles:r/1852,radians:1,yards:6967335.223679999},i={acres:247105e-9,centimeters:1e4,centimetres:1e4,feet:10.763910417,hectares:1e-4,inches:1550.003100006,kilometers:1e-6,kilometres:1e-6,meters:1,metres:1,miles:386e-9,nauticalmiles:2.9155334959812285e-7,millimeters:1e6,millimetres:1e6,yards:1.195990046};function a(t,e,r={}){const n={type:\"Feature\"};return(0===r.id||r.id)&&(n.id=r.id),r.bbox&&(n.bbox=r.bbox),n.properties=e||{},n.geometry=t,n}function o(t,e,r={}){if(!t)throw new Error(\"coordinates is required\");if(!Array.isArray(t))throw new Error(\"coordinates must be an Array\");if(t.length<2)throw new Error(\"coordinates must be at least 2 numbers long\");if(!g(t[0])||!g(t[1]))throw new Error(\"coordinates must contain numbers\");return a({type:\"Point\",coordinates:t},e,r)}function s(t,e,r={}){for(const e of t){if(e.length<4)throw new Error(\"Each LinearRing of a Polygon must have 4 or more Positions.\");if(e[e.length-1].length!==e[0].length)throw new Error(\"First and last Position are not equivalent.\");for(let t=0;t<e[e.length-1].length;t++)if(e[e.length-1][t]!==e[0][t])throw new Error(\"First and last Position are not equivalent.\")}return a({type:\"Polygon\",coordinates:t},e,r)}function l(t,e,r={}){if(t.length<2)throw new Error(\"coordinates must be an array of two or more positions\");return a({type:\"LineString\",coordinates:t},e,r)}function c(t,e={}){const r={type:\"FeatureCollection\"};return e.id&&(r.id=e.id),e.bbox&&(r.bbox=e.bbox),r.features=t,r}function u(t,e,r={}){return a({type:\"MultiLineString\",coordinates:t},e,r)}function h(t,e,r={}){return a({type:\"MultiPoint\",coordinates:t},e,r)}function f(t,e,r={}){return a({type:\"MultiPolygon\",coordinates:t},e,r)}function p(t,e=\"kilometers\"){const r=n[e];if(!r)throw new Error(e+\" units is invalid\");return t*r}function d(t,e=\"kilometers\"){const r=n[e];if(!r)throw new Error(e+\" units is invalid\");return t/r}function m(t){return t%(2*Math.PI)*180/Math.PI}function g(t){return!isNaN(t)&&null!==t&&!Array.isArray(t)}e.areaFactors=i,e.azimuthToBearing=function(t){return(t%=360)>0?t>180?t-360:t:t<-180?t+360:t},e.bearingToAzimuth=function(t){let e=t%360;return e<0&&(e+=360),e},e.convertArea=function(t,e=\"meters\",r=\"kilometers\"){if(!(t>=0))throw new Error(\"area must be a positive number\");const n=i[e];if(!n)throw new Error(\"invalid original units\");const a=i[r];if(!a)throw new Error(\"invalid final units\");return t/n*a},e.convertLength=function(t,e=\"kilometers\",r=\"kilometers\"){if(!(t>=0))throw new Error(\"length must be a positive number\");return p(d(t,e),r)},e.degreesToRadians=function(t){return t%360*Math.PI/180},e.earthRadius=r,e.factors=n,e.feature=a,e.featureCollection=c,e.geometry=function(t,e,r={}){switch(t){case\"Point\":return o(e).geometry;case\"LineString\":return l(e).geometry;case\"Polygon\":return s(e).geometry;case\"MultiPoint\":return h(e).geometry;case\"MultiLineString\":return u(e).geometry;case\"MultiPolygon\":return f(e).geometry;default:throw new Error(t+\" is invalid\")}},e.geometryCollection=function(t,e,r={}){return a({type:\"GeometryCollection\",geometries:t},e,r)},e.isNumber=g,e.isObject=function(t){return null!==t&&\"object\"==typeof t&&!Array.isArray(t)},e.lengthToDegrees=function(t,e){return m(d(t,e))},e.lengthToRadians=d,e.lineString=l,e.lineStrings=function(t,e,r={}){return c(t.map((t=>l(t,e))),r)},e.multiLineString=u,e.multiPoint=h,e.multiPolygon=f,e.point=o,e.points=function(t,e,r={}){return c(t.map((t=>o(t,e))),r)},e.polygon=s,e.polygons=function(t,e,r={}){return c(t.map((t=>s(t,e))),r)},e.radiansToDegrees=m,e.radiansToLength=p,e.round=function(t,e=0){if(e&&!(e>=0))throw new Error(\"precision must be a positive number\");const r=Math.pow(10,e||0);return Math.round(t*r)/r},e.validateBBox=function(t){if(!t)throw new Error(\"bbox is required\");if(!Array.isArray(t))throw new Error(\"bbox must be an Array\");if(4!==t.length&&6!==t.length)throw new Error(\"bbox must be an Array of 4 or 6 numbers\");t.forEach((t=>{if(!g(t))throw new Error(\"bbox must only contain numbers\")}))},e.validateId=function(t){if(!t)throw new Error(\"id is required\");if(-1===[\"string\",\"number\"].indexOf(typeof t))throw new Error(\"id must be a number or a string\")}},66030:function(t,e,r){\"use strict\";Object.defineProperty(e,\"__esModule\",{value:!0});var n=r(85846);function i(t,e,r){if(null!==t)for(var n,a,o,s,l,c,u,h,f=0,p=0,d=t.type,m=\"FeatureCollection\"===d,g=\"Feature\"===d,y=m?t.features.length:1,v=0;v<y;v++){l=(h=!!(u=m?t.features[v].geometry:g?t.geometry:t)&&\"GeometryCollection\"===u.type)?u.geometries.length:1;for(var x=0;x<l;x++){var _=0,b=0;if(null!==(s=h?u.geometries[x]:u)){c=s.coordinates;var w=s.type;switch(f=!r||\"Polygon\"!==w&&\"MultiPolygon\"!==w?0:1,w){case null:break;case\"Point\":if(!1===e(c,p,v,_,b))return!1;p++,_++;break;case\"LineString\":case\"MultiPoint\":for(n=0;n<c.length;n++){if(!1===e(c[n],p,v,_,b))return!1;p++,\"MultiPoint\"===w&&_++}\"LineString\"===w&&_++;break;case\"Polygon\":case\"MultiLineString\":for(n=0;n<c.length;n++){for(a=0;a<c[n].length-f;a++){if(!1===e(c[n][a],p,v,_,b))return!1;p++}\"MultiLineString\"===w&&_++,\"Polygon\"===w&&b++}\"Polygon\"===w&&_++;break;case\"MultiPolygon\":for(n=0;n<c.length;n++){for(b=0,a=0;a<c[n].length;a++){for(o=0;o<c[n][a].length-f;o++){if(!1===e(c[n][a][o],p,v,_,b))return!1;p++}b++}_++}break;case\"GeometryCollection\":for(n=0;n<s.geometries.length;n++)if(!1===i(s.geometries[n],e,r))return!1;break;default:throw new Error(\"Unknown Geometry Type\")}}}}}function a(t,e){var r;switch(t.type){case\"FeatureCollection\":for(r=0;r<t.features.length&&!1!==e(t.features[r].properties,r);r++);break;case\"Feature\":e(t.properties,0)}}function o(t,e){if(\"Feature\"===t.type)e(t,0);else if(\"FeatureCollection\"===t.type)for(var r=0;r<t.features.length&&!1!==e(t.features[r],r);r++);}function s(t,e){var r,n,i,a,o,s,l,c,u,h,f=0,p=\"FeatureCollection\"===t.type,d=\"Feature\"===t.type,m=p?t.features.length:1;for(r=0;r<m;r++){for(s=p?t.features[r].geometry:d?t.geometry:t,c=p?t.features[r].properties:d?t.properties:{},u=p?t.features[r].bbox:d?t.bbox:void 0,h=p?t.features[r].id:d?t.id:void 0,o=(l=!!s&&\"GeometryCollection\"===s.type)?s.geometries.length:1,i=0;i<o;i++)if(null!==(a=l?s.geometries[i]:s))switch(a.type){case\"Point\":case\"LineString\":case\"MultiPoint\":case\"Polygon\":case\"MultiLineString\":case\"MultiPolygon\":if(!1===e(a,f,c,u,h))return!1;break;case\"GeometryCollection\":for(n=0;n<a.geometries.length;n++)if(!1===e(a.geometries[n],f,c,u,h))return!1;break;default:throw new Error(\"Unknown Geometry Type\")}else if(!1===e(null,f,c,u,h))return!1;f++}}function l(t,e){s(t,(function(t,r,i,a,o){var s,l=null===t?null:t.type;switch(l){case null:case\"Point\":case\"LineString\":case\"Polygon\":return!1!==e(n.feature.call(void 0,t,i,{bbox:a,id:o}),r,0)&&void 0}switch(l){case\"MultiPoint\":s=\"Point\";break;case\"MultiLineString\":s=\"LineString\";break;case\"MultiPolygon\":s=\"Polygon\"}for(var c=0;c<t.coordinates.length;c++){var u={type:s,coordinates:t.coordinates[c]};if(!1===e(n.feature.call(void 0,u,i),r,c))return!1}}))}function c(t,e){l(t,(function(t,r,a){var o=0;if(t.geometry){var s=t.geometry.type;if(\"Point\"!==s&&\"MultiPoint\"!==s){var l,c=0,u=0,h=0;return!1!==i(t,(function(i,s,f,p,d){if(void 0===l||r>c||p>u||d>h)return l=i,c=r,u=p,h=d,void(o=0);var m=n.lineString.call(void 0,[l,i],t.properties);if(!1===e(m,r,a,d,o))return!1;o++,l=i}))&&void 0}}}))}function u(t,e){if(!t)throw new Error(\"geojson is required\");l(t,(function(t,r,i){if(null!==t.geometry){var a=t.geometry.type,o=t.geometry.coordinates;switch(a){case\"LineString\":if(!1===e(t,r,i,0,0))return!1;break;case\"Polygon\":for(var s=0;s<o.length;s++)if(!1===e(n.lineString.call(void 0,o[s],t.properties),r,i,s))return!1}}}))}e.coordAll=function(t){var e=[];return i(t,(function(t){e.push(t)})),e},e.coordEach=i,e.coordReduce=function(t,e,r,n){var a=r;return i(t,(function(t,n,i,o,s){a=0===n&&void 0===r?t:e(a,t,n,i,o,s)}),n),a},e.featureEach=o,e.featureReduce=function(t,e,r){var n=r;return o(t,(function(t,i){n=0===i&&void 0===r?t:e(n,t,i)})),n},e.findPoint=function(t,e){if(e=e||{},!n.isObject.call(void 0,e))throw new Error(\"options is invalid\");var r,i=e.featureIndex||0,a=e.multiFeatureIndex||0,o=e.geometryIndex||0,s=e.coordIndex||0,l=e.properties;switch(t.type){case\"FeatureCollection\":i<0&&(i=t.features.length+i),l=l||t.features[i].properties,r=t.features[i].geometry;break;case\"Feature\":l=l||t.properties,r=t.geometry;break;case\"Point\":case\"MultiPoint\":return null;case\"LineString\":case\"Polygon\":case\"MultiLineString\":case\"MultiPolygon\":r=t;break;default:throw new Error(\"geojson is invalid\")}if(null===r)return null;var c=r.coordinates;switch(r.type){case\"Point\":return n.point.call(void 0,c,l,e);case\"MultiPoint\":return a<0&&(a=c.length+a),n.point.call(void 0,c[a],l,e);case\"LineString\":return s<0&&(s=c.length+s),n.point.call(void 0,c[s],l,e);case\"Polygon\":return o<0&&(o=c.length+o),s<0&&(s=c[o].length+s),n.point.call(void 0,c[o][s],l,e);case\"MultiLineString\":return a<0&&(a=c.length+a),s<0&&(s=c[a].length+s),n.point.call(void 0,c[a][s],l,e);case\"MultiPolygon\":return a<0&&(a=c.length+a),o<0&&(o=c[a].length+o),s<0&&(s=c[a][o].length-s),n.point.call(void 0,c[a][o][s],l,e)}throw new Error(\"geojson is invalid\")},e.findSegment=function(t,e){if(e=e||{},!n.isObject.call(void 0,e))throw new Error(\"options is invalid\");var r,i=e.featureIndex||0,a=e.multiFeatureIndex||0,o=e.geometryIndex||0,s=e.segmentIndex||0,l=e.properties;switch(t.type){case\"FeatureCollection\":i<0&&(i=t.features.length+i),l=l||t.features[i].properties,r=t.features[i].geometry;break;case\"Feature\":l=l||t.properties,r=t.geometry;break;case\"Point\":case\"MultiPoint\":return null;case\"LineString\":case\"Polygon\":case\"MultiLineString\":case\"MultiPolygon\":r=t;break;default:throw new Error(\"geojson is invalid\")}if(null===r)return null;var c=r.coordinates;switch(r.type){case\"Point\":case\"MultiPoint\":return null;case\"LineString\":return s<0&&(s=c.length+s-1),n.lineString.call(void 0,[c[s],c[s+1]],l,e);case\"Polygon\":return o<0&&(o=c.length+o),s<0&&(s=c[o].length+s-1),n.lineString.call(void 0,[c[o][s],c[o][s+1]],l,e);case\"MultiLineString\":return a<0&&(a=c.length+a),s<0&&(s=c[a].length+s-1),n.lineString.call(void 0,[c[a][s],c[a][s+1]],l,e);case\"MultiPolygon\":return a<0&&(a=c.length+a),o<0&&(o=c[a].length+o),s<0&&(s=c[a][o].length-s-1),n.lineString.call(void 0,[c[a][o][s],c[a][o][s+1]],l,e)}throw new Error(\"geojson is invalid\")},e.flattenEach=l,e.flattenReduce=function(t,e,r){var n=r;return l(t,(function(t,i,a){n=0===i&&0===a&&void 0===r?t:e(n,t,i,a)})),n},e.geomEach=s,e.geomReduce=function(t,e,r){var n=r;return s(t,(function(t,i,a,o,s){n=0===i&&void 0===r?t:e(n,t,i,a,o,s)})),n},e.lineEach=u,e.lineReduce=function(t,e,r){var n=r;return u(t,(function(t,i,a,o){n=0===i&&void 0===r?t:e(n,t,i,a,o)})),n},e.propEach=a,e.propReduce=function(t,e,r){var n=r;return a(t,(function(t,i){n=0===i&&void 0===r?t:e(n,t,i)})),n},e.segmentEach=c,e.segmentReduce=function(t,e,r){var n=r,i=!1;return c(t,(function(t,a,o,s,l){n=!1===i&&void 0===r?t:e(n,t,a,o,s,l),i=!0})),n}},70085:function(t,e,r){\"use strict\";var n=[\"BigInt64Array\",\"BigUint64Array\",\"Float32Array\",\"Float64Array\",\"Int16Array\",\"Int32Array\",\"Int8Array\",\"Uint16Array\",\"Uint32Array\",\"Uint8Array\",\"Uint8ClampedArray\"],i=\"undefined\"==typeof globalThis?r.g:globalThis;t.exports=function(){for(var t=[],e=0;e<n.length;e++)\"function\"==typeof i[n[e]]&&(t[t.length]=n[e]);return t}},89380:function(t){t.exports=function(){\"use strict\";var t={},e={};function r(r,n,i){if(e[r]=i,\"index\"===r){var a=\"var sharedModule = {}; (\"+e.shared+\")(sharedModule); (\"+e.worker+\")(sharedModule);\",o={};return e.shared(o),e.index(t,o),\"undefined\"!=typeof window&&t.setWorkerUrl(window.URL.createObjectURL(new Blob([a],{type:\"text/javascript\"}))),t}}return r(\"shared\",0,(function(t){function e(t,e,r,n){return new(r||(r=Promise))((function(i,a){function o(t){try{l(n.next(t))}catch(t){a(t)}}function s(t){try{l(n.throw(t))}catch(t){a(t)}}function l(t){var e;t.done?i(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(o,s)}l((n=n.apply(t,e||[])).next())}))}function r(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,\"default\")?t.default:t}\"function\"==typeof SuppressedError&&SuppressedError;var n=i;function i(t,e){this.x=t,this.y=e}i.prototype={clone:function(){return new i(this.x,this.y)},add:function(t){return this.clone()._add(t)},sub:function(t){return this.clone()._sub(t)},multByPoint:function(t){return this.clone()._multByPoint(t)},divByPoint:function(t){return this.clone()._divByPoint(t)},mult:function(t){return this.clone()._mult(t)},div:function(t){return this.clone()._div(t)},rotate:function(t){return this.clone()._rotate(t)},rotateAround:function(t,e){return this.clone()._rotateAround(t,e)},matMult:function(t){return this.clone()._matMult(t)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(t){return this.x===t.x&&this.y===t.y},dist:function(t){return Math.sqrt(this.distSqr(t))},distSqr:function(t){var e=t.x-this.x,r=t.y-this.y;return e*e+r*r},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(t){return Math.atan2(this.y-t.y,this.x-t.x)},angleWith:function(t){return this.angleWithSep(t.x,t.y)},angleWithSep:function(t,e){return Math.atan2(this.x*e-this.y*t,this.x*t+this.y*e)},_matMult:function(t){var e=t[0]*this.x+t[1]*this.y,r=t[2]*this.x+t[3]*this.y;return this.x=e,this.y=r,this},_add:function(t){return this.x+=t.x,this.y+=t.y,this},_sub:function(t){return this.x-=t.x,this.y-=t.y,this},_mult:function(t){return this.x*=t,this.y*=t,this},_div:function(t){return this.x/=t,this.y/=t,this},_multByPoint:function(t){return this.x*=t.x,this.y*=t.y,this},_divByPoint:function(t){return this.x/=t.x,this.y/=t.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var t=this.y;return this.y=this.x,this.x=-t,this},_rotate:function(t){var e=Math.cos(t),r=Math.sin(t),n=e*this.x-r*this.y,i=r*this.x+e*this.y;return this.x=n,this.y=i,this},_rotateAround:function(t,e){var r=Math.cos(t),n=Math.sin(t),i=e.x+r*(this.x-e.x)-n*(this.y-e.y),a=e.y+n*(this.x-e.x)+r*(this.y-e.y);return this.x=i,this.y=a,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},i.convert=function(t){return t instanceof i?t:Array.isArray(t)?new i(t[0],t[1]):t};var a=r(n),o=s;function s(t,e,r,n){this.cx=3*t,this.bx=3*(r-t)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*e,this.by=3*(n-e)-this.cy,this.ay=1-this.cy-this.by,this.p1x=t,this.p1y=e,this.p2x=r,this.p2y=n}s.prototype={sampleCurveX:function(t){return((this.ax*t+this.bx)*t+this.cx)*t},sampleCurveY:function(t){return((this.ay*t+this.by)*t+this.cy)*t},sampleCurveDerivativeX:function(t){return(3*this.ax*t+2*this.bx)*t+this.cx},solveCurveX:function(t,e){if(void 0===e&&(e=1e-6),t<0)return 0;if(t>1)return 1;for(var r=t,n=0;n<8;n++){var i=this.sampleCurveX(r)-t;if(Math.abs(i)<e)return r;var a=this.sampleCurveDerivativeX(r);if(Math.abs(a)<1e-6)break;r-=i/a}var o=0,s=1;for(r=t,n=0;n<20&&(i=this.sampleCurveX(r),!(Math.abs(i-t)<e));n++)t>i?o=r:s=r,r=.5*(s-o)+o;return r},solve:function(t,e){return this.sampleCurveY(this.solveCurveX(t,e))}};var l=r(o);let c,u;function h(){return null==c&&(c=\"undefined\"!=typeof OffscreenCanvas&&new OffscreenCanvas(1,1).getContext(\"2d\")&&\"function\"==typeof createImageBitmap),c}function f(){if(null==u&&(u=!1,h())){const t=5,e=new OffscreenCanvas(t,t).getContext(\"2d\",{willReadFrequently:!0});if(e){for(let r=0;r<t*t;r++){const n=4*r;e.fillStyle=`rgb(${n},${n+1},${n+2})`,e.fillRect(r%t,Math.floor(r/t),1,1)}const r=e.getImageData(0,0,t,t).data;for(let e=0;e<t*t*4;e++)if(e%4!=3&&r[e]!==e){u=!0;break}}}return u||!1}function p(t,e,r,n){const i=new l(t,e,r,n);return t=>i.solve(t)}const d=p(.25,.1,.25,1);function m(t,e,r){return Math.min(r,Math.max(e,t))}function g(t,e,r){const n=r-e,i=((t-e)%n+n)%n+e;return i===e?r:i}function y(t,...e){for(const r of e)for(const e in r)t[e]=r[e];return t}let v=1;function x(t,e,r){const n={};for(const r in t)n[r]=e.call(this,t[r],r,t);return n}function _(t,e,r){const n={};for(const r in t)e.call(this,t[r],r,t)&&(n[r]=t[r]);return n}function b(t){return Array.isArray(t)?t.map(b):\"object\"==typeof t&&t?x(t,b):t}const w={};function T(t){w[t]||(\"undefined\"!=typeof console&&console.warn(t),w[t]=!0)}function k(t,e,r){return(r.y-t.y)*(e.x-t.x)>(e.y-t.y)*(r.x-t.x)}function A(t){return\"undefined\"!=typeof WorkerGlobalScope&&void 0!==t&&t instanceof WorkerGlobalScope}let M=null;function S(t){return\"undefined\"!=typeof ImageBitmap&&t instanceof ImageBitmap}const E=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=\";function C(t,r,n,i,a){return e(this,void 0,void 0,(function*(){if(\"undefined\"==typeof VideoFrame)throw new Error(\"VideoFrame not supported\");const e=new VideoFrame(t,{timestamp:0});try{const o=null==e?void 0:e.format;if(!o||!o.startsWith(\"BGR\")&&!o.startsWith(\"RGB\"))throw new Error(`Unrecognized format ${o}`);const s=o.startsWith(\"BGR\"),l=new Uint8ClampedArray(i*a*4);if(yield e.copyTo(l,function(t,e,r,n,i){const a=4*Math.max(-e,0),o=(Math.max(0,r)-r)*n*4+a,s=4*n,l=Math.max(0,e),c=Math.max(0,r);return{rect:{x:l,y:c,width:Math.min(t.width,e+n)-l,height:Math.min(t.height,r+i)-c},layout:[{offset:o,stride:s}]}}(t,r,n,i,a)),s)for(let t=0;t<l.length;t+=4){const e=l[t];l[t]=l[t+2],l[t+2]=e}return l}finally{e.close()}}))}let L,I;const P=\"AbortError\";function z(){return new Error(P)}const O={MAX_PARALLEL_IMAGE_REQUESTS:16,MAX_PARALLEL_IMAGE_REQUESTS_PER_FRAME:8,MAX_TILE_CACHE_ZOOM_LEVELS:5,REGISTERED_PROTOCOLS:{},WORKER_URL:\"\"};function D(t){return O.REGISTERED_PROTOCOLS[t.substring(0,t.indexOf(\"://\"))]}const R=\"global-dispatcher\";class F extends Error{constructor(t,e,r,n){super(`AJAXError: ${e} (${t}): ${r}`),this.status=t,this.statusText=e,this.url=r,this.body=n}}const B=()=>A(self)?self.worker&&self.worker.referrer:(\"blob:\"===window.location.protocol?window.parent:window).location.href;const N=function(t,r){if(/:\\/\\//.test(t.url)&&!/^https?:|^file:/.test(t.url)){const e=D(t.url);if(e)return e(t,r);if(A(self)&&self.worker&&self.worker.actor)return self.worker.actor.sendAsync({type:\"GR\",data:t,targetMapId:R},r)}if(n=t.url,!(/^file:/.test(n)||/^file:/.test(B())&&!/^\\w+:/.test(n))){if(fetch&&Request&&AbortController&&Object.prototype.hasOwnProperty.call(Request.prototype,\"signal\"))return function(t,r){return e(this,void 0,void 0,(function*(){const e=new Request(t.url,{method:t.method||\"GET\",body:t.body,credentials:t.credentials,headers:t.headers,cache:t.cache,referrer:B(),signal:r.signal});\"json\"!==t.type||e.headers.has(\"Accept\")||e.headers.set(\"Accept\",\"application/json\");const n=yield fetch(e);if(!n.ok){const e=yield n.blob();throw new F(n.status,n.statusText,t.url,e)}let i;i=\"arrayBuffer\"===t.type||\"image\"===t.type?n.arrayBuffer():\"json\"===t.type?n.json():n.text();const a=yield i;if(r.signal.aborted)throw z();return{data:a,cacheControl:n.headers.get(\"Cache-Control\"),expires:n.headers.get(\"Expires\")}}))}(t,r);if(A(self)&&self.worker&&self.worker.actor)return self.worker.actor.sendAsync({type:\"GR\",data:t,mustQueue:!0,targetMapId:R},r)}var n;return function(t,e){return new Promise(((r,n)=>{var i;const a=new XMLHttpRequest;a.open(t.method||\"GET\",t.url,!0),\"arrayBuffer\"!==t.type&&\"image\"!==t.type||(a.responseType=\"arraybuffer\");for(const e in t.headers)a.setRequestHeader(e,t.headers[e]);\"json\"===t.type&&(a.responseType=\"text\",(null===(i=t.headers)||void 0===i?void 0:i.Accept)||a.setRequestHeader(\"Accept\",\"application/json\")),a.withCredentials=\"include\"===t.credentials,a.onerror=()=>{n(new Error(a.statusText))},a.onload=()=>{if(!e.signal.aborted)if((a.status>=200&&a.status<300||0===a.status)&&null!==a.response){let e=a.response;if(\"json\"===t.type)try{e=JSON.parse(a.response)}catch(t){return void n(t)}r({data:e,cacheControl:a.getResponseHeader(\"Cache-Control\"),expires:a.getResponseHeader(\"Expires\")})}else{const e=new Blob([a.response],{type:a.getResponseHeader(\"Content-Type\")});n(new F(a.status,a.statusText,t.url,e))}},e.signal.addEventListener(\"abort\",(()=>{a.abort(),n(z())})),a.send(t.body)}))}(t,r)};function j(t){if(!t||t.indexOf(\"://\")<=0||0===t.indexOf(\"data:image/\")||0===t.indexOf(\"blob:\"))return!0;const e=new URL(t),r=window.location;return e.protocol===r.protocol&&e.host===r.host}function U(t,e,r){r[t]&&-1!==r[t].indexOf(e)||(r[t]=r[t]||[],r[t].push(e))}function V(t,e,r){if(r&&r[t]){const n=r[t].indexOf(e);-1!==n&&r[t].splice(n,1)}}class q{constructor(t,e={}){y(this,e),this.type=t}}class H extends q{constructor(t,e={}){super(\"error\",y({error:t},e))}}class G{on(t,e){return this._listeners=this._listeners||{},U(t,e,this._listeners),this}off(t,e){return V(t,e,this._listeners),V(t,e,this._oneTimeListeners),this}once(t,e){return e?(this._oneTimeListeners=this._oneTimeListeners||{},U(t,e,this._oneTimeListeners),this):new Promise((e=>this.once(t,e)))}fire(t,e){\"string\"==typeof t&&(t=new q(t,e||{}));const r=t.type;if(this.listens(r)){t.target=this;const e=this._listeners&&this._listeners[r]?this._listeners[r].slice():[];for(const r of e)r.call(this,t);const n=this._oneTimeListeners&&this._oneTimeListeners[r]?this._oneTimeListeners[r].slice():[];for(const e of n)V(r,e,this._oneTimeListeners),e.call(this,t);const i=this._eventedParent;i&&(y(t,\"function\"==typeof this._eventedParentData?this._eventedParentData():this._eventedParentData),i.fire(t))}else t instanceof H&&console.error(t.error);return this}listens(t){return this._listeners&&this._listeners[t]&&this._listeners[t].length>0||this._oneTimeListeners&&this._oneTimeListeners[t]&&this._oneTimeListeners[t].length>0||this._eventedParent&&this._eventedParent.listens(t)}setEventedParent(t,e){return this._eventedParent=t,this._eventedParentData=e,this}}var Z={$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\"},sky:{type:\"sky\"},projection:{type:\"projection\"},terrain:{type:\"terrain\"},sources:{required:!0,type:\"sources\"},sprite:{type:\"sprite\"},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\"},volatile:{type:\"boolean\",default:!1},\"*\":{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\"},volatile:{type:\"boolean\",default:!1},\"*\":{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:{},custom:{}},default:\"mapbox\"},redFactor:{type:\"number\",default:1},blueFactor:{type:\"number\",default:1},greenFactor:{type:\"number\",default:1},baseShift:{type:\"number\",default:0},volatile:{type:\"boolean\",default:!1},\"*\":{type:\"*\"}},source_geojson:{type:{required:!0,type:\"enum\",values:{geojson:{}}},data:{required:!0,type:\"*\"},maxzoom:{type:\"number\",default:18},attribution:{type:\"string\"},buffer:{type:\"number\",default:128,maximum:512,minimum:0},filter:{type:\"*\"},tolerance:{type:\"number\",default:.375},cluster:{type:\"boolean\",default:!1},clusterRadius:{type:\"number\",default:50,minimum:0},clusterMaxZoom:{type:\"number\"},clusterMinPoints:{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\",{\"!\":\"icon-overlap\"}],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-overlap\":{type:\"enum\",values:{never:{},always:{},cooperative:{}},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:\"padding\",default:[2],units:\"pixels\",requires:[\"icon-image\"],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"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:{},\"viewport-glyph\":{},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-variable-anchor-offset\":{type:\"variableAnchorOffsetCollection\",requires:[\"text-field\",{\"symbol-placement\":[\"point\"]}],expression:{interpolated:!0,parameters:[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"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\",{\"!\":\"text-overlap\"}],expression:{interpolated:!1,parameters:[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-overlap\":{type:\"enum\",values:{never:{},always:{},cooperative:{}},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\":{}}},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},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}},sky:{\"sky-color\":{type:\"color\",\"property-type\":\"data-constant\",default:\"#88C6FC\",expression:{interpolated:!0,parameters:[\"zoom\"]},transition:!0},\"horizon-color\":{type:\"color\",\"property-type\":\"data-constant\",default:\"#ffffff\",expression:{interpolated:!0,parameters:[\"zoom\"]},transition:!0},\"fog-color\":{type:\"color\",\"property-type\":\"data-constant\",default:\"#ffffff\",expression:{interpolated:!0,parameters:[\"zoom\"]},transition:!0},\"fog-ground-blend\":{type:\"number\",\"property-type\":\"data-constant\",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:[\"zoom\"]},transition:!0},\"horizon-fog-blend\":{type:\"number\",\"property-type\":\"data-constant\",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:[\"zoom\"]},transition:!0},\"sky-horizon-blend\":{type:\"number\",\"property-type\":\"data-constant\",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:[\"zoom\"]},transition:!0},\"atmosphere-blend\":{type:\"number\",\"property-type\":\"data-constant\",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:[\"zoom\"]},transition:!0}},terrain:{source:{type:\"string\",required:!0},exaggeration:{type:\"number\",minimum:0,default:1}},projection:{type:{type:\"enum\",default:\"mercator\",values:{mercator:{},globe:{}}}},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\"}}};const W=[\"type\",\"source\",\"source-layer\",\"minzoom\",\"maxzoom\",\"filter\",\"layout\"];function Y(t,e){const r={};for(const e in t)\"ref\"!==e&&(r[e]=t[e]);return W.forEach((t=>{t in e&&(r[t]=e[t])})),r}function X(t,e){if(Array.isArray(t)){if(!Array.isArray(e)||t.length!==e.length)return!1;for(let r=0;r<t.length;r++)if(!X(t[r],e[r]))return!1;return!0}if(\"object\"==typeof t&&null!==t&&null!==e){if(\"object\"!=typeof e)return!1;if(Object.keys(t).length!==Object.keys(e).length)return!1;for(const r in t)if(!X(t[r],e[r]))return!1;return!0}return t===e}function $(t,e){t.push(e)}function J(t,e,r){$(r,{command:\"addSource\",args:[t,e[t]]})}function K(t,e,r){$(e,{command:\"removeSource\",args:[t]}),r[t]=!0}function Q(t,e,r,n){K(t,r,n),J(t,e,r)}function tt(t,e,r){let n;for(n in t[r])if(Object.prototype.hasOwnProperty.call(t[r],n)&&\"data\"!==n&&!X(t[r][n],e[r][n]))return!1;for(n in e[r])if(Object.prototype.hasOwnProperty.call(e[r],n)&&\"data\"!==n&&!X(t[r][n],e[r][n]))return!1;return!0}function et(t,e,r,n,i,a){t=t||{},e=e||{};for(const o in t)Object.prototype.hasOwnProperty.call(t,o)&&(X(t[o],e[o])||r.push({command:a,args:[n,o,e[o],i]}));for(const o in e)Object.prototype.hasOwnProperty.call(e,o)&&!Object.prototype.hasOwnProperty.call(t,o)&&(X(t[o],e[o])||r.push({command:a,args:[n,o,e[o],i]}))}function rt(t){return t.id}function nt(t,e){return t[e.id]=e,t}class it{constructor(t,e,r,n){this.message=(t?`${t}: `:\"\")+r,n&&(this.identifier=n),null!=e&&e.__line__&&(this.line=e.__line__)}}function at(t,...e){for(const r of e)for(const e in r)t[e]=r[e];return t}class ot extends Error{constructor(t,e){super(e),this.message=e,this.key=t}}class st{constructor(t,e=[]){this.parent=t,this.bindings={};for(const[t,r]of e)this.bindings[t]=r}concat(t){return new st(this,t)}get(t){if(this.bindings[t])return this.bindings[t];if(this.parent)return this.parent.get(t);throw new Error(`${t} not found in scope.`)}has(t){return!!this.bindings[t]||!!this.parent&&this.parent.has(t)}}const lt={kind:\"null\"},ct={kind:\"number\"},ut={kind:\"string\"},ht={kind:\"boolean\"},ft={kind:\"color\"},pt={kind:\"object\"},dt={kind:\"value\"},mt={kind:\"collator\"},gt={kind:\"formatted\"},yt={kind:\"padding\"},vt={kind:\"resolvedImage\"},xt={kind:\"variableAnchorOffsetCollection\"};function _t(t,e){return{kind:\"array\",itemType:t,N:e}}function bt(t){if(\"array\"===t.kind){const e=bt(t.itemType);return\"number\"==typeof t.N?`array<${e}, ${t.N}>`:\"value\"===t.itemType.kind?\"array\":`array<${e}>`}return t.kind}const wt=[lt,ct,ut,ht,ft,gt,pt,_t(dt),yt,vt,xt];function Tt(t,e){if(\"error\"===e.kind)return null;if(\"array\"===t.kind){if(\"array\"===e.kind&&(0===e.N&&\"value\"===e.itemType.kind||!Tt(t.itemType,e.itemType))&&(\"number\"!=typeof t.N||t.N===e.N))return null}else{if(t.kind===e.kind)return null;if(\"value\"===t.kind)for(const t of wt)if(!Tt(t,e))return null}return`Expected ${bt(t)} but found ${bt(e)} instead.`}function kt(t,e){return e.some((e=>e.kind===t.kind))}function At(t,e){return e.some((e=>\"null\"===e?null===t:\"array\"===e?Array.isArray(t):\"object\"===e?t&&!Array.isArray(t)&&\"object\"==typeof t:e===typeof t))}function Mt(t,e){return\"array\"===t.kind&&\"array\"===e.kind?t.itemType.kind===e.itemType.kind&&\"number\"==typeof t.N:t.kind===e.kind}const St=.96422,Et=1,Ct=.82521,Lt=4/29,It=6/29,Pt=3*It*It,zt=It*It*It,Ot=Math.PI/180,Dt=180/Math.PI;function Rt(t){return(t%=360)<0&&(t+=360),t}function Ft([t,e,r,n]){let i,a;const o=Nt((.2225045*(t=Bt(t))+.7168786*(e=Bt(e))+.0606169*(r=Bt(r)))/Et);t===e&&e===r?i=a=o:(i=Nt((.4360747*t+.3850649*e+.1430804*r)/St),a=Nt((.0139322*t+.0971045*e+.7141733*r)/Ct));const s=116*o-16;return[s<0?0:s,500*(i-o),200*(o-a),n]}function Bt(t){return t<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function Nt(t){return t>zt?Math.pow(t,1/3):t/Pt+Lt}function jt([t,e,r,n]){let i=(t+16)/116,a=isNaN(e)?i:i+e/500,o=isNaN(r)?i:i-r/200;return i=Et*Vt(i),a=St*Vt(a),o=Ct*Vt(o),[Ut(3.1338561*a-1.6168667*i-.4906146*o),Ut(-.9787684*a+1.9161415*i+.033454*o),Ut(.0719453*a-.2289914*i+1.4052427*o),n]}function Ut(t){return(t=t<=.00304?12.92*t:1.055*Math.pow(t,1/2.4)-.055)<0?0:t>1?1:t}function Vt(t){return t>It?t*t*t:Pt*(t-Lt)}function qt(t){if(\"transparent\"===(t=t.toLowerCase().trim()))return[0,0,0,0];const e=Yt[t];if(e){const[t,r,n]=e;return[t/255,r/255,n/255,1]}if(t.startsWith(\"#\")&&/^#(?:[0-9a-f]{3,4}|[0-9a-f]{6}|[0-9a-f]{8})$/.test(t)){const e=t.length<6?1:2;let r=1;return[Ht(t.slice(r,r+=e)),Ht(t.slice(r,r+=e)),Ht(t.slice(r,r+=e)),Ht(t.slice(r,r+e)||\"ff\")]}if(t.startsWith(\"rgb\")){const e=/^rgba?\\(\\s*([\\de.+-]+)(%)?(?:\\s+|\\s*(,)\\s*)([\\de.+-]+)(%)?(?:\\s+|\\s*(,)\\s*)([\\de.+-]+)(%)?(?:\\s*([,\\/])\\s*([\\de.+-]+)(%)?)?\\s*\\)$/,r=t.match(e);if(r){const[t,e,n,i,a,o,s,l,c,u,h,f]=r,p=[i||\" \",s||\" \",u].join(\"\");if(\" \"===p||\" /\"===p||\",,\"===p||\",,,\"===p){const t=[n,o,c].join(\"\"),r=\"%%%\"===t?100:\"\"===t?255:0;if(r){const t=[Zt(+e/r,0,1),Zt(+a/r,0,1),Zt(+l/r,0,1),h?Gt(+h,f):1];if(Wt(t))return t}}return}}const r=t.match(/^hsla?\\(\\s*([\\de.+-]+)(?:deg)?(?:\\s+|\\s*(,)\\s*)([\\de.+-]+)%(?:\\s+|\\s*(,)\\s*)([\\de.+-]+)%(?:\\s*([,\\/])\\s*([\\de.+-]+)(%)?)?\\s*\\)$/);if(r){const[t,e,n,i,a,o,s,l,c]=r,u=[n||\" \",a||\" \",s].join(\"\");if(\" \"===u||\" /\"===u||\",,\"===u||\",,,\"===u){const t=[+e,Zt(+i,0,100),Zt(+o,0,100),l?Gt(+l,c):1];if(Wt(t))return function([t,e,r,n]){function i(n){const i=(n+t/30)%12,a=e*Math.min(r,1-r);return r-a*Math.max(-1,Math.min(i-3,9-i,1))}return t=Rt(t),e/=100,r/=100,[i(0),i(8),i(4),n]}(t)}}}function Ht(t){return parseInt(t.padEnd(2,t),16)/255}function Gt(t,e){return Zt(e?t/100:t,0,1)}function Zt(t,e,r){return Math.min(Math.max(e,t),r)}function Wt(t){return!t.some(Number.isNaN)}const Yt={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]};class Xt{constructor(t,e,r,n=1,i=!0){this.r=t,this.g=e,this.b=r,this.a=n,i||(this.r*=n,this.g*=n,this.b*=n,n||this.overwriteGetter(\"rgb\",[t,e,r,n]))}static parse(t){if(t instanceof Xt)return t;if(\"string\"!=typeof t)return;const e=qt(t);return e?new Xt(...e,!1):void 0}get rgb(){const{r:t,g:e,b:r,a:n}=this,i=n||1/0;return this.overwriteGetter(\"rgb\",[t/i,e/i,r/i,n])}get hcl(){return this.overwriteGetter(\"hcl\",function(t){const[e,r,n,i]=Ft(t),a=Math.sqrt(r*r+n*n);return[Math.round(1e4*a)?Rt(Math.atan2(n,r)*Dt):NaN,a,e,i]}(this.rgb))}get lab(){return this.overwriteGetter(\"lab\",Ft(this.rgb))}overwriteGetter(t,e){return Object.defineProperty(this,t,{value:e}),e}toString(){const[t,e,r,n]=this.rgb;return`rgba(${[t,e,r].map((t=>Math.round(255*t))).join(\",\")},${n})`}}Xt.black=new Xt(0,0,0,1),Xt.white=new Xt(1,1,1,1),Xt.transparent=new Xt(0,0,0,0),Xt.red=new Xt(1,0,0,1);class $t{constructor(t,e,r){this.sensitivity=t?e?\"variant\":\"case\":e?\"accent\":\"base\",this.locale=r,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:\"search\"})}compare(t,e){return this.collator.compare(t,e)}resolvedLocale(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale}}class Jt{constructor(t,e,r,n,i){this.text=t,this.image=e,this.scale=r,this.fontStack=n,this.textColor=i}}class Kt{constructor(t){this.sections=t}static fromString(t){return new Kt([new Jt(t,null,null,null,null)])}isEmpty(){return 0===this.sections.length||!this.sections.some((t=>0!==t.text.length||t.image&&0!==t.image.name.length))}static factory(t){return t instanceof Kt?t:Kt.fromString(t)}toString(){return 0===this.sections.length?\"\":this.sections.map((t=>t.text)).join(\"\")}}class Qt{constructor(t){this.values=t.slice()}static parse(t){if(t instanceof Qt)return t;if(\"number\"==typeof t)return new Qt([t,t,t,t]);if(Array.isArray(t)&&!(t.length<1||t.length>4)){for(const e of t)if(\"number\"!=typeof e)return;switch(t.length){case 1:t=[t[0],t[0],t[0],t[0]];break;case 2:t=[t[0],t[1],t[0],t[1]];break;case 3:t=[t[0],t[1],t[2],t[1]]}return new Qt(t)}}toString(){return JSON.stringify(this.values)}}const te=new Set([\"center\",\"left\",\"right\",\"top\",\"bottom\",\"top-left\",\"top-right\",\"bottom-left\",\"bottom-right\"]);class ee{constructor(t){this.values=t.slice()}static parse(t){if(t instanceof ee)return t;if(Array.isArray(t)&&!(t.length<1)&&t.length%2==0){for(let e=0;e<t.length;e+=2){const r=t[e],n=t[e+1];if(\"string\"!=typeof r||!te.has(r))return;if(!Array.isArray(n)||2!==n.length||\"number\"!=typeof n[0]||\"number\"!=typeof n[1])return}return new ee(t)}}toString(){return JSON.stringify(this.values)}}class re{constructor(t){this.name=t.name,this.available=t.available}toString(){return this.name}static fromString(t){return t?new re({name:t,available:!1}):null}}function ne(t,e,r,n){return\"number\"==typeof t&&t>=0&&t<=255&&\"number\"==typeof e&&e>=0&&e<=255&&\"number\"==typeof r&&r>=0&&r<=255?void 0===n||\"number\"==typeof n&&n>=0&&n<=1?null:`Invalid rgba value [${[t,e,r,n].join(\", \")}]: 'a' must be between 0 and 1.`:`Invalid rgba value [${(\"number\"==typeof n?[t,e,r,n]:[t,e,r]).join(\", \")}]: 'r', 'g', and 'b' must be between 0 and 255.`}function ie(t){if(null===t||\"string\"==typeof t||\"boolean\"==typeof t||\"number\"==typeof t||t instanceof Xt||t instanceof $t||t instanceof Kt||t instanceof Qt||t instanceof ee||t instanceof re)return!0;if(Array.isArray(t)){for(const e of t)if(!ie(e))return!1;return!0}if(\"object\"==typeof t){for(const e in t)if(!ie(t[e]))return!1;return!0}return!1}function ae(t){if(null===t)return lt;if(\"string\"==typeof t)return ut;if(\"boolean\"==typeof t)return ht;if(\"number\"==typeof t)return ct;if(t instanceof Xt)return ft;if(t instanceof $t)return mt;if(t instanceof Kt)return gt;if(t instanceof Qt)return yt;if(t instanceof ee)return xt;if(t instanceof re)return vt;if(Array.isArray(t)){const e=t.length;let r;for(const e of t){const t=ae(e);if(r){if(r===t)continue;r=dt;break}r=t}return _t(r||dt,e)}return pt}function oe(t){const e=typeof t;return null===t?\"\":\"string\"===e||\"number\"===e||\"boolean\"===e?String(t):t instanceof Xt||t instanceof Kt||t instanceof Qt||t instanceof ee||t instanceof re?t.toString():JSON.stringify(t)}class se{constructor(t,e){this.type=t,this.value=e}static parse(t,e){if(2!==t.length)return e.error(`'literal' expression requires exactly one argument, but found ${t.length-1} instead.`);if(!ie(t[1]))return e.error(\"invalid value\");const r=t[1];let n=ae(r);const i=e.expectedType;return\"array\"!==n.kind||0!==n.N||!i||\"array\"!==i.kind||\"number\"==typeof i.N&&0!==i.N||(n=i),new se(n,r)}evaluate(){return this.value}eachChild(){}outputDefined(){return!0}}class le{constructor(t){this.name=\"ExpressionEvaluationError\",this.message=t}toJSON(){return this.message}}const ce={string:ut,number:ct,boolean:ht,object:pt};class ue{constructor(t,e){this.type=t,this.args=e}static parse(t,e){if(t.length<2)return e.error(\"Expected at least one argument.\");let r,n=1;const i=t[0];if(\"array\"===i){let i,a;if(t.length>2){const r=t[1];if(\"string\"!=typeof r||!(r in ce)||\"object\"===r)return e.error('The item type argument of \"array\" must be one of string, number, boolean',1);i=ce[r],n++}else i=dt;if(t.length>3){if(null!==t[2]&&(\"number\"!=typeof t[2]||t[2]<0||t[2]!==Math.floor(t[2])))return e.error('The length argument to \"array\" must be a positive integer literal',2);a=t[2],n++}r=_t(i,a)}else{if(!ce[i])throw new Error(`Types doesn't contain name = ${i}`);r=ce[i]}const a=[];for(;n<t.length;n++){const r=e.parse(t[n],n,dt);if(!r)return null;a.push(r)}return new ue(r,a)}evaluate(t){for(let e=0;e<this.args.length;e++){const r=this.args[e].evaluate(t);if(!Tt(this.type,ae(r)))return r;if(e===this.args.length-1)throw new le(`Expected value to be of type ${bt(this.type)}, but found ${bt(ae(r))} instead.`)}throw new Error}eachChild(t){this.args.forEach(t)}outputDefined(){return this.args.every((t=>t.outputDefined()))}}const he={\"to-boolean\":ht,\"to-color\":ft,\"to-number\":ct,\"to-string\":ut};class fe{constructor(t,e){this.type=t,this.args=e}static parse(t,e){if(t.length<2)return e.error(\"Expected at least one argument.\");const r=t[0];if(!he[r])throw new Error(`Can't parse ${r} as it is not part of the known types`);if((\"to-boolean\"===r||\"to-string\"===r)&&2!==t.length)return e.error(\"Expected one argument.\");const n=he[r],i=[];for(let r=1;r<t.length;r++){const n=e.parse(t[r],r,dt);if(!n)return null;i.push(n)}return new fe(n,i)}evaluate(t){switch(this.type.kind){case\"boolean\":return Boolean(this.args[0].evaluate(t));case\"color\":{let e,r;for(const n of this.args){if(e=n.evaluate(t),r=null,e instanceof Xt)return e;if(\"string\"==typeof e){const r=t.parseColor(e);if(r)return r}else if(Array.isArray(e)&&(r=e.length<3||e.length>4?`Invalid rbga value ${JSON.stringify(e)}: expected an array containing either three or four numeric values.`:ne(e[0],e[1],e[2],e[3]),!r))return new Xt(e[0]/255,e[1]/255,e[2]/255,e[3])}throw new le(r||`Could not parse color from value '${\"string\"==typeof e?e:JSON.stringify(e)}'`)}case\"padding\":{let e;for(const r of this.args){e=r.evaluate(t);const n=Qt.parse(e);if(n)return n}throw new le(`Could not parse padding from value '${\"string\"==typeof e?e:JSON.stringify(e)}'`)}case\"variableAnchorOffsetCollection\":{let e;for(const r of this.args){e=r.evaluate(t);const n=ee.parse(e);if(n)return n}throw new le(`Could not parse variableAnchorOffsetCollection from value '${\"string\"==typeof e?e:JSON.stringify(e)}'`)}case\"number\":{let e=null;for(const r of this.args){if(e=r.evaluate(t),null===e)return 0;const n=Number(e);if(!isNaN(n))return n}throw new le(`Could not convert ${JSON.stringify(e)} to number.`)}case\"formatted\":return Kt.fromString(oe(this.args[0].evaluate(t)));case\"resolvedImage\":return re.fromString(oe(this.args[0].evaluate(t)));default:return oe(this.args[0].evaluate(t))}}eachChild(t){this.args.forEach(t)}outputDefined(){return this.args.every((t=>t.outputDefined()))}}const pe=[\"Unknown\",\"Point\",\"LineString\",\"Polygon\"];class de{constructor(){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache={},this.availableImages=null,this.canonical=null}id(){return this.feature&&\"id\"in this.feature?this.feature.id:null}geometryType(){return this.feature?\"number\"==typeof this.feature.type?pe[this.feature.type]:this.feature.type:null}geometry(){return this.feature&&\"geometry\"in this.feature?this.feature.geometry:null}canonicalID(){return this.canonical}properties(){return this.feature&&this.feature.properties||{}}parseColor(t){let e=this._parseColorCache[t];return e||(e=this._parseColorCache[t]=Xt.parse(t)),e}}class me{constructor(t,e,r=[],n,i=new st,a=[]){this.registry=t,this.path=r,this.key=r.map((t=>`[${t}]`)).join(\"\"),this.scope=i,this.errors=a,this.expectedType=n,this._isConstant=e}parse(t,e,r,n,i={}){return e?this.concat(e,r,n)._parse(t,i):this._parse(t,i)}_parse(t,e){function r(t,e,r){return\"assert\"===r?new ue(e,[t]):\"coerce\"===r?new fe(e,[t]):t}if(null!==t&&\"string\"!=typeof t&&\"boolean\"!=typeof t&&\"number\"!=typeof t||(t=[\"literal\",t]),Array.isArray(t)){if(0===t.length)return this.error('Expected an array with at least one element. If you wanted a literal array, use [\"literal\", []].');const n=t[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;const i=this.registry[n];if(i){let n=i.parse(t,this);if(!n)return null;if(this.expectedType){const t=this.expectedType,i=n.type;if(\"string\"!==t.kind&&\"number\"!==t.kind&&\"boolean\"!==t.kind&&\"object\"!==t.kind&&\"array\"!==t.kind||\"value\"!==i.kind)if(\"color\"!==t.kind&&\"formatted\"!==t.kind&&\"resolvedImage\"!==t.kind||\"value\"!==i.kind&&\"string\"!==i.kind)if(\"padding\"!==t.kind||\"value\"!==i.kind&&\"number\"!==i.kind&&\"array\"!==i.kind)if(\"variableAnchorOffsetCollection\"!==t.kind||\"value\"!==i.kind&&\"array\"!==i.kind){if(this.checkSubtype(t,i))return null}else n=r(n,t,e.typeAnnotation||\"coerce\");else n=r(n,t,e.typeAnnotation||\"coerce\");else n=r(n,t,e.typeAnnotation||\"coerce\");else n=r(n,t,e.typeAnnotation||\"assert\")}if(!(n instanceof se)&&\"resolvedImage\"!==n.type.kind&&this._isConstant(n)){const t=new de;try{n=new se(n.type,n.evaluate(t))}catch(t){return this.error(t.message),null}}return n}return this.error(`Unknown expression \"${n}\". If you wanted a literal array, use [\"literal\", [...]].`,0)}return void 0===t?this.error(\"'undefined' value invalid. Use null instead.\"):\"object\"==typeof t?this.error('Bare objects invalid. Use [\"literal\", {...}] instead.'):this.error(`Expected an array, but found ${typeof t} instead.`)}concat(t,e,r){const n=\"number\"==typeof t?this.path.concat(t):this.path,i=r?this.scope.concat(r):this.scope;return new me(this.registry,this._isConstant,n,e||null,i,this.errors)}error(t,...e){const r=`${this.key}${e.map((t=>`[${t}]`)).join(\"\")}`;this.errors.push(new ot(r,t))}checkSubtype(t,e){const r=Tt(t,e);return r&&this.error(r),r}}class ge{constructor(t,e){this.type=e.type,this.bindings=[].concat(t),this.result=e}evaluate(t){return this.result.evaluate(t)}eachChild(t){for(const e of this.bindings)t(e[1]);t(this.result)}static parse(t,e){if(t.length<4)return e.error(`Expected at least 3 arguments, but found ${t.length-1} instead.`);const r=[];for(let n=1;n<t.length-1;n+=2){const i=t[n];if(\"string\"!=typeof i)return e.error(`Expected string, but found ${typeof i} instead.`,n);if(/[^a-zA-Z0-9_]/.test(i))return e.error(\"Variable names must contain only alphanumeric characters or '_'.\",n);const a=e.parse(t[n+1],n+1);if(!a)return null;r.push([i,a])}const n=e.parse(t[t.length-1],t.length-1,e.expectedType,r);return n?new ge(r,n):null}outputDefined(){return this.result.outputDefined()}}class ye{constructor(t,e){this.type=e.type,this.name=t,this.boundExpression=e}static parse(t,e){if(2!==t.length||\"string\"!=typeof t[1])return e.error(\"'var' expression requires exactly one string literal argument.\");const r=t[1];return e.scope.has(r)?new ye(r,e.scope.get(r)):e.error(`Unknown variable \"${r}\". Make sure \"${r}\" has been bound in an enclosing \"let\" expression before using it.`,1)}evaluate(t){return this.boundExpression.evaluate(t)}eachChild(){}outputDefined(){return!1}}class ve{constructor(t,e,r){this.type=t,this.index=e,this.input=r}static parse(t,e){if(3!==t.length)return e.error(`Expected 2 arguments, but found ${t.length-1} instead.`);const r=e.parse(t[1],1,ct),n=e.parse(t[2],2,_t(e.expectedType||dt));if(!r||!n)return null;const i=n.type;return new ve(i.itemType,r,n)}evaluate(t){const e=this.index.evaluate(t),r=this.input.evaluate(t);if(e<0)throw new le(`Array index out of bounds: ${e} < 0.`);if(e>=r.length)throw new le(`Array index out of bounds: ${e} > ${r.length-1}.`);if(e!==Math.floor(e))throw new le(`Array index must be an integer, but found ${e} instead.`);return r[e]}eachChild(t){t(this.index),t(this.input)}outputDefined(){return!1}}class xe{constructor(t,e){this.type=ht,this.needle=t,this.haystack=e}static parse(t,e){if(3!==t.length)return e.error(`Expected 2 arguments, but found ${t.length-1} instead.`);const r=e.parse(t[1],1,dt),n=e.parse(t[2],2,dt);return r&&n?kt(r.type,[ht,ut,ct,lt,dt])?new xe(r,n):e.error(`Expected first argument to be of type boolean, string, number or null, but found ${bt(r.type)} instead`):null}evaluate(t){const e=this.needle.evaluate(t),r=this.haystack.evaluate(t);if(!r)return!1;if(!At(e,[\"boolean\",\"string\",\"number\",\"null\"]))throw new le(`Expected first argument to be of type boolean, string, number or null, but found ${bt(ae(e))} instead.`);if(!At(r,[\"string\",\"array\"]))throw new le(`Expected second argument to be of type array or string, but found ${bt(ae(r))} instead.`);return r.indexOf(e)>=0}eachChild(t){t(this.needle),t(this.haystack)}outputDefined(){return!0}}class _e{constructor(t,e,r){this.type=ct,this.needle=t,this.haystack=e,this.fromIndex=r}static parse(t,e){if(t.length<=2||t.length>=5)return e.error(`Expected 3 or 4 arguments, but found ${t.length-1} instead.`);const r=e.parse(t[1],1,dt),n=e.parse(t[2],2,dt);if(!r||!n)return null;if(!kt(r.type,[ht,ut,ct,lt,dt]))return e.error(`Expected first argument to be of type boolean, string, number or null, but found ${bt(r.type)} instead`);if(4===t.length){const i=e.parse(t[3],3,ct);return i?new _e(r,n,i):null}return new _e(r,n)}evaluate(t){const e=this.needle.evaluate(t),r=this.haystack.evaluate(t);if(!At(e,[\"boolean\",\"string\",\"number\",\"null\"]))throw new le(`Expected first argument to be of type boolean, string, number or null, but found ${bt(ae(e))} instead.`);if(!At(r,[\"string\",\"array\"]))throw new le(`Expected second argument to be of type array or string, but found ${bt(ae(r))} instead.`);if(this.fromIndex){const n=this.fromIndex.evaluate(t);return r.indexOf(e,n)}return r.indexOf(e)}eachChild(t){t(this.needle),t(this.haystack),this.fromIndex&&t(this.fromIndex)}outputDefined(){return!1}}class be{constructor(t,e,r,n,i,a){this.inputType=t,this.type=e,this.input=r,this.cases=n,this.outputs=i,this.otherwise=a}static parse(t,e){if(t.length<5)return e.error(`Expected at least 4 arguments, but found only ${t.length-1}.`);if(t.length%2!=1)return e.error(\"Expected an even number of arguments.\");let r,n;e.expectedType&&\"value\"!==e.expectedType.kind&&(n=e.expectedType);const i={},a=[];for(let o=2;o<t.length-1;o+=2){let s=t[o];const l=t[o+1];Array.isArray(s)||(s=[s]);const c=e.concat(o);if(0===s.length)return c.error(\"Expected at least one branch label.\");for(const t of s){if(\"number\"!=typeof t&&\"string\"!=typeof t)return c.error(\"Branch labels must be numbers or strings.\");if(\"number\"==typeof t&&Math.abs(t)>Number.MAX_SAFE_INTEGER)return c.error(`Branch labels must be integers no larger than ${Number.MAX_SAFE_INTEGER}.`);if(\"number\"==typeof t&&Math.floor(t)!==t)return c.error(\"Numeric branch labels must be integer values.\");if(r){if(c.checkSubtype(r,ae(t)))return null}else r=ae(t);if(void 0!==i[String(t)])return c.error(\"Branch labels must be unique.\");i[String(t)]=a.length}const u=e.parse(l,o,n);if(!u)return null;n=n||u.type,a.push(u)}const o=e.parse(t[1],1,dt);if(!o)return null;const s=e.parse(t[t.length-1],t.length-1,n);return s?\"value\"!==o.type.kind&&e.concat(1).checkSubtype(r,o.type)?null:new be(r,n,o,i,a,s):null}evaluate(t){const e=this.input.evaluate(t);return(ae(e)===this.inputType&&this.outputs[this.cases[e]]||this.otherwise).evaluate(t)}eachChild(t){t(this.input),this.outputs.forEach(t),t(this.otherwise)}outputDefined(){return this.outputs.every((t=>t.outputDefined()))&&this.otherwise.outputDefined()}}class we{constructor(t,e,r){this.type=t,this.branches=e,this.otherwise=r}static parse(t,e){if(t.length<4)return e.error(`Expected at least 3 arguments, but found only ${t.length-1}.`);if(t.length%2!=0)return e.error(\"Expected an odd number of arguments.\");let r;e.expectedType&&\"value\"!==e.expectedType.kind&&(r=e.expectedType);const n=[];for(let i=1;i<t.length-1;i+=2){const a=e.parse(t[i],i,ht);if(!a)return null;const o=e.parse(t[i+1],i+1,r);if(!o)return null;n.push([a,o]),r=r||o.type}const i=e.parse(t[t.length-1],t.length-1,r);if(!i)return null;if(!r)throw new Error(\"Can't infer output type\");return new we(r,n,i)}evaluate(t){for(const[e,r]of this.branches)if(e.evaluate(t))return r.evaluate(t);return this.otherwise.evaluate(t)}eachChild(t){for(const[e,r]of this.branches)t(e),t(r);t(this.otherwise)}outputDefined(){return this.branches.every((([t,e])=>e.outputDefined()))&&this.otherwise.outputDefined()}}class Te{constructor(t,e,r,n){this.type=t,this.input=e,this.beginIndex=r,this.endIndex=n}static parse(t,e){if(t.length<=2||t.length>=5)return e.error(`Expected 3 or 4 arguments, but found ${t.length-1} instead.`);const r=e.parse(t[1],1,dt),n=e.parse(t[2],2,ct);if(!r||!n)return null;if(!kt(r.type,[_t(dt),ut,dt]))return e.error(`Expected first argument to be of type array or string, but found ${bt(r.type)} instead`);if(4===t.length){const i=e.parse(t[3],3,ct);return i?new Te(r.type,r,n,i):null}return new Te(r.type,r,n)}evaluate(t){const e=this.input.evaluate(t),r=this.beginIndex.evaluate(t);if(!At(e,[\"string\",\"array\"]))throw new le(`Expected first argument to be of type array or string, but found ${bt(ae(e))} instead.`);if(this.endIndex){const n=this.endIndex.evaluate(t);return e.slice(r,n)}return e.slice(r)}eachChild(t){t(this.input),t(this.beginIndex),this.endIndex&&t(this.endIndex)}outputDefined(){return!1}}function ke(t,e){const r=t.length-1;let n,i,a=0,o=r,s=0;for(;a<=o;)if(s=Math.floor((a+o)/2),n=t[s],i=t[s+1],n<=e){if(s===r||e<i)return s;a=s+1}else{if(!(n>e))throw new le(\"Input is not a number.\");o=s-1}return 0}class Ae{constructor(t,e,r){this.type=t,this.input=e,this.labels=[],this.outputs=[];for(const[t,e]of r)this.labels.push(t),this.outputs.push(e)}static parse(t,e){if(t.length-1<4)return e.error(`Expected at least 4 arguments, but found only ${t.length-1}.`);if((t.length-1)%2!=0)return e.error(\"Expected an even number of arguments.\");const r=e.parse(t[1],1,ct);if(!r)return null;const n=[];let i=null;e.expectedType&&\"value\"!==e.expectedType.kind&&(i=e.expectedType);for(let r=1;r<t.length;r+=2){const a=1===r?-1/0:t[r],o=t[r+1],s=r,l=r+1;if(\"number\"!=typeof a)return e.error('Input/output pairs for \"step\" expressions must be defined using literal numeric values (not computed expressions) for the input values.',s);if(n.length&&n[n.length-1][0]>=a)return e.error('Input/output pairs for \"step\" expressions must be arranged with input values in strictly ascending order.',s);const c=e.parse(o,l,i);if(!c)return null;i=i||c.type,n.push([a,c])}return new Ae(i,r,n)}evaluate(t){const e=this.labels,r=this.outputs;if(1===e.length)return r[0].evaluate(t);const n=this.input.evaluate(t);if(n<=e[0])return r[0].evaluate(t);const i=e.length;return n>=e[i-1]?r[i-1].evaluate(t):r[ke(e,n)].evaluate(t)}eachChild(t){t(this.input);for(const e of this.outputs)t(e)}outputDefined(){return this.outputs.every((t=>t.outputDefined()))}}function Me(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,\"default\")?t.default:t}var Se=Ee;function Ee(t,e,r,n){this.cx=3*t,this.bx=3*(r-t)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*e,this.by=3*(n-e)-this.cy,this.ay=1-this.cy-this.by,this.p1x=t,this.p1y=e,this.p2x=r,this.p2y=n}Ee.prototype={sampleCurveX:function(t){return((this.ax*t+this.bx)*t+this.cx)*t},sampleCurveY:function(t){return((this.ay*t+this.by)*t+this.cy)*t},sampleCurveDerivativeX:function(t){return(3*this.ax*t+2*this.bx)*t+this.cx},solveCurveX:function(t,e){if(void 0===e&&(e=1e-6),t<0)return 0;if(t>1)return 1;for(var r=t,n=0;n<8;n++){var i=this.sampleCurveX(r)-t;if(Math.abs(i)<e)return r;var a=this.sampleCurveDerivativeX(r);if(Math.abs(a)<1e-6)break;r-=i/a}var o=0,s=1;for(r=t,n=0;n<20&&(i=this.sampleCurveX(r),!(Math.abs(i-t)<e));n++)t>i?o=r:s=r,r=.5*(s-o)+o;return r},solve:function(t,e){return this.sampleCurveY(this.solveCurveX(t,e))}};var Ce=Me(Se);function Le(t,e,r){return t+r*(e-t)}function Ie(t,e,r){return t.map(((t,n)=>Le(t,e[n],r)))}const Pe={number:Le,color:function(t,e,r,n=\"rgb\"){switch(n){case\"rgb\":{const[n,i,a,o]=Ie(t.rgb,e.rgb,r);return new Xt(n,i,a,o,!1)}case\"hcl\":{const[n,i,a,o]=t.hcl,[s,l,c,u]=e.hcl;let h,f;if(isNaN(n)||isNaN(s))isNaN(n)?isNaN(s)?h=NaN:(h=s,1!==a&&0!==a||(f=l)):(h=n,1!==c&&0!==c||(f=i));else{let t=s-n;s>n&&t>180?t-=360:s<n&&n-s>180&&(t+=360),h=n+r*t}const[p,d,m,g]=function([t,e,r,n]){return t=isNaN(t)?0:t*Ot,jt([r,Math.cos(t)*e,Math.sin(t)*e,n])}([h,null!=f?f:Le(i,l,r),Le(a,c,r),Le(o,u,r)]);return new Xt(p,d,m,g,!1)}case\"lab\":{const[n,i,a,o]=jt(Ie(t.lab,e.lab,r));return new Xt(n,i,a,o,!1)}}},array:Ie,padding:function(t,e,r){return new Qt(Ie(t.values,e.values,r))},variableAnchorOffsetCollection:function(t,e,r){const n=t.values,i=e.values;if(n.length!==i.length)throw new le(`Cannot interpolate values of different length. from: ${t.toString()}, to: ${e.toString()}`);const a=[];for(let t=0;t<n.length;t+=2){if(n[t]!==i[t])throw new le(`Cannot interpolate values containing mismatched anchors. from[${t}]: ${n[t]}, to[${t}]: ${i[t]}`);a.push(n[t]);const[e,o]=n[t+1],[s,l]=i[t+1];a.push([Le(e,s,r),Le(o,l,r)])}return new ee(a)}};class ze{constructor(t,e,r,n,i){this.type=t,this.operator=e,this.interpolation=r,this.input=n,this.labels=[],this.outputs=[];for(const[t,e]of i)this.labels.push(t),this.outputs.push(e)}static interpolationFactor(t,e,r,n){let i=0;if(\"exponential\"===t.name)i=Oe(e,t.base,r,n);else if(\"linear\"===t.name)i=Oe(e,1,r,n);else if(\"cubic-bezier\"===t.name){const a=t.controlPoints;i=new Ce(a[0],a[1],a[2],a[3]).solve(Oe(e,1,r,n))}return i}static parse(t,e){let[r,n,i,...a]=t;if(!Array.isArray(n)||0===n.length)return e.error(\"Expected an interpolation type expression.\",1);if(\"linear\"===n[0])n={name:\"linear\"};else if(\"exponential\"===n[0]){const t=n[1];if(\"number\"!=typeof t)return e.error(\"Exponential interpolation requires a numeric base.\",1,1);n={name:\"exponential\",base:t}}else{if(\"cubic-bezier\"!==n[0])return e.error(`Unknown interpolation type ${String(n[0])}`,1,0);{const t=n.slice(1);if(4!==t.length||t.some((t=>\"number\"!=typeof t||t<0||t>1)))return e.error(\"Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.\",1);n={name:\"cubic-bezier\",controlPoints:t}}}if(t.length-1<4)return e.error(`Expected at least 4 arguments, but found only ${t.length-1}.`);if((t.length-1)%2!=0)return e.error(\"Expected an even number of arguments.\");if(i=e.parse(i,2,ct),!i)return null;const o=[];let s=null;\"interpolate-hcl\"===r||\"interpolate-lab\"===r?s=ft:e.expectedType&&\"value\"!==e.expectedType.kind&&(s=e.expectedType);for(let t=0;t<a.length;t+=2){const r=a[t],n=a[t+1],i=t+3,l=t+4;if(\"number\"!=typeof r)return e.error('Input/output pairs for \"interpolate\" expressions must be defined using literal numeric values (not computed expressions) for the input values.',i);if(o.length&&o[o.length-1][0]>=r)return e.error('Input/output pairs for \"interpolate\" expressions must be arranged with input values in strictly ascending order.',i);const c=e.parse(n,l,s);if(!c)return null;s=s||c.type,o.push([r,c])}return Mt(s,ct)||Mt(s,ft)||Mt(s,yt)||Mt(s,xt)||Mt(s,_t(ct))?new ze(s,r,n,i,o):e.error(`Type ${bt(s)} is not interpolatable.`)}evaluate(t){const e=this.labels,r=this.outputs;if(1===e.length)return r[0].evaluate(t);const n=this.input.evaluate(t);if(n<=e[0])return r[0].evaluate(t);const i=e.length;if(n>=e[i-1])return r[i-1].evaluate(t);const a=ke(e,n),o=e[a],s=e[a+1],l=ze.interpolationFactor(this.interpolation,n,o,s),c=r[a].evaluate(t),u=r[a+1].evaluate(t);switch(this.operator){case\"interpolate\":return Pe[this.type.kind](c,u,l);case\"interpolate-hcl\":return Pe.color(c,u,l,\"hcl\");case\"interpolate-lab\":return Pe.color(c,u,l,\"lab\")}}eachChild(t){t(this.input);for(const e of this.outputs)t(e)}outputDefined(){return this.outputs.every((t=>t.outputDefined()))}}function Oe(t,e,r,n){const i=n-r,a=t-r;return 0===i?0:1===e?a/i:(Math.pow(e,a)-1)/(Math.pow(e,i)-1)}class De{constructor(t,e){this.type=t,this.args=e}static parse(t,e){if(t.length<2)return e.error(\"Expectected at least one argument.\");let r=null;const n=e.expectedType;n&&\"value\"!==n.kind&&(r=n);const i=[];for(const n of t.slice(1)){const t=e.parse(n,1+i.length,r,void 0,{typeAnnotation:\"omit\"});if(!t)return null;r=r||t.type,i.push(t)}if(!r)throw new Error(\"No output type\");const a=n&&i.some((t=>Tt(n,t.type)));return new De(a?dt:r,i)}evaluate(t){let e,r=null,n=0;for(const i of this.args)if(n++,r=i.evaluate(t),r&&r instanceof re&&!r.available&&(e||(e=r.name),r=null,n===this.args.length&&(r=e)),null!==r)break;return r}eachChild(t){this.args.forEach(t)}outputDefined(){return this.args.every((t=>t.outputDefined()))}}function Re(t,e){return\"==\"===t||\"!=\"===t?\"boolean\"===e.kind||\"string\"===e.kind||\"number\"===e.kind||\"null\"===e.kind||\"value\"===e.kind:\"string\"===e.kind||\"number\"===e.kind||\"value\"===e.kind}function Fe(t,e,r,n){return 0===n.compare(e,r)}function Be(t,e,r){const n=\"==\"!==t&&\"!=\"!==t;return class i{constructor(t,e,r){this.type=ht,this.lhs=t,this.rhs=e,this.collator=r,this.hasUntypedArgument=\"value\"===t.type.kind||\"value\"===e.type.kind}static parse(t,e){if(3!==t.length&&4!==t.length)return e.error(\"Expected two or three arguments.\");const r=t[0];let a=e.parse(t[1],1,dt);if(!a)return null;if(!Re(r,a.type))return e.concat(1).error(`\"${r}\" comparisons are not supported for type '${bt(a.type)}'.`);let o=e.parse(t[2],2,dt);if(!o)return null;if(!Re(r,o.type))return e.concat(2).error(`\"${r}\" comparisons are not supported for type '${bt(o.type)}'.`);if(a.type.kind!==o.type.kind&&\"value\"!==a.type.kind&&\"value\"!==o.type.kind)return e.error(`Cannot compare types '${bt(a.type)}' and '${bt(o.type)}'.`);n&&(\"value\"===a.type.kind&&\"value\"!==o.type.kind?a=new ue(o.type,[a]):\"value\"!==a.type.kind&&\"value\"===o.type.kind&&(o=new ue(a.type,[o])));let s=null;if(4===t.length){if(\"string\"!==a.type.kind&&\"string\"!==o.type.kind&&\"value\"!==a.type.kind&&\"value\"!==o.type.kind)return e.error(\"Cannot use collator to compare non-string types.\");if(s=e.parse(t[3],3,mt),!s)return null}return new i(a,o,s)}evaluate(i){const a=this.lhs.evaluate(i),o=this.rhs.evaluate(i);if(n&&this.hasUntypedArgument){const e=ae(a),r=ae(o);if(e.kind!==r.kind||\"string\"!==e.kind&&\"number\"!==e.kind)throw new le(`Expected arguments for \"${t}\" to be (string, string) or (number, number), but found (${e.kind}, ${r.kind}) instead.`)}if(this.collator&&!n&&this.hasUntypedArgument){const t=ae(a),r=ae(o);if(\"string\"!==t.kind||\"string\"!==r.kind)return e(i,a,o)}return this.collator?r(i,a,o,this.collator.evaluate(i)):e(i,a,o)}eachChild(t){t(this.lhs),t(this.rhs),this.collator&&t(this.collator)}outputDefined(){return!0}}}const Ne=Be(\"==\",(function(t,e,r){return e===r}),Fe),je=Be(\"!=\",(function(t,e,r){return e!==r}),(function(t,e,r,n){return!Fe(0,e,r,n)})),Ue=Be(\"<\",(function(t,e,r){return e<r}),(function(t,e,r,n){return n.compare(e,r)<0})),Ve=Be(\">\",(function(t,e,r){return e>r}),(function(t,e,r,n){return n.compare(e,r)>0})),qe=Be(\"<=\",(function(t,e,r){return e<=r}),(function(t,e,r,n){return n.compare(e,r)<=0})),He=Be(\">=\",(function(t,e,r){return e>=r}),(function(t,e,r,n){return n.compare(e,r)>=0}));class Ge{constructor(t,e,r){this.type=mt,this.locale=r,this.caseSensitive=t,this.diacriticSensitive=e}static parse(t,e){if(2!==t.length)return e.error(\"Expected one argument.\");const r=t[1];if(\"object\"!=typeof r||Array.isArray(r))return e.error(\"Collator options argument must be an object.\");const n=e.parse(void 0!==r[\"case-sensitive\"]&&r[\"case-sensitive\"],1,ht);if(!n)return null;const i=e.parse(void 0!==r[\"diacritic-sensitive\"]&&r[\"diacritic-sensitive\"],1,ht);if(!i)return null;let a=null;return r.locale&&(a=e.parse(r.locale,1,ut),!a)?null:new Ge(n,i,a)}evaluate(t){return new $t(this.caseSensitive.evaluate(t),this.diacriticSensitive.evaluate(t),this.locale?this.locale.evaluate(t):null)}eachChild(t){t(this.caseSensitive),t(this.diacriticSensitive),this.locale&&t(this.locale)}outputDefined(){return!1}}class Ze{constructor(t,e,r,n,i){this.type=ut,this.number=t,this.locale=e,this.currency=r,this.minFractionDigits=n,this.maxFractionDigits=i}static parse(t,e){if(3!==t.length)return e.error(\"Expected two arguments.\");const r=e.parse(t[1],1,ct);if(!r)return null;const n=t[2];if(\"object\"!=typeof n||Array.isArray(n))return e.error(\"NumberFormat options argument must be an object.\");let i=null;if(n.locale&&(i=e.parse(n.locale,1,ut),!i))return null;let a=null;if(n.currency&&(a=e.parse(n.currency,1,ut),!a))return null;let o=null;if(n[\"min-fraction-digits\"]&&(o=e.parse(n[\"min-fraction-digits\"],1,ct),!o))return null;let s=null;return n[\"max-fraction-digits\"]&&(s=e.parse(n[\"max-fraction-digits\"],1,ct),!s)?null:new Ze(r,i,a,o,s)}evaluate(t){return new Intl.NumberFormat(this.locale?this.locale.evaluate(t):[],{style:this.currency?\"currency\":\"decimal\",currency:this.currency?this.currency.evaluate(t):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(t):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(t):void 0}).format(this.number.evaluate(t))}eachChild(t){t(this.number),this.locale&&t(this.locale),this.currency&&t(this.currency),this.minFractionDigits&&t(this.minFractionDigits),this.maxFractionDigits&&t(this.maxFractionDigits)}outputDefined(){return!1}}class We{constructor(t){this.type=gt,this.sections=t}static parse(t,e){if(t.length<2)return e.error(\"Expected at least one argument.\");const r=t[1];if(!Array.isArray(r)&&\"object\"==typeof r)return e.error(\"First argument must be an image or text section.\");const n=[];let i=!1;for(let r=1;r<=t.length-1;++r){const a=t[r];if(i&&\"object\"==typeof a&&!Array.isArray(a)){i=!1;let t=null;if(a[\"font-scale\"]&&(t=e.parse(a[\"font-scale\"],1,ct),!t))return null;let r=null;if(a[\"text-font\"]&&(r=e.parse(a[\"text-font\"],1,_t(ut)),!r))return null;let o=null;if(a[\"text-color\"]&&(o=e.parse(a[\"text-color\"],1,ft),!o))return null;const s=n[n.length-1];s.scale=t,s.font=r,s.textColor=o}else{const a=e.parse(t[r],1,dt);if(!a)return null;const o=a.type.kind;if(\"string\"!==o&&\"value\"!==o&&\"null\"!==o&&\"resolvedImage\"!==o)return e.error(\"Formatted text type must be 'string', 'value', 'image' or 'null'.\");i=!0,n.push({content:a,scale:null,font:null,textColor:null})}}return new We(n)}evaluate(t){return new Kt(this.sections.map((e=>{const r=e.content.evaluate(t);return ae(r)===vt?new Jt(\"\",r,null,null,null):new Jt(oe(r),null,e.scale?e.scale.evaluate(t):null,e.font?e.font.evaluate(t).join(\",\"):null,e.textColor?e.textColor.evaluate(t):null)})))}eachChild(t){for(const e of this.sections)t(e.content),e.scale&&t(e.scale),e.font&&t(e.font),e.textColor&&t(e.textColor)}outputDefined(){return!1}}class Ye{constructor(t){this.type=vt,this.input=t}static parse(t,e){if(2!==t.length)return e.error(\"Expected two arguments.\");const r=e.parse(t[1],1,ut);return r?new Ye(r):e.error(\"No image name provided.\")}evaluate(t){const e=this.input.evaluate(t),r=re.fromString(e);return r&&t.availableImages&&(r.available=t.availableImages.indexOf(e)>-1),r}eachChild(t){t(this.input)}outputDefined(){return!1}}class Xe{constructor(t){this.type=ct,this.input=t}static parse(t,e){if(2!==t.length)return e.error(`Expected 1 argument, but found ${t.length-1} instead.`);const r=e.parse(t[1],1);return r?\"array\"!==r.type.kind&&\"string\"!==r.type.kind&&\"value\"!==r.type.kind?e.error(`Expected argument of type string or array, but found ${bt(r.type)} instead.`):new Xe(r):null}evaluate(t){const e=this.input.evaluate(t);if(\"string\"==typeof e)return e.length;if(Array.isArray(e))return e.length;throw new le(`Expected value to be of type string or array, but found ${bt(ae(e))} instead.`)}eachChild(t){t(this.input)}outputDefined(){return!1}}const $e=8192;function Je(t,e){const r=(180+t[0])/360,n=(a=t[1],(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+a*Math.PI/360)))/360),i=Math.pow(2,e.z);var a;return[Math.round(r*i*$e),Math.round(n*i*$e)]}function Ke(t,e){const r=Math.pow(2,e.z),n=(t[0]/$e+e.x)/r,i=(t[1]/$e+e.y)/r;return[(o=n,360*o-180),(a=i,360/Math.PI*Math.atan(Math.exp((180-360*a)*Math.PI/180))-90)];var a,o}function Qe(t,e){t[0]=Math.min(t[0],e[0]),t[1]=Math.min(t[1],e[1]),t[2]=Math.max(t[2],e[0]),t[3]=Math.max(t[3],e[1])}function tr(t,e){return!(t[0]<=e[0]||t[2]>=e[2]||t[1]<=e[1]||t[3]>=e[3])}function er(t,e,r){const n=t[0]-e[0],i=t[1]-e[1],a=t[0]-r[0],o=t[1]-r[1];return n*o-a*i==0&&n*a<=0&&i*o<=0}function rr(t,e,r,n){const i=[e[0]-t[0],e[1]-t[1]];return 0!=(a=[n[0]-r[0],n[1]-r[1]],o=i,a[0]*o[1]-a[1]*o[0])&&!(!lr(t,e,r,n)||!lr(r,n,t,e));var a,o}function nr(t,e,r){for(const n of r)for(let r=0;r<n.length-1;++r)if(rr(t,e,n[r],n[r+1]))return!0;return!1}function ir(t,e,r=!1){let n=!1;for(const s of e)for(let e=0;e<s.length-1;e++){if(er(t,s[e],s[e+1]))return r;i=t,a=s[e],o=s[e+1],a[1]>i[1]!=o[1]>i[1]&&i[0]<(o[0]-a[0])*(i[1]-a[1])/(o[1]-a[1])+a[0]&&(n=!n)}var i,a,o;return n}function ar(t,e){for(const r of e)if(ir(t,r))return!0;return!1}function or(t,e){for(const r of t)if(!ir(r,e))return!1;for(let r=0;r<t.length-1;++r)if(nr(t[r],t[r+1],e))return!1;return!0}function sr(t,e){for(const r of e)if(or(t,r))return!0;return!1}function lr(t,e,r,n){const i=t[0]-r[0],a=t[1]-r[1],o=e[0]-r[0],s=e[1]-r[1],l=n[0]-r[0],c=n[1]-r[1],u=i*c-l*a,h=o*c-l*s;return u>0&&h<0||u<0&&h>0}function cr(t,e,r){const n=[];for(let i=0;i<t.length;i++){const a=[];for(let n=0;n<t[i].length;n++){const o=Je(t[i][n],r);Qe(e,o),a.push(o)}n.push(a)}return n}function ur(t,e,r){const n=[];for(let i=0;i<t.length;i++){const a=cr(t[i],e,r);n.push(a)}return n}function hr(t,e,r,n){if(t[0]<r[0]||t[0]>r[2]){const e=.5*n;let i=t[0]-r[0]>e?-n:r[0]-t[0]>e?n:0;0===i&&(i=t[0]-r[2]>e?-n:r[2]-t[0]>e?n:0),t[0]+=i}Qe(e,t)}function fr(t,e,r,n){const i=Math.pow(2,n.z)*$e,a=[n.x*$e,n.y*$e],o=[];for(const n of t)for(const t of n){const n=[t.x+a[0],t.y+a[1]];hr(n,e,r,i),o.push(n)}return o}function pr(t,e,r,n){const i=Math.pow(2,n.z)*$e,a=[n.x*$e,n.y*$e],o=[];for(const r of t){const t=[];for(const n of r){const r=[n.x+a[0],n.y+a[1]];Qe(e,r),t.push(r)}o.push(t)}if(e[2]-e[0]<=i/2){(s=e)[0]=s[1]=1/0,s[2]=s[3]=-1/0;for(const t of o)for(const n of t)hr(n,e,r,i)}var s;return o}class dr{constructor(t,e){this.type=ht,this.geojson=t,this.geometries=e}static parse(t,e){if(2!==t.length)return e.error(`'within' expression requires exactly one argument, but found ${t.length-1} instead.`);if(ie(t[1])){const e=t[1];if(\"FeatureCollection\"===e.type){const t=[];for(const r of e.features){const{type:e,coordinates:n}=r.geometry;\"Polygon\"===e&&t.push(n),\"MultiPolygon\"===e&&t.push(...n)}if(t.length)return new dr(e,{type:\"MultiPolygon\",coordinates:t})}else if(\"Feature\"===e.type){const t=e.geometry.type;if(\"Polygon\"===t||\"MultiPolygon\"===t)return new dr(e,e.geometry)}else if(\"Polygon\"===e.type||\"MultiPolygon\"===e.type)return new dr(e,e)}return e.error(\"'within' expression requires valid geojson object that contains polygon geometry type.\")}evaluate(t){if(null!=t.geometry()&&null!=t.canonicalID()){if(\"Point\"===t.geometryType())return function(t,e){const r=[1/0,1/0,-1/0,-1/0],n=[1/0,1/0,-1/0,-1/0],i=t.canonicalID();if(\"Polygon\"===e.type){const a=cr(e.coordinates,n,i),o=fr(t.geometry(),r,n,i);if(!tr(r,n))return!1;for(const t of o)if(!ir(t,a))return!1}if(\"MultiPolygon\"===e.type){const a=ur(e.coordinates,n,i),o=fr(t.geometry(),r,n,i);if(!tr(r,n))return!1;for(const t of o)if(!ar(t,a))return!1}return!0}(t,this.geometries);if(\"LineString\"===t.geometryType())return function(t,e){const r=[1/0,1/0,-1/0,-1/0],n=[1/0,1/0,-1/0,-1/0],i=t.canonicalID();if(\"Polygon\"===e.type){const a=cr(e.coordinates,n,i),o=pr(t.geometry(),r,n,i);if(!tr(r,n))return!1;for(const t of o)if(!or(t,a))return!1}if(\"MultiPolygon\"===e.type){const a=ur(e.coordinates,n,i),o=pr(t.geometry(),r,n,i);if(!tr(r,n))return!1;for(const t of o)if(!sr(t,a))return!1}return!0}(t,this.geometries)}return!1}eachChild(){}outputDefined(){return!0}}let mr=class{constructor(t=[],e=gr){if(this.data=t,this.length=this.data.length,this.compare=e,this.length>0)for(let t=(this.length>>1)-1;t>=0;t--)this._down(t)}push(t){this.data.push(t),this.length++,this._up(this.length-1)}pop(){if(0===this.length)return;const t=this.data[0],e=this.data.pop();return this.length--,this.length>0&&(this.data[0]=e,this._down(0)),t}peek(){return this.data[0]}_up(t){const{data:e,compare:r}=this,n=e[t];for(;t>0;){const i=t-1>>1,a=e[i];if(r(n,a)>=0)break;e[t]=a,t=i}e[t]=n}_down(t){const{data:e,compare:r}=this,n=this.length>>1,i=e[t];for(;t<n;){let n=1+(t<<1),a=e[n];const o=n+1;if(o<this.length&&r(e[o],a)<0&&(n=o,a=e[o]),r(a,i)>=0)break;e[t]=a,t=n}e[t]=i}};function gr(t,e){return t<e?-1:t>e?1:0}function yr(t,e,r,n,i){vr(t,e,r,n||t.length-1,i||_r)}function vr(t,e,r,n,i){for(;n>r;){if(n-r>600){var a=n-r+1,o=e-r+1,s=Math.log(a),l=.5*Math.exp(2*s/3),c=.5*Math.sqrt(s*l*(a-l)/a)*(o-a/2<0?-1:1);vr(t,e,Math.max(r,Math.floor(e-o*l/a+c)),Math.min(n,Math.floor(e+(a-o)*l/a+c)),i)}var u=t[e],h=r,f=n;for(xr(t,r,e),i(t[n],u)>0&&xr(t,r,n);h<f;){for(xr(t,h,f),h++,f--;i(t[h],u)<0;)h++;for(;i(t[f],u)>0;)f--}0===i(t[r],u)?xr(t,r,f):xr(t,++f,n),f<=e&&(r=f+1),e<=f&&(n=f-1)}}function xr(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}function _r(t,e){return t<e?-1:t>e?1:0}function br(t,e){if(t.length<=1)return[t];const r=[];let n,i;for(const e of t){const t=Tr(e);0!==t&&(e.area=Math.abs(t),void 0===i&&(i=t<0),i===t<0?(n&&r.push(n),n=[e]):n.push(e))}if(n&&r.push(n),e>1)for(let t=0;t<r.length;t++)r[t].length<=e||(yr(r[t],e,1,r[t].length-1,wr),r[t]=r[t].slice(0,e));return r}function wr(t,e){return e.area-t.area}function Tr(t){let e=0;for(let r,n,i=0,a=t.length,o=a-1;i<a;o=i++)r=t[i],n=t[o],e+=(n.x-r.x)*(r.y+n.y);return e}const kr=1/298.257223563,Ar=kr*(2-kr),Mr=Math.PI/180;class Sr{constructor(t){const e=6378.137*Mr*1e3,r=Math.cos(t*Mr),n=1/(1-Ar*(1-r*r)),i=Math.sqrt(n);this.kx=e*i*r,this.ky=e*i*n*(1-Ar)}distance(t,e){const r=this.wrap(t[0]-e[0])*this.kx,n=(t[1]-e[1])*this.ky;return Math.sqrt(r*r+n*n)}pointOnLine(t,e){let r,n,i,a,o=1/0;for(let s=0;s<t.length-1;s++){let l=t[s][0],c=t[s][1],u=this.wrap(t[s+1][0]-l)*this.kx,h=(t[s+1][1]-c)*this.ky,f=0;0===u&&0===h||(f=(this.wrap(e[0]-l)*this.kx*u+(e[1]-c)*this.ky*h)/(u*u+h*h),f>1?(l=t[s+1][0],c=t[s+1][1]):f>0&&(l+=u/this.kx*f,c+=h/this.ky*f)),u=this.wrap(e[0]-l)*this.kx,h=(e[1]-c)*this.ky;const p=u*u+h*h;p<o&&(o=p,r=l,n=c,i=s,a=f)}return{point:[r,n],index:i,t:Math.max(0,Math.min(1,a))}}wrap(t){for(;t<-180;)t+=360;for(;t>180;)t-=360;return t}}const Er=100,Cr=50;function Lr(t,e){return e[0]-t[0]}function Ir(t){return t[1]-t[0]+1}function Pr(t,e){return t[1]>=t[0]&&t[1]<e}function zr(t,e){if(t[0]>t[1])return[null,null];const r=Ir(t);if(e){if(2===r)return[t,null];const e=Math.floor(r/2);return[[t[0],t[0]+e],[t[0]+e,t[1]]]}if(1===r)return[t,null];const n=Math.floor(r/2)-1;return[[t[0],t[0]+n],[t[0]+n+1,t[1]]]}function Or(t,e){if(!Pr(e,t.length))return[1/0,1/0,-1/0,-1/0];const r=[1/0,1/0,-1/0,-1/0];for(let n=e[0];n<=e[1];++n)Qe(r,t[n]);return r}function Dr(t){const e=[1/0,1/0,-1/0,-1/0];for(const r of t)for(const t of r)Qe(e,t);return e}function Rr(t){return t[0]!==-1/0&&t[1]!==-1/0&&t[2]!==1/0&&t[3]!==1/0}function Fr(t,e,r){if(!Rr(t)||!Rr(e))return NaN;let n=0,i=0;return t[2]<e[0]&&(n=e[0]-t[2]),t[0]>e[2]&&(n=t[0]-e[2]),t[1]>e[3]&&(i=t[1]-e[3]),t[3]<e[1]&&(i=e[1]-t[3]),r.distance([0,0],[n,i])}function Br(t,e,r){const n=r.pointOnLine(e,t);return r.distance(t,n.point)}function Nr(t,e,r,n,i){const a=Math.min(Br(t,[r,n],i),Br(e,[r,n],i)),o=Math.min(Br(r,[t,e],i),Br(n,[t,e],i));return Math.min(a,o)}function jr(t,e,r,n,i){if(!Pr(e,t.length)||!Pr(n,r.length))return 1/0;let a=1/0;for(let o=e[0];o<e[1];++o){const e=t[o],s=t[o+1];for(let t=n[0];t<n[1];++t){const n=r[t],o=r[t+1];if(rr(e,s,n,o))return 0;a=Math.min(a,Nr(e,s,n,o,i))}}return a}function Ur(t,e,r,n,i){if(!Pr(e,t.length)||!Pr(n,r.length))return NaN;let a=1/0;for(let o=e[0];o<=e[1];++o)for(let e=n[0];e<=n[1];++e)if(a=Math.min(a,i.distance(t[o],r[e])),0===a)return a;return a}function Vr(t,e,r){if(ir(t,e,!0))return 0;let n=1/0;for(const i of e){const e=i[0],a=i[i.length-1];if(e!==a&&(n=Math.min(n,Br(t,[a,e],r)),0===n))return n;const o=r.pointOnLine(i,t);if(n=Math.min(n,r.distance(t,o.point)),0===n)return n}return n}function qr(t,e,r,n){if(!Pr(e,t.length))return NaN;for(let n=e[0];n<=e[1];++n)if(ir(t[n],r,!0))return 0;let i=1/0;for(let a=e[0];a<e[1];++a){const e=t[a],o=t[a+1];for(const t of r)for(let r=0,a=t.length,s=a-1;r<a;s=r++){const a=t[s],l=t[r];if(rr(e,o,a,l))return 0;i=Math.min(i,Nr(e,o,a,l,n))}}return i}function Hr(t,e){for(const r of t)for(const t of r)if(ir(t,e,!0))return!0;return!1}function Gr(t,e,r,n=1/0){const i=Dr(t),a=Dr(e);if(n!==1/0&&Fr(i,a,r)>=n)return n;if(tr(i,a)){if(Hr(t,e))return 0}else if(Hr(e,t))return 0;let o=1/0;for(const n of t)for(let t=0,i=n.length,a=i-1;t<i;a=t++){const i=n[a],s=n[t];for(const t of e)for(let e=0,n=t.length,a=n-1;e<n;a=e++){const n=t[a],l=t[e];if(rr(i,s,n,l))return 0;o=Math.min(o,Nr(i,s,n,l,r))}}return o}function Zr(t,e,r,n,i,a){if(!a)return;const o=Fr(Or(n,a),i,r);o<e&&t.push([o,a,[0,0]])}function Wr(t,e,r,n,i,a,o){if(!a||!o)return;const s=Fr(Or(n,a),Or(i,o),r);s<e&&t.push([s,a,o])}function Yr(t,e,r,n,i=1/0){let a=Math.min(n.distance(t[0],r[0][0]),i);if(0===a)return a;const o=new mr([[0,[0,t.length-1],[0,0]]],Lr),s=Dr(r);for(;o.length>0;){const i=o.pop();if(i[0]>=a)continue;const l=i[1],c=e?Cr:Er;if(Ir(l)<=c){if(!Pr(l,t.length))return NaN;if(e){const e=qr(t,l,r,n);if(isNaN(e)||0===e)return e;a=Math.min(a,e)}else for(let e=l[0];e<=l[1];++e){const i=Vr(t[e],r,n);if(a=Math.min(a,i),0===a)return 0}}else{const r=zr(l,e);Zr(o,a,n,t,s,r[0]),Zr(o,a,n,t,s,r[1])}}return a}function Xr(t,e,r,n,i,a=1/0){let o=Math.min(a,i.distance(t[0],r[0]));if(0===o)return o;const s=new mr([[0,[0,t.length-1],[0,r.length-1]]],Lr);for(;s.length>0;){const a=s.pop();if(a[0]>=o)continue;const l=a[1],c=a[2],u=e?Cr:Er,h=n?Cr:Er;if(Ir(l)<=u&&Ir(c)<=h){if(!Pr(l,t.length)&&Pr(c,r.length))return NaN;let a;if(e&&n)a=jr(t,l,r,c,i),o=Math.min(o,a);else if(e&&!n){const e=t.slice(l[0],l[1]+1);for(let t=c[0];t<=c[1];++t)if(a=Br(r[t],e,i),o=Math.min(o,a),0===o)return o}else if(!e&&n){const e=r.slice(c[0],c[1]+1);for(let r=l[0];r<=l[1];++r)if(a=Br(t[r],e,i),o=Math.min(o,a),0===o)return o}else a=Ur(t,l,r,c,i),o=Math.min(o,a)}else{const a=zr(l,e),u=zr(c,n);Wr(s,o,i,t,r,a[0],u[0]),Wr(s,o,i,t,r,a[0],u[1]),Wr(s,o,i,t,r,a[1],u[0]),Wr(s,o,i,t,r,a[1],u[1])}}return o}function $r(t){return\"MultiPolygon\"===t.type?t.coordinates.map((t=>({type:\"Polygon\",coordinates:t}))):\"MultiLineString\"===t.type?t.coordinates.map((t=>({type:\"LineString\",coordinates:t}))):\"MultiPoint\"===t.type?t.coordinates.map((t=>({type:\"Point\",coordinates:t}))):[t]}class Jr{constructor(t,e){this.type=ct,this.geojson=t,this.geometries=e}static parse(t,e){if(2!==t.length)return e.error(`'distance' expression requires exactly one argument, but found ${t.length-1} instead.`);if(ie(t[1])){const e=t[1];if(\"FeatureCollection\"===e.type)return new Jr(e,e.features.map((t=>$r(t.geometry))).flat());if(\"Feature\"===e.type)return new Jr(e,$r(e.geometry));if(\"type\"in e&&\"coordinates\"in e)return new Jr(e,$r(e))}return e.error(\"'distance' expression requires valid geojson object that contains polygon geometry type.\")}evaluate(t){if(null!=t.geometry()&&null!=t.canonicalID()){if(\"Point\"===t.geometryType())return function(t,e){const r=t.geometry(),n=r.flat().map((e=>Ke([e.x,e.y],t.canonical)));if(0===r.length)return NaN;const i=new Sr(n[0][1]);let a=1/0;for(const t of e){switch(t.type){case\"Point\":a=Math.min(a,Xr(n,!1,[t.coordinates],!1,i,a));break;case\"LineString\":a=Math.min(a,Xr(n,!1,t.coordinates,!0,i,a));break;case\"Polygon\":a=Math.min(a,Yr(n,!1,t.coordinates,i,a))}if(0===a)return a}return a}(t,this.geometries);if(\"LineString\"===t.geometryType())return function(t,e){const r=t.geometry(),n=r.flat().map((e=>Ke([e.x,e.y],t.canonical)));if(0===r.length)return NaN;const i=new Sr(n[0][1]);let a=1/0;for(const t of e){switch(t.type){case\"Point\":a=Math.min(a,Xr(n,!0,[t.coordinates],!1,i,a));break;case\"LineString\":a=Math.min(a,Xr(n,!0,t.coordinates,!0,i,a));break;case\"Polygon\":a=Math.min(a,Yr(n,!0,t.coordinates,i,a))}if(0===a)return a}return a}(t,this.geometries);if(\"Polygon\"===t.geometryType())return function(t,e){const r=t.geometry();if(0===r.length||0===r[0].length)return NaN;const n=br(r,0).map((e=>e.map((e=>e.map((e=>Ke([e.x,e.y],t.canonical))))))),i=new Sr(n[0][0][0][1]);let a=1/0;for(const t of e)for(const e of n){switch(t.type){case\"Point\":a=Math.min(a,Yr([t.coordinates],!1,e,i,a));break;case\"LineString\":a=Math.min(a,Yr(t.coordinates,!0,e,i,a));break;case\"Polygon\":a=Math.min(a,Gr(e,t.coordinates,i,a))}if(0===a)return a}return a}(t,this.geometries)}return NaN}eachChild(){}outputDefined(){return!0}}const Kr={\"==\":Ne,\"!=\":je,\">\":Ve,\"<\":Ue,\">=\":He,\"<=\":qe,array:ue,at:ve,boolean:ue,case:we,coalesce:De,collator:Ge,format:We,image:Ye,in:xe,\"index-of\":_e,interpolate:ze,\"interpolate-hcl\":ze,\"interpolate-lab\":ze,length:Xe,let:ge,literal:se,match:be,number:ue,\"number-format\":Ze,object:ue,slice:Te,step:Ae,string:ue,\"to-boolean\":fe,\"to-color\":fe,\"to-number\":fe,\"to-string\":fe,var:ye,within:dr,distance:Jr};class Qr{constructor(t,e,r,n){this.name=t,this.type=e,this._evaluate=r,this.args=n}evaluate(t){return this._evaluate(t,this.args)}eachChild(t){this.args.forEach(t)}outputDefined(){return!1}static parse(t,e){const r=t[0],n=Qr.definitions[r];if(!n)return e.error(`Unknown expression \"${r}\". If you wanted a literal array, use [\"literal\", [...]].`,0);const i=Array.isArray(n)?n[0]:n.type,a=Array.isArray(n)?[[n[1],n[2]]]:n.overloads,o=a.filter((([e])=>!Array.isArray(e)||e.length===t.length-1));let s=null;for(const[n,a]of o){s=new me(e.registry,an,e.path,null,e.scope);const o=[];let l=!1;for(let e=1;e<t.length;e++){const r=t[e],i=Array.isArray(n)?n[e-1]:n.type,a=s.parse(r,1+o.length,i);if(!a){l=!0;break}o.push(a)}if(!l)if(Array.isArray(n)&&n.length!==o.length)s.error(`Expected ${n.length} arguments, but found ${o.length} instead.`);else{for(let t=0;t<o.length;t++){const e=Array.isArray(n)?n[t]:n.type,r=o[t];s.concat(t+1).checkSubtype(e,r.type)}if(0===s.errors.length)return new Qr(r,i,a,o)}}if(1===o.length)e.errors.push(...s.errors);else{const r=(o.length?o:a).map((([t])=>{return e=t,Array.isArray(e)?`(${e.map(bt).join(\", \")})`:`(${bt(e.type)}...)`;var e})).join(\" | \"),n=[];for(let r=1;r<t.length;r++){const i=e.parse(t[r],1+n.length);if(!i)return null;n.push(bt(i.type))}e.error(`Expected arguments of type ${r}, but found (${n.join(\", \")}) instead.`)}return null}static register(t,e){Qr.definitions=e;for(const r in e)t[r]=Qr}}function tn(t,[e,r,n,i]){e=e.evaluate(t),r=r.evaluate(t),n=n.evaluate(t);const a=i?i.evaluate(t):1,o=ne(e,r,n,a);if(o)throw new le(o);return new Xt(e/255,r/255,n/255,a,!1)}function en(t,e){return t in e}function rn(t,e){const r=e[t];return void 0===r?null:r}function nn(t){return{type:t}}function an(t){if(t instanceof ye)return an(t.boundExpression);if(t instanceof Qr&&\"error\"===t.name)return!1;if(t instanceof Ge)return!1;if(t instanceof dr)return!1;if(t instanceof Jr)return!1;const e=t instanceof fe||t instanceof ue;let r=!0;return t.eachChild((t=>{r=e?r&&an(t):r&&t instanceof se})),!!r&&on(t)&&ln(t,[\"zoom\",\"heatmap-density\",\"line-progress\",\"accumulated\",\"is-supported-script\"])}function on(t){if(t instanceof Qr){if(\"get\"===t.name&&1===t.args.length)return!1;if(\"feature-state\"===t.name)return!1;if(\"has\"===t.name&&1===t.args.length)return!1;if(\"properties\"===t.name||\"geometry-type\"===t.name||\"id\"===t.name)return!1;if(/^filter-/.test(t.name))return!1}if(t instanceof dr)return!1;if(t instanceof Jr)return!1;let e=!0;return t.eachChild((t=>{e&&!on(t)&&(e=!1)})),e}function sn(t){if(t instanceof Qr&&\"feature-state\"===t.name)return!1;let e=!0;return t.eachChild((t=>{e&&!sn(t)&&(e=!1)})),e}function ln(t,e){if(t instanceof Qr&&e.indexOf(t.name)>=0)return!1;let r=!0;return t.eachChild((t=>{r&&!ln(t,e)&&(r=!1)})),r}function cn(t){return{result:\"success\",value:t}}function un(t){return{result:\"error\",value:t}}function hn(t){return\"data-driven\"===t[\"property-type\"]||\"cross-faded-data-driven\"===t[\"property-type\"]}function fn(t){return!!t.expression&&t.expression.parameters.indexOf(\"zoom\")>-1}function pn(t){return!!t.expression&&t.expression.interpolated}function dn(t){return t instanceof Number?\"number\":t instanceof String?\"string\":t instanceof Boolean?\"boolean\":Array.isArray(t)?\"array\":null===t?\"null\":typeof t}function mn(t){return\"object\"==typeof t&&null!==t&&!Array.isArray(t)}function gn(t){return t}function yn(t,e){const r=\"color\"===e.type,n=t.stops&&\"object\"==typeof t.stops[0][0],i=n||void 0!==t.property,a=n||!i,o=t.type||(pn(e)?\"exponential\":\"interval\");if(r||\"padding\"===e.type){const n=r?Xt.parse:Qt.parse;(t=at({},t)).stops&&(t.stops=t.stops.map((t=>[t[0],n(t[1])]))),t.default?t.default=n(t.default):t.default=n(e.default)}if(t.colorSpace&&(\"rgb\"!==(s=t.colorSpace)&&\"hcl\"!==s&&\"lab\"!==s))throw new Error(`Unknown color space: \"${t.colorSpace}\"`);var s;let l,c,u;if(\"exponential\"===o)l=bn;else if(\"interval\"===o)l=_n;else if(\"categorical\"===o){l=xn,c=Object.create(null);for(const e of t.stops)c[e[0]]=e[1];u=typeof t.stops[0][0]}else{if(\"identity\"!==o)throw new Error(`Unknown function type \"${o}\"`);l=wn}if(n){const r={},n=[];for(let e=0;e<t.stops.length;e++){const i=t.stops[e],a=i[0].zoom;void 0===r[a]&&(r[a]={zoom:a,type:t.type,property:t.property,default:t.default,stops:[]},n.push(a)),r[a].stops.push([i[0].value,i[1]])}const i=[];for(const t of n)i.push([r[t].zoom,yn(r[t],e)]);const a={name:\"linear\"};return{kind:\"composite\",interpolationType:a,interpolationFactor:ze.interpolationFactor.bind(void 0,a),zoomStops:i.map((t=>t[0])),evaluate({zoom:r},n){return bn({stops:i,base:t.base},e,r).evaluate(r,n)}}}if(a){const r=\"exponential\"===o?{name:\"exponential\",base:void 0!==t.base?t.base:1}:null;return{kind:\"camera\",interpolationType:r,interpolationFactor:ze.interpolationFactor.bind(void 0,r),zoomStops:t.stops.map((t=>t[0])),evaluate:({zoom:r})=>l(t,e,r,c,u)}}return{kind:\"source\",evaluate(r,n){const i=n&&n.properties?n.properties[t.property]:void 0;return void 0===i?vn(t.default,e.default):l(t,e,i,c,u)}}}function vn(t,e,r){return void 0!==t?t:void 0!==e?e:void 0!==r?r:void 0}function xn(t,e,r,n,i){return vn(typeof r===i?n[r]:void 0,t.default,e.default)}function _n(t,e,r){if(\"number\"!==dn(r))return vn(t.default,e.default);const n=t.stops.length;if(1===n)return t.stops[0][1];if(r<=t.stops[0][0])return t.stops[0][1];if(r>=t.stops[n-1][0])return t.stops[n-1][1];const i=ke(t.stops.map((t=>t[0])),r);return t.stops[i][1]}function bn(t,e,r){const n=void 0!==t.base?t.base:1;if(\"number\"!==dn(r))return vn(t.default,e.default);const i=t.stops.length;if(1===i)return t.stops[0][1];if(r<=t.stops[0][0])return t.stops[0][1];if(r>=t.stops[i-1][0])return t.stops[i-1][1];const a=ke(t.stops.map((t=>t[0])),r),o=function(t,e,r,n){const i=n-r,a=t-r;return 0===i?0:1===e?a/i:(Math.pow(e,a)-1)/(Math.pow(e,i)-1)}(r,n,t.stops[a][0],t.stops[a+1][0]),s=t.stops[a][1],l=t.stops[a+1][1],c=Pe[e.type]||gn;return\"function\"==typeof s.evaluate?{evaluate(...e){const r=s.evaluate.apply(void 0,e),n=l.evaluate.apply(void 0,e);if(void 0!==r&&void 0!==n)return c(r,n,o,t.colorSpace)}}:c(s,l,o,t.colorSpace)}function wn(t,e,r){switch(e.type){case\"color\":r=Xt.parse(r);break;case\"formatted\":r=Kt.fromString(r.toString());break;case\"resolvedImage\":r=re.fromString(r.toString());break;case\"padding\":r=Qt.parse(r);break;default:dn(r)===e.type||\"enum\"===e.type&&e.values[r]||(r=void 0)}return vn(r,t.default,e.default)}Qr.register(Kr,{error:[{kind:\"error\"},[ut],(t,[e])=>{throw new le(e.evaluate(t))}],typeof:[ut,[dt],(t,[e])=>bt(ae(e.evaluate(t)))],\"to-rgba\":[_t(ct,4),[ft],(t,[e])=>{const[r,n,i,a]=e.evaluate(t).rgb;return[255*r,255*n,255*i,a]}],rgb:[ft,[ct,ct,ct],tn],rgba:[ft,[ct,ct,ct,ct],tn],has:{type:ht,overloads:[[[ut],(t,[e])=>en(e.evaluate(t),t.properties())],[[ut,pt],(t,[e,r])=>en(e.evaluate(t),r.evaluate(t))]]},get:{type:dt,overloads:[[[ut],(t,[e])=>rn(e.evaluate(t),t.properties())],[[ut,pt],(t,[e,r])=>rn(e.evaluate(t),r.evaluate(t))]]},\"feature-state\":[dt,[ut],(t,[e])=>rn(e.evaluate(t),t.featureState||{})],properties:[pt,[],t=>t.properties()],\"geometry-type\":[ut,[],t=>t.geometryType()],id:[dt,[],t=>t.id()],zoom:[ct,[],t=>t.globals.zoom],\"heatmap-density\":[ct,[],t=>t.globals.heatmapDensity||0],\"line-progress\":[ct,[],t=>t.globals.lineProgress||0],accumulated:[dt,[],t=>void 0===t.globals.accumulated?null:t.globals.accumulated],\"+\":[ct,nn(ct),(t,e)=>{let r=0;for(const n of e)r+=n.evaluate(t);return r}],\"*\":[ct,nn(ct),(t,e)=>{let r=1;for(const n of e)r*=n.evaluate(t);return r}],\"-\":{type:ct,overloads:[[[ct,ct],(t,[e,r])=>e.evaluate(t)-r.evaluate(t)],[[ct],(t,[e])=>-e.evaluate(t)]]},\"/\":[ct,[ct,ct],(t,[e,r])=>e.evaluate(t)/r.evaluate(t)],\"%\":[ct,[ct,ct],(t,[e,r])=>e.evaluate(t)%r.evaluate(t)],ln2:[ct,[],()=>Math.LN2],pi:[ct,[],()=>Math.PI],e:[ct,[],()=>Math.E],\"^\":[ct,[ct,ct],(t,[e,r])=>Math.pow(e.evaluate(t),r.evaluate(t))],sqrt:[ct,[ct],(t,[e])=>Math.sqrt(e.evaluate(t))],log10:[ct,[ct],(t,[e])=>Math.log(e.evaluate(t))/Math.LN10],ln:[ct,[ct],(t,[e])=>Math.log(e.evaluate(t))],log2:[ct,[ct],(t,[e])=>Math.log(e.evaluate(t))/Math.LN2],sin:[ct,[ct],(t,[e])=>Math.sin(e.evaluate(t))],cos:[ct,[ct],(t,[e])=>Math.cos(e.evaluate(t))],tan:[ct,[ct],(t,[e])=>Math.tan(e.evaluate(t))],asin:[ct,[ct],(t,[e])=>Math.asin(e.evaluate(t))],acos:[ct,[ct],(t,[e])=>Math.acos(e.evaluate(t))],atan:[ct,[ct],(t,[e])=>Math.atan(e.evaluate(t))],min:[ct,nn(ct),(t,e)=>Math.min(...e.map((e=>e.evaluate(t))))],max:[ct,nn(ct),(t,e)=>Math.max(...e.map((e=>e.evaluate(t))))],abs:[ct,[ct],(t,[e])=>Math.abs(e.evaluate(t))],round:[ct,[ct],(t,[e])=>{const r=e.evaluate(t);return r<0?-Math.round(-r):Math.round(r)}],floor:[ct,[ct],(t,[e])=>Math.floor(e.evaluate(t))],ceil:[ct,[ct],(t,[e])=>Math.ceil(e.evaluate(t))],\"filter-==\":[ht,[ut,dt],(t,[e,r])=>t.properties()[e.value]===r.value],\"filter-id-==\":[ht,[dt],(t,[e])=>t.id()===e.value],\"filter-type-==\":[ht,[ut],(t,[e])=>t.geometryType()===e.value],\"filter-<\":[ht,[ut,dt],(t,[e,r])=>{const n=t.properties()[e.value],i=r.value;return typeof n==typeof i&&n<i}],\"filter-id-<\":[ht,[dt],(t,[e])=>{const r=t.id(),n=e.value;return typeof r==typeof n&&r<n}],\"filter->\":[ht,[ut,dt],(t,[e,r])=>{const n=t.properties()[e.value],i=r.value;return typeof n==typeof i&&n>i}],\"filter-id->\":[ht,[dt],(t,[e])=>{const r=t.id(),n=e.value;return typeof r==typeof n&&r>n}],\"filter-<=\":[ht,[ut,dt],(t,[e,r])=>{const n=t.properties()[e.value],i=r.value;return typeof n==typeof i&&n<=i}],\"filter-id-<=\":[ht,[dt],(t,[e])=>{const r=t.id(),n=e.value;return typeof r==typeof n&&r<=n}],\"filter->=\":[ht,[ut,dt],(t,[e,r])=>{const n=t.properties()[e.value],i=r.value;return typeof n==typeof i&&n>=i}],\"filter-id->=\":[ht,[dt],(t,[e])=>{const r=t.id(),n=e.value;return typeof r==typeof n&&r>=n}],\"filter-has\":[ht,[dt],(t,[e])=>e.value in t.properties()],\"filter-has-id\":[ht,[],t=>null!==t.id()&&void 0!==t.id()],\"filter-type-in\":[ht,[_t(ut)],(t,[e])=>e.value.indexOf(t.geometryType())>=0],\"filter-id-in\":[ht,[_t(dt)],(t,[e])=>e.value.indexOf(t.id())>=0],\"filter-in-small\":[ht,[ut,_t(dt)],(t,[e,r])=>r.value.indexOf(t.properties()[e.value])>=0],\"filter-in-large\":[ht,[ut,_t(dt)],(t,[e,r])=>function(t,e,r,n){for(;r<=n;){const i=r+n>>1;if(e[i]===t)return!0;e[i]>t?n=i-1:r=i+1}return!1}(t.properties()[e.value],r.value,0,r.value.length-1)],all:{type:ht,overloads:[[[ht,ht],(t,[e,r])=>e.evaluate(t)&&r.evaluate(t)],[nn(ht),(t,e)=>{for(const r of e)if(!r.evaluate(t))return!1;return!0}]]},any:{type:ht,overloads:[[[ht,ht],(t,[e,r])=>e.evaluate(t)||r.evaluate(t)],[nn(ht),(t,e)=>{for(const r of e)if(r.evaluate(t))return!0;return!1}]]},\"!\":[ht,[ht],(t,[e])=>!e.evaluate(t)],\"is-supported-script\":[ht,[ut],(t,[e])=>{const r=t.globals&&t.globals.isSupportedScript;return!r||r(e.evaluate(t))}],upcase:[ut,[ut],(t,[e])=>e.evaluate(t).toUpperCase()],downcase:[ut,[ut],(t,[e])=>e.evaluate(t).toLowerCase()],concat:[ut,nn(dt),(t,e)=>e.map((e=>oe(e.evaluate(t)))).join(\"\")],\"resolved-locale\":[ut,[mt],(t,[e])=>e.evaluate(t).resolvedLocale()]});class Tn{constructor(t,e){var r;this.expression=t,this._warningHistory={},this._evaluator=new de,this._defaultValue=e?\"color\"===(r=e).type&&mn(r.default)?new Xt(0,0,0,0):\"color\"===r.type?Xt.parse(r.default)||null:\"padding\"===r.type?Qt.parse(r.default)||null:\"variableAnchorOffsetCollection\"===r.type?ee.parse(r.default)||null:void 0===r.default?null:r.default:null,this._enumValues=e&&\"enum\"===e.type?e.values:null}evaluateWithoutErrorHandling(t,e,r,n,i,a){return this._evaluator.globals=t,this._evaluator.feature=e,this._evaluator.featureState=r,this._evaluator.canonical=n,this._evaluator.availableImages=i||null,this._evaluator.formattedSection=a,this.expression.evaluate(this._evaluator)}evaluate(t,e,r,n,i,a){this._evaluator.globals=t,this._evaluator.feature=e||null,this._evaluator.featureState=r||null,this._evaluator.canonical=n,this._evaluator.availableImages=i||null,this._evaluator.formattedSection=a||null;try{const t=this.expression.evaluate(this._evaluator);if(null==t||\"number\"==typeof t&&t!=t)return this._defaultValue;if(this._enumValues&&!(t in this._enumValues))throw new le(`Expected value to be one of ${Object.keys(this._enumValues).map((t=>JSON.stringify(t))).join(\", \")}, but found ${JSON.stringify(t)} instead.`);return t}catch(t){return this._warningHistory[t.message]||(this._warningHistory[t.message]=!0,\"undefined\"!=typeof console&&console.warn(t.message)),this._defaultValue}}}function kn(t){return Array.isArray(t)&&t.length>0&&\"string\"==typeof t[0]&&t[0]in Kr}function An(t,e){const r=new me(Kr,an,[],e?function(t){const e={color:ft,string:ut,number:ct,enum:ut,boolean:ht,formatted:gt,padding:yt,resolvedImage:vt,variableAnchorOffsetCollection:xt};return\"array\"===t.type?_t(e[t.value]||dt,t.length):e[t.type]}(e):void 0),n=r.parse(t,void 0,void 0,void 0,e&&\"string\"===e.type?{typeAnnotation:\"coerce\"}:void 0);return n?cn(new Tn(n,e)):un(r.errors)}class Mn{constructor(t,e){this.kind=t,this._styleExpression=e,this.isStateDependent=\"constant\"!==t&&!sn(e.expression)}evaluateWithoutErrorHandling(t,e,r,n,i,a){return this._styleExpression.evaluateWithoutErrorHandling(t,e,r,n,i,a)}evaluate(t,e,r,n,i,a){return this._styleExpression.evaluate(t,e,r,n,i,a)}}class Sn{constructor(t,e,r,n){this.kind=t,this.zoomStops=r,this._styleExpression=e,this.isStateDependent=\"camera\"!==t&&!sn(e.expression),this.interpolationType=n}evaluateWithoutErrorHandling(t,e,r,n,i,a){return this._styleExpression.evaluateWithoutErrorHandling(t,e,r,n,i,a)}evaluate(t,e,r,n,i,a){return this._styleExpression.evaluate(t,e,r,n,i,a)}interpolationFactor(t,e,r){return this.interpolationType?ze.interpolationFactor(this.interpolationType,t,e,r):0}}function En(t,e){const r=An(t,e);if(\"error\"===r.result)return r;const n=r.value.expression,i=on(n);if(!i&&!hn(e))return un([new ot(\"\",\"data expressions not supported\")]);const a=ln(n,[\"zoom\"]);if(!a&&!fn(e))return un([new ot(\"\",\"zoom expressions not supported\")]);const o=Ln(n);if(!o&&!a)return un([new ot(\"\",'\"zoom\" expression may only be used as input to a top-level \"step\" or \"interpolate\" expression.')]);if(o instanceof ot)return un([o]);if(o instanceof ze&&!pn(e))return un([new ot(\"\",'\"interpolate\" expressions cannot be used with this property')]);if(!o)return cn(new Mn(i?\"constant\":\"source\",r.value));const s=o instanceof ze?o.interpolation:void 0;return cn(new Sn(i?\"camera\":\"composite\",r.value,o.labels,s))}class Cn{constructor(t,e){this._parameters=t,this._specification=e,at(this,yn(this._parameters,this._specification))}static deserialize(t){return new Cn(t._parameters,t._specification)}static serialize(t){return{_parameters:t._parameters,_specification:t._specification}}}function Ln(t){let e=null;if(t instanceof ge)e=Ln(t.result);else if(t instanceof De){for(const r of t.args)if(e=Ln(r),e)break}else(t instanceof Ae||t instanceof ze)&&t.input instanceof Qr&&\"zoom\"===t.input.name&&(e=t);return e instanceof ot||t.eachChild((t=>{const r=Ln(t);r instanceof ot?e=r:!e&&r?e=new ot(\"\",'\"zoom\" expression may only be used as input to a top-level \"step\" or \"interpolate\" expression.'):e&&r&&e!==r&&(e=new ot(\"\",'Only one zoom-based \"step\" or \"interpolate\" subexpression may be used in an expression.'))})),e}function In(t){if(!0===t||!1===t)return!0;if(!Array.isArray(t)||0===t.length)return!1;switch(t[0]){case\"has\":return t.length>=2&&\"$id\"!==t[1]&&\"$type\"!==t[1];case\"in\":return t.length>=3&&(\"string\"!=typeof t[1]||Array.isArray(t[2]));case\"!in\":case\"!has\":case\"none\":return!1;case\"==\":case\"!=\":case\">\":case\">=\":case\"<\":case\"<=\":return 3!==t.length||Array.isArray(t[1])||Array.isArray(t[2]);case\"any\":case\"all\":for(const e of t.slice(1))if(!In(e)&&\"boolean\"!=typeof e)return!1;return!0;default:return!0}}const Pn={type:\"boolean\",default:!1,transition:!1,\"property-type\":\"data-driven\",expression:{interpolated:!1,parameters:[\"zoom\",\"feature\"]}};function zn(t){if(null==t)return{filter:()=>!0,needGeometry:!1};In(t)||(t=Rn(t));const e=An(t,Pn);if(\"error\"===e.result)throw new Error(e.value.map((t=>`${t.key}: ${t.message}`)).join(\", \"));return{filter:(t,r,n)=>e.value.evaluate(t,r,{},n),needGeometry:Dn(t)}}function On(t,e){return t<e?-1:t>e?1:0}function Dn(t){if(!Array.isArray(t))return!1;if(\"within\"===t[0]||\"distance\"===t[0])return!0;for(let e=1;e<t.length;e++)if(Dn(t[e]))return!0;return!1}function Rn(t){if(!t)return!0;const e=t[0];return t.length<=1?\"any\"!==e:\"==\"===e?Fn(t[1],t[2],\"==\"):\"!=\"===e?jn(Fn(t[1],t[2],\"==\")):\"<\"===e||\">\"===e||\"<=\"===e||\">=\"===e?Fn(t[1],t[2],e):\"any\"===e?(r=t.slice(1),[\"any\"].concat(r.map(Rn))):\"all\"===e?[\"all\"].concat(t.slice(1).map(Rn)):\"none\"===e?[\"all\"].concat(t.slice(1).map(Rn).map(jn)):\"in\"===e?Bn(t[1],t.slice(2)):\"!in\"===e?jn(Bn(t[1],t.slice(2))):\"has\"===e?Nn(t[1]):\"!has\"!==e||jn(Nn(t[1]));var r}function Fn(t,e,r){switch(t){case\"$type\":return[`filter-type-${r}`,e];case\"$id\":return[`filter-id-${r}`,e];default:return[`filter-${r}`,t,e]}}function Bn(t,e){if(0===e.length)return!1;switch(t){case\"$type\":return[\"filter-type-in\",[\"literal\",e]];case\"$id\":return[\"filter-id-in\",[\"literal\",e]];default:return e.length>200&&!e.some((t=>typeof t!=typeof e[0]))?[\"filter-in-large\",t,[\"literal\",e.sort(On)]]:[\"filter-in-small\",t,[\"literal\",e]]}}function Nn(t){switch(t){case\"$type\":return!0;case\"$id\":return[\"filter-has-id\"];default:return[\"filter-has\",t]}}function jn(t){return[\"!\",t]}function Un(t){const e=typeof t;if(\"number\"===e||\"boolean\"===e||\"string\"===e||null==t)return JSON.stringify(t);if(Array.isArray(t)){let e=\"[\";for(const r of t)e+=`${Un(r)},`;return`${e}]`}const r=Object.keys(t).sort();let n=\"{\";for(let e=0;e<r.length;e++)n+=`${JSON.stringify(r[e])}:${Un(t[r[e]])},`;return`${n}}`}function Vn(t){let e=\"\";for(const r of W)e+=`/${Un(t[r])}`;return e}function qn(t){const e=t.key,r=t.value;return r?[new it(e,r,\"constants have been deprecated as of v8\")]:[]}function Hn(t){return t instanceof Number||t instanceof String||t instanceof Boolean?t.valueOf():t}function Gn(t){if(Array.isArray(t))return t.map(Gn);if(t instanceof Object&&!(t instanceof Number||t instanceof String||t instanceof Boolean)){const e={};for(const r in t)e[r]=Gn(t[r]);return e}return Hn(t)}function Zn(t){const e=t.key,r=t.value,n=t.valueSpec||{},i=t.objectElementValidators||{},a=t.style,o=t.styleSpec,s=t.validateSpec;let l=[];const c=dn(r);if(\"object\"!==c)return[new it(e,r,`object expected, ${c} found`)];for(const t in r){const c=t.split(\".\")[0],u=n[c]||n[\"*\"];let h;if(i[c])h=i[c];else if(n[c])h=s;else if(i[\"*\"])h=i[\"*\"];else{if(!n[\"*\"]){l.push(new it(e,r[t],`unknown property \"${t}\"`));continue}h=s}l=l.concat(h({key:(e?`${e}.`:e)+t,value:r[t],valueSpec:u,style:a,styleSpec:o,object:r,objectKey:t,validateSpec:s},r))}for(const t in n)i[t]||n[t].required&&void 0===n[t].default&&void 0===r[t]&&l.push(new it(e,r,`missing required property \"${t}\"`));return l}function Wn(t){const e=t.value,r=t.valueSpec,n=t.validateSpec,i=t.style,a=t.styleSpec,o=t.key,s=t.arrayElementValidator||n;if(\"array\"!==dn(e))return[new it(o,e,`array expected, ${dn(e)} found`)];if(r.length&&e.length!==r.length)return[new it(o,e,`array length ${r.length} expected, length ${e.length} found`)];if(r[\"min-length\"]&&e.length<r[\"min-length\"])return[new it(o,e,`array length at least ${r[\"min-length\"]} expected, length ${e.length} found`)];let l={type:r.value,values:r.values};a.$version<7&&(l.function=r.function),\"object\"===dn(r.value)&&(l=r.value);let c=[];for(let r=0;r<e.length;r++)c=c.concat(s({array:e,arrayIndex:r,value:e[r],valueSpec:l,validateSpec:t.validateSpec,style:i,styleSpec:a,key:`${o}[${r}]`}));return c}function Yn(t){const e=t.key,r=t.value,n=t.valueSpec;let i=dn(r);return\"number\"===i&&r!=r&&(i=\"NaN\"),\"number\"!==i?[new it(e,r,`number expected, ${i} found`)]:\"minimum\"in n&&r<n.minimum?[new it(e,r,`${r} is less than the minimum value ${n.minimum}`)]:\"maximum\"in n&&r>n.maximum?[new it(e,r,`${r} is greater than the maximum value ${n.maximum}`)]:[]}function Xn(t){const e=t.valueSpec,r=Hn(t.value.type);let n,i,a,o={};const s=\"categorical\"!==r&&void 0===t.value.property,l=!s,c=\"array\"===dn(t.value.stops)&&\"array\"===dn(t.value.stops[0])&&\"object\"===dn(t.value.stops[0][0]),u=Zn({key:t.key,value:t.value,valueSpec:t.styleSpec.function,validateSpec:t.validateSpec,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{stops:function(t){if(\"identity\"===r)return[new it(t.key,t.value,'identity function may not have a \"stops\" property')];let e=[];const n=t.value;return e=e.concat(Wn({key:t.key,value:n,valueSpec:t.valueSpec,validateSpec:t.validateSpec,style:t.style,styleSpec:t.styleSpec,arrayElementValidator:h})),\"array\"===dn(n)&&0===n.length&&e.push(new it(t.key,n,\"array must have at least one stop\")),e},default:function(t){return t.validateSpec({key:t.key,value:t.value,valueSpec:e,validateSpec:t.validateSpec,style:t.style,styleSpec:t.styleSpec})}}});return\"identity\"===r&&s&&u.push(new it(t.key,t.value,'missing required property \"property\"')),\"identity\"===r||t.value.stops||u.push(new it(t.key,t.value,'missing required property \"stops\"')),\"exponential\"===r&&t.valueSpec.expression&&!pn(t.valueSpec)&&u.push(new it(t.key,t.value,\"exponential functions not supported\")),t.styleSpec.$version>=8&&(l&&!hn(t.valueSpec)?u.push(new it(t.key,t.value,\"property functions not supported\")):s&&!fn(t.valueSpec)&&u.push(new it(t.key,t.value,\"zoom functions not supported\"))),\"categorical\"!==r&&!c||void 0!==t.value.property||u.push(new it(t.key,t.value,'\"property\" property is required')),u;function h(t){let r=[];const n=t.value,s=t.key;if(\"array\"!==dn(n))return[new it(s,n,`array expected, ${dn(n)} found`)];if(2!==n.length)return[new it(s,n,`array length 2 expected, length ${n.length} found`)];if(c){if(\"object\"!==dn(n[0]))return[new it(s,n,`object expected, ${dn(n[0])} found`)];if(void 0===n[0].zoom)return[new it(s,n,\"object stop key must have zoom\")];if(void 0===n[0].value)return[new it(s,n,\"object stop key must have value\")];if(a&&a>Hn(n[0].zoom))return[new it(s,n[0].zoom,\"stop zoom values must appear in ascending order\")];Hn(n[0].zoom)!==a&&(a=Hn(n[0].zoom),i=void 0,o={}),r=r.concat(Zn({key:`${s}[0]`,value:n[0],valueSpec:{zoom:{}},validateSpec:t.validateSpec,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{zoom:Yn,value:f}}))}else r=r.concat(f({key:`${s}[0]`,value:n[0],valueSpec:{},validateSpec:t.validateSpec,style:t.style,styleSpec:t.styleSpec},n));return kn(Gn(n[1]))?r.concat([new it(`${s}[1]`,n[1],\"expressions are not allowed in function stops.\")]):r.concat(t.validateSpec({key:`${s}[1]`,value:n[1],valueSpec:e,validateSpec:t.validateSpec,style:t.style,styleSpec:t.styleSpec}))}function f(t,a){const s=dn(t.value),l=Hn(t.value),c=null!==t.value?t.value:a;if(n){if(s!==n)return[new it(t.key,c,`${s} stop domain type must match previous stop domain type ${n}`)]}else n=s;if(\"number\"!==s&&\"string\"!==s&&\"boolean\"!==s)return[new it(t.key,c,\"stop domain value must be a number, string, or boolean\")];if(\"number\"!==s&&\"categorical\"!==r){let n=`number expected, ${s} found`;return hn(e)&&void 0===r&&(n+='\\nIf you intended to use a categorical function, specify `\"type\": \"categorical\"`.'),[new it(t.key,c,n)]}return\"categorical\"!==r||\"number\"!==s||isFinite(l)&&Math.floor(l)===l?\"categorical\"!==r&&\"number\"===s&&void 0!==i&&l<i?[new it(t.key,c,\"stop domain values must appear in ascending order\")]:(i=l,\"categorical\"===r&&l in o?[new it(t.key,c,\"stop domain values must be unique\")]:(o[l]=!0,[])):[new it(t.key,c,`integer expected, found ${l}`)]}}function $n(t){const e=(\"property\"===t.expressionContext?En:An)(Gn(t.value),t.valueSpec);if(\"error\"===e.result)return e.value.map((e=>new it(`${t.key}${e.key}`,t.value,e.message)));const r=e.value.expression||e.value._styleExpression.expression;if(\"property\"===t.expressionContext&&\"text-font\"===t.propertyKey&&!r.outputDefined())return[new it(t.key,t.value,`Invalid data expression for \"${t.propertyKey}\". Output values must be contained as literals within the expression.`)];if(\"property\"===t.expressionContext&&\"layout\"===t.propertyType&&!sn(r))return[new it(t.key,t.value,'\"feature-state\" data expressions are not supported with layout properties.')];if(\"filter\"===t.expressionContext&&!sn(r))return[new it(t.key,t.value,'\"feature-state\" data expressions are not supported with filters.')];if(t.expressionContext&&0===t.expressionContext.indexOf(\"cluster\")){if(!ln(r,[\"zoom\",\"feature-state\"]))return[new it(t.key,t.value,'\"zoom\" and \"feature-state\" expressions are not supported with cluster properties.')];if(\"cluster-initial\"===t.expressionContext&&!on(r))return[new it(t.key,t.value,\"Feature data expressions are not supported with initial expression part of cluster properties.\")]}return[]}function Jn(t){const e=t.key,r=t.value,n=t.valueSpec,i=[];return Array.isArray(n.values)?-1===n.values.indexOf(Hn(r))&&i.push(new it(e,r,`expected one of [${n.values.join(\", \")}], ${JSON.stringify(r)} found`)):-1===Object.keys(n.values).indexOf(Hn(r))&&i.push(new it(e,r,`expected one of [${Object.keys(n.values).join(\", \")}], ${JSON.stringify(r)} found`)),i}function Kn(t){return In(Gn(t.value))?$n(at({},t,{expressionContext:\"filter\",valueSpec:{value:\"boolean\"}})):Qn(t)}function Qn(t){const e=t.value,r=t.key;if(\"array\"!==dn(e))return[new it(r,e,`array expected, ${dn(e)} found`)];const n=t.styleSpec;let i,a=[];if(e.length<1)return[new it(r,e,\"filter array must have at least 1 element\")];switch(a=a.concat(Jn({key:`${r}[0]`,value:e[0],valueSpec:n.filter_operator,style:t.style,styleSpec:t.styleSpec})),Hn(e[0])){case\"<\":case\"<=\":case\">\":case\">=\":e.length>=2&&\"$type\"===Hn(e[1])&&a.push(new it(r,e,`\"$type\" cannot be use with operator \"${e[0]}\"`));case\"==\":case\"!=\":3!==e.length&&a.push(new it(r,e,`filter array for operator \"${e[0]}\" must have 3 elements`));case\"in\":case\"!in\":e.length>=2&&(i=dn(e[1]),\"string\"!==i&&a.push(new it(`${r}[1]`,e[1],`string expected, ${i} found`)));for(let o=2;o<e.length;o++)i=dn(e[o]),\"$type\"===Hn(e[1])?a=a.concat(Jn({key:`${r}[${o}]`,value:e[o],valueSpec:n.geometry_type,style:t.style,styleSpec:t.styleSpec})):\"string\"!==i&&\"number\"!==i&&\"boolean\"!==i&&a.push(new it(`${r}[${o}]`,e[o],`string, number, or boolean expected, ${i} found`));break;case\"any\":case\"all\":case\"none\":for(let n=1;n<e.length;n++)a=a.concat(Qn({key:`${r}[${n}]`,value:e[n],style:t.style,styleSpec:t.styleSpec}));break;case\"has\":case\"!has\":i=dn(e[1]),2!==e.length?a.push(new it(r,e,`filter array for \"${e[0]}\" operator must have 2 elements`)):\"string\"!==i&&a.push(new it(`${r}[1]`,e[1],`string expected, ${i} found`))}return a}function ti(t,e){const r=t.key,n=t.validateSpec,i=t.style,a=t.styleSpec,o=t.value,s=t.objectKey,l=a[`${e}_${t.layerType}`];if(!l)return[];const c=s.match(/^(.*)-transition$/);if(\"paint\"===e&&c&&l[c[1]]&&l[c[1]].transition)return n({key:r,value:o,valueSpec:a.transition,style:i,styleSpec:a});const u=t.valueSpec||l[s];if(!u)return[new it(r,o,`unknown property \"${s}\"`)];let h;if(\"string\"===dn(o)&&hn(u)&&!u.tokens&&(h=/^{([^}]+)}$/.exec(o)))return[new it(r,o,`\"${s}\" does not support interpolation syntax\\nUse an identity property function instead: \\`{ \"type\": \"identity\", \"property\": ${JSON.stringify(h[1])} }\\`.`)];const f=[];return\"symbol\"===t.layerType&&(\"text-field\"===s&&i&&!i.glyphs&&f.push(new it(r,o,'use of \"text-field\" requires a style \"glyphs\" property')),\"text-font\"===s&&mn(Gn(o))&&\"identity\"===Hn(o.type)&&f.push(new it(r,o,'\"text-font\" does not support identity functions'))),f.concat(n({key:t.key,value:o,valueSpec:u,style:i,styleSpec:a,expressionContext:\"property\",propertyType:e,propertyKey:s}))}function ei(t){return ti(t,\"paint\")}function ri(t){return ti(t,\"layout\")}function ni(t){let e=[];const r=t.value,n=t.key,i=t.style,a=t.styleSpec;r.type||r.ref||e.push(new it(n,r,'either \"type\" or \"ref\" is required'));let o=Hn(r.type);const s=Hn(r.ref);if(r.id){const a=Hn(r.id);for(let o=0;o<t.arrayIndex;o++){const t=i.layers[o];Hn(t.id)===a&&e.push(new it(n,r.id,`duplicate layer id \"${r.id}\", previously used at line ${t.id.__line__}`))}}if(\"ref\"in r){let t;[\"type\",\"source\",\"source-layer\",\"filter\",\"layout\"].forEach((t=>{t in r&&e.push(new it(n,r[t],`\"${t}\" is prohibited for ref layers`))})),i.layers.forEach((e=>{Hn(e.id)===s&&(t=e)})),t?t.ref?e.push(new it(n,r.ref,\"ref cannot reference another ref layer\")):o=Hn(t.type):e.push(new it(n,r.ref,`ref layer \"${s}\" not found`))}else if(\"background\"!==o)if(r.source){const t=i.sources&&i.sources[r.source],a=t&&Hn(t.type);t?\"vector\"===a&&\"raster\"===o?e.push(new it(n,r.source,`layer \"${r.id}\" requires a raster source`)):\"raster-dem\"!==a&&\"hillshade\"===o?e.push(new it(n,r.source,`layer \"${r.id}\" requires a raster-dem source`)):\"raster\"===a&&\"raster\"!==o?e.push(new it(n,r.source,`layer \"${r.id}\" requires a vector source`)):\"vector\"!==a||r[\"source-layer\"]?\"raster-dem\"===a&&\"hillshade\"!==o?e.push(new it(n,r.source,\"raster-dem source can only be used with layer type 'hillshade'.\")):\"line\"!==o||!r.paint||!r.paint[\"line-gradient\"]||\"geojson\"===a&&t.lineMetrics||e.push(new it(n,r,`layer \"${r.id}\" specifies a line-gradient, which requires a GeoJSON source with \\`lineMetrics\\` enabled.`)):e.push(new it(n,r,`layer \"${r.id}\" must specify a \"source-layer\"`)):e.push(new it(n,r.source,`source \"${r.source}\" not found`))}else e.push(new it(n,r,'missing required property \"source\"'));return e=e.concat(Zn({key:n,value:r,valueSpec:a.layer,style:t.style,styleSpec:t.styleSpec,validateSpec:t.validateSpec,objectElementValidators:{\"*\"(){return[]},type(){return t.validateSpec({key:`${n}.type`,value:r.type,valueSpec:a.layer.type,style:t.style,styleSpec:t.styleSpec,validateSpec:t.validateSpec,object:r,objectKey:\"type\"})},filter:Kn,layout(t){return Zn({layer:r,key:t.key,value:t.value,style:t.style,styleSpec:t.styleSpec,validateSpec:t.validateSpec,objectElementValidators:{\"*\"(t){return ri(at({layerType:o},t))}}})},paint(t){return Zn({layer:r,key:t.key,value:t.value,style:t.style,styleSpec:t.styleSpec,validateSpec:t.validateSpec,objectElementValidators:{\"*\"(t){return ei(at({layerType:o},t))}}})}}})),e}function ii(t){const e=t.value,r=t.key,n=dn(e);return\"string\"!==n?[new it(r,e,`string expected, ${n} found`)]:[]}const ai={promoteId:function({key:t,value:e}){if(\"string\"===dn(e))return ii({key:t,value:e});{const r=[];for(const n in e)r.push(...ii({key:`${t}.${n}`,value:e[n]}));return r}}};function oi(t){const e=t.value,r=t.key,n=t.styleSpec,i=t.style,a=t.validateSpec;if(!e.type)return[new it(r,e,'\"type\" is required')];const o=Hn(e.type);let s;switch(o){case\"vector\":case\"raster\":return s=Zn({key:r,value:e,valueSpec:n[`source_${o.replace(\"-\",\"_\")}`],style:t.style,styleSpec:n,objectElementValidators:ai,validateSpec:a}),s;case\"raster-dem\":return s=function(t){var e;const r=null!==(e=t.sourceName)&&void 0!==e?e:\"\",n=t.value,i=t.styleSpec,a=i.source_raster_dem,o=t.style;let s=[];const l=dn(n);if(void 0===n)return s;if(\"object\"!==l)return s.push(new it(\"source_raster_dem\",n,`object expected, ${l} found`)),s;const c=\"custom\"===Hn(n.encoding),u=[\"redFactor\",\"greenFactor\",\"blueFactor\",\"baseShift\"],h=t.value.encoding?`\"${t.value.encoding}\"`:\"Default\";for(const e in n)!c&&u.includes(e)?s.push(new it(e,n[e],`In \"${r}\": \"${e}\" is only valid when \"encoding\" is set to \"custom\". ${h} encoding found`)):a[e]?s=s.concat(t.validateSpec({key:e,value:n[e],valueSpec:a[e],validateSpec:t.validateSpec,style:o,styleSpec:i})):s.push(new it(e,n[e],`unknown property \"${e}\"`));return s}({sourceName:r,value:e,style:t.style,styleSpec:n,validateSpec:a}),s;case\"geojson\":if(s=Zn({key:r,value:e,valueSpec:n.source_geojson,style:i,styleSpec:n,validateSpec:a,objectElementValidators:ai}),e.cluster)for(const t in e.clusterProperties){const[n,i]=e.clusterProperties[t],o=\"string\"==typeof n?[n,[\"accumulated\"],[\"get\",t]]:n;s.push(...$n({key:`${r}.${t}.map`,value:i,validateSpec:a,expressionContext:\"cluster-map\"})),s.push(...$n({key:`${r}.${t}.reduce`,value:o,validateSpec:a,expressionContext:\"cluster-reduce\"}))}return s;case\"video\":return Zn({key:r,value:e,valueSpec:n.source_video,style:i,validateSpec:a,styleSpec:n});case\"image\":return Zn({key:r,value:e,valueSpec:n.source_image,style:i,validateSpec:a,styleSpec:n});case\"canvas\":return[new it(r,null,\"Please use runtime APIs to add canvas sources, rather than including them in stylesheets.\",\"source.canvas\")];default:return Jn({key:`${r}.type`,value:e.type,valueSpec:{values:[\"vector\",\"raster\",\"raster-dem\",\"geojson\",\"video\",\"image\"]},style:i,validateSpec:a,styleSpec:n})}}function si(t){const e=t.value,r=t.styleSpec,n=r.light,i=t.style;let a=[];const o=dn(e);if(void 0===e)return a;if(\"object\"!==o)return a=a.concat([new it(\"light\",e,`object expected, ${o} found`)]),a;for(const o in e){const s=o.match(/^(.*)-transition$/);a=s&&n[s[1]]&&n[s[1]].transition?a.concat(t.validateSpec({key:o,value:e[o],valueSpec:r.transition,validateSpec:t.validateSpec,style:i,styleSpec:r})):n[o]?a.concat(t.validateSpec({key:o,value:e[o],valueSpec:n[o],validateSpec:t.validateSpec,style:i,styleSpec:r})):a.concat([new it(o,e[o],`unknown property \"${o}\"`)])}return a}function li(t){const e=t.value,r=t.styleSpec,n=r.sky,i=t.style,a=dn(e);if(void 0===e)return[];if(\"object\"!==a)return[new it(\"sky\",e,`object expected, ${a} found`)];let o=[];for(const a in e)o=n[a]?o.concat(t.validateSpec({key:a,value:e[a],valueSpec:n[a],style:i,styleSpec:r})):o.concat([new it(a,e[a],`unknown property \"${a}\"`)]);return o}function ci(t){const e=t.value,r=t.styleSpec,n=r.terrain,i=t.style;let a=[];const o=dn(e);if(void 0===e)return a;if(\"object\"!==o)return a=a.concat([new it(\"terrain\",e,`object expected, ${o} found`)]),a;for(const o in e)a=n[o]?a.concat(t.validateSpec({key:o,value:e[o],valueSpec:n[o],validateSpec:t.validateSpec,style:i,styleSpec:r})):a.concat([new it(o,e[o],`unknown property \"${o}\"`)]);return a}function ui(t){let e=[];const r=t.value,n=t.key;if(Array.isArray(r)){const i=[],a=[];for(const o in r){r[o].id&&i.includes(r[o].id)&&e.push(new it(n,r,`all the sprites' ids must be unique, but ${r[o].id} is duplicated`)),i.push(r[o].id),r[o].url&&a.includes(r[o].url)&&e.push(new it(n,r,`all the sprites' URLs must be unique, but ${r[o].url} is duplicated`)),a.push(r[o].url);const s={id:{type:\"string\",required:!0},url:{type:\"string\",required:!0}};e=e.concat(Zn({key:`${n}[${o}]`,value:r[o],valueSpec:s,validateSpec:t.validateSpec}))}return e}return ii({key:n,value:r})}const hi={\"*\"(){return[]},array:Wn,boolean:function(t){const e=t.value,r=t.key,n=dn(e);return\"boolean\"!==n?[new it(r,e,`boolean expected, ${n} found`)]:[]},number:Yn,color:function(t){const e=t.key,r=t.value,n=dn(r);return\"string\"!==n?[new it(e,r,`color expected, ${n} found`)]:Xt.parse(String(r))?[]:[new it(e,r,`color expected, \"${r}\" found`)]},constants:qn,enum:Jn,filter:Kn,function:Xn,layer:ni,object:Zn,source:oi,light:si,sky:li,terrain:ci,projection:function(t){const e=t.value,r=t.styleSpec,n=r.projection,i=t.style,a=dn(e);if(void 0===e)return[];if(\"object\"!==a)return[new it(\"projection\",e,`object expected, ${a} found`)];let o=[];for(const a in e)o=n[a]?o.concat(t.validateSpec({key:a,value:e[a],valueSpec:n[a],style:i,styleSpec:r})):o.concat([new it(a,e[a],`unknown property \"${a}\"`)]);return o},string:ii,formatted:function(t){return 0===ii(t).length?[]:$n(t)},resolvedImage:function(t){return 0===ii(t).length?[]:$n(t)},padding:function(t){const e=t.key,r=t.value;if(\"array\"===dn(r)){if(r.length<1||r.length>4)return[new it(e,r,`padding requires 1 to 4 values; ${r.length} values found`)];const n={type:\"number\"};let i=[];for(let a=0;a<r.length;a++)i=i.concat(t.validateSpec({key:`${e}[${a}]`,value:r[a],validateSpec:t.validateSpec,valueSpec:n}));return i}return Yn({key:e,value:r,valueSpec:{}})},variableAnchorOffsetCollection:function(t){const e=t.key,r=t.value,n=dn(r),i=t.styleSpec;if(\"array\"!==n||r.length<1||r.length%2!=0)return[new it(e,r,\"variableAnchorOffsetCollection requires a non-empty array of even length\")];let a=[];for(let n=0;n<r.length;n+=2)a=a.concat(Jn({key:`${e}[${n}]`,value:r[n],valueSpec:i.layout_symbol[\"text-anchor\"]})),a=a.concat(Wn({key:`${e}[${n+1}]`,value:r[n+1],valueSpec:{length:2,value:\"number\"},validateSpec:t.validateSpec,style:t.style,styleSpec:i}));return a},sprite:ui};function fi(t){const e=t.value,r=t.valueSpec,n=t.styleSpec;return t.validateSpec=fi,r.expression&&mn(Hn(e))?Xn(t):r.expression&&kn(Gn(e))?$n(t):r.type&&hi[r.type]?hi[r.type](t):Zn(at({},t,{valueSpec:r.type?n[r.type]:r}))}function pi(t){const e=t.value,r=t.key,n=ii(t);return n.length||(-1===e.indexOf(\"{fontstack}\")&&n.push(new it(r,e,'\"glyphs\" url must include a \"{fontstack}\" token')),-1===e.indexOf(\"{range}\")&&n.push(new it(r,e,'\"glyphs\" url must include a \"{range}\" token'))),n}function di(t,e=Z){let r=[];return r=r.concat(fi({key:\"\",value:t,valueSpec:e.$root,styleSpec:e,style:t,validateSpec:fi,objectElementValidators:{glyphs:pi,\"*\"(){return[]}}})),t.constants&&(r=r.concat(qn({key:\"constants\",value:t.constants,style:t,styleSpec:e,validateSpec:fi}))),gi(r)}function mi(t){return function(e){return t({...e,validateSpec:fi})}}function gi(t){return[].concat(t).sort(((t,e)=>t.line-e.line))}function yi(t){return function(...e){return gi(t.apply(this,e))}}di.source=yi(mi(oi)),di.sprite=yi(mi(ui)),di.glyphs=yi(mi(pi)),di.light=yi(mi(si)),di.sky=yi(mi(li)),di.terrain=yi(mi(ci)),di.layer=yi(mi(ni)),di.filter=yi(mi(Kn)),di.paintProperty=yi(mi(ei)),di.layoutProperty=yi(mi(ri));const vi=di;vi.source;const xi=vi.light,_i=vi.sky;vi.terrain,vi.filter;const bi=vi.paintProperty,wi=vi.layoutProperty;function Ti(t,e){let r=!1;if(e&&e.length)for(const n of e)t.fire(new H(new Error(n.message))),r=!0;return r}class ki{constructor(t,e,r){const n=this.cells=[];if(t instanceof ArrayBuffer){this.arrayBuffer=t;const i=new Int32Array(this.arrayBuffer);t=i[0],e=i[1],r=i[2],this.d=e+2*r;for(let t=0;t<this.d*this.d;t++){const e=i[3+t],r=i[3+t+1];n.push(e===r?null:i.subarray(e,r))}const a=i[3+n.length],o=i[3+n.length+1];this.keys=i.subarray(a,o),this.bboxes=i.subarray(o),this.insert=this._insertReadonly}else{this.d=e+2*r;for(let t=0;t<this.d*this.d;t++)n.push([]);this.keys=[],this.bboxes=[]}this.n=e,this.extent=t,this.padding=r,this.scale=e/t,this.uid=0;const i=r/e*t;this.min=-i,this.max=t+i}insert(t,e,r,n,i){this._forEachCell(e,r,n,i,this._insertCell,this.uid++,void 0,void 0),this.keys.push(t),this.bboxes.push(e),this.bboxes.push(r),this.bboxes.push(n),this.bboxes.push(i)}_insertReadonly(){throw new Error(\"Cannot insert into a GridIndex created from an ArrayBuffer.\")}_insertCell(t,e,r,n,i,a){this.cells[i].push(a)}query(t,e,r,n,i){const a=this.min,o=this.max;if(t<=a&&e<=a&&o<=r&&o<=n&&!i)return Array.prototype.slice.call(this.keys);{const a=[],o={};return this._forEachCell(t,e,r,n,this._queryCell,a,o,i),a}}_queryCell(t,e,r,n,i,a,o,s){const l=this.cells[i];if(null!==l){const i=this.keys,c=this.bboxes;for(let u=0;u<l.length;u++){const h=l[u];if(void 0===o[h]){const l=4*h;(s?s(c[l+0],c[l+1],c[l+2],c[l+3]):t<=c[l+2]&&e<=c[l+3]&&r>=c[l+0]&&n>=c[l+1])?(o[h]=!0,a.push(i[h])):o[h]=!1}}}}_forEachCell(t,e,r,n,i,a,o,s){const l=this._convertToCellCoord(t),c=this._convertToCellCoord(e),u=this._convertToCellCoord(r),h=this._convertToCellCoord(n);for(let f=l;f<=u;f++)for(let l=c;l<=h;l++){const c=this.d*l+f;if((!s||s(this._convertFromCellCoord(f),this._convertFromCellCoord(l),this._convertFromCellCoord(f+1),this._convertFromCellCoord(l+1)))&&i.call(this,t,e,r,n,c,a,o,s))return}}_convertFromCellCoord(t){return(t-this.padding)/this.scale}_convertToCellCoord(t){return Math.max(0,Math.min(this.d-1,Math.floor(t*this.scale)+this.padding))}toArrayBuffer(){if(this.arrayBuffer)return this.arrayBuffer;const t=this.cells,e=3+this.cells.length+1+1;let r=0;for(let t=0;t<this.cells.length;t++)r+=this.cells[t].length;const n=new Int32Array(e+r+this.keys.length+this.bboxes.length);n[0]=this.extent,n[1]=this.n,n[2]=this.padding;let i=e;for(let e=0;e<t.length;e++){const r=t[e];n[3+e]=i,n.set(r,i),i+=r.length}return n[3+t.length]=i,n.set(this.keys,i),i+=this.keys.length,n[3+t.length+1]=i,n.set(this.bboxes,i),i+=this.bboxes.length,n.buffer}static serialize(t,e){const r=t.toArrayBuffer();return e&&e.push(r),{buffer:r}}static deserialize(t){return new ki(t.buffer)}}const Ai={};function Mi(t,e,r={}){if(Ai[t])throw new Error(`${t} is already registered.`);Object.defineProperty(e,\"_classRegistryKey\",{value:t,writeable:!1}),Ai[t]={klass:e,omit:r.omit||[],shallow:r.shallow||[]}}Mi(\"Object\",Object),Mi(\"TransferableGridIndex\",ki),Mi(\"Color\",Xt),Mi(\"Error\",Error),Mi(\"AJAXError\",F),Mi(\"ResolvedImage\",re),Mi(\"StylePropertyFunction\",Cn),Mi(\"StyleExpression\",Tn,{omit:[\"_evaluator\"]}),Mi(\"ZoomDependentExpression\",Sn),Mi(\"ZoomConstantExpression\",Mn),Mi(\"CompoundExpression\",Qr,{omit:[\"_evaluate\"]});for(const t in Kr)Kr[t]._classRegistryKey||Mi(`Expression_${t}`,Kr[t]);function Si(t){return t&&\"undefined\"!=typeof ArrayBuffer&&(t instanceof ArrayBuffer||t.constructor&&\"ArrayBuffer\"===t.constructor.name)}function Ei(t){const e=t.constructor;return t.$name||e._classRegistryKey}function Ci(t){return!function(t){if(null===t||\"object\"!=typeof t)return!1;const e=Ei(t);return!(!e||\"Object\"===e)}(t)&&(null==t||\"boolean\"==typeof t||\"number\"==typeof t||\"string\"==typeof t||t instanceof Boolean||t instanceof Number||t instanceof String||t instanceof Date||t instanceof RegExp||t instanceof Blob||t instanceof Error||Si(t)||S(t)||ArrayBuffer.isView(t)||t instanceof ImageData)}function Li(t,e){if(Ci(t)){if((Si(t)||S(t))&&e&&e.push(t),ArrayBuffer.isView(t)){const r=t;e&&e.push(r.buffer)}return t instanceof ImageData&&e&&e.push(t.data.buffer),t}if(Array.isArray(t)){const r=[];for(const n of t)r.push(Li(n,e));return r}if(\"object\"!=typeof t)throw new Error(\"can't serialize object of type \"+typeof t);const r=Ei(t);if(!r)throw new Error(`can't serialize object of unregistered class ${t.constructor.name}`);if(!Ai[r])throw new Error(`${r} is not registered.`);const{klass:n}=Ai[r],i=n.serialize?n.serialize(t,e):{};if(n.serialize){if(e&&i===e[e.length-1])throw new Error(\"statically serialized object won't survive transfer of $name property\")}else{for(const n in t){if(!t.hasOwnProperty(n))continue;if(Ai[r].omit.indexOf(n)>=0)continue;const a=t[n];i[n]=Ai[r].shallow.indexOf(n)>=0?a:Li(a,e)}t instanceof Error&&(i.message=t.message)}if(i.$name)throw new Error(\"$name property is reserved for worker serialization logic.\");return\"Object\"!==r&&(i.$name=r),i}function Ii(t){if(Ci(t))return t;if(Array.isArray(t))return t.map(Ii);if(\"object\"!=typeof t)throw new Error(\"can't deserialize object of type \"+typeof t);const e=Ei(t)||\"Object\";if(!Ai[e])throw new Error(`can't deserialize unregistered class ${e}`);const{klass:r}=Ai[e];if(!r)throw new Error(`can't deserialize unregistered class ${e}`);if(r.deserialize)return r.deserialize(t);const n=Object.create(r.prototype);for(const r of Object.keys(t)){if(\"$name\"===r)continue;const i=t[r];n[r]=Ai[e].shallow.indexOf(r)>=0?i:Ii(i)}return n}class Pi{constructor(){this.first=!0}update(t,e){const r=Math.floor(t);return this.first?(this.first=!1,this.lastIntegerZoom=r,this.lastIntegerZoomTime=0,this.lastZoom=t,this.lastFloorZoom=r,!0):(this.lastFloorZoom>r?(this.lastIntegerZoom=r+1,this.lastIntegerZoomTime=e):this.lastFloorZoom<r&&(this.lastIntegerZoom=r,this.lastIntegerZoomTime=e),t!==this.lastZoom&&(this.lastZoom=t,this.lastFloorZoom=r,!0))}}const zi={\"Latin-1 Supplement\":t=>t>=128&&t<=255,Arabic:t=>t>=1536&&t<=1791,\"Arabic Supplement\":t=>t>=1872&&t<=1919,\"Arabic Extended-A\":t=>t>=2208&&t<=2303,\"Hangul Jamo\":t=>t>=4352&&t<=4607,\"Unified Canadian Aboriginal Syllabics\":t=>t>=5120&&t<=5759,Khmer:t=>t>=6016&&t<=6143,\"Unified Canadian Aboriginal Syllabics Extended\":t=>t>=6320&&t<=6399,\"General Punctuation\":t=>t>=8192&&t<=8303,\"Letterlike Symbols\":t=>t>=8448&&t<=8527,\"Number Forms\":t=>t>=8528&&t<=8591,\"Miscellaneous Technical\":t=>t>=8960&&t<=9215,\"Control Pictures\":t=>t>=9216&&t<=9279,\"Optical Character Recognition\":t=>t>=9280&&t<=9311,\"Enclosed Alphanumerics\":t=>t>=9312&&t<=9471,\"Geometric Shapes\":t=>t>=9632&&t<=9727,\"Miscellaneous Symbols\":t=>t>=9728&&t<=9983,\"Miscellaneous Symbols and Arrows\":t=>t>=11008&&t<=11263,\"CJK Radicals Supplement\":t=>t>=11904&&t<=12031,\"Kangxi Radicals\":t=>t>=12032&&t<=12255,\"Ideographic Description Characters\":t=>t>=12272&&t<=12287,\"CJK Symbols and Punctuation\":t=>t>=12288&&t<=12351,Hiragana:t=>t>=12352&&t<=12447,Katakana:t=>t>=12448&&t<=12543,Bopomofo:t=>t>=12544&&t<=12591,\"Hangul Compatibility Jamo\":t=>t>=12592&&t<=12687,Kanbun:t=>t>=12688&&t<=12703,\"Bopomofo Extended\":t=>t>=12704&&t<=12735,\"CJK Strokes\":t=>t>=12736&&t<=12783,\"Katakana Phonetic Extensions\":t=>t>=12784&&t<=12799,\"Enclosed CJK Letters and Months\":t=>t>=12800&&t<=13055,\"CJK Compatibility\":t=>t>=13056&&t<=13311,\"CJK Unified Ideographs Extension A\":t=>t>=13312&&t<=19903,\"Yijing Hexagram Symbols\":t=>t>=19904&&t<=19967,\"CJK Unified Ideographs\":t=>t>=19968&&t<=40959,\"Yi Syllables\":t=>t>=40960&&t<=42127,\"Yi Radicals\":t=>t>=42128&&t<=42191,\"Hangul Jamo Extended-A\":t=>t>=43360&&t<=43391,\"Hangul Syllables\":t=>t>=44032&&t<=55215,\"Hangul Jamo Extended-B\":t=>t>=55216&&t<=55295,\"Private Use Area\":t=>t>=57344&&t<=63743,\"CJK Compatibility Ideographs\":t=>t>=63744&&t<=64255,\"Arabic Presentation Forms-A\":t=>t>=64336&&t<=65023,\"Vertical Forms\":t=>t>=65040&&t<=65055,\"CJK Compatibility Forms\":t=>t>=65072&&t<=65103,\"Small Form Variants\":t=>t>=65104&&t<=65135,\"Arabic Presentation Forms-B\":t=>t>=65136&&t<=65279,\"Halfwidth and Fullwidth Forms\":t=>t>=65280&&t<=65519};function Oi(t){for(const e of t)if(Fi(e.charCodeAt(0)))return!0;return!1}function Di(t){for(const e of t)if(!Ri(e.charCodeAt(0)))return!1;return!0}function Ri(t){return!(zi.Arabic(t)||zi[\"Arabic Supplement\"](t)||zi[\"Arabic Extended-A\"](t)||zi[\"Arabic Presentation Forms-A\"](t)||zi[\"Arabic Presentation Forms-B\"](t))}function Fi(t){return!(746!==t&&747!==t&&(t<4352||!(zi[\"Bopomofo Extended\"](t)||zi.Bopomofo(t)||zi[\"CJK Compatibility Forms\"](t)&&!(t>=65097&&t<=65103)||zi[\"CJK Compatibility Ideographs\"](t)||zi[\"CJK Compatibility\"](t)||zi[\"CJK Radicals Supplement\"](t)||zi[\"CJK Strokes\"](t)||!(!zi[\"CJK Symbols and Punctuation\"](t)||t>=12296&&t<=12305||t>=12308&&t<=12319||12336===t)||zi[\"CJK Unified Ideographs Extension A\"](t)||zi[\"CJK Unified Ideographs\"](t)||zi[\"Enclosed CJK Letters and Months\"](t)||zi[\"Hangul Compatibility Jamo\"](t)||zi[\"Hangul Jamo Extended-A\"](t)||zi[\"Hangul Jamo Extended-B\"](t)||zi[\"Hangul Jamo\"](t)||zi[\"Hangul Syllables\"](t)||zi.Hiragana(t)||zi[\"Ideographic Description Characters\"](t)||zi.Kanbun(t)||zi[\"Kangxi Radicals\"](t)||zi[\"Katakana Phonetic Extensions\"](t)||zi.Katakana(t)&&12540!==t||!(!zi[\"Halfwidth and Fullwidth Forms\"](t)||65288===t||65289===t||65293===t||t>=65306&&t<=65310||65339===t||65341===t||65343===t||t>=65371&&t<=65503||65507===t||t>=65512&&t<=65519)||!(!zi[\"Small Form Variants\"](t)||t>=65112&&t<=65118||t>=65123&&t<=65126)||zi[\"Unified Canadian Aboriginal Syllabics\"](t)||zi[\"Unified Canadian Aboriginal Syllabics Extended\"](t)||zi[\"Vertical Forms\"](t)||zi[\"Yijing Hexagram Symbols\"](t)||zi[\"Yi Syllables\"](t)||zi[\"Yi Radicals\"](t))))}function Bi(t){return!(Fi(t)||function(t){return!!(zi[\"Latin-1 Supplement\"](t)&&(167===t||169===t||174===t||177===t||188===t||189===t||190===t||215===t||247===t)||zi[\"General Punctuation\"](t)&&(8214===t||8224===t||8225===t||8240===t||8241===t||8251===t||8252===t||8258===t||8263===t||8264===t||8265===t||8273===t)||zi[\"Letterlike Symbols\"](t)||zi[\"Number Forms\"](t)||zi[\"Miscellaneous Technical\"](t)&&(t>=8960&&t<=8967||t>=8972&&t<=8991||t>=8996&&t<=9e3||9003===t||t>=9085&&t<=9114||t>=9150&&t<=9165||9167===t||t>=9169&&t<=9179||t>=9186&&t<=9215)||zi[\"Control Pictures\"](t)&&9251!==t||zi[\"Optical Character Recognition\"](t)||zi[\"Enclosed Alphanumerics\"](t)||zi[\"Geometric Shapes\"](t)||zi[\"Miscellaneous Symbols\"](t)&&!(t>=9754&&t<=9759)||zi[\"Miscellaneous Symbols and Arrows\"](t)&&(t>=11026&&t<=11055||t>=11088&&t<=11097||t>=11192&&t<=11243)||zi[\"CJK Symbols and Punctuation\"](t)||zi.Katakana(t)||zi[\"Private Use Area\"](t)||zi[\"CJK Compatibility Forms\"](t)||zi[\"Small Form Variants\"](t)||zi[\"Halfwidth and Fullwidth Forms\"](t)||8734===t||8756===t||8757===t||t>=9984&&t<=10087||t>=10102&&t<=10131||65532===t||65533===t)}(t))}function Ni(t){return zi.Arabic(t)||zi[\"Arabic Supplement\"](t)||zi[\"Arabic Extended-A\"](t)||zi[\"Arabic Presentation Forms-A\"](t)||zi[\"Arabic Presentation Forms-B\"](t)}function ji(t){return t>=1424&&t<=2303||zi[\"Arabic Presentation Forms-A\"](t)||zi[\"Arabic Presentation Forms-B\"](t)}function Ui(t,e){return!(!e&&ji(t)||t>=2304&&t<=3583||t>=3840&&t<=4255||zi.Khmer(t))}function Vi(t){for(const e of t)if(ji(e.charCodeAt(0)))return!0;return!1}const qi=new class{constructor(){this.applyArabicShaping=null,this.processBidirectionalText=null,this.processStyledBidirectionalText=null,this.pluginStatus=\"unavailable\",this.pluginURL=null}setState(t){this.pluginStatus=t.pluginStatus,this.pluginURL=t.pluginURL}getState(){return{pluginStatus:this.pluginStatus,pluginURL:this.pluginURL}}setMethods(t){this.applyArabicShaping=t.applyArabicShaping,this.processBidirectionalText=t.processBidirectionalText,this.processStyledBidirectionalText=t.processStyledBidirectionalText}isParsed(){return null!=this.applyArabicShaping&&null!=this.processBidirectionalText&&null!=this.processStyledBidirectionalText}getPluginURL(){return this.pluginURL}getRTLTextPluginStatus(){return this.pluginStatus}};class Hi{constructor(t,e){this.zoom=t,e?(this.now=e.now,this.fadeDuration=e.fadeDuration,this.zoomHistory=e.zoomHistory,this.transition=e.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new Pi,this.transition={})}isSupportedScript(t){return function(t,e){for(const r of t)if(!Ui(r.charCodeAt(0),e))return!1;return!0}(t,\"loaded\"===qi.getRTLTextPluginStatus())}crossFadingFactor(){return 0===this.fadeDuration?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)}getCrossfadeParameters(){const t=this.zoom,e=t-Math.floor(t),r=this.crossFadingFactor();return t>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:e+(1-e)*r}:{fromScale:.5,toScale:1,t:1-(1-r)*e}}}class Gi{constructor(t,e){this.property=t,this.value=e,this.expression=function(t,e){if(mn(t))return new Cn(t,e);if(kn(t)){const r=En(t,e);if(\"error\"===r.result)throw new Error(r.value.map((t=>`${t.key}: ${t.message}`)).join(\", \"));return r.value}{let r=t;return\"color\"===e.type&&\"string\"==typeof t?r=Xt.parse(t):\"padding\"!==e.type||\"number\"!=typeof t&&!Array.isArray(t)?\"variableAnchorOffsetCollection\"===e.type&&Array.isArray(t)&&(r=ee.parse(t)):r=Qt.parse(t),{kind:\"constant\",evaluate:()=>r}}}(void 0===e?t.specification.default:e,t.specification)}isDataDriven(){return\"source\"===this.expression.kind||\"composite\"===this.expression.kind}possiblyEvaluate(t,e,r){return this.property.possiblyEvaluate(this,t,e,r)}}class Zi{constructor(t){this.property=t,this.value=new Gi(t,void 0)}transitioned(t,e){return new Yi(this.property,this.value,e,y({},t.transition,this.transition),t.now)}untransitioned(){return new Yi(this.property,this.value,null,{},0)}}class Wi{constructor(t){this._properties=t,this._values=Object.create(t.defaultTransitionablePropertyValues)}getValue(t){return b(this._values[t].value.value)}setValue(t,e){Object.prototype.hasOwnProperty.call(this._values,t)||(this._values[t]=new Zi(this._values[t].property)),this._values[t].value=new Gi(this._values[t].property,null===e?void 0:b(e))}getTransition(t){return b(this._values[t].transition)}setTransition(t,e){Object.prototype.hasOwnProperty.call(this._values,t)||(this._values[t]=new Zi(this._values[t].property)),this._values[t].transition=b(e)||void 0}serialize(){const t={};for(const e of Object.keys(this._values)){const r=this.getValue(e);void 0!==r&&(t[e]=r);const n=this.getTransition(e);void 0!==n&&(t[`${e}-transition`]=n)}return t}transitioned(t,e){const r=new Xi(this._properties);for(const n of Object.keys(this._values))r._values[n]=this._values[n].transitioned(t,e._values[n]);return r}untransitioned(){const t=new Xi(this._properties);for(const e of Object.keys(this._values))t._values[e]=this._values[e].untransitioned();return t}}class Yi{constructor(t,e,r,n,i){this.property=t,this.value=e,this.begin=i+n.delay||0,this.end=this.begin+n.duration||0,t.specification.transition&&(n.delay||n.duration)&&(this.prior=r)}possiblyEvaluate(t,e,r){const n=t.now||0,i=this.value.possiblyEvaluate(t,e,r),a=this.prior;if(a){if(n>this.end)return this.prior=null,i;if(this.value.isDataDriven())return this.prior=null,i;if(n<this.begin)return a.possiblyEvaluate(t,e,r);{const o=(n-this.begin)/(this.end-this.begin);return this.property.interpolate(a.possiblyEvaluate(t,e,r),i,function(t){if(t<=0)return 0;if(t>=1)return 1;const e=t*t,r=e*t;return 4*(t<.5?r:3*(t-e)+r-.75)}(o))}}return i}}class Xi{constructor(t){this._properties=t,this._values=Object.create(t.defaultTransitioningPropertyValues)}possiblyEvaluate(t,e,r){const n=new Ki(this._properties);for(const i of Object.keys(this._values))n._values[i]=this._values[i].possiblyEvaluate(t,e,r);return n}hasTransition(){for(const t of Object.keys(this._values))if(this._values[t].prior)return!0;return!1}}class $i{constructor(t){this._properties=t,this._values=Object.create(t.defaultPropertyValues)}hasValue(t){return void 0!==this._values[t].value}getValue(t){return b(this._values[t].value)}setValue(t,e){this._values[t]=new Gi(this._values[t].property,null===e?void 0:b(e))}serialize(){const t={};for(const e of Object.keys(this._values)){const r=this.getValue(e);void 0!==r&&(t[e]=r)}return t}possiblyEvaluate(t,e,r){const n=new Ki(this._properties);for(const i of Object.keys(this._values))n._values[i]=this._values[i].possiblyEvaluate(t,e,r);return n}}class Ji{constructor(t,e,r){this.property=t,this.value=e,this.parameters=r}isConstant(){return\"constant\"===this.value.kind}constantOr(t){return\"constant\"===this.value.kind?this.value.value:t}evaluate(t,e,r,n){return this.property.evaluate(this.value,this.parameters,t,e,r,n)}}class Ki{constructor(t){this._properties=t,this._values=Object.create(t.defaultPossiblyEvaluatedValues)}get(t){return this._values[t]}}class Qi{constructor(t){this.specification=t}possiblyEvaluate(t,e){if(t.isDataDriven())throw new Error(\"Value should not be data driven\");return t.expression.evaluate(e)}interpolate(t,e,r){const n=this.specification.type,i=Pe[n];return i?i(t,e,r):t}}class ta{constructor(t,e){this.specification=t,this.overrides=e}possiblyEvaluate(t,e,r,n){return\"constant\"===t.expression.kind||\"camera\"===t.expression.kind?new Ji(this,{kind:\"constant\",value:t.expression.evaluate(e,null,{},r,n)},e):new Ji(this,t.expression,e)}interpolate(t,e,r){if(\"constant\"!==t.value.kind||\"constant\"!==e.value.kind)return t;if(void 0===t.value.value||void 0===e.value.value)return new Ji(this,{kind:\"constant\",value:void 0},t.parameters);const n=this.specification.type,i=Pe[n];if(i){const n=i(t.value.value,e.value.value,r);return new Ji(this,{kind:\"constant\",value:n},t.parameters)}return t}evaluate(t,e,r,n,i,a){return\"constant\"===t.kind?t.value:t.evaluate(e,r,n,i,a)}}class ea extends ta{possiblyEvaluate(t,e,r,n){if(void 0===t.value)return new Ji(this,{kind:\"constant\",value:void 0},e);if(\"constant\"===t.expression.kind){const i=t.expression.evaluate(e,null,{},r,n),a=\"resolvedImage\"===t.property.specification.type&&\"string\"!=typeof i?i.name:i,o=this._calculate(a,a,a,e);return new Ji(this,{kind:\"constant\",value:o},e)}if(\"camera\"===t.expression.kind){const r=this._calculate(t.expression.evaluate({zoom:e.zoom-1}),t.expression.evaluate({zoom:e.zoom}),t.expression.evaluate({zoom:e.zoom+1}),e);return new Ji(this,{kind:\"constant\",value:r},e)}return new Ji(this,t.expression,e)}evaluate(t,e,r,n,i,a){if(\"source\"===t.kind){const o=t.evaluate(e,r,n,i,a);return this._calculate(o,o,o,e)}return\"composite\"===t.kind?this._calculate(t.evaluate({zoom:Math.floor(e.zoom)-1},r,n),t.evaluate({zoom:Math.floor(e.zoom)},r,n),t.evaluate({zoom:Math.floor(e.zoom)+1},r,n),e):t.value}_calculate(t,e,r,n){return n.zoom>n.zoomHistory.lastIntegerZoom?{from:t,to:e}:{from:r,to:e}}interpolate(t){return t}}class ra{constructor(t){this.specification=t}possiblyEvaluate(t,e,r,n){if(void 0!==t.value){if(\"constant\"===t.expression.kind){const i=t.expression.evaluate(e,null,{},r,n);return this._calculate(i,i,i,e)}return this._calculate(t.expression.evaluate(new Hi(Math.floor(e.zoom-1),e)),t.expression.evaluate(new Hi(Math.floor(e.zoom),e)),t.expression.evaluate(new Hi(Math.floor(e.zoom+1),e)),e)}}_calculate(t,e,r,n){return n.zoom>n.zoomHistory.lastIntegerZoom?{from:t,to:e}:{from:r,to:e}}interpolate(t){return t}}class na{constructor(t){this.specification=t}possiblyEvaluate(t,e,r,n){return!!t.expression.evaluate(e,null,{},r,n)}interpolate(){return!1}}class ia{constructor(t){this.properties=t,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];for(const e in t){const r=t[e];r.specification.overridable&&this.overridableProperties.push(e);const n=this.defaultPropertyValues[e]=new Gi(r,void 0),i=this.defaultTransitionablePropertyValues[e]=new Zi(r);this.defaultTransitioningPropertyValues[e]=i.untransitioned(),this.defaultPossiblyEvaluatedValues[e]=n.possiblyEvaluate({})}}}Mi(\"DataDrivenProperty\",ta),Mi(\"DataConstantProperty\",Qi),Mi(\"CrossFadedDataDrivenProperty\",ea),Mi(\"CrossFadedProperty\",ra),Mi(\"ColorRampProperty\",na);const aa=\"-transition\";class oa extends G{constructor(t,e){if(super(),this.id=t.id,this.type=t.type,this._featureFilter={filter:()=>!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),e.layout&&(this._unevaluatedLayout=new $i(e.layout)),e.paint)){this._transitionablePaint=new Wi(e.paint);for(const e in t.paint)this.setPaintProperty(e,t.paint[e],{validate:!1});for(const e in t.layout)this.setLayoutProperty(e,t.layout[e],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new Ki(e.paint)}}getCrossfadeParameters(){return this._crossfadeParameters}getLayoutProperty(t){return\"visibility\"===t?this.visibility:this._unevaluatedLayout.getValue(t)}setLayoutProperty(t,e,r={}){if(null!=e){const n=`layers.${this.id}.layout.${t}`;if(this._validate(wi,n,t,e,r))return}\"visibility\"!==t?this._unevaluatedLayout.setValue(t,e):this.visibility=e}getPaintProperty(t){return t.endsWith(aa)?this._transitionablePaint.getTransition(t.slice(0,-11)):this._transitionablePaint.getValue(t)}setPaintProperty(t,e,r={}){if(null!=e){const n=`layers.${this.id}.paint.${t}`;if(this._validate(bi,n,t,e,r))return!1}if(t.endsWith(aa))return this._transitionablePaint.setTransition(t.slice(0,-11),e||void 0),!1;{const r=this._transitionablePaint._values[t],n=\"cross-faded-data-driven\"===r.property.specification[\"property-type\"],i=r.value.isDataDriven(),a=r.value;this._transitionablePaint.setValue(t,e),this._handleSpecialPaintPropertyUpdate(t);const o=this._transitionablePaint._values[t].value;return o.isDataDriven()||i||n||this._handleOverridablePaintPropertyUpdate(t,a,o)}}_handleSpecialPaintPropertyUpdate(t){}_handleOverridablePaintPropertyUpdate(t,e,r){return!1}isHidden(t){return!!(this.minzoom&&t<this.minzoom)||!!(this.maxzoom&&t>=this.maxzoom)||\"none\"===this.visibility}updateTransitions(t){this._transitioningPaint=this._transitionablePaint.transitioned(t,this._transitioningPaint)}hasTransition(){return this._transitioningPaint.hasTransition()}recalculate(t,e){t.getCrossfadeParameters&&(this._crossfadeParameters=t.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(t,void 0,e)),this.paint=this._transitioningPaint.possiblyEvaluate(t,void 0,e)}serialize(){const t={id:this.id,type:this.type,source:this.source,\"source-layer\":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(t.layout=t.layout||{},t.layout.visibility=this.visibility),_(t,((t,e)=>!(void 0===t||\"layout\"===e&&!Object.keys(t).length||\"paint\"===e&&!Object.keys(t).length)))}_validate(t,e,r,n,i={}){return(!i||!1!==i.validate)&&Ti(this,t.call(vi,{key:e,layerType:this.type,objectKey:r,value:n,styleSpec:Z,style:{glyphs:!0,sprite:!0}}))}is3D(){return!1}isTileClipped(){return!1}hasOffscreenPass(){return!1}resize(){}isStateDependent(){for(const t in this.paint._values){const e=this.paint.get(t);if(e instanceof Ji&&hn(e.property.specification)&&(\"source\"===e.value.kind||\"composite\"===e.value.kind)&&e.value.isStateDependent)return!0}return!1}}const sa={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array};class la{constructor(t,e){this._structArray=t,this._pos1=e*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8}}class ca{constructor(){this.isTransferred=!1,this.capacity=-1,this.resize(0)}static serialize(t,e){return t._trim(),e&&(t.isTransferred=!0,e.push(t.arrayBuffer)),{length:t.length,arrayBuffer:t.arrayBuffer}}static deserialize(t){const e=Object.create(this.prototype);return e.arrayBuffer=t.arrayBuffer,e.length=t.length,e.capacity=t.arrayBuffer.byteLength/e.bytesPerElement,e._refreshViews(),e}_trim(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())}clear(){this.length=0}resize(t){this.reserve(t),this.length=t}reserve(t){if(t>this.capacity){this.capacity=Math.max(t,Math.floor(5*this.capacity),128),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);const e=this.uint8;this._refreshViews(),e&&this.uint8.set(e)}}_refreshViews(){throw new Error(\"_refreshViews() must be implemented by each concrete StructArray layout\")}}function ua(t,e=1){let r=0,n=0;return{members:t.map((t=>{const i=(s=t.type,sa[s].BYTES_PER_ELEMENT),a=r=ha(r,Math.max(e,i)),o=t.components||1;var s;return n=Math.max(n,i),r+=i*o,{name:t.name,type:t.type,components:o,offset:a}})),size:ha(r,Math.max(n,e)),alignment:e}}function ha(t,e){return Math.ceil(t/e)*e}class fa extends ca{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(t,e){const r=this.length;return this.resize(r+1),this.emplace(r,t,e)}emplace(t,e,r){const n=2*t;return this.int16[n+0]=e,this.int16[n+1]=r,t}}fa.prototype.bytesPerElement=4,Mi(\"StructArrayLayout2i4\",fa);class pa extends ca{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(t,e,r){const n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)}emplace(t,e,r,n){const i=3*t;return this.int16[i+0]=e,this.int16[i+1]=r,this.int16[i+2]=n,t}}pa.prototype.bytesPerElement=6,Mi(\"StructArrayLayout3i6\",pa);class da extends ca{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(t,e,r,n){const i=this.length;return this.resize(i+1),this.emplace(i,t,e,r,n)}emplace(t,e,r,n,i){const a=4*t;return this.int16[a+0]=e,this.int16[a+1]=r,this.int16[a+2]=n,this.int16[a+3]=i,t}}da.prototype.bytesPerElement=8,Mi(\"StructArrayLayout4i8\",da);class ma extends ca{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(t,e,r,n,i,a){const o=this.length;return this.resize(o+1),this.emplace(o,t,e,r,n,i,a)}emplace(t,e,r,n,i,a,o){const s=6*t;return this.int16[s+0]=e,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,t}}ma.prototype.bytesPerElement=12,Mi(\"StructArrayLayout2i4i12\",ma);class ga extends ca{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(t,e,r,n,i,a){const o=this.length;return this.resize(o+1),this.emplace(o,t,e,r,n,i,a)}emplace(t,e,r,n,i,a,o){const s=4*t,l=8*t;return this.int16[s+0]=e,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,t}}ga.prototype.bytesPerElement=8,Mi(\"StructArrayLayout2i4ub8\",ga);class ya extends ca{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(t,e){const r=this.length;return this.resize(r+1),this.emplace(r,t,e)}emplace(t,e,r){const n=2*t;return this.float32[n+0]=e,this.float32[n+1]=r,t}}ya.prototype.bytesPerElement=8,Mi(\"StructArrayLayout2f8\",ya);class va extends ca{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(t,e,r,n,i,a,o,s,l,c){const u=this.length;return this.resize(u+1),this.emplace(u,t,e,r,n,i,a,o,s,l,c)}emplace(t,e,r,n,i,a,o,s,l,c,u){const h=10*t;return this.uint16[h+0]=e,this.uint16[h+1]=r,this.uint16[h+2]=n,this.uint16[h+3]=i,this.uint16[h+4]=a,this.uint16[h+5]=o,this.uint16[h+6]=s,this.uint16[h+7]=l,this.uint16[h+8]=c,this.uint16[h+9]=u,t}}va.prototype.bytesPerElement=20,Mi(\"StructArrayLayout10ui20\",va);class xa extends ca{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(t,e,r,n,i,a,o,s,l,c,u,h){const f=this.length;return this.resize(f+1),this.emplace(f,t,e,r,n,i,a,o,s,l,c,u,h)}emplace(t,e,r,n,i,a,o,s,l,c,u,h,f){const p=12*t;return this.int16[p+0]=e,this.int16[p+1]=r,this.int16[p+2]=n,this.int16[p+3]=i,this.uint16[p+4]=a,this.uint16[p+5]=o,this.uint16[p+6]=s,this.uint16[p+7]=l,this.int16[p+8]=c,this.int16[p+9]=u,this.int16[p+10]=h,this.int16[p+11]=f,t}}xa.prototype.bytesPerElement=24,Mi(\"StructArrayLayout4i4ui4i24\",xa);class _a extends ca{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(t,e,r){const n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)}emplace(t,e,r,n){const i=3*t;return this.float32[i+0]=e,this.float32[i+1]=r,this.float32[i+2]=n,t}}_a.prototype.bytesPerElement=12,Mi(\"StructArrayLayout3f12\",_a);class ba extends ca{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)}emplaceBack(t){const e=this.length;return this.resize(e+1),this.emplace(e,t)}emplace(t,e){const r=1*t;return this.uint32[r+0]=e,t}}ba.prototype.bytesPerElement=4,Mi(\"StructArrayLayout1ul4\",ba);class wa extends ca{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(t,e,r,n,i,a,o,s,l){const c=this.length;return this.resize(c+1),this.emplace(c,t,e,r,n,i,a,o,s,l)}emplace(t,e,r,n,i,a,o,s,l,c){const u=10*t,h=5*t;return this.int16[u+0]=e,this.int16[u+1]=r,this.int16[u+2]=n,this.int16[u+3]=i,this.int16[u+4]=a,this.int16[u+5]=o,this.uint32[h+3]=s,this.uint16[u+8]=l,this.uint16[u+9]=c,t}}wa.prototype.bytesPerElement=20,Mi(\"StructArrayLayout6i1ul2ui20\",wa);class Ta extends ca{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(t,e,r,n,i,a){const o=this.length;return this.resize(o+1),this.emplace(o,t,e,r,n,i,a)}emplace(t,e,r,n,i,a,o){const s=6*t;return this.int16[s+0]=e,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,t}}Ta.prototype.bytesPerElement=12,Mi(\"StructArrayLayout2i2i2i12\",Ta);class ka extends ca{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(t,e,r,n,i){const a=this.length;return this.resize(a+1),this.emplace(a,t,e,r,n,i)}emplace(t,e,r,n,i,a){const o=4*t,s=8*t;return this.float32[o+0]=e,this.float32[o+1]=r,this.float32[o+2]=n,this.int16[s+6]=i,this.int16[s+7]=a,t}}ka.prototype.bytesPerElement=16,Mi(\"StructArrayLayout2f1f2i16\",ka);class Aa extends ca{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(t,e,r,n,i,a){const o=this.length;return this.resize(o+1),this.emplace(o,t,e,r,n,i,a)}emplace(t,e,r,n,i,a,o){const s=16*t,l=4*t,c=8*t;return this.uint8[s+0]=e,this.uint8[s+1]=r,this.float32[l+1]=n,this.float32[l+2]=i,this.int16[c+6]=a,this.int16[c+7]=o,t}}Aa.prototype.bytesPerElement=16,Mi(\"StructArrayLayout2ub2f2i16\",Aa);class Ma extends ca{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(t,e,r){const n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)}emplace(t,e,r,n){const i=3*t;return this.uint16[i+0]=e,this.uint16[i+1]=r,this.uint16[i+2]=n,t}}Ma.prototype.bytesPerElement=6,Mi(\"StructArrayLayout3ui6\",Ma);class Sa extends ca{_refreshViews(){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)}emplaceBack(t,e,r,n,i,a,o,s,l,c,u,h,f,p,d,m,g){const y=this.length;return this.resize(y+1),this.emplace(y,t,e,r,n,i,a,o,s,l,c,u,h,f,p,d,m,g)}emplace(t,e,r,n,i,a,o,s,l,c,u,h,f,p,d,m,g,y){const v=24*t,x=12*t,_=48*t;return this.int16[v+0]=e,this.int16[v+1]=r,this.uint16[v+2]=n,this.uint16[v+3]=i,this.uint32[x+2]=a,this.uint32[x+3]=o,this.uint32[x+4]=s,this.uint16[v+10]=l,this.uint16[v+11]=c,this.uint16[v+12]=u,this.float32[x+7]=h,this.float32[x+8]=f,this.uint8[_+36]=p,this.uint8[_+37]=d,this.uint8[_+38]=m,this.uint32[x+10]=g,this.int16[v+22]=y,t}}Sa.prototype.bytesPerElement=48,Mi(\"StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48\",Sa);class Ea extends ca{_refreshViews(){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)}emplaceBack(t,e,r,n,i,a,o,s,l,c,u,h,f,p,d,m,g,y,v,x,_,b,w,T,k,A,M,S){const E=this.length;return this.resize(E+1),this.emplace(E,t,e,r,n,i,a,o,s,l,c,u,h,f,p,d,m,g,y,v,x,_,b,w,T,k,A,M,S)}emplace(t,e,r,n,i,a,o,s,l,c,u,h,f,p,d,m,g,y,v,x,_,b,w,T,k,A,M,S,E){const C=32*t,L=16*t;return this.int16[C+0]=e,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]=c,this.uint16[C+9]=u,this.uint16[C+10]=h,this.uint16[C+11]=f,this.uint16[C+12]=p,this.uint16[C+13]=d,this.uint16[C+14]=m,this.uint16[C+15]=g,this.uint16[C+16]=y,this.uint16[C+17]=v,this.uint16[C+18]=x,this.uint16[C+19]=_,this.uint16[C+20]=b,this.uint16[C+21]=w,this.uint16[C+22]=T,this.uint32[L+12]=k,this.float32[L+13]=A,this.float32[L+14]=M,this.uint16[C+30]=S,this.uint16[C+31]=E,t}}Ea.prototype.bytesPerElement=64,Mi(\"StructArrayLayout8i15ui1ul2f2ui64\",Ea);class Ca extends ca{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(t){const e=this.length;return this.resize(e+1),this.emplace(e,t)}emplace(t,e){const r=1*t;return this.float32[r+0]=e,t}}Ca.prototype.bytesPerElement=4,Mi(\"StructArrayLayout1f4\",Ca);class La extends ca{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(t,e,r){const n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)}emplace(t,e,r,n){const i=6*t,a=3*t;return this.uint16[i+0]=e,this.float32[a+1]=r,this.float32[a+2]=n,t}}La.prototype.bytesPerElement=12,Mi(\"StructArrayLayout1ui2f12\",La);class Ia extends ca{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(t,e,r){const n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)}emplace(t,e,r,n){const i=2*t,a=4*t;return this.uint32[i+0]=e,this.uint16[a+2]=r,this.uint16[a+3]=n,t}}Ia.prototype.bytesPerElement=8,Mi(\"StructArrayLayout1ul2ui8\",Ia);class Pa extends ca{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(t,e){const r=this.length;return this.resize(r+1),this.emplace(r,t,e)}emplace(t,e,r){const n=2*t;return this.uint16[n+0]=e,this.uint16[n+1]=r,t}}Pa.prototype.bytesPerElement=4,Mi(\"StructArrayLayout2ui4\",Pa);class za extends ca{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(t){const e=this.length;return this.resize(e+1),this.emplace(e,t)}emplace(t,e){const r=1*t;return this.uint16[r+0]=e,t}}za.prototype.bytesPerElement=2,Mi(\"StructArrayLayout1ui2\",za);class Oa extends ca{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(t,e,r,n){const i=this.length;return this.resize(i+1),this.emplace(i,t,e,r,n)}emplace(t,e,r,n,i){const a=4*t;return this.float32[a+0]=e,this.float32[a+1]=r,this.float32[a+2]=n,this.float32[a+3]=i,t}}Oa.prototype.bytesPerElement=16,Mi(\"StructArrayLayout4f16\",Oa);class Da extends la{get anchorPointX(){return this._structArray.int16[this._pos2+0]}get anchorPointY(){return this._structArray.int16[this._pos2+1]}get x1(){return this._structArray.int16[this._pos2+2]}get y1(){return this._structArray.int16[this._pos2+3]}get x2(){return this._structArray.int16[this._pos2+4]}get y2(){return this._structArray.int16[this._pos2+5]}get featureIndex(){return this._structArray.uint32[this._pos4+3]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+8]}get bucketIndex(){return this._structArray.uint16[this._pos2+9]}get anchorPoint(){return new a(this.anchorPointX,this.anchorPointY)}}Da.prototype.size=20;class Ra extends wa{get(t){return new Da(this,t)}}Mi(\"CollisionBoxArray\",Ra);class Fa extends la{get anchorX(){return this._structArray.int16[this._pos2+0]}get anchorY(){return this._structArray.int16[this._pos2+1]}get glyphStartIndex(){return this._structArray.uint16[this._pos2+2]}get numGlyphs(){return this._structArray.uint16[this._pos2+3]}get vertexStartIndex(){return this._structArray.uint32[this._pos4+2]}get lineStartIndex(){return this._structArray.uint32[this._pos4+3]}get lineLength(){return this._structArray.uint32[this._pos4+4]}get segment(){return this._structArray.uint16[this._pos2+10]}get lowerSize(){return this._structArray.uint16[this._pos2+11]}get upperSize(){return this._structArray.uint16[this._pos2+12]}get lineOffsetX(){return this._structArray.float32[this._pos4+7]}get lineOffsetY(){return this._structArray.float32[this._pos4+8]}get writingMode(){return this._structArray.uint8[this._pos1+36]}get placedOrientation(){return this._structArray.uint8[this._pos1+37]}set placedOrientation(t){this._structArray.uint8[this._pos1+37]=t}get hidden(){return this._structArray.uint8[this._pos1+38]}set hidden(t){this._structArray.uint8[this._pos1+38]=t}get crossTileID(){return this._structArray.uint32[this._pos4+10]}set crossTileID(t){this._structArray.uint32[this._pos4+10]=t}get associatedIconIndex(){return this._structArray.int16[this._pos2+22]}}Fa.prototype.size=48;class Ba extends Sa{get(t){return new Fa(this,t)}}Mi(\"PlacedSymbolArray\",Ba);class Na extends la{get anchorX(){return this._structArray.int16[this._pos2+0]}get anchorY(){return this._structArray.int16[this._pos2+1]}get rightJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+2]}get centerJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+3]}get leftJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+4]}get verticalPlacedTextSymbolIndex(){return this._structArray.int16[this._pos2+5]}get placedIconSymbolIndex(){return this._structArray.int16[this._pos2+6]}get verticalPlacedIconSymbolIndex(){return this._structArray.int16[this._pos2+7]}get key(){return this._structArray.uint16[this._pos2+8]}get textBoxStartIndex(){return this._structArray.uint16[this._pos2+9]}get textBoxEndIndex(){return this._structArray.uint16[this._pos2+10]}get verticalTextBoxStartIndex(){return this._structArray.uint16[this._pos2+11]}get verticalTextBoxEndIndex(){return this._structArray.uint16[this._pos2+12]}get iconBoxStartIndex(){return this._structArray.uint16[this._pos2+13]}get iconBoxEndIndex(){return this._structArray.uint16[this._pos2+14]}get verticalIconBoxStartIndex(){return this._structArray.uint16[this._pos2+15]}get verticalIconBoxEndIndex(){return this._structArray.uint16[this._pos2+16]}get featureIndex(){return this._structArray.uint16[this._pos2+17]}get numHorizontalGlyphVertices(){return this._structArray.uint16[this._pos2+18]}get numVerticalGlyphVertices(){return this._structArray.uint16[this._pos2+19]}get numIconVertices(){return this._structArray.uint16[this._pos2+20]}get numVerticalIconVertices(){return this._structArray.uint16[this._pos2+21]}get useRuntimeCollisionCircles(){return this._structArray.uint16[this._pos2+22]}get crossTileID(){return this._structArray.uint32[this._pos4+12]}set crossTileID(t){this._structArray.uint32[this._pos4+12]=t}get textBoxScale(){return this._structArray.float32[this._pos4+13]}get collisionCircleDiameter(){return this._structArray.float32[this._pos4+14]}get textAnchorOffsetStartIndex(){return this._structArray.uint16[this._pos2+30]}get textAnchorOffsetEndIndex(){return this._structArray.uint16[this._pos2+31]}}Na.prototype.size=64;class ja extends Ea{get(t){return new Na(this,t)}}Mi(\"SymbolInstanceArray\",ja);class Ua extends Ca{getoffsetX(t){return this.float32[1*t+0]}}Mi(\"GlyphOffsetArray\",Ua);class Va extends pa{getx(t){return this.int16[3*t+0]}gety(t){return this.int16[3*t+1]}gettileUnitDistanceFromAnchor(t){return this.int16[3*t+2]}}Mi(\"SymbolLineVertexArray\",Va);class qa extends la{get textAnchor(){return this._structArray.uint16[this._pos2+0]}get textOffset0(){return this._structArray.float32[this._pos4+1]}get textOffset1(){return this._structArray.float32[this._pos4+2]}}qa.prototype.size=12;class Ha extends La{get(t){return new qa(this,t)}}Mi(\"TextAnchorOffsetArray\",Ha);class Ga extends la{get featureIndex(){return this._structArray.uint32[this._pos4+0]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+2]}get bucketIndex(){return this._structArray.uint16[this._pos2+3]}}Ga.prototype.size=8;class Za extends Ia{get(t){return new Ga(this,t)}}Mi(\"FeatureIndexArray\",Za);class Wa extends fa{}class Ya extends fa{}class Xa extends fa{}class $a extends ma{}class Ja extends ga{}class Ka extends ya{}class Qa extends va{}class to extends xa{}class eo extends _a{}class ro extends ba{}class no extends Ta{}class io extends Aa{}class ao extends Ma{}class oo extends Pa{}const so=ua([{name:\"a_pos\",components:2,type:\"Int16\"}],4),{members:lo,size:co,alignment:uo}=so;class ho{constructor(t=[]){this.segments=t}prepareSegment(t,e,r,n){let i=this.segments[this.segments.length-1];return t>ho.MAX_VERTEX_ARRAY_LENGTH&&T(`Max vertices per segment is ${ho.MAX_VERTEX_ARRAY_LENGTH}: bucket requested ${t}`),(!i||i.vertexLength+t>ho.MAX_VERTEX_ARRAY_LENGTH||i.sortKey!==n)&&(i={vertexOffset:e.length,primitiveOffset:r.length,vertexLength:0,primitiveLength:0},void 0!==n&&(i.sortKey=n),this.segments.push(i)),i}get(){return this.segments}destroy(){for(const t of this.segments)for(const e in t.vaos)t.vaos[e].destroy()}static simpleSegment(t,e,r,n){return new ho([{vertexOffset:t,primitiveOffset:e,vertexLength:r,primitiveLength:n,vaos:{},sortKey:0}])}}function fo(t,e){return 256*(t=m(Math.floor(t),0,255))+m(Math.floor(e),0,255)}ho.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,Mi(\"SegmentVector\",ho);const po=ua([{name:\"a_pattern_from\",components:4,type:\"Uint16\"},{name:\"a_pattern_to\",components:4,type:\"Uint16\"},{name:\"a_pixel_ratio_from\",components:1,type:\"Uint16\"},{name:\"a_pixel_ratio_to\",components:1,type:\"Uint16\"}]);var mo={exports:{}},go={exports:{}};!function(t){t.exports=function(t,e){var r,n,i,a,o,s,l,c;for(r=3&t.length,n=t.length-r,i=e,o=3432918353,s=461845907,c=0;c<n;)l=255&t.charCodeAt(c)|(255&t.charCodeAt(++c))<<8|(255&t.charCodeAt(++c))<<16|(255&t.charCodeAt(++c))<<24,++c,i=27492+(65535&(a=5*(65535&(i=(i^=l=(65535&(l=(l=(65535&l)*o+(((l>>>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&t.charCodeAt(c+2))<<16;case 2:l^=(255&t.charCodeAt(c+1))<<8;case 1:i^=l=(65535&(l=(l=(65535&(l^=255&t.charCodeAt(c)))*o+(((l>>>16)*o&65535)<<16)&4294967295)<<15|l>>>17))*s+(((l>>>16)*s&65535)<<16)&4294967295}return i^=t.length,i=2246822507*(65535&(i^=i>>>16))+((2246822507*(i>>>16)&65535)<<16)&4294967295,i=3266489909*(65535&(i^=i>>>13))+((3266489909*(i>>>16)&65535)<<16)&4294967295,(i^=i>>>16)>>>0}}(go);var yo=go.exports,vo={exports:{}};!function(t){t.exports=function(t,e){for(var r,n=t.length,i=e^n,a=0;n>=4;)r=1540483477*(65535&(r=255&t.charCodeAt(a)|(255&t.charCodeAt(++a))<<8|(255&t.charCodeAt(++a))<<16|(255&t.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&t.charCodeAt(a+2))<<16;case 2:i^=(255&t.charCodeAt(a+1))<<8;case 1:i=1540483477*(65535&(i^=255&t.charCodeAt(a)))+((1540483477*(i>>>16)&65535)<<16)}return i=1540483477*(65535&(i^=i>>>13))+((1540483477*(i>>>16)&65535)<<16),(i^=i>>>15)>>>0}}(vo);var xo=yo,_o=vo.exports;mo.exports=xo,mo.exports.murmur3=xo,mo.exports.murmur2=_o;var bo=r(mo.exports);class wo{constructor(){this.ids=[],this.positions=[],this.indexed=!1}add(t,e,r,n){this.ids.push(To(t)),this.positions.push(e,r,n)}getPositions(t){if(!this.indexed)throw new Error(\"Trying to get index, but feature positions are not indexed\");const e=To(t);let r=0,n=this.ids.length-1;for(;r<n;){const t=r+n>>1;this.ids[t]>=e?n=t:r=t+1}const i=[];for(;this.ids[r]===e;){const t=this.positions[3*r],e=this.positions[3*r+1],n=this.positions[3*r+2];i.push({index:t,start:e,end:n}),r++}return i}static serialize(t,e){const r=new Float64Array(t.ids),n=new Uint32Array(t.positions);return ko(r,n,0,r.length-1),e&&e.push(r.buffer,n.buffer),{ids:r,positions:n}}static deserialize(t){const e=new wo;return e.ids=t.ids,e.positions=t.positions,e.indexed=!0,e}}function To(t){const e=+t;return!isNaN(e)&&e<=Number.MAX_SAFE_INTEGER?e:bo(String(t))}function ko(t,e,r,n){for(;r<n;){const i=t[r+n>>1];let a=r-1,o=n+1;for(;;){do{a++}while(t[a]<i);do{o--}while(t[o]>i);if(a>=o)break;Ao(t,a,o),Ao(e,3*a,3*o),Ao(e,3*a+1,3*o+1),Ao(e,3*a+2,3*o+2)}o-r<n-o?(ko(t,e,r,o),r=o+1):(ko(t,e,o+1,n),n=o)}}function Ao(t,e,r){const n=t[e];t[e]=t[r],t[r]=n}Mi(\"FeaturePositionMap\",wo);class Mo{constructor(t,e){this.gl=t.gl,this.location=e}}class So extends Mo{constructor(t,e){super(t,e),this.current=0}set(t){this.current!==t&&(this.current=t,this.gl.uniform1f(this.location,t))}}class Eo extends Mo{constructor(t,e){super(t,e),this.current=[0,0,0,0]}set(t){t[0]===this.current[0]&&t[1]===this.current[1]&&t[2]===this.current[2]&&t[3]===this.current[3]||(this.current=t,this.gl.uniform4f(this.location,t[0],t[1],t[2],t[3]))}}class Co extends Mo{constructor(t,e){super(t,e),this.current=Xt.transparent}set(t){t.r===this.current.r&&t.g===this.current.g&&t.b===this.current.b&&t.a===this.current.a||(this.current=t,this.gl.uniform4f(this.location,t.r,t.g,t.b,t.a))}}const Lo=new Float32Array(16);function Io(t){return[fo(255*t.r,255*t.g),fo(255*t.b,255*t.a)]}class Po{constructor(t,e,r){this.value=t,this.uniformNames=e.map((t=>`u_${t}`)),this.type=r}setUniform(t,e,r){t.set(r.constantOr(this.value))}getBinding(t,e,r){return\"color\"===this.type?new Co(t,e):new So(t,e)}}class zo{constructor(t,e){this.uniformNames=e.map((t=>`u_${t}`)),this.patternFrom=null,this.patternTo=null,this.pixelRatioFrom=1,this.pixelRatioTo=1}setConstantPatternPositions(t,e){this.pixelRatioFrom=e.pixelRatio,this.pixelRatioTo=t.pixelRatio,this.patternFrom=e.tlbr,this.patternTo=t.tlbr}setUniform(t,e,r,n){const i=\"u_pattern_to\"===n?this.patternTo:\"u_pattern_from\"===n?this.patternFrom:\"u_pixel_ratio_to\"===n?this.pixelRatioTo:\"u_pixel_ratio_from\"===n?this.pixelRatioFrom:null;i&&t.set(i)}getBinding(t,e,r){return\"u_pattern\"===r.substr(0,9)?new Eo(t,e):new So(t,e)}}class Oo{constructor(t,e,r,n){this.expression=t,this.type=r,this.maxValue=0,this.paintVertexAttributes=e.map((t=>({name:`a_${t}`,type:\"Float32\",components:\"color\"===r?2:1,offset:0}))),this.paintVertexArray=new n}populatePaintArray(t,e,r,n,i){const a=this.paintVertexArray.length,o=this.expression.evaluate(new Hi(0),e,{},n,[],i);this.paintVertexArray.resize(t),this._setPaintValue(a,t,o)}updatePaintArray(t,e,r,n){const i=this.expression.evaluate({zoom:0},r,n);this._setPaintValue(t,e,i)}_setPaintValue(t,e,r){if(\"color\"===this.type){const n=Io(r);for(let r=t;r<e;r++)this.paintVertexArray.emplace(r,n[0],n[1])}else{for(let n=t;n<e;n++)this.paintVertexArray.emplace(n,r);this.maxValue=Math.max(this.maxValue,Math.abs(r))}}upload(t){this.paintVertexArray&&this.paintVertexArray.arrayBuffer&&(this.paintVertexBuffer&&this.paintVertexBuffer.buffer?this.paintVertexBuffer.updateData(this.paintVertexArray):this.paintVertexBuffer=t.createVertexBuffer(this.paintVertexArray,this.paintVertexAttributes,this.expression.isStateDependent))}destroy(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()}}class Do{constructor(t,e,r,n,i,a){this.expression=t,this.uniformNames=e.map((t=>`u_${t}_t`)),this.type=r,this.useIntegerZoom=n,this.zoom=i,this.maxValue=0,this.paintVertexAttributes=e.map((t=>({name:`a_${t}`,type:\"Float32\",components:\"color\"===r?4:2,offset:0}))),this.paintVertexArray=new a}populatePaintArray(t,e,r,n,i){const a=this.expression.evaluate(new Hi(this.zoom),e,{},n,[],i),o=this.expression.evaluate(new Hi(this.zoom+1),e,{},n,[],i),s=this.paintVertexArray.length;this.paintVertexArray.resize(t),this._setPaintValue(s,t,a,o)}updatePaintArray(t,e,r,n){const i=this.expression.evaluate({zoom:this.zoom},r,n),a=this.expression.evaluate({zoom:this.zoom+1},r,n);this._setPaintValue(t,e,i,a)}_setPaintValue(t,e,r,n){if(\"color\"===this.type){const i=Io(r),a=Io(n);for(let r=t;r<e;r++)this.paintVertexArray.emplace(r,i[0],i[1],a[0],a[1])}else{for(let i=t;i<e;i++)this.paintVertexArray.emplace(i,r,n);this.maxValue=Math.max(this.maxValue,Math.abs(r),Math.abs(n))}}upload(t){this.paintVertexArray&&this.paintVertexArray.arrayBuffer&&(this.paintVertexBuffer&&this.paintVertexBuffer.buffer?this.paintVertexBuffer.updateData(this.paintVertexArray):this.paintVertexBuffer=t.createVertexBuffer(this.paintVertexArray,this.paintVertexAttributes,this.expression.isStateDependent))}destroy(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()}setUniform(t,e){const r=this.useIntegerZoom?Math.floor(e.zoom):e.zoom,n=m(this.expression.interpolationFactor(r,this.zoom,this.zoom+1),0,1);t.set(n)}getBinding(t,e,r){return new So(t,e)}}class Ro{constructor(t,e,r,n,i,a){this.expression=t,this.type=e,this.useIntegerZoom=r,this.zoom=n,this.layerId=a,this.zoomInPaintVertexArray=new i,this.zoomOutPaintVertexArray=new i}populatePaintArray(t,e,r){const n=this.zoomInPaintVertexArray.length;this.zoomInPaintVertexArray.resize(t),this.zoomOutPaintVertexArray.resize(t),this._setPaintValues(n,t,e.patterns&&e.patterns[this.layerId],r)}updatePaintArray(t,e,r,n,i){this._setPaintValues(t,e,r.patterns&&r.patterns[this.layerId],i)}_setPaintValues(t,e,r,n){if(!n||!r)return;const{min:i,mid:a,max:o}=r,s=n[i],l=n[a],c=n[o];if(s&&l&&c)for(let r=t;r<e;r++)this.zoomInPaintVertexArray.emplace(r,l.tl[0],l.tl[1],l.br[0],l.br[1],s.tl[0],s.tl[1],s.br[0],s.br[1],l.pixelRatio,s.pixelRatio),this.zoomOutPaintVertexArray.emplace(r,l.tl[0],l.tl[1],l.br[0],l.br[1],c.tl[0],c.tl[1],c.br[0],c.br[1],l.pixelRatio,c.pixelRatio)}upload(t){this.zoomInPaintVertexArray&&this.zoomInPaintVertexArray.arrayBuffer&&this.zoomOutPaintVertexArray&&this.zoomOutPaintVertexArray.arrayBuffer&&(this.zoomInPaintVertexBuffer=t.createVertexBuffer(this.zoomInPaintVertexArray,po.members,this.expression.isStateDependent),this.zoomOutPaintVertexBuffer=t.createVertexBuffer(this.zoomOutPaintVertexArray,po.members,this.expression.isStateDependent))}destroy(){this.zoomOutPaintVertexBuffer&&this.zoomOutPaintVertexBuffer.destroy(),this.zoomInPaintVertexBuffer&&this.zoomInPaintVertexBuffer.destroy()}}class Fo{constructor(t,e,r){this.binders={},this._buffers=[];const n=[];for(const i in t.paint._values){if(!r(i))continue;const a=t.paint.get(i);if(!(a instanceof Ji&&hn(a.property.specification)))continue;const o=No(i,t.type),s=a.value,l=a.property.specification.type,c=a.property.useIntegerZoom,u=a.property.specification[\"property-type\"],h=\"cross-faded\"===u||\"cross-faded-data-driven\"===u;if(\"constant\"===s.kind)this.binders[i]=h?new zo(s.value,o):new Po(s.value,o,l),n.push(`/u_${i}`);else if(\"source\"===s.kind||h){const r=jo(i,l,\"source\");this.binders[i]=h?new Ro(s,l,c,e,r,t.id):new Oo(s,o,l,r),n.push(`/a_${i}`)}else{const t=jo(i,l,\"composite\");this.binders[i]=new Do(s,o,l,c,e,t),n.push(`/z_${i}`)}}this.cacheKey=n.sort().join(\"\")}getMaxValue(t){const e=this.binders[t];return e instanceof Oo||e instanceof Do?e.maxValue:0}populatePaintArrays(t,e,r,n,i){for(const a in this.binders){const o=this.binders[a];(o instanceof Oo||o instanceof Do||o instanceof Ro)&&o.populatePaintArray(t,e,r,n,i)}}setConstantPatternPositions(t,e){for(const r in this.binders){const n=this.binders[r];n instanceof zo&&n.setConstantPatternPositions(t,e)}}updatePaintArrays(t,e,r,n,i){let a=!1;for(const o in t){const s=e.getPositions(o);for(const e of s){const s=r.feature(e.index);for(const r in this.binders){const l=this.binders[r];if((l instanceof Oo||l instanceof Do||l instanceof Ro)&&!0===l.expression.isStateDependent){const c=n.paint.get(r);l.expression=c.value,l.updatePaintArray(e.start,e.end,s,t[o],i),a=!0}}}}return a}defines(){const t=[];for(const e in this.binders){const r=this.binders[e];(r instanceof Po||r instanceof zo)&&t.push(...r.uniformNames.map((t=>`#define HAS_UNIFORM_${t}`)))}return t}getBinderAttributes(){const t=[];for(const e in this.binders){const r=this.binders[e];if(r instanceof Oo||r instanceof Do)for(let e=0;e<r.paintVertexAttributes.length;e++)t.push(r.paintVertexAttributes[e].name);else if(r instanceof Ro)for(let e=0;e<po.members.length;e++)t.push(po.members[e].name)}return t}getBinderUniforms(){const t=[];for(const e in this.binders){const r=this.binders[e];if(r instanceof Po||r instanceof zo||r instanceof Do)for(const e of r.uniformNames)t.push(e)}return t}getPaintVertexBuffers(){return this._buffers}getUniforms(t,e){const r=[];for(const n in this.binders){const i=this.binders[n];if(i instanceof Po||i instanceof zo||i instanceof Do)for(const a of i.uniformNames)if(e[a]){const o=i.getBinding(t,e[a],a);r.push({name:a,property:n,binding:o})}}return r}setUniforms(t,e,r,n){for(const{name:t,property:i,binding:a}of e)this.binders[i].setUniform(a,n,r.get(i),t)}updatePaintBuffers(t){this._buffers=[];for(const e in this.binders){const r=this.binders[e];if(t&&r instanceof Ro){const e=2===t.fromScale?r.zoomInPaintVertexBuffer:r.zoomOutPaintVertexBuffer;e&&this._buffers.push(e)}else(r instanceof Oo||r instanceof Do)&&r.paintVertexBuffer&&this._buffers.push(r.paintVertexBuffer)}}upload(t){for(const e in this.binders){const r=this.binders[e];(r instanceof Oo||r instanceof Do||r instanceof Ro)&&r.upload(t)}this.updatePaintBuffers()}destroy(){for(const t in this.binders){const e=this.binders[t];(e instanceof Oo||e instanceof Do||e instanceof Ro)&&e.destroy()}}}class Bo{constructor(t,e,r=(()=>!0)){this.programConfigurations={};for(const n of t)this.programConfigurations[n.id]=new Fo(n,e,r);this.needsUpload=!1,this._featureMap=new wo,this._bufferOffset=0}populatePaintArrays(t,e,r,n,i,a){for(const r in this.programConfigurations)this.programConfigurations[r].populatePaintArrays(t,e,n,i,a);void 0!==e.id&&this._featureMap.add(e.id,r,this._bufferOffset,t),this._bufferOffset=t,this.needsUpload=!0}updatePaintArrays(t,e,r,n){for(const i of r)this.needsUpload=this.programConfigurations[i.id].updatePaintArrays(t,this._featureMap,e,i,n)||this.needsUpload}get(t){return this.programConfigurations[t]}upload(t){if(this.needsUpload){for(const e in this.programConfigurations)this.programConfigurations[e].upload(t);this.needsUpload=!1}}destroy(){for(const t in this.programConfigurations)this.programConfigurations[t].destroy()}}function No(t,e){return{\"text-opacity\":[\"opacity\"],\"icon-opacity\":[\"opacity\"],\"text-color\":[\"fill_color\"],\"icon-color\":[\"fill_color\"],\"text-halo-color\":[\"halo_color\"],\"icon-halo-color\":[\"halo_color\"],\"text-halo-blur\":[\"halo_blur\"],\"icon-halo-blur\":[\"halo_blur\"],\"text-halo-width\":[\"halo_width\"],\"icon-halo-width\":[\"halo_width\"],\"line-gap-width\":[\"gapwidth\"],\"line-pattern\":[\"pattern_to\",\"pattern_from\",\"pixel_ratio_to\",\"pixel_ratio_from\"],\"fill-pattern\":[\"pattern_to\",\"pattern_from\",\"pixel_ratio_to\",\"pixel_ratio_from\"],\"fill-extrusion-pattern\":[\"pattern_to\",\"pattern_from\",\"pixel_ratio_to\",\"pixel_ratio_from\"]}[t]||[t.replace(`${e}-`,\"\").replace(/-/g,\"_\")]}function jo(t,e,r){const n={color:{source:ya,composite:Oa},number:{source:Ca,composite:ya}},i=function(t){return{\"line-pattern\":{source:Qa,composite:Qa},\"fill-pattern\":{source:Qa,composite:Qa},\"fill-extrusion-pattern\":{source:Qa,composite:Qa}}[t]}(t);return i&&i[r]||n[e][r]}Mi(\"ConstantBinder\",Po),Mi(\"CrossFadedConstantBinder\",zo),Mi(\"SourceExpressionBinder\",Oo),Mi(\"CrossFadedCompositeBinder\",Ro),Mi(\"CompositeExpressionBinder\",Do),Mi(\"ProgramConfiguration\",Fo,{omit:[\"_buffers\"]}),Mi(\"ProgramConfigurationSet\",Bo);const Uo=8192,Vo=Math.pow(2,14)-1,qo=-Vo-1;function Ho(t){const e=Uo/t.extent,r=t.loadGeometry();for(let t=0;t<r.length;t++){const n=r[t];for(let t=0;t<n.length;t++){const r=n[t],i=Math.round(r.x*e),a=Math.round(r.y*e);r.x=m(i,qo,Vo),r.y=m(a,qo,Vo),(i<r.x||i>r.x+1||a<r.y||a>r.y+1)&&T(\"Geometry exceeds allowed extent, reduce your vector tile buffer size\")}}return r}function Go(t,e){return{type:t.type,id:t.id,properties:t.properties,geometry:e?Ho(t):[]}}function Zo(t,e,r,n,i){t.emplaceBack(2*e+(n+1)/2,2*r+(i+1)/2)}class Wo{constructor(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((t=>t.id)),this.index=t.index,this.hasPattern=!1,this.layoutVertexArray=new Ya,this.indexArray=new ao,this.segments=new ho,this.programConfigurations=new Bo(t.layers,t.zoom),this.stateDependentLayerIds=this.layers.filter((t=>t.isStateDependent())).map((t=>t.id))}populate(t,e,r){const n=this.layers[0],i=[];let a=null,o=!1;\"circle\"===n.type&&(a=n.layout.get(\"circle-sort-key\"),o=!a.isConstant());for(const{feature:e,id:n,index:s,sourceLayerIndex:l}of t){const t=this.layers[0]._featureFilter.needGeometry,c=Go(e,t);if(!this.layers[0]._featureFilter.filter(new Hi(this.zoom),c,r))continue;const u=o?a.evaluate(c,{},r):void 0,h={id:n,properties:e.properties,type:e.type,sourceLayerIndex:l,index:s,geometry:t?c.geometry:Ho(e),patterns:{},sortKey:u};i.push(h)}o&&i.sort(((t,e)=>t.sortKey-e.sortKey));for(const n of i){const{geometry:i,index:a,sourceLayerIndex:o}=n,s=t[a].feature;this.addFeature(n,i,a,r),e.featureIndex.insert(s,i,a,o,this.index)}}update(t,e,r){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(t,e,this.stateDependentLayers,r)}isEmpty(){return 0===this.layoutVertexArray.length}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(t){this.uploaded||(this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,lo),this.indexBuffer=t.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(t),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}addFeature(t,e,r,n){for(const r of e)for(const e of r){const r=e.x,n=e.y;if(r<0||r>=Uo||n<0||n>=Uo)continue;const i=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,t.sortKey),a=i.vertexLength;Zo(this.layoutVertexArray,r,n,-1,-1),Zo(this.layoutVertexArray,r,n,1,-1),Zo(this.layoutVertexArray,r,n,1,1),Zo(this.layoutVertexArray,r,n,-1,1),this.indexArray.emplaceBack(a,a+1,a+2),this.indexArray.emplaceBack(a,a+3,a+2),i.vertexLength+=4,i.primitiveLength+=2}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t,r,{},n)}}function Yo(t,e){for(let r=0;r<t.length;r++)if(ns(e,t[r]))return!0;for(let r=0;r<e.length;r++)if(ns(t,e[r]))return!0;return!!Ko(t,e)}function Xo(t,e,r){return!!ns(t,e)||!!ts(e,t,r)}function $o(t,e){if(1===t.length)return rs(e,t[0]);for(let r=0;r<e.length;r++){const n=e[r];for(let e=0;e<n.length;e++)if(ns(t,n[e]))return!0}for(let r=0;r<t.length;r++)if(rs(e,t[r]))return!0;for(let r=0;r<e.length;r++)if(Ko(t,e[r]))return!0;return!1}function Jo(t,e,r){if(t.length>1){if(Ko(t,e))return!0;for(let n=0;n<e.length;n++)if(ts(e[n],t,r))return!0}for(let n=0;n<t.length;n++)if(ts(t[n],e,r))return!0;return!1}function Ko(t,e){if(0===t.length||0===e.length)return!1;for(let r=0;r<t.length-1;r++){const n=t[r],i=t[r+1];for(let t=0;t<e.length-1;t++)if(Qo(n,i,e[t],e[t+1]))return!0}return!1}function Qo(t,e,r,n){return k(t,r,n)!==k(e,r,n)&&k(t,e,r)!==k(t,e,n)}function ts(t,e,r){const n=r*r;if(1===e.length)return t.distSqr(e[0])<n;for(let r=1;r<e.length;r++)if(es(t,e[r-1],e[r])<n)return!0;return!1}function es(t,e,r){const n=e.distSqr(r);if(0===n)return t.distSqr(e);const i=((t.x-e.x)*(r.x-e.x)+(t.y-e.y)*(r.y-e.y))/n;return i<0?t.distSqr(e):i>1?t.distSqr(r):t.distSqr(r.sub(e)._mult(i)._add(e))}function rs(t,e){let r,n,i,a=!1;for(let o=0;o<t.length;o++){r=t[o];for(let t=0,o=r.length-1;t<r.length;o=t++)n=r[t],i=r[o],n.y>e.y!=i.y>e.y&&e.x<(i.x-n.x)*(e.y-n.y)/(i.y-n.y)+n.x&&(a=!a)}return a}function ns(t,e){let r=!1;for(let n=0,i=t.length-1;n<t.length;i=n++){const a=t[n],o=t[i];a.y>e.y!=o.y>e.y&&e.x<(o.x-a.x)*(e.y-a.y)/(o.y-a.y)+a.x&&(r=!r)}return r}function is(t,e,r){const n=r[0],i=r[2];if(t.x<n.x&&e.x<n.x||t.x>i.x&&e.x>i.x||t.y<n.y&&e.y<n.y||t.y>i.y&&e.y>i.y)return!1;const a=k(t,e,r[0]);return a!==k(t,e,r[1])||a!==k(t,e,r[2])||a!==k(t,e,r[3])}function as(t,e,r){const n=e.paint.get(t).value;return\"constant\"===n.kind?n.value:r.programConfigurations.get(e.id).getMaxValue(t)}function os(t){return Math.sqrt(t[0]*t[0]+t[1]*t[1])}function ss(t,e,r,n,i){if(!e[0]&&!e[1])return t;const o=a.convert(e)._mult(i);\"viewport\"===r&&o._rotate(-n);const s=[];for(let e=0;e<t.length;e++){const r=t[e];s.push(r.sub(o))}return s}let ls;Mi(\"CircleBucket\",Wo,{omit:[\"layers\"]});let cs;var us={get paint(){return cs=cs||new ia({\"circle-radius\":new ta(Z.paint_circle[\"circle-radius\"]),\"circle-color\":new ta(Z.paint_circle[\"circle-color\"]),\"circle-blur\":new ta(Z.paint_circle[\"circle-blur\"]),\"circle-opacity\":new ta(Z.paint_circle[\"circle-opacity\"]),\"circle-translate\":new Qi(Z.paint_circle[\"circle-translate\"]),\"circle-translate-anchor\":new Qi(Z.paint_circle[\"circle-translate-anchor\"]),\"circle-pitch-scale\":new Qi(Z.paint_circle[\"circle-pitch-scale\"]),\"circle-pitch-alignment\":new Qi(Z.paint_circle[\"circle-pitch-alignment\"]),\"circle-stroke-width\":new ta(Z.paint_circle[\"circle-stroke-width\"]),\"circle-stroke-color\":new ta(Z.paint_circle[\"circle-stroke-color\"]),\"circle-stroke-opacity\":new ta(Z.paint_circle[\"circle-stroke-opacity\"])})},get layout(){return ls=ls||new ia({\"circle-sort-key\":new ta(Z.layout_circle[\"circle-sort-key\"])})}},hs=1e-6,fs=\"undefined\"!=typeof Float32Array?Float32Array:Array;function ps(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function ds(t,e,r){var n=e[0],i=e[1],a=e[2],o=e[3],s=e[4],l=e[5],c=e[6],u=e[7],h=e[8],f=e[9],p=e[10],d=e[11],m=e[12],g=e[13],y=e[14],v=e[15],x=r[0],_=r[1],b=r[2],w=r[3];return t[0]=x*n+_*s+b*h+w*m,t[1]=x*i+_*l+b*f+w*g,t[2]=x*a+_*c+b*p+w*y,t[3]=x*o+_*u+b*d+w*v,x=r[4],_=r[5],b=r[6],w=r[7],t[4]=x*n+_*s+b*h+w*m,t[5]=x*i+_*l+b*f+w*g,t[6]=x*a+_*c+b*p+w*y,t[7]=x*o+_*u+b*d+w*v,x=r[8],_=r[9],b=r[10],w=r[11],t[8]=x*n+_*s+b*h+w*m,t[9]=x*i+_*l+b*f+w*g,t[10]=x*a+_*c+b*p+w*y,t[11]=x*o+_*u+b*d+w*v,x=r[12],_=r[13],b=r[14],w=r[15],t[12]=x*n+_*s+b*h+w*m,t[13]=x*i+_*l+b*f+w*g,t[14]=x*a+_*c+b*p+w*y,t[15]=x*o+_*u+b*d+w*v,t}Math.hypot||(Math.hypot=function(){for(var t=0,e=arguments.length;e--;)t+=arguments[e]*arguments[e];return Math.sqrt(t)});var ms=function(t,e,r,n,i){var a,o=1/Math.tan(e/2);return t[0]=o/r,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=o,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=-1,t[12]=0,t[13]=0,t[15]=0,null!=i&&i!==1/0?(a=1/(n-i),t[10]=(i+n)*a,t[14]=2*i*n*a):(t[10]=-1,t[14]=-2*n),t};var gs=function(t,e,r,n,i,a,o){var s=1/(e-r),l=1/(n-i),c=1/(a-o);return t[0]=-2*s,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*l,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*c,t[11]=0,t[12]=(e+r)*s,t[13]=(i+n)*l,t[14]=(o+a)*c,t[15]=1,t};var ys=ds;function vs(t,e,r){var n=e[0],i=e[1],a=e[2],o=e[3];return t[0]=r[0]*n+r[4]*i+r[8]*a+r[12]*o,t[1]=r[1]*n+r[5]*i+r[9]*a+r[13]*o,t[2]=r[2]*n+r[6]*i+r[10]*a+r[14]*o,t[3]=r[3]*n+r[7]*i+r[11]*a+r[15]*o,t}var xs,_s=function(t,e,r){return t[0]=e[0]*r[0],t[1]=e[1]*r[1],t[2]=e[2]*r[2],t[3]=e[3]*r[3],t};xs=new fs(4),fs!=Float32Array&&(xs[0]=0,xs[1]=0,xs[2]=0,xs[3]=0);class bs extends oa{constructor(t){super(t,us)}createBucket(t){return new Wo(t)}queryRadius(t){const e=t;return as(\"circle-radius\",this,e)+as(\"circle-stroke-width\",this,e)+os(this.paint.get(\"circle-translate\"))}queryIntersectsFeature(t,e,r,n,i,a,o,s){const l=ss(t,this.paint.get(\"circle-translate\"),this.paint.get(\"circle-translate-anchor\"),a.angle,o),c=this.paint.get(\"circle-radius\").evaluate(e,r)+this.paint.get(\"circle-stroke-width\").evaluate(e,r),u=\"map\"===this.paint.get(\"circle-pitch-alignment\"),h=u?l:function(t,e){return t.map((t=>ws(t,e)))}(l,s),f=u?c*o:c;for(const t of n)for(const e of t){const t=u?e:ws(e,s);let r=f;const n=vs([],[e.x,e.y,0,1],s);if(\"viewport\"===this.paint.get(\"circle-pitch-scale\")&&\"map\"===this.paint.get(\"circle-pitch-alignment\")?r*=n[3]/a.cameraToCenterDistance:\"map\"===this.paint.get(\"circle-pitch-scale\")&&\"viewport\"===this.paint.get(\"circle-pitch-alignment\")&&(r*=a.cameraToCenterDistance/n[3]),Xo(h,t,r))return!0}return!1}}function ws(t,e){const r=vs([],[t.x,t.y,0,1],e);return new a(r[0]/r[3],r[1]/r[3])}class Ts extends Wo{}let ks;Mi(\"HeatmapBucket\",Ts,{omit:[\"layers\"]});var As={get paint(){return ks=ks||new ia({\"heatmap-radius\":new ta(Z.paint_heatmap[\"heatmap-radius\"]),\"heatmap-weight\":new ta(Z.paint_heatmap[\"heatmap-weight\"]),\"heatmap-intensity\":new Qi(Z.paint_heatmap[\"heatmap-intensity\"]),\"heatmap-color\":new na(Z.paint_heatmap[\"heatmap-color\"]),\"heatmap-opacity\":new Qi(Z.paint_heatmap[\"heatmap-opacity\"])})}};function Ms(t,{width:e,height:r},n,i){if(i){if(i instanceof Uint8ClampedArray)i=new Uint8Array(i.buffer);else if(i.length!==e*r*n)throw new RangeError(`mismatched image size. expected: ${i.length} but got: ${e*r*n}`)}else i=new Uint8Array(e*r*n);return t.width=e,t.height=r,t.data=i,t}function Ss(t,{width:e,height:r},n){if(e===t.width&&r===t.height)return;const i=Ms({},{width:e,height:r},n);Es(t,i,{x:0,y:0},{x:0,y:0},{width:Math.min(t.width,e),height:Math.min(t.height,r)},n),t.width=e,t.height=r,t.data=i.data}function Es(t,e,r,n,i,a){if(0===i.width||0===i.height)return e;if(i.width>t.width||i.height>t.height||r.x>t.width-i.width||r.y>t.height-i.height)throw new RangeError(\"out of range source coordinates for image copy\");if(i.width>e.width||i.height>e.height||n.x>e.width-i.width||n.y>e.height-i.height)throw new RangeError(\"out of range destination coordinates for image copy\");const o=t.data,s=e.data;if(o===s)throw new Error(\"srcData equals dstData, so image is already copied\");for(let l=0;l<i.height;l++){const c=((r.y+l)*t.width+r.x)*a,u=((n.y+l)*e.width+n.x)*a;for(let t=0;t<i.width*a;t++)s[u+t]=o[c+t]}return e}class Cs{constructor(t,e){Ms(this,t,1,e)}resize(t){Ss(this,t,1)}clone(){return new Cs({width:this.width,height:this.height},new Uint8Array(this.data))}static copy(t,e,r,n,i){Es(t,e,r,n,i,1)}}class Ls{constructor(t,e){Ms(this,t,4,e)}resize(t){Ss(this,t,4)}replace(t,e){e?this.data.set(t):t instanceof Uint8ClampedArray?this.data=new Uint8Array(t.buffer):this.data=t}clone(){return new Ls({width:this.width,height:this.height},new Uint8Array(this.data))}static copy(t,e,r,n,i){Es(t,e,r,n,i,4)}}function Is(t){const e={},r=t.resolution||256,n=t.clips?t.clips.length:1,i=t.image||new Ls({width:r,height:n});if(a=r,Math.log(a)/Math.LN2%1!=0)throw new Error(`width is not a power of 2 - ${r}`);var a;const o=(r,n,a)=>{e[t.evaluationKey]=a;const o=t.expression.evaluate(e);i.data[r+n+0]=Math.floor(255*o.r/o.a),i.data[r+n+1]=Math.floor(255*o.g/o.a),i.data[r+n+2]=Math.floor(255*o.b/o.a),i.data[r+n+3]=Math.floor(255*o.a)};if(t.clips)for(let e=0,i=0;e<n;++e,i+=4*r)for(let n=0,a=0;n<r;n++,a+=4){const s=n/(r-1),{start:l,end:c}=t.clips[e];o(i,a,l*(1-s)+c*s)}else for(let t=0,e=0;t<r;t++,e+=4)o(0,e,t/(r-1));return i}Mi(\"AlphaImage\",Cs),Mi(\"RGBAImage\",Ls);class Ps extends oa{createBucket(t){return new Ts(t)}constructor(t){super(t,As),this._updateColorRamp()}_handleSpecialPaintPropertyUpdate(t){\"heatmap-color\"===t&&this._updateColorRamp()}_updateColorRamp(){const t=this._transitionablePaint._values[\"heatmap-color\"].value.expression;this.colorRamp=Is({expression:t,evaluationKey:\"heatmapDensity\",image:this.colorRamp}),this.colorRampTexture=null}resize(){this.heatmapFbo&&(this.heatmapFbo.destroy(),this.heatmapFbo=null)}queryRadius(){return 0}queryIntersectsFeature(){return!1}hasOffscreenPass(){return 0!==this.paint.get(\"heatmap-opacity\")&&\"none\"!==this.visibility}}let zs;var Os={get paint(){return zs=zs||new ia({\"hillshade-illumination-direction\":new Qi(Z.paint_hillshade[\"hillshade-illumination-direction\"]),\"hillshade-illumination-anchor\":new Qi(Z.paint_hillshade[\"hillshade-illumination-anchor\"]),\"hillshade-exaggeration\":new Qi(Z.paint_hillshade[\"hillshade-exaggeration\"]),\"hillshade-shadow-color\":new Qi(Z.paint_hillshade[\"hillshade-shadow-color\"]),\"hillshade-highlight-color\":new Qi(Z.paint_hillshade[\"hillshade-highlight-color\"]),\"hillshade-accent-color\":new Qi(Z.paint_hillshade[\"hillshade-accent-color\"])})}};class Ds extends oa{constructor(t){super(t,Os)}hasOffscreenPass(){return 0!==this.paint.get(\"hillshade-exaggeration\")&&\"none\"!==this.visibility}}const Rs=ua([{name:\"a_pos\",components:2,type:\"Int16\"}],4),{members:Fs,size:Bs,alignment:Ns}=Rs;function js(t,e,r=2){const n=e&&e.length,i=n?e[0]*r:t.length;let a=Us(t,0,i,r,!0);const o=[];if(!a||a.next===a.prev)return o;let s,l,c;if(n&&(a=function(t,e,r,n){const i=[];for(let r=0,a=e.length;r<a;r++){const o=Us(t,e[r]*n,r<a-1?e[r+1]*n:t.length,n,!1);o===o.next&&(o.steiner=!0),i.push(Ks(o))}i.sort(Ys);for(let t=0;t<i.length;t++)r=Xs(i[t],r);return r}(t,e,a,r)),t.length>80*r){s=1/0,l=1/0;let e=-1/0,n=-1/0;for(let a=r;a<i;a+=r){const r=t[a],i=t[a+1];r<s&&(s=r),i<l&&(l=i),r>e&&(e=r),i>n&&(n=i)}c=Math.max(e-s,n-l),c=0!==c?32767/c:0}return qs(a,o,r,s,l,c,0),o}function Us(t,e,r,n,i){let a;if(i===function(t,e,r,n){let i=0;for(let a=e,o=r-n;a<r;a+=n)i+=(t[o]-t[a])*(t[a+1]+t[o+1]),o=a;return i}(t,e,r,n)>0)for(let i=e;i<r;i+=n)a=ll(i/n|0,t[i],t[i+1],a);else for(let i=r-n;i>=e;i-=n)a=ll(i/n|0,t[i],t[i+1],a);return a&&rl(a,a.next)&&(cl(a),a=a.next),a}function Vs(t,e){if(!t)return t;e||(e=t);let r,n=t;do{if(r=!1,n.steiner||!rl(n,n.next)&&0!==el(n.prev,n,n.next))n=n.next;else{if(cl(n),n=e=n.prev,n===n.next)break;r=!0}}while(r||n!==e);return e}function qs(t,e,r,n,i,a,o){if(!t)return;!o&&a&&function(t,e,r,n){let i=t;do{0===i.z&&(i.z=Js(i.x,i.y,e,r,n)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next}while(i!==t);i.prevZ.nextZ=null,i.prevZ=null,function(t){let e,r=1;do{let n,i=t;t=null;let a=null;for(e=0;i;){e++;let o=i,s=0;for(let t=0;t<r&&(s++,o=o.nextZ,o);t++);let l=r;for(;s>0||l>0&&o;)0!==s&&(0===l||!o||i.z<=o.z)?(n=i,i=i.nextZ,s--):(n=o,o=o.nextZ,l--),a?a.nextZ=n:t=n,n.prevZ=a,a=n;i=o}a.nextZ=null,r*=2}while(e>1)}(i)}(t,n,i,a);let s=t;for(;t.prev!==t.next;){const l=t.prev,c=t.next;if(a?Gs(t,n,i,a):Hs(t))e.push(l.i,t.i,c.i),cl(t),t=c.next,s=c.next;else if((t=c)===s){o?1===o?qs(t=Zs(Vs(t),e),e,r,n,i,a,2):2===o&&Ws(t,e,r,n,i,a):qs(Vs(t),e,r,n,i,a,1);break}}}function Hs(t){const e=t.prev,r=t,n=t.next;if(el(e,r,n)>=0)return!1;const i=e.x,a=r.x,o=n.x,s=e.y,l=r.y,c=n.y,u=i<a?i<o?i:o:a<o?a:o,h=s<l?s<c?s:c:l<c?l:c,f=i>a?i>o?i:o:a>o?a:o,p=s>l?s>c?s:c:l>c?l:c;let d=n.next;for(;d!==e;){if(d.x>=u&&d.x<=f&&d.y>=h&&d.y<=p&&Qs(i,s,a,l,o,c,d.x,d.y)&&el(d.prev,d,d.next)>=0)return!1;d=d.next}return!0}function Gs(t,e,r,n){const i=t.prev,a=t,o=t.next;if(el(i,a,o)>=0)return!1;const s=i.x,l=a.x,c=o.x,u=i.y,h=a.y,f=o.y,p=s<l?s<c?s:c:l<c?l:c,d=u<h?u<f?u:f:h<f?h:f,m=s>l?s>c?s:c:l>c?l:c,g=u>h?u>f?u:f:h>f?h:f,y=Js(p,d,e,r,n),v=Js(m,g,e,r,n);let x=t.prevZ,_=t.nextZ;for(;x&&x.z>=y&&_&&_.z<=v;){if(x.x>=p&&x.x<=m&&x.y>=d&&x.y<=g&&x!==i&&x!==o&&Qs(s,u,l,h,c,f,x.x,x.y)&&el(x.prev,x,x.next)>=0)return!1;if(x=x.prevZ,_.x>=p&&_.x<=m&&_.y>=d&&_.y<=g&&_!==i&&_!==o&&Qs(s,u,l,h,c,f,_.x,_.y)&&el(_.prev,_,_.next)>=0)return!1;_=_.nextZ}for(;x&&x.z>=y;){if(x.x>=p&&x.x<=m&&x.y>=d&&x.y<=g&&x!==i&&x!==o&&Qs(s,u,l,h,c,f,x.x,x.y)&&el(x.prev,x,x.next)>=0)return!1;x=x.prevZ}for(;_&&_.z<=v;){if(_.x>=p&&_.x<=m&&_.y>=d&&_.y<=g&&_!==i&&_!==o&&Qs(s,u,l,h,c,f,_.x,_.y)&&el(_.prev,_,_.next)>=0)return!1;_=_.nextZ}return!0}function Zs(t,e){let r=t;do{const n=r.prev,i=r.next.next;!rl(n,i)&&nl(n,r,r.next,i)&&ol(n,i)&&ol(i,n)&&(e.push(n.i,r.i,i.i),cl(r),cl(r.next),r=t=i),r=r.next}while(r!==t);return Vs(r)}function Ws(t,e,r,n,i,a){let o=t;do{let t=o.next.next;for(;t!==o.prev;){if(o.i!==t.i&&tl(o,t)){let s=sl(o,t);return o=Vs(o,o.next),s=Vs(s,s.next),qs(o,e,r,n,i,a,0),void qs(s,e,r,n,i,a,0)}t=t.next}o=o.next}while(o!==t)}function Ys(t,e){return t.x-e.x}function Xs(t,e){const r=function(t,e){let r=e;const n=t.x,i=t.y;let a,o=-1/0;do{if(i<=r.y&&i>=r.next.y&&r.next.y!==r.y){const t=r.x+(i-r.y)*(r.next.x-r.x)/(r.next.y-r.y);if(t<=n&&t>o&&(o=t,a=r.x<r.next.x?r:r.next,t===n))return a}r=r.next}while(r!==e);if(!a)return null;const s=a,l=a.x,c=a.y;let u=1/0;r=a;do{if(n>=r.x&&r.x>=l&&n!==r.x&&Qs(i<c?n:o,i,l,c,i<c?o:n,i,r.x,r.y)){const e=Math.abs(i-r.y)/(n-r.x);ol(r,t)&&(e<u||e===u&&(r.x>a.x||r.x===a.x&&$s(a,r)))&&(a=r,u=e)}r=r.next}while(r!==s);return a}(t,e);if(!r)return e;const n=sl(r,t);return Vs(n,n.next),Vs(r,r.next)}function $s(t,e){return el(t.prev,t,e.prev)<0&&el(e.next,t,t.next)<0}function Js(t,e,r,n,i){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=(t-r)*i|0)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=(e-n)*i|0)|e<<8))|e<<4))|e<<2))|e<<1))<<1}function Ks(t){let e=t,r=t;do{(e.x<r.x||e.x===r.x&&e.y<r.y)&&(r=e),e=e.next}while(e!==t);return r}function Qs(t,e,r,n,i,a,o,s){return(i-o)*(e-s)>=(t-o)*(a-s)&&(t-o)*(n-s)>=(r-o)*(e-s)&&(r-o)*(a-s)>=(i-o)*(n-s)}function tl(t,e){return t.next.i!==e.i&&t.prev.i!==e.i&&!function(t,e){let r=t;do{if(r.i!==t.i&&r.next.i!==t.i&&r.i!==e.i&&r.next.i!==e.i&&nl(r,r.next,t,e))return!0;r=r.next}while(r!==t);return!1}(t,e)&&(ol(t,e)&&ol(e,t)&&function(t,e){let r=t,n=!1;const i=(t.x+e.x)/2,a=(t.y+e.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!==t);return n}(t,e)&&(el(t.prev,t,e.prev)||el(t,e.prev,e))||rl(t,e)&&el(t.prev,t,t.next)>0&&el(e.prev,e,e.next)>0)}function el(t,e,r){return(e.y-t.y)*(r.x-e.x)-(e.x-t.x)*(r.y-e.y)}function rl(t,e){return t.x===e.x&&t.y===e.y}function nl(t,e,r,n){const i=al(el(t,e,r)),a=al(el(t,e,n)),o=al(el(r,n,t)),s=al(el(r,n,e));return i!==a&&o!==s||!(0!==i||!il(t,r,e))||!(0!==a||!il(t,n,e))||!(0!==o||!il(r,t,n))||!(0!==s||!il(r,e,n))}function il(t,e,r){return e.x<=Math.max(t.x,r.x)&&e.x>=Math.min(t.x,r.x)&&e.y<=Math.max(t.y,r.y)&&e.y>=Math.min(t.y,r.y)}function al(t){return t>0?1:t<0?-1:0}function ol(t,e){return el(t.prev,t,t.next)<0?el(t,e,t.next)>=0&&el(t,t.prev,e)>=0:el(t,e,t.prev)<0||el(t,t.next,e)<0}function sl(t,e){const r=ul(t.i,t.x,t.y),n=ul(e.i,e.x,e.y),i=t.next,a=e.prev;return t.next=e,e.prev=t,r.next=i,i.prev=r,n.next=r,r.prev=n,a.next=n,n.prev=a,n}function ll(t,e,r,n){const i=ul(t,e,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 cl(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)}function ul(t,e,r){return{i:t,x:e,y:r,prev:null,next:null,z:0,prevZ:null,nextZ:null,steiner:!1}}function hl(t,e,r){const n=r.patternDependencies;let i=!1;for(const r of e){const e=r.paint.get(`${t}-pattern`);e.isConstant()||(i=!0);const a=e.constantOr(null);a&&(i=!0,n[a.to]=!0,n[a.from]=!0)}return i}function fl(t,e,r,n,i){const a=i.patternDependencies;for(const o of e){const e=o.paint.get(`${t}-pattern`).value;if(\"constant\"!==e.kind){let t=e.evaluate({zoom:n-1},r,{},i.availableImages),s=e.evaluate({zoom:n},r,{},i.availableImages),l=e.evaluate({zoom:n+1},r,{},i.availableImages);t=t&&t.name?t.name:t,s=s&&s.name?s.name:s,l=l&&l.name?l.name:l,a[t]=!0,a[s]=!0,a[l]=!0,r.patterns[o.id]={min:t,mid:s,max:l}}}return r}class pl{constructor(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((t=>t.id)),this.index=t.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new Xa,this.indexArray=new ao,this.indexArray2=new oo,this.programConfigurations=new Bo(t.layers,t.zoom),this.segments=new ho,this.segments2=new ho,this.stateDependentLayerIds=this.layers.filter((t=>t.isStateDependent())).map((t=>t.id))}populate(t,e,r){this.hasPattern=hl(\"fill\",this.layers,e);const n=this.layers[0].layout.get(\"fill-sort-key\"),i=!n.isConstant(),a=[];for(const{feature:o,id:s,index:l,sourceLayerIndex:c}of t){const t=this.layers[0]._featureFilter.needGeometry,u=Go(o,t);if(!this.layers[0]._featureFilter.filter(new Hi(this.zoom),u,r))continue;const h=i?n.evaluate(u,{},r,e.availableImages):void 0,f={id:s,properties:o.properties,type:o.type,sourceLayerIndex:c,index:l,geometry:t?u.geometry:Ho(o),patterns:{},sortKey:h};a.push(f)}i&&a.sort(((t,e)=>t.sortKey-e.sortKey));for(const n of a){const{geometry:i,index:a,sourceLayerIndex:o}=n;if(this.hasPattern){const t=fl(\"fill\",this.layers,n,this.zoom,e);this.patternFeatures.push(t)}else this.addFeature(n,i,a,r,{});const s=t[a].feature;e.featureIndex.insert(s,i,a,o,this.index)}}update(t,e,r){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(t,e,this.stateDependentLayers,r)}addFeatures(t,e,r){for(const t of this.patternFeatures)this.addFeature(t,t.geometry,t.index,e,r)}isEmpty(){return 0===this.layoutVertexArray.length}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(t){this.uploaded||(this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,Fs),this.indexBuffer=t.createIndexBuffer(this.indexArray),this.indexBuffer2=t.createIndexBuffer(this.indexArray2)),this.programConfigurations.upload(t),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())}addFeature(t,e,r,n,i){for(const t of br(e,500)){let e=0;for(const r of t)e+=r.length;const r=this.segments.prepareSegment(e,this.layoutVertexArray,this.indexArray),n=r.vertexLength,i=[],a=[];for(const e of t){if(0===e.length)continue;e!==t[0]&&a.push(i.length/2);const r=this.segments2.prepareSegment(e.length,this.layoutVertexArray,this.indexArray2),n=r.vertexLength;this.layoutVertexArray.emplaceBack(e[0].x,e[0].y),this.indexArray2.emplaceBack(n+e.length-1,n),i.push(e[0].x),i.push(e[0].y);for(let t=1;t<e.length;t++)this.layoutVertexArray.emplaceBack(e[t].x,e[t].y),this.indexArray2.emplaceBack(n+t-1,n+t),i.push(e[t].x),i.push(e[t].y);r.vertexLength+=e.length,r.primitiveLength+=e.length}const o=js(i,a);for(let t=0;t<o.length;t+=3)this.indexArray.emplaceBack(n+o[t],n+o[t+1],n+o[t+2]);r.vertexLength+=e,r.primitiveLength+=o.length/3}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t,r,i,n)}}let dl;Mi(\"FillBucket\",pl,{omit:[\"layers\",\"patternFeatures\"]});let ml;var gl={get paint(){return ml=ml||new ia({\"fill-antialias\":new Qi(Z.paint_fill[\"fill-antialias\"]),\"fill-opacity\":new ta(Z.paint_fill[\"fill-opacity\"]),\"fill-color\":new ta(Z.paint_fill[\"fill-color\"]),\"fill-outline-color\":new ta(Z.paint_fill[\"fill-outline-color\"]),\"fill-translate\":new Qi(Z.paint_fill[\"fill-translate\"]),\"fill-translate-anchor\":new Qi(Z.paint_fill[\"fill-translate-anchor\"]),\"fill-pattern\":new ea(Z.paint_fill[\"fill-pattern\"])})},get layout(){return dl=dl||new ia({\"fill-sort-key\":new ta(Z.layout_fill[\"fill-sort-key\"])})}};class yl extends oa{constructor(t){super(t,gl)}recalculate(t,e){super.recalculate(t,e);const r=this.paint._values[\"fill-outline-color\"];\"constant\"===r.value.kind&&void 0===r.value.value&&(this.paint._values[\"fill-outline-color\"]=this.paint._values[\"fill-color\"])}createBucket(t){return new pl(t)}queryRadius(){return os(this.paint.get(\"fill-translate\"))}queryIntersectsFeature(t,e,r,n,i,a,o){return $o(ss(t,this.paint.get(\"fill-translate\"),this.paint.get(\"fill-translate-anchor\"),a.angle,o),n)}isTileClipped(){return!0}}const vl=ua([{name:\"a_pos\",components:2,type:\"Int16\"},{name:\"a_normal_ed\",components:4,type:\"Int16\"}],4),xl=ua([{name:\"a_centroid\",components:2,type:\"Int16\"}],4),{members:_l,size:bl,alignment:wl}=vl;var Tl={},kl=n,Al=Ml;function Ml(t,e,r,n,i){this.properties={},this.extent=r,this.type=0,this._pbf=t,this._geometry=-1,this._keys=n,this._values=i,t.readFields(Sl,this,e)}function Sl(t,e,r){1==t?e.id=r.readVarint():2==t?function(t,e){for(var r=t.readVarint()+t.pos;t.pos<r;){var n=e._keys[t.readVarint()],i=e._values[t.readVarint()];e.properties[n]=i}}(r,e):3==t?e.type=r.readVarint():4==t&&(e._geometry=r.pos)}function El(t){for(var e,r,n=0,i=0,a=t.length,o=a-1;i<a;o=i++)e=t[i],n+=((r=t[o]).x-e.x)*(e.y+r.y);return n}Ml.types=[\"Unknown\",\"Point\",\"LineString\",\"Polygon\"],Ml.prototype.loadGeometry=function(){var t=this._pbf;t.pos=this._geometry;for(var e,r=t.readVarint()+t.pos,n=1,i=0,a=0,o=0,s=[];t.pos<r;){if(i<=0){var l=t.readVarint();n=7&l,i=l>>3}if(i--,1===n||2===n)a+=t.readSVarint(),o+=t.readSVarint(),1===n&&(e&&s.push(e),e=[]),e.push(new kl(a,o));else{if(7!==n)throw new Error(\"unknown command \"+n);e&&e.push(e[0].clone())}}return e&&s.push(e),s},Ml.prototype.bbox=function(){var t=this._pbf;t.pos=this._geometry;for(var e=t.readVarint()+t.pos,r=1,n=0,i=0,a=0,o=1/0,s=-1/0,l=1/0,c=-1/0;t.pos<e;){if(n<=0){var u=t.readVarint();r=7&u,n=u>>3}if(n--,1===r||2===r)(i+=t.readSVarint())<o&&(o=i),i>s&&(s=i),(a+=t.readSVarint())<l&&(l=a),a>c&&(c=a);else if(7!==r)throw new Error(\"unknown command \"+r)}return[o,l,s,c]},Ml.prototype.toGeoJSON=function(t,e,r){var n,i,a=this.extent*Math.pow(2,r),o=this.extent*t,s=this.extent*e,l=this.loadGeometry(),c=Ml.types[this.type];function u(t){for(var e=0;e<t.length;e++){var r=t[e],n=180-360*(r.y+s)/a;t[e]=[360*(r.x+o)/a-180,360/Math.PI*Math.atan(Math.exp(n*Math.PI/180))-90]}}switch(this.type){case 1:var h=[];for(n=0;n<l.length;n++)h[n]=l[n][0];u(l=h);break;case 2:for(n=0;n<l.length;n++)u(l[n]);break;case 3:for(l=function(t){var e=t.length;if(e<=1)return[t];for(var r,n,i=[],a=0;a<e;a++){var o=El(t[a]);0!==o&&(void 0===n&&(n=o<0),n===o<0?(r&&i.push(r),r=[t[a]]):r.push(t[a]))}return r&&i.push(r),i}(l),n=0;n<l.length;n++)for(i=0;i<l[n].length;i++)u(l[n][i])}1===l.length?l=l[0]:c=\"Multi\"+c;var f={type:\"Feature\",geometry:{type:c,coordinates:l},properties:this.properties};return\"id\"in this&&(f.id=this.id),f};var Cl=Al,Ll=Il;function Il(t,e){this.version=1,this.name=null,this.extent=4096,this.length=0,this._pbf=t,this._keys=[],this._values=[],this._features=[],t.readFields(Pl,this,e),this.length=this._features.length}function Pl(t,e,r){15===t?e.version=r.readVarint():1===t?e.name=r.readString():5===t?e.extent=r.readVarint():2===t?e._features.push(r.pos):3===t?e._keys.push(r.readString()):4===t&&e._values.push(function(t){for(var e=null,r=t.readVarint()+t.pos;t.pos<r;){var n=t.readVarint()>>3;e=1===n?t.readString():2===n?t.readFloat():3===n?t.readDouble():4===n?t.readVarint64():5===n?t.readVarint():6===n?t.readSVarint():7===n?t.readBoolean():null}return e}(r))}Il.prototype.feature=function(t){if(t<0||t>=this._features.length)throw new Error(\"feature index out of bounds\");this._pbf.pos=this._features[t];var e=this._pbf.readVarint()+this._pbf.pos;return new Cl(this._pbf,e,this.extent,this._keys,this._values)};var zl=Ll,Ol=function(t,e){this.layers=t.readFields(Dl,{},e)};function Dl(t,e,r){if(3===t){var n=new zl(r,r.readVarint()+r.pos);n.length&&(e[n.name]=n)}}Tl.VectorTile=Ol,Tl.VectorTileFeature=Al,Tl.VectorTileLayer=Ll;const Rl=Tl.VectorTileFeature.types,Fl=Math.pow(2,13);function Bl(t,e,r,n,i,a,o,s){t.emplaceBack(e,r,2*Math.floor(n*Fl)+o,i*Fl*2,a*Fl*2,Math.round(s))}class Nl{constructor(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((t=>t.id)),this.index=t.index,this.hasPattern=!1,this.layoutVertexArray=new $a,this.centroidVertexArray=new Wa,this.indexArray=new ao,this.programConfigurations=new Bo(t.layers,t.zoom),this.segments=new ho,this.stateDependentLayerIds=this.layers.filter((t=>t.isStateDependent())).map((t=>t.id))}populate(t,e,r){this.features=[],this.hasPattern=hl(\"fill-extrusion\",this.layers,e);for(const{feature:n,id:i,index:a,sourceLayerIndex:o}of t){const t=this.layers[0]._featureFilter.needGeometry,s=Go(n,t);if(!this.layers[0]._featureFilter.filter(new Hi(this.zoom),s,r))continue;const l={id:i,sourceLayerIndex:o,index:a,geometry:t?s.geometry:Ho(n),properties:n.properties,type:n.type,patterns:{}};this.hasPattern?this.features.push(fl(\"fill-extrusion\",this.layers,l,this.zoom,e)):this.addFeature(l,l.geometry,a,r,{}),e.featureIndex.insert(n,l.geometry,a,o,this.index,!0)}}addFeatures(t,e,r){for(const t of this.features){const{geometry:n}=t;this.addFeature(t,n,t.index,e,r)}}update(t,e,r){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(t,e,this.stateDependentLayers,r)}isEmpty(){return 0===this.layoutVertexArray.length&&0===this.centroidVertexArray.length}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(t){this.uploaded||(this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,_l),this.centroidVertexBuffer=t.createVertexBuffer(this.centroidVertexArray,xl.members,!0),this.indexBuffer=t.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(t),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.centroidVertexBuffer.destroy())}addFeature(t,e,r,n,i){for(const r of br(e,500)){const e={x:0,y:0,vertexCount:0};let n=0;for(const t of r)n+=t.length;let i=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray);for(const t of r){if(0===t.length)continue;if(Ul(t))continue;let r=0;for(let n=0;n<t.length;n++){const a=t[n];if(n>=1){const o=t[n-1];if(!jl(a,o)){i.vertexLength+4>ho.MAX_VERTEX_ARRAY_LENGTH&&(i=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));const t=a.sub(o)._perp()._unit(),n=o.dist(a);r+n>32768&&(r=0),Bl(this.layoutVertexArray,a.x,a.y,t.x,t.y,0,0,r),Bl(this.layoutVertexArray,a.x,a.y,t.x,t.y,0,1,r),e.x+=2*a.x,e.y+=2*a.y,e.vertexCount+=2,r+=n,Bl(this.layoutVertexArray,o.x,o.y,t.x,t.y,0,0,r),Bl(this.layoutVertexArray,o.x,o.y,t.x,t.y,0,1,r),e.x+=2*o.x,e.y+=2*o.y,e.vertexCount+=2;const s=i.vertexLength;this.indexArray.emplaceBack(s,s+2,s+1),this.indexArray.emplaceBack(s+1,s+2,s+3),i.vertexLength+=4,i.primitiveLength+=2}}}}if(i.vertexLength+n>ho.MAX_VERTEX_ARRAY_LENGTH&&(i=this.segments.prepareSegment(n,this.layoutVertexArray,this.indexArray)),\"Polygon\"!==Rl[t.type])continue;const a=[],o=[],s=i.vertexLength;for(const t of r)if(0!==t.length){t!==r[0]&&o.push(a.length/2);for(let r=0;r<t.length;r++){const n=t[r];Bl(this.layoutVertexArray,n.x,n.y,0,0,1,1,0),e.x+=n.x,e.y+=n.y,e.vertexCount+=1,a.push(n.x),a.push(n.y)}}const l=js(a,o);for(let t=0;t<l.length;t+=3)this.indexArray.emplaceBack(s+l[t],s+l[t+2],s+l[t+1]);i.primitiveLength+=l.length/3,i.vertexLength+=n;for(let t=0;t<e.vertexCount;t++){const t=Math.floor(e.x/e.vertexCount),r=Math.floor(e.y/e.vertexCount);this.centroidVertexArray.emplaceBack(t,r)}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t,r,i,n)}}function jl(t,e){return t.x===e.x&&(t.x<0||t.x>Uo)||t.y===e.y&&(t.y<0||t.y>Uo)}function Ul(t){return t.every((t=>t.x<0))||t.every((t=>t.x>Uo))||t.every((t=>t.y<0))||t.every((t=>t.y>Uo))}let Vl;Mi(\"FillExtrusionBucket\",Nl,{omit:[\"layers\",\"features\"]});var ql={get paint(){return Vl=Vl||new ia({\"fill-extrusion-opacity\":new Qi(Z[\"paint_fill-extrusion\"][\"fill-extrusion-opacity\"]),\"fill-extrusion-color\":new ta(Z[\"paint_fill-extrusion\"][\"fill-extrusion-color\"]),\"fill-extrusion-translate\":new Qi(Z[\"paint_fill-extrusion\"][\"fill-extrusion-translate\"]),\"fill-extrusion-translate-anchor\":new Qi(Z[\"paint_fill-extrusion\"][\"fill-extrusion-translate-anchor\"]),\"fill-extrusion-pattern\":new ea(Z[\"paint_fill-extrusion\"][\"fill-extrusion-pattern\"]),\"fill-extrusion-height\":new ta(Z[\"paint_fill-extrusion\"][\"fill-extrusion-height\"]),\"fill-extrusion-base\":new ta(Z[\"paint_fill-extrusion\"][\"fill-extrusion-base\"]),\"fill-extrusion-vertical-gradient\":new Qi(Z[\"paint_fill-extrusion\"][\"fill-extrusion-vertical-gradient\"])})}};class Hl extends oa{constructor(t){super(t,ql)}createBucket(t){return new Nl(t)}queryRadius(){return os(this.paint.get(\"fill-extrusion-translate\"))}is3D(){return!0}queryIntersectsFeature(t,e,r,n,i,o,s,l){const c=ss(t,this.paint.get(\"fill-extrusion-translate\"),this.paint.get(\"fill-extrusion-translate-anchor\"),o.angle,s),u=this.paint.get(\"fill-extrusion-height\").evaluate(e,r),h=this.paint.get(\"fill-extrusion-base\").evaluate(e,r),f=function(t,e,r,n){const i=[];for(const r of t){const t=[r.x,r.y,n,1];vs(t,t,e),i.push(new a(t[0]/t[3],t[1]/t[3]))}return i}(c,l,0,0),p=function(t,e,r,n){const i=[],o=[],s=n[8]*e,l=n[9]*e,c=n[10]*e,u=n[11]*e,h=n[8]*r,f=n[9]*r,p=n[10]*r,d=n[11]*r;for(const e of t){const t=[],r=[];for(const i of e){const e=i.x,o=i.y,m=n[0]*e+n[4]*o+n[12],g=n[1]*e+n[5]*o+n[13],y=n[2]*e+n[6]*o+n[14],v=n[3]*e+n[7]*o+n[15],x=y+c,_=v+u,b=m+h,w=g+f,T=y+p,k=v+d,A=new a((m+s)/_,(g+l)/_);A.z=x/_,t.push(A);const M=new a(b/k,w/k);M.z=T/k,r.push(M)}i.push(t),o.push(r)}return[i,o]}(n,h,u,l);return function(t,e,r){let n=1/0;$o(r,e)&&(n=Zl(r,e[0]));for(let i=0;i<e.length;i++){const a=e[i],o=t[i];for(let t=0;t<a.length-1;t++){const e=a[t],i=a[t+1],s=o[t],l=[e,i,o[t+1],s,e];Yo(r,l)&&(n=Math.min(n,Zl(r,l)))}}return n!==1/0&&n}(p[0],p[1],f)}}function Gl(t,e){return t.x*e.x+t.y*e.y}function Zl(t,e){if(1===t.length){let r=0;const n=e[r++];let i;for(;!i||n.equals(i);)if(i=e[r++],!i)return 1/0;for(;r<e.length;r++){const a=e[r],o=t[0],s=i.sub(n),l=a.sub(n),c=o.sub(n),u=Gl(s,s),h=Gl(s,l),f=Gl(l,l),p=Gl(c,s),d=Gl(c,l),m=u*f-h*h,g=(f*p-h*d)/m,y=(u*d-h*p)/m,v=1-g-y,x=n.z*v+i.z*g+a.z*y;if(isFinite(x))return x}return 1/0}{let t=1/0;for(const r of e)t=Math.min(t,r.z);return t}}const Wl=ua([{name:\"a_pos_normal\",components:2,type:\"Int16\"},{name:\"a_data\",components:4,type:\"Uint8\"}],4),{members:Yl,size:Xl,alignment:$l}=Wl,Jl=ua([{name:\"a_uv_x\",components:1,type:\"Float32\"},{name:\"a_split_index\",components:1,type:\"Float32\"}]),{members:Kl,size:Ql,alignment:tc}=Jl,ec=Tl.VectorTileFeature.types,rc=Math.cos(Math.PI/180*37.5),nc=Math.pow(2,14)/.5;class ic{constructor(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((t=>t.id)),this.index=t.index,this.hasPattern=!1,this.patternFeatures=[],this.lineClipsArray=[],this.gradients={},this.layers.forEach((t=>{this.gradients[t.id]={}})),this.layoutVertexArray=new Ja,this.layoutVertexArray2=new Ka,this.indexArray=new ao,this.programConfigurations=new Bo(t.layers,t.zoom),this.segments=new ho,this.maxLineLength=0,this.stateDependentLayerIds=this.layers.filter((t=>t.isStateDependent())).map((t=>t.id))}populate(t,e,r){this.hasPattern=hl(\"line\",this.layers,e);const n=this.layers[0].layout.get(\"line-sort-key\"),i=!n.isConstant(),a=[];for(const{feature:e,id:o,index:s,sourceLayerIndex:l}of t){const t=this.layers[0]._featureFilter.needGeometry,c=Go(e,t);if(!this.layers[0]._featureFilter.filter(new Hi(this.zoom),c,r))continue;const u=i?n.evaluate(c,{},r):void 0,h={id:o,properties:e.properties,type:e.type,sourceLayerIndex:l,index:s,geometry:t?c.geometry:Ho(e),patterns:{},sortKey:u};a.push(h)}i&&a.sort(((t,e)=>t.sortKey-e.sortKey));for(const n of a){const{geometry:i,index:a,sourceLayerIndex:o}=n;if(this.hasPattern){const t=fl(\"line\",this.layers,n,this.zoom,e);this.patternFeatures.push(t)}else this.addFeature(n,i,a,r,{});const s=t[a].feature;e.featureIndex.insert(s,i,a,o,this.index)}}update(t,e,r){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(t,e,this.stateDependentLayers,r)}addFeatures(t,e,r){for(const t of this.patternFeatures)this.addFeature(t,t.geometry,t.index,e,r)}isEmpty(){return 0===this.layoutVertexArray.length}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(t){this.uploaded||(0!==this.layoutVertexArray2.length&&(this.layoutVertexBuffer2=t.createVertexBuffer(this.layoutVertexArray2,Kl)),this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,Yl),this.indexBuffer=t.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(t),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}lineFeatureClips(t){if(t.properties&&Object.prototype.hasOwnProperty.call(t.properties,\"mapbox_clip_start\")&&Object.prototype.hasOwnProperty.call(t.properties,\"mapbox_clip_end\"))return{start:+t.properties.mapbox_clip_start,end:+t.properties.mapbox_clip_end}}addFeature(t,e,r,n,i){const a=this.layers[0].layout,o=a.get(\"line-join\").evaluate(t,{}),s=a.get(\"line-cap\"),l=a.get(\"line-miter-limit\"),c=a.get(\"line-round-limit\");this.lineClips=this.lineFeatureClips(t);for(const r of e)this.addLine(r,t,o,s,l,c);this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t,r,i,n)}addLine(t,e,r,n,i,a){if(this.distance=0,this.scaledDistance=0,this.totalDistance=0,this.lineClips){this.lineClipsArray.push(this.lineClips);for(let e=0;e<t.length-1;e++)this.totalDistance+=t[e].dist(t[e+1]);this.updateScaledDistance(),this.maxLineLength=Math.max(this.maxLineLength,this.totalDistance)}const o=\"Polygon\"===ec[e.type];let s=t.length;for(;s>=2&&t[s-1].equals(t[s-2]);)s--;let l=0;for(;l<s-1&&t[l].equals(t[l+1]);)l++;if(s<(o?3:2))return;\"bevel\"===r&&(i=1.05);const c=this.overscaling<=16?15*Uo/(512*this.overscaling):0,u=this.segments.prepareSegment(10*s,this.layoutVertexArray,this.indexArray);let h,f,p,d,m;this.e1=this.e2=-1,o&&(h=t[s-2],m=t[l].sub(h)._unit()._perp());for(let e=l;e<s;e++){if(p=e===s-1?o?t[l+1]:void 0:t[e+1],p&&t[e].equals(p))continue;m&&(d=m),h&&(f=h),h=t[e],m=p?p.sub(h)._unit()._perp():d,d=d||m;let g=d.add(m);0===g.x&&0===g.y||g._unit();const y=d.x*m.x+d.y*m.y,v=g.x*m.x+g.y*m.y,x=0!==v?1/v:1/0,_=2*Math.sqrt(2-2*v),b=v<rc&&f&&p,w=d.x*m.y-d.y*m.x>0;if(b&&e>l){const t=h.dist(f);if(t>2*c){const e=h.sub(h.sub(f)._mult(c/t)._round());this.updateDistance(f,e),this.addCurrentVertex(e,d,0,0,u),f=e}}const T=f&&p;let k=T?r:o?\"butt\":n;if(T&&\"round\"===k&&(x<a?k=\"miter\":x<=2&&(k=\"fakeround\")),\"miter\"===k&&x>i&&(k=\"bevel\"),\"bevel\"===k&&(x>2&&(k=\"flipbevel\"),x<i&&(k=\"miter\")),f&&this.updateDistance(f,h),\"miter\"===k)g._mult(x),this.addCurrentVertex(h,g,0,0,u);else if(\"flipbevel\"===k){if(x>100)g=m.mult(-1);else{const t=x*d.add(m).mag()/d.sub(m).mag();g._perp()._mult(t*(w?-1:1))}this.addCurrentVertex(h,g,0,0,u),this.addCurrentVertex(h,g.mult(-1),0,0,u)}else if(\"bevel\"===k||\"fakeround\"===k){const t=-Math.sqrt(x*x-1),e=w?t:0,r=w?0:t;if(f&&this.addCurrentVertex(h,d,e,r,u),\"fakeround\"===k){const t=Math.round(180*_/Math.PI/20);for(let e=1;e<t;e++){let r=e/t;if(.5!==r){const t=r-.5;r+=r*t*(r-1)*((1.0904+y*(y*(3.55645-1.43519*y)-3.2452))*t*t+(.848013+y*(.215638*y-1.06021)))}const n=m.sub(d)._mult(r)._add(d)._unit()._mult(w?-1:1);this.addHalfVertex(h,n.x,n.y,!1,w,0,u)}}p&&this.addCurrentVertex(h,m,-e,-r,u)}else if(\"butt\"===k)this.addCurrentVertex(h,g,0,0,u);else if(\"square\"===k){const t=f?1:-1;this.addCurrentVertex(h,g,t,t,u)}else\"round\"===k&&(f&&(this.addCurrentVertex(h,d,0,0,u),this.addCurrentVertex(h,d,1,1,u,!0)),p&&(this.addCurrentVertex(h,m,-1,-1,u,!0),this.addCurrentVertex(h,m,0,0,u)));if(b&&e<s-1){const t=h.dist(p);if(t>2*c){const e=h.add(p.sub(h)._mult(c/t)._round());this.updateDistance(h,e),this.addCurrentVertex(e,m,0,0,u),h=e}}}}addCurrentVertex(t,e,r,n,i,a=!1){const o=e.x+e.y*r,s=e.y-e.x*r,l=-e.x+e.y*n,c=-e.y-e.x*n;this.addHalfVertex(t,o,s,a,!1,r,i),this.addHalfVertex(t,l,c,a,!0,-n,i),this.distance>nc/2&&0===this.totalDistance&&(this.distance=0,this.updateScaledDistance(),this.addCurrentVertex(t,e,r,n,i,a))}addHalfVertex({x:t,y:e},r,n,i,a,o,s){const l=.5*(this.lineClips?this.scaledDistance*(nc-1):this.scaledDistance);if(this.layoutVertexArray.emplaceBack((t<<1)+(i?1:0),(e<<1)+(a?1:0),Math.round(63*r)+128,Math.round(63*n)+128,1+(0===o?0:o<0?-1:1)|(63&l)<<2,l>>6),this.lineClips){const t=(this.scaledDistance-this.lineClips.start)/(this.lineClips.end-this.lineClips.start);this.layoutVertexArray2.emplaceBack(t,this.lineClipsArray.length)}const c=s.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,c),s.primitiveLength++),a?this.e2=c:this.e1=c}updateScaledDistance(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance}updateDistance(t,e){this.distance+=t.dist(e),this.updateScaledDistance()}}let ac;Mi(\"LineBucket\",ic,{omit:[\"layers\",\"patternFeatures\"]});let oc;var sc={get paint(){return oc=oc||new ia({\"line-opacity\":new ta(Z.paint_line[\"line-opacity\"]),\"line-color\":new ta(Z.paint_line[\"line-color\"]),\"line-translate\":new Qi(Z.paint_line[\"line-translate\"]),\"line-translate-anchor\":new Qi(Z.paint_line[\"line-translate-anchor\"]),\"line-width\":new ta(Z.paint_line[\"line-width\"]),\"line-gap-width\":new ta(Z.paint_line[\"line-gap-width\"]),\"line-offset\":new ta(Z.paint_line[\"line-offset\"]),\"line-blur\":new ta(Z.paint_line[\"line-blur\"]),\"line-dasharray\":new ra(Z.paint_line[\"line-dasharray\"]),\"line-pattern\":new ea(Z.paint_line[\"line-pattern\"]),\"line-gradient\":new na(Z.paint_line[\"line-gradient\"])})},get layout(){return ac=ac||new ia({\"line-cap\":new Qi(Z.layout_line[\"line-cap\"]),\"line-join\":new ta(Z.layout_line[\"line-join\"]),\"line-miter-limit\":new Qi(Z.layout_line[\"line-miter-limit\"]),\"line-round-limit\":new Qi(Z.layout_line[\"line-round-limit\"]),\"line-sort-key\":new ta(Z.layout_line[\"line-sort-key\"])})}};class lc extends ta{possiblyEvaluate(t,e){return e=new Hi(Math.floor(e.zoom),{now:e.now,fadeDuration:e.fadeDuration,zoomHistory:e.zoomHistory,transition:e.transition}),super.possiblyEvaluate(t,e)}evaluate(t,e,r,n){return e=y({},e,{zoom:Math.floor(e.zoom)}),super.evaluate(t,e,r,n)}}let cc;class uc extends oa{constructor(t){super(t,sc),this.gradientVersion=0,cc||(cc=new lc(sc.paint.properties[\"line-width\"].specification),cc.useIntegerZoom=!0)}_handleSpecialPaintPropertyUpdate(t){if(\"line-gradient\"===t){const t=this.gradientExpression();!function(t){return void 0!==t._styleExpression}(t)?this.stepInterpolant=!1:this.stepInterpolant=t._styleExpression.expression instanceof Ae,this.gradientVersion=(this.gradientVersion+1)%Number.MAX_SAFE_INTEGER}}gradientExpression(){return this._transitionablePaint._values[\"line-gradient\"].value.expression}recalculate(t,e){super.recalculate(t,e),this.paint._values[\"line-floorwidth\"]=cc.possiblyEvaluate(this._transitioningPaint._values[\"line-width\"].value,t)}createBucket(t){return new ic(t)}queryRadius(t){const e=t,r=hc(as(\"line-width\",this,e),as(\"line-gap-width\",this,e)),n=as(\"line-offset\",this,e);return r/2+Math.abs(n)+os(this.paint.get(\"line-translate\"))}queryIntersectsFeature(t,e,r,n,i,o,s){const l=ss(t,this.paint.get(\"line-translate\"),this.paint.get(\"line-translate-anchor\"),o.angle,s),c=s/2*hc(this.paint.get(\"line-width\").evaluate(e,r),this.paint.get(\"line-gap-width\").evaluate(e,r)),u=this.paint.get(\"line-offset\").evaluate(e,r);return u&&(n=function(t,e){const r=[];for(let n=0;n<t.length;n++){const i=t[n],o=[];for(let t=0;t<i.length;t++){const r=i[t-1],n=i[t],s=i[t+1],l=0===t?new a(0,0):n.sub(r)._unit()._perp(),c=t===i.length-1?new a(0,0):s.sub(n)._unit()._perp(),u=l._add(c)._unit(),h=u.x*c.x+u.y*c.y;0!==h&&u._mult(1/h),o.push(u._mult(e)._add(n))}r.push(o)}return r}(n,u*s)),function(t,e,r){for(let n=0;n<e.length;n++){const i=e[n];if(t.length>=3)for(let e=0;e<i.length;e++)if(ns(t,i[e]))return!0;if(Jo(t,i,r))return!0}return!1}(l,n,c)}isTileClipped(){return!0}}function hc(t,e){return e>0?e+2*t:t}const fc=ua([{name:\"a_pos_offset\",components:4,type:\"Int16\"},{name:\"a_data\",components:4,type:\"Uint16\"},{name:\"a_pixeloffset\",components:4,type:\"Int16\"}],4),pc=ua([{name:\"a_projected_pos\",components:3,type:\"Float32\"}],4);ua([{name:\"a_fade_opacity\",components:1,type:\"Uint32\"}],4);const dc=ua([{name:\"a_placed\",components:2,type:\"Uint8\"},{name:\"a_shift\",components:2,type:\"Float32\"},{name:\"a_box_real\",components:2,type:\"Int16\"}]);ua([{type:\"Int16\",name:\"anchorPointX\"},{type:\"Int16\",name:\"anchorPointY\"},{type:\"Int16\",name:\"x1\"},{type:\"Int16\",name:\"y1\"},{type:\"Int16\",name:\"x2\"},{type:\"Int16\",name:\"y2\"},{type:\"Uint32\",name:\"featureIndex\"},{type:\"Uint16\",name:\"sourceLayerIndex\"},{type:\"Uint16\",name:\"bucketIndex\"}]);const mc=ua([{name:\"a_pos\",components:2,type:\"Int16\"},{name:\"a_anchor_pos\",components:2,type:\"Int16\"},{name:\"a_extrude\",components:2,type:\"Int16\"}],4),gc=ua([{name:\"a_pos\",components:2,type:\"Float32\"},{name:\"a_radius\",components:1,type:\"Float32\"},{name:\"a_flags\",components:2,type:\"Int16\"}],4);function yc(t,e,r){return t.sections.forEach((t=>{t.text=function(t,e,r){const n=e.layout.get(\"text-transform\").evaluate(r,{});return\"uppercase\"===n?t=t.toLocaleUpperCase():\"lowercase\"===n&&(t=t.toLocaleLowerCase()),qi.applyArabicShaping&&(t=qi.applyArabicShaping(t)),t}(t.text,e,r)})),t}ua([{name:\"triangle\",components:3,type:\"Uint16\"}]),ua([{type:\"Int16\",name:\"anchorX\"},{type:\"Int16\",name:\"anchorY\"},{type:\"Uint16\",name:\"glyphStartIndex\"},{type:\"Uint16\",name:\"numGlyphs\"},{type:\"Uint32\",name:\"vertexStartIndex\"},{type:\"Uint32\",name:\"lineStartIndex\"},{type:\"Uint32\",name:\"lineLength\"},{type:\"Uint16\",name:\"segment\"},{type:\"Uint16\",name:\"lowerSize\"},{type:\"Uint16\",name:\"upperSize\"},{type:\"Float32\",name:\"lineOffsetX\"},{type:\"Float32\",name:\"lineOffsetY\"},{type:\"Uint8\",name:\"writingMode\"},{type:\"Uint8\",name:\"placedOrientation\"},{type:\"Uint8\",name:\"hidden\"},{type:\"Uint32\",name:\"crossTileID\"},{type:\"Int16\",name:\"associatedIconIndex\"}]),ua([{type:\"Int16\",name:\"anchorX\"},{type:\"Int16\",name:\"anchorY\"},{type:\"Int16\",name:\"rightJustifiedTextSymbolIndex\"},{type:\"Int16\",name:\"centerJustifiedTextSymbolIndex\"},{type:\"Int16\",name:\"leftJustifiedTextSymbolIndex\"},{type:\"Int16\",name:\"verticalPlacedTextSymbolIndex\"},{type:\"Int16\",name:\"placedIconSymbolIndex\"},{type:\"Int16\",name:\"verticalPlacedIconSymbolIndex\"},{type:\"Uint16\",name:\"key\"},{type:\"Uint16\",name:\"textBoxStartIndex\"},{type:\"Uint16\",name:\"textBoxEndIndex\"},{type:\"Uint16\",name:\"verticalTextBoxStartIndex\"},{type:\"Uint16\",name:\"verticalTextBoxEndIndex\"},{type:\"Uint16\",name:\"iconBoxStartIndex\"},{type:\"Uint16\",name:\"iconBoxEndIndex\"},{type:\"Uint16\",name:\"verticalIconBoxStartIndex\"},{type:\"Uint16\",name:\"verticalIconBoxEndIndex\"},{type:\"Uint16\",name:\"featureIndex\"},{type:\"Uint16\",name:\"numHorizontalGlyphVertices\"},{type:\"Uint16\",name:\"numVerticalGlyphVertices\"},{type:\"Uint16\",name:\"numIconVertices\"},{type:\"Uint16\",name:\"numVerticalIconVertices\"},{type:\"Uint16\",name:\"useRuntimeCollisionCircles\"},{type:\"Uint32\",name:\"crossTileID\"},{type:\"Float32\",name:\"textBoxScale\"},{type:\"Float32\",name:\"collisionCircleDiameter\"},{type:\"Uint16\",name:\"textAnchorOffsetStartIndex\"},{type:\"Uint16\",name:\"textAnchorOffsetEndIndex\"}]),ua([{type:\"Float32\",name:\"offsetX\"}]),ua([{type:\"Int16\",name:\"x\"},{type:\"Int16\",name:\"y\"},{type:\"Int16\",name:\"tileUnitDistanceFromAnchor\"}]),ua([{type:\"Uint16\",name:\"textAnchor\"},{type:\"Float32\",components:2,name:\"textOffset\"}]);const vc={\"!\":\"︕\",\"#\":\"\",$:\"\",\"%\":\"\",\"&\":\"\",\"(\":\"︵\",\")\":\"︶\",\"*\":\"\",\"+\":\"\",\",\":\"︐\",\"-\":\"︲\",\".\":\"・\",\"/\":\"\",\":\":\"︓\",\";\":\"︔\",\"<\":\"︿\",\"=\":\"\",\">\":\"﹀\",\"?\":\"︖\",\"@\":\"\",\"[\":\"﹇\",\"\\\\\":\"\",\"]\":\"﹈\",\"^\":\"\",_:\"︳\",\"`\":\"\",\"{\":\"︷\",\"|\":\"―\",\"}\":\"︸\",\"~\":\"\",\"¢\":\"¢\",\"£\":\"£\",\"¥\":\"¥\",\"¦\":\"¦\",\"¬\":\"¬\",\"¯\":\" ̄\",\"\":\"︲\",\"—\":\"︱\",\"\":\"﹃\",\"\":\"﹄\",\"“\":\"﹁\",\"”\":\"﹂\",\"…\":\"︙\",\"‧\":\"・\",\"₩\":\"₩\",\"、\":\"︑\",\"。\":\"︒\",\"〈\":\"︿\",\"〉\":\"﹀\",\"《\":\"︽\",\"》\":\"︾\",\"「\":\"﹁\",\"」\":\"﹂\",\"『\":\"﹃\",\"』\":\"﹄\",\"【\":\"︻\",\"】\":\"︼\",\"\":\"︹\",\"\":\"︺\",\"〖\":\"︗\",\"〗\":\"︘\",\"\":\"︕\",\"\":\"︵\",\"\":\"︶\",\"\":\"︐\",\"\":\"︲\",\"\":\"・\",\"\":\"︓\",\"\":\"︔\",\"\":\"︿\",\"\":\"﹀\",\"\":\"︖\",\"\":\"﹇\",\"\":\"﹈\",\"_\":\"︳\",\"\":\"︷\",\"\":\"―\",\"\":\"︸\",\"⦅\":\"︵\",\"⦆\":\"︶\",\"。\":\"︒\",\"「\":\"﹁\",\"」\":\"﹂\"};var xc=24,_c=wc,bc={read:function(t,e,r,n,i){var a,o,s=8*i-n-1,l=(1<<s)-1,c=l>>1,u=-7,h=r?i-1:0,f=r?-1:1,p=t[e+h];for(h+=f,a=p&(1<<-u)-1,p>>=-u,u+=s;u>0;a=256*a+t[e+h],h+=f,u-=8);for(o=a&(1<<-u)-1,a>>=-u,u+=n;u>0;o=256*o+t[e+h],h+=f,u-=8);if(0===a)a=1-c;else{if(a===l)return o?NaN:1/0*(p?-1:1);o+=Math.pow(2,n),a-=c}return(p?-1:1)*o*Math.pow(2,a-n)},write:function(t,e,r,n,i,a){var o,s,l,c=8*a-i-1,u=(1<<c)-1,h=u>>1,f=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,p=n?0:a-1,d=n?1:-1,m=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,o=u):(o=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-o))<1&&(o--,l*=2),(e+=o+h>=1?f/l:f*Math.pow(2,1-h))*l>=2&&(o++,l/=2),o+h>=u?(s=0,o=u):o+h>=1?(s=(e*l-1)*Math.pow(2,i),o+=h):(s=e*Math.pow(2,h-1)*Math.pow(2,i),o=0));i>=8;t[r+p]=255&s,p+=d,s/=256,i-=8);for(o=o<<i|s,c+=i;c>0;t[r+p]=255&o,p+=d,o/=256,c-=8);t[r+p-d]|=128*m}};function wc(t){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(t)?t:new Uint8Array(t||0),this.pos=0,this.type=0,this.length=this.buf.length}wc.Varint=0,wc.Fixed64=1,wc.Bytes=2,wc.Fixed32=5;var Tc=4294967296,kc=1/Tc,Ac=\"undefined\"==typeof TextDecoder?null:new TextDecoder(\"utf-8\");function Mc(t){return t.type===wc.Bytes?t.readVarint()+t.pos:t.pos+1}function Sc(t,e,r){return r?4294967296*e+(t>>>0):4294967296*(e>>>0)+(t>>>0)}function Ec(t,e,r){var n=e<=16383?1:e<=2097151?2:e<=268435455?3:Math.floor(Math.log(e)/(7*Math.LN2));r.realloc(n);for(var i=r.pos-1;i>=t;i--)r.buf[i+n]=r.buf[i]}function Cc(t,e){for(var r=0;r<t.length;r++)e.writeVarint(t[r])}function Lc(t,e){for(var r=0;r<t.length;r++)e.writeSVarint(t[r])}function Ic(t,e){for(var r=0;r<t.length;r++)e.writeFloat(t[r])}function Pc(t,e){for(var r=0;r<t.length;r++)e.writeDouble(t[r])}function zc(t,e){for(var r=0;r<t.length;r++)e.writeBoolean(t[r])}function Oc(t,e){for(var r=0;r<t.length;r++)e.writeFixed32(t[r])}function Dc(t,e){for(var r=0;r<t.length;r++)e.writeSFixed32(t[r])}function Rc(t,e){for(var r=0;r<t.length;r++)e.writeFixed64(t[r])}function Fc(t,e){for(var r=0;r<t.length;r++)e.writeSFixed64(t[r])}function Bc(t,e){return(t[e]|t[e+1]<<8|t[e+2]<<16)+16777216*t[e+3]}function Nc(t,e,r){t[r]=e,t[r+1]=e>>>8,t[r+2]=e>>>16,t[r+3]=e>>>24}function jc(t,e){return(t[e]|t[e+1]<<8|t[e+2]<<16)+(t[e+3]<<24)}wc.prototype={destroy:function(){this.buf=null},readFields:function(t,e,r){for(r=r||this.length;this.pos<r;){var n=this.readVarint(),i=n>>3,a=this.pos;this.type=7&n,t(i,e,this),this.pos===a&&this.skip(n)}return e},readMessage:function(t,e){return this.readFields(t,e,this.readVarint()+this.pos)},readFixed32:function(){var t=Bc(this.buf,this.pos);return this.pos+=4,t},readSFixed32:function(){var t=jc(this.buf,this.pos);return this.pos+=4,t},readFixed64:function(){var t=Bc(this.buf,this.pos)+Bc(this.buf,this.pos+4)*Tc;return this.pos+=8,t},readSFixed64:function(){var t=Bc(this.buf,this.pos)+jc(this.buf,this.pos+4)*Tc;return this.pos+=8,t},readFloat:function(){var t=bc.read(this.buf,this.pos,!0,23,4);return this.pos+=4,t},readDouble:function(){var t=bc.read(this.buf,this.pos,!0,52,8);return this.pos+=8,t},readVarint:function(t){var e,r,n=this.buf;return e=127&(r=n[this.pos++]),r<128?e:(e|=(127&(r=n[this.pos++]))<<7,r<128?e:(e|=(127&(r=n[this.pos++]))<<14,r<128?e:(e|=(127&(r=n[this.pos++]))<<21,r<128?e:function(t,e,r){var n,i,a=r.buf;if(n=(112&(i=a[r.pos++]))>>4,i<128)return Sc(t,n,e);if(n|=(127&(i=a[r.pos++]))<<3,i<128)return Sc(t,n,e);if(n|=(127&(i=a[r.pos++]))<<10,i<128)return Sc(t,n,e);if(n|=(127&(i=a[r.pos++]))<<17,i<128)return Sc(t,n,e);if(n|=(127&(i=a[r.pos++]))<<24,i<128)return Sc(t,n,e);if(n|=(1&(i=a[r.pos++]))<<31,i<128)return Sc(t,n,e);throw new Error(\"Expected varint not more than 10 bytes\")}(e|=(15&(r=n[this.pos]))<<28,t,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var t=this.readVarint();return t%2==1?(t+1)/-2:t/2},readBoolean:function(){return Boolean(this.readVarint())},readString:function(){var t=this.readVarint()+this.pos,e=this.pos;return this.pos=t,t-e>=12&&Ac?function(t,e,r){return Ac.decode(t.subarray(e,r))}(this.buf,e,t):function(t,e,r){for(var n=\"\",i=e;i<r;){var a,o,s,l=t[i],c=null,u=l>239?4:l>223?3:l>191?2:1;if(i+u>r)break;1===u?l<128&&(c=l):2===u?128==(192&(a=t[i+1]))&&(c=(31&l)<<6|63&a)<=127&&(c=null):3===u?(a=t[i+1],o=t[i+2],128==(192&a)&&128==(192&o)&&((c=(15&l)<<12|(63&a)<<6|63&o)<=2047||c>=55296&&c<=57343)&&(c=null)):4===u&&(a=t[i+1],o=t[i+2],s=t[i+3],128==(192&a)&&128==(192&o)&&128==(192&s)&&((c=(15&l)<<18|(63&a)<<12|(63&o)<<6|63&s)<=65535||c>=1114112)&&(c=null)),null===c?(c=65533,u=1):c>65535&&(c-=65536,n+=String.fromCharCode(c>>>10&1023|55296),c=56320|1023&c),n+=String.fromCharCode(c),i+=u}return n}(this.buf,e,t)},readBytes:function(){var t=this.readVarint()+this.pos,e=this.buf.subarray(this.pos,t);return this.pos=t,e},readPackedVarint:function(t,e){if(this.type!==wc.Bytes)return t.push(this.readVarint(e));var r=Mc(this);for(t=t||[];this.pos<r;)t.push(this.readVarint(e));return t},readPackedSVarint:function(t){if(this.type!==wc.Bytes)return t.push(this.readSVarint());var e=Mc(this);for(t=t||[];this.pos<e;)t.push(this.readSVarint());return t},readPackedBoolean:function(t){if(this.type!==wc.Bytes)return t.push(this.readBoolean());var e=Mc(this);for(t=t||[];this.pos<e;)t.push(this.readBoolean());return t},readPackedFloat:function(t){if(this.type!==wc.Bytes)return t.push(this.readFloat());var e=Mc(this);for(t=t||[];this.pos<e;)t.push(this.readFloat());return t},readPackedDouble:function(t){if(this.type!==wc.Bytes)return t.push(this.readDouble());var e=Mc(this);for(t=t||[];this.pos<e;)t.push(this.readDouble());return t},readPackedFixed32:function(t){if(this.type!==wc.Bytes)return t.push(this.readFixed32());var e=Mc(this);for(t=t||[];this.pos<e;)t.push(this.readFixed32());return t},readPackedSFixed32:function(t){if(this.type!==wc.Bytes)return t.push(this.readSFixed32());var e=Mc(this);for(t=t||[];this.pos<e;)t.push(this.readSFixed32());return t},readPackedFixed64:function(t){if(this.type!==wc.Bytes)return t.push(this.readFixed64());var e=Mc(this);for(t=t||[];this.pos<e;)t.push(this.readFixed64());return t},readPackedSFixed64:function(t){if(this.type!==wc.Bytes)return t.push(this.readSFixed64());var e=Mc(this);for(t=t||[];this.pos<e;)t.push(this.readSFixed64());return t},skip:function(t){var e=7&t;if(e===wc.Varint)for(;this.buf[this.pos++]>127;);else if(e===wc.Bytes)this.pos=this.readVarint()+this.pos;else if(e===wc.Fixed32)this.pos+=4;else{if(e!==wc.Fixed64)throw new Error(\"Unimplemented type: \"+e);this.pos+=8}},writeTag:function(t,e){this.writeVarint(t<<3|e)},realloc:function(t){for(var e=this.length||16;e<this.pos+t;)e*=2;if(e!==this.length){var r=new Uint8Array(e);r.set(this.buf),this.buf=r,this.length=e}},finish:function(){return this.length=this.pos,this.pos=0,this.buf.subarray(0,this.length)},writeFixed32:function(t){this.realloc(4),Nc(this.buf,t,this.pos),this.pos+=4},writeSFixed32:function(t){this.realloc(4),Nc(this.buf,t,this.pos),this.pos+=4},writeFixed64:function(t){this.realloc(8),Nc(this.buf,-1&t,this.pos),Nc(this.buf,Math.floor(t*kc),this.pos+4),this.pos+=8},writeSFixed64:function(t){this.realloc(8),Nc(this.buf,-1&t,this.pos),Nc(this.buf,Math.floor(t*kc),this.pos+4),this.pos+=8},writeVarint:function(t){(t=+t||0)>268435455||t<0?function(t,e){var r,n;if(t>=0?(r=t%4294967296|0,n=t/4294967296|0):(n=~(-t/4294967296),4294967295^(r=~(-t%4294967296))?r=r+1|0:(r=0,n=n+1|0)),t>=0x10000000000000000||t<-0x10000000000000000)throw new Error(\"Given varint doesn't fit into 10 bytes\");e.realloc(10),function(t,e,r){r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos]=127&t}(r,0,e),function(t,e){var r=(7&t)<<4;e.buf[e.pos++]|=r|((t>>>=3)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t)))))}(n,e)}(t,this):(this.realloc(4),this.buf[this.pos++]=127&t|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=t>>>7&127))))},writeSVarint:function(t){this.writeVarint(t<0?2*-t-1:2*t)},writeBoolean:function(t){this.writeVarint(Boolean(t))},writeString:function(t){t=String(t),this.realloc(4*t.length),this.pos++;var e=this.pos;this.pos=function(t,e,r){for(var n,i,a=0;a<e.length;a++){if((n=e.charCodeAt(a))>55295&&n<57344){if(!i){n>56319||a+1===e.length?(t[r++]=239,t[r++]=191,t[r++]=189):i=n;continue}if(n<56320){t[r++]=239,t[r++]=191,t[r++]=189,i=n;continue}n=i-55296<<10|n-56320|65536,i=null}else i&&(t[r++]=239,t[r++]=191,t[r++]=189,i=null);n<128?t[r++]=n:(n<2048?t[r++]=n>>6|192:(n<65536?t[r++]=n>>12|224:(t[r++]=n>>18|240,t[r++]=n>>12&63|128),t[r++]=n>>6&63|128),t[r++]=63&n|128)}return r}(this.buf,t,this.pos);var r=this.pos-e;r>=128&&Ec(e,r,this),this.pos=e-1,this.writeVarint(r),this.pos+=r},writeFloat:function(t){this.realloc(4),bc.write(this.buf,t,this.pos,!0,23,4),this.pos+=4},writeDouble:function(t){this.realloc(8),bc.write(this.buf,t,this.pos,!0,52,8),this.pos+=8},writeBytes:function(t){var e=t.length;this.writeVarint(e),this.realloc(e);for(var r=0;r<e;r++)this.buf[this.pos++]=t[r]},writeRawMessage:function(t,e){this.pos++;var r=this.pos;t(e,this);var n=this.pos-r;n>=128&&Ec(r,n,this),this.pos=r-1,this.writeVarint(n),this.pos+=n},writeMessage:function(t,e,r){this.writeTag(t,wc.Bytes),this.writeRawMessage(e,r)},writePackedVarint:function(t,e){e.length&&this.writeMessage(t,Cc,e)},writePackedSVarint:function(t,e){e.length&&this.writeMessage(t,Lc,e)},writePackedBoolean:function(t,e){e.length&&this.writeMessage(t,zc,e)},writePackedFloat:function(t,e){e.length&&this.writeMessage(t,Ic,e)},writePackedDouble:function(t,e){e.length&&this.writeMessage(t,Pc,e)},writePackedFixed32:function(t,e){e.length&&this.writeMessage(t,Oc,e)},writePackedSFixed32:function(t,e){e.length&&this.writeMessage(t,Dc,e)},writePackedFixed64:function(t,e){e.length&&this.writeMessage(t,Rc,e)},writePackedSFixed64:function(t,e){e.length&&this.writeMessage(t,Fc,e)},writeBytesField:function(t,e){this.writeTag(t,wc.Bytes),this.writeBytes(e)},writeFixed32Field:function(t,e){this.writeTag(t,wc.Fixed32),this.writeFixed32(e)},writeSFixed32Field:function(t,e){this.writeTag(t,wc.Fixed32),this.writeSFixed32(e)},writeFixed64Field:function(t,e){this.writeTag(t,wc.Fixed64),this.writeFixed64(e)},writeSFixed64Field:function(t,e){this.writeTag(t,wc.Fixed64),this.writeSFixed64(e)},writeVarintField:function(t,e){this.writeTag(t,wc.Varint),this.writeVarint(e)},writeSVarintField:function(t,e){this.writeTag(t,wc.Varint),this.writeSVarint(e)},writeStringField:function(t,e){this.writeTag(t,wc.Bytes),this.writeString(e)},writeFloatField:function(t,e){this.writeTag(t,wc.Fixed32),this.writeFloat(e)},writeDoubleField:function(t,e){this.writeTag(t,wc.Fixed64),this.writeDouble(e)},writeBooleanField:function(t,e){this.writeVarintField(t,Boolean(e))}};var Uc=r(_c);const Vc=3;function qc(t,e,r){1===t&&r.readMessage(Hc,e)}function Hc(t,e,r){if(3===t){const{id:t,bitmap:n,width:i,height:a,left:o,top:s,advance:l}=r.readMessage(Gc,{});e.push({id:t,bitmap:new Cs({width:i+2*Vc,height:a+2*Vc},n),metrics:{width:i,height:a,left:o,top:s,advance:l}})}}function Gc(t,e,r){1===t?e.id=r.readVarint():2===t?e.bitmap=r.readBytes():3===t?e.width=r.readVarint():4===t?e.height=r.readVarint():5===t?e.left=r.readSVarint():6===t?e.top=r.readSVarint():7===t&&(e.advance=r.readVarint())}const Zc=Vc;function Wc(t){let e=0,r=0;for(const n of t)e+=n.w*n.h,r=Math.max(r,n.w);t.sort(((t,e)=>e.h-t.h));const n=[{x:0,y:0,w:Math.max(Math.ceil(Math.sqrt(e/.95)),r),h:1/0}];let i=0,a=0;for(const e of t)for(let t=n.length-1;t>=0;t--){const r=n[t];if(!(e.w>r.w||e.h>r.h)){if(e.x=r.x,e.y=r.y,a=Math.max(a,e.y+e.h),i=Math.max(i,e.x+e.w),e.w===r.w&&e.h===r.h){const e=n.pop();t<n.length&&(n[t]=e)}else e.h===r.h?(r.x+=e.w,r.w-=e.w):e.w===r.w?(r.y+=e.h,r.h-=e.h):(n.push({x:r.x+e.w,y:r.y,w:r.w-e.w,h:e.h}),r.y+=e.h,r.h-=e.h);break}}return{w:i,h:a,fill:e/(i*a)||0}}const Yc=1;class Xc{constructor(t,{pixelRatio:e,version:r,stretchX:n,stretchY:i,content:a,textFitWidth:o,textFitHeight:s}){this.paddedRect=t,this.pixelRatio=e,this.stretchX=n,this.stretchY=i,this.content=a,this.version=r,this.textFitWidth=o,this.textFitHeight=s}get tl(){return[this.paddedRect.x+Yc,this.paddedRect.y+Yc]}get br(){return[this.paddedRect.x+this.paddedRect.w-Yc,this.paddedRect.y+this.paddedRect.h-Yc]}get tlbr(){return this.tl.concat(this.br)}get displaySize(){return[(this.paddedRect.w-2*Yc)/this.pixelRatio,(this.paddedRect.h-2*Yc)/this.pixelRatio]}}class $c{constructor(t,e){const r={},n={};this.haveRenderCallbacks=[];const i=[];this.addImages(t,r,i),this.addImages(e,n,i);const{w:a,h:o}=Wc(i),s=new Ls({width:a||1,height:o||1});for(const e in t){const n=t[e],i=r[e].paddedRect;Ls.copy(n.data,s,{x:0,y:0},{x:i.x+Yc,y:i.y+Yc},n.data)}for(const t in e){const r=e[t],i=n[t].paddedRect,a=i.x+Yc,o=i.y+Yc,l=r.data.width,c=r.data.height;Ls.copy(r.data,s,{x:0,y:0},{x:a,y:o},r.data),Ls.copy(r.data,s,{x:0,y:c-1},{x:a,y:o-1},{width:l,height:1}),Ls.copy(r.data,s,{x:0,y:0},{x:a,y:o+c},{width:l,height:1}),Ls.copy(r.data,s,{x:l-1,y:0},{x:a-1,y:o},{width:1,height:c}),Ls.copy(r.data,s,{x:0,y:0},{x:a+l,y:o},{width:1,height:c})}this.image=s,this.iconPositions=r,this.patternPositions=n}addImages(t,e,r){for(const n in t){const i=t[n],a={x:0,y:0,w:i.data.width+2*Yc,h:i.data.height+2*Yc};r.push(a),e[n]=new Xc(a,i),i.hasRenderCallback&&this.haveRenderCallbacks.push(n)}}patchUpdatedImages(t,e){t.dispatchRenderCallbacks(this.haveRenderCallbacks);for(const r in t.updatedImages)this.patchUpdatedImage(this.iconPositions[r],t.getImage(r),e),this.patchUpdatedImage(this.patternPositions[r],t.getImage(r),e)}patchUpdatedImage(t,e,r){if(!t||!e)return;if(t.version===e.version)return;t.version=e.version;const[n,i]=t.tl;r.update(e.data,void 0,{x:n,y:i})}}var Jc;Mi(\"ImagePosition\",Xc),Mi(\"ImageAtlas\",$c),t.ai=void 0,(Jc=t.ai||(t.ai={}))[Jc.none=0]=\"none\",Jc[Jc.horizontal=1]=\"horizontal\",Jc[Jc.vertical=2]=\"vertical\",Jc[Jc.horizontalOnly=3]=\"horizontalOnly\";const Kc=-17;class Qc{constructor(){this.scale=1,this.fontStack=\"\",this.imageName=null}static forText(t,e){const r=new Qc;return r.scale=t||1,r.fontStack=e,r}static forImage(t){const e=new Qc;return e.imageName=t,e}}class tu{constructor(){this.text=\"\",this.sectionIndex=[],this.sections=[],this.imageSectionID=null}static fromFeature(t,e){const r=new tu;for(let n=0;n<t.sections.length;n++){const i=t.sections[n];i.image?r.addImageSection(i):r.addTextSection(i,e)}return r}length(){return this.text.length}getSection(t){return this.sections[this.sectionIndex[t]]}getSectionIndex(t){return this.sectionIndex[t]}getCharCode(t){return this.text.charCodeAt(t)}verticalizePunctuation(){this.text=function(t){let e=\"\";for(let r=0;r<t.length;r++){const n=t.charCodeAt(r+1)||null,i=t.charCodeAt(r-1)||null;n&&Bi(n)&&!vc[t[r+1]]||i&&Bi(i)&&!vc[t[r-1]]||!vc[t[r]]?e+=t[r]:e+=vc[t[r]]}return e}(this.text)}trim(){let t=0;for(let e=0;e<this.text.length&&ru[this.text.charCodeAt(e)];e++)t++;let e=this.text.length;for(let r=this.text.length-1;r>=0&&r>=t&&ru[this.text.charCodeAt(r)];r--)e--;this.text=this.text.substring(t,e),this.sectionIndex=this.sectionIndex.slice(t,e)}substring(t,e){const r=new tu;return r.text=this.text.substring(t,e),r.sectionIndex=this.sectionIndex.slice(t,e),r.sections=this.sections,r}toString(){return this.text}getMaxScale(){return this.sectionIndex.reduce(((t,e)=>Math.max(t,this.sections[e].scale)),0)}addTextSection(t,e){this.text+=t.text,this.sections.push(Qc.forText(t.scale,t.fontStack||e));const r=this.sections.length-1;for(let e=0;e<t.text.length;++e)this.sectionIndex.push(r)}addImageSection(t){const e=t.image?t.image.name:\"\";if(0===e.length)return void T(\"Can't add FormattedSection with an empty image.\");const r=this.getNextImageSectionCharCode();r?(this.text+=String.fromCharCode(r),this.sections.push(Qc.forImage(e)),this.sectionIndex.push(this.sections.length-1)):T(\"Reached maximum number of images 6401\")}getNextImageSectionCharCode(){return this.imageSectionID?this.imageSectionID>=63743?null:++this.imageSectionID:(this.imageSectionID=57344,this.imageSectionID)}}function eu(e,r,n,i,a,o,s,l,c,u,h,f,p,d,m){const g=tu.fromFeature(e,a);let y;f===t.ai.vertical&&g.verticalizePunctuation();const{processBidirectionalText:v,processStyledBidirectionalText:x}=qi;if(v&&1===g.sections.length){y=[];const t=v(g.toString(),uu(g,u,o,r,i,d));for(const e of t){const t=new tu;t.text=e,t.sections=g.sections;for(let r=0;r<e.length;r++)t.sectionIndex.push(0);y.push(t)}}else if(x){y=[];const t=x(g.text,g.sectionIndex,uu(g,u,o,r,i,d));for(const e of t){const t=new tu;t.text=e[0],t.sectionIndex=e[1],t.sections=g.sections,y.push(t)}}else y=function(t,e){const r=[],n=t.text;let i=0;for(const n of e)r.push(t.substring(i,n)),i=n;return i<n.length&&r.push(t.substring(i,n.length)),r}(g,uu(g,u,o,r,i,d));const _=[],b={positionedLines:_,text:g.toString(),top:h[1],bottom:h[1],left:h[0],right:h[0],writingMode:f,iconsInText:!1,verticalizable:!1};return function(e,r,n,i,a,o,s,l,c,u,h,f){let p=0,d=Kc,m=0,g=0;const y=\"right\"===l?1:\"left\"===l?0:.5;let v=0;for(const s of a){s.trim();const a=s.getMaxScale(),l=(a-1)*xc,x={positionedGlyphs:[],lineOffset:0};e.positionedLines[v]=x;const _=x.positionedGlyphs;let b=0;if(!s.length()){d+=o,++v;continue}for(let o=0;o<s.length();o++){const m=s.getSection(o),g=s.getSectionIndex(o),y=s.getCharCode(o);let v=0,x=null,w=null,T=null,k=xc;const A=!(c===t.ai.horizontal||!h&&!Fi(y)||h&&(ru[y]||Ni(y)));if(m.imageName){const t=i[m.imageName];if(!t)continue;T=m.imageName,e.iconsInText=e.iconsInText||!0,w=t.paddedRect;const r=t.displaySize;m.scale=m.scale*xc/f,x={width:r[0],height:r[1],left:Yc,top:-Zc,advance:A?r[1]:r[0]},v=l+(xc-r[1]*m.scale),k=x.advance;const n=A?r[0]*m.scale-xc*a:r[1]*m.scale-xc*a;n>0&&n>b&&(b=n)}else{const t=n[m.fontStack],e=t&&t[y];if(e&&e.rect)w=e.rect,x=e.metrics;else{const t=r[m.fontStack],e=t&&t[y];if(!e)continue;x=e.metrics}v=(a-m.scale)*xc}A?(e.verticalizable=!0,_.push({glyph:y,imageName:T,x:p,y:d+v,vertical:A,scale:m.scale,fontStack:m.fontStack,sectionIndex:g,metrics:x,rect:w}),p+=k*m.scale+u):(_.push({glyph:y,imageName:T,x:p,y:d+v,vertical:A,scale:m.scale,fontStack:m.fontStack,sectionIndex:g,metrics:x,rect:w}),p+=x.advance*m.scale+u)}if(0!==_.length){const t=p-u;m=Math.max(t,m),fu(_,0,_.length-1,y,b)}p=0;const w=o*a+b;x.lineOffset=Math.max(b,l),d+=w,g=Math.max(w,g),++v}const x=d-Kc,{horizontalAlign:_,verticalAlign:b}=hu(s);(function(t,e,r,n,i,a,o,s,l){const c=(e-r)*i;let u=0;u=a!==o?-s*n-Kc:(-n*l+.5)*o;for(const e of t)for(const t of e.positionedGlyphs)t.x+=c,t.y+=u})(e.positionedLines,y,_,b,m,g,o,x,a.length),e.top+=-b*x,e.bottom=e.top+x,e.left+=-_*m,e.right=e.left+m}(b,r,n,i,y,s,l,c,f,u,p,m),!function(t){for(const e of t)if(0!==e.positionedGlyphs.length)return!1;return!0}(_)&&b}const ru={9:!0,10:!0,11:!0,12:!0,13:!0,32:!0},nu={10:!0,32:!0,38:!0,41:!0,43:!0,45:!0,47:!0,173:!0,183:!0,8203:!0,8208:!0,8211:!0,8231:!0},iu={40:!0};function au(t,e,r,n,i,a){if(e.imageName){const t=n[e.imageName];return t?t.displaySize[0]*e.scale*xc/a+i:0}{const n=r[e.fontStack],a=n&&n[t];return a?a.metrics.advance*e.scale+i:0}}function ou(t,e,r,n){const i=Math.pow(t-e,2);return n?t<e?i/2:2*i:i+Math.abs(r)*r}function su(t,e,r){let n=0;return 10===t&&(n-=1e4),r&&(n+=150),40!==t&&65288!==t||(n+=50),41!==e&&65289!==e||(n+=50),n}function lu(t,e,r,n,i,a){let o=null,s=ou(e,r,i,a);for(const t of n){const n=ou(e-t.x,r,i,a)+t.badness;n<=s&&(o=t,s=n)}return{index:t,x:e,priorBreak:o,badness:s}}function cu(t){return t?cu(t.priorBreak).concat(t.index):[]}function uu(t,e,r,n,i,a){if(!t)return[];const o=[],s=function(t,e,r,n,i,a){let o=0;for(let r=0;r<t.length();r++){const s=t.getSection(r);o+=au(t.getCharCode(r),s,n,i,e,a)}return o/Math.max(1,Math.ceil(o/r))}(t,e,r,n,i,a),l=t.text.indexOf(\"\")>=0;let c=0;for(let r=0;r<t.length();r++){const h=t.getSection(r),f=t.getCharCode(r);if(ru[f]||(c+=au(f,h,n,i,e,a)),r<t.length()-1){const e=!((u=f)<11904||!(zi[\"Bopomofo Extended\"](u)||zi.Bopomofo(u)||zi[\"CJK Compatibility Forms\"](u)||zi[\"CJK Compatibility Ideographs\"](u)||zi[\"CJK Compatibility\"](u)||zi[\"CJK Radicals Supplement\"](u)||zi[\"CJK Strokes\"](u)||zi[\"CJK Symbols and Punctuation\"](u)||zi[\"CJK Unified Ideographs Extension A\"](u)||zi[\"CJK Unified Ideographs\"](u)||zi[\"Enclosed CJK Letters and Months\"](u)||zi[\"Halfwidth and Fullwidth Forms\"](u)||zi.Hiragana(u)||zi[\"Ideographic Description Characters\"](u)||zi[\"Kangxi Radicals\"](u)||zi[\"Katakana Phonetic Extensions\"](u)||zi.Katakana(u)||zi[\"Vertical Forms\"](u)||zi[\"Yi Radicals\"](u)||zi[\"Yi Syllables\"](u)));(nu[f]||e||h.imageName||r!==t.length()-2&&iu[t.getCharCode(r+1)])&&o.push(lu(r+1,c,s,o,su(f,t.getCharCode(r+1),e&&l),!1))}}var u;return cu(lu(t.length(),c,s,o,0,!0))}function hu(t){let e=.5,r=.5;switch(t){case\"right\":case\"top-right\":case\"bottom-right\":e=1;break;case\"left\":case\"top-left\":case\"bottom-left\":e=0}switch(t){case\"bottom\":case\"bottom-right\":case\"bottom-left\":r=1;break;case\"top\":case\"top-right\":case\"top-left\":r=0}return{horizontalAlign:e,verticalAlign:r}}function fu(t,e,r,n,i){if(!n&&!i)return;const a=t[r],o=a.metrics.advance*a.scale,s=(t[r].x+o)*n;for(let n=e;n<=r;n++)t[n].x-=s,t[n].y+=i}function pu(t,e,r){const{horizontalAlign:n,verticalAlign:i}=hu(r),a=e[0],o=e[1],s=a-t.displaySize[0]*n,l=s+t.displaySize[0],c=o-t.displaySize[1]*i;return{image:t,top:c,bottom:c+t.displaySize[1],left:s,right:l}}function du(t){var e,r;let n=t.left,i=t.top,a=t.right-n,o=t.bottom-i;const s=t.image.content[2]-t.image.content[0],l=t.image.content[3]-t.image.content[1],c=null!==(e=t.image.textFitWidth)&&void 0!==e?e:\"stretchOrShrink\",u=null!==(r=t.image.textFitHeight)&&void 0!==r?r:\"stretchOrShrink\",h=s/l;if(\"proportional\"===u){if(\"stretchOnly\"===c&&a/o<h||\"proportional\"===c){const t=Math.ceil(o*h);n*=t/a,a=t}}else if(\"proportional\"===c&&\"stretchOnly\"===u&&0!==h&&a/o>h){const t=Math.ceil(a/h);i*=t/o,o=t}return{x1:n,y1:i,x2:n+a,y2:i+o}}function mu(t,e,r,n,i,a){const o=t.image;let s;if(o.content){const t=o.content,e=o.pixelRatio||1;s=[t[0]/e,t[1]/e,o.displaySize[0]-t[2]/e,o.displaySize[1]-t[3]/e]}const l=e.left*a,c=e.right*a;let u,h,f,p;\"width\"===r||\"both\"===r?(p=i[0]+l-n[3],h=i[0]+c+n[1]):(p=i[0]+(l+c-o.displaySize[0])/2,h=p+o.displaySize[0]);const d=e.top*a,m=e.bottom*a;return\"height\"===r||\"both\"===r?(u=i[1]+d-n[0],f=i[1]+m+n[2]):(u=i[1]+(d+m-o.displaySize[1])/2,f=u+o.displaySize[1]),{image:o,top:u,right:h,bottom:f,left:p,collisionPadding:s}}const gu=255,yu=128,vu=gu*yu;function xu(t,e){const{expression:r}=e;if(\"constant\"===r.kind)return{kind:\"constant\",layoutSize:r.evaluate(new Hi(t+1))};if(\"source\"===r.kind)return{kind:\"source\"};{const{zoomStops:e,interpolationType:n}=r;let i=0;for(;i<e.length&&e[i]<=t;)i++;i=Math.max(0,i-1);let a=i;for(;a<e.length&&e[a]<t+1;)a++;a=Math.min(e.length-1,a);const o=e[i],s=e[a];return\"composite\"===r.kind?{kind:\"composite\",minZoom:o,maxZoom:s,interpolationType:n}:{kind:\"camera\",minZoom:o,maxZoom:s,minSize:r.evaluate(new Hi(o)),maxSize:r.evaluate(new Hi(s)),interpolationType:n}}}function _u(t,e,r){let n=\"never\";const i=t.get(e);return i?n=i:t.get(r)&&(n=\"always\"),n}const bu=Tl.VectorTileFeature.types,wu=[{name:\"a_fade_opacity\",components:1,type:\"Uint8\",offset:0}];function Tu(t,e,r,n,i,a,o,s,l,c,u,h,f){const p=s?Math.min(vu,Math.round(s[0])):0,d=s?Math.min(vu,Math.round(s[1])):0;t.emplaceBack(e,r,Math.round(32*n),Math.round(32*i),a,o,(p<<1)+(l?1:0),d,16*c,16*u,256*h,256*f)}function ku(t,e,r){t.emplaceBack(e.x,e.y,r),t.emplaceBack(e.x,e.y,r),t.emplaceBack(e.x,e.y,r),t.emplaceBack(e.x,e.y,r)}function Au(t){for(const e of t.sections)if(Vi(e.text))return!0;return!1}class Mu{constructor(t){this.layoutVertexArray=new to,this.indexArray=new ao,this.programConfigurations=t,this.segments=new ho,this.dynamicLayoutVertexArray=new eo,this.opacityVertexArray=new ro,this.hasVisibleVertices=!1,this.placedSymbolArray=new Ba}isEmpty(){return 0===this.layoutVertexArray.length&&0===this.indexArray.length&&0===this.dynamicLayoutVertexArray.length&&0===this.opacityVertexArray.length}upload(t,e,r,n){this.isEmpty()||(r&&(this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,fc.members),this.indexBuffer=t.createIndexBuffer(this.indexArray,e),this.dynamicLayoutVertexBuffer=t.createVertexBuffer(this.dynamicLayoutVertexArray,pc.members,!0),this.opacityVertexBuffer=t.createVertexBuffer(this.opacityVertexArray,wu,!0),this.opacityVertexBuffer.itemSize=1),(r||n)&&this.programConfigurations.upload(t))}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.dynamicLayoutVertexBuffer.destroy(),this.opacityVertexBuffer.destroy())}}Mi(\"SymbolBuffers\",Mu);class Su{constructor(t,e,r){this.layoutVertexArray=new t,this.layoutAttributes=e,this.indexArray=new r,this.segments=new ho,this.collisionVertexArray=new io}upload(t){this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,this.layoutAttributes),this.indexBuffer=t.createIndexBuffer(this.indexArray),this.collisionVertexBuffer=t.createVertexBuffer(this.collisionVertexArray,dc.members,!0)}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.collisionVertexBuffer.destroy())}}Mi(\"CollisionBuffers\",Su);class Eu{constructor(e){this.collisionBoxArray=e.collisionBoxArray,this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.layerIds=this.layers.map((t=>t.id)),this.index=e.index,this.pixelRatio=e.pixelRatio,this.sourceLayerIndex=e.sourceLayerIndex,this.hasPattern=!1,this.hasRTLText=!1,this.sortKeyRanges=[],this.collisionCircleArray=[],this.placementInvProjMatrix=ps([]),this.placementViewportMatrix=ps([]);const r=this.layers[0]._unevaluatedLayout._values;this.textSizeData=xu(this.zoom,r[\"text-size\"]),this.iconSizeData=xu(this.zoom,r[\"icon-size\"]);const n=this.layers[0].layout,i=n.get(\"symbol-sort-key\"),a=n.get(\"symbol-z-order\");this.canOverlap=\"never\"!==_u(n,\"text-overlap\",\"text-allow-overlap\")||\"never\"!==_u(n,\"icon-overlap\",\"icon-allow-overlap\")||n.get(\"text-ignore-placement\")||n.get(\"icon-ignore-placement\"),this.sortFeaturesByKey=\"viewport-y\"!==a&&!i.isConstant();const o=\"viewport-y\"===a||\"auto\"===a&&!this.sortFeaturesByKey;this.sortFeaturesByY=o&&this.canOverlap,\"point\"===n.get(\"symbol-placement\")&&(this.writingModes=n.get(\"text-writing-mode\").map((e=>t.ai[e]))),this.stateDependentLayerIds=this.layers.filter((t=>t.isStateDependent())).map((t=>t.id)),this.sourceID=e.sourceID}createArrays(){this.text=new Mu(new Bo(this.layers,this.zoom,(t=>/^text/.test(t)))),this.icon=new Mu(new Bo(this.layers,this.zoom,(t=>/^icon/.test(t)))),this.glyphOffsetArray=new Ua,this.lineVertexArray=new Va,this.symbolInstances=new ja,this.textAnchorOffsets=new Ha}calculateGlyphDependencies(t,e,r,n,i){for(let a=0;a<t.length;a++)if(e[t.charCodeAt(a)]=!0,(r||n)&&i){const r=vc[t.charAt(a)];r&&(e[r.charCodeAt(0)]=!0)}}populate(e,r,n){const i=this.layers[0],a=i.layout,o=a.get(\"text-font\"),s=a.get(\"text-field\"),l=a.get(\"icon-image\"),c=(\"constant\"!==s.value.kind||s.value.value instanceof Kt&&!s.value.value.isEmpty()||s.value.value.toString().length>0)&&(\"constant\"!==o.value.kind||o.value.value.length>0),u=\"constant\"!==l.value.kind||!!l.value.value||Object.keys(l.parameters).length>0,h=a.get(\"symbol-sort-key\");if(this.features=[],!c&&!u)return;const f=r.iconDependencies,p=r.glyphDependencies,d=r.availableImages,m=new Hi(this.zoom);for(const{feature:r,id:s,index:l,sourceLayerIndex:g}of e){const e=i._featureFilter.needGeometry,y=Go(r,e);if(!i._featureFilter.filter(m,y,n))continue;let v,x;if(e||(y.geometry=Ho(r)),c){const t=i.getValueAndResolveTokens(\"text-field\",y,n,d),e=Kt.factory(t),r=this.hasRTLText=this.hasRTLText||Au(e);(!r||\"unavailable\"===qi.getRTLTextPluginStatus()||r&&qi.isParsed())&&(v=yc(e,i,y))}if(u){const t=i.getValueAndResolveTokens(\"icon-image\",y,n,d);x=t instanceof re?t:re.fromString(t)}if(!v&&!x)continue;const _=this.sortFeaturesByKey?h.evaluate(y,{},n):void 0,b={id:s,text:v,icon:x,index:l,sourceLayerIndex:g,geometry:y.geometry,properties:r.properties,type:bu[r.type],sortKey:_};if(this.features.push(b),x&&(f[x.name]=!0),v){const e=o.evaluate(y,{},n).join(\",\"),r=\"viewport\"!==a.get(\"text-rotation-alignment\")&&\"point\"!==a.get(\"symbol-placement\");this.allowVerticalPlacement=this.writingModes&&this.writingModes.indexOf(t.ai.vertical)>=0;for(const t of v.sections)if(t.image)f[t.image.name]=!0;else{const n=Oi(v.toString()),i=t.fontStack||e,a=p[i]=p[i]||{};this.calculateGlyphDependencies(t.text,a,r,this.allowVerticalPlacement,n)}}}\"line\"===a.get(\"symbol-placement\")&&(this.features=function(t){const e={},r={},n=[];let i=0;function a(e){n.push(t[e]),i++}function o(t,e,i){const a=r[t];return delete r[t],r[e]=a,n[a].geometry[0].pop(),n[a].geometry[0]=n[a].geometry[0].concat(i[0]),a}function s(t,r,i){const a=e[r];return delete e[r],e[t]=a,n[a].geometry[0].shift(),n[a].geometry[0]=i[0].concat(n[a].geometry[0]),a}function l(t,e,r){const n=r?e[0][e[0].length-1]:e[0][0];return`${t}:${n.x}:${n.y}`}for(let c=0;c<t.length;c++){const u=t[c],h=u.geometry,f=u.text?u.text.toString():null;if(!f){a(c);continue}const p=l(f,h),d=l(f,h,!0);if(p in r&&d in e&&r[p]!==e[d]){const t=s(p,d,h),i=o(p,d,n[t].geometry);delete e[p],delete r[d],r[l(f,n[i].geometry,!0)]=i,n[t].geometry=null}else p in r?o(p,d,h):d in e?s(p,d,h):(a(c),e[p]=i-1,r[d]=i-1)}return n.filter((t=>t.geometry))}(this.features)),this.sortFeaturesByKey&&this.features.sort(((t,e)=>t.sortKey-e.sortKey))}update(t,e,r){this.stateDependentLayers.length&&(this.text.programConfigurations.updatePaintArrays(t,e,this.layers,r),this.icon.programConfigurations.updatePaintArrays(t,e,this.layers,r))}isEmpty(){return 0===this.symbolInstances.length&&!this.hasRTLText}uploadPending(){return!this.uploaded||this.text.programConfigurations.needsUpload||this.icon.programConfigurations.needsUpload}upload(t){!this.uploaded&&this.hasDebugData()&&(this.textCollisionBox.upload(t),this.iconCollisionBox.upload(t)),this.text.upload(t,this.sortFeaturesByY,!this.uploaded,this.text.programConfigurations.needsUpload),this.icon.upload(t,this.sortFeaturesByY,!this.uploaded,this.icon.programConfigurations.needsUpload),this.uploaded=!0}destroyDebugData(){this.textCollisionBox.destroy(),this.iconCollisionBox.destroy()}destroy(){this.text.destroy(),this.icon.destroy(),this.hasDebugData()&&this.destroyDebugData()}addToLineVertexArray(t,e){const r=this.lineVertexArray.length;if(void 0!==t.segment){let r=t.dist(e[t.segment+1]),n=t.dist(e[t.segment]);const i={};for(let n=t.segment+1;n<e.length;n++)i[n]={x:e[n].x,y:e[n].y,tileUnitDistanceFromAnchor:r},n<e.length-1&&(r+=e[n+1].dist(e[n]));for(let r=t.segment||0;r>=0;r--)i[r]={x:e[r].x,y:e[r].y,tileUnitDistanceFromAnchor:n},r>0&&(n+=e[r-1].dist(e[r]));for(let t=0;t<e.length;t++){const e=i[t];this.lineVertexArray.emplaceBack(e.x,e.y,e.tileUnitDistanceFromAnchor)}}return{lineStartIndex:r,lineLength:this.lineVertexArray.length-r}}addSymbols(e,r,n,i,a,o,s,l,c,u,h,f){const p=e.indexArray,d=e.layoutVertexArray,m=e.segments.prepareSegment(4*r.length,d,p,this.canOverlap?o.sortKey:void 0),g=this.glyphOffsetArray.length,y=m.vertexLength,v=this.allowVerticalPlacement&&s===t.ai.vertical?Math.PI/2:0,x=o.text&&o.text.sections;for(let t=0;t<r.length;t++){const{tl:i,tr:a,bl:s,br:c,tex:u,pixelOffsetTL:h,pixelOffsetBR:g,minFontScaleX:y,minFontScaleY:_,glyphOffset:b,isSDF:w,sectionIndex:T}=r[t],k=m.vertexLength,A=b[1];Tu(d,l.x,l.y,i.x,A+i.y,u.x,u.y,n,w,h.x,h.y,y,_),Tu(d,l.x,l.y,a.x,A+a.y,u.x+u.w,u.y,n,w,g.x,h.y,y,_),Tu(d,l.x,l.y,s.x,A+s.y,u.x,u.y+u.h,n,w,h.x,g.y,y,_),Tu(d,l.x,l.y,c.x,A+c.y,u.x+u.w,u.y+u.h,n,w,g.x,g.y,y,_),ku(e.dynamicLayoutVertexArray,l,v),p.emplaceBack(k,k+1,k+2),p.emplaceBack(k+1,k+2,k+3),m.vertexLength+=4,m.primitiveLength+=2,this.glyphOffsetArray.emplaceBack(b[0]),t!==r.length-1&&T===r[t+1].sectionIndex||e.programConfigurations.populatePaintArrays(d.length,o,o.index,{},f,x&&x[T])}e.placedSymbolArray.emplaceBack(l.x,l.y,g,this.glyphOffsetArray.length-g,y,c,u,l.segment,n?n[0]:0,n?n[1]:0,i[0],i[1],s,0,!1,0,h)}_addCollisionDebugVertex(t,e,r,n,i,a){return e.emplaceBack(0,0),t.emplaceBack(r.x,r.y,n,i,Math.round(a.x),Math.round(a.y))}addCollisionDebugVertices(t,e,r,n,i,o,s){const l=i.segments.prepareSegment(4,i.layoutVertexArray,i.indexArray),c=l.vertexLength,u=i.layoutVertexArray,h=i.collisionVertexArray,f=s.anchorX,p=s.anchorY;this._addCollisionDebugVertex(u,h,o,f,p,new a(t,e)),this._addCollisionDebugVertex(u,h,o,f,p,new a(r,e)),this._addCollisionDebugVertex(u,h,o,f,p,new a(r,n)),this._addCollisionDebugVertex(u,h,o,f,p,new a(t,n)),l.vertexLength+=4;const d=i.indexArray;d.emplaceBack(c,c+1),d.emplaceBack(c+1,c+2),d.emplaceBack(c+2,c+3),d.emplaceBack(c+3,c),l.primitiveLength+=4}addDebugCollisionBoxes(t,e,r,n){for(let i=t;i<e;i++){const t=this.collisionBoxArray.get(i),e=t.x1,a=t.y1,o=t.x2,s=t.y2;this.addCollisionDebugVertices(e,a,o,s,n?this.textCollisionBox:this.iconCollisionBox,t.anchorPoint,r)}}generateCollisionDebugBuffers(){this.hasDebugData()&&this.destroyDebugData(),this.textCollisionBox=new Su(no,mc.members,oo),this.iconCollisionBox=new Su(no,mc.members,oo);for(let t=0;t<this.symbolInstances.length;t++){const e=this.symbolInstances.get(t);this.addDebugCollisionBoxes(e.textBoxStartIndex,e.textBoxEndIndex,e,!0),this.addDebugCollisionBoxes(e.verticalTextBoxStartIndex,e.verticalTextBoxEndIndex,e,!0),this.addDebugCollisionBoxes(e.iconBoxStartIndex,e.iconBoxEndIndex,e,!1),this.addDebugCollisionBoxes(e.verticalIconBoxStartIndex,e.verticalIconBoxEndIndex,e,!1)}}_deserializeCollisionBoxesForSymbol(t,e,r,n,i,a,o,s,l){const c={};for(let n=e;n<r;n++){const e=t.get(n);c.textBox={x1:e.x1,y1:e.y1,x2:e.x2,y2:e.y2,anchorPointX:e.anchorPointX,anchorPointY:e.anchorPointY},c.textFeatureIndex=e.featureIndex;break}for(let e=n;e<i;e++){const r=t.get(e);c.verticalTextBox={x1:r.x1,y1:r.y1,x2:r.x2,y2:r.y2,anchorPointX:r.anchorPointX,anchorPointY:r.anchorPointY},c.verticalTextFeatureIndex=r.featureIndex;break}for(let e=a;e<o;e++){const r=t.get(e);c.iconBox={x1:r.x1,y1:r.y1,x2:r.x2,y2:r.y2,anchorPointX:r.anchorPointX,anchorPointY:r.anchorPointY},c.iconFeatureIndex=r.featureIndex;break}for(let e=s;e<l;e++){const r=t.get(e);c.verticalIconBox={x1:r.x1,y1:r.y1,x2:r.x2,y2:r.y2,anchorPointX:r.anchorPointX,anchorPointY:r.anchorPointY},c.verticalIconFeatureIndex=r.featureIndex;break}return c}deserializeCollisionBoxes(t){this.collisionArrays=[];for(let e=0;e<this.symbolInstances.length;e++){const r=this.symbolInstances.get(e);this.collisionArrays.push(this._deserializeCollisionBoxesForSymbol(t,r.textBoxStartIndex,r.textBoxEndIndex,r.verticalTextBoxStartIndex,r.verticalTextBoxEndIndex,r.iconBoxStartIndex,r.iconBoxEndIndex,r.verticalIconBoxStartIndex,r.verticalIconBoxEndIndex))}}hasTextData(){return this.text.segments.get().length>0}hasIconData(){return this.icon.segments.get().length>0}hasDebugData(){return this.textCollisionBox&&this.iconCollisionBox}hasTextCollisionBoxData(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0}hasIconCollisionBoxData(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0}addIndicesForPlacedSymbol(t,e){const r=t.placedSymbolArray.get(e),n=r.vertexStartIndex+4*r.numGlyphs;for(let e=r.vertexStartIndex;e<n;e+=4)t.indexArray.emplaceBack(e,e+1,e+2),t.indexArray.emplaceBack(e+1,e+2,e+3)}getSortedSymbolIndexes(t){if(this.sortedAngle===t&&void 0!==this.symbolInstanceIndexes)return this.symbolInstanceIndexes;const e=Math.sin(t),r=Math.cos(t),n=[],i=[],a=[];for(let t=0;t<this.symbolInstances.length;++t){a.push(t);const o=this.symbolInstances.get(t);n.push(0|Math.round(e*o.anchorX+r*o.anchorY)),i.push(o.featureIndex)}return a.sort(((t,e)=>n[t]-n[e]||i[e]-i[t])),a}addToSortKeyRanges(t,e){const r=this.sortKeyRanges[this.sortKeyRanges.length-1];r&&r.sortKey===e?r.symbolInstanceEnd=t+1:this.sortKeyRanges.push({sortKey:e,symbolInstanceStart:t,symbolInstanceEnd:t+1})}sortFeatures(t){if(this.sortFeaturesByY&&this.sortedAngle!==t&&!(this.text.segments.get().length>1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(t),this.sortedAngle=t,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(const t of this.symbolInstanceIndexes){const e=this.symbolInstances.get(t);this.featureSortOrder.push(e.featureIndex),[e.rightJustifiedTextSymbolIndex,e.centerJustifiedTextSymbolIndex,e.leftJustifiedTextSymbolIndex].forEach(((t,e,r)=>{t>=0&&r.indexOf(t)===e&&this.addIndicesForPlacedSymbol(this.text,t)})),e.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,e.verticalPlacedTextSymbolIndex),e.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,e.placedIconSymbolIndex),e.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,e.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}}}let Cu;Mi(\"SymbolBucket\",Eu,{omit:[\"layers\",\"collisionBoxArray\",\"features\",\"compareText\"]}),Eu.MAX_GLYPHS=65535,Eu.addDynamicAttributes=ku;let Lu;var Iu={get paint(){return Lu=Lu||new ia({\"icon-opacity\":new ta(Z.paint_symbol[\"icon-opacity\"]),\"icon-color\":new ta(Z.paint_symbol[\"icon-color\"]),\"icon-halo-color\":new ta(Z.paint_symbol[\"icon-halo-color\"]),\"icon-halo-width\":new ta(Z.paint_symbol[\"icon-halo-width\"]),\"icon-halo-blur\":new ta(Z.paint_symbol[\"icon-halo-blur\"]),\"icon-translate\":new Qi(Z.paint_symbol[\"icon-translate\"]),\"icon-translate-anchor\":new Qi(Z.paint_symbol[\"icon-translate-anchor\"]),\"text-opacity\":new ta(Z.paint_symbol[\"text-opacity\"]),\"text-color\":new ta(Z.paint_symbol[\"text-color\"],{runtimeType:ft,getOverride:t=>t.textColor,hasOverride:t=>!!t.textColor}),\"text-halo-color\":new ta(Z.paint_symbol[\"text-halo-color\"]),\"text-halo-width\":new ta(Z.paint_symbol[\"text-halo-width\"]),\"text-halo-blur\":new ta(Z.paint_symbol[\"text-halo-blur\"]),\"text-translate\":new Qi(Z.paint_symbol[\"text-translate\"]),\"text-translate-anchor\":new Qi(Z.paint_symbol[\"text-translate-anchor\"])})},get layout(){return Cu=Cu||new ia({\"symbol-placement\":new Qi(Z.layout_symbol[\"symbol-placement\"]),\"symbol-spacing\":new Qi(Z.layout_symbol[\"symbol-spacing\"]),\"symbol-avoid-edges\":new Qi(Z.layout_symbol[\"symbol-avoid-edges\"]),\"symbol-sort-key\":new ta(Z.layout_symbol[\"symbol-sort-key\"]),\"symbol-z-order\":new Qi(Z.layout_symbol[\"symbol-z-order\"]),\"icon-allow-overlap\":new Qi(Z.layout_symbol[\"icon-allow-overlap\"]),\"icon-overlap\":new Qi(Z.layout_symbol[\"icon-overlap\"]),\"icon-ignore-placement\":new Qi(Z.layout_symbol[\"icon-ignore-placement\"]),\"icon-optional\":new Qi(Z.layout_symbol[\"icon-optional\"]),\"icon-rotation-alignment\":new Qi(Z.layout_symbol[\"icon-rotation-alignment\"]),\"icon-size\":new ta(Z.layout_symbol[\"icon-size\"]),\"icon-text-fit\":new Qi(Z.layout_symbol[\"icon-text-fit\"]),\"icon-text-fit-padding\":new Qi(Z.layout_symbol[\"icon-text-fit-padding\"]),\"icon-image\":new ta(Z.layout_symbol[\"icon-image\"]),\"icon-rotate\":new ta(Z.layout_symbol[\"icon-rotate\"]),\"icon-padding\":new ta(Z.layout_symbol[\"icon-padding\"]),\"icon-keep-upright\":new Qi(Z.layout_symbol[\"icon-keep-upright\"]),\"icon-offset\":new ta(Z.layout_symbol[\"icon-offset\"]),\"icon-anchor\":new ta(Z.layout_symbol[\"icon-anchor\"]),\"icon-pitch-alignment\":new Qi(Z.layout_symbol[\"icon-pitch-alignment\"]),\"text-pitch-alignment\":new Qi(Z.layout_symbol[\"text-pitch-alignment\"]),\"text-rotation-alignment\":new Qi(Z.layout_symbol[\"text-rotation-alignment\"]),\"text-field\":new ta(Z.layout_symbol[\"text-field\"]),\"text-font\":new ta(Z.layout_symbol[\"text-font\"]),\"text-size\":new ta(Z.layout_symbol[\"text-size\"]),\"text-max-width\":new ta(Z.layout_symbol[\"text-max-width\"]),\"text-line-height\":new Qi(Z.layout_symbol[\"text-line-height\"]),\"text-letter-spacing\":new ta(Z.layout_symbol[\"text-letter-spacing\"]),\"text-justify\":new ta(Z.layout_symbol[\"text-justify\"]),\"text-radial-offset\":new ta(Z.layout_symbol[\"text-radial-offset\"]),\"text-variable-anchor\":new Qi(Z.layout_symbol[\"text-variable-anchor\"]),\"text-variable-anchor-offset\":new ta(Z.layout_symbol[\"text-variable-anchor-offset\"]),\"text-anchor\":new ta(Z.layout_symbol[\"text-anchor\"]),\"text-max-angle\":new Qi(Z.layout_symbol[\"text-max-angle\"]),\"text-writing-mode\":new Qi(Z.layout_symbol[\"text-writing-mode\"]),\"text-rotate\":new ta(Z.layout_symbol[\"text-rotate\"]),\"text-padding\":new Qi(Z.layout_symbol[\"text-padding\"]),\"text-keep-upright\":new Qi(Z.layout_symbol[\"text-keep-upright\"]),\"text-transform\":new ta(Z.layout_symbol[\"text-transform\"]),\"text-offset\":new ta(Z.layout_symbol[\"text-offset\"]),\"text-allow-overlap\":new Qi(Z.layout_symbol[\"text-allow-overlap\"]),\"text-overlap\":new Qi(Z.layout_symbol[\"text-overlap\"]),\"text-ignore-placement\":new Qi(Z.layout_symbol[\"text-ignore-placement\"]),\"text-optional\":new Qi(Z.layout_symbol[\"text-optional\"])})}};class Pu{constructor(t){if(void 0===t.property.overrides)throw new Error(\"overrides must be provided to instantiate FormatSectionOverride class\");this.type=t.property.overrides?t.property.overrides.runtimeType:lt,this.defaultValue=t}evaluate(t){if(t.formattedSection){const e=this.defaultValue.property.overrides;if(e&&e.hasOverride(t.formattedSection))return e.getOverride(t.formattedSection)}return t.feature&&t.featureState?this.defaultValue.evaluate(t.feature,t.featureState):this.defaultValue.property.specification.default}eachChild(t){this.defaultValue.isConstant()||t(this.defaultValue.value._styleExpression.expression)}outputDefined(){return!1}serialize(){return null}}Mi(\"FormatSectionOverride\",Pu,{omit:[\"defaultValue\"]});class zu extends oa{constructor(t){super(t,Iu)}recalculate(t,e){if(super.recalculate(t,e),\"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\"]=\"map\"===this.layout.get(\"text-rotation-alignment\")?\"map\":\"viewport\"),\"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\")){const t=this.layout.get(\"text-writing-mode\");if(t){const e=[];for(const r of t)e.indexOf(r)<0&&e.push(r);this.layout._values[\"text-writing-mode\"]=e}else this.layout._values[\"text-writing-mode\"]=[\"horizontal\"]}this._setPaintOverrides()}getValueAndResolveTokens(t,e,r,n){const i=this.layout.get(t).evaluate(e,{},r,n),a=this._unevaluatedLayout._values[t];return a.isDataDriven()||kn(a.value)||!i?i:function(t,e){return e.replace(/{([^{}]+)}/g,((e,r)=>t&&r in t?String(t[r]):\"\"))}(e.properties,i)}createBucket(t){return new Eu(t)}queryRadius(){return 0}queryIntersectsFeature(){throw new Error(\"Should take a different path in FeatureIndex\")}_setPaintOverrides(){for(const t of Iu.paint.overridableProperties){if(!zu.hasPaintOverride(this.layout,t))continue;const e=this.paint.get(t),r=new Pu(e),n=new Tn(r,e.property.specification);let i=null;i=\"constant\"===e.value.kind||\"source\"===e.value.kind?new Mn(\"source\",n):new Sn(\"composite\",n,e.value.zoomStops),this.paint._values[t]=new Ji(e.property,i,e.parameters)}}_handleOverridablePaintPropertyUpdate(t,e,r){return!(!this.layout||e.isDataDriven()||r.isDataDriven())&&zu.hasPaintOverride(this.layout,t)}static hasPaintOverride(t,e){const r=t.get(\"text-field\"),n=Iu.paint.properties[e];let i=!1;const a=t=>{for(const e of t)if(n.overrides&&n.overrides.hasOverride(e))return void(i=!0)};if(\"constant\"===r.value.kind&&r.value.value instanceof Kt)a(r.value.value.sections);else if(\"source\"===r.value.kind){const t=e=>{if(!i)if(e instanceof se&&ae(e.value)===gt){const t=e.value;a(t.sections)}else e instanceof We?a(e.sections):e.eachChild(t)},e=r.value;e._styleExpression&&t(e._styleExpression.expression)}return i}}let Ou;var Du={get paint(){return Ou=Ou||new ia({\"background-color\":new Qi(Z.paint_background[\"background-color\"]),\"background-pattern\":new ra(Z.paint_background[\"background-pattern\"]),\"background-opacity\":new Qi(Z.paint_background[\"background-opacity\"])})}};class Ru extends oa{constructor(t){super(t,Du)}}let Fu;var Bu={get paint(){return Fu=Fu||new ia({\"raster-opacity\":new Qi(Z.paint_raster[\"raster-opacity\"]),\"raster-hue-rotate\":new Qi(Z.paint_raster[\"raster-hue-rotate\"]),\"raster-brightness-min\":new Qi(Z.paint_raster[\"raster-brightness-min\"]),\"raster-brightness-max\":new Qi(Z.paint_raster[\"raster-brightness-max\"]),\"raster-saturation\":new Qi(Z.paint_raster[\"raster-saturation\"]),\"raster-contrast\":new Qi(Z.paint_raster[\"raster-contrast\"]),\"raster-resampling\":new Qi(Z.paint_raster[\"raster-resampling\"]),\"raster-fade-duration\":new Qi(Z.paint_raster[\"raster-fade-duration\"])})}};class Nu extends oa{constructor(t){super(t,Bu)}}class ju extends oa{constructor(t){super(t,{}),this.onAdd=t=>{this.implementation.onAdd&&this.implementation.onAdd(t,t.painter.context.gl)},this.onRemove=t=>{this.implementation.onRemove&&this.implementation.onRemove(t,t.painter.context.gl)},this.implementation=t}is3D(){return\"3d\"===this.implementation.renderingMode}hasOffscreenPass(){return void 0!==this.implementation.prerender}recalculate(){}updateTransitions(){}hasTransition(){return!1}serialize(){throw new Error(\"Custom layers cannot be serialized\")}}class Uu{constructor(t){this._methodToThrottle=t,this._triggered=!1,\"undefined\"!=typeof MessageChannel&&(this._channel=new MessageChannel,this._channel.port2.onmessage=()=>{this._triggered=!1,this._methodToThrottle()})}trigger(){this._triggered||(this._triggered=!0,this._channel?this._channel.port1.postMessage(!0):setTimeout((()=>{this._triggered=!1,this._methodToThrottle()}),0))}remove(){delete this._channel,this._methodToThrottle=()=>{}}}const Vu=6371008.8;class qu{constructor(t,e){if(isNaN(t)||isNaN(e))throw new Error(`Invalid LngLat object: (${t}, ${e})`);if(this.lng=+t,this.lat=+e,this.lat>90||this.lat<-90)throw new Error(\"Invalid LngLat latitude value: must be between -90 and 90\")}wrap(){return new qu(g(this.lng,-180,180),this.lat)}toArray(){return[this.lng,this.lat]}toString(){return`LngLat(${this.lng}, ${this.lat})`}distanceTo(t){const e=Math.PI/180,r=this.lat*e,n=t.lat*e,i=Math.sin(r)*Math.sin(n)+Math.cos(r)*Math.cos(n)*Math.cos((t.lng-this.lng)*e);return Vu*Math.acos(Math.min(i,1))}static convert(t){if(t instanceof qu)return t;if(Array.isArray(t)&&(2===t.length||3===t.length))return new qu(Number(t[0]),Number(t[1]));if(!Array.isArray(t)&&\"object\"==typeof t&&null!==t)return new qu(Number(\"lng\"in t?t.lng:t.lon),Number(t.lat));throw new Error(\"`LngLatLike` argument must be specified as a LngLat instance, an object {lng: <lng>, lat: <lat>}, an object {lon: <lng>, lat: <lat>}, or an array of [<lng>, <lat>]\")}}const Hu=2*Math.PI*Vu;function Gu(t){return Hu*Math.cos(t*Math.PI/180)}function Zu(t){return(180+t)/360}function Wu(t){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+t*Math.PI/360)))/360}function Yu(t,e){return t/Gu(e)}function Xu(t){const e=180-360*t;return 360/Math.PI*Math.atan(Math.exp(e*Math.PI/180))-90}class $u{constructor(t,e,r=0){this.x=+t,this.y=+e,this.z=+r}static fromLngLat(t,e=0){const r=qu.convert(t);return new $u(Zu(r.lng),Wu(r.lat),Yu(e,r.lat))}toLngLat(){return new qu(360*this.x-180,Xu(this.y))}toAltitude(){return t=this.z,e=this.y,t*Gu(Xu(e));var t,e}meterInMercatorCoordinateUnits(){return 1/Hu*(t=Xu(this.y),1/Math.cos(t*Math.PI/180));var t}}function Ju(t,e,r){var n=2*Math.PI*6378137/256/Math.pow(2,r);return[t*n-2*Math.PI*6378137/2,e*n-2*Math.PI*6378137/2]}class Ku{constructor(t,e,r){if(t<0||t>25||r<0||r>=Math.pow(2,t)||e<0||e>=Math.pow(2,t))throw new Error(`x=${e}, y=${r}, z=${t} outside of bounds. 0<=x<${Math.pow(2,t)}, 0<=y<${Math.pow(2,t)} 0<=z<=25 `);this.z=t,this.x=e,this.y=r,this.key=eh(0,t,t,e,r)}equals(t){return this.z===t.z&&this.x===t.x&&this.y===t.y}url(t,e,r){const n=(a=this.x,o=this.y,s=this.z,l=Ju(256*a,256*(o=Math.pow(2,s)-o-1),s),c=Ju(256*(a+1),256*(o+1),s),l[0]+\",\"+l[1]+\",\"+c[0]+\",\"+c[1]),i=function(t,e,r){let n,i=\"\";for(let a=t;a>0;a--)n=1<<a-1,i+=(e&n?1:0)+(r&n?2:0);return i}(this.z,this.x,this.y);var a,o,s,l,c;return t[(this.x+this.y)%t.length].replace(/{prefix}/g,(this.x%16).toString(16)+(this.y%16).toString(16)).replace(/{z}/g,String(this.z)).replace(/{x}/g,String(this.x)).replace(/{y}/g,String(\"tms\"===r?Math.pow(2,this.z)-this.y-1:this.y)).replace(/{ratio}/g,e>1?\"@2x\":\"\").replace(/{quadkey}/g,i).replace(/{bbox-epsg-3857}/g,n)}isChildOf(t){const e=this.z-t.z;return e>0&&t.x===this.x>>e&&t.y===this.y>>e}getTilePoint(t){const e=Math.pow(2,this.z);return new a((t.x*e-this.x)*Uo,(t.y*e-this.y)*Uo)}toString(){return`${this.z}/${this.x}/${this.y}`}}class Qu{constructor(t,e){this.wrap=t,this.canonical=e,this.key=eh(t,e.z,e.z,e.x,e.y)}}class th{constructor(t,e,r,n,i){if(t<r)throw new Error(`overscaledZ should be >= z; overscaledZ = ${t}; z = ${r}`);this.overscaledZ=t,this.wrap=e,this.canonical=new Ku(r,+n,+i),this.key=eh(e,t,r,n,i)}clone(){return new th(this.overscaledZ,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)}equals(t){return this.overscaledZ===t.overscaledZ&&this.wrap===t.wrap&&this.canonical.equals(t.canonical)}scaledTo(t){if(t>this.overscaledZ)throw new Error(`targetZ > this.overscaledZ; targetZ = ${t}; overscaledZ = ${this.overscaledZ}`);const e=this.canonical.z-t;return t>this.canonical.z?new th(t,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new th(t,this.wrap,t,this.canonical.x>>e,this.canonical.y>>e)}calculateScaledKey(t,e){if(t>this.overscaledZ)throw new Error(`targetZ > this.overscaledZ; targetZ = ${t}; overscaledZ = ${this.overscaledZ}`);const r=this.canonical.z-t;return t>this.canonical.z?eh(this.wrap*+e,t,this.canonical.z,this.canonical.x,this.canonical.y):eh(this.wrap*+e,t,t,this.canonical.x>>r,this.canonical.y>>r)}isChildOf(t){if(t.wrap!==this.wrap)return!1;const e=this.canonical.z-t.canonical.z;return 0===t.overscaledZ||t.overscaledZ<this.overscaledZ&&t.canonical.x===this.canonical.x>>e&&t.canonical.y===this.canonical.y>>e}children(t){if(this.overscaledZ>=t)return[new th(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];const e=this.canonical.z+1,r=2*this.canonical.x,n=2*this.canonical.y;return[new th(e,this.wrap,e,r,n),new th(e,this.wrap,e,r+1,n),new th(e,this.wrap,e,r,n+1),new th(e,this.wrap,e,r+1,n+1)]}isLessThan(t){return this.wrap<t.wrap||!(this.wrap>t.wrap)&&(this.overscaledZ<t.overscaledZ||!(this.overscaledZ>t.overscaledZ)&&(this.canonical.x<t.canonical.x||!(this.canonical.x>t.canonical.x)&&this.canonical.y<t.canonical.y))}wrapped(){return new th(this.overscaledZ,0,this.canonical.z,this.canonical.x,this.canonical.y)}unwrapTo(t){return new th(this.overscaledZ,t,this.canonical.z,this.canonical.x,this.canonical.y)}overscaleFactor(){return Math.pow(2,this.overscaledZ-this.canonical.z)}toUnwrapped(){return new Qu(this.wrap,this.canonical)}toString(){return`${this.overscaledZ}/${this.canonical.x}/${this.canonical.y}`}getTilePoint(t){return this.canonical.getTilePoint(new $u(t.x-this.wrap,t.y))}}function eh(t,e,r,n,i){(t*=2)<0&&(t=-1*t-1);const a=1<<r;return(a*a*t+a*i+n).toString(36)+r.toString(36)+e.toString(36)}Mi(\"CanonicalTileID\",Ku),Mi(\"OverscaledTileID\",th,{omit:[\"posMatrix\"]});class rh{constructor(t,e,r,n=1,i=1,a=1,o=0){if(this.uid=t,e.height!==e.width)throw new RangeError(\"DEM tiles must be square\");if(r&&![\"mapbox\",\"terrarium\",\"custom\"].includes(r))return void T(`\"${r}\" is not a valid encoding type. Valid types include \"mapbox\", \"terrarium\" and \"custom\".`);this.stride=e.height;const s=this.dim=e.height-2;switch(this.data=new Uint32Array(e.data.buffer),r){case\"terrarium\":this.redFactor=256,this.greenFactor=1,this.blueFactor=1/256,this.baseShift=32768;break;case\"custom\":this.redFactor=n,this.greenFactor=i,this.blueFactor=a,this.baseShift=o;break;default:this.redFactor=6553.6,this.greenFactor=25.6,this.blueFactor=.1,this.baseShift=1e4}for(let t=0;t<s;t++)this.data[this._idx(-1,t)]=this.data[this._idx(0,t)],this.data[this._idx(s,t)]=this.data[this._idx(s-1,t)],this.data[this._idx(t,-1)]=this.data[this._idx(t,0)],this.data[this._idx(t,s)]=this.data[this._idx(t,s-1)];this.data[this._idx(-1,-1)]=this.data[this._idx(0,0)],this.data[this._idx(s,-1)]=this.data[this._idx(s-1,0)],this.data[this._idx(-1,s)]=this.data[this._idx(0,s-1)],this.data[this._idx(s,s)]=this.data[this._idx(s-1,s-1)],this.min=Number.MAX_SAFE_INTEGER,this.max=Number.MIN_SAFE_INTEGER;for(let t=0;t<s;t++)for(let e=0;e<s;e++){const r=this.get(t,e);r>this.max&&(this.max=r),r<this.min&&(this.min=r)}}get(t,e){const r=new Uint8Array(this.data.buffer),n=4*this._idx(t,e);return this.unpack(r[n],r[n+1],r[n+2])}getUnpackVector(){return[this.redFactor,this.greenFactor,this.blueFactor,this.baseShift]}_idx(t,e){if(t<-1||t>=this.dim+1||e<-1||e>=this.dim+1)throw new RangeError(\"out of range source coordinates for DEM data\");return(e+1)*this.stride+(t+1)}unpack(t,e,r){return t*this.redFactor+e*this.greenFactor+r*this.blueFactor-this.baseShift}getPixels(){return new Ls({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))}backfillBorder(t,e,r){if(this.dim!==t.dim)throw new Error(\"dem dimension mismatch\");let n=e*this.dim,i=e*this.dim+this.dim,a=r*this.dim,o=r*this.dim+this.dim;switch(e){case-1:n=i-1;break;case 1:i=n+1}switch(r){case-1:a=o-1;break;case 1:o=a+1}const s=-e*this.dim,l=-r*this.dim;for(let e=a;e<o;e++)for(let r=n;r<i;r++)this.data[this._idx(r,e)]=t.data[this._idx(r+s,e+l)]}}Mi(\"DEMData\",rh);class nh{constructor(t){this._stringToNumber={},this._numberToString=[];for(let e=0;e<t.length;e++){const r=t[e];this._stringToNumber[r]=e,this._numberToString[e]=r}}encode(t){return this._stringToNumber[t]}decode(t){if(t>=this._numberToString.length)throw new Error(`Out of bounds. Index requested n=${t} can't be >= this._numberToString.length ${this._numberToString.length}`);return this._numberToString[t]}}class ih{constructor(t,e,r,n,i){this.type=\"Feature\",this._vectorTileFeature=t,t._z=e,t._x=r,t._y=n,this.properties=t.properties,this.id=i}get geometry(){return void 0===this._geometry&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry}set geometry(t){this._geometry=t}toJSON(){const t={geometry:this.geometry};for(const e in this)\"_geometry\"!==e&&\"_vectorTileFeature\"!==e&&(t[e]=this[e]);return t}}class ah{constructor(t,e){this.tileID=t,this.x=t.canonical.x,this.y=t.canonical.y,this.z=t.canonical.z,this.grid=new ki(Uo,16,0),this.grid3D=new ki(Uo,16,0),this.featureIndexArray=new Za,this.promoteId=e}insert(t,e,r,n,i,a){const o=this.featureIndexArray.length;this.featureIndexArray.emplaceBack(r,n,i);const s=a?this.grid3D:this.grid;for(let t=0;t<e.length;t++){const r=e[t],n=[1/0,1/0,-1/0,-1/0];for(let t=0;t<r.length;t++){const e=r[t];n[0]=Math.min(n[0],e.x),n[1]=Math.min(n[1],e.y),n[2]=Math.max(n[2],e.x),n[3]=Math.max(n[3],e.y)}n[0]<Uo&&n[1]<Uo&&n[2]>=0&&n[3]>=0&&s.insert(o,n[0],n[1],n[2],n[3])}}loadVTLayers(){return this.vtLayers||(this.vtLayers=new Tl.VectorTile(new Uc(this.rawTileData)).layers,this.sourceLayerCoder=new nh(this.vtLayers?Object.keys(this.vtLayers).sort():[\"_geojsonTileLayer\"])),this.vtLayers}query(t,e,r,n){this.loadVTLayers();const i=t.params||{},o=Uo/t.tileSize/t.scale,s=zn(i.filter),l=t.queryGeometry,c=t.queryPadding*o,u=sh(l),h=this.grid.query(u.minX-c,u.minY-c,u.maxX+c,u.maxY+c),f=sh(t.cameraQueryGeometry),p=this.grid3D.query(f.minX-c,f.minY-c,f.maxX+c,f.maxY+c,((e,r,n,i)=>function(t,e,r,n,i){for(const a of t)if(e<=a.x&&r<=a.y&&n>=a.x&&i>=a.y)return!0;const o=[new a(e,r),new a(e,i),new a(n,i),new a(n,r)];if(t.length>2)for(const e of o)if(ns(t,e))return!0;for(let e=0;e<t.length-1;e++)if(is(t[e],t[e+1],o))return!0;return!1}(t.cameraQueryGeometry,e-c,r-c,n+c,i+c)));for(const t of p)h.push(t);h.sort(lh);const d={};let m;for(let a=0;a<h.length;a++){const c=h[a];if(c===m)continue;m=c;const u=this.featureIndexArray.get(c);let f=null;this.loadMatchingFeature(d,u.bucketIndex,u.sourceLayerIndex,u.featureIndex,s,i.layers,i.availableImages,e,r,n,((e,r,n)=>(f||(f=Ho(e)),r.queryIntersectsFeature(l,e,n,f,this.z,t.transform,o,t.pixelPosMatrix))))}return d}loadMatchingFeature(t,e,r,n,i,a,o,s,l,c,u){const h=this.bucketLayerIDs[e];if(a&&!function(t,e){for(let r=0;r<t.length;r++)if(e.indexOf(t[r])>=0)return!0;return!1}(a,h))return;const f=this.sourceLayerCoder.decode(r),p=this.vtLayers[f].feature(n);if(i.needGeometry){const t=Go(p,!0);if(!i.filter(new Hi(this.tileID.overscaledZ),t,this.tileID.canonical))return}else if(!i.filter(new Hi(this.tileID.overscaledZ),p))return;const d=this.getId(p,f);for(let e=0;e<h.length;e++){const r=h[e];if(a&&a.indexOf(r)<0)continue;const i=s[r];if(!i)continue;let f={};d&&c&&(f=c.getState(i.sourceLayer||\"_geojsonTileLayer\",d));const m=y({},l[r]);m.paint=oh(m.paint,i.paint,p,f,o),m.layout=oh(m.layout,i.layout,p,f,o);const g=!u||u(p,i,f);if(!g)continue;const v=new ih(p,this.z,this.x,this.y,d);v.layer=m;let x=t[r];void 0===x&&(x=t[r]=[]),x.push({featureIndex:n,feature:v,intersectionZ:g})}}lookupSymbolFeatures(t,e,r,n,i,a,o,s){const l={};this.loadVTLayers();const c=zn(i);for(const i of t)this.loadMatchingFeature(l,r,n,i,c,a,o,s,e);return l}hasLayer(t){for(const e of this.bucketLayerIDs)for(const r of e)if(t===r)return!0;return!1}getId(t,e){let r=t.id;if(this.promoteId){const n=\"string\"==typeof this.promoteId?this.promoteId:this.promoteId[e];r=t.properties[n],\"boolean\"==typeof r&&(r=Number(r))}return r}}function oh(t,e,r,n,i){return x(t,((t,a)=>{const o=e instanceof Ki?e.get(a):null;return o&&o.evaluate?o.evaluate(r,n,i):o}))}function sh(t){let e=1/0,r=1/0,n=-1/0,i=-1/0;for(const a of t)e=Math.min(e,a.x),r=Math.min(r,a.y),n=Math.max(n,a.x),i=Math.max(i,a.y);return{minX:e,minY:r,maxX:n,maxY:i}}function lh(t,e){return e-t}function ch(t,e,r,n,i){const o=[];for(let s=0;s<t.length;s++){const l=t[s];let c;for(let t=0;t<l.length-1;t++){let s=l[t],u=l[t+1];s.x<e&&u.x<e||(s.x<e?s=new a(e,s.y+(u.y-s.y)*((e-s.x)/(u.x-s.x)))._round():u.x<e&&(u=new a(e,s.y+(u.y-s.y)*((e-s.x)/(u.x-s.x)))._round()),s.y<r&&u.y<r||(s.y<r?s=new a(s.x+(u.x-s.x)*((r-s.y)/(u.y-s.y)),r)._round():u.y<r&&(u=new a(s.x+(u.x-s.x)*((r-s.y)/(u.y-s.y)),r)._round()),s.x>=n&&u.x>=n||(s.x>=n?s=new a(n,s.y+(u.y-s.y)*((n-s.x)/(u.x-s.x)))._round():u.x>=n&&(u=new a(n,s.y+(u.y-s.y)*((n-s.x)/(u.x-s.x)))._round()),s.y>=i&&u.y>=i||(s.y>=i?s=new a(s.x+(u.x-s.x)*((i-s.y)/(u.y-s.y)),i)._round():u.y>=i&&(u=new a(s.x+(u.x-s.x)*((i-s.y)/(u.y-s.y)),i)._round()),c&&s.equals(c[c.length-1])||(c=[s],o.push(c)),c.push(u)))))}}return o}Mi(\"FeatureIndex\",ah,{omit:[\"rawTileData\",\"sourceLayerCoder\"]});class uh extends a{constructor(t,e,r,n){super(t,e),this.angle=r,void 0!==n&&(this.segment=n)}clone(){return new uh(this.x,this.y,this.angle,this.segment)}}function hh(t,e,r,n,i){if(void 0===e.segment||0===r)return!0;let a=e,o=e.segment+1,s=0;for(;s>-r/2;){if(o--,o<0)return!1;s-=t[o].dist(a),a=t[o]}s+=t[o].dist(t[o+1]),o++;const l=[];let c=0;for(;s<r/2;){const e=t[o-1],r=t[o],a=t[o+1];if(!a)return!1;let u=e.angleTo(r)-r.angleTo(a);for(u=Math.abs((u+3*Math.PI)%(2*Math.PI)-Math.PI),l.push({distance:s,angleDelta:u}),c+=u;s-l[0].distance>n;)c-=l.shift().angleDelta;if(c>i)return!1;o++,s+=r.dist(a)}return!0}function fh(t){let e=0;for(let r=0;r<t.length-1;r++)e+=t[r].dist(t[r+1]);return e}function ph(t,e,r){return t?.6*e*r:0}function dh(t,e){return Math.max(t?t.right-t.left:0,e?e.right-e.left:0)}function mh(t,e,r,n,i,a){const o=ph(r,i,a),s=dh(r,n)*a;let l=0;const c=fh(t)/2;for(let r=0;r<t.length-1;r++){const n=t[r],i=t[r+1],a=n.dist(i);if(l+a>c){const u=(c-l)/a,h=Pe.number(n.x,i.x,u),f=Pe.number(n.y,i.y,u),p=new uh(h,f,i.angleTo(n),r);return p._round(),!o||hh(t,p,s,o,e)?p:void 0}l+=a}}function gh(t,e,r,n,i,a,o,s,l){const c=ph(n,a,o),u=dh(n,i),h=u*o,f=0===t[0].x||t[0].x===l||0===t[0].y||t[0].y===l;return e-h<e/4&&(e=h+e/4),yh(t,f?e/2*s%e:(u/2+2*a)*o*s%e,e,c,r,h,f,!1,l)}function yh(t,e,r,n,i,a,o,s,l){const c=a/2,u=fh(t);let h=0,f=e-r,p=[];for(let e=0;e<t.length-1;e++){const o=t[e],s=t[e+1],d=o.dist(s),m=s.angleTo(o);for(;f+r<h+d;){f+=r;const g=(f-h)/d,y=Pe.number(o.x,s.x,g),v=Pe.number(o.y,s.y,g);if(y>=0&&y<l&&v>=0&&v<l&&f-c>=0&&f+c<=u){const r=new uh(y,v,m,e);r._round(),n&&!hh(t,r,a,n,i)||p.push(r)}}h+=d}return s||p.length||o||(p=yh(t,h/2,r,n,i,a,o,!0,l)),p}Mi(\"Anchor\",uh);const vh=Yc;function xh(t,e,r,n){const i=[],o=t.image,s=o.pixelRatio,l=o.paddedRect.w-2*vh,c=o.paddedRect.h-2*vh;let u={x1:t.left,y1:t.top,x2:t.right,y2:t.bottom};const h=o.stretchX||[[0,l]],f=o.stretchY||[[0,c]],p=(t,e)=>t+e[1]-e[0],d=h.reduce(p,0),m=f.reduce(p,0),g=l-d,y=c-m;let v=0,x=d,_=0,b=m,w=0,T=g,k=0,A=y;if(o.content&&n){const e=o.content,r=e[2]-e[0],n=e[3]-e[1];(o.textFitWidth||o.textFitHeight)&&(u=du(t)),v=_h(h,0,e[0]),_=_h(f,0,e[1]),x=_h(h,e[0],e[2]),b=_h(f,e[1],e[3]),w=e[0]-v,k=e[1]-_,T=r-x,A=n-b}const M=u.x1,S=u.y1,E=u.x2-M,C=u.y2-S,L=(t,n,i,l)=>{const c=wh(t.stretch-v,x,E,M),u=Th(t.fixed-w,T,t.stretch,d),h=wh(n.stretch-_,b,C,S),f=Th(n.fixed-k,A,n.stretch,m),p=wh(i.stretch-v,x,E,M),g=Th(i.fixed-w,T,i.stretch,d),y=wh(l.stretch-_,b,C,S),L=Th(l.fixed-k,A,l.stretch,m),I=new a(c,h),P=new a(p,h),z=new a(p,y),O=new a(c,y),D=new a(u/s,f/s),R=new a(g/s,L/s),F=e*Math.PI/180;if(F){const t=Math.sin(F),e=Math.cos(F),r=[e,-t,t,e];I._matMult(r),P._matMult(r),O._matMult(r),z._matMult(r)}const B=t.stretch+t.fixed,N=i.stretch+i.fixed,j=n.stretch+n.fixed,U=l.stretch+l.fixed;return{tl:I,tr:P,bl:O,br:z,tex:{x:o.paddedRect.x+vh+B,y:o.paddedRect.y+vh+j,w:N-B,h:U-j},writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:D,pixelOffsetBR:R,minFontScaleX:T/s/E,minFontScaleY:A/s/C,isSDF:r}};if(n&&(o.stretchX||o.stretchY)){const t=bh(h,g,d),e=bh(f,y,m);for(let r=0;r<t.length-1;r++){const n=t[r],a=t[r+1];for(let t=0;t<e.length-1;t++){const r=e[t],o=e[t+1];i.push(L(n,r,a,o))}}}else i.push(L({fixed:0,stretch:-1},{fixed:0,stretch:-1},{fixed:0,stretch:l+1},{fixed:0,stretch:c+1}));return i}function _h(t,e,r){let n=0;for(const i of t)n+=Math.max(e,Math.min(r,i[1]))-Math.max(e,Math.min(r,i[0]));return n}function bh(t,e,r){const n=[{fixed:-vh,stretch:0}];for(const[e,r]of t){const t=n[n.length-1];n.push({fixed:e-t.stretch,stretch:t.stretch}),n.push({fixed:e-t.stretch,stretch:t.stretch+(r-e)})}return n.push({fixed:e+vh,stretch:r}),n}function wh(t,e,r,n){return t/e*r+n}function Th(t,e,r,n){return t-e*r/n}class kh{constructor(t,e,r,n,i,o,s,l,c,u){var h;if(this.boxStartIndex=t.length,c){let t=o.top,e=o.bottom;const r=o.collisionPadding;r&&(t-=r[1],e+=r[3]);let n=e-t;n>0&&(n=Math.max(10,n),this.circleDiameter=n)}else{const c=(null===(h=o.image)||void 0===h?void 0:h.content)&&(o.image.textFitWidth||o.image.textFitHeight)?du(o):{x1:o.left,y1:o.top,x2:o.right,y2:o.bottom};c.y1=c.y1*s-l[0],c.y2=c.y2*s+l[2],c.x1=c.x1*s-l[3],c.x2=c.x2*s+l[1];const f=o.collisionPadding;if(f&&(c.x1-=f[0]*s,c.y1-=f[1]*s,c.x2+=f[2]*s,c.y2+=f[3]*s),u){const t=new a(c.x1,c.y1),e=new a(c.x2,c.y1),r=new a(c.x1,c.y2),n=new a(c.x2,c.y2),i=u*Math.PI/180;t._rotate(i),e._rotate(i),r._rotate(i),n._rotate(i),c.x1=Math.min(t.x,e.x,r.x,n.x),c.x2=Math.max(t.x,e.x,r.x,n.x),c.y1=Math.min(t.y,e.y,r.y,n.y),c.y2=Math.max(t.y,e.y,r.y,n.y)}t.emplaceBack(e.x,e.y,c.x1,c.y1,c.x2,c.y2,r,n,i)}this.boxEndIndex=t.length}}class Ah{constructor(t=[],e=((t,e)=>t<e?-1:t>e?1:0)){if(this.data=t,this.length=this.data.length,this.compare=e,this.length>0)for(let t=(this.length>>1)-1;t>=0;t--)this._down(t)}push(t){this.data.push(t),this._up(this.length++)}pop(){if(0===this.length)return;const t=this.data[0],e=this.data.pop();return--this.length>0&&(this.data[0]=e,this._down(0)),t}peek(){return this.data[0]}_up(t){const{data:e,compare:r}=this,n=e[t];for(;t>0;){const i=t-1>>1,a=e[i];if(r(n,a)>=0)break;e[t]=a,t=i}e[t]=n}_down(t){const{data:e,compare:r}=this,n=this.length>>1,i=e[t];for(;t<n;){let n=1+(t<<1);const a=n+1;if(a<this.length&&r(e[a],e[n])<0&&(n=a),r(e[n],i)>=0)break;e[t]=e[n],t=n}e[t]=i}}function Mh(t,e=1,r=!1){let n=1/0,i=1/0,o=-1/0,s=-1/0;const l=t[0];for(let t=0;t<l.length;t++){const e=l[t];(!t||e.x<n)&&(n=e.x),(!t||e.y<i)&&(i=e.y),(!t||e.x>o)&&(o=e.x),(!t||e.y>s)&&(s=e.y)}const c=o-n,u=s-i,h=Math.min(c,u);let f=h/2;const p=new Ah([],Sh);if(0===h)return new a(n,i);for(let e=n;e<o;e+=h)for(let r=i;r<s;r+=h)p.push(new Eh(e+f,r+f,f,t));let d=function(t){let e=0,r=0,n=0;const i=t[0];for(let t=0,a=i.length,o=a-1;t<a;o=t++){const a=i[t],s=i[o],l=a.x*s.y-s.x*a.y;r+=(a.x+s.x)*l,n+=(a.y+s.y)*l,e+=3*l}return new Eh(r/e,n/e,0,t)}(t),m=p.length;for(;p.length;){const n=p.pop();(n.d>d.d||!d.d)&&(d=n,r&&console.log(\"found best %d after %d probes\",Math.round(1e4*n.d)/1e4,m)),n.max-d.d<=e||(f=n.h/2,p.push(new Eh(n.p.x-f,n.p.y-f,f,t)),p.push(new Eh(n.p.x+f,n.p.y-f,f,t)),p.push(new Eh(n.p.x-f,n.p.y+f,f,t)),p.push(new Eh(n.p.x+f,n.p.y+f,f,t)),m+=4)}return r&&(console.log(`num probes: ${m}`),console.log(`best distance: ${d.d}`)),d.p}function Sh(t,e){return e.max-t.max}function Eh(t,e,r,n){this.p=new a(t,e),this.h=r,this.d=function(t,e){let r=!1,n=1/0;for(let i=0;i<e.length;i++){const a=e[i];for(let e=0,i=a.length,o=i-1;e<i;o=e++){const i=a[e],s=a[o];i.y>t.y!=s.y>t.y&&t.x<(s.x-i.x)*(t.y-i.y)/(s.y-i.y)+i.x&&(r=!r),n=Math.min(n,es(t,i,s))}}return(r?1:-1)*Math.sqrt(n)}(this.p,n),this.max=this.d+this.h*Math.SQRT2}var Ch;t.ar=void 0,(Ch=t.ar||(t.ar={}))[Ch.center=1]=\"center\",Ch[Ch.left=2]=\"left\",Ch[Ch.right=3]=\"right\",Ch[Ch.top=4]=\"top\",Ch[Ch.bottom=5]=\"bottom\",Ch[Ch[\"top-left\"]=6]=\"top-left\",Ch[Ch[\"top-right\"]=7]=\"top-right\",Ch[Ch[\"bottom-left\"]=8]=\"bottom-left\",Ch[Ch[\"bottom-right\"]=9]=\"bottom-right\";const Lh=7,Ih=Number.POSITIVE_INFINITY;function Ph(t,e){return e[1]!==Ih?function(t,e,r){let n=0,i=0;switch(e=Math.abs(e),r=Math.abs(r),t){case\"top-right\":case\"top-left\":case\"top\":i=r-Lh;break;case\"bottom-right\":case\"bottom-left\":case\"bottom\":i=-r+Lh}switch(t){case\"top-right\":case\"bottom-right\":case\"right\":n=-e;break;case\"top-left\":case\"bottom-left\":case\"left\":n=e}return[n,i]}(t,e[0],e[1]):function(t,e){let r=0,n=0;e<0&&(e=0);const i=e/Math.SQRT2;switch(t){case\"top-right\":case\"top-left\":n=i-Lh;break;case\"bottom-right\":case\"bottom-left\":n=-i+Lh;break;case\"bottom\":n=-e+Lh;break;case\"top\":n=e-Lh}switch(t){case\"top-right\":case\"bottom-right\":r=-i;break;case\"top-left\":case\"bottom-left\":r=i;break;case\"left\":r=e;break;case\"right\":r=-e}return[r,n]}(t,e[0])}function zh(t,e,r){var n;const i=t.layout,a=null===(n=i.get(\"text-variable-anchor-offset\"))||void 0===n?void 0:n.evaluate(e,{},r);if(a){const t=a.values,e=[];for(let r=0;r<t.length;r+=2){const n=e[r]=t[r],i=t[r+1].map((t=>t*xc));n.startsWith(\"top\")?i[1]-=Lh:n.startsWith(\"bottom\")&&(i[1]+=Lh),e[r+1]=i}return new ee(e)}const o=i.get(\"text-variable-anchor\");if(o){let n;n=void 0!==t._unevaluatedLayout.getValue(\"text-radial-offset\")?[i.get(\"text-radial-offset\").evaluate(e,{},r)*xc,Ih]:i.get(\"text-offset\").evaluate(e,{},r).map((t=>t*xc));const a=[];for(const t of o)a.push(t,Ph(t,n));return new ee(a)}return null}function Oh(t){switch(t){case\"right\":case\"top-right\":case\"bottom-right\":return\"right\";case\"left\":case\"top-left\":case\"bottom-left\":return\"left\"}return\"center\"}function Dh(e,r,n,i,a,o,s,l,c,u,h){let f=o.textMaxSize.evaluate(r,{});void 0===f&&(f=s);const p=e.layers[0].layout,d=p.get(\"icon-offset\").evaluate(r,{},h),m=Fh(n.horizontal),g=s/24,y=e.tilePixelRatio*g,v=e.tilePixelRatio*f/24,x=e.tilePixelRatio*l,_=e.tilePixelRatio*p.get(\"symbol-spacing\"),b=p.get(\"text-padding\")*e.tilePixelRatio,w=function(t,e,r,n=1){const i=t.get(\"icon-padding\").evaluate(e,{},r),a=i&&i.values;return[a[0]*n,a[1]*n,a[2]*n,a[3]*n]}(p,r,h,e.tilePixelRatio),k=p.get(\"text-max-angle\")/180*Math.PI,A=\"viewport\"!==p.get(\"text-rotation-alignment\")&&\"point\"!==p.get(\"symbol-placement\"),M=\"map\"===p.get(\"icon-rotation-alignment\")&&\"point\"!==p.get(\"symbol-placement\"),S=p.get(\"symbol-placement\"),E=_/2,C=p.get(\"icon-text-fit\");let L;i&&\"none\"!==C&&(e.allowVerticalPlacement&&n.vertical&&(L=mu(i,n.vertical,C,p.get(\"icon-text-fit-padding\"),d,g)),m&&(i=mu(i,m,C,p.get(\"icon-text-fit-padding\"),d,g)));const I=(l,f)=>{f.x<0||f.x>=Uo||f.y<0||f.y>=Uo||function(e,r,n,i,a,o,s,l,c,u,h,f,p,d,m,g,y,v,x,_,b,w,k,A,M){const S=e.addToLineVertexArray(r,n);let E,C,L,I,P=0,z=0,O=0,D=0,R=-1,F=-1;const B={};let N=bo(\"\");if(e.allowVerticalPlacement&&i.vertical){const t=l.layout.get(\"text-rotate\").evaluate(b,{},A)+90,e=i.vertical;L=new kh(c,r,u,h,f,e,p,d,m,t),s&&(I=new kh(c,r,u,h,f,s,y,v,m,t))}if(a){const n=l.layout.get(\"icon-rotate\").evaluate(b,{}),i=\"none\"!==l.layout.get(\"icon-text-fit\"),o=xh(a,n,k,i),p=s?xh(s,n,k,i):void 0;C=new kh(c,r,u,h,f,a,y,v,!1,n),P=4*o.length;const d=e.iconSizeData;let m=null;\"source\"===d.kind?(m=[yu*l.layout.get(\"icon-size\").evaluate(b,{})],m[0]>vu&&T(`${e.layerIds[0]}: Value for \"icon-size\" is >= ${gu}. Reduce your \"icon-size\".`)):\"composite\"===d.kind&&(m=[yu*w.compositeIconSizes[0].evaluate(b,{},A),yu*w.compositeIconSizes[1].evaluate(b,{},A)],(m[0]>vu||m[1]>vu)&&T(`${e.layerIds[0]}: Value for \"icon-size\" is >= ${gu}. Reduce your \"icon-size\".`)),e.addSymbols(e.icon,o,m,_,x,b,t.ai.none,r,S.lineStartIndex,S.lineLength,-1,A),R=e.icon.placedSymbolArray.length-1,p&&(z=4*p.length,e.addSymbols(e.icon,p,m,_,x,b,t.ai.vertical,r,S.lineStartIndex,S.lineLength,-1,A),F=e.icon.placedSymbolArray.length-1)}const j=Object.keys(i.horizontal);for(const n of j){const a=i.horizontal[n];if(!E){N=bo(a.text);const t=l.layout.get(\"text-rotate\").evaluate(b,{},A);E=new kh(c,r,u,h,f,a,p,d,m,t)}const s=1===a.positionedLines.length;if(O+=Rh(e,r,a,o,l,m,b,g,S,i.vertical?t.ai.horizontal:t.ai.horizontalOnly,s?j:[n],B,R,w,A),s)break}i.vertical&&(D+=Rh(e,r,i.vertical,o,l,m,b,g,S,t.ai.vertical,[\"vertical\"],B,F,w,A));const U=E?E.boxStartIndex:e.collisionBoxArray.length,V=E?E.boxEndIndex:e.collisionBoxArray.length,q=L?L.boxStartIndex:e.collisionBoxArray.length,H=L?L.boxEndIndex:e.collisionBoxArray.length,G=C?C.boxStartIndex:e.collisionBoxArray.length,Z=C?C.boxEndIndex:e.collisionBoxArray.length,W=I?I.boxStartIndex:e.collisionBoxArray.length,Y=I?I.boxEndIndex:e.collisionBoxArray.length;let X=-1;const $=(t,e)=>t&&t.circleDiameter?Math.max(t.circleDiameter,e):e;X=$(E,X),X=$(L,X),X=$(C,X),X=$(I,X);const J=X>-1?1:0;J&&(X*=M/xc),e.glyphOffsetArray.length>=Eu.MAX_GLYPHS&&T(\"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);const K=zh(l,b,A),[Q,tt]=function(e,r){const n=e.length,i=null==r?void 0:r.values;if((null==i?void 0:i.length)>0)for(let r=0;r<i.length;r+=2){const n=t.ar[i[r]],a=i[r+1];e.emplaceBack(n,a[0],a[1])}return[n,e.length]}(e.textAnchorOffsets,K);e.symbolInstances.emplaceBack(r.x,r.y,B.right>=0?B.right:-1,B.center>=0?B.center:-1,B.left>=0?B.left:-1,B.vertical||-1,R,F,N,U,V,q,H,G,Z,W,Y,u,O,D,P,z,J,0,p,X,Q,tt)}(e,f,l,n,i,a,L,e.layers[0],e.collisionBoxArray,r.index,r.sourceLayerIndex,e.index,y,[b,b,b,b],A,c,x,w,M,d,r,o,u,h,s)};if(\"line\"===S)for(const t of ch(r.geometry,0,0,Uo,Uo)){const r=gh(t,_,k,n.vertical||m,i,24,v,e.overscaling,Uo);for(const n of r)m&&Bh(e,m.text,E,n)||I(t,n)}else if(\"line-center\"===S){for(const t of r.geometry)if(t.length>1){const e=mh(t,k,n.vertical||m,i,24,v);e&&I(t,e)}}else if(\"Polygon\"===r.type)for(const t of br(r.geometry,0)){const e=Mh(t,16);I(t[0],new uh(e.x,e.y,0))}else if(\"LineString\"===r.type)for(const t of r.geometry)I(t,new uh(t[0].x,t[0].y,0));else if(\"Point\"===r.type)for(const t of r.geometry)for(const e of t)I([e],new uh(e.x,e.y,0))}function Rh(t,e,r,n,i,o,s,l,c,u,h,f,p,d,m){const g=function(t,e,r,n,i,o,s,l){const c=n.layout.get(\"text-rotate\").evaluate(o,{})*Math.PI/180,u=[];for(const t of e.positionedLines)for(const n of t.positionedGlyphs){if(!n.rect)continue;const o=n.rect||{};let h=Zc+1,f=!0,p=1,d=0;const m=(i||l)&&n.vertical,g=n.metrics.advance*n.scale/2;if(l&&e.verticalizable){const e=(n.scale-1)*xc,r=(xc-n.metrics.width*n.scale)/2;d=t.lineOffset/2-(n.imageName?-r:e)}if(n.imageName){const t=s[n.imageName];f=t.sdf,p=t.pixelRatio,h=Yc/p}const y=i?[n.x+g,n.y]:[0,0];let v=i?[0,0]:[n.x+g+r[0],n.y+r[1]-d],x=[0,0];m&&(x=v,v=[0,0]);const _=n.metrics.isDoubleResolution?2:1,b=(n.metrics.left-h)*n.scale-g+v[0],w=(-n.metrics.top-h)*n.scale+v[1],T=b+o.w/_*n.scale/p,k=w+o.h/_*n.scale/p,A=new a(b,w),M=new a(T,w),S=new a(b,k),E=new a(T,k);if(m){const t=new a(-g,g-Kc),e=-Math.PI/2,r=xc/2-g,i=n.imageName?r:0,o=new a(5-Kc-r,-i),s=new a(...x);A._rotateAround(e,t)._add(o)._add(s),M._rotateAround(e,t)._add(o)._add(s),S._rotateAround(e,t)._add(o)._add(s),E._rotateAround(e,t)._add(o)._add(s)}if(c){const t=Math.sin(c),e=Math.cos(c),r=[e,-t,t,e];A._matMult(r),M._matMult(r),S._matMult(r),E._matMult(r)}const C=new a(0,0),L=new a(0,0),I=0,P=0;u.push({tl:A,tr:M,bl:S,br:E,tex:o,writingMode:e.writingMode,glyphOffset:y,sectionIndex:n.sectionIndex,isSDF:f,pixelOffsetTL:C,pixelOffsetBR:L,minFontScaleX:I,minFontScaleY:P})}return u}(0,r,l,i,o,s,n,t.allowVerticalPlacement),y=t.textSizeData;let v=null;\"source\"===y.kind?(v=[yu*i.layout.get(\"text-size\").evaluate(s,{})],v[0]>vu&&T(`${t.layerIds[0]}: Value for \"text-size\" is >= ${gu}. Reduce your \"text-size\".`)):\"composite\"===y.kind&&(v=[yu*d.compositeTextSizes[0].evaluate(s,{},m),yu*d.compositeTextSizes[1].evaluate(s,{},m)],(v[0]>vu||v[1]>vu)&&T(`${t.layerIds[0]}: Value for \"text-size\" is >= ${gu}. Reduce your \"text-size\".`)),t.addSymbols(t.text,g,v,l,o,s,u,e,c.lineStartIndex,c.lineLength,p,m);for(const e of h)f[e]=t.text.placedSymbolArray.length-1;return 4*g.length}function Fh(t){for(const e in t)return t[e];return null}function Bh(t,e,r,n){const i=t.compareText;if(e in i){const t=i[e];for(let e=t.length-1;e>=0;e--)if(n.dist(t[e])<r)return!0}else i[e]=[];return i[e].push(n),!1}const Nh=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];class jh{static from(t){if(!(t instanceof ArrayBuffer))throw new Error(\"Data must be an instance of ArrayBuffer.\");const[e,r]=new Uint8Array(t,0,2);if(219!==e)throw new Error(\"Data does not appear to be in a KDBush format.\");const n=r>>4;if(1!==n)throw new Error(`Got v${n} data when expected v1.`);const i=Nh[15&r];if(!i)throw new Error(\"Unrecognized array type.\");const[a]=new Uint16Array(t,2,1),[o]=new Uint32Array(t,4,1);return new jh(o,a,i,t)}constructor(t,e=64,r=Float64Array,n){if(isNaN(t)||t<0)throw new Error(`Unpexpected numItems value: ${t}.`);this.numItems=+t,this.nodeSize=Math.min(Math.max(+e,2),65535),this.ArrayType=r,this.IndexArrayType=t<65536?Uint16Array:Uint32Array;const i=Nh.indexOf(this.ArrayType),a=2*t*this.ArrayType.BYTES_PER_ELEMENT,o=t*this.IndexArrayType.BYTES_PER_ELEMENT,s=(8-o%8)%8;if(i<0)throw new Error(`Unexpected typed array class: ${r}.`);n&&n instanceof ArrayBuffer?(this.data=n,this.ids=new this.IndexArrayType(this.data,8,t),this.coords=new this.ArrayType(this.data,8+o+s,2*t),this._pos=2*t,this._finished=!0):(this.data=new ArrayBuffer(8+a+o+s),this.ids=new this.IndexArrayType(this.data,8,t),this.coords=new this.ArrayType(this.data,8+o+s,2*t),this._pos=0,this._finished=!1,new Uint8Array(this.data,0,2).set([219,16+i]),new Uint16Array(this.data,2,1)[0]=e,new Uint32Array(this.data,4,1)[0]=t)}add(t,e){const r=this._pos>>1;return this.ids[r]=r,this.coords[this._pos++]=t,this.coords[this._pos++]=e,r}finish(){const t=this._pos>>1;if(t!==this.numItems)throw new Error(`Added ${t} items when expected ${this.numItems}.`);return Uh(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this}range(t,e,r,n){if(!this._finished)throw new Error(\"Data not yet indexed - call index.finish().\");const{ids:i,coords:a,nodeSize:o}=this,s=[0,i.length-1,0],l=[];for(;s.length;){const c=s.pop()||0,u=s.pop()||0,h=s.pop()||0;if(u-h<=o){for(let o=h;o<=u;o++){const s=a[2*o],c=a[2*o+1];s>=t&&s<=r&&c>=e&&c<=n&&l.push(i[o])}continue}const f=h+u>>1,p=a[2*f],d=a[2*f+1];p>=t&&p<=r&&d>=e&&d<=n&&l.push(i[f]),(0===c?t<=p:e<=d)&&(s.push(h),s.push(f-1),s.push(1-c)),(0===c?r>=p:n>=d)&&(s.push(f+1),s.push(u),s.push(1-c))}return l}within(t,e,r){if(!this._finished)throw new Error(\"Data not yet indexed - call index.finish().\");const{ids:n,coords:i,nodeSize:a}=this,o=[0,n.length-1,0],s=[],l=r*r;for(;o.length;){const c=o.pop()||0,u=o.pop()||0,h=o.pop()||0;if(u-h<=a){for(let r=h;r<=u;r++)Gh(i[2*r],i[2*r+1],t,e)<=l&&s.push(n[r]);continue}const f=h+u>>1,p=i[2*f],d=i[2*f+1];Gh(p,d,t,e)<=l&&s.push(n[f]),(0===c?t-r<=p:e-r<=d)&&(o.push(h),o.push(f-1),o.push(1-c)),(0===c?t+r>=p:e+r>=d)&&(o.push(f+1),o.push(u),o.push(1-c))}return s}}function Uh(t,e,r,n,i,a){if(i-n<=r)return;const o=n+i>>1;Vh(t,e,o,n,i,a),Uh(t,e,r,n,o-1,1-a),Uh(t,e,r,o+1,i,1-a)}function Vh(t,e,r,n,i,a){for(;i>n;){if(i-n>600){const o=i-n+1,s=r-n+1,l=Math.log(o),c=.5*Math.exp(2*l/3),u=.5*Math.sqrt(l*c*(o-c)/o)*(s-o/2<0?-1:1);Vh(t,e,r,Math.max(n,Math.floor(r-s*c/o+u)),Math.min(i,Math.floor(r+(o-s)*c/o+u)),a)}const o=e[2*r+a];let s=n,l=i;for(qh(t,e,n,r),e[2*i+a]>o&&qh(t,e,n,i);s<l;){for(qh(t,e,s,l),s++,l--;e[2*s+a]<o;)s++;for(;e[2*l+a]>o;)l--}e[2*n+a]===o?qh(t,e,n,l):(l++,qh(t,e,l,i)),l<=r&&(n=l+1),r<=l&&(i=l-1)}}function qh(t,e,r,n){Hh(t,r,n),Hh(e,2*r,2*n),Hh(e,2*r+1,2*n+1)}function Hh(t,e,r){const n=t[e];t[e]=t[r],t[r]=n}function Gh(t,e,r,n){const i=t-r,a=e-n;return i*i+a*a}var Zh;t.bf=void 0,(Zh=t.bf||(t.bf={})).create=\"create\",Zh.load=\"load\",Zh.fullLoad=\"fullLoad\";let Wh=null,Yh=[];const Xh=1e3/60,$h=\"loadTime\",Jh=\"fullLoadTime\",Kh={mark(t){performance.mark(t)},frame(t){const e=t;if(null!=Wh){const t=e-Wh;Yh.push(t)}Wh=e},clearMetrics(){Wh=null,Yh=[],performance.clearMeasures($h),performance.clearMeasures(Jh);for(const e in t.bf)performance.clearMarks(t.bf[e])},getPerformanceMetrics(){performance.measure($h,t.bf.create,t.bf.load),performance.measure(Jh,t.bf.create,t.bf.fullLoad);const e=performance.getEntriesByName($h)[0].duration,r=performance.getEntriesByName(Jh)[0].duration,n=Yh.length,i=1/(Yh.reduce(((t,e)=>t+e),0)/n/1e3),a=Yh.filter((t=>t>Xh)).reduce(((t,e)=>t+(e-Xh)/Xh),0);return{loadTime:e,fullLoadTime:r,fps:i,percentDroppedFrames:a/(n+a)*100,totalFrames:n}}};t.$=class extends da{},t.A=fs,t.B=_i,t.C=function(t){if(null==M){const e=t.navigator?t.navigator.userAgent:null;M=!!t.safari||!(!e||!(/\\b(iPad|iPhone|iPod)\\b/.test(e)||e.match(\"Safari\")&&!e.match(\"Chrome\")))}return M},t.D=Qi,t.E=G,t.F=class{constructor(t,e){this.target=t,this.mapId=e,this.resolveRejects={},this.tasks={},this.taskQueue=[],this.abortControllers={},this.messageHandlers={},this.invoker=new Uu((()=>this.process())),this.subscription=function(t,e,r,n){return t.addEventListener(e,r,n),{unsubscribe:()=>{t.removeEventListener(e,r,n)}}}(this.target,\"message\",(t=>this.receive(t)),!1),this.globalScope=A(self)?t:window}registerMessageHandler(t,e){this.messageHandlers[t]=e}sendAsync(t,e){return new Promise(((r,n)=>{const i=Math.round(1e18*Math.random()).toString(36).substring(0,10);this.resolveRejects[i]={resolve:r,reject:n},e&&e.signal.addEventListener(\"abort\",(()=>{delete this.resolveRejects[i];const e={id:i,type:\"<cancel>\",origin:location.origin,targetMapId:t.targetMapId,sourceMapId:this.mapId};this.target.postMessage(e)}),{once:!0});const a=[],o=Object.assign(Object.assign({},t),{id:i,sourceMapId:this.mapId,origin:location.origin,data:Li(t.data,a)});this.target.postMessage(o,{transfer:a})}))}receive(t){const e=t.data,r=e.id;if(!(\"file://\"!==e.origin&&\"file://\"!==location.origin&&\"resource://android\"!==e.origin&&\"resource://android\"!==location.origin&&e.origin!==location.origin||e.targetMapId&&this.mapId!==e.targetMapId)){if(\"<cancel>\"===e.type){delete this.tasks[r];const t=this.abortControllers[r];return delete this.abortControllers[r],void(t&&t.abort())}if(A(self)||e.mustQueue)return this.tasks[r]=e,this.taskQueue.push(r),void this.invoker.trigger();this.processTask(r,e)}}process(){if(0===this.taskQueue.length)return;const t=this.taskQueue.shift(),e=this.tasks[t];delete this.tasks[t],this.taskQueue.length>0&&this.invoker.trigger(),e&&this.processTask(t,e)}processTask(t,r){return e(this,void 0,void 0,(function*(){if(\"<response>\"===r.type){const e=this.resolveRejects[t];if(delete this.resolveRejects[t],!e)return;return void(r.error?e.reject(Ii(r.error)):e.resolve(Ii(r.data)))}if(!this.messageHandlers[r.type])return void this.completeTask(t,new Error(`Could not find a registered handler for ${r.type}, map ID: ${this.mapId}, available handlers: ${Object.keys(this.messageHandlers).join(\", \")}`));const e=Ii(r.data),n=new AbortController;this.abortControllers[t]=n;try{const i=yield this.messageHandlers[r.type](r.sourceMapId,e,n);this.completeTask(t,null,i)}catch(e){this.completeTask(t,e)}}))}completeTask(t,e,r){const n=[];delete this.abortControllers[t];const i={id:t,type:\"<response>\",sourceMapId:this.mapId,origin:location.origin,error:e?Li(e):null,data:Li(r,n)};this.target.postMessage(i,{transfer:n})}remove(){this.invoker.remove(),this.subscription.unsubscribe()}},t.G=R,t.H=function(){var t=new fs(16);return fs!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=0,t[12]=0,t[13]=0,t[14]=0),t[0]=1,t[5]=1,t[10]=1,t[15]=1,t},t.I=Xc,t.J=function(t,e,r){var n,i,a,o,s,l,c,u,h,f,p,d,m=r[0],g=r[1],y=r[2];return e===t?(t[12]=e[0]*m+e[4]*g+e[8]*y+e[12],t[13]=e[1]*m+e[5]*g+e[9]*y+e[13],t[14]=e[2]*m+e[6]*g+e[10]*y+e[14],t[15]=e[3]*m+e[7]*g+e[11]*y+e[15]):(n=e[0],i=e[1],a=e[2],o=e[3],s=e[4],l=e[5],c=e[6],u=e[7],h=e[8],f=e[9],p=e[10],d=e[11],t[0]=n,t[1]=i,t[2]=a,t[3]=o,t[4]=s,t[5]=l,t[6]=c,t[7]=u,t[8]=h,t[9]=f,t[10]=p,t[11]=d,t[12]=n*m+s*g+h*y+e[12],t[13]=i*m+l*g+f*y+e[13],t[14]=a*m+c*g+p*y+e[14],t[15]=o*m+u*g+d*y+e[15]),t},t.K=function(t,e,r){var n=r[0],i=r[1],a=r[2];return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t[3]=e[3]*n,t[4]=e[4]*i,t[5]=e[5]*i,t[6]=e[6]*i,t[7]=e[7]*i,t[8]=e[8]*a,t[9]=e[9]*a,t[10]=e[10]*a,t[11]=e[11]*a,t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t},t.L=ds,t.M=function(t,e){const r={};for(let n=0;n<e.length;n++){const i=e[n];i in t&&(r[i]=t[i])}return r},t.N=qu,t.O=Zu,t.P=a,t.Q=Wu,t.R=Ls,t.S=th,t.T=Wi,t.U=h,t.V=f,t.W=C,t.X=Uo,t.Y=ua,t.Z=$u,t._=e,t.a=O,t.a$=function(t,e){var r=t[0],n=t[1],i=t[2],a=t[3],o=t[4],s=t[5],l=t[6],c=t[7],u=t[8],h=t[9],f=t[10],p=t[11],d=t[12],m=t[13],g=t[14],y=t[15],v=e[0],x=e[1],_=e[2],b=e[3],w=e[4],T=e[5],k=e[6],A=e[7],M=e[8],S=e[9],E=e[10],C=e[11],L=e[12],I=e[13],P=e[14],z=e[15];return Math.abs(r-v)<=hs*Math.max(1,Math.abs(r),Math.abs(v))&&Math.abs(n-x)<=hs*Math.max(1,Math.abs(n),Math.abs(x))&&Math.abs(i-_)<=hs*Math.max(1,Math.abs(i),Math.abs(_))&&Math.abs(a-b)<=hs*Math.max(1,Math.abs(a),Math.abs(b))&&Math.abs(o-w)<=hs*Math.max(1,Math.abs(o),Math.abs(w))&&Math.abs(s-T)<=hs*Math.max(1,Math.abs(s),Math.abs(T))&&Math.abs(l-k)<=hs*Math.max(1,Math.abs(l),Math.abs(k))&&Math.abs(c-A)<=hs*Math.max(1,Math.abs(c),Math.abs(A))&&Math.abs(u-M)<=hs*Math.max(1,Math.abs(u),Math.abs(M))&&Math.abs(h-S)<=hs*Math.max(1,Math.abs(h),Math.abs(S))&&Math.abs(f-E)<=hs*Math.max(1,Math.abs(f),Math.abs(E))&&Math.abs(p-C)<=hs*Math.max(1,Math.abs(p),Math.abs(C))&&Math.abs(d-L)<=hs*Math.max(1,Math.abs(d),Math.abs(L))&&Math.abs(m-I)<=hs*Math.max(1,Math.abs(m),Math.abs(I))&&Math.abs(g-P)<=hs*Math.max(1,Math.abs(g),Math.abs(P))&&Math.abs(y-z)<=hs*Math.max(1,Math.abs(y),Math.abs(z))},t.a0=ho,t.a1=Ku,t.a2=it,t.a3=t=>{const e=window.document.createElement(\"video\");return e.muted=!0,new Promise((r=>{e.onloadstart=()=>{r(e)};for(const r of t){const t=window.document.createElement(\"source\");j(r)||(e.crossOrigin=\"Anonymous\"),t.src=r,e.appendChild(t)}}))},t.a4=function(){return v++},t.a5=Ra,t.a6=Eu,t.a7=zn,t.a8=Go,t.a9=Hi,t.aA=function(t){t=t.slice();const e=Object.create(null);for(let r=0;r<t.length;r++)e[t[r].id]=t[r];for(let r=0;r<t.length;r++)\"ref\"in t[r]&&(t[r]=Y(t[r],e[t[r].ref]));return t},t.aB=function(t){if(\"custom\"===t.type)return new ju(t);switch(t.type){case\"background\":return new Ru(t);case\"circle\":return new bs(t);case\"fill\":return new yl(t);case\"fill-extrusion\":return new Hl(t);case\"heatmap\":return new Ps(t);case\"hillshade\":return new Ds(t);case\"line\":return new uc(t);case\"raster\":return new Nu(t);case\"symbol\":return new zu(t)}},t.aC=b,t.aD=function(t,e){if(!t)return[{command:\"setStyle\",args:[e]}];let r=[];try{if(!X(t.version,e.version))return[{command:\"setStyle\",args:[e]}];X(t.center,e.center)||r.push({command:\"setCenter\",args:[e.center]}),X(t.zoom,e.zoom)||r.push({command:\"setZoom\",args:[e.zoom]}),X(t.bearing,e.bearing)||r.push({command:\"setBearing\",args:[e.bearing]}),X(t.pitch,e.pitch)||r.push({command:\"setPitch\",args:[e.pitch]}),X(t.sprite,e.sprite)||r.push({command:\"setSprite\",args:[e.sprite]}),X(t.glyphs,e.glyphs)||r.push({command:\"setGlyphs\",args:[e.glyphs]}),X(t.transition,e.transition)||r.push({command:\"setTransition\",args:[e.transition]}),X(t.light,e.light)||r.push({command:\"setLight\",args:[e.light]}),X(t.terrain,e.terrain)||r.push({command:\"setTerrain\",args:[e.terrain]}),X(t.sky,e.sky)||r.push({command:\"setSky\",args:[e.sky]}),X(t.projection,e.projection)||r.push({command:\"setProjection\",args:[e.projection]});const n={},i=[];!function(t,e,r,n){let i;for(i in e=e||{},t=t||{})Object.prototype.hasOwnProperty.call(t,i)&&(Object.prototype.hasOwnProperty.call(e,i)||K(i,r,n));for(i in e)Object.prototype.hasOwnProperty.call(e,i)&&(Object.prototype.hasOwnProperty.call(t,i)?X(t[i],e[i])||(\"geojson\"===t[i].type&&\"geojson\"===e[i].type&&tt(t,e,i)?$(r,{command:\"setGeoJSONSourceData\",args:[i,e[i].data]}):Q(i,e,r,n)):J(i,e,r))}(t.sources,e.sources,i,n);const a=[];t.layers&&t.layers.forEach((t=>{\"source\"in t&&n[t.source]?r.push({command:\"removeLayer\",args:[t.id]}):a.push(t)})),r=r.concat(i),function(t,e,r){e=e||[];const n=(t=t||[]).map(rt),i=e.map(rt),a=t.reduce(nt,{}),o=e.reduce(nt,{}),s=n.slice(),l=Object.create(null);let c,u,h,f,p;for(let t=0,e=0;t<n.length;t++)c=n[t],Object.prototype.hasOwnProperty.call(o,c)?e++:($(r,{command:\"removeLayer\",args:[c]}),s.splice(s.indexOf(c,e),1));for(let t=0,e=0;t<i.length;t++)c=i[i.length-1-t],s[s.length-1-t]!==c&&(Object.prototype.hasOwnProperty.call(a,c)?($(r,{command:\"removeLayer\",args:[c]}),s.splice(s.lastIndexOf(c,s.length-e),1)):e++,f=s[s.length-t],$(r,{command:\"addLayer\",args:[o[c],f]}),s.splice(s.length-t,0,c),l[c]=!0);for(let t=0;t<i.length;t++)if(c=i[t],u=a[c],h=o[c],!l[c]&&!X(u,h))if(X(u.source,h.source)&&X(u[\"source-layer\"],h[\"source-layer\"])&&X(u.type,h.type)){for(p in et(u.layout,h.layout,r,c,null,\"setLayoutProperty\"),et(u.paint,h.paint,r,c,null,\"setPaintProperty\"),X(u.filter,h.filter)||$(r,{command:\"setFilter\",args:[c,h.filter]}),X(u.minzoom,h.minzoom)&&X(u.maxzoom,h.maxzoom)||$(r,{command:\"setLayerZoomRange\",args:[c,h.minzoom,h.maxzoom]}),u)Object.prototype.hasOwnProperty.call(u,p)&&\"layout\"!==p&&\"paint\"!==p&&\"filter\"!==p&&\"metadata\"!==p&&\"minzoom\"!==p&&\"maxzoom\"!==p&&(0===p.indexOf(\"paint.\")?et(u[p],h[p],r,c,p.slice(6),\"setPaintProperty\"):X(u[p],h[p])||$(r,{command:\"setLayerProperty\",args:[c,p,h[p]]}));for(p in h)Object.prototype.hasOwnProperty.call(h,p)&&!Object.prototype.hasOwnProperty.call(u,p)&&\"layout\"!==p&&\"paint\"!==p&&\"filter\"!==p&&\"metadata\"!==p&&\"minzoom\"!==p&&\"maxzoom\"!==p&&(0===p.indexOf(\"paint.\")?et(u[p],h[p],r,c,p.slice(6),\"setPaintProperty\"):X(u[p],h[p])||$(r,{command:\"setLayerProperty\",args:[c,p,h[p]]}))}else $(r,{command:\"removeLayer\",args:[c]}),f=s[s.lastIndexOf(c)+1],$(r,{command:\"addLayer\",args:[h,f]})}(a,e.layers,r)}catch(t){console.warn(\"Unable to compute style diff:\",t),r=[{command:\"setStyle\",args:[e]}]}return r},t.aE=function(t){const e=[],r=t.id;return void 0===r&&e.push({message:`layers.${r}: missing required property \"id\"`}),void 0===t.render&&e.push({message:`layers.${r}: missing required method \"render\"`}),t.renderingMode&&\"2d\"!==t.renderingMode&&\"3d\"!==t.renderingMode&&e.push({message:`layers.${r}: property \"renderingMode\" must be either \"2d\" or \"3d\"`}),e},t.aF=function t(e,r){if(Array.isArray(e)){if(!Array.isArray(r)||e.length!==r.length)return!1;for(let n=0;n<e.length;n++)if(!t(e[n],r[n]))return!1;return!0}if(\"object\"==typeof e&&null!==e&&null!==r){if(\"object\"!=typeof r)return!1;if(Object.keys(e).length!==Object.keys(r).length)return!1;for(const n in e)if(!t(e[n],r[n]))return!1;return!0}return e===r},t.aG=x,t.aH=_,t.aI=class extends Mo{constructor(t,e){super(t,e),this.current=0}set(t){this.current!==t&&(this.current=t,this.gl.uniform1i(this.location,t))}},t.aJ=So,t.aK=class extends Mo{constructor(t,e){super(t,e),this.current=Lo}set(t){if(t[12]!==this.current[12]||t[0]!==this.current[0])return this.current=t,void this.gl.uniformMatrix4fv(this.location,!1,t);for(let e=1;e<16;e++)if(t[e]!==this.current[e]){this.current=t,this.gl.uniformMatrix4fv(this.location,!1,t);break}}},t.aL=Eo,t.aM=Co,t.aN=Xt,t.aO=class extends Mo{constructor(t,e){super(t,e),this.current=[0,0,0]}set(t){t[0]===this.current[0]&&t[1]===this.current[1]&&t[2]===this.current[2]||(this.current=t,this.gl.uniform3f(this.location,t[0],t[1],t[2]))}},t.aP=class extends Mo{constructor(t,e){super(t,e),this.current=[0,0]}set(t){t[0]===this.current[0]&&t[1]===this.current[1]||(this.current=t,this.gl.uniform2f(this.location,t[0],t[1]))}},t.aQ=gs,t.aR=ys,t.aS=class extends ka{},t.aT=gc,t.aU=class extends Ma{},t.aV=function(t){return t<=1?1:Math.pow(2,Math.ceil(Math.log(t)/Math.LN2))},t.aW=Is,t.aX=Wa,t.aY=ao,t.aZ=class extends za{},t.a_=function(t,e){return t[0]===e[0]&&t[1]===e[1]&&t[2]===e[2]&&t[3]===e[3]&&t[4]===e[4]&&t[5]===e[5]&&t[6]===e[6]&&t[7]===e[7]&&t[8]===e[8]&&t[9]===e[9]&&t[10]===e[10]&&t[11]===e[11]&&t[12]===e[12]&&t[13]===e[13]&&t[14]===e[14]&&t[15]===e[15]},t.aa=ih,t.ab=function(t){const e={};if(t.replace(/(?:^|(?:\\s*\\,\\s*))([^\\x00-\\x20\\(\\)<>@\\,;\\:\\\\\"\\/\\[\\]\\?\\=\\{\\}\\x7F]+)(?:\\=(?:([^\\x00-\\x20\\(\\)<>@\\,;\\:\\\\\"\\/\\[\\]\\?\\=\\{\\}\\x7F]+)|(?:\\\"((?:[^\"\\\\]|\\\\.)*)\\\")))?/g,((t,r,n,i)=>{const a=n||i;return e[r]=!a||a.toLowerCase(),\"\"})),e[\"max-age\"]){const t=parseInt(e[\"max-age\"],10);isNaN(t)?delete e[\"max-age\"]:e[\"max-age\"]=t}return e},t.ac=function(t,e){const r=[];for(const n in t)n in e||r.push(n);return r},t.ad=m,t.ae=function(t,e,r){var n=Math.sin(r),i=Math.cos(r),a=e[0],o=e[1],s=e[2],l=e[3],c=e[4],u=e[5],h=e[6],f=e[7];return e!==t&&(t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=a*i+c*n,t[1]=o*i+u*n,t[2]=s*i+h*n,t[3]=l*i+f*n,t[4]=c*i-a*n,t[5]=u*i-o*n,t[6]=h*i-s*n,t[7]=f*i-l*n,t},t.af=function(t){var e=new fs(16);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e},t.ag=vs,t.ah=function(t,e){let r=0,n=0;if(\"constant\"===t.kind)n=t.layoutSize;else if(\"source\"!==t.kind){const{interpolationType:i,minZoom:a,maxZoom:o}=t,s=i?m(ze.interpolationFactor(i,e,a,o),0,1):0;\"camera\"===t.kind?n=Pe.number(t.minSize,t.maxSize,s):r=s}return{uSizeT:r,uSize:n}},t.aj=function(t,{uSize:e,uSizeT:r},{lowerSize:n,upperSize:i}){return\"source\"===t.kind?n/yu:\"composite\"===t.kind?Pe.number(n/yu,i/yu,r):e},t.ak=ku,t.al=function(t,e,r,n){const i=e.y-t.y,o=e.x-t.x,s=n.y-r.y,l=n.x-r.x,c=s*o-l*i;if(0===c)return null;const u=(l*(t.y-r.y)-s*(t.x-r.x))/c;return new a(t.x+u*o,t.y+u*i)},t.am=ch,t.an=Yo,t.ao=ps,t.ap=function(t){let e=1/0,r=1/0,n=-1/0,i=-1/0;for(const a of t)e=Math.min(e,a.x),r=Math.min(r,a.y),n=Math.max(n,a.x),i=Math.max(i,a.y);return[e,r,n,i]},t.aq=xc,t.as=_u,t.at=function(t,e){var r=e[0],n=e[1],i=e[2],a=e[3],o=e[4],s=e[5],l=e[6],c=e[7],u=e[8],h=e[9],f=e[10],p=e[11],d=e[12],m=e[13],g=e[14],y=e[15],v=r*s-n*o,x=r*l-i*o,_=r*c-a*o,b=n*l-i*s,w=n*c-a*s,T=i*c-a*l,k=u*m-h*d,A=u*g-f*d,M=u*y-p*d,S=h*g-f*m,E=h*y-p*m,C=f*y-p*g,L=v*C-x*E+_*S+b*M-w*A+T*k;return L?(L=1/L,t[0]=(s*C-l*E+c*S)*L,t[1]=(i*E-n*C-a*S)*L,t[2]=(m*T-g*w+y*b)*L,t[3]=(f*w-h*T-p*b)*L,t[4]=(l*M-o*C-c*A)*L,t[5]=(r*C-i*M+a*A)*L,t[6]=(g*_-d*T-y*x)*L,t[7]=(u*T-f*_+p*x)*L,t[8]=(o*E-s*M+c*k)*L,t[9]=(n*M-r*E-a*k)*L,t[10]=(d*w-m*_+y*v)*L,t[11]=(h*_-u*w-p*v)*L,t[12]=(s*A-o*S-l*k)*L,t[13]=(r*S-n*A+i*k)*L,t[14]=(m*x-d*b-g*v)*L,t[15]=(u*b-h*x+f*v)*L,t):null},t.au=Oh,t.av=hu,t.aw=jh,t.ax=function(){const t={},e=Z.$version;for(const r in Z.$root){const n=Z.$root[r];if(n.required){let i=null;i=\"version\"===r?e:\"array\"===n.type?[]:{},null!=i&&(t[r]=i)}}return t},t.ay=Pi,t.az=B,t.b=S,t.b0=function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t},t.b1=_s,t.b2=function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]+t[3]*e[3]},t.b3=g,t.b4=Qu,t.b5=Yu,t.b6=ms,t.b7=function(t,e,r){var n=Math.sin(r),i=Math.cos(r),a=e[4],o=e[5],s=e[6],l=e[7],c=e[8],u=e[9],h=e[10],f=e[11];return e!==t&&(t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[4]=a*i+c*n,t[5]=o*i+u*n,t[6]=s*i+h*n,t[7]=l*i+f*n,t[8]=c*i-a*n,t[9]=u*i-o*n,t[10]=h*i-s*n,t[11]=f*i-l*n,t},t.b8=p,t.b9=d,t.bA=function(t){return t.message===P},t.bB=An,t.bC=qi,t.ba=function(t){return t*Math.PI/180},t.bb=function(t,e){return t[0]=e[0],t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=e[1],t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=e[2],t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},t.bc=class extends pa{},t.bd=Vu,t.be=Kh,t.bg=F,t.bh=function(t,e){O.REGISTERED_PROTOCOLS[t]=e},t.bi=function(t){delete O.REGISTERED_PROTOCOLS[t]},t.bj=function(t,e){const r={};for(let n=0;n<t.length;n++){const i=e&&e[t[n].id]||Vn(t[n]);e&&(e[t[n].id]=i);let a=r[i];a||(a=r[i]=[]),a.push(t[n])}const n=[];for(const t in r)n.push(r[t]);return n},t.bk=Mi,t.bl=nh,t.bm=ah,t.bn=$c,t.bo=function(e){e.bucket.createArrays();const r=512*e.bucket.overscaling;e.bucket.tilePixelRatio=Uo/r,e.bucket.compareText={},e.bucket.iconsNeedLinear=!1;const n=e.bucket.layers[0],i=n.layout,a=n._unevaluatedLayout._values,o={layoutIconSize:a[\"icon-size\"].possiblyEvaluate(new Hi(e.bucket.zoom+1),e.canonical),layoutTextSize:a[\"text-size\"].possiblyEvaluate(new Hi(e.bucket.zoom+1),e.canonical),textMaxSize:a[\"text-size\"].possiblyEvaluate(new Hi(18))};if(\"composite\"===e.bucket.textSizeData.kind){const{minZoom:t,maxZoom:r}=e.bucket.textSizeData;o.compositeTextSizes=[a[\"text-size\"].possiblyEvaluate(new Hi(t),e.canonical),a[\"text-size\"].possiblyEvaluate(new Hi(r),e.canonical)]}if(\"composite\"===e.bucket.iconSizeData.kind){const{minZoom:t,maxZoom:r}=e.bucket.iconSizeData;o.compositeIconSizes=[a[\"icon-size\"].possiblyEvaluate(new Hi(t),e.canonical),a[\"icon-size\"].possiblyEvaluate(new Hi(r),e.canonical)]}const s=i.get(\"text-line-height\")*xc,l=\"viewport\"!==i.get(\"text-rotation-alignment\")&&\"point\"!==i.get(\"symbol-placement\"),c=i.get(\"text-keep-upright\"),u=i.get(\"text-size\");for(const r of e.bucket.features){const a=i.get(\"text-font\").evaluate(r,{},e.canonical).join(\",\"),h=u.evaluate(r,{},e.canonical),f=o.layoutTextSize.evaluate(r,{},e.canonical),p=o.layoutIconSize.evaluate(r,{},e.canonical),d={horizontal:{},vertical:void 0},m=r.text;let g,y=[0,0];if(m){const o=m.toString(),u=i.get(\"text-letter-spacing\").evaluate(r,{},e.canonical)*xc,p=Di(o)?u:0,g=i.get(\"text-anchor\").evaluate(r,{},e.canonical),v=zh(n,r,e.canonical);if(!v){const t=i.get(\"text-radial-offset\").evaluate(r,{},e.canonical);y=t?Ph(g,[t*xc,Ih]):i.get(\"text-offset\").evaluate(r,{},e.canonical).map((t=>t*xc))}let x=l?\"center\":i.get(\"text-justify\").evaluate(r,{},e.canonical);const _=\"point\"===i.get(\"symbol-placement\")?i.get(\"text-max-width\").evaluate(r,{},e.canonical)*xc:1/0,b=()=>{e.bucket.allowVerticalPlacement&&Oi(o)&&(d.vertical=eu(m,e.glyphMap,e.glyphPositions,e.imagePositions,a,_,s,g,\"left\",p,y,t.ai.vertical,!0,f,h))};if(!l&&v){const r=new Set;if(\"auto\"===x)for(let t=0;t<v.values.length;t+=2)r.add(Oh(v.values[t]));else r.add(x);let n=!1;for(const i of r)if(!d.horizontal[i])if(n)d.horizontal[i]=d.horizontal[0];else{const r=eu(m,e.glyphMap,e.glyphPositions,e.imagePositions,a,_,s,\"center\",i,p,y,t.ai.horizontal,!1,f,h);r&&(d.horizontal[i]=r,n=1===r.positionedLines.length)}b()}else{\"auto\"===x&&(x=Oh(g));const r=eu(m,e.glyphMap,e.glyphPositions,e.imagePositions,a,_,s,g,x,p,y,t.ai.horizontal,!1,f,h);r&&(d.horizontal[x]=r),b(),Oi(o)&&l&&c&&(d.vertical=eu(m,e.glyphMap,e.glyphPositions,e.imagePositions,a,_,s,g,x,p,y,t.ai.vertical,!1,f,h))}}let v=!1;if(r.icon&&r.icon.name){const t=e.imageMap[r.icon.name];t&&(g=pu(e.imagePositions[r.icon.name],i.get(\"icon-offset\").evaluate(r,{},e.canonical),i.get(\"icon-anchor\").evaluate(r,{},e.canonical)),v=!!t.sdf,void 0===e.bucket.sdfIcons?e.bucket.sdfIcons=v:e.bucket.sdfIcons!==v&&T(\"Style sheet warning: Cannot mix SDF and non-SDF icons in one buffer\"),(t.pixelRatio!==e.bucket.pixelRatio||0!==i.get(\"icon-rotate\").constantOr(1))&&(e.bucket.iconsNeedLinear=!0))}const x=Fh(d.horizontal)||d.vertical;e.bucket.iconsInText=!!x&&x.iconsInText,(x||g)&&Dh(e.bucket,r,d,g,e.imageMap,o,f,p,y,v,e.canonical)}e.showCollisionBoxes&&e.bucket.generateCollisionDebugBuffers()},t.bp=ic,t.bq=pl,t.br=Nl,t.bs=Tl,t.bt=Uc,t.bu=class{constructor(t){this._marks={start:[t.url,\"start\"].join(\"#\"),end:[t.url,\"end\"].join(\"#\"),measure:t.url.toString()},performance.mark(this._marks.start)}finish(){performance.mark(this._marks.end);let t=performance.getEntriesByName(this._marks.measure);return 0===t.length&&(performance.measure(this._marks.measure,this._marks.start,this._marks.end),t=performance.getEntriesByName(this._marks.measure),performance.clearMarks(this._marks.start),performance.clearMarks(this._marks.end),performance.clearMeasures(this._marks.measure)),t}},t.bv=function(t,r,n,i,a){return e(this,void 0,void 0,(function*(){if(f())try{return yield C(t,r,n,i,a)}catch(t){}return function(t,e,r,n,i){const a=t.width,o=t.height;L&&I||(L=new OffscreenCanvas(a,o),I=L.getContext(\"2d\",{willReadFrequently:!0})),L.width=a,L.height=o,I.drawImage(t,0,0,a,o);const s=I.getImageData(e,r,n,i);return I.clearRect(0,0,a,o),s.data}(t,r,n,i,a)}))},t.bw=rh,t.bx=r,t.by=n,t.bz=_c,t.c=z,t.d=t=>e(void 0,void 0,void 0,(function*(){if(0===t.byteLength)return createImageBitmap(new ImageData(1,1));const e=new Blob([new Uint8Array(t)],{type:\"image/png\"});try{return createImageBitmap(e)}catch(t){throw new Error(`Could not load image because of ${t.message}. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported.`)}})),t.e=y,t.f=t=>new Promise(((e,r)=>{const n=new Image;n.onload=()=>{e(n),URL.revokeObjectURL(n.src),n.onload=null,window.requestAnimationFrame((()=>{n.src=E}))},n.onerror=()=>r(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.\"));const i=new Blob([new Uint8Array(t)],{type:\"image/png\"});n.src=t.byteLength?URL.createObjectURL(i):E})),t.g=D,t.h=(t,e)=>N(y(t,{type:\"json\"}),e),t.i=A,t.j=H,t.k=q,t.l=(t,e)=>N(y(t,{type:\"arrayBuffer\"}),e),t.m=N,t.n=function(t){return new Uc(t).readFields(qc,[])},t.o=Cs,t.p=Wc,t.q=ia,t.r=xi,t.s=j,t.t=Ti,t.u=zi,t.v=Z,t.w=T,t.x=vi,t.y=function([t,e,r]){return e+=90,e*=Math.PI/180,r*=Math.PI/180,{x:t*Math.cos(e)*Math.sin(r),y:t*Math.sin(e)*Math.sin(r),z:t*Math.cos(r)}},t.z=Pe})),r(\"worker\",0,(function(t){class e{constructor(t){this.keyCache={},t&&this.replace(t)}replace(t){this._layerConfigs={},this._layers={},this.update(t,[])}update(e,r){for(const r of e){this._layerConfigs[r.id]=r;const e=this._layers[r.id]=t.aB(r);e._featureFilter=t.a7(e.filter),this.keyCache[r.id]&&delete this.keyCache[r.id]}for(const t of r)delete this.keyCache[t],delete this._layerConfigs[t],delete this._layers[t];this.familiesBySource={};const n=t.bj(Object.values(this._layerConfigs),this.keyCache);for(const t of n){const e=t.map((t=>this._layers[t.id])),r=e[0];if(\"none\"===r.visibility)continue;const n=r.source||\"\";let i=this.familiesBySource[n];i||(i=this.familiesBySource[n]={});const a=r.sourceLayer||\"_geojsonTileLayer\";let o=i[a];o||(o=i[a]=[]),o.push(e)}}}class r{constructor(e){const r={},n=[];for(const t in e){const i=e[t],a=r[t]={};for(const t in i){const e=i[+t];if(!e||0===e.bitmap.width||0===e.bitmap.height)continue;const r={x:0,y:0,w:e.bitmap.width+2,h:e.bitmap.height+2};n.push(r),a[t]={rect:r,metrics:e.metrics}}}const{w:i,h:a}=t.p(n),o=new t.o({width:i||1,height:a||1});for(const n in e){const i=e[n];for(const e in i){const a=i[+e];if(!a||0===a.bitmap.width||0===a.bitmap.height)continue;const s=r[n][e].rect;t.o.copy(a.bitmap,o,{x:0,y:0},{x:s.x+1,y:s.y+1},a.bitmap)}}this.image=o,this.positions=r}}t.bk(\"GlyphAtlas\",r);class n{constructor(e){this.tileID=new t.S(e.tileID.overscaledZ,e.tileID.wrap,e.tileID.canonical.z,e.tileID.canonical.x,e.tileID.canonical.y),this.uid=e.uid,this.zoom=e.zoom,this.pixelRatio=e.pixelRatio,this.tileSize=e.tileSize,this.source=e.source,this.overscaling=this.tileID.overscaleFactor(),this.showCollisionBoxes=e.showCollisionBoxes,this.collectResourceTiming=!!e.collectResourceTiming,this.returnDependencies=!!e.returnDependencies,this.promoteId=e.promoteId,this.inFlightDependencies=[]}parse(e,n,a,o){return t._(this,void 0,void 0,(function*(){this.status=\"parsing\",this.data=e,this.collisionBoxArray=new t.a5;const s=new t.bl(Object.keys(e.layers).sort()),l=new t.bm(this.tileID,this.promoteId);l.bucketLayerIDs=[];const c={},u={featureIndex:l,iconDependencies:{},patternDependencies:{},glyphDependencies:{},availableImages:a},h=n.familiesBySource[this.source];for(const r in h){const n=e.layers[r];if(!n)continue;1===n.version&&t.w(`Vector tile source \"${this.source}\" layer \"${r}\" does not use vector tile spec v2 and therefore may have some rendering errors.`);const o=s.encode(r),f=[];for(let t=0;t<n.length;t++){const e=n.feature(t),i=l.getId(e,r);f.push({feature:e,id:i,index:t,sourceLayerIndex:o})}for(const e of h[r]){const r=e[0];r.source!==this.source&&t.w(`layer.source = ${r.source} does not equal this.source = ${this.source}`),r.minzoom&&this.zoom<Math.floor(r.minzoom)||r.maxzoom&&this.zoom>=r.maxzoom||\"none\"!==r.visibility&&(i(e,this.zoom,a),(c[r.id]=r.createBucket({index:l.bucketLayerIDs.length,layers:e,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:o,sourceID:this.source})).populate(f,u,this.tileID.canonical),l.bucketLayerIDs.push(e.map((t=>t.id))))}}const f=t.aG(u.glyphDependencies,(t=>Object.keys(t).map(Number)));this.inFlightDependencies.forEach((t=>null==t?void 0:t.abort())),this.inFlightDependencies=[];let p=Promise.resolve({});if(Object.keys(f).length){const t=new AbortController;this.inFlightDependencies.push(t),p=o.sendAsync({type:\"GG\",data:{stacks:f,source:this.source,tileID:this.tileID,type:\"glyphs\"}},t)}const d=Object.keys(u.iconDependencies);let m=Promise.resolve({});if(d.length){const t=new AbortController;this.inFlightDependencies.push(t),m=o.sendAsync({type:\"GI\",data:{icons:d,source:this.source,tileID:this.tileID,type:\"icons\"}},t)}const g=Object.keys(u.patternDependencies);let y=Promise.resolve({});if(g.length){const t=new AbortController;this.inFlightDependencies.push(t),y=o.sendAsync({type:\"GI\",data:{icons:g,source:this.source,tileID:this.tileID,type:\"patterns\"}},t)}const[v,x,_]=yield Promise.all([p,m,y]),b=new r(v),w=new t.bn(x,_);for(const e in c){const r=c[e];r instanceof t.a6?(i(r.layers,this.zoom,a),t.bo({bucket:r,glyphMap:v,glyphPositions:b.positions,imageMap:x,imagePositions:w.iconPositions,showCollisionBoxes:this.showCollisionBoxes,canonical:this.tileID.canonical})):r.hasPattern&&(r instanceof t.bp||r instanceof t.bq||r instanceof t.br)&&(i(r.layers,this.zoom,a),r.addFeatures(u,this.tileID.canonical,w.patternPositions))}return this.status=\"done\",{buckets:Object.values(c).filter((t=>!t.isEmpty())),featureIndex:l,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:b.image,imageAtlas:w,glyphMap:this.returnDependencies?v:null,iconMap:this.returnDependencies?x:null,glyphPositions:this.returnDependencies?b.positions:null}}))}}function i(e,r,n){const i=new t.a9(r);for(const t of e)t.recalculate(i,n)}class a{constructor(t,e,r){this.actor=t,this.layerIndex=e,this.availableImages=r,this.fetching={},this.loading={},this.loaded={}}loadVectorTile(e,r){return t._(this,void 0,void 0,(function*(){const n=yield t.l(e.request,r);try{return{vectorTile:new t.bs.VectorTile(new t.bt(n.data)),rawData:n.data,cacheControl:n.cacheControl,expires:n.expires}}catch(t){const r=new Uint8Array(n.data),i=31===r[0]&&139===r[1];let a=`Unable to parse the tile at ${e.request.url}, `;throw a+=i?\"please make sure the data is not gzipped and that you have configured the relevant header in the server\":`got error: ${t.message}`,new Error(a)}}))}loadTile(e){return t._(this,void 0,void 0,(function*(){const r=e.uid,i=!!(e&&e.request&&e.request.collectResourceTiming)&&new t.bu(e.request),a=new n(e);this.loading[r]=a;const o=new AbortController;a.abort=o;try{const n=yield this.loadVectorTile(e,o);if(delete this.loading[r],!n)return null;const s=n.rawData,l={};n.expires&&(l.expires=n.expires),n.cacheControl&&(l.cacheControl=n.cacheControl);const c={};if(i){const t=i.finish();t&&(c.resourceTiming=JSON.parse(JSON.stringify(t)))}a.vectorTile=n.vectorTile;const u=a.parse(n.vectorTile,this.layerIndex,this.availableImages,this.actor);this.loaded[r]=a,this.fetching[r]={rawTileData:s,cacheControl:l,resourceTiming:c};try{const e=yield u;return t.e({rawTileData:s.slice(0)},e,l,c)}finally{delete this.fetching[r]}}catch(t){throw delete this.loading[r],a.status=\"done\",this.loaded[r]=a,t}}))}reloadTile(e){return t._(this,void 0,void 0,(function*(){const r=e.uid;if(!this.loaded||!this.loaded[r])throw new Error(\"Should not be trying to reload a tile that was never loaded or has been removed\");const n=this.loaded[r];if(n.showCollisionBoxes=e.showCollisionBoxes,\"parsing\"===n.status){const e=yield n.parse(n.vectorTile,this.layerIndex,this.availableImages,this.actor);let i;if(this.fetching[r]){const{rawTileData:n,cacheControl:a,resourceTiming:o}=this.fetching[r];delete this.fetching[r],i=t.e({rawTileData:n.slice(0)},e,a,o)}else i=e;return i}if(\"done\"===n.status&&n.vectorTile)return n.parse(n.vectorTile,this.layerIndex,this.availableImages,this.actor)}))}abortTile(e){return t._(this,void 0,void 0,(function*(){const t=this.loading,r=e.uid;t&&t[r]&&t[r].abort&&(t[r].abort.abort(),delete t[r])}))}removeTile(e){return t._(this,void 0,void 0,(function*(){this.loaded&&this.loaded[e.uid]&&delete this.loaded[e.uid]}))}}class o{constructor(){this.loaded={}}loadTile(e){return t._(this,void 0,void 0,(function*(){const{uid:r,encoding:n,rawImageData:i,redFactor:a,greenFactor:o,blueFactor:s,baseShift:l}=e,c=i.width+2,u=i.height+2,h=t.b(i)?new t.R({width:c,height:u},yield t.bv(i,-1,-1,c,u)):i,f=new t.bw(r,h,n,a,o,s,l);return this.loaded=this.loaded||{},this.loaded[r]=f,f}))}removeTile(t){const e=this.loaded,r=t.uid;e&&e[r]&&delete e[r]}}var s=function t(e,r){var n,i=e&&e.type;if(\"FeatureCollection\"===i)for(n=0;n<e.features.length;n++)t(e.features[n],r);else if(\"GeometryCollection\"===i)for(n=0;n<e.geometries.length;n++)t(e.geometries[n],r);else if(\"Feature\"===i)t(e.geometry,r);else if(\"Polygon\"===i)l(e.coordinates,r);else if(\"MultiPolygon\"===i)for(n=0;n<e.coordinates.length;n++)l(e.coordinates[n],r);return e};function l(t,e){if(0!==t.length){c(t[0],e);for(var r=1;r<t.length;r++)c(t[r],!e)}}function c(t,e){for(var r=0,n=0,i=0,a=t.length,o=a-1;i<a;o=i++){var s=(t[i][0]-t[o][0])*(t[o][1]+t[i][1]),l=r+s;n+=Math.abs(r)>=Math.abs(s)?r-l+s:s-l+r,r=l}r+n>=0!=!!e&&t.reverse()}var u=t.bx(s);const h=t.bs.VectorTileFeature.prototype.toGeoJSON;let f=class{constructor(e){this._feature=e,this.extent=t.X,this.type=e.type,this.properties=e.tags,\"id\"in e&&!isNaN(e.id)&&(this.id=parseInt(e.id,10))}loadGeometry(){if(1===this._feature.type){const e=[];for(const r of this._feature.geometry)e.push([new t.P(r[0],r[1])]);return e}{const e=[];for(const r of this._feature.geometry){const n=[];for(const e of r)n.push(new t.P(e[0],e[1]));e.push(n)}return e}}toGeoJSON(t,e,r){return h.call(this,t,e,r)}},p=class{constructor(e){this.layers={_geojsonTileLayer:this},this.name=\"_geojsonTileLayer\",this.extent=t.X,this.length=e.length,this._features=e}feature(t){return new f(this._features[t])}};var d={exports:{}},m=t.by,g=t.bs.VectorTileFeature,y=v;function v(t,e){this.options=e||{},this.features=t,this.length=t.length}function x(t,e){this.id=\"number\"==typeof t.id?t.id:void 0,this.type=t.type,this.rawGeometry=1===t.type?[t.geometry]:t.geometry,this.properties=t.tags,this.extent=e||4096}v.prototype.feature=function(t){return new x(this.features[t],this.options.extent)},x.prototype.loadGeometry=function(){var t=this.rawGeometry;this.geometry=[];for(var e=0;e<t.length;e++){for(var r=t[e],n=[],i=0;i<r.length;i++)n.push(new m(r[i][0],r[i][1]));this.geometry.push(n)}return this.geometry},x.prototype.bbox=function(){this.geometry||this.loadGeometry();for(var t=this.geometry,e=1/0,r=-1/0,n=1/0,i=-1/0,a=0;a<t.length;a++)for(var o=t[a],s=0;s<o.length;s++){var l=o[s];e=Math.min(e,l.x),r=Math.max(r,l.x),n=Math.min(n,l.y),i=Math.max(i,l.y)}return[e,n,r,i]},x.prototype.toGeoJSON=g.prototype.toGeoJSON;var _=t.bz,b=y;function w(t){var e=new _;return function(t,e){for(var r in t.layers)e.writeMessage(3,T,t.layers[r])}(t,e),e.finish()}function T(t,e){var r;e.writeVarintField(15,t.version||1),e.writeStringField(1,t.name||\"\"),e.writeVarintField(5,t.extent||4096);var n={keys:[],values:[],keycache:{},valuecache:{}};for(r=0;r<t.length;r++)n.feature=t.feature(r),e.writeMessage(2,k,n);var i=n.keys;for(r=0;r<i.length;r++)e.writeStringField(3,i[r]);var a=n.values;for(r=0;r<a.length;r++)e.writeMessage(4,C,a[r])}function k(t,e){var r=t.feature;void 0!==r.id&&e.writeVarintField(1,r.id),e.writeMessage(2,A,t),e.writeVarintField(3,r.type),e.writeMessage(4,E,r)}function A(t,e){var r=t.feature,n=t.keys,i=t.values,a=t.keycache,o=t.valuecache;for(var s in r.properties){var l=r.properties[s],c=a[s];if(null!==l){void 0===c&&(n.push(s),c=n.length-1,a[s]=c),e.writeVarint(c);var u=typeof l;\"string\"!==u&&\"boolean\"!==u&&\"number\"!==u&&(l=JSON.stringify(l));var h=u+\":\"+l,f=o[h];void 0===f&&(i.push(l),f=i.length-1,o[h]=f),e.writeVarint(f)}}}function M(t,e){return(e<<3)+(7&t)}function S(t){return t<<1^t>>31}function E(t,e){for(var r=t.loadGeometry(),n=t.type,i=0,a=0,o=r.length,s=0;s<o;s++){var l=r[s],c=1;1===n&&(c=l.length),e.writeVarint(M(1,c));for(var u=3===n?l.length-1:l.length,h=0;h<u;h++){1===h&&1!==n&&e.writeVarint(M(2,u-1));var f=l[h].x-i,p=l[h].y-a;e.writeVarint(S(f)),e.writeVarint(S(p)),i+=f,a+=p}3===n&&e.writeVarint(M(7,1))}}function C(t,e){var r=typeof t;\"string\"===r?e.writeStringField(1,t):\"boolean\"===r?e.writeBooleanField(7,t):\"number\"===r&&(t%1!=0?e.writeDoubleField(3,t):t<0?e.writeSVarintField(6,t):e.writeVarintField(5,t))}d.exports=w,d.exports.fromVectorTileJs=w,d.exports.fromGeojsonVt=function(t,e){e=e||{};var r={};for(var n in t)r[n]=new b(t[n].features,e),r[n].name=n,r[n].version=e.version,r[n].extent=e.extent;return w({layers:r})},d.exports.GeoJSONWrapper=b;var L=d.exports,I=t.bx(L);const P={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:t=>t},z=Math.fround||(O=new Float32Array(1),t=>(O[0]=+t,O[0]));var O;const D=3,R=5,F=6;class B{constructor(t){this.options=Object.assign(Object.create(P),t),this.trees=new Array(this.options.maxZoom+1),this.stride=this.options.reduce?7:6,this.clusterProps=[]}load(t){const{log:e,minZoom:r,maxZoom:n}=this.options;e&&console.time(\"total time\");const i=`prepare ${t.length} points`;e&&console.time(i),this.points=t;const a=[];for(let e=0;e<t.length;e++){const r=t[e];if(!r.geometry)continue;const[n,i]=r.geometry.coordinates,o=z(U(n)),s=z(V(i));a.push(o,s,1/0,e,-1,1),this.options.reduce&&a.push(0)}let o=this.trees[n+1]=this._createTree(a);e&&console.timeEnd(i);for(let t=n;t>=r;t--){const r=+Date.now();o=this.trees[t]=this._createTree(this._cluster(o,t)),e&&console.log(\"z%d: %d clusters in %dms\",t,o.numItems,+Date.now()-r)}return e&&console.timeEnd(\"total time\"),this}getClusters(t,e){let r=((t[0]+180)%360+360)%360-180;const n=Math.max(-90,Math.min(90,t[1]));let i=180===t[2]?180:((t[2]+180)%360+360)%360-180;const a=Math.max(-90,Math.min(90,t[3]));if(t[2]-t[0]>=360)r=-180,i=180;else if(r>i){const t=this.getClusters([r,n,180,a],e),o=this.getClusters([-180,n,i,a],e);return t.concat(o)}const o=this.trees[this._limitZoom(e)],s=o.range(U(r),V(a),U(i),V(n)),l=o.data,c=[];for(const t of s){const e=this.stride*t;c.push(l[e+R]>1?N(l,e,this.clusterProps):this.points[l[e+D]])}return c}getChildren(t){const e=this._getOriginId(t),r=this._getOriginZoom(t),n=\"No cluster with the specified id.\",i=this.trees[r];if(!i)throw new Error(n);const a=i.data;if(e*this.stride>=a.length)throw new Error(n);const o=this.options.radius/(this.options.extent*Math.pow(2,r-1)),s=a[e*this.stride],l=a[e*this.stride+1],c=i.within(s,l,o),u=[];for(const e of c){const r=e*this.stride;a[r+4]===t&&u.push(a[r+R]>1?N(a,r,this.clusterProps):this.points[a[r+D]])}if(0===u.length)throw new Error(n);return u}getLeaves(t,e,r){e=e||10,r=r||0;const n=[];return this._appendLeaves(n,t,e,r,0),n}getTile(t,e,r){const n=this.trees[this._limitZoom(t)],i=Math.pow(2,t),{extent:a,radius:o}=this.options,s=o/a,l=(r-s)/i,c=(r+1+s)/i,u={features:[]};return this._addTileFeatures(n.range((e-s)/i,l,(e+1+s)/i,c),n.data,e,r,i,u),0===e&&this._addTileFeatures(n.range(1-s/i,l,1,c),n.data,i,r,i,u),e===i-1&&this._addTileFeatures(n.range(0,l,s/i,c),n.data,-1,r,i,u),u.features.length?u:null}getClusterExpansionZoom(t){let e=this._getOriginZoom(t)-1;for(;e<=this.options.maxZoom;){const r=this.getChildren(t);if(e++,1!==r.length)break;t=r[0].properties.cluster_id}return e}_appendLeaves(t,e,r,n,i){const a=this.getChildren(e);for(const e of a){const a=e.properties;if(a&&a.cluster?i+a.point_count<=n?i+=a.point_count:i=this._appendLeaves(t,a.cluster_id,r,n,i):i<n?i++:t.push(e),t.length===r)break}return i}_createTree(e){const r=new t.aw(e.length/this.stride|0,this.options.nodeSize,Float32Array);for(let t=0;t<e.length;t+=this.stride)r.add(e[t],e[t+1]);return r.finish(),r.data=e,r}_addTileFeatures(t,e,r,n,i,a){for(const o of t){const t=o*this.stride,s=e[t+R]>1;let l,c,u;if(s)l=j(e,t,this.clusterProps),c=e[t],u=e[t+1];else{const r=this.points[e[t+D]];l=r.properties;const[n,i]=r.geometry.coordinates;c=U(n),u=V(i)}const h={type:1,geometry:[[Math.round(this.options.extent*(c*i-r)),Math.round(this.options.extent*(u*i-n))]],tags:l};let f;f=s||this.options.generateId?e[t+D]:this.points[e[t+D]].id,void 0!==f&&(h.id=f),a.features.push(h)}}_limitZoom(t){return Math.max(this.options.minZoom,Math.min(Math.floor(+t),this.options.maxZoom+1))}_cluster(t,e){const{radius:r,extent:n,reduce:i,minPoints:a}=this.options,o=r/(n*Math.pow(2,e)),s=t.data,l=[],c=this.stride;for(let r=0;r<s.length;r+=c){if(s[r+2]<=e)continue;s[r+2]=e;const n=s[r],u=s[r+1],h=t.within(s[r],s[r+1],o),f=s[r+R];let p=f;for(const t of h){const r=t*c;s[r+2]>e&&(p+=s[r+R])}if(p>f&&p>=a){let t,a=n*f,o=u*f,d=-1;const m=((r/c|0)<<5)+(e+1)+this.points.length;for(const n of h){const l=n*c;if(s[l+2]<=e)continue;s[l+2]=e;const u=s[l+R];a+=s[l]*u,o+=s[l+1]*u,s[l+4]=m,i&&(t||(t=this._map(s,r,!0),d=this.clusterProps.length,this.clusterProps.push(t)),i(t,this._map(s,l)))}s[r+4]=m,l.push(a/p,o/p,1/0,m,-1,p),i&&l.push(d)}else{for(let t=0;t<c;t++)l.push(s[r+t]);if(p>1)for(const t of h){const r=t*c;if(!(s[r+2]<=e)){s[r+2]=e;for(let t=0;t<c;t++)l.push(s[r+t])}}}}return l}_getOriginId(t){return t-this.points.length>>5}_getOriginZoom(t){return(t-this.points.length)%32}_map(t,e,r){if(t[e+R]>1){const n=this.clusterProps[t[e+F]];return r?Object.assign({},n):n}const n=this.points[t[e+D]].properties,i=this.options.map(n);return r&&i===n?Object.assign({},i):i}}function N(t,e,r){return{type:\"Feature\",id:t[e+D],properties:j(t,e,r),geometry:{type:\"Point\",coordinates:[(n=t[e],360*(n-.5)),q(t[e+1])]}};var n}function j(t,e,r){const n=t[e+R],i=n>=1e4?`${Math.round(n/1e3)}k`:n>=1e3?Math.round(n/100)/10+\"k\":n,a=t[e+F],o=-1===a?{}:Object.assign({},r[a]);return Object.assign(o,{cluster:!0,cluster_id:t[e+D],point_count:n,point_count_abbreviated:i})}function U(t){return t/360+.5}function V(t){const e=Math.sin(t*Math.PI/180),r=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return r<0?0:r>1?1:r}function q(t){const e=(180-360*t)*Math.PI/180;return 360*Math.atan(Math.exp(e))/Math.PI-90}function H(t,e,r,n){let i=n;const a=e+(r-e>>1);let o,s=r-e;const l=t[e],c=t[e+1],u=t[r],h=t[r+1];for(let n=e+3;n<r;n+=3){const e=G(t[n],t[n+1],l,c,u,h);if(e>i)o=n,i=e;else if(e===i){const t=Math.abs(n-a);t<s&&(o=n,s=t)}}i>n&&(o-e>3&&H(t,e,o,n),t[o+2]=i,r-o>3&&H(t,o,r,n))}function G(t,e,r,n,i,a){let o=i-r,s=a-n;if(0!==o||0!==s){const l=((t-r)*o+(e-n)*s)/(o*o+s*s);l>1?(r=i,n=a):l>0&&(r+=o*l,n+=s*l)}return o=t-r,s=e-n,o*o+s*s}function Z(t,e,r,n){const i={id:null==t?null:t,type:e,geometry:r,tags:n,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};if(\"Point\"===e||\"MultiPoint\"===e||\"LineString\"===e)W(i,r);else if(\"Polygon\"===e)W(i,r[0]);else if(\"MultiLineString\"===e)for(const t of r)W(i,t);else if(\"MultiPolygon\"===e)for(const t of r)W(i,t[0]);return i}function W(t,e){for(let r=0;r<e.length;r+=3)t.minX=Math.min(t.minX,e[r]),t.minY=Math.min(t.minY,e[r+1]),t.maxX=Math.max(t.maxX,e[r]),t.maxY=Math.max(t.maxY,e[r+1])}function Y(t,e,r,n){if(!e.geometry)return;const i=e.geometry.coordinates;if(i&&0===i.length)return;const a=e.geometry.type,o=Math.pow(r.tolerance/((1<<r.maxZoom)*r.extent),2);let s=[],l=e.id;if(r.promoteId?l=e.properties[r.promoteId]:r.generateId&&(l=n||0),\"Point\"===a)X(i,s);else if(\"MultiPoint\"===a)for(const t of i)X(t,s);else if(\"LineString\"===a)$(i,s,o,!1);else if(\"MultiLineString\"===a){if(r.lineMetrics){for(const r of i)s=[],$(r,s,o,!1),t.push(Z(l,\"LineString\",s,e.properties));return}J(i,s,o,!1)}else if(\"Polygon\"===a)J(i,s,o,!0);else{if(\"MultiPolygon\"!==a){if(\"GeometryCollection\"===a){for(const i of e.geometry.geometries)Y(t,{id:l,geometry:i,properties:e.properties},r,n);return}throw new Error(\"Input data is not a valid GeoJSON object.\")}for(const t of i){const e=[];J(t,e,o,!0),s.push(e)}}t.push(Z(l,a,s,e.properties))}function X(t,e){e.push(K(t[0]),Q(t[1]),0)}function $(t,e,r,n){let i,a,o=0;for(let r=0;r<t.length;r++){const s=K(t[r][0]),l=Q(t[r][1]);e.push(s,l,0),r>0&&(o+=n?(i*l-s*a)/2:Math.sqrt(Math.pow(s-i,2)+Math.pow(l-a,2))),i=s,a=l}const s=e.length-3;e[2]=1,H(e,0,s,r),e[s+2]=1,e.size=Math.abs(o),e.start=0,e.end=e.size}function J(t,e,r,n){for(let i=0;i<t.length;i++){const a=[];$(t[i],a,r,n),e.push(a)}}function K(t){return t/360+.5}function Q(t){const e=Math.sin(t*Math.PI/180),r=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return r<0?0:r>1?1:r}function tt(t,e,r,n,i,a,o,s){if(n/=e,a>=(r/=e)&&o<n)return t;if(o<r||a>=n)return null;const l=[];for(const e of t){const t=e.geometry;let a=e.type;const o=0===i?e.minX:e.minY,c=0===i?e.maxX:e.maxY;if(o>=r&&c<n){l.push(e);continue}if(c<r||o>=n)continue;let u=[];if(\"Point\"===a||\"MultiPoint\"===a)et(t,u,r,n,i);else if(\"LineString\"===a)rt(t,u,r,n,i,!1,s.lineMetrics);else if(\"MultiLineString\"===a)it(t,u,r,n,i,!1);else if(\"Polygon\"===a)it(t,u,r,n,i,!0);else if(\"MultiPolygon\"===a)for(const e of t){const t=[];it(e,t,r,n,i,!0),t.length&&u.push(t)}if(u.length){if(s.lineMetrics&&\"LineString\"===a){for(const t of u)l.push(Z(e.id,a,t,e.tags));continue}\"LineString\"!==a&&\"MultiLineString\"!==a||(1===u.length?(a=\"LineString\",u=u[0]):a=\"MultiLineString\"),\"Point\"!==a&&\"MultiPoint\"!==a||(a=3===u.length?\"Point\":\"MultiPoint\"),l.push(Z(e.id,a,u,e.tags))}}return l.length?l:null}function et(t,e,r,n,i){for(let a=0;a<t.length;a+=3){const o=t[a+i];o>=r&&o<=n&&at(e,t[a],t[a+1],t[a+2])}}function rt(t,e,r,n,i,a,o){let s=nt(t);const l=0===i?ot:st;let c,u,h=t.start;for(let f=0;f<t.length-3;f+=3){const p=t[f],d=t[f+1],m=t[f+2],g=t[f+3],y=t[f+4],v=0===i?p:d,x=0===i?g:y;let _=!1;o&&(c=Math.sqrt(Math.pow(p-g,2)+Math.pow(d-y,2))),v<r?x>r&&(u=l(s,p,d,g,y,r),o&&(s.start=h+c*u)):v>n?x<n&&(u=l(s,p,d,g,y,n),o&&(s.start=h+c*u)):at(s,p,d,m),x<r&&v>=r&&(u=l(s,p,d,g,y,r),_=!0),x>n&&v<=n&&(u=l(s,p,d,g,y,n),_=!0),!a&&_&&(o&&(s.end=h+c*u),e.push(s),s=nt(t)),o&&(h+=c)}let f=t.length-3;const p=t[f],d=t[f+1],m=t[f+2],g=0===i?p:d;g>=r&&g<=n&&at(s,p,d,m),f=s.length-3,a&&f>=3&&(s[f]!==s[0]||s[f+1]!==s[1])&&at(s,s[0],s[1],s[2]),s.length&&e.push(s)}function nt(t){const e=[];return e.size=t.size,e.start=t.start,e.end=t.end,e}function it(t,e,r,n,i,a){for(const o of t)rt(o,e,r,n,i,a,!1)}function at(t,e,r,n){t.push(e,r,n)}function ot(t,e,r,n,i,a){const o=(a-e)/(n-e);return at(t,a,r+(i-r)*o,1),o}function st(t,e,r,n,i,a){const o=(a-r)/(i-r);return at(t,e+(n-e)*o,a,1),o}function lt(t,e){const r=[];for(let n=0;n<t.length;n++){const i=t[n],a=i.type;let o;if(\"Point\"===a||\"MultiPoint\"===a||\"LineString\"===a)o=ct(i.geometry,e);else if(\"MultiLineString\"===a||\"Polygon\"===a){o=[];for(const t of i.geometry)o.push(ct(t,e))}else if(\"MultiPolygon\"===a){o=[];for(const t of i.geometry){const r=[];for(const n of t)r.push(ct(n,e));o.push(r)}}r.push(Z(i.id,a,o,i.tags))}return r}function ct(t,e){const r=[];r.size=t.size,void 0!==t.start&&(r.start=t.start,r.end=t.end);for(let n=0;n<t.length;n+=3)r.push(t[n]+e,t[n+1],t[n+2]);return r}function ut(t,e){if(t.transformed)return t;const r=1<<t.z,n=t.x,i=t.y;for(const a of t.features){const t=a.geometry,o=a.type;if(a.geometry=[],1===o)for(let o=0;o<t.length;o+=2)a.geometry.push(ht(t[o],t[o+1],e,r,n,i));else for(let o=0;o<t.length;o++){const s=[];for(let a=0;a<t[o].length;a+=2)s.push(ht(t[o][a],t[o][a+1],e,r,n,i));a.geometry.push(s)}}return t.transformed=!0,t}function ht(t,e,r,n,i,a){return[Math.round(r*(t*n-i)),Math.round(r*(e*n-a))]}function ft(t,e,r,n,i){const a=e===i.maxZoom?0:i.tolerance/((1<<e)*i.extent),o={features:[],numPoints:0,numSimplified:0,numFeatures:t.length,source:null,x:r,y:n,z:e,transformed:!1,minX:2,minY:1,maxX:-1,maxY:0};for(const e of t)pt(o,e,a,i);return o}function pt(t,e,r,n){const i=e.geometry,a=e.type,o=[];if(t.minX=Math.min(t.minX,e.minX),t.minY=Math.min(t.minY,e.minY),t.maxX=Math.max(t.maxX,e.maxX),t.maxY=Math.max(t.maxY,e.maxY),\"Point\"===a||\"MultiPoint\"===a)for(let e=0;e<i.length;e+=3)o.push(i[e],i[e+1]),t.numPoints++,t.numSimplified++;else if(\"LineString\"===a)dt(o,i,t,r,!1,!1);else if(\"MultiLineString\"===a||\"Polygon\"===a)for(let e=0;e<i.length;e++)dt(o,i[e],t,r,\"Polygon\"===a,0===e);else if(\"MultiPolygon\"===a)for(let e=0;e<i.length;e++){const n=i[e];for(let e=0;e<n.length;e++)dt(o,n[e],t,r,!0,0===e)}if(o.length){let r=e.tags||null;if(\"LineString\"===a&&n.lineMetrics){r={};for(const t in e.tags)r[t]=e.tags[t];r.mapbox_clip_start=i.start/i.size,r.mapbox_clip_end=i.end/i.size}const s={geometry:o,type:\"Polygon\"===a||\"MultiPolygon\"===a?3:\"LineString\"===a||\"MultiLineString\"===a?2:1,tags:r};null!==e.id&&(s.id=e.id),t.features.push(s)}}function dt(t,e,r,n,i,a){const o=n*n;if(n>0&&e.size<(i?o:n))return void(r.numPoints+=e.length/3);const s=[];for(let t=0;t<e.length;t+=3)(0===n||e[t+2]>o)&&(r.numSimplified++,s.push(e[t],e[t+1])),r.numPoints++;i&&function(t,e){let r=0;for(let e=0,n=t.length,i=n-2;e<n;i=e,e+=2)r+=(t[e]-t[i])*(t[e+1]+t[i+1]);if(r>0===e)for(let e=0,r=t.length;e<r/2;e+=2){const n=t[e],i=t[e+1];t[e]=t[r-2-e],t[e+1]=t[r-1-e],t[r-2-e]=n,t[r-1-e]=i}}(s,a),t.push(s)}const mt={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0};class gt{constructor(t,e){const r=(e=this.options=function(t,e){for(const r in e)t[r]=e[r];return t}(Object.create(mt),e)).debug;if(r&&console.time(\"preprocess data\"),e.maxZoom<0||e.maxZoom>24)throw new Error(\"maxZoom should be in the 0-24 range\");if(e.promoteId&&e.generateId)throw new Error(\"promoteId and generateId cannot be used together.\");let n=function(t,e){const r=[];if(\"FeatureCollection\"===t.type)for(let n=0;n<t.features.length;n++)Y(r,t.features[n],e,n);else\"Feature\"===t.type?Y(r,t,e):Y(r,{geometry:t},e);return r}(t,e);this.tiles={},this.tileCoords=[],r&&(console.timeEnd(\"preprocess data\"),console.log(\"index: maxZoom: %d, maxPoints: %d\",e.indexMaxZoom,e.indexMaxPoints),console.time(\"generate tiles\"),this.stats={},this.total=0),n=function(t,e){const r=e.buffer/e.extent;let n=t;const i=tt(t,1,-1-r,r,0,-1,2,e),a=tt(t,1,1-r,2+r,0,-1,2,e);return(i||a)&&(n=tt(t,1,-r,1+r,0,-1,2,e)||[],i&&(n=lt(i,1).concat(n)),a&&(n=n.concat(lt(a,-1)))),n}(n,e),n.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)))}splitTile(t,e,r,n,i,a,o){const s=[t,e,r,n],l=this.options,c=l.debug;for(;s.length;){n=s.pop(),r=s.pop(),e=s.pop(),t=s.pop();const u=1<<e,h=yt(e,r,n);let f=this.tiles[h];if(!f&&(c>1&&console.time(\"creation\"),f=this.tiles[h]=ft(t,e,r,n,l),this.tileCoords.push({z:e,x:r,y:n}),c)){c>1&&(console.log(\"tile z%d-%d-%d (features: %d, points: %d, simplified: %d)\",e,r,n,f.numFeatures,f.numPoints,f.numSimplified),console.timeEnd(\"creation\"));const t=`z${e}`;this.stats[t]=(this.stats[t]||0)+1,this.total++}if(f.source=t,null==i){if(e===l.indexMaxZoom||f.numPoints<=l.indexMaxPoints)continue}else{if(e===l.maxZoom||e===i)continue;if(null!=i){const t=i-e;if(r!==a>>t||n!==o>>t)continue}}if(f.source=null,0===t.length)continue;c>1&&console.time(\"clipping\");const p=.5*l.buffer/l.extent,d=.5-p,m=.5+p,g=1+p;let y=null,v=null,x=null,_=null,b=tt(t,u,r-p,r+m,0,f.minX,f.maxX,l),w=tt(t,u,r+d,r+g,0,f.minX,f.maxX,l);t=null,b&&(y=tt(b,u,n-p,n+m,1,f.minY,f.maxY,l),v=tt(b,u,n+d,n+g,1,f.minY,f.maxY,l),b=null),w&&(x=tt(w,u,n-p,n+m,1,f.minY,f.maxY,l),_=tt(w,u,n+d,n+g,1,f.minY,f.maxY,l),w=null),c>1&&console.timeEnd(\"clipping\"),s.push(y||[],e+1,2*r,2*n),s.push(v||[],e+1,2*r,2*n+1),s.push(x||[],e+1,2*r+1,2*n),s.push(_||[],e+1,2*r+1,2*n+1)}}getTile(t,e,r){t=+t,e=+e,r=+r;const n=this.options,{extent:i,debug:a}=n;if(t<0||t>24)return null;const o=1<<t,s=yt(t,e=e+o&o-1,r);if(this.tiles[s])return ut(this.tiles[s],i);a>1&&console.log(\"drilling down to z%d-%d-%d\",t,e,r);let l,c=t,u=e,h=r;for(;!l&&c>0;)c--,u>>=1,h>>=1,l=this.tiles[yt(c,u,h)];return l&&l.source?(a>1&&(console.log(\"found parent tile z%d-%d-%d\",c,u,h),console.time(\"drilling down\")),this.splitTile(l.source,c,u,h,t,e,r),a>1&&console.timeEnd(\"drilling down\"),this.tiles[s]?ut(this.tiles[s],i):null):null}}function yt(t,e,r){return 32*((1<<t)*r+e)+t}function vt(t,e){return e?t.properties[e]:t.id}function xt(t,e){if(null==t)return!0;if(\"Feature\"===t.type)return null!=vt(t,e);if(\"FeatureCollection\"===t.type){const r=new Set;for(const n of t.features){const t=vt(n,e);if(null==t)return!1;if(r.has(t))return!1;r.add(t)}return!0}return!1}function _t(t,e){const r=new Map;if(null==t);else if(\"Feature\"===t.type)r.set(vt(t,e),t);else for(const n of t.features)r.set(vt(n,e),n);return r}class bt extends a{constructor(){super(...arguments),this._dataUpdateable=new Map}loadVectorTile(e,r){return t._(this,void 0,void 0,(function*(){const t=e.tileID.canonical;if(!this._geoJSONIndex)throw new Error(\"Unable to parse the data into a cluster or geojson\");const r=this._geoJSONIndex.getTile(t.z,t.x,t.y);if(!r)return null;const n=new p(r.features);let i=I(n);return 0===i.byteOffset&&i.byteLength===i.buffer.byteLength||(i=new Uint8Array(i)),{vectorTile:n,rawData:i.buffer}}))}loadData(e){return t._(this,void 0,void 0,(function*(){var r;null===(r=this._pendingRequest)||void 0===r||r.abort();const n=!!(e&&e.request&&e.request.collectResourceTiming)&&new t.bu(e.request);this._pendingRequest=new AbortController;try{this._pendingData=this.loadAndProcessGeoJSON(e,this._pendingRequest),this._geoJSONIndex=e.cluster?new B(function({superclusterOptions:e,clusterProperties:r}){if(!r||!e)return e;const n={},i={},a={accumulated:null,zoom:0},o={properties:null},s=Object.keys(r);for(const e of s){const[a,o]=r[e],s=t.bB(o),l=t.bB(\"string\"==typeof a?[a,[\"accumulated\"],[\"get\",e]]:a);n[e]=s.value,i[e]=l.value}return e.map=t=>{o.properties=t;const e={};for(const t of s)e[t]=n[t].evaluate(a,o);return e},e.reduce=(t,e)=>{o.properties=e;for(const e of s)a.accumulated=t[e],t[e]=i[e].evaluate(a,o)},e}(e)).load((yield this._pendingData).features):(i=yield this._pendingData,a=e.geojsonVtOptions,new gt(i,a)),this.loaded={};const r={};if(n){const t=n.finish();t&&(r.resourceTiming={},r.resourceTiming[e.source]=JSON.parse(JSON.stringify(t)))}return r}catch(e){if(delete this._pendingRequest,t.bA(e))return{abandoned:!0};throw e}var i,a}))}getData(){return t._(this,void 0,void 0,(function*(){return this._pendingData}))}reloadTile(t){const e=this.loaded,r=t.uid;return e&&e[r]?super.reloadTile(t):this.loadTile(t)}loadAndProcessGeoJSON(e,r){return t._(this,void 0,void 0,(function*(){let n=yield this.loadGeoJSON(e,r);if(delete this._pendingRequest,\"object\"!=typeof n)throw new Error(`Input data given to '${e.source}' is not a valid GeoJSON object.`);if(u(n,!0),e.filter){const r=t.bB(e.filter,{type:\"boolean\",\"property-type\":\"data-driven\",overridable:!1,transition:!1});if(\"error\"===r.result)throw new Error(r.value.map((t=>`${t.key}: ${t.message}`)).join(\", \"));const i=n.features.filter((t=>r.value.evaluate({zoom:0},t)));n={type:\"FeatureCollection\",features:i}}return n}))}loadGeoJSON(e,r){return t._(this,void 0,void 0,(function*(){const{promoteId:n}=e;if(e.request){const i=yield t.h(e.request,r);return this._dataUpdateable=xt(i.data,n)?_t(i.data,n):void 0,i.data}if(\"string\"==typeof e.data)try{const t=JSON.parse(e.data);return this._dataUpdateable=xt(t,n)?_t(t,n):void 0,t}catch(t){throw new Error(`Input data given to '${e.source}' is not a valid GeoJSON object.`)}if(!e.dataDiff)throw new Error(`Input data given to '${e.source}' is not a valid GeoJSON object.`);if(!this._dataUpdateable)throw new Error(`Cannot update existing geojson data in ${e.source}`);return function(t,e,r){var n,i,a,o;if(e.removeAll&&t.clear(),e.remove)for(const r of e.remove)t.delete(r);if(e.add)for(const n of e.add){const e=vt(n,r);null!=e&&t.set(e,n)}if(e.update)for(const r of e.update){let e=t.get(r.id);if(null==e)continue;const s=r.newGeometry||r.removeAllProperties,l=!r.removeAllProperties&&((null===(n=r.removeProperties)||void 0===n?void 0:n.length)>0||(null===(i=r.addOrUpdateProperties)||void 0===i?void 0:i.length)>0);if((s||l)&&(e=Object.assign({},e),t.set(r.id,e),l&&(e.properties=Object.assign({},e.properties))),r.newGeometry&&(e.geometry=r.newGeometry),r.removeAllProperties)e.properties={};else if((null===(a=r.removeProperties)||void 0===a?void 0:a.length)>0)for(const t of r.removeProperties)Object.prototype.hasOwnProperty.call(e.properties,t)&&delete e.properties[t];if((null===(o=r.addOrUpdateProperties)||void 0===o?void 0:o.length)>0)for(const{key:t,value:n}of r.addOrUpdateProperties)e.properties[t]=n}}(this._dataUpdateable,e.dataDiff,n),{type:\"FeatureCollection\",features:Array.from(this._dataUpdateable.values())}}))}removeSource(e){return t._(this,void 0,void 0,(function*(){this._pendingRequest&&this._pendingRequest.abort()}))}getClusterExpansionZoom(t){return this._geoJSONIndex.getClusterExpansionZoom(t.clusterId)}getClusterChildren(t){return this._geoJSONIndex.getChildren(t.clusterId)}getClusterLeaves(t){return this._geoJSONIndex.getLeaves(t.clusterId,t.limit,t.offset)}}class wt{constructor(e){this.self=e,this.actor=new t.F(e),this.layerIndexes={},this.availableImages={},this.workerSources={},this.demWorkerSources={},this.externalWorkerSourceTypes={},this.self.registerWorkerSource=(t,e)=>{if(this.externalWorkerSourceTypes[t])throw new Error(`Worker source with name \"${t}\" already registered.`);this.externalWorkerSourceTypes[t]=e},this.self.addProtocol=t.bh,this.self.removeProtocol=t.bi,this.self.registerRTLTextPlugin=e=>{if(t.bC.isParsed())throw new Error(\"RTL text plugin already registered.\");t.bC.setMethods(e)},this.actor.registerMessageHandler(\"LDT\",((t,e)=>this._getDEMWorkerSource(t,e.source).loadTile(e))),this.actor.registerMessageHandler(\"RDT\",((e,r)=>t._(this,void 0,void 0,(function*(){this._getDEMWorkerSource(e,r.source).removeTile(r)})))),this.actor.registerMessageHandler(\"GCEZ\",((e,r)=>t._(this,void 0,void 0,(function*(){return this._getWorkerSource(e,r.type,r.source).getClusterExpansionZoom(r)})))),this.actor.registerMessageHandler(\"GCC\",((e,r)=>t._(this,void 0,void 0,(function*(){return this._getWorkerSource(e,r.type,r.source).getClusterChildren(r)})))),this.actor.registerMessageHandler(\"GCL\",((e,r)=>t._(this,void 0,void 0,(function*(){return this._getWorkerSource(e,r.type,r.source).getClusterLeaves(r)})))),this.actor.registerMessageHandler(\"LD\",((t,e)=>this._getWorkerSource(t,e.type,e.source).loadData(e))),this.actor.registerMessageHandler(\"GD\",((t,e)=>this._getWorkerSource(t,e.type,e.source).getData())),this.actor.registerMessageHandler(\"LT\",((t,e)=>this._getWorkerSource(t,e.type,e.source).loadTile(e))),this.actor.registerMessageHandler(\"RT\",((t,e)=>this._getWorkerSource(t,e.type,e.source).reloadTile(e))),this.actor.registerMessageHandler(\"AT\",((t,e)=>this._getWorkerSource(t,e.type,e.source).abortTile(e))),this.actor.registerMessageHandler(\"RMT\",((t,e)=>this._getWorkerSource(t,e.type,e.source).removeTile(e))),this.actor.registerMessageHandler(\"RS\",((e,r)=>t._(this,void 0,void 0,(function*(){if(!this.workerSources[e]||!this.workerSources[e][r.type]||!this.workerSources[e][r.type][r.source])return;const t=this.workerSources[e][r.type][r.source];delete this.workerSources[e][r.type][r.source],void 0!==t.removeSource&&t.removeSource(r)})))),this.actor.registerMessageHandler(\"RM\",(e=>t._(this,void 0,void 0,(function*(){delete this.layerIndexes[e],delete this.availableImages[e],delete this.workerSources[e],delete this.demWorkerSources[e]})))),this.actor.registerMessageHandler(\"SR\",((e,r)=>t._(this,void 0,void 0,(function*(){this.referrer=r})))),this.actor.registerMessageHandler(\"SRPS\",((t,e)=>this._syncRTLPluginState(t,e))),this.actor.registerMessageHandler(\"IS\",((e,r)=>t._(this,void 0,void 0,(function*(){this.self.importScripts(r)})))),this.actor.registerMessageHandler(\"SI\",((t,e)=>this._setImages(t,e))),this.actor.registerMessageHandler(\"UL\",((e,r)=>t._(this,void 0,void 0,(function*(){this._getLayerIndex(e).update(r.layers,r.removedIds)})))),this.actor.registerMessageHandler(\"SL\",((e,r)=>t._(this,void 0,void 0,(function*(){this._getLayerIndex(e).replace(r)}))))}_setImages(e,r){return t._(this,void 0,void 0,(function*(){this.availableImages[e]=r;for(const t in this.workerSources[e]){const n=this.workerSources[e][t];for(const t in n)n[t].availableImages=r}}))}_syncRTLPluginState(e,r){return t._(this,void 0,void 0,(function*(){if(t.bC.isParsed())return t.bC.getState();if(\"loading\"!==r.pluginStatus)return t.bC.setState(r),r;const e=r.pluginURL;if(this.self.importScripts(e),t.bC.isParsed()){const r={pluginStatus:\"loaded\",pluginURL:e};return t.bC.setState(r),r}throw t.bC.setState({pluginStatus:\"error\",pluginURL:\"\"}),new Error(`RTL Text Plugin failed to import scripts from ${e}`)}))}_getAvailableImages(t){let e=this.availableImages[t];return e||(e=[]),e}_getLayerIndex(t){let r=this.layerIndexes[t];return r||(r=this.layerIndexes[t]=new e),r}_getWorkerSource(t,e,r){if(this.workerSources[t]||(this.workerSources[t]={}),this.workerSources[t][e]||(this.workerSources[t][e]={}),!this.workerSources[t][e][r]){const n={sendAsync:(e,r)=>(e.targetMapId=t,this.actor.sendAsync(e,r))};switch(e){case\"vector\":this.workerSources[t][e][r]=new a(n,this._getLayerIndex(t),this._getAvailableImages(t));break;case\"geojson\":this.workerSources[t][e][r]=new bt(n,this._getLayerIndex(t),this._getAvailableImages(t));break;default:this.workerSources[t][e][r]=new this.externalWorkerSourceTypes[e](n,this._getLayerIndex(t),this._getAvailableImages(t))}}return this.workerSources[t][e][r]}_getDEMWorkerSource(t,e){return this.demWorkerSources[t]||(this.demWorkerSources[t]={}),this.demWorkerSources[t][e]||(this.demWorkerSources[t][e]=new o),this.demWorkerSources[t][e]}}return t.i(self)&&(self.worker=new wt(self)),wt})),r(\"index\",0,(function(t,e){var r=\"4.5.2\";let n,i;const a={now:\"undefined\"!=typeof performance&&performance&&performance.now?performance.now.bind(performance):Date.now.bind(Date),frameAsync(t){return new Promise(((r,n)=>{const i=requestAnimationFrame(r);t.signal.addEventListener(\"abort\",(()=>{cancelAnimationFrame(i),n(e.c())}))}))},getImageData(t,e=0){return this.getImageCanvasContext(t).getImageData(-e,-e,t.width+2*e,t.height+2*e)},getImageCanvasContext(t){const e=window.document.createElement(\"canvas\"),r=e.getContext(\"2d\",{willReadFrequently:!0});if(!r)throw new Error(\"failed to create canvas 2d context\");return e.width=t.width,e.height=t.height,r.drawImage(t,0,0,t.width,t.height),r},resolveURL(t){return n||(n=document.createElement(\"a\")),n.href=t,n.href},hardwareConcurrency:\"undefined\"!=typeof navigator&&navigator.hardwareConcurrency||4,get prefersReducedMotion(){return!!matchMedia&&(null==i&&(i=matchMedia(\"(prefers-reduced-motion: reduce)\")),i.matches)}};class o{static testProp(t){if(!o.docStyle)return t[0];for(let e=0;e<t.length;e++)if(t[e]in o.docStyle)return t[e];return t[0]}static create(t,e,r){const n=window.document.createElement(t);return void 0!==e&&(n.className=e),r&&r.appendChild(n),n}static createNS(t,e){return window.document.createElementNS(t,e)}static disableDrag(){o.docStyle&&o.selectProp&&(o.userSelect=o.docStyle[o.selectProp],o.docStyle[o.selectProp]=\"none\")}static enableDrag(){o.docStyle&&o.selectProp&&(o.docStyle[o.selectProp]=o.userSelect)}static setTransform(t,e){t.style[o.transformProp]=e}static addEventListener(t,e,r,n={}){\"passive\"in n?t.addEventListener(e,r,n):t.addEventListener(e,r,n.capture)}static removeEventListener(t,e,r,n={}){\"passive\"in n?t.removeEventListener(e,r,n):t.removeEventListener(e,r,n.capture)}static suppressClickInternal(t){t.preventDefault(),t.stopPropagation(),window.removeEventListener(\"click\",o.suppressClickInternal,!0)}static suppressClick(){window.addEventListener(\"click\",o.suppressClickInternal,!0),window.setTimeout((()=>{window.removeEventListener(\"click\",o.suppressClickInternal,!0)}),0)}static getScale(t){const e=t.getBoundingClientRect();return{x:e.width/t.offsetWidth||1,y:e.height/t.offsetHeight||1,boundingClientRect:e}}static getPoint(t,r,n){const i=r.boundingClientRect;return new e.P((n.clientX-i.left)/r.x-t.clientLeft,(n.clientY-i.top)/r.y-t.clientTop)}static mousePos(t,e){const r=o.getScale(t);return o.getPoint(t,r,e)}static touchPos(t,e){const r=[],n=o.getScale(t);for(let i=0;i<e.length;i++)r.push(o.getPoint(t,n,e[i]));return r}static mouseButton(t){return t.button}static remove(t){t.parentNode&&t.parentNode.removeChild(t)}}o.docStyle=\"undefined\"!=typeof window&&window.document&&window.document.documentElement.style,o.selectProp=o.testProp([\"userSelect\",\"MozUserSelect\",\"WebkitUserSelect\",\"msUserSelect\"]),o.transformProp=o.testProp([\"transform\",\"WebkitTransform\"]);const s={supported:!1,testSupport:function(t){!u&&c&&(h?f(t):l=t)}};let l,c,u=!1,h=!1;function f(t){const e=t.createTexture();t.bindTexture(t.TEXTURE_2D,e);try{if(t.texImage2D(t.TEXTURE_2D,0,t.RGBA,t.RGBA,t.UNSIGNED_BYTE,c),t.isContextLost())return;s.supported=!0}catch(t){}t.deleteTexture(e),u=!0}var p;\"undefined\"!=typeof document&&(c=document.createElement(\"img\"),c.onload=()=>{l&&f(l),l=null,h=!0},c.onerror=()=>{u=!0,l=null},c.src=\"data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=\"),function(t){let r,n,i,a;t.resetRequestQueue=()=>{r=[],n=0,i=0,a={}},t.addThrottleControl=t=>{const e=i++;return a[e]=t,e},t.removeThrottleControl=t=>{delete a[t],l()};t.getImage=(t,n,i=!0)=>new Promise(((a,o)=>{s.supported&&(t.headers||(t.headers={}),t.headers.accept=\"image/webp,*/*\"),e.e(t,{type:\"image\"});const c={abortController:n,requestParameters:t,supportImageRefresh:i,state:\"queued\",onError:t=>{o(t)},onSuccess:t=>{a(t)}};r.push(c),l()}));const o=t=>e._(this,void 0,void 0,(function*(){t.state=\"running\";const{requestParameters:r,supportImageRefresh:i,onError:a,onSuccess:o,abortController:s}=t,u=!1===i&&!e.i(self)&&!e.g(r.url)&&(!r.headers||Object.keys(r.headers).reduce(((t,e)=>t&&\"accept\"===e),!0));n++;const h=u?c(r,s):e.m(r,s);try{const r=yield h;delete t.abortController,t.state=\"completed\",r.data instanceof HTMLImageElement||e.b(r.data)?o(r):r.data&&o({data:yield(f=r.data,\"function\"==typeof createImageBitmap?e.d(f):e.f(f)),cacheControl:r.cacheControl,expires:r.expires})}catch(e){delete t.abortController,a(e)}finally{n--,l()}var f})),l=()=>{const t=(()=>{for(const t of Object.keys(a))if(a[t]())return!0;return!1})()?e.a.MAX_PARALLEL_IMAGE_REQUESTS_PER_FRAME:e.a.MAX_PARALLEL_IMAGE_REQUESTS;for(let e=n;e<t&&r.length>0;e++){const t=r.shift();t.abortController.signal.aborted?e--:o(t)}},c=(t,r)=>new Promise(((n,i)=>{const a=new Image,o=t.url,s=t.credentials;s&&\"include\"===s?a.crossOrigin=\"use-credentials\":(s&&\"same-origin\"===s||!e.s(o))&&(a.crossOrigin=\"anonymous\"),r.signal.addEventListener(\"abort\",(()=>{a.src=\"\",i(e.c())})),a.fetchPriority=\"high\",a.onload=()=>{a.onerror=a.onload=null,n({data:a})},a.onerror=()=>{a.onerror=a.onload=null,r.signal.aborted||i(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.\"))},a.src=o}))}(p||(p={})),p.resetRequestQueue();class d{constructor(t){this._transformRequestFn=t}transformRequest(t,e){return this._transformRequestFn&&this._transformRequestFn(t,e)||{url:t}}setTransformRequest(t){this._transformRequestFn=t}}function m(t){var r=new e.A(3);return r[0]=t[0],r[1]=t[1],r[2]=t[2],r}var g,y=function(t,e,r){return t[0]=e[0]-r[0],t[1]=e[1]-r[1],t[2]=e[2]-r[2],t};g=new e.A(3),e.A!=Float32Array&&(g[0]=0,g[1]=0,g[2]=0);var v=function(t){var e=t[0],r=t[1];return e*e+r*r};function x(t){const e=[];if(\"string\"==typeof t)e.push({id:\"default\",url:t});else if(t&&t.length>0){const r=[];for(const{id:n,url:i}of t){const t=`${n}${i}`;-1===r.indexOf(t)&&(r.push(t),e.push({id:n,url:i}))}}return e}function _(t,e,r){const n=t.split(\"?\");return n[0]+=`${e}${r}`,n.join(\"?\")}function b(t,r,n,i){return e._(this,void 0,void 0,(function*(){const o=x(t),s=n>1?\"@2x\":\"\",l={},c={};for(const{id:t,url:n}of o){const a=r.transformRequest(_(n,s,\".json\"),\"SpriteJSON\");l[t]=e.h(a,i);const o=r.transformRequest(_(n,s,\".png\"),\"SpriteImage\");c[t]=p.getImage(o,i)}return yield Promise.all([...Object.values(l),...Object.values(c)]),function(t,r){return e._(this,void 0,void 0,(function*(){const e={};for(const n in t){e[n]={};const i=a.getImageCanvasContext((yield r[n]).data),o=(yield t[n]).data;for(const t in o){const{width:r,height:a,x:s,y:l,sdf:c,pixelRatio:u,stretchX:h,stretchY:f,content:p,textFitWidth:d,textFitHeight:m}=o[t],g={width:r,height:a,x:s,y:l,context:i};e[n][t]={data:null,pixelRatio:u,sdf:c,stretchX:h,stretchY:f,content:p,textFitWidth:d,textFitHeight:m,spriteData:g}}}return e}))}(l,c)}))}!function(){var t=new e.A(2);e.A!=Float32Array&&(t[0]=0,t[1]=0)}();class w{constructor(t,e,r,n){this.context=t,this.format=r,this.texture=t.gl.createTexture(),this.update(e,n)}update(t,r,n){const{width:i,height:a}=t,o=!(this.size&&this.size[0]===i&&this.size[1]===a||n),{context:s}=this,{gl:l}=s;if(this.useMipmap=Boolean(r&&r.useMipmap),l.bindTexture(l.TEXTURE_2D,this.texture),s.pixelStoreUnpackFlipY.set(!1),s.pixelStoreUnpack.set(1),s.pixelStoreUnpackPremultiplyAlpha.set(this.format===l.RGBA&&(!r||!1!==r.premultiply)),o)this.size=[i,a],t instanceof HTMLImageElement||t instanceof HTMLCanvasElement||t instanceof HTMLVideoElement||t instanceof ImageData||e.b(t)?l.texImage2D(l.TEXTURE_2D,0,this.format,this.format,l.UNSIGNED_BYTE,t):l.texImage2D(l.TEXTURE_2D,0,this.format,i,a,0,this.format,l.UNSIGNED_BYTE,t.data);else{const{x:r,y:o}=n||{x:0,y:0};t instanceof HTMLImageElement||t instanceof HTMLCanvasElement||t instanceof HTMLVideoElement||t instanceof ImageData||e.b(t)?l.texSubImage2D(l.TEXTURE_2D,0,r,o,l.RGBA,l.UNSIGNED_BYTE,t):l.texSubImage2D(l.TEXTURE_2D,0,r,o,i,a,l.RGBA,l.UNSIGNED_BYTE,t.data)}this.useMipmap&&this.isSizePowerOfTwo()&&l.generateMipmap(l.TEXTURE_2D)}bind(t,e,r){const{context:n}=this,{gl:i}=n;i.bindTexture(i.TEXTURE_2D,this.texture),r!==i.LINEAR_MIPMAP_NEAREST||this.isSizePowerOfTwo()||(r=i.LINEAR),t!==this.filter&&(i.texParameteri(i.TEXTURE_2D,i.TEXTURE_MAG_FILTER,t),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_MIN_FILTER,r||t),this.filter=t),e!==this.wrap&&(i.texParameteri(i.TEXTURE_2D,i.TEXTURE_WRAP_S,e),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_WRAP_T,e),this.wrap=e)}isSizePowerOfTwo(){return this.size[0]===this.size[1]&&Math.log(this.size[0])/Math.LN2%1==0}destroy(){const{gl:t}=this.context;t.deleteTexture(this.texture),this.texture=null}}function T(t){const{userImage:e}=t;return!!(e&&e.render&&e.render())&&(t.data.replace(new Uint8Array(e.data.buffer)),!0)}class k extends e.E{constructor(){super(),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new e.R({width:1,height:1}),this.dirty=!0}isLoaded(){return this.loaded}setLoaded(t){if(this.loaded!==t&&(this.loaded=t,t)){for(const{ids:t,promiseResolve:e}of this.requestors)e(this._getImagesForIds(t));this.requestors=[]}}getImage(t){const r=this.images[t];if(r&&!r.data&&r.spriteData){const t=r.spriteData;r.data=new e.R({width:t.width,height:t.height},t.context.getImageData(t.x,t.y,t.width,t.height).data),r.spriteData=null}return r}addImage(t,e){if(this.images[t])throw new Error(`Image id ${t} already exist, use updateImage instead`);this._validate(t,e)&&(this.images[t]=e)}_validate(t,r){let n=!0;const i=r.data||r.spriteData;return this._validateStretch(r.stretchX,i&&i.width)||(this.fire(new e.j(new Error(`Image \"${t}\" has invalid \"stretchX\" value`))),n=!1),this._validateStretch(r.stretchY,i&&i.height)||(this.fire(new e.j(new Error(`Image \"${t}\" has invalid \"stretchY\" value`))),n=!1),this._validateContent(r.content,r)||(this.fire(new e.j(new Error(`Image \"${t}\" has invalid \"content\" value`))),n=!1),n}_validateStretch(t,e){if(!t)return!0;let r=0;for(const n of t){if(n[0]<r||n[1]<n[0]||e<n[1])return!1;r=n[1]}return!0}_validateContent(t,e){if(!t)return!0;if(4!==t.length)return!1;const r=e.spriteData,n=r&&r.width||e.data.width,i=r&&r.height||e.data.height;return!(t[0]<0||n<t[0]||t[1]<0||i<t[1]||t[2]<0||n<t[2]||t[3]<0||i<t[3]||t[2]<t[0]||t[3]<t[1])}updateImage(t,e,r=!0){const n=this.getImage(t);if(r&&(n.data.width!==e.data.width||n.data.height!==e.data.height))throw new Error(`size mismatch between old image (${n.data.width}x${n.data.height}) and new image (${e.data.width}x${e.data.height}).`);e.version=n.version+1,this.images[t]=e,this.updatedImages[t]=!0}removeImage(t){const e=this.images[t];delete this.images[t],delete this.patterns[t],e.userImage&&e.userImage.onRemove&&e.userImage.onRemove()}listImages(){return Object.keys(this.images)}getImages(t){return new Promise(((e,r)=>{let n=!0;if(!this.isLoaded())for(const e of t)this.images[e]||(n=!1);this.isLoaded()||n?e(this._getImagesForIds(t)):this.requestors.push({ids:t,promiseResolve:e})}))}_getImagesForIds(t){const r={};for(const n of t){let t=this.getImage(n);t||(this.fire(new e.k(\"styleimagemissing\",{id:n})),t=this.getImage(n)),t?r[n]={data:t.data.clone(),pixelRatio:t.pixelRatio,sdf:t.sdf,version:t.version,stretchX:t.stretchX,stretchY:t.stretchY,content:t.content,textFitWidth:t.textFitWidth,textFitHeight:t.textFitHeight,hasRenderCallback:Boolean(t.userImage&&t.userImage.render)}:e.w(`Image \"${n}\" could not be loaded. Please make sure you have added the image with map.addImage() or a \"sprite\" property in your style. You can provide missing images by listening for the \"styleimagemissing\" map event.`)}return r}getPixelSize(){const{width:t,height:e}=this.atlasImage;return{width:t,height:e}}getPattern(t){const r=this.patterns[t],n=this.getImage(t);if(!n)return null;if(r&&r.position.version===n.version)return r.position;if(r)r.position.version=n.version;else{const r={w:n.data.width+2,h:n.data.height+2,x:0,y:0},i=new e.I(r,n);this.patterns[t]={bin:r,position:i}}return this._updatePatternAtlas(),this.patterns[t].position}bind(t){const e=t.gl;this.atlasTexture?this.dirty&&(this.atlasTexture.update(this.atlasImage),this.dirty=!1):this.atlasTexture=new w(t,this.atlasImage,e.RGBA),this.atlasTexture.bind(e.LINEAR,e.CLAMP_TO_EDGE)}_updatePatternAtlas(){const t=[];for(const e in this.patterns)t.push(this.patterns[e].bin);const{w:r,h:n}=e.p(t),i=this.atlasImage;i.resize({width:r||1,height:n||1});for(const t in this.patterns){const{bin:r}=this.patterns[t],n=r.x+1,a=r.y+1,o=this.getImage(t).data,s=o.width,l=o.height;e.R.copy(o,i,{x:0,y:0},{x:n,y:a},{width:s,height:l}),e.R.copy(o,i,{x:0,y:l-1},{x:n,y:a-1},{width:s,height:1}),e.R.copy(o,i,{x:0,y:0},{x:n,y:a+l},{width:s,height:1}),e.R.copy(o,i,{x:s-1,y:0},{x:n-1,y:a},{width:1,height:l}),e.R.copy(o,i,{x:0,y:0},{x:n+s,y:a},{width:1,height:l})}this.dirty=!0}beginFrame(){this.callbackDispatchedThisFrame={}}dispatchRenderCallbacks(t){for(const r of t){if(this.callbackDispatchedThisFrame[r])continue;this.callbackDispatchedThisFrame[r]=!0;const t=this.getImage(r);t||e.w(`Image with ID: \"${r}\" was not found`),T(t)&&this.updateImage(r,t)}}}const A=1e20;function M(t,e,r,n,i,a,o,s,l){for(let c=e;c<e+n;c++)S(t,r*a+c,a,i,o,s,l);for(let c=r;c<r+i;c++)S(t,c*a+e,1,n,o,s,l)}function S(t,e,r,n,i,a,o){a[0]=0,o[0]=-A,o[1]=A,i[0]=t[e];for(let s=1,l=0,c=0;s<n;s++){i[s]=t[e+s*r];const n=s*s;do{const t=a[l];c=(i[s]-i[t]+n-t*t)/(s-t)/2}while(c<=o[l]&&--l>-1);l++,a[l]=s,o[l]=c,o[l+1]=A}for(let s=0,l=0;s<n;s++){for(;o[l+1]<s;)l++;const n=a[l],c=s-n;t[e+s*r]=i[n]+c*c}}class E{constructor(t,e){this.requestManager=t,this.localIdeographFontFamily=e,this.entries={}}setURL(t){this.url=t}getGlyphs(t){return e._(this,void 0,void 0,(function*(){const e=[];for(const r in t)for(const n of t[r])e.push(this._getAndCacheGlyphsPromise(r,n));const r=yield Promise.all(e),n={};for(const{stack:t,id:e,glyph:i}of r)n[t]||(n[t]={}),n[t][e]=i&&{id:i.id,bitmap:i.bitmap.clone(),metrics:i.metrics};return n}))}_getAndCacheGlyphsPromise(t,r){return e._(this,void 0,void 0,(function*(){let e=this.entries[t];e||(e=this.entries[t]={glyphs:{},requests:{},ranges:{}});let n=e.glyphs[r];if(void 0!==n)return{stack:t,id:r,glyph:n};if(n=this._tinySDF(e,t,r),n)return e.glyphs[r]=n,{stack:t,id:r,glyph:n};const i=Math.floor(r/256);if(256*i>65535)throw new Error(\"glyphs > 65535 not supported\");if(e.ranges[i])return{stack:t,id:r,glyph:n};if(!this.url)throw new Error(\"glyphsUrl is not set\");if(!e.requests[i]){const r=E.loadGlyphRange(t,i,this.url,this.requestManager);e.requests[i]=r}const a=yield e.requests[i];for(const t in a)this._doesCharSupportLocalGlyph(+t)||(e.glyphs[+t]=a[+t]);return e.ranges[i]=!0,{stack:t,id:r,glyph:a[r]||null}}))}_doesCharSupportLocalGlyph(t){return!!this.localIdeographFontFamily&&(e.u[\"CJK Unified Ideographs\"](t)||e.u[\"Hangul Syllables\"](t)||e.u.Hiragana(t)||e.u.Katakana(t))}_tinySDF(t,r,n){const i=this.localIdeographFontFamily;if(!i)return;if(!this._doesCharSupportLocalGlyph(n))return;let a=t.tinySDF;if(!a){let e=\"400\";/bold/i.test(r)?e=\"900\":/medium/i.test(r)?e=\"500\":/light/i.test(r)&&(e=\"200\"),a=t.tinySDF=new E.TinySDF({fontSize:48,buffer:6,radius:16,cutoff:.25,fontFamily:i,fontWeight:e})}const o=a.draw(String.fromCharCode(n));return{id:n,bitmap:new e.o({width:o.width||60,height:o.height||60},o.data),metrics:{width:o.glyphWidth/2||24,height:o.glyphHeight/2||24,left:o.glyphLeft/2+.5||0,top:o.glyphTop/2-27.5||-8,advance:o.glyphAdvance/2||24,isDoubleResolution:!0}}}}E.loadGlyphRange=function(t,r,n,i){return e._(this,void 0,void 0,(function*(){const a=256*r,o=a+255,s=i.transformRequest(n.replace(\"{fontstack}\",t).replace(\"{range}\",`${a}-${o}`),\"Glyphs\"),l=yield e.l(s,new AbortController);if(!l||!l.data)throw new Error(`Could not load glyph range. range: ${r}, ${a}-${o}`);const c={};for(const t of e.n(l.data))c[t.id]=t;return c}))},E.TinySDF=class{constructor({fontSize:t=24,buffer:e=3,radius:r=8,cutoff:n=.25,fontFamily:i=\"sans-serif\",fontWeight:a=\"normal\",fontStyle:o=\"normal\"}={}){this.buffer=e,this.cutoff=n,this.radius=r;const s=this.size=t+4*e,l=this._createCanvas(s),c=this.ctx=l.getContext(\"2d\",{willReadFrequently:!0});c.font=`${o} ${a} ${t}px ${i}`,c.textBaseline=\"alphabetic\",c.textAlign=\"left\",c.fillStyle=\"black\",this.gridOuter=new Float64Array(s*s),this.gridInner=new Float64Array(s*s),this.f=new Float64Array(s),this.z=new Float64Array(s+1),this.v=new Uint16Array(s)}_createCanvas(t){const e=document.createElement(\"canvas\");return e.width=e.height=t,e}draw(t){const{width:e,actualBoundingBoxAscent:r,actualBoundingBoxDescent:n,actualBoundingBoxLeft:i,actualBoundingBoxRight:a}=this.ctx.measureText(t),o=Math.ceil(r),s=Math.max(0,Math.min(this.size-this.buffer,Math.ceil(a-i))),l=Math.min(this.size-this.buffer,o+Math.ceil(n)),c=s+2*this.buffer,u=l+2*this.buffer,h=Math.max(c*u,0),f=new Uint8ClampedArray(h),p={data:f,width:c,height:u,glyphWidth:s,glyphHeight:l,glyphTop:o,glyphLeft:0,glyphAdvance:e};if(0===s||0===l)return p;const{ctx:d,buffer:m,gridInner:g,gridOuter:y}=this;d.clearRect(m,m,s,l),d.fillText(t,m,m+o);const v=d.getImageData(m,m,s,l);y.fill(A,0,h),g.fill(0,0,h);for(let t=0;t<l;t++)for(let e=0;e<s;e++){const r=v.data[4*(t*s+e)+3]/255;if(0===r)continue;const n=(t+m)*c+e+m;if(1===r)y[n]=0,g[n]=A;else{const t=.5-r;y[n]=t>0?t*t:0,g[n]=t<0?t*t:0}}M(y,0,0,c,u,c,this.f,this.v,this.z),M(g,m,m,s,l,c,this.f,this.v,this.z);for(let t=0;t<h;t++){const e=Math.sqrt(y[t])-Math.sqrt(g[t]);f[t]=Math.round(255-255*(e/this.radius+this.cutoff))}return p}};class C{constructor(){this.specification=e.v.light.position}possiblyEvaluate(t,r){return e.y(t.expression.evaluate(r))}interpolate(t,r,n){return{x:e.z.number(t.x,r.x,n),y:e.z.number(t.y,r.y,n),z:e.z.number(t.z,r.z,n)}}}const L=\"-transition\";let I;class P extends e.E{constructor(t){super(),I=I||new e.q({anchor:new e.D(e.v.light.anchor),position:new C,color:new e.D(e.v.light.color),intensity:new e.D(e.v.light.intensity)}),this._transitionable=new e.T(I),this.setLight(t),this._transitioning=this._transitionable.untransitioned()}getLight(){return this._transitionable.serialize()}setLight(t,r={}){if(!this._validate(e.r,t,r))for(const e in t){const r=t[e];e.endsWith(L)?this._transitionable.setTransition(e.slice(0,-11),r):this._transitionable.setValue(e,r)}}updateTransitions(t){this._transitioning=this._transitionable.transitioned(t,this._transitioning)}hasTransition(){return this._transitioning.hasTransition()}recalculate(t){this.properties=this._transitioning.possiblyEvaluate(t)}_validate(t,r,n){return(!n||!1!==n.validate)&&e.t(this,t.call(e.x,{value:r,style:{glyphs:!0,sprite:!0},styleSpec:e.v}))}}const z=new e.q({\"sky-color\":new e.D(e.v.sky[\"sky-color\"]),\"horizon-color\":new e.D(e.v.sky[\"horizon-color\"]),\"fog-color\":new e.D(e.v.sky[\"fog-color\"]),\"fog-ground-blend\":new e.D(e.v.sky[\"fog-ground-blend\"]),\"horizon-fog-blend\":new e.D(e.v.sky[\"horizon-fog-blend\"]),\"sky-horizon-blend\":new e.D(e.v.sky[\"sky-horizon-blend\"]),\"atmosphere-blend\":new e.D(e.v.sky[\"atmosphere-blend\"])}),O=\"-transition\";class D extends e.E{constructor(t){super(),this._transitionable=new e.T(z),this.setSky(t),this._transitioning=this._transitionable.untransitioned()}setSky(t,r={}){if(!this._validate(e.B,t,r))for(const e in t){const r=t[e];e.endsWith(O)?this._transitionable.setTransition(e.slice(0,-11),r):this._transitionable.setValue(e,r)}}getSky(){return this._transitionable.serialize()}updateTransitions(t){this._transitioning=this._transitionable.transitioned(t,this._transitioning)}hasTransition(){return this._transitioning.hasTransition()}recalculate(t){this.properties=this._transitioning.possiblyEvaluate(t)}_validate(t,r,n={}){return!1!==(null==n?void 0:n.validate)&&e.t(this,t.call(e.x,e.e({value:r,style:{glyphs:!0,sprite:!0},styleSpec:e.v})))}calculateFogBlendOpacity(t){return t<60?0:t<70?(t-60)/10:1}}class R{constructor(t,e){this.width=t,this.height=e,this.nextRow=0,this.data=new Uint8Array(this.width*this.height),this.dashEntry={}}getDash(t,e){const r=t.join(\",\")+String(e);return this.dashEntry[r]||(this.dashEntry[r]=this.addDash(t,e)),this.dashEntry[r]}getDashRanges(t,e,r){const n=[];let i=t.length%2==1?-t[t.length-1]*r:0,a=t[0]*r,o=!0;n.push({left:i,right:a,isDash:o,zeroLength:0===t[0]});let s=t[0];for(let e=1;e<t.length;e++){o=!o;const l=t[e];i=s*r,s+=l,a=s*r,n.push({left:i,right:a,isDash:o,zeroLength:0===l})}return n}addRoundDash(t,e,r){const n=e/2;for(let e=-r;e<=r;e++){const i=this.nextRow+r+e,a=this.width*i;let o=0,s=t[o];for(let i=0;i<this.width;i++){i/s.right>1&&(s=t[++o]);const l=Math.abs(i-s.left),c=Math.abs(i-s.right),u=Math.min(l,c);let h;const f=e/r*(n+1);if(s.isDash){const t=n-Math.abs(f);h=Math.sqrt(u*u+t*t)}else h=n-Math.sqrt(u*u+f*f);this.data[a+i]=Math.max(0,Math.min(255,h+128))}}}addRegularDash(t){for(let e=t.length-1;e>=0;--e){const r=t[e],n=t[e+1];r.zeroLength?t.splice(e,1):n&&n.isDash===r.isDash&&(n.left=r.left,t.splice(e,1))}const e=t[0],r=t[t.length-1];e.isDash===r.isDash&&(e.left=r.left-this.width,r.right=e.right+this.width);const n=this.width*this.nextRow;let i=0,a=t[i];for(let e=0;e<this.width;e++){e/a.right>1&&(a=t[++i]);const r=Math.abs(e-a.left),o=Math.abs(e-a.right),s=Math.min(r,o),l=a.isDash?s:-s;this.data[n+e]=Math.max(0,Math.min(255,l+128))}}addDash(t,r){const n=r?7:0,i=2*n+1;if(this.nextRow+i>this.height)return e.w(\"LineAtlas out of space\"),null;let a=0;for(let e=0;e<t.length;e++)a+=t[e];if(0!==a){const e=this.width/a,i=this.getDashRanges(t,this.width,e);r?this.addRoundDash(i,e,n):this.addRegularDash(i)}const o={y:(this.nextRow+n+.5)/this.height,height:2*n/this.height,width:a};return this.nextRow+=i,this.dirty=!0,o}bind(t){const e=t.gl;this.texture?(e.bindTexture(e.TEXTURE_2D,this.texture),this.dirty&&(this.dirty=!1,e.texSubImage2D(e.TEXTURE_2D,0,0,0,this.width,this.height,e.ALPHA,e.UNSIGNED_BYTE,this.data))):(this.texture=e.createTexture(),e.bindTexture(e.TEXTURE_2D,this.texture),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.REPEAT),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.REPEAT),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texImage2D(e.TEXTURE_2D,0,e.ALPHA,this.width,this.height,0,e.ALPHA,e.UNSIGNED_BYTE,this.data))}}const F=\"maplibre_preloaded_worker_pool\";class B{constructor(){this.active={}}acquire(t){if(!this.workers)for(this.workers=[];this.workers.length<B.workerCount;)this.workers.push(new Worker(e.a.WORKER_URL));return this.active[t]=!0,this.workers.slice()}release(t){delete this.active[t],0===this.numActive()&&(this.workers.forEach((t=>{t.terminate()})),this.workers=null)}isPreloaded(){return!!this.active[F]}numActive(){return Object.keys(this.active).length}}const N=Math.floor(a.hardwareConcurrency/2);let j,U;function V(){return j||(j=new B),j}B.workerCount=e.C(globalThis)?Math.max(Math.min(N,3),1):1;class q{constructor(t,r){this.workerPool=t,this.actors=[],this.currentActor=0,this.id=r;const n=this.workerPool.acquire(r);for(let t=0;t<n.length;t++){const i=n[t],a=new e.F(i,r);a.name=`Worker ${t}`,this.actors.push(a)}if(!this.actors.length)throw new Error(\"No actors found\")}broadcast(t,e){const r=[];for(const n of this.actors)r.push(n.sendAsync({type:t,data:e}));return Promise.all(r)}getActor(){return this.currentActor=(this.currentActor+1)%this.actors.length,this.actors[this.currentActor]}remove(t=!0){this.actors.forEach((t=>{t.remove()})),this.actors=[],t&&this.workerPool.release(this.id)}registerMessageHandler(t,e){for(const r of this.actors)r.registerMessageHandler(t,e)}}function H(){return U||(U=new q(V(),e.G),U.registerMessageHandler(\"GR\",((t,r,n)=>e.m(r,n)))),U}function G(t,r){const n=e.H();return e.J(n,n,[1,1,0]),e.K(n,n,[.5*t.width,.5*t.height,1]),e.L(n,n,t.calculatePosMatrix(r.toUnwrapped()))}function Z(t,e,r,n,i,a){const o=function(t,e,r){if(t)for(const n of t){const t=e[n];if(t&&t.source===r&&\"fill-extrusion\"===t.type)return!0}else for(const t in e){const n=e[t];if(n.source===r&&\"fill-extrusion\"===n.type)return!0}return!1}(i&&i.layers,e,t.id),s=a.maxPitchScaleFactor(),l=t.tilesIn(n,s,o);l.sort(W);const c=[];for(const n of l)c.push({wrappedTileID:n.tileID.wrapped().key,queryResults:n.tile.queryRenderedFeatures(e,r,t._state,n.queryGeometry,n.cameraQueryGeometry,n.scale,i,a,s,G(t.transform,n.tileID))});const u=function(t){const e={},r={};for(const n of t){const t=n.queryResults,i=n.wrappedTileID,a=r[i]=r[i]||{};for(const r in t){const n=t[r],i=a[r]=a[r]||{},o=e[r]=e[r]||[];for(const t of n)i[t.featureIndex]||(i[t.featureIndex]=!0,o.push(t))}}return e}(c);for(const e in u)u[e].forEach((e=>{const r=e.feature,n=t.getFeatureState(r.layer[\"source-layer\"],r.id);r.source=r.layer.source,r.layer[\"source-layer\"]&&(r.sourceLayer=r.layer[\"source-layer\"]),r.state=n}));return u}function W(t,e){const r=t.tileID,n=e.tileID;return r.overscaledZ-n.overscaledZ||r.canonical.y-n.canonical.y||r.wrap-n.wrap||r.canonical.x-n.canonical.x}function Y(t,r,n){return e._(this,void 0,void 0,(function*(){let i=t;if(t.url?i=(yield e.h(r.transformRequest(t.url,\"Source\"),n)).data:yield a.frameAsync(n),!i)return null;const o=e.M(e.e(i,t),[\"tiles\",\"minzoom\",\"maxzoom\",\"attribution\",\"bounds\",\"scheme\",\"tileSize\",\"encoding\"]);return\"vector_layers\"in i&&i.vector_layers&&(o.vectorLayerIds=i.vector_layers.map((t=>t.id))),o}))}class X{constructor(t,e){t&&(e?this.setSouthWest(t).setNorthEast(e):Array.isArray(t)&&(4===t.length?this.setSouthWest([t[0],t[1]]).setNorthEast([t[2],t[3]]):this.setSouthWest(t[0]).setNorthEast(t[1])))}setNorthEast(t){return this._ne=t instanceof e.N?new e.N(t.lng,t.lat):e.N.convert(t),this}setSouthWest(t){return this._sw=t instanceof e.N?new e.N(t.lng,t.lat):e.N.convert(t),this}extend(t){const r=this._sw,n=this._ne;let i,a;if(t instanceof e.N)i=t,a=t;else{if(!(t instanceof X)){if(Array.isArray(t)){if(4===t.length||t.every(Array.isArray)){const e=t;return this.extend(X.convert(e))}{const r=t;return this.extend(e.N.convert(r))}}return t&&(\"lng\"in t||\"lon\"in t)&&\"lat\"in t?this.extend(e.N.convert(t)):this}if(i=t._sw,a=t._ne,!i||!a)return this}return r||n?(r.lng=Math.min(i.lng,r.lng),r.lat=Math.min(i.lat,r.lat),n.lng=Math.max(a.lng,n.lng),n.lat=Math.max(a.lat,n.lat)):(this._sw=new e.N(i.lng,i.lat),this._ne=new e.N(a.lng,a.lat)),this}getCenter(){return new e.N((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)}getSouthWest(){return this._sw}getNorthEast(){return this._ne}getNorthWest(){return new e.N(this.getWest(),this.getNorth())}getSouthEast(){return new e.N(this.getEast(),this.getSouth())}getWest(){return this._sw.lng}getSouth(){return this._sw.lat}getEast(){return this._ne.lng}getNorth(){return this._ne.lat}toArray(){return[this._sw.toArray(),this._ne.toArray()]}toString(){return`LngLatBounds(${this._sw.toString()}, ${this._ne.toString()})`}isEmpty(){return!(this._sw&&this._ne)}contains(t){const{lng:r,lat:n}=e.N.convert(t),i=this._sw.lat<=n&&n<=this._ne.lat;let 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}static convert(t){return t instanceof X?t:t?new X(t):t}static fromLngLat(t,r=0){const n=360*r/40075017,i=n/Math.cos(Math.PI/180*t.lat);return new X(new e.N(t.lng-i,t.lat-n),new e.N(t.lng+i,t.lat+n))}}class ${constructor(t,e,r){this.bounds=X.convert(this.validateBounds(t)),this.minzoom=e||0,this.maxzoom=r||24}validateBounds(t){return Array.isArray(t)&&4===t.length?[Math.max(-180,t[0]),Math.max(-90,t[1]),Math.min(180,t[2]),Math.min(90,t[3])]:[-180,-90,180,90]}contains(t){const r=Math.pow(2,t.z),n=Math.floor(e.O(this.bounds.getWest())*r),i=Math.floor(e.Q(this.bounds.getNorth())*r),a=Math.ceil(e.O(this.bounds.getEast())*r),o=Math.ceil(e.Q(this.bounds.getSouth())*r);return t.x>=n&&t.x<a&&t.y>=i&&t.y<o}}class J extends e.E{constructor(t,r,n,i){if(super(),this.id=t,this.dispatcher=n,this.type=\"vector\",this.minzoom=0,this.maxzoom=22,this.scheme=\"xyz\",this.tileSize=512,this.reparseOverscaled=!0,this.isTileClipped=!0,this._loaded=!1,e.e(this,e.M(r,[\"url\",\"scheme\",\"tileSize\",\"promoteId\"])),this._options=e.e({type:\"vector\"},r),this._collectResourceTiming=r.collectResourceTiming,512!==this.tileSize)throw new Error(\"vector tile sources must have a tileSize of 512\");this.setEventedParent(i)}load(){return e._(this,void 0,void 0,(function*(){this._loaded=!1,this.fire(new e.k(\"dataloading\",{dataType:\"source\"})),this._tileJSONRequest=new AbortController;try{const t=yield Y(this._options,this.map._requestManager,this._tileJSONRequest);this._tileJSONRequest=null,this._loaded=!0,this.map.style.sourceCaches[this.id].clearTiles(),t&&(e.e(this,t),t.bounds&&(this.tileBounds=new $(t.bounds,this.minzoom,this.maxzoom)),this.fire(new e.k(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"})),this.fire(new e.k(\"data\",{dataType:\"source\",sourceDataType:\"content\"})))}catch(t){this._tileJSONRequest=null,this.fire(new e.j(t))}}))}loaded(){return this._loaded}hasTile(t){return!this.tileBounds||this.tileBounds.contains(t.canonical)}onAdd(t){this.map=t,this.load()}setSourceProperty(t){this._tileJSONRequest&&this._tileJSONRequest.abort(),t(),this.load()}setTiles(t){return this.setSourceProperty((()=>{this._options.tiles=t})),this}setUrl(t){return this.setSourceProperty((()=>{this.url=t,this._options.url=t})),this}onRemove(){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null)}serialize(){return e.e({},this._options)}loadTile(t){return e._(this,void 0,void 0,(function*(){const e=t.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme),r={request:this.map._requestManager.transformRequest(e,\"Tile\"),uid:t.uid,tileID:t.tileID,zoom:t.tileID.overscaledZ,tileSize:this.tileSize*t.tileID.overscaleFactor(),type:this.type,source:this.id,pixelRatio:this.map.getPixelRatio(),showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};r.request.collectResourceTiming=this._collectResourceTiming;let n=\"RT\";if(t.actor&&\"expired\"!==t.state){if(\"loading\"===t.state)return new Promise(((e,r)=>{t.reloadPromise={resolve:e,reject:r}}))}else t.actor=this.dispatcher.getActor(),n=\"LT\";t.abortController=new AbortController;try{const e=yield t.actor.sendAsync({type:n,data:r},t.abortController);if(delete t.abortController,t.aborted)return;this._afterTileLoadWorkerResponse(t,e)}catch(e){if(delete t.abortController,t.aborted)return;if(e&&404!==e.status)throw e;this._afterTileLoadWorkerResponse(t,null)}}))}_afterTileLoadWorkerResponse(t,e){if(e&&e.resourceTiming&&(t.resourceTiming=e.resourceTiming),e&&this.map._refreshExpiredTiles&&t.setExpiryData(e),t.loadVectorData(e,this.map.painter),t.reloadPromise){const e=t.reloadPromise;t.reloadPromise=null,this.loadTile(t).then(e.resolve).catch(e.reject)}}abortTile(t){return e._(this,void 0,void 0,(function*(){t.abortController&&(t.abortController.abort(),delete t.abortController),t.actor&&(yield t.actor.sendAsync({type:\"AT\",data:{uid:t.uid,type:this.type,source:this.id}}))}))}unloadTile(t){return e._(this,void 0,void 0,(function*(){t.unloadVectorData(),t.actor&&(yield t.actor.sendAsync({type:\"RMT\",data:{uid:t.uid,type:this.type,source:this.id}}))}))}hasTransition(){return!1}}class K extends e.E{constructor(t,r,n,i){super(),this.id=t,this.dispatcher=n,this.setEventedParent(i),this.type=\"raster\",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme=\"xyz\",this.tileSize=512,this._loaded=!1,this._options=e.e({type:\"raster\"},r),e.e(this,e.M(r,[\"url\",\"scheme\",\"tileSize\"]))}load(){return e._(this,void 0,void 0,(function*(){this._loaded=!1,this.fire(new e.k(\"dataloading\",{dataType:\"source\"})),this._tileJSONRequest=new AbortController;try{const t=yield Y(this._options,this.map._requestManager,this._tileJSONRequest);this._tileJSONRequest=null,this._loaded=!0,t&&(e.e(this,t),t.bounds&&(this.tileBounds=new $(t.bounds,this.minzoom,this.maxzoom)),this.fire(new e.k(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"})),this.fire(new e.k(\"data\",{dataType:\"source\",sourceDataType:\"content\"})))}catch(t){this._tileJSONRequest=null,this.fire(new e.j(t))}}))}loaded(){return this._loaded}onAdd(t){this.map=t,this.load()}onRemove(){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null)}setSourceProperty(t){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null),t(),this.load()}setTiles(t){return this.setSourceProperty((()=>{this._options.tiles=t})),this}setUrl(t){return this.setSourceProperty((()=>{this.url=t,this._options.url=t})),this}serialize(){return e.e({},this._options)}hasTile(t){return!this.tileBounds||this.tileBounds.contains(t.canonical)}loadTile(t){return e._(this,void 0,void 0,(function*(){const e=t.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme);t.abortController=new AbortController;try{const r=yield p.getImage(this.map._requestManager.transformRequest(e,\"Tile\"),t.abortController,this.map._refreshExpiredTiles);if(delete t.abortController,t.aborted)return void(t.state=\"unloaded\");if(r&&r.data){this.map._refreshExpiredTiles&&r.cacheControl&&r.expires&&t.setExpiryData({cacheControl:r.cacheControl,expires:r.expires});const e=this.map.painter.context,n=e.gl,i=r.data;t.texture=this.map.painter.getTileTexture(i.width),t.texture?t.texture.update(i,{useMipmap:!0}):(t.texture=new w(e,i,n.RGBA,{useMipmap:!0}),t.texture.bind(n.LINEAR,n.CLAMP_TO_EDGE,n.LINEAR_MIPMAP_NEAREST)),t.state=\"loaded\"}}catch(e){if(delete t.abortController,t.aborted)t.state=\"unloaded\";else if(e)throw t.state=\"errored\",e}}))}abortTile(t){return e._(this,void 0,void 0,(function*(){t.abortController&&(t.abortController.abort(),delete t.abortController)}))}unloadTile(t){return e._(this,void 0,void 0,(function*(){t.texture&&this.map.painter.saveTileTexture(t.texture)}))}hasTransition(){return!1}}class Q extends K{constructor(t,r,n,i){super(t,r,n,i),this.type=\"raster-dem\",this.maxzoom=22,this._options=e.e({type:\"raster-dem\"},r),this.encoding=r.encoding||\"mapbox\",this.redFactor=r.redFactor,this.greenFactor=r.greenFactor,this.blueFactor=r.blueFactor,this.baseShift=r.baseShift}loadTile(t){return e._(this,void 0,void 0,(function*(){const r=t.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme),n=this.map._requestManager.transformRequest(r,\"Tile\");t.neighboringTiles=this._getNeighboringTiles(t.tileID),t.abortController=new AbortController;try{const r=yield p.getImage(n,t.abortController,this.map._refreshExpiredTiles);if(delete t.abortController,t.aborted)return void(t.state=\"unloaded\");if(r&&r.data){const n=r.data;this.map._refreshExpiredTiles&&r.cacheControl&&r.expires&&t.setExpiryData({cacheControl:r.cacheControl,expires:r.expires});const i=e.b(n)&&e.U()?n:yield this.readImageNow(n),a={type:this.type,uid:t.uid,source:this.id,rawImageData:i,encoding:this.encoding,redFactor:this.redFactor,greenFactor:this.greenFactor,blueFactor:this.blueFactor,baseShift:this.baseShift};if(!t.actor||\"expired\"===t.state){t.actor=this.dispatcher.getActor();const e=yield t.actor.sendAsync({type:\"LDT\",data:a});t.dem=e,t.needsHillshadePrepare=!0,t.needsTerrainPrepare=!0,t.state=\"loaded\"}}}catch(e){if(delete t.abortController,t.aborted)t.state=\"unloaded\";else if(e)throw t.state=\"errored\",e}}))}readImageNow(t){return e._(this,void 0,void 0,(function*(){if(\"undefined\"!=typeof VideoFrame&&e.V()){const r=t.width+2,n=t.height+2;try{return new e.R({width:r,height:n},yield e.W(t,-1,-1,r,n))}catch(t){}}return a.getImageData(t,1)}))}_getNeighboringTiles(t){const r=t.canonical,n=Math.pow(2,r.z),i=(r.x-1+n)%n,a=0===r.x?t.wrap-1:t.wrap,o=(r.x+1+n)%n,s=r.x+1===n?t.wrap+1:t.wrap,l={};return l[new e.S(t.overscaledZ,a,r.z,i,r.y).key]={backfilled:!1},l[new e.S(t.overscaledZ,s,r.z,o,r.y).key]={backfilled:!1},r.y>0&&(l[new e.S(t.overscaledZ,a,r.z,i,r.y-1).key]={backfilled:!1},l[new e.S(t.overscaledZ,t.wrap,r.z,r.x,r.y-1).key]={backfilled:!1},l[new e.S(t.overscaledZ,s,r.z,o,r.y-1).key]={backfilled:!1}),r.y+1<n&&(l[new e.S(t.overscaledZ,a,r.z,i,r.y+1).key]={backfilled:!1},l[new e.S(t.overscaledZ,t.wrap,r.z,r.x,r.y+1).key]={backfilled:!1},l[new e.S(t.overscaledZ,s,r.z,o,r.y+1).key]={backfilled:!1}),l}unloadTile(t){return e._(this,void 0,void 0,(function*(){t.demTexture&&this.map.painter.saveTileTexture(t.demTexture),t.fbo&&(t.fbo.destroy(),delete t.fbo),t.dem&&delete t.dem,delete t.neighboringTiles,t.state=\"unloaded\",t.actor&&(yield t.actor.sendAsync({type:\"RDT\",data:{type:this.type,uid:t.uid,source:this.id}}))}))}}class tt extends e.E{constructor(t,r,n,i){super(),this.id=t,this.type=\"geojson\",this.minzoom=0,this.maxzoom=18,this.tileSize=512,this.isTileClipped=!0,this.reparseOverscaled=!0,this._removed=!1,this._pendingLoads=0,this.actor=n.getActor(),this.setEventedParent(i),this._data=r.data,this._options=e.e({},r),this._collectResourceTiming=r.collectResourceTiming,void 0!==r.maxzoom&&(this.maxzoom=r.maxzoom),r.type&&(this.type=r.type),r.attribution&&(this.attribution=r.attribution),this.promoteId=r.promoteId;const a=e.X/this.tileSize;this.workerOptions=e.e({source:this.id,cluster:r.cluster||!1,geojsonVtOptions:{buffer:(void 0!==r.buffer?r.buffer:128)*a,tolerance:(void 0!==r.tolerance?r.tolerance:.375)*a,extent:e.X,maxZoom:this.maxzoom,lineMetrics:r.lineMetrics||!1,generateId:r.generateId||!1},superclusterOptions:{maxZoom:void 0!==r.clusterMaxZoom?r.clusterMaxZoom:this.maxzoom-1,minPoints:Math.max(2,r.clusterMinPoints||2),extent:e.X,radius:(r.clusterRadius||50)*a,log:!1,generateId:r.generateId||!1},clusterProperties:r.clusterProperties,filter:r.filter},r.workerOptions),\"string\"==typeof this.promoteId&&(this.workerOptions.promoteId=this.promoteId)}load(){return e._(this,void 0,void 0,(function*(){yield this._updateWorkerData()}))}onAdd(t){this.map=t,this.load()}setData(t){return this._data=t,this._updateWorkerData(),this}updateData(t){return this._updateWorkerData(t),this}getData(){return e._(this,void 0,void 0,(function*(){const t=e.e({type:this.type},this.workerOptions);return this.actor.sendAsync({type:\"GD\",data:t})}))}setClusterOptions(t){return this.workerOptions.cluster=t.cluster,t&&(void 0!==t.clusterRadius&&(this.workerOptions.superclusterOptions.radius=t.clusterRadius),void 0!==t.clusterMaxZoom&&(this.workerOptions.superclusterOptions.maxZoom=t.clusterMaxZoom)),this._updateWorkerData(),this}getClusterExpansionZoom(t){return this.actor.sendAsync({type:\"GCEZ\",data:{type:this.type,clusterId:t,source:this.id}})}getClusterChildren(t){return this.actor.sendAsync({type:\"GCC\",data:{type:this.type,clusterId:t,source:this.id}})}getClusterLeaves(t,e,r){return this.actor.sendAsync({type:\"GCL\",data:{type:this.type,source:this.id,clusterId:t,limit:e,offset:r}})}_updateWorkerData(t){return e._(this,void 0,void 0,(function*(){const r=e.e({type:this.type},this.workerOptions);t?r.dataDiff=t:\"string\"==typeof this._data?(r.request=this.map._requestManager.transformRequest(a.resolveURL(this._data),\"Source\"),r.request.collectResourceTiming=this._collectResourceTiming):r.data=JSON.stringify(this._data),this._pendingLoads++,this.fire(new e.k(\"dataloading\",{dataType:\"source\"}));try{const t=yield this.actor.sendAsync({type:\"LD\",data:r});if(this._pendingLoads--,this._removed||t.abandoned)return void this.fire(new e.k(\"dataabort\",{dataType:\"source\"}));let n=null;t.resourceTiming&&t.resourceTiming[this.id]&&(n=t.resourceTiming[this.id].slice(0));const i={dataType:\"source\"};this._collectResourceTiming&&n&&n.length>0&&e.e(i,{resourceTiming:n}),this.fire(new e.k(\"data\",Object.assign(Object.assign({},i),{sourceDataType:\"metadata\"}))),this.fire(new e.k(\"data\",Object.assign(Object.assign({},i),{sourceDataType:\"content\"})))}catch(t){if(this._pendingLoads--,this._removed)return void this.fire(new e.k(\"dataabort\",{dataType:\"source\"}));this.fire(new e.j(t))}}))}loaded(){return 0===this._pendingLoads}loadTile(t){return e._(this,void 0,void 0,(function*(){const e=t.actor?\"RT\":\"LT\";t.actor=this.actor;const r={type:this.type,uid:t.uid,tileID:t.tileID,zoom:t.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:this.map.getPixelRatio(),showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};t.abortController=new AbortController;const n=yield this.actor.sendAsync({type:e,data:r},t.abortController);delete t.abortController,t.unloadVectorData(),t.aborted||t.loadVectorData(n,this.map.painter,\"RT\"===e)}))}abortTile(t){return e._(this,void 0,void 0,(function*(){t.abortController&&(t.abortController.abort(),delete t.abortController),t.aborted=!0}))}unloadTile(t){return e._(this,void 0,void 0,(function*(){t.unloadVectorData(),yield this.actor.sendAsync({type:\"RMT\",data:{uid:t.uid,type:this.type,source:this.id}})}))}onRemove(){this._removed=!0,this.actor.sendAsync({type:\"RS\",data:{type:this.type,source:this.id}})}serialize(){return e.e({},this._options,{type:this.type,data:this._data})}hasTransition(){return!1}}var et=e.Y([{name:\"a_pos\",type:\"Int16\",components:2},{name:\"a_texture_pos\",type:\"Int16\",components:2}]);class rt extends e.E{constructor(t,e,r,n){super(),this.id=t,this.dispatcher=r,this.coordinates=e.coordinates,this.type=\"image\",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(n),this.options=e}load(t){return e._(this,void 0,void 0,(function*(){this._loaded=!1,this.fire(new e.k(\"dataloading\",{dataType:\"source\"})),this.url=this.options.url,this._request=new AbortController;try{const e=yield p.getImage(this.map._requestManager.transformRequest(this.url,\"Image\"),this._request);this._request=null,this._loaded=!0,e&&e.data&&(this.image=e.data,t&&(this.coordinates=t),this._finishLoading())}catch(t){this._request=null,this._loaded=!0,this.fire(new e.j(t))}}))}loaded(){return this._loaded}updateImage(t){return t.url?(this._request&&(this._request.abort(),this._request=null),this.options.url=t.url,this.load(t.coordinates).finally((()=>{this.texture=null})),this):this}_finishLoading(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new e.k(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"})))}onAdd(t){this.map=t,this.load()}onRemove(){this._request&&(this._request.abort(),this._request=null)}setCoordinates(t){this.coordinates=t;const r=t.map(e.Z.fromLngLat);this.tileID=function(t){let r=1/0,n=1/0,i=-1/0,a=-1/0;for(const e of t)r=Math.min(r,e.x),n=Math.min(n,e.y),i=Math.max(i,e.x),a=Math.max(a,e.y);const o=i-r,s=a-n,l=Math.max(o,s),c=Math.max(0,Math.floor(-Math.log(l)/Math.LN2)),u=Math.pow(2,c);return new e.a1(c,Math.floor((r+i)/2*u),Math.floor((n+a)/2*u))}(r),this.minzoom=this.maxzoom=this.tileID.z;const n=r.map((t=>this.tileID.getTilePoint(t)._round()));return this._boundsArray=new e.$,this._boundsArray.emplaceBack(n[0].x,n[0].y,0,0),this._boundsArray.emplaceBack(n[1].x,n[1].y,e.X,0),this._boundsArray.emplaceBack(n[3].x,n[3].y,0,e.X),this._boundsArray.emplaceBack(n[2].x,n[2].y,e.X,e.X),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new e.k(\"data\",{dataType:\"source\",sourceDataType:\"content\"})),this}prepare(){if(0===Object.keys(this.tiles).length||!this.image)return;const t=this.map.painter.context,r=t.gl;this.boundsBuffer||(this.boundsBuffer=t.createVertexBuffer(this._boundsArray,et.members)),this.boundsSegments||(this.boundsSegments=e.a0.simpleSegment(0,0,4,2)),this.texture||(this.texture=new w(t,this.image,r.RGBA),this.texture.bind(r.LINEAR,r.CLAMP_TO_EDGE));let n=!1;for(const t in this.tiles){const e=this.tiles[t];\"loaded\"!==e.state&&(e.state=\"loaded\",e.texture=this.texture,n=!0)}n&&this.fire(new e.k(\"data\",{dataType:\"source\",sourceDataType:\"idle\",sourceId:this.id}))}loadTile(t){return e._(this,void 0,void 0,(function*(){this.tileID&&this.tileID.equals(t.tileID.canonical)?(this.tiles[String(t.tileID.wrap)]=t,t.buckets={}):t.state=\"errored\"}))}serialize(){return{type:\"image\",url:this.options.url,coordinates:this.coordinates}}hasTransition(){return!1}}class nt extends rt{constructor(t,e,r,n){super(t,e,r,n),this.roundZoom=!0,this.type=\"video\",this.options=e}load(){return e._(this,void 0,void 0,(function*(){this._loaded=!1;const t=this.options;this.urls=[];for(const e of t.urls)this.urls.push(this.map._requestManager.transformRequest(e,\"Source\").url);try{const t=yield e.a3(this.urls);if(this._loaded=!0,!t)return;this.video=t,this.video.loop=!0,this.video.addEventListener(\"playing\",(()=>{this.map.triggerRepaint()})),this.map&&this.video.play(),this._finishLoading()}catch(t){this.fire(new e.j(t))}}))}pause(){this.video&&this.video.pause()}play(){this.video&&this.video.play()}seek(t){if(this.video){const r=this.video.seekable;t<r.start(0)||t>r.end(0)?this.fire(new e.j(new e.a2(`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}}getVideo(){return this.video}onAdd(t){this.map||(this.map=t,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))}prepare(){if(0===Object.keys(this.tiles).length||this.video.readyState<2)return;const t=this.map.painter.context,r=t.gl;this.boundsBuffer||(this.boundsBuffer=t.createVertexBuffer(this._boundsArray,et.members)),this.boundsSegments||(this.boundsSegments=e.a0.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 w(t,this.video,r.RGBA),this.texture.bind(r.LINEAR,r.CLAMP_TO_EDGE));let n=!1;for(const t in this.tiles){const e=this.tiles[t];\"loaded\"!==e.state&&(e.state=\"loaded\",e.texture=this.texture,n=!0)}n&&this.fire(new e.k(\"data\",{dataType:\"source\",sourceDataType:\"idle\",sourceId:this.id}))}serialize(){return{type:\"video\",urls:this.urls,coordinates:this.coordinates}}hasTransition(){return this.video&&!this.video.paused}}class it extends rt{constructor(t,r,n,i){super(t,r,n,i),r.coordinates?Array.isArray(r.coordinates)&&4===r.coordinates.length&&!r.coordinates.some((t=>!Array.isArray(t)||2!==t.length||t.some((t=>\"number\"!=typeof t))))||this.fire(new e.j(new e.a2(`sources.${t}`,null,'\"coordinates\" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new e.j(new e.a2(`sources.${t}`,null,'missing required property \"coordinates\"'))),r.animate&&\"boolean\"!=typeof r.animate&&this.fire(new e.j(new e.a2(`sources.${t}`,null,'optional \"animate\" property must be a boolean value'))),r.canvas?\"string\"==typeof r.canvas||r.canvas instanceof HTMLCanvasElement||this.fire(new e.j(new e.a2(`sources.${t}`,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.j(new e.a2(`sources.${t}`,null,'missing required property \"canvas\"'))),this.options=r,this.animate=void 0===r.animate||r.animate}load(){return e._(this,void 0,void 0,(function*(){this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof HTMLCanvasElement?this.options.canvas:document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()?this.fire(new e.j(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())}))}getCanvas(){return this.canvas}onAdd(t){this.map=t,this.load(),this.canvas&&this.animate&&this.play()}onRemove(){this.pause()}prepare(){let 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())return;if(0===Object.keys(this.tiles).length)return;const r=this.map.painter.context,n=r.gl;this.boundsBuffer||(this.boundsBuffer=r.createVertexBuffer(this._boundsArray,et.members)),this.boundsSegments||(this.boundsSegments=e.a0.simpleSegment(0,0,4,2)),this.texture?(t||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new w(r,this.canvas,n.RGBA,{premultiply:!0});let i=!1;for(const t in this.tiles){const e=this.tiles[t];\"loaded\"!==e.state&&(e.state=\"loaded\",e.texture=this.texture,i=!0)}i&&this.fire(new e.k(\"data\",{dataType:\"source\",sourceDataType:\"idle\",sourceId:this.id}))}serialize(){return{type:\"canvas\",coordinates:this.coordinates}}hasTransition(){return this._playing}_hasInvalidDimensions(){for(const t of[this.canvas.width,this.canvas.height])if(isNaN(t)||t<=0)return!0;return!1}}const at={},ot=t=>{switch(t){case\"geojson\":return tt;case\"image\":return rt;case\"raster\":return K;case\"raster-dem\":return Q;case\"vector\":return J;case\"video\":return nt;case\"canvas\":return it}return at[t]};const st=\"RTLPluginLoaded\";class lt extends e.E{constructor(){super(...arguments),this.status=\"unavailable\",this.url=null,this.dispatcher=H()}_syncState(t){return this.status=t,this.dispatcher.broadcast(\"SRPS\",{pluginStatus:t,pluginURL:this.url}).catch((t=>{throw this.status=\"error\",t}))}getRTLTextPluginStatus(){return this.status}clearRTLTextPlugin(){this.status=\"unavailable\",this.url=null}setRTLTextPlugin(t){return e._(this,arguments,void 0,(function*(t,e=!1){if(this.url)throw new Error(\"setRTLTextPlugin cannot be called multiple times.\");if(this.url=a.resolveURL(t),!this.url)throw new Error(`requested url ${t} is invalid`);if(\"unavailable\"===this.status){if(!e)return this._requestImport();this.status=\"deferred\",this._syncState(this.status)}else if(\"requested\"===this.status)return this._requestImport()}))}_requestImport(){return e._(this,void 0,void 0,(function*(){yield this._syncState(\"loading\"),this.status=\"loaded\",this.fire(new e.k(st))}))}lazyLoad(){\"unavailable\"===this.status?this.status=\"requested\":\"deferred\"===this.status&&this._requestImport()}}let ct=null;function ut(){return ct||(ct=new lt),ct}class ht{constructor(t,r){this.timeAdded=0,this.fadeEndTime=0,this.tileID=t,this.uid=e.a4(),this.uses=0,this.tileSize=r,this.buckets={},this.expirationTime=null,this.queryPadding=0,this.hasSymbolBuckets=!1,this.hasRTLText=!1,this.dependencies={},this.rtt=[],this.rttCoords={},this.expiredRequestCount=0,this.state=\"loading\"}registerFadeDuration(t){const e=t+this.timeAdded;e<this.fadeEndTime||(this.fadeEndTime=e)}wasRequested(){return\"errored\"===this.state||\"loaded\"===this.state||\"reloading\"===this.state}clearTextures(t){this.demTexture&&t.saveTileTexture(this.demTexture),this.demTexture=null}loadVectorData(t,r,n){if(this.hasData()&&this.unloadVectorData(),this.state=\"loaded\",t){t.featureIndex&&(this.latestFeatureIndex=t.featureIndex,t.rawTileData?(this.latestRawTileData=t.rawTileData,this.latestFeatureIndex.rawTileData=t.rawTileData):this.latestRawTileData&&(this.latestFeatureIndex.rawTileData=this.latestRawTileData)),this.collisionBoxArray=t.collisionBoxArray,this.buckets=function(t,e){const r={};if(!e)return r;for(const n of t){const t=n.layerIds.map((t=>e.getLayer(t))).filter(Boolean);if(0!==t.length){n.layers=t,n.stateDependentLayerIds&&(n.stateDependentLayers=n.stateDependentLayerIds.map((e=>t.filter((t=>t.id===e))[0])));for(const e of t)r[e.id]=n}}return r}(t.buckets,r.style),this.hasSymbolBuckets=!1;for(const t in this.buckets){const r=this.buckets[t];if(r instanceof e.a6){if(this.hasSymbolBuckets=!0,!n)break;r.justReloaded=!0}}if(this.hasRTLText=!1,this.hasSymbolBuckets)for(const t in this.buckets){const r=this.buckets[t];if(r instanceof e.a6&&r.hasRTLText){this.hasRTLText=!0,ut().lazyLoad();break}}this.queryPadding=0;for(const t in this.buckets){const e=this.buckets[t];this.queryPadding=Math.max(this.queryPadding,r.style.getLayer(t).queryRadius(e))}t.imageAtlas&&(this.imageAtlas=t.imageAtlas),t.glyphAtlasImage&&(this.glyphAtlasImage=t.glyphAtlasImage)}else this.collisionBoxArray=new e.a5}unloadVectorData(){for(const t in this.buckets)this.buckets[t].destroy();this.buckets={},this.imageAtlasTexture&&this.imageAtlasTexture.destroy(),this.imageAtlas&&(this.imageAtlas=null),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.latestFeatureIndex=null,this.state=\"unloaded\"}getBucket(t){return this.buckets[t.id]}upload(t){for(const e in this.buckets){const r=this.buckets[e];r.uploadPending()&&r.upload(t)}const e=t.gl;this.imageAtlas&&!this.imageAtlas.uploaded&&(this.imageAtlasTexture=new w(t,this.imageAtlas.image,e.RGBA),this.imageAtlas.uploaded=!0),this.glyphAtlasImage&&(this.glyphAtlasTexture=new w(t,this.glyphAtlasImage,e.ALPHA),this.glyphAtlasImage=null)}prepare(t){this.imageAtlas&&this.imageAtlas.patchUpdatedImages(t,this.imageAtlasTexture)}queryRenderedFeatures(t,e,r,n,i,a,o,s,l,c){return this.latestFeatureIndex&&this.latestFeatureIndex.rawTileData?this.latestFeatureIndex.query({queryGeometry:n,cameraQueryGeometry:i,scale:a,tileSize:this.tileSize,pixelPosMatrix:c,transform:s,params:o,queryPadding:this.queryPadding*l},t,e,r):{}}querySourceFeatures(t,r){const n=this.latestFeatureIndex;if(!n||!n.rawTileData)return;const i=n.loadVTLayers(),a=r&&r.sourceLayer?r.sourceLayer:\"\",o=i._geojsonTileLayer||i[a];if(!o)return;const s=e.a7(r&&r.filter),{z:l,x:c,y:u}=this.tileID.canonical,h={z:l,x:c,y:u};for(let r=0;r<o.length;r++){const i=o.feature(r);if(s.needGeometry){const t=e.a8(i,!0);if(!s.filter(new e.a9(this.tileID.overscaledZ),t,this.tileID.canonical))continue}else if(!s.filter(new e.a9(this.tileID.overscaledZ),i))continue;const f=n.getId(i,a),p=new e.aa(i,l,c,u,f);p.tile=h,t.push(p)}}hasData(){return\"loaded\"===this.state||\"reloading\"===this.state||\"expired\"===this.state}patternsLoaded(){return this.imageAtlas&&!!Object.keys(this.imageAtlas.patternPositions).length}setExpiryData(t){const r=this.expirationTime;if(t.cacheControl){const r=e.ab(t.cacheControl);r[\"max-age\"]&&(this.expirationTime=Date.now()+1e3*r[\"max-age\"])}else t.expires&&(this.expirationTime=new Date(t.expires).getTime());if(this.expirationTime){const t=Date.now();let e=!1;if(this.expirationTime>t)e=!1;else if(r)if(this.expirationTime<r)e=!0;else{const n=this.expirationTime-r;n?this.expirationTime=t+Math.max(n,3e4):e=!0}else e=!0;e?(this.expiredRequestCount++,this.state=\"expired\"):this.expiredRequestCount=0}}getExpiryTimeout(){if(this.expirationTime)return this.expiredRequestCount?1e3*(1<<Math.min(this.expiredRequestCount-1,31)):Math.min(this.expirationTime-(new Date).getTime(),Math.pow(2,31)-1)}setFeatureState(t,e){if(!this.latestFeatureIndex||!this.latestFeatureIndex.rawTileData||0===Object.keys(t).length)return;const r=this.latestFeatureIndex.loadVTLayers();for(const n in this.buckets){if(!e.style.hasLayer(n))continue;const i=this.buckets[n],a=i.layers[0].sourceLayer||\"_geojsonTileLayer\",o=r[a],s=t[a];if(!o||!s||0===Object.keys(s).length)continue;i.update(s,o,this.imageAtlas&&this.imageAtlas.patternPositions||{});const l=e&&e.style&&e.style.getLayer(n);l&&(this.queryPadding=Math.max(this.queryPadding,l.queryRadius(i)))}}holdingForFade(){return void 0!==this.symbolFadeHoldUntil}symbolFadeFinished(){return!this.symbolFadeHoldUntil||this.symbolFadeHoldUntil<a.now()}clearFadeHold(){this.symbolFadeHoldUntil=void 0}setHoldDuration(t){this.symbolFadeHoldUntil=a.now()+t}setDependencies(t,e){const r={};for(const t of e)r[t]=!0;this.dependencies[t]=r}hasDependency(t,e){for(const r of t){const t=this.dependencies[r];if(t)for(const r of e)if(t[r])return!0}return!1}}class ft{constructor(t,e){this.max=t,this.onRemove=e,this.reset()}reset(){for(const t in this.data)for(const e of this.data[t])e.timeout&&clearTimeout(e.timeout),this.onRemove(e.value);return this.data={},this.order=[],this}add(t,e,r){const n=t.wrapped().key;void 0===this.data[n]&&(this.data[n]=[]);const i={value:e,timeout:void 0};if(void 0!==r&&(i.timeout=setTimeout((()=>{this.remove(t,i)}),r)),this.data[n].push(i),this.order.push(n),this.order.length>this.max){const t=this._getAndRemoveByKey(this.order[0]);t&&this.onRemove(t)}return this}has(t){return t.wrapped().key in this.data}getAndRemove(t){return this.has(t)?this._getAndRemoveByKey(t.wrapped().key):null}_getAndRemoveByKey(t){const e=this.data[t].shift();return e.timeout&&clearTimeout(e.timeout),0===this.data[t].length&&delete this.data[t],this.order.splice(this.order.indexOf(t),1),e.value}getByKey(t){const e=this.data[t];return e?e[0].value:null}get(t){return this.has(t)?this.data[t.wrapped().key][0].value:null}remove(t,e){if(!this.has(t))return this;const r=t.wrapped().key,n=void 0===e?0:this.data[r].indexOf(e),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}setMaxSize(t){for(this.max=t;this.order.length>this.max;){const t=this._getAndRemoveByKey(this.order[0]);t&&this.onRemove(t)}return this}filter(t){const e=[];for(const r in this.data)for(const n of this.data[r])t(n.value)||e.push(n);for(const t of e)this.remove(t.value.tileID,t)}}class pt{constructor(){this.state={},this.stateChanges={},this.deletedStates={}}updateState(t,r,n){const i=String(r);if(this.stateChanges[t]=this.stateChanges[t]||{},this.stateChanges[t][i]=this.stateChanges[t][i]||{},e.e(this.stateChanges[t][i],n),null===this.deletedStates[t]){this.deletedStates[t]={};for(const e in this.state[t])e!==i&&(this.deletedStates[t][e]=null)}else if(this.deletedStates[t]&&null===this.deletedStates[t][i]){this.deletedStates[t][i]={};for(const e in this.state[t][i])n[e]||(this.deletedStates[t][i][e]=null)}else for(const e in n)this.deletedStates[t]&&this.deletedStates[t][i]&&null===this.deletedStates[t][i][e]&&delete this.deletedStates[t][i][e]}removeFeatureState(t,e,r){if(null===this.deletedStates[t])return;const n=String(e);if(this.deletedStates[t]=this.deletedStates[t]||{},r&&void 0!==e)null!==this.deletedStates[t][n]&&(this.deletedStates[t][n]=this.deletedStates[t][n]||{},this.deletedStates[t][n][r]=null);else if(void 0!==e)if(this.stateChanges[t]&&this.stateChanges[t][n])for(r in this.deletedStates[t][n]={},this.stateChanges[t][n])this.deletedStates[t][n][r]=null;else this.deletedStates[t][n]=null;else this.deletedStates[t]=null}getState(t,r){const n=String(r),i=this.state[t]||{},a=this.stateChanges[t]||{},o=e.e({},i[n],a[n]);if(null===this.deletedStates[t])return{};if(this.deletedStates[t]){const e=this.deletedStates[t][r];if(null===e)return{};for(const t in e)delete o[t]}return o}initializeTileState(t,e){t.setFeatureState(this.state,e)}coalesceChanges(t,r){const n={};for(const t in this.stateChanges){this.state[t]=this.state[t]||{};const r={};for(const n in this.stateChanges[t])this.state[t][n]||(this.state[t][n]={}),e.e(this.state[t][n],this.stateChanges[t][n]),r[n]=this.state[t][n];n[t]=r}for(const t in this.deletedStates){this.state[t]=this.state[t]||{};const r={};if(null===this.deletedStates[t])for(const e in this.state[t])r[e]={},this.state[t][e]={};else for(const e in this.deletedStates[t]){if(null===this.deletedStates[t][e])this.state[t][e]={};else for(const r of Object.keys(this.deletedStates[t][e]))delete this.state[t][e][r];r[e]=this.state[t][e]}n[t]=n[t]||{},e.e(n[t],r)}if(this.stateChanges={},this.deletedStates={},0!==Object.keys(n).length)for(const e in t)t[e].setFeatureState(n,r)}}class dt extends e.E{constructor(t,e,r){super(),this.id=t,this.dispatcher=r,this.on(\"data\",(t=>this._dataHandler(t))),this.on(\"dataloading\",(()=>{this._sourceErrored=!1})),this.on(\"error\",(()=>{this._sourceErrored=this._source.loaded()})),this._source=((t,e,r,n)=>{const i=new(ot(e.type))(t,e,r,n);if(i.id!==t)throw new Error(`Expected Source id to be ${t} instead of ${i.id}`);return i})(t,e,r,this),this._tiles={},this._cache=new ft(0,(t=>this._unloadTile(t))),this._timers={},this._cacheTimers={},this._maxTileCacheSize=null,this._maxTileCacheZoomLevels=null,this._loadedParentTiles={},this._coveredTiles={},this._state=new pt,this._didEmitContent=!1,this._updated=!1}onAdd(t){this.map=t,this._maxTileCacheSize=t?t._maxTileCacheSize:null,this._maxTileCacheZoomLevels=t?t._maxTileCacheZoomLevels:null,this._source&&this._source.onAdd&&this._source.onAdd(t)}onRemove(t){this.clearTiles(),this._source&&this._source.onRemove&&this._source.onRemove(t)}loaded(){if(this._sourceErrored)return!0;if(!this._sourceLoaded)return!1;if(!this._source.loaded())return!1;if(!(void 0===this.used&&void 0===this.usedForTerrain||this.used||this.usedForTerrain))return!0;if(!this._updated)return!1;for(const t in this._tiles){const e=this._tiles[t];if(\"loaded\"!==e.state&&\"errored\"!==e.state)return!1}return!0}getSource(){return this._source}pause(){this._paused=!0}resume(){if(!this._paused)return;const t=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,t&&this.reload(),this.transform&&this.update(this.transform,this.terrain)}_loadTile(t,r,n){return e._(this,void 0,void 0,(function*(){try{yield this._source.loadTile(t),this._tileLoaded(t,r,n)}catch(r){t.state=\"errored\",404!==r.status?this._source.fire(new e.j(r,{tile:t})):this.update(this.transform,this.terrain)}}))}_unloadTile(t){this._source.unloadTile&&this._source.unloadTile(t)}_abortTile(t){this._source.abortTile&&this._source.abortTile(t),this._source.fire(new e.k(\"dataabort\",{tile:t,coord:t.tileID,dataType:\"source\"}))}serialize(){return this._source.serialize()}prepare(t){this._source.prepare&&this._source.prepare(),this._state.coalesceChanges(this._tiles,this.map?this.map.painter:null);for(const e in this._tiles){const r=this._tiles[e];r.upload(t),r.prepare(this.map.style.imageManager)}}getIds(){return Object.values(this._tiles).map((t=>t.tileID)).sort(mt).map((t=>t.key))}getRenderableIds(t){const r=[];for(const e in this._tiles)this._isIdRenderable(e,t)&&r.push(this._tiles[e]);return t?r.sort(((t,r)=>{const n=t.tileID,i=r.tileID,a=new e.P(n.canonical.x,n.canonical.y)._rotate(this.transform.angle),o=new e.P(i.canonical.x,i.canonical.y)._rotate(this.transform.angle);return n.overscaledZ-i.overscaledZ||o.y-a.y||o.x-a.x})).map((t=>t.tileID.key)):r.map((t=>t.tileID)).sort(mt).map((t=>t.key))}hasRenderableParent(t){const e=this.findLoadedParent(t,0);return!!e&&this._isIdRenderable(e.tileID.key)}_isIdRenderable(t,e){return this._tiles[t]&&this._tiles[t].hasData()&&!this._coveredTiles[t]&&(e||!this._tiles[t].holdingForFade())}reload(){if(this._paused)this._shouldReloadOnResume=!0;else{this._cache.reset();for(const t in this._tiles)\"errored\"!==this._tiles[t].state&&this._reloadTile(t,\"reloading\")}}_reloadTile(t,r){return e._(this,void 0,void 0,(function*(){const e=this._tiles[t];e&&(\"loading\"!==e.state&&(e.state=r),yield this._loadTile(e,t,r))}))}_tileLoaded(t,r,n){t.timeAdded=a.now(),\"expired\"===n&&(t.refreshedUponExpiration=!0),this._setTileReloadTimer(r,t),\"raster-dem\"===this.getSource().type&&t.dem&&this._backfillDEM(t),this._state.initializeTileState(t,this.map?this.map.painter:null),t.aborted||this._source.fire(new e.k(\"data\",{dataType:\"source\",tile:t,coord:t.tileID}))}_backfillDEM(t){const e=this.getRenderableIds();for(let n=0;n<e.length;n++){const i=e[n];if(t.neighboringTiles&&t.neighboringTiles[i]){const e=this.getTileByID(i);r(t,e),r(e,t)}}function r(t,e){t.needsHillshadePrepare=!0,t.needsTerrainPrepare=!0;let r=e.tileID.canonical.x-t.tileID.canonical.x;const n=e.tileID.canonical.y-t.tileID.canonical.y,i=Math.pow(2,t.tileID.canonical.z),a=e.tileID.key;0===r&&0===n||Math.abs(n)>1||(Math.abs(r)>1&&(1===Math.abs(r+i)?r+=i:1===Math.abs(r-i)&&(r-=i)),e.dem&&t.dem&&(t.dem.backfillBorder(e.dem,r,n),t.neighboringTiles&&t.neighboringTiles[a]&&(t.neighboringTiles[a].backfilled=!0)))}}getTile(t){return this.getTileByID(t.key)}getTileByID(t){return this._tiles[t]}_retainLoadedChildren(t,e,r,n){for(const i in this._tiles){let a=this._tiles[i];if(n[i]||!a.hasData()||a.tileID.overscaledZ<=e||a.tileID.overscaledZ>r)continue;let o=a.tileID;for(;a&&a.tileID.overscaledZ>e+1;){const t=a.tileID.scaledTo(a.tileID.overscaledZ-1);a=this._tiles[t.key],a&&a.hasData()&&(o=t)}let s=o;for(;s.overscaledZ>e;)if(s=s.scaledTo(s.overscaledZ-1),t[s.key]){n[o.key]=o;break}}}findLoadedParent(t,e){if(t.key in this._loadedParentTiles){const r=this._loadedParentTiles[t.key];return r&&r.tileID.overscaledZ>=e?r:null}for(let r=t.overscaledZ-1;r>=e;r--){const e=t.scaledTo(r),n=this._getLoadedTile(e);if(n)return n}}findLoadedSibling(t){return this._getLoadedTile(t)}_getLoadedTile(t){const e=this._tiles[t.key];return e&&e.hasData()?e:this._cache.getByKey(t.wrapped().key)}updateCacheSize(t){const r=(Math.ceil(t.width/this._source.tileSize)+1)*(Math.ceil(t.height/this._source.tileSize)+1),n=null===this._maxTileCacheZoomLevels?e.a.MAX_TILE_CACHE_ZOOM_LEVELS:this._maxTileCacheZoomLevels,i=Math.floor(r*n),a=\"number\"==typeof this._maxTileCacheSize?Math.min(this._maxTileCacheSize,i):i;this._cache.setMaxSize(a)}handleWrapJump(t){const e=(t-(void 0===this._prevLng?t:this._prevLng))/360,r=Math.round(e);if(this._prevLng=t,r){const t={};for(const e in this._tiles){const n=this._tiles[e];n.tileID=n.tileID.unwrapTo(n.tileID.wrap+r),t[n.tileID.key]=n}this._tiles=t;for(const t in this._timers)clearTimeout(this._timers[t]),delete this._timers[t];for(const t in this._tiles){const e=this._tiles[t];this._setTileReloadTimer(t,e)}}}_updateCoveredAndRetainedTiles(t,e,r,n,i,o){const s={},l={},c=Object.keys(t),u=a.now();for(const r of c){const n=t[r],i=this._tiles[r];if(!i||0!==i.fadeEndTime&&i.fadeEndTime<=u)continue;const a=this.findLoadedParent(n,e),o=this.findLoadedSibling(n),c=a||o||null;c&&(this._addTile(c.tileID),s[c.tileID.key]=c.tileID),l[r]=n}this._retainLoadedChildren(l,n,r,t);for(const e in s)t[e]||(this._coveredTiles[e]=!0,t[e]=s[e]);if(o){const e={},r={};for(const t of i)this._tiles[t.key].hasData()?e[t.key]=t:r[t.key]=t;for(const n in r){const i=r[n].children(this._source.maxzoom);this._tiles[i[0].key]&&this._tiles[i[1].key]&&this._tiles[i[2].key]&&this._tiles[i[3].key]&&(e[i[0].key]=t[i[0].key]=i[0],e[i[1].key]=t[i[1].key]=i[1],e[i[2].key]=t[i[2].key]=i[2],e[i[3].key]=t[i[3].key]=i[3],delete r[n])}for(const n in r){const i=r[n],a=this.findLoadedParent(i,this._source.minzoom),o=this.findLoadedSibling(i),s=a||o||null;if(s){e[s.tileID.key]=t[s.tileID.key]=s.tileID;for(const t in e)e[t].isChildOf(s.tileID)&&delete e[t]}}for(const t in this._tiles)e[t]||(this._coveredTiles[t]=!0)}}update(t,r){if(!this._sourceLoaded||this._paused)return;let n;this.transform=t,this.terrain=r,this.updateCacheSize(t),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={},this.used||this.usedForTerrain?this._source.tileID?n=t.getVisibleUnwrappedCoordinates(this._source.tileID).map((t=>new e.S(t.canonical.z,t.wrap,t.canonical.z,t.canonical.x,t.canonical.y))):(n=t.coveringTiles({tileSize:this.usedForTerrain?this.tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:!this.usedForTerrain&&this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled,terrain:r}),this._source.hasTile&&(n=n.filter((t=>this._source.hasTile(t))))):n=[];const i=t.coveringZoomLevel(this._source),a=Math.max(i-dt.maxOverzooming,this._source.minzoom),o=Math.max(i+dt.maxUnderzooming,this._source.minzoom);if(this.usedForTerrain){const t={};for(const e of n)if(e.canonical.z>this._source.minzoom){const r=e.scaledTo(e.canonical.z-1);t[r.key]=r;const n=e.scaledTo(Math.max(this._source.minzoom,Math.min(e.canonical.z,5)));t[n.key]=n}n=n.concat(Object.values(t))}const s=0===n.length&&!this._updated&&this._didEmitContent;this._updated=!0,s&&this.fire(new e.k(\"data\",{sourceDataType:\"idle\",dataType:\"source\",sourceId:this.id}));const l=this._updateRetainedTiles(n,i);gt(this._source.type)&&this._updateCoveredAndRetainedTiles(l,a,o,i,n,r);for(const t in l)this._tiles[t].clearFadeHold();const c=e.ac(this._tiles,l);for(const t of c){const e=this._tiles[t];e.hasSymbolBuckets&&!e.holdingForFade()?e.setHoldDuration(this.map._fadeDuration):e.hasSymbolBuckets&&!e.symbolFadeFinished()||this._removeTile(t)}this._updateLoadedParentTileCache(),this._updateLoadedSiblingTileCache()}releaseSymbolFadeTiles(){for(const t in this._tiles)this._tiles[t].holdingForFade()&&this._removeTile(t)}_updateRetainedTiles(t,e){var r;const n={},i={},a=Math.max(e-dt.maxOverzooming,this._source.minzoom),o=Math.max(e+dt.maxUnderzooming,this._source.minzoom),s={};for(const r of t){const t=this._addTile(r);n[r.key]=r,t.hasData()||e<this._source.maxzoom&&(s[r.key]=r)}this._retainLoadedChildren(s,e,o,n);for(const o of t){let t=this._tiles[o.key];if(t.hasData())continue;if(e+1>this._source.maxzoom){const t=o.children(this._source.maxzoom)[0],e=this.getTile(t);if(e&&e.hasData()){n[t.key]=t;continue}}else{const t=o.children(this._source.maxzoom);if(n[t[0].key]&&n[t[1].key]&&n[t[2].key]&&n[t[3].key])continue}let s=t.wasRequested();for(let e=o.overscaledZ-1;e>=a;--e){const a=o.scaledTo(e);if(i[a.key])break;if(i[a.key]=!0,t=this.getTile(a),!t&&s&&(t=this._addTile(a)),t){const e=t.hasData();if((e||!(null===(r=this.map)||void 0===r?void 0:r.cancelPendingTileRequestsWhileZooming)||s)&&(n[a.key]=a),s=t.wasRequested(),e)break}}}return n}_updateLoadedParentTileCache(){this._loadedParentTiles={};for(const t in this._tiles){const e=[];let r,n=this._tiles[t].tileID;for(;n.overscaledZ>0;){if(n.key in this._loadedParentTiles){r=this._loadedParentTiles[n.key];break}e.push(n.key);const t=n.scaledTo(n.overscaledZ-1);if(r=this._getLoadedTile(t),r)break;n=t}for(const t of e)this._loadedParentTiles[t]=r}}_updateLoadedSiblingTileCache(){this._loadedSiblingTiles={};for(const t in this._tiles){const e=this._tiles[t].tileID,r=this._getLoadedTile(e);this._loadedSiblingTiles[e.key]=r}}_addTile(t){let r=this._tiles[t.key];if(r)return r;r=this._cache.getAndRemove(t),r&&(this._setTileReloadTimer(t.key,r),r.tileID=t,this._state.initializeTileState(r,this.map?this.map.painter:null),this._cacheTimers[t.key]&&(clearTimeout(this._cacheTimers[t.key]),delete this._cacheTimers[t.key],this._setTileReloadTimer(t.key,r)));const n=r;return r||(r=new ht(t,this._source.tileSize*t.overscaleFactor()),this._loadTile(r,t.key,r.state)),r.uses++,this._tiles[t.key]=r,n||this._source.fire(new e.k(\"dataloading\",{tile:r,coord:r.tileID,dataType:\"source\"})),r}_setTileReloadTimer(t,e){t in this._timers&&(clearTimeout(this._timers[t]),delete this._timers[t]);const r=e.getExpiryTimeout();r&&(this._timers[t]=setTimeout((()=>{this._reloadTile(t,\"expired\"),delete this._timers[t]}),r))}_removeTile(t){const e=this._tiles[t];e&&(e.uses--,delete this._tiles[t],this._timers[t]&&(clearTimeout(this._timers[t]),delete this._timers[t]),e.uses>0||(e.hasData()&&\"reloading\"!==e.state?this._cache.add(e.tileID,e,e.getExpiryTimeout()):(e.aborted=!0,this._abortTile(e),this._unloadTile(e))))}_dataHandler(t){const e=t.sourceDataType;\"source\"===t.dataType&&\"metadata\"===e&&(this._sourceLoaded=!0),this._sourceLoaded&&!this._paused&&\"source\"===t.dataType&&\"content\"===e&&(this.reload(),this.transform&&this.update(this.transform,this.terrain),this._didEmitContent=!0)}clearTiles(){this._shouldReloadOnResume=!1,this._paused=!1;for(const t in this._tiles)this._removeTile(t);this._cache.reset()}tilesIn(t,r,n){const i=[],a=this.transform;if(!a)return i;const o=n?a.getCameraQueryGeometry(t):t,s=t.map((t=>a.pointCoordinate(t,this.terrain))),l=o.map((t=>a.pointCoordinate(t,this.terrain))),c=this.getIds();let u=1/0,h=1/0,f=-1/0,p=-1/0;for(const t of l)u=Math.min(u,t.x),h=Math.min(h,t.y),f=Math.max(f,t.x),p=Math.max(p,t.y);for(let t=0;t<c.length;t++){const n=this._tiles[c[t]];if(n.holdingForFade())continue;const o=n.tileID,d=Math.pow(2,a.zoom-n.tileID.overscaledZ),m=r*n.queryPadding*e.X/n.tileSize/d,g=[o.getTilePoint(new e.Z(u,h)),o.getTilePoint(new e.Z(f,p))];if(g[0].x-m<e.X&&g[0].y-m<e.X&&g[1].x+m>=0&&g[1].y+m>=0){const t=s.map((t=>o.getTilePoint(t))),e=l.map((t=>o.getTilePoint(t)));i.push({tile:n,tileID:o,queryGeometry:t,cameraQueryGeometry:e,scale:d})}}return i}getVisibleCoordinates(t){const e=this.getRenderableIds(t).map((t=>this._tiles[t].tileID));for(const t of e)t.posMatrix=this.transform.calculatePosMatrix(t.toUnwrapped());return e}hasTransition(){if(this._source.hasTransition())return!0;if(gt(this._source.type)){const t=a.now();for(const e in this._tiles)if(this._tiles[e].fadeEndTime>=t)return!0}return!1}setFeatureState(t,e,r){t=t||\"_geojsonTileLayer\",this._state.updateState(t,e,r)}removeFeatureState(t,e,r){t=t||\"_geojsonTileLayer\",this._state.removeFeatureState(t,e,r)}getFeatureState(t,e){return t=t||\"_geojsonTileLayer\",this._state.getState(t,e)}setDependencies(t,e,r){const n=this._tiles[t];n&&n.setDependencies(e,r)}reloadTilesForDependencies(t,e){for(const r in this._tiles)this._tiles[r].hasDependency(t,e)&&this._reloadTile(r,\"reloading\");this._cache.filter((r=>!r.hasDependency(t,e)))}}function mt(t,e){const r=Math.abs(2*t.wrap)-+(t.wrap<0),n=Math.abs(2*e.wrap)-+(e.wrap<0);return t.overscaledZ-e.overscaledZ||n-r||e.canonical.y-t.canonical.y||e.canonical.x-t.canonical.x}function gt(t){return\"raster\"===t||\"image\"===t||\"video\"===t}dt.maxOverzooming=10,dt.maxUnderzooming=3;class yt{constructor(t,e){this.reset(t,e)}reset(t,e){this.points=t||[],this._distances=[0];for(let t=1;t<this.points.length;t++)this._distances[t]=this._distances[t-1]+this.points[t].dist(this.points[t-1]);this.length=this._distances[this._distances.length-1],this.padding=Math.min(e||0,.5*this.length),this.paddedLength=this.length-2*this.padding}lerp(t){if(1===this.points.length)return this.points[0];t=e.ad(t,0,1);let r=1,n=this._distances[r];const i=t*this.paddedLength+this.padding;for(;n<i&&r<this._distances.length;)n=this._distances[++r];const a=r-1,o=this._distances[a],s=n-o,l=s>0?(i-o)/s:0;return this.points[a].mult(1-l).add(this.points[r].mult(l))}}function vt(t,e){let r=!0;return\"always\"===t||\"never\"!==t&&\"never\"!==e||(r=!1),r}class xt{constructor(t,e,r){const n=this.boxCells=[],i=this.circleCells=[];this.xCellCount=Math.ceil(t/r),this.yCellCount=Math.ceil(e/r);for(let t=0;t<this.xCellCount*this.yCellCount;t++)n.push([]),i.push([]);this.circleKeys=[],this.boxKeys=[],this.bboxes=[],this.circles=[],this.width=t,this.height=e,this.xScale=this.xCellCount/t,this.yScale=this.yCellCount/e,this.boxUid=0,this.circleUid=0}keysLength(){return this.boxKeys.length+this.circleKeys.length}insert(t,e,r,n,i){this._forEachCell(e,r,n,i,this._insertBoxCell,this.boxUid++),this.boxKeys.push(t),this.bboxes.push(e),this.bboxes.push(r),this.bboxes.push(n),this.bboxes.push(i)}insertCircle(t,e,r,n){this._forEachCell(e-n,r-n,e+n,r+n,this._insertCircleCell,this.circleUid++),this.circleKeys.push(t),this.circles.push(e),this.circles.push(r),this.circles.push(n)}_insertBoxCell(t,e,r,n,i,a){this.boxCells[i].push(a)}_insertCircleCell(t,e,r,n,i,a){this.circleCells[i].push(a)}_query(t,e,r,n,i,a,o){if(r<0||t>this.width||n<0||e>this.height)return[];const s=[];if(t<=0&&e<=0&&this.width<=r&&this.height<=n){if(i)return[{key:null,x1:t,y1:e,x2:r,y2:n}];for(let t=0;t<this.boxKeys.length;t++)s.push({key:this.boxKeys[t],x1:this.bboxes[4*t],y1:this.bboxes[4*t+1],x2:this.bboxes[4*t+2],y2:this.bboxes[4*t+3]});for(let t=0;t<this.circleKeys.length;t++){const e=this.circles[3*t],r=this.circles[3*t+1],n=this.circles[3*t+2];s.push({key:this.circleKeys[t],x1:e-n,y1:r-n,x2:e+n,y2:r+n})}}else{const l={hitTest:i,overlapMode:a,seenUids:{box:{},circle:{}}};this._forEachCell(t,e,r,n,this._queryCell,s,l,o)}return s}query(t,e,r,n){return this._query(t,e,r,n,!1,null)}hitTest(t,e,r,n,i,a){return this._query(t,e,r,n,!0,i,a).length>0}hitTestCircle(t,e,r,n,i){const a=t-r,o=t+r,s=e-r,l=e+r;if(o<0||a>this.width||l<0||s>this.height)return!1;const c=[],u={hitTest:!0,overlapMode:n,circle:{x:t,y:e,radius:r},seenUids:{box:{},circle:{}}};return this._forEachCell(a,s,o,l,this._queryCellCircle,c,u,i),c.length>0}_queryCell(t,e,r,n,i,a,o,s){const{seenUids:l,hitTest:c,overlapMode:u}=o,h=this.boxCells[i];if(null!==h){const i=this.bboxes;for(const o of h)if(!l.box[o]){l.box[o]=!0;const h=4*o,f=this.boxKeys[o];if(t<=i[h+2]&&e<=i[h+3]&&r>=i[h+0]&&n>=i[h+1]&&(!s||s(f))&&(!c||!vt(u,f.overlapMode))&&(a.push({key:f,x1:i[h],y1:i[h+1],x2:i[h+2],y2:i[h+3]}),c))return!0}}const f=this.circleCells[i];if(null!==f){const i=this.circles;for(const o of f)if(!l.circle[o]){l.circle[o]=!0;const h=3*o,f=this.circleKeys[o];if(this._circleAndRectCollide(i[h],i[h+1],i[h+2],t,e,r,n)&&(!s||s(f))&&(!c||!vt(u,f.overlapMode))){const t=i[h],e=i[h+1],r=i[h+2];if(a.push({key:f,x1:t-r,y1:e-r,x2:t+r,y2:e+r}),c)return!0}}}return!1}_queryCellCircle(t,e,r,n,i,a,o,s){const{circle:l,seenUids:c,overlapMode:u}=o,h=this.boxCells[i];if(null!==h){const t=this.bboxes;for(const e of h)if(!c.box[e]){c.box[e]=!0;const r=4*e,n=this.boxKeys[e];if(this._circleAndRectCollide(l.x,l.y,l.radius,t[r+0],t[r+1],t[r+2],t[r+3])&&(!s||s(n))&&!vt(u,n.overlapMode))return a.push(!0),!0}}const f=this.circleCells[i];if(null!==f){const t=this.circles;for(const e of f)if(!c.circle[e]){c.circle[e]=!0;const r=3*e,n=this.circleKeys[e];if(this._circlesCollide(t[r],t[r+1],t[r+2],l.x,l.y,l.radius)&&(!s||s(n))&&!vt(u,n.overlapMode))return a.push(!0),!0}}}_forEachCell(t,e,r,n,i,a,o,s){const l=this._convertToXCellCoord(t),c=this._convertToYCellCoord(e),u=this._convertToXCellCoord(r),h=this._convertToYCellCoord(n);for(let f=l;f<=u;f++)for(let l=c;l<=h;l++){const c=this.xCellCount*l+f;if(i.call(this,t,e,r,n,c,a,o,s))return}}_convertToXCellCoord(t){return Math.max(0,Math.min(this.xCellCount-1,Math.floor(t*this.xScale)))}_convertToYCellCoord(t){return Math.max(0,Math.min(this.yCellCount-1,Math.floor(t*this.yScale)))}_circlesCollide(t,e,r,n,i,a){const o=n-t,s=i-e,l=r+a;return l*l>o*o+s*s}_circleAndRectCollide(t,e,r,n,i,a,o){const s=(a-n)/2,l=Math.abs(t-(n+s));if(l>s+r)return!1;const c=(o-i)/2,u=Math.abs(e-(i+c));if(u>c+r)return!1;if(l<=s||u<=c)return!0;const h=l-s,f=u-c;return h*h+f*f<=r*r}}function _t(t,r,n,i,a){const o=e.H();return r?(e.K(o,o,[1/a,1/a,1]),n||e.ae(o,o,i.angle)):e.L(o,i.labelPlaneMatrix,t),o}function bt(t,r,n,i,a){if(r){const r=e.af(t);return e.K(r,r,[a,a,1]),n||e.ae(r,r,-i.angle),r}return i.glCoordMatrix}function wt(t,r,n){let i;n?(i=[t.x,t.y,n(t.x,t.y),1],e.ag(i,i,r)):(i=[t.x,t.y,0,1],function(t,e,r){const n=e[0],i=e[1];t[0]=r[0]*n+r[4]*i+r[12],t[1]=r[1]*n+r[5]*i+r[13],t[3]=r[3]*n+r[7]*i+r[15]}(i,i,r));const a=i[3];return{point:new e.P(i[0]/a,i[1]/a),signedDistanceFromCamera:a,isOccluded:!1}}function Tt(t,e){return.5+t/e*.5}function kt(t,e){return t.x>=-e[0]&&t.x<=e[0]&&t.y>=-e[1]&&t.y<=e[1]}function At(t,r,n,i,a,o,s,l,c,u,h,f,p,d,m){const g=i?t.textSizeData:t.iconSizeData,y=e.ah(g,n.transform.zoom),v=[256/n.width*2+1,256/n.height*2+1],x=i?t.text.dynamicLayoutVertexArray:t.icon.dynamicLayoutVertexArray;x.clear();const _=t.lineVertexArray,b=i?t.text.placedSymbolArray:t.icon.placedSymbolArray,w=n.transform.width/n.transform.height;let T=!1;for(let i=0;i<b.length;i++){const k=b.get(i);if(k.hidden||k.writingMode===e.ai.vertical&&!T){Rt(k.numGlyphs,x);continue}T=!1;const A=wt(new e.P(k.anchorX,k.anchorY),r,m);if(!kt(A.point,v)){Rt(k.numGlyphs,x);continue}const M=A.signedDistanceFromCamera,S=Tt(n.transform.cameraToCenterDistance,M),E=e.aj(g,y,k),C=s?E/S:E*S,L={getElevation:m,labelPlaneMatrix:a,lineVertexArray:_,pitchWithMap:s,projectionCache:{projections:{},offsets:{},cachedAnchorPoint:void 0,anyProjectionOccluded:!1},projection:u,tileAnchorPoint:new e.P(k.anchorX,k.anchorY),unwrappedTileID:h,width:f,height:p,translation:d},I=Et(L,k,C,!1,l,r,o,t.glyphOffsetArray,x,w,c);T=I.useVertical,(I.notEnoughRoom||T||I.needsFlipping&&Et(L,k,C,!0,l,r,o,t.glyphOffsetArray,x,w,c).notEnoughRoom)&&Rt(k.numGlyphs,x)}i?t.text.dynamicLayoutVertexBuffer.updateData(x):t.icon.dynamicLayoutVertexBuffer.updateData(x)}function Mt(t,e,r,n,i,a,o,s){const l=a.glyphStartIndex+a.numGlyphs,c=a.lineStartIndex,u=a.lineStartIndex+a.lineLength,h=e.getoffsetX(a.glyphStartIndex),f=e.getoffsetX(l-1),p=Ot(t*h,r,n,i,a.segment,c,u,s,o);if(!p)return null;const d=Ot(t*f,r,n,i,a.segment,c,u,s,o);return d?s.projectionCache.anyProjectionOccluded?null:{first:p,last:d}:null}function St(t,r,n,i){return t===e.ai.horizontal&&Math.abs(n.y-r.y)>Math.abs(n.x-r.x)*i?{useVertical:!0}:(t===e.ai.vertical?r.y<n.y:r.x>n.x)?{needsFlipping:!0}:null}function Et(t,r,n,i,a,o,s,l,c,u,h){const f=n/24,p=r.lineOffsetX*f,d=r.lineOffsetY*f;let m;if(r.numGlyphs>1){const e=r.glyphStartIndex+r.numGlyphs,n=r.lineStartIndex,o=r.lineStartIndex+r.lineLength,c=Mt(f,l,p,d,i,r,h,t);if(!c)return{notEnoughRoom:!0};const g=wt(c.first.point,s,t.getElevation).point,y=wt(c.last.point,s,t.getElevation).point;if(a&&!i){const t=St(r.writingMode,g,y,u);if(t)return t}m=[c.first];for(let a=r.glyphStartIndex+1;a<e-1;a++)m.push(Ot(f*l.getoffsetX(a),p,d,i,r.segment,n,o,t,h));m.push(c.last)}else{if(a&&!i){const n=wt(t.tileAnchorPoint,o,t.getElevation).point,i=r.lineStartIndex+r.segment+1,a=new e.P(t.lineVertexArray.getx(i),t.lineVertexArray.gety(i)),s=wt(a,o,t.getElevation),l=s.signedDistanceFromCamera>0?s.point:function(t,e,r,n,i,a){return Ct(t,e,r,n,i,a)}(t.tileAnchorPoint,a,n,1,o,t),c=St(r.writingMode,n,l,u);if(c)return c}const n=Ot(f*l.getoffsetX(r.glyphStartIndex),p,d,i,r.segment,r.lineStartIndex,r.lineStartIndex+r.lineLength,t,h);if(!n||t.projectionCache.anyProjectionOccluded)return{notEnoughRoom:!0};m=[n]}for(const t of m)e.ak(c,t.point,t.angle);return{}}function Ct(t,e,r,n,i,a){const o=t.add(t.sub(e)._unit()),s=void 0!==i?wt(o,i,a.getElevation).point:It(o.x,o.y,a).point,l=r.sub(s);return r.add(l._mult(n/l.mag()))}function Lt(t,r,n){const i=r.projectionCache;if(i.projections[t])return i.projections[t];const a=new e.P(r.lineVertexArray.getx(t),r.lineVertexArray.gety(t)),o=It(a.x,a.y,r);if(o.signedDistanceFromCamera>0)return i.projections[t]=o.point,i.anyProjectionOccluded=i.anyProjectionOccluded||o.isOccluded,o.point;const s=t-n.direction,l=0===n.distanceFromAnchor?r.tileAnchorPoint:new e.P(r.lineVertexArray.getx(s),r.lineVertexArray.gety(s)),c=n.absOffsetX-n.distanceFromAnchor+1;return function(t,e,r,n,i){return Ct(t,e,r,n,void 0,i)}(l,a,n.previousVertex,c,r)}function It(t,r,n){const i=t+n.translation[0],a=r+n.translation[1];let o;return!n.pitchWithMap&&n.projection.useSpecialProjectionForSymbols?(o=n.projection.projectTileCoordinates(i,a,n.unwrappedTileID,n.getElevation),o.point.x=(.5*o.point.x+.5)*n.width,o.point.y=(.5*-o.point.y+.5)*n.height):(o=wt(new e.P(i,a),n.labelPlaneMatrix,n.getElevation),o.isOccluded=!1),o}function Pt(t,e,r){return t._unit()._perp()._mult(e*r)}function zt(t,r,n,i,a,o,s,l,c){if(l.projectionCache.offsets[t])return l.projectionCache.offsets[t];const u=n.add(r);if(t+c.direction<i||t+c.direction>=a)return l.projectionCache.offsets[t]=u,u;const h=Lt(t+c.direction,l,c),f=Pt(h.sub(n),s,c.direction),p=n.add(f),d=h.add(f);return l.projectionCache.offsets[t]=e.al(o,u,p,d)||u,l.projectionCache.offsets[t]}function Ot(t,e,r,n,i,a,o,s,l){const c=n?t-e:t+e;let u=c>0?1:-1,h=0;n&&(u*=-1,h=Math.PI),u<0&&(h+=Math.PI);let f,p=u>0?a+i:a+i+1;s.projectionCache.cachedAnchorPoint?f=s.projectionCache.cachedAnchorPoint:(f=It(s.tileAnchorPoint.x,s.tileAnchorPoint.y,s).point,s.projectionCache.cachedAnchorPoint=f);let d,m,g=f,y=f,v=0,x=0;const _=Math.abs(c),b=[];let w;for(;v+x<=_;){if(p+=u,p<a||p>=o)return null;v+=x,y=g,m=d;const t={absOffsetX:_,direction:u,distanceFromAnchor:v,previousVertex:y};if(g=Lt(p,s,t),0===r)b.push(y),w=g.sub(y);else{let e;const n=g.sub(y);e=0===n.mag()?Pt(Lt(p+u,s,t).sub(g),r,u):Pt(n,r,u),m||(m=y.add(e)),d=zt(p,e,g,a,o,m,r,s,t),b.push(m),w=d.sub(m)}x=w.mag()}const T=(_-v)/x,k=w._mult(T)._add(m||y),A=h+Math.atan2(g.y-y.y,g.x-y.x);return b.push(k),{point:k,angle:l?A:0,path:b}}const 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(t,e){for(let r=0;r<t;r++){const t=e.length;e.resize(t+4),e.float32.set(Dt,3*t)}}const Ft=100;class Bt{constructor(t,e,r=new xt(t.width+200,t.height+200,25),n=new xt(t.width+200,t.height+200,25)){this.transform=t,this.mapProjection=e,this.grid=r,this.ignoredGrid=n,this.pitchFactor=Math.cos(t._pitch)*t.cameraToCenterDistance,this.screenRightBoundary=t.width+Ft,this.screenBottomBoundary=t.height+Ft,this.gridRightBoundary=t.width+200,this.gridBottomBoundary=t.height+200,this.perspectiveRatioCutoff=.6}placeCollisionBox(t,e,r,n,i,a,o,s,l,c,u){const h=t.anchorPointX+s[0],f=t.anchorPointY+s[1],p=this.projectAndGetPerspectiveRatio(n,h,f,i,c),d=this._projectCollisionBox(t,r,n,i,a,o,s,p,c,u),[m,g,y,v]=d.box;return this.mapProjection.useSpecialProjectionForSymbols&&(a?d.allPointsOccluded:this.mapProjection.isOccluded(h,f,i))||p.perspectiveRatio<this.perspectiveRatioCutoff||!this.isInsideGrid(m,g,y,v)||\"always\"!==e&&this.grid.hitTest(m,g,y,v,e,l)?{box:[m,g,y,v],placeable:!1,offscreen:!1}:{box:[m,g,y,v],placeable:!0,offscreen:this.isOffscreen(m,g,y,v)}}placeCollisionCircles(t,r,n,i,a,o,s,l,c,u,h,f,p,d,m,g){const y=[],v=new e.P(r.anchorX,r.anchorY),x=this.getPerspectiveRatio(o,v.x,v.y,s,g),_=(h?a/x:a*x)/e.aq,b=r.lineOffsetX*_,w=r.lineOffsetY*_,T={getElevation:g,labelPlaneMatrix:l,lineVertexArray:n,pitchWithMap:h,projectionCache:{projections:{},offsets:{},cachedAnchorPoint:void 0,anyProjectionOccluded:!1},projection:this.mapProjection,tileAnchorPoint:v,unwrappedTileID:s,width:this.transform.width,height:this.transform.height,translation:m},k=Mt(_,i,b,w,!1,r,!1,T);let A=!1,M=!1,S=!0;if(k){const r=.5*p*x+d,n=new e.P(-100,-100),i=new e.P(this.screenRightBoundary,this.screenBottomBoundary),a=new yt,o=k.first,s=k.last;let l=[];for(let t=o.path.length-1;t>=1;t--)l.push(o.path[t]);for(let t=1;t<s.path.length;t++)l.push(s.path[t]);const h=2.5*r;if(c){const t=this.projectPathToScreenSpace(l,T,c);l=t.some((t=>t.signedDistanceFromCamera<=0))?[]:t.map((t=>t.point))}let m=[];if(l.length>0){const t=l[0].clone(),r=l[0].clone();for(let e=1;e<l.length;e++)t.x=Math.min(t.x,l[e].x),t.y=Math.min(t.y,l[e].y),r.x=Math.max(r.x,l[e].x),r.y=Math.max(r.y,l[e].y);m=t.x>=n.x&&r.x<=i.x&&t.y>=n.y&&r.y<=i.y?[l]:r.x<n.x||t.x>i.x||r.y<n.y||t.y>i.y?[]:e.am([l],n.x,n.y,i.x,i.y)}for(const e of m){a.reset(e,.25*r);let n=0;n=a.length<=.5*r?1:Math.ceil(a.paddedLength/h)+1;for(let e=0;e<n;e++){const i=e/Math.max(n-1,1),o=a.lerp(i),s=o.x+Ft,l=o.y+Ft;y.push(s,l,r,0);const c=s-r,h=l-r,p=s+r,d=l+r;if(S=S&&this.isOffscreen(c,h,p,d),M=M||this.isInsideGrid(c,h,p,d),\"always\"!==t&&this.grid.hitTestCircle(s,l,r,t,f)&&(A=!0,!u))return{circles:[],offscreen:!1,collisionDetected:A}}}}return{circles:!u&&A||!M||x<this.perspectiveRatioCutoff?[]:y,offscreen:S,collisionDetected:A}}projectPathToScreenSpace(t,e,r){return t.map((t=>wt(t,r,e.getElevation)))}queryRenderedSymbols(t){if(0===t.length||0===this.grid.keysLength()&&0===this.ignoredGrid.keysLength())return{};const r=[];let n=1/0,i=1/0,a=-1/0,o=-1/0;for(const s of t){const t=new e.P(s.x+Ft,s.y+Ft);n=Math.min(n,t.x),i=Math.min(i,t.y),a=Math.max(a,t.x),o=Math.max(o,t.y),r.push(t)}const s=this.grid.query(n,i,a,o).concat(this.ignoredGrid.query(n,i,a,o)),l={},c={};for(const t of s){const n=t.key;if(void 0===l[n.bucketInstanceId]&&(l[n.bucketInstanceId]={}),l[n.bucketInstanceId][n.featureIndex])continue;const i=[new e.P(t.x1,t.y1),new e.P(t.x2,t.y1),new e.P(t.x2,t.y2),new e.P(t.x1,t.y2)];e.an(r,i)&&(l[n.bucketInstanceId][n.featureIndex]=!0,void 0===c[n.bucketInstanceId]&&(c[n.bucketInstanceId]=[]),c[n.bucketInstanceId].push(n.featureIndex))}return c}insertCollisionBox(t,e,r,n,i,a){const o={bucketInstanceId:n,featureIndex:i,collisionGroupID:a,overlapMode:e};(r?this.ignoredGrid:this.grid).insert(o,t[0],t[1],t[2],t[3])}insertCollisionCircles(t,e,r,n,i,a){const o=r?this.ignoredGrid:this.grid,s={bucketInstanceId:n,featureIndex:i,collisionGroupID:a,overlapMode:e};for(let e=0;e<t.length;e+=4)o.insertCircle(s,t[e],t[e+1],t[e+2])}projectAndGetPerspectiveRatio(t,r,n,i,a){const o=this.mapProjection.useSpecialProjectionForSymbols?this.mapProjection.projectTileCoordinates(r,n,i,a):wt(new e.P(r,n),t,a);return{point:new e.P((o.point.x+1)/2*this.transform.width+Ft,(1-o.point.y)/2*this.transform.height+Ft),perspectiveRatio:.5+this.transform.cameraToCenterDistance/o.signedDistanceFromCamera*.5,isOccluded:o.isOccluded,signedDistanceFromCamera:o.signedDistanceFromCamera}}getPerspectiveRatio(t,r,n,i,a){const o=this.mapProjection.useSpecialProjectionForSymbols?this.mapProjection.projectTileCoordinates(r,n,i,a):wt(new e.P(r,n),t,a);return.5+this.transform.cameraToCenterDistance/o.signedDistanceFromCamera*.5}isOffscreen(t,e,r,n){return r<Ft||t>=this.screenRightBoundary||n<Ft||e>this.screenBottomBoundary}isInsideGrid(t,e,r,n){return r>=0&&t<this.gridRightBoundary&&n>=0&&e<this.gridBottomBoundary}getViewportMatrix(){const t=e.ao([]);return e.J(t,t,[-100,-100,0]),t}_projectCollisionBox(t,r,n,i,a,o,s,l,c,u){const h=r*l.perspectiveRatio;let f=new e.P(1,0),p=new e.P(0,1);const d=new e.P(t.anchorPointX+s[0],t.anchorPointY+s[1]);if(o&&!a){const t=this.projectAndGetPerspectiveRatio(n,d.x+1,d.y,i,c).point.sub(l.point).unit(),r=Math.atan(t.y/t.x)+(t.x<0?Math.PI:0),a=Math.sin(r),o=Math.cos(r);f=new e.P(o,a),p=new e.P(-a,o)}else if(!o&&a){const t=-this.transform.angle,r=Math.sin(t),n=Math.cos(t);f=new e.P(n,r),p=new e.P(-r,n)}let m=l.point,g=h;if(a){m=d;const t=this.transform.zoom-Math.floor(this.transform.zoom);if(g=Math.pow(2,-t),g*=this.mapProjection.getPitchedTextCorrection(this.transform,d,i),!u){const t=l.signedDistanceFromCamera/this.transform.cameraToCenterDistance;g*=e.ad(.5+.5*t,0,4)}}u&&(m=m.add(f.mult(u.x*g)).add(p.mult(u.y*g)));const y=t.x1*g,v=t.x2*g,x=(y+v)/2,_=t.y1*g,b=t.y2*g,w=(_+b)/2,T=[{offsetX:y,offsetY:_},{offsetX:x,offsetY:_},{offsetX:v,offsetY:_},{offsetX:v,offsetY:w},{offsetX:v,offsetY:b},{offsetX:x,offsetY:b},{offsetX:y,offsetY:b},{offsetX:y,offsetY:w}];let k=[];for(const{offsetX:t,offsetY:r}of T)k.push(new e.P(m.x+f.x*t+p.x*r,m.y+f.y*t+p.y*r));let A=!1;if(a){const t=k.map((t=>this.projectAndGetPerspectiveRatio(n,t.x,t.y,i,c)));A=t.some((t=>!t.isOccluded)),k=t.map((t=>t.point))}else A=!0;return{box:e.ap(k),allPointsOccluded:!A}}}function Nt(t,r,n){return r*(e.X/(t.tileSize*Math.pow(2,n-t.tileID.overscaledZ)))}class jt{constructor(t,e,r,n){this.opacity=t?Math.max(0,Math.min(1,t.opacity+(t.placed?e:-e))):n&&r?1:0,this.placed=r}isHidden(){return 0===this.opacity&&!this.placed}}class Ut{constructor(t,e,r,n,i){this.text=new jt(t?t.text:null,e,r,i),this.icon=new jt(t?t.icon:null,e,n,i)}isHidden(){return this.text.isHidden()&&this.icon.isHidden()}}class Vt{constructor(t,e,r){this.text=t,this.icon=e,this.skipFade=r}}class qt{constructor(){this.invProjMatrix=e.H(),this.viewportMatrix=e.H(),this.circles=[]}}class Ht{constructor(t,e,r,n,i){this.bucketInstanceId=t,this.featureIndex=e,this.sourceLayerIndex=r,this.bucketIndex=n,this.tileID=i}}class Gt{constructor(t){this.crossSourceCollisions=t,this.maxGroupID=0,this.collisionGroups={}}get(t){if(this.crossSourceCollisions)return{ID:0,predicate:null};if(!this.collisionGroups[t]){const e=++this.maxGroupID;this.collisionGroups[t]={ID:e,predicate:t=>t.collisionGroupID===e}}return this.collisionGroups[t]}}function Zt(t,r,n,i,a){const{horizontalAlign:o,verticalAlign:s}=e.av(t),l=-(o-.5)*r,c=-(s-.5)*n;return new e.P(l+i[0]*a,c+i[1]*a)}class Wt{constructor(t,e,r,n,i,a){this.transform=t.clone(),this.terrain=r,this.collisionIndex=new Bt(this.transform,e),this.placements={},this.opacities={},this.variableOffsets={},this.stale=!1,this.commitTime=0,this.fadeDuration=n,this.retainedQueryData={},this.collisionGroups=new Gt(i),this.collisionCircleArrays={},this.collisionBoxArrays=new Map,this.prevPlacement=a,a&&(a.prevPlacement=void 0),this.placedOrientations={}}_getTerrainElevationFunc(t){const e=this.terrain;return e?(r,n)=>e.getElevation(t,r,n):null}getBucketParts(t,r,n,i){const a=n.getBucket(r),o=n.latestFeatureIndex;if(!a||!o||r.id!==a.layerIds[0])return;const s=n.collisionBoxArray,l=a.layers[0].layout,c=a.layers[0].paint,u=Math.pow(2,this.transform.zoom-n.tileID.overscaledZ),h=n.tileSize/e.X,f=n.tileID.toUnwrapped(),p=this.transform.calculatePosMatrix(f),d=\"map\"===l.get(\"text-pitch-alignment\"),m=\"map\"===l.get(\"text-rotation-alignment\"),g=Nt(n,1,this.transform.zoom),y=this.collisionIndex.mapProjection.translatePosition(this.transform,n,c.get(\"text-translate\"),c.get(\"text-translate-anchor\")),v=this.collisionIndex.mapProjection.translatePosition(this.transform,n,c.get(\"icon-translate\"),c.get(\"icon-translate-anchor\")),x=_t(p,d,m,this.transform,g);let _=null;if(d){const t=bt(p,d,m,this.transform,g);_=e.L([],this.transform.labelPlaneMatrix,t)}this.retainedQueryData[a.bucketInstanceId]=new Ht(a.bucketInstanceId,o,a.sourceLayerIndex,a.index,n.tileID);const b={bucket:a,layout:l,translationText:y,translationIcon:v,posMatrix:p,unwrappedTileID:f,textLabelPlaneMatrix:x,labelToScreenMatrix:_,scale:u,textPixelRatio:h,holdingForFade:n.holdingForFade(),collisionBoxArray:s,partiallyEvaluatedTextSize:e.ah(a.textSizeData,this.transform.zoom),collisionGroup:this.collisionGroups.get(a.sourceID)};if(i)for(const e of a.sortKeyRanges){const{sortKey:r,symbolInstanceStart:n,symbolInstanceEnd:i}=e;t.push({sortKey:r,symbolInstanceStart:n,symbolInstanceEnd:i,parameters:b})}else t.push({symbolInstanceStart:0,symbolInstanceEnd:a.symbolInstances.length,parameters:b})}attemptAnchorPlacement(t,r,n,i,a,o,s,l,c,u,h,f,p,d,m,g,y,v,x){const _=e.ar[t.textAnchor],b=[t.textOffset0,t.textOffset1],w=Zt(_,n,i,b,a),T=this.collisionIndex.placeCollisionBox(r,f,l,c,u,s,o,g,h.predicate,x,w);if((!v||this.collisionIndex.placeCollisionBox(v,f,l,c,u,s,o,y,h.predicate,x,w).placeable)&&T.placeable){let t;if(this.prevPlacement&&this.prevPlacement.variableOffsets[p.crossTileID]&&this.prevPlacement.placements[p.crossTileID]&&this.prevPlacement.placements[p.crossTileID].text&&(t=this.prevPlacement.variableOffsets[p.crossTileID].anchor),0===p.crossTileID)throw new Error(\"symbolInstance.crossTileID can't be 0\");return this.variableOffsets[p.crossTileID]={textOffset:b,width:n,height:i,anchor:_,textBoxScale:a,prevAnchor:t},this.markUsedJustification(d,_,p,m),d.allowVerticalPlacement&&(this.markUsedOrientation(d,m,p),this.placedOrientations[p.crossTileID]=m),{shift:w,placedGlyphBoxes:T}}}placeLayerBucketPart(t,r,n){const{bucket:i,layout:a,translationText:o,translationIcon:s,posMatrix:l,unwrappedTileID:c,textLabelPlaneMatrix:u,labelToScreenMatrix:h,textPixelRatio:f,holdingForFade:p,collisionBoxArray:d,partiallyEvaluatedTextSize:m,collisionGroup:g}=t.parameters,y=a.get(\"text-optional\"),v=a.get(\"icon-optional\"),x=e.as(a,\"text-overlap\",\"text-allow-overlap\"),_=\"always\"===x,b=e.as(a,\"icon-overlap\",\"icon-allow-overlap\"),w=\"always\"===b,T=\"map\"===a.get(\"text-rotation-alignment\"),k=\"map\"===a.get(\"text-pitch-alignment\"),A=\"none\"!==a.get(\"icon-text-fit\"),M=\"viewport-y\"===a.get(\"symbol-z-order\"),S=_&&(w||!i.hasIconData()||v),E=w&&(_||!i.hasTextData()||y);!i.collisionArrays&&d&&i.deserializeCollisionBoxes(d);const C=this.retainedQueryData[i.bucketInstanceId].tileID,L=this._getTerrainElevationFunc(C),I=(t,d,w)=>{var M,C;if(r[t.crossTileID])return;if(p)return void(this.placements[t.crossTileID]=new Vt(!1,!1,!1));let I=!1,P=!1,z=!0,O=null,D={box:null,placeable:!1,offscreen:null},R={box:null,placeable:!1,offscreen:null},F=null,B=null,N=null,j=0,U=0,V=0;d.textFeatureIndex?j=d.textFeatureIndex:t.useRuntimeCollisionCircles&&(j=t.featureIndex),d.verticalTextFeatureIndex&&(U=d.verticalTextFeatureIndex);const q=d.textBox;if(q){const r=r=>{let n=e.ai.horizontal;if(i.allowVerticalPlacement&&!r&&this.prevPlacement){const e=this.prevPlacement.placedOrientations[t.crossTileID];e&&(this.placedOrientations[t.crossTileID]=e,n=e,this.markUsedOrientation(i,n,t))}return n},a=(r,n)=>{if(i.allowVerticalPlacement&&t.numVerticalGlyphVertices>0&&d.verticalTextBox){for(const t of i.writingModes)if(t===e.ai.vertical?(D=n(),R=D):D=r(),D&&D.placeable)break}else D=r()},u=t.textAnchorOffsetStartIndex,h=t.textAnchorOffsetEndIndex;if(h===u){const n=(e,r)=>{const n=this.collisionIndex.placeCollisionBox(e,x,f,l,c,k,T,o,g.predicate,L);return n&&n.placeable&&(this.markUsedOrientation(i,r,t),this.placedOrientations[t.crossTileID]=r),n};a((()=>n(q,e.ai.horizontal)),(()=>{const r=d.verticalTextBox;return i.allowVerticalPlacement&&t.numVerticalGlyphVertices>0&&r?n(r,e.ai.vertical):{box:null,offscreen:null}})),r(D&&D.placeable)}else{let p=e.ar[null===(C=null===(M=this.prevPlacement)||void 0===M?void 0:M.variableOffsets[t.crossTileID])||void 0===C?void 0:C.anchor];const m=(r,a,d)=>{const m=r.x2-r.x1,y=r.y2-r.y1,v=t.textBoxScale,_=A&&\"never\"===b?a:null;let w=null,M=\"never\"===x?1:2,S=\"never\";p&&M++;for(let e=0;e<M;e++){for(let e=u;e<h;e++){const n=i.textAnchorOffsets.get(e);if(p&&n.textAnchor!==p)continue;const a=this.attemptAnchorPlacement(n,r,m,y,v,T,k,f,l,c,g,S,t,i,d,o,s,_,L);if(a&&(w=a.placedGlyphBoxes,w&&w.placeable))return I=!0,O=a.shift,w}p?p=null:S=x}return n&&!w&&(w={box:this.collisionIndex.placeCollisionBox(q,\"always\",f,l,c,k,T,o,g.predicate,L,new e.P(0,0)).box,offscreen:!1,placeable:!1}),w};a((()=>m(q,d.iconBox,e.ai.horizontal)),(()=>{const r=d.verticalTextBox,n=D&&D.placeable;return i.allowVerticalPlacement&&!n&&t.numVerticalGlyphVertices>0&&r?m(r,d.verticalIconBox,e.ai.vertical):{box:null,occluded:!0,offscreen:null}})),D&&(I=D.placeable,z=D.offscreen);const y=r(D&&D.placeable);if(!I&&this.prevPlacement){const e=this.prevPlacement.variableOffsets[t.crossTileID];e&&(this.variableOffsets[t.crossTileID]=e,this.markUsedJustification(i,e.anchor,t,y))}}}if(F=D,I=F&&F.placeable,z=F&&F.offscreen,t.useRuntimeCollisionCircles){const r=i.text.placedSymbolArray.get(t.centerJustifiedTextSymbolIndex),s=e.aj(i.textSizeData,m,r),f=a.get(\"text-padding\"),p=t.collisionCircleDiameter;B=this.collisionIndex.placeCollisionCircles(x,r,i.lineVertexArray,i.glyphOffsetArray,s,l,c,u,h,n,k,g.predicate,p,f,o,L),B.circles.length&&B.collisionDetected&&!n&&e.w(\"Collisions detected, but collision boxes are not shown\"),I=_||B.circles.length>0&&!B.collisionDetected,z=z&&B.offscreen}if(d.iconFeatureIndex&&(V=d.iconFeatureIndex),d.iconBox){const t=t=>this.collisionIndex.placeCollisionBox(t,b,f,l,c,k,T,s,g.predicate,L,A&&O?O:void 0);R&&R.placeable&&d.verticalIconBox?(N=t(d.verticalIconBox),P=N.placeable):(N=t(d.iconBox),P=N.placeable),z=z&&N.offscreen}const H=y||0===t.numHorizontalGlyphVertices&&0===t.numVerticalGlyphVertices,G=v||0===t.numIconVertices;H||G?G?H||(P=P&&I):I=P&&I:P=I=P&&I;const Z=I&&F.placeable,W=P&&N.placeable;if(Z&&(R&&R.placeable&&U?this.collisionIndex.insertCollisionBox(F.box,x,a.get(\"text-ignore-placement\"),i.bucketInstanceId,U,g.ID):this.collisionIndex.insertCollisionBox(F.box,x,a.get(\"text-ignore-placement\"),i.bucketInstanceId,j,g.ID)),W&&this.collisionIndex.insertCollisionBox(N.box,b,a.get(\"icon-ignore-placement\"),i.bucketInstanceId,V,g.ID),B&&I&&this.collisionIndex.insertCollisionCircles(B.circles,x,a.get(\"text-ignore-placement\"),i.bucketInstanceId,j,g.ID),n&&this.storeCollisionData(i.bucketInstanceId,w,d,F,N,B),0===t.crossTileID)throw new Error(\"symbolInstance.crossTileID can't be 0\");if(0===i.bucketInstanceId)throw new Error(\"bucket.bucketInstanceId can't be 0\");this.placements[t.crossTileID]=new Vt(I||S,P||E,z||i.justReloaded),r[t.crossTileID]=!0};if(M){if(0!==t.symbolInstanceStart)throw new Error(\"bucket.bucketInstanceId should be 0\");const e=i.getSortedSymbolIndexes(this.transform.angle);for(let t=e.length-1;t>=0;--t){const r=e[t];I(i.symbolInstances.get(r),i.collisionArrays[r],r)}}else for(let e=t.symbolInstanceStart;e<t.symbolInstanceEnd;e++)I(i.symbolInstances.get(e),i.collisionArrays[e],e);if(n&&i.bucketInstanceId in this.collisionCircleArrays){const t=this.collisionCircleArrays[i.bucketInstanceId];e.at(t.invProjMatrix,l),t.viewportMatrix=this.collisionIndex.getViewportMatrix()}i.justReloaded=!1}storeCollisionData(t,e,r,n,i,a){if(r.textBox||r.iconBox){let a,o;this.collisionBoxArrays.has(t)?a=this.collisionBoxArrays.get(t):(a=new Map,this.collisionBoxArrays.set(t,a)),a.has(e)?o=a.get(e):(o={text:null,icon:null},a.set(e,o)),r.textBox&&(o.text=n.box),r.iconBox&&(o.icon=i.box)}if(a){let e=this.collisionCircleArrays[t];void 0===e&&(e=this.collisionCircleArrays[t]=new qt);for(let t=0;t<a.circles.length;t+=4)e.circles.push(a.circles[t+0]),e.circles.push(a.circles[t+1]),e.circles.push(a.circles[t+2]),e.circles.push(a.collisionDetected?1:0)}}markUsedJustification(t,r,n,i){const a={left:n.leftJustifiedTextSymbolIndex,center:n.centerJustifiedTextSymbolIndex,right:n.rightJustifiedTextSymbolIndex};let o;o=i===e.ai.vertical?n.verticalPlacedTextSymbolIndex:a[e.au(r)];const s=[n.leftJustifiedTextSymbolIndex,n.centerJustifiedTextSymbolIndex,n.rightJustifiedTextSymbolIndex,n.verticalPlacedTextSymbolIndex];for(const e of s)e>=0&&(t.text.placedSymbolArray.get(e).crossTileID=o>=0&&e!==o?0:n.crossTileID)}markUsedOrientation(t,r,n){const i=r===e.ai.horizontal||r===e.ai.horizontalOnly?r:0,a=r===e.ai.vertical?r:0,o=[n.leftJustifiedTextSymbolIndex,n.centerJustifiedTextSymbolIndex,n.rightJustifiedTextSymbolIndex];for(const e of o)t.text.placedSymbolArray.get(e).placedOrientation=i;n.verticalPlacedTextSymbolIndex&&(t.text.placedSymbolArray.get(n.verticalPlacedTextSymbolIndex).placedOrientation=a)}commit(t){this.commitTime=t,this.zoomAtLastRecencyCheck=this.transform.zoom;const e=this.prevPlacement;let r=!1;this.prevZoomAdjustment=e?e.zoomAdjustment(this.transform.zoom):0;const n=e?e.symbolFadeChange(t):1,i=e?e.opacities:{},a=e?e.variableOffsets:{},o=e?e.placedOrientations:{};for(const t in this.placements){const e=this.placements[t],a=i[t];a?(this.opacities[t]=new Ut(a,n,e.text,e.icon),r=r||e.text!==a.text.placed||e.icon!==a.icon.placed):(this.opacities[t]=new Ut(null,n,e.text,e.icon,e.skipFade),r=r||e.text||e.icon)}for(const t in i){const e=i[t];if(!this.opacities[t]){const i=new Ut(e,n,!1,!1);i.isHidden()||(this.opacities[t]=i,r=r||e.text.placed||e.icon.placed)}}for(const t in a)this.variableOffsets[t]||!this.opacities[t]||this.opacities[t].isHidden()||(this.variableOffsets[t]=a[t]);for(const t in o)this.placedOrientations[t]||!this.opacities[t]||this.opacities[t].isHidden()||(this.placedOrientations[t]=o[t]);if(e&&void 0===e.lastPlacementChangeTime)throw new Error(\"Last placement time for previous placement is not defined\");r?this.lastPlacementChangeTime=t:\"number\"!=typeof this.lastPlacementChangeTime&&(this.lastPlacementChangeTime=e?e.lastPlacementChangeTime:t)}updateLayerOpacities(t,e){const r={};for(const n of e){const e=n.getBucket(t);e&&n.latestFeatureIndex&&t.id===e.layerIds[0]&&this.updateBucketOpacities(e,n.tileID,r,n.collisionBoxArray)}}updateBucketOpacities(t,r,n,i){t.hasTextData()&&(t.text.opacityVertexArray.clear(),t.text.hasVisibleVertices=!1),t.hasIconData()&&(t.icon.opacityVertexArray.clear(),t.icon.hasVisibleVertices=!1),t.hasIconCollisionBoxData()&&t.iconCollisionBox.collisionVertexArray.clear(),t.hasTextCollisionBoxData()&&t.textCollisionBox.collisionVertexArray.clear();const a=t.layers[0],o=a.layout,s=new Ut(null,0,!1,!1,!0),l=o.get(\"text-allow-overlap\"),c=o.get(\"icon-allow-overlap\"),u=a._unevaluatedLayout.hasValue(\"text-variable-anchor\")||a._unevaluatedLayout.hasValue(\"text-variable-anchor-offset\"),h=\"map\"===o.get(\"text-rotation-alignment\"),f=\"map\"===o.get(\"text-pitch-alignment\"),p=\"none\"!==o.get(\"icon-text-fit\"),d=new Ut(null,0,l&&(c||!t.hasIconData()||o.get(\"icon-optional\")),c&&(l||!t.hasTextData()||o.get(\"text-optional\")),!0);!t.collisionArrays&&i&&(t.hasIconCollisionBoxData()||t.hasTextCollisionBoxData())&&t.deserializeCollisionBoxes(i);const m=(t,e,r)=>{for(let n=0;n<e/4;n++)t.opacityVertexArray.emplaceBack(r);t.hasVisibleVertices=t.hasVisibleVertices||r!==ne},g=this.collisionBoxArrays.get(t.bucketInstanceId);for(let r=0;r<t.symbolInstances.length;r++){const i=t.symbolInstances.get(r),{numHorizontalGlyphVertices:a,numVerticalGlyphVertices:o,crossTileID:l}=i,c=n[l];let y=this.opacities[l];c?y=s:y||(y=d,this.opacities[l]=y),n[l]=!0;const v=a>0||o>0,x=i.numIconVertices>0,_=this.placedOrientations[i.crossTileID],b=_===e.ai.vertical,w=_===e.ai.horizontal||_===e.ai.horizontalOnly;if(v){const e=re(y.text),r=b?ne:e;m(t.text,a,r);const n=w?ne:e;m(t.text,o,n);const s=y.text.isHidden();[i.rightJustifiedTextSymbolIndex,i.centerJustifiedTextSymbolIndex,i.leftJustifiedTextSymbolIndex].forEach((e=>{e>=0&&(t.text.placedSymbolArray.get(e).hidden=s||b?1:0)})),i.verticalPlacedTextSymbolIndex>=0&&(t.text.placedSymbolArray.get(i.verticalPlacedTextSymbolIndex).hidden=s||w?1:0);const l=this.variableOffsets[i.crossTileID];l&&this.markUsedJustification(t,l.anchor,i,_);const c=this.placedOrientations[i.crossTileID];c&&(this.markUsedJustification(t,\"left\",i,c),this.markUsedOrientation(t,c,i))}if(x){const e=re(y.icon),r=!(p&&i.verticalPlacedIconSymbolIndex&&b);if(i.placedIconSymbolIndex>=0){const n=r?e:ne;m(t.icon,i.numIconVertices,n),t.icon.placedSymbolArray.get(i.placedIconSymbolIndex).hidden=y.icon.isHidden()}if(i.verticalPlacedIconSymbolIndex>=0){const n=r?ne:e;m(t.icon,i.numVerticalIconVertices,n),t.icon.placedSymbolArray.get(i.verticalPlacedIconSymbolIndex).hidden=y.icon.isHidden()}}const T=g&&g.has(r)?g.get(r):{text:null,icon:null};if(t.hasIconCollisionBoxData()||t.hasTextCollisionBoxData()){const n=t.collisionArrays[r];if(n){let r=new e.P(0,0);if(n.textBox||n.verticalTextBox){let e=!0;if(u){const t=this.variableOffsets[l];t?(r=Zt(t.anchor,t.width,t.height,t.textOffset,t.textBoxScale),h&&r._rotate(f?this.transform.angle:-this.transform.angle)):e=!1}if(n.textBox||n.verticalTextBox){let i;n.textBox&&(i=b),n.verticalTextBox&&(i=w),Yt(t.textCollisionBox.collisionVertexArray,y.text.placed,!e||i,T.text,r.x,r.y)}}if(n.iconBox||n.verticalIconBox){const e=Boolean(!w&&n.verticalIconBox);let i;n.iconBox&&(i=e),n.verticalIconBox&&(i=!e),Yt(t.iconCollisionBox.collisionVertexArray,y.icon.placed,i,T.icon,p?r.x:0,p?r.y:0)}}}}if(t.sortFeatures(this.transform.angle),this.retainedQueryData[t.bucketInstanceId]&&(this.retainedQueryData[t.bucketInstanceId].featureSortOrder=t.featureSortOrder),t.hasTextData()&&t.text.opacityVertexBuffer&&t.text.opacityVertexBuffer.updateData(t.text.opacityVertexArray),t.hasIconData()&&t.icon.opacityVertexBuffer&&t.icon.opacityVertexBuffer.updateData(t.icon.opacityVertexArray),t.hasIconCollisionBoxData()&&t.iconCollisionBox.collisionVertexBuffer&&t.iconCollisionBox.collisionVertexBuffer.updateData(t.iconCollisionBox.collisionVertexArray),t.hasTextCollisionBoxData()&&t.textCollisionBox.collisionVertexBuffer&&t.textCollisionBox.collisionVertexBuffer.updateData(t.textCollisionBox.collisionVertexArray),t.text.opacityVertexArray.length!==t.text.layoutVertexArray.length/4)throw new Error(`bucket.text.opacityVertexArray.length (= ${t.text.opacityVertexArray.length}) !== bucket.text.layoutVertexArray.length (= ${t.text.layoutVertexArray.length}) / 4`);if(t.icon.opacityVertexArray.length!==t.icon.layoutVertexArray.length/4)throw new Error(`bucket.icon.opacityVertexArray.length (= ${t.icon.opacityVertexArray.length}) !== bucket.icon.layoutVertexArray.length (= ${t.icon.layoutVertexArray.length}) / 4`);if(t.bucketInstanceId in this.collisionCircleArrays){const e=this.collisionCircleArrays[t.bucketInstanceId];t.placementInvProjMatrix=e.invProjMatrix,t.placementViewportMatrix=e.viewportMatrix,t.collisionCircleArray=e.circles,delete this.collisionCircleArrays[t.bucketInstanceId]}}symbolFadeChange(t){return 0===this.fadeDuration?1:(t-this.commitTime)/this.fadeDuration+this.prevZoomAdjustment}zoomAdjustment(t){return Math.max(0,(this.transform.zoom-t)/1.5)}hasTransitions(t){return this.stale||t-this.lastPlacementChangeTime<this.fadeDuration}stillRecent(t,e){const r=this.zoomAtLastRecencyCheck===e?1-this.zoomAdjustment(e):1;return this.zoomAtLastRecencyCheck=e,this.commitTime+this.fadeDuration*r>t}setStale(){this.stale=!0}}function Yt(t,e,r,n,i,a){n&&0!==n.length||(n=[0,0,0,0]);const o=n[0]-Ft,s=n[1]-Ft,l=n[2]-Ft,c=n[3]-Ft;t.emplaceBack(e?1:0,r?1:0,i||0,a||0,o,s),t.emplaceBack(e?1:0,r?1:0,i||0,a||0,l,s),t.emplaceBack(e?1:0,r?1:0,i||0,a||0,l,c),t.emplaceBack(e?1:0,r?1:0,i||0,a||0,o,c)}const Xt=Math.pow(2,25),$t=Math.pow(2,24),Jt=Math.pow(2,17),Kt=Math.pow(2,16),Qt=Math.pow(2,9),te=Math.pow(2,8),ee=Math.pow(2,1);function re(t){if(0===t.opacity&&!t.placed)return 0;if(1===t.opacity&&t.placed)return 4294967295;const e=t.placed?1:0,r=Math.floor(127*t.opacity);return r*Xt+e*$t+r*Jt+e*Kt+r*Qt+e*te+r*ee+e}const ne=0;function ie(){return{isOccluded(t,e,r){return!1},getPitchedTextCorrection(t,e,r){return 1},get useSpecialProjectionForSymbols(){return!1},projectTileCoordinates(t,e,r,n){throw new Error(\"Not implemented.\")},translatePosition(t,e,r,n){return function(t,e,r,n,i=!1){if(!r[0]&&!r[1])return[0,0];const a=i?\"map\"===n?t.angle:0:\"viewport\"===n?-t.angle:0;if(a){const t=Math.sin(a),e=Math.cos(a);r=[r[0]*e-r[1]*t,r[0]*t+r[1]*e]}return[i?r[0]:Nt(e,r[0],t.zoom),i?r[1]:Nt(e,r[1],t.zoom)]}(t,e,r,n)},getCircleRadiusCorrection(t){return 1}}}class ae{constructor(t){this._sortAcrossTiles=\"viewport-y\"!==t.layout.get(\"symbol-z-order\")&&!t.layout.get(\"symbol-sort-key\").isConstant(),this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]}continuePlacement(t,e,r,n,i){const a=this._bucketParts;for(;this._currentTileIndex<t.length;){const r=t[this._currentTileIndex];if(e.getBucketParts(a,n,r,this._sortAcrossTiles),this._currentTileIndex++,i())return!0}for(this._sortAcrossTiles&&(this._sortAcrossTiles=!1,a.sort(((t,e)=>t.sortKey-e.sortKey)));this._currentPartIndex<a.length;){const t=a[this._currentPartIndex];if(e.placeLayerBucketPart(t,this._seenCrossTileIDs,r),this._currentPartIndex++,i())return!0}return!1}}class oe{constructor(t,e,r,n,i,a,o,s){this.placement=new Wt(t,ie(),e,a,o,s),this._currentPlacementIndex=r.length-1,this._forceFullPlacement=n,this._showCollisionBoxes=i,this._done=!1}isDone(){return this._done}continuePlacement(t,e,r){const n=a.now(),i=()=>!this._forceFullPlacement&&a.now()-n>2;for(;this._currentPlacementIndex>=0;){const n=e[t[this._currentPlacementIndex]],a=this.placement.collisionIndex.transform.zoom;if(\"symbol\"===n.type&&(!n.minzoom||n.minzoom<=a)&&(!n.maxzoom||n.maxzoom>a)){if(this._inProgressLayer||(this._inProgressLayer=new ae(n)),this._inProgressLayer.continuePlacement(r[n.source],this.placement,this._showCollisionBoxes,n,i))return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0}commit(t){return this.placement.commit(t),this.placement}}const se=512/e.X/2;class le{constructor(t,r,n){this.tileID=t,this.bucketInstanceId=n,this._symbolsByKey={};const i=new Map;for(let t=0;t<r.length;t++){const e=r.get(t),n=e.key,a=i.get(n);a?a.push(e):i.set(n,[e])}for(const[t,r]of i){const n={positions:r.map((t=>({x:Math.floor(t.anchorX*se),y:Math.floor(t.anchorY*se)}))),crossTileIDs:r.map((t=>t.crossTileID))};if(n.positions.length>128){const t=new e.aw(n.positions.length,16,Uint16Array);for(const{x:e,y:r}of n.positions)t.add(e,r);t.finish(),delete n.positions,n.index=t}this._symbolsByKey[t]=n}}getScaledCoordinates(t,r){const{x:n,y:i,z:a}=this.tileID.canonical,{x:o,y:s,z:l}=r.canonical,c=l-a,u=se/Math.pow(2,c),h=(o*e.X+t.anchorX)*u,f=(s*e.X+t.anchorY)*u,p=n*e.X*se,d=i*e.X*se;return{x:Math.floor(h-p),y:Math.floor(f-d)}}findMatches(t,e,r){const n=this.tileID.canonical.z<e.canonical.z?1:Math.pow(2,this.tileID.canonical.z-e.canonical.z);for(let i=0;i<t.length;i++){const a=t.get(i);if(a.crossTileID)continue;const o=this._symbolsByKey[a.key];if(!o)continue;const s=this.getScaledCoordinates(a,e);if(o.index){const t=o.index.range(s.x-n,s.y-n,s.x+n,s.y+n).sort();for(const e of t){const t=o.crossTileIDs[e];if(!r[t]){r[t]=!0,a.crossTileID=t;break}}}else if(o.positions)for(let t=0;t<o.positions.length;t++){const e=o.positions[t],i=o.crossTileIDs[t];if(Math.abs(e.x-s.x)<=n&&Math.abs(e.y-s.y)<=n&&!r[i]){r[i]=!0,a.crossTileID=i;break}}}}getCrossTileIDsLists(){return Object.values(this._symbolsByKey).map((({crossTileIDs:t})=>t))}}class ce{constructor(){this.maxCrossTileID=0}generate(){return++this.maxCrossTileID}}class ue{constructor(){this.indexes={},this.usedCrossTileIDs={},this.lng=0}handleWrapJump(t){const e=Math.round((t-this.lng)/360);if(0!==e)for(const t in this.indexes){const r=this.indexes[t],n={};for(const t in r){const i=r[t];i.tileID=i.tileID.unwrapTo(i.tileID.wrap+e),n[i.tileID.key]=i}this.indexes[t]=n}this.lng=t}addBucket(t,e,r){if(this.indexes[t.overscaledZ]&&this.indexes[t.overscaledZ][t.key]){if(this.indexes[t.overscaledZ][t.key].bucketInstanceId===e.bucketInstanceId)return!1;this.removeBucketCrossTileIDs(t.overscaledZ,this.indexes[t.overscaledZ][t.key])}for(let t=0;t<e.symbolInstances.length;t++)e.symbolInstances.get(t).crossTileID=0;this.usedCrossTileIDs[t.overscaledZ]||(this.usedCrossTileIDs[t.overscaledZ]={});const n=this.usedCrossTileIDs[t.overscaledZ];for(const r in this.indexes){const i=this.indexes[r];if(Number(r)>t.overscaledZ)for(const r in i){const a=i[r];a.tileID.isChildOf(t)&&a.findMatches(e.symbolInstances,t,n)}else{const a=i[t.scaledTo(Number(r)).key];a&&a.findMatches(e.symbolInstances,t,n)}}for(let t=0;t<e.symbolInstances.length;t++){const i=e.symbolInstances.get(t);i.crossTileID||(i.crossTileID=r.generate(),n[i.crossTileID]=!0)}return void 0===this.indexes[t.overscaledZ]&&(this.indexes[t.overscaledZ]={}),this.indexes[t.overscaledZ][t.key]=new le(t,e.symbolInstances,e.bucketInstanceId),!0}removeBucketCrossTileIDs(t,e){for(const r of e.getCrossTileIDsLists())for(const e of r)delete this.usedCrossTileIDs[t][e]}removeStaleBuckets(t){let e=!1;for(const r in this.indexes){const n=this.indexes[r];for(const i in n)t[n[i].bucketInstanceId]||(this.removeBucketCrossTileIDs(r,n[i]),delete n[i],e=!0)}return e}}class he{constructor(){this.layerIndexes={},this.crossTileIDs=new ce,this.maxBucketInstanceId=0,this.bucketsInCurrentPlacement={}}addLayer(t,e,r){let n=this.layerIndexes[t.id];void 0===n&&(n=this.layerIndexes[t.id]=new ue);let i=!1;const a={};n.handleWrapJump(r);for(const r of e){const e=r.getBucket(t);e&&t.id===e.layerIds[0]&&(e.bucketInstanceId||(e.bucketInstanceId=++this.maxBucketInstanceId),n.addBucket(r.tileID,e,this.crossTileIDs)&&(i=!0),a[e.bucketInstanceId]=!0)}return n.removeStaleBuckets(a)&&(i=!0),i}pruneUnusedLayers(t){const e={};t.forEach((t=>{e[t]=!0}));for(const t in this.layerIndexes)e[t]||delete this.layerIndexes[t]}}const fe=(t,r)=>e.t(t,r&&r.filter((t=>\"source.canvas\"!==t.identifier))),pe=e.ax();class de extends e.E{constructor(t,r={}){super(),this._rtlPluginLoaded=()=>{for(const t in this.sourceCaches){const e=this.sourceCaches[t].getSource().type;\"vector\"!==e&&\"geojson\"!==e||this.sourceCaches[t].reload()}},this.map=t,this.dispatcher=new q(V(),t._getMapId()),this.dispatcher.registerMessageHandler(\"GG\",((t,e)=>this.getGlyphs(t,e))),this.dispatcher.registerMessageHandler(\"GI\",((t,e)=>this.getImages(t,e))),this.imageManager=new k,this.imageManager.setEventedParent(this),this.glyphManager=new E(t._requestManager,r.localIdeographFontFamily),this.lineAtlas=new R(256,512),this.crossTileSymbolIndex=new he,this._spritesImagesIds={},this._layers={},this._order=[],this.sourceCaches={},this.zoomHistory=new e.ay,this._loaded=!1,this._availableImages=[],this._resetUpdates(),this.dispatcher.broadcast(\"SR\",e.az()),ut().on(st,this._rtlPluginLoaded),this.on(\"data\",(t=>{if(\"source\"!==t.dataType||\"metadata\"!==t.sourceDataType)return;const e=this.sourceCaches[t.sourceId];if(!e)return;const r=e.getSource();if(r&&r.vectorLayerIds)for(const t in this._layers){const e=this._layers[t];e.source===r.id&&this._validateLayer(e)}}))}loadURL(t,r={},n){this.fire(new e.k(\"dataloading\",{dataType:\"style\"})),r.validate=\"boolean\"!=typeof r.validate||r.validate;const i=this.map._requestManager.transformRequest(t,\"Style\");this._loadStyleRequest=new AbortController;const a=this._loadStyleRequest;e.h(i,this._loadStyleRequest).then((t=>{this._loadStyleRequest=null,this._load(t.data,r,n)})).catch((t=>{this._loadStyleRequest=null,t&&!a.signal.aborted&&this.fire(new e.j(t))}))}loadJSON(t,r={},n){this.fire(new e.k(\"dataloading\",{dataType:\"style\"})),this._frameRequest=new AbortController,a.frameAsync(this._frameRequest).then((()=>{this._frameRequest=null,r.validate=!1!==r.validate,this._load(t,r,n)})).catch((()=>{}))}loadEmpty(){this.fire(new e.k(\"dataloading\",{dataType:\"style\"})),this._load(pe,{validate:!1})}_load(t,r,n){var i;const a=r.transformStyle?r.transformStyle(n,t):t;if(!r.validate||!fe(this,e.x(a))){this._loaded=!0,this.stylesheet=a;for(const t in a.sources)this.addSource(t,a.sources[t],{validate:!1});a.sprite?this._loadSprite(a.sprite):this.imageManager.setLoaded(!0),this.glyphManager.setURL(a.glyphs),this._createLayers(),this.light=new P(this.stylesheet.light),this.sky=new D(this.stylesheet.sky),this.map.setTerrain(null!==(i=this.stylesheet.terrain)&&void 0!==i?i:null),this.fire(new e.k(\"data\",{dataType:\"style\"})),this.fire(new e.k(\"style.load\"))}}_createLayers(){const t=e.aA(this.stylesheet.layers);this.dispatcher.broadcast(\"SL\",t),this._order=t.map((t=>t.id)),this._layers={},this._serializedLayers=null;for(const r of t){const t=e.aB(r);t.setEventedParent(this,{layer:{id:r.id}}),this._layers[r.id]=t}}_loadSprite(t,r=!1,n=void 0){let i;this.imageManager.setLoaded(!1),this._spriteRequest=new AbortController,b(t,this.map._requestManager,this.map.getPixelRatio(),this._spriteRequest).then((t=>{if(this._spriteRequest=null,t)for(const e in t){this._spritesImagesIds[e]=[];const n=this._spritesImagesIds[e]?this._spritesImagesIds[e].filter((e=>!(e in t))):[];for(const t of n)this.imageManager.removeImage(t),this._changedImages[t]=!0;for(const n in t[e]){const i=\"default\"===e?n:`${e}:${n}`;this._spritesImagesIds[e].push(i),i in this.imageManager.images?this.imageManager.updateImage(i,t[e][n],!1):this.imageManager.addImage(i,t[e][n]),r&&(this._changedImages[i]=!0)}}})).catch((t=>{this._spriteRequest=null,i=t,this.fire(new e.j(i))})).finally((()=>{this.imageManager.setLoaded(!0),this._availableImages=this.imageManager.listImages(),r&&(this._changed=!0),this.dispatcher.broadcast(\"SI\",this._availableImages),this.fire(new e.k(\"data\",{dataType:\"style\"})),n&&n(i)}))}_unloadSprite(){for(const t of Object.values(this._spritesImagesIds).flat())this.imageManager.removeImage(t),this._changedImages[t]=!0;this._spritesImagesIds={},this._availableImages=this.imageManager.listImages(),this._changed=!0,this.dispatcher.broadcast(\"SI\",this._availableImages),this.fire(new e.k(\"data\",{dataType:\"style\"}))}_validateLayer(t){const r=this.sourceCaches[t.source];if(!r)return;const n=t.sourceLayer;if(!n)return;const i=r.getSource();(\"geojson\"===i.type||i.vectorLayerIds&&-1===i.vectorLayerIds.indexOf(n))&&this.fire(new e.j(new Error(`Source layer \"${n}\" does not exist on source \"${i.id}\" as specified by style layer \"${t.id}\".`)))}loaded(){if(!this._loaded)return!1;if(Object.keys(this._updatedSources).length)return!1;for(const t in this.sourceCaches)if(!this.sourceCaches[t].loaded())return!1;return!!this.imageManager.isLoaded()}_serializeByIds(t){const e=this._serializedAllLayers();if(!t||0===t.length)return Object.values(e);const r=[];for(const n of t)e[n]&&r.push(e[n]);return r}_serializedAllLayers(){let t=this._serializedLayers;if(t)return t;t=this._serializedLayers={};const e=Object.keys(this._layers);for(const r of e){const e=this._layers[r];\"custom\"!==e.type&&(t[r]=e.serialize())}return t}hasTransitions(){if(this.light&&this.light.hasTransition())return!0;if(this.sky&&this.sky.hasTransition())return!0;for(const t in this.sourceCaches)if(this.sourceCaches[t].hasTransition())return!0;for(const t in this._layers)if(this._layers[t].hasTransition())return!0;return!1}_checkLoaded(){if(!this._loaded)throw new Error(\"Style is not done loading.\")}update(t){if(!this._loaded)return;const r=this._changed;if(r){const e=Object.keys(this._updatedLayers),r=Object.keys(this._removedLayers);(e.length||r.length)&&this._updateWorkerLayers(e,r);for(const t in this._updatedSources){const e=this._updatedSources[t];if(\"reload\"===e)this._reloadSource(t);else{if(\"clear\"!==e)throw new Error(`Invalid action ${e}`);this._clearSource(t)}}this._updateTilesForChangedImages(),this._updateTilesForChangedGlyphs();for(const e in this._updatedPaintProps)this._layers[e].updateTransitions(t);this.light.updateTransitions(t),this.sky.updateTransitions(t),this._resetUpdates()}const n={};for(const t in this.sourceCaches){const e=this.sourceCaches[t];n[t]=e.used,e.used=!1}for(const e of this._order){const r=this._layers[e];r.recalculate(t,this._availableImages),!r.isHidden(t.zoom)&&r.source&&(this.sourceCaches[r.source].used=!0)}for(const t in n){const r=this.sourceCaches[t];!!n[t]!=!!r.used&&r.fire(new e.k(\"data\",{sourceDataType:\"visibility\",dataType:\"source\",sourceId:t}))}this.light.recalculate(t),this.sky.recalculate(t),this.z=t.zoom,r&&this.fire(new e.k(\"data\",{dataType:\"style\"}))}_updateTilesForChangedImages(){const t=Object.keys(this._changedImages);if(t.length){for(const e in this.sourceCaches)this.sourceCaches[e].reloadTilesForDependencies([\"icons\",\"patterns\"],t);this._changedImages={}}}_updateTilesForChangedGlyphs(){if(this._glyphsDidChange){for(const t in this.sourceCaches)this.sourceCaches[t].reloadTilesForDependencies([\"glyphs\"],[\"\"]);this._glyphsDidChange=!1}}_updateWorkerLayers(t,e){this.dispatcher.broadcast(\"UL\",{layers:this._serializeByIds(t),removedIds:e})}_resetUpdates(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSources={},this._updatedPaintProps={},this._changedImages={},this._glyphsDidChange=!1}setState(t,r={}){var n;this._checkLoaded();const i=this.serialize();if(t=r.transformStyle?r.transformStyle(i,t):t,(null===(n=r.validate)||void 0===n||n)&&fe(this,e.x(t)))return!1;(t=e.aC(t)).layers=e.aA(t.layers);const a=e.aD(i,t),o=this._getOperationsToPerform(a);if(o.unimplemented.length>0)throw new Error(`Unimplemented: ${o.unimplemented.join(\", \")}.`);if(0===o.operations.length)return!1;for(const t of o.operations)t();return this.stylesheet=t,this._serializedLayers=null,!0}_getOperationsToPerform(t){const e=[],r=[];for(const n of t)switch(n.command){case\"setCenter\":case\"setZoom\":case\"setBearing\":case\"setPitch\":continue;case\"addLayer\":e.push((()=>this.addLayer.apply(this,n.args)));break;case\"removeLayer\":e.push((()=>this.removeLayer.apply(this,n.args)));break;case\"setPaintProperty\":e.push((()=>this.setPaintProperty.apply(this,n.args)));break;case\"setLayoutProperty\":e.push((()=>this.setLayoutProperty.apply(this,n.args)));break;case\"setFilter\":e.push((()=>this.setFilter.apply(this,n.args)));break;case\"addSource\":e.push((()=>this.addSource.apply(this,n.args)));break;case\"removeSource\":e.push((()=>this.removeSource.apply(this,n.args)));break;case\"setLayerZoomRange\":e.push((()=>this.setLayerZoomRange.apply(this,n.args)));break;case\"setLight\":e.push((()=>this.setLight.apply(this,n.args)));break;case\"setGeoJSONSourceData\":e.push((()=>this.setGeoJSONSourceData.apply(this,n.args)));break;case\"setGlyphs\":e.push((()=>this.setGlyphs.apply(this,n.args)));break;case\"setSprite\":e.push((()=>this.setSprite.apply(this,n.args)));break;case\"setSky\":e.push((()=>this.setSky.apply(this,n.args)));break;case\"setTerrain\":e.push((()=>this.map.setTerrain.apply(this,n.args)));break;case\"setTransition\":e.push((()=>{}));break;default:r.push(n.command)}return{operations:e,unimplemented:r}}addImage(t,r){if(this.getImage(t))return this.fire(new e.j(new Error(`An image named \"${t}\" already exists.`)));this.imageManager.addImage(t,r),this._afterImageUpdated(t)}updateImage(t,e){this.imageManager.updateImage(t,e)}getImage(t){return this.imageManager.getImage(t)}removeImage(t){if(!this.getImage(t))return this.fire(new e.j(new Error(`An image named \"${t}\" does not exist.`)));this.imageManager.removeImage(t),this._afterImageUpdated(t)}_afterImageUpdated(t){this._availableImages=this.imageManager.listImages(),this._changedImages[t]=!0,this._changed=!0,this.dispatcher.broadcast(\"SI\",this._availableImages),this.fire(new e.k(\"data\",{dataType:\"style\"}))}listImages(){return this._checkLoaded(),this.imageManager.listImages()}addSource(t,r,n={}){if(this._checkLoaded(),void 0!==this.sourceCaches[t])throw new Error(`Source \"${t}\" already exists.`);if(!r.type)throw new Error(`The type property must be defined, but only the following properties were given: ${Object.keys(r).join(\", \")}.`);if([\"vector\",\"raster\",\"geojson\",\"video\",\"image\"].indexOf(r.type)>=0&&this._validate(e.x.source,`sources.${t}`,r,null,n))return;this.map&&this.map._collectResourceTiming&&(r.collectResourceTiming=!0);const i=this.sourceCaches[t]=new dt(t,r,this.dispatcher);i.style=this,i.setEventedParent(this,(()=>({isSourceLoaded:i.loaded(),source:i.serialize(),sourceId:t}))),i.onAdd(this.map),this._changed=!0}removeSource(t){if(this._checkLoaded(),void 0===this.sourceCaches[t])throw new Error(\"There is no source with this ID\");for(const r in this._layers)if(this._layers[r].source===t)return this.fire(new e.j(new Error(`Source \"${t}\" cannot be removed while layer \"${r}\" is using it.`)));const r=this.sourceCaches[t];delete this.sourceCaches[t],delete this._updatedSources[t],r.fire(new e.k(\"data\",{sourceDataType:\"metadata\",dataType:\"source\",sourceId:t})),r.setEventedParent(null),r.onRemove(this.map),this._changed=!0}setGeoJSONSourceData(t,e){if(this._checkLoaded(),void 0===this.sourceCaches[t])throw new Error(`There is no source with this ID=${t}`);const r=this.sourceCaches[t].getSource();if(\"geojson\"!==r.type)throw new Error(`geojsonSource.type is ${r.type}, which is !== 'geojson`);r.setData(e),this._changed=!0}getSource(t){return this.sourceCaches[t]&&this.sourceCaches[t].getSource()}addLayer(t,r,n={}){this._checkLoaded();const i=t.id;if(this.getLayer(i))return void this.fire(new e.j(new Error(`Layer \"${i}\" already exists on this map.`)));let a;if(\"custom\"===t.type){if(fe(this,e.aE(t)))return;a=e.aB(t)}else{if(\"source\"in t&&\"object\"==typeof t.source&&(this.addSource(i,t.source),t=e.aC(t),t=e.e(t,{source:i})),this._validate(e.x.layer,`layers.${i}`,t,{arrayIndex:-1},n))return;a=e.aB(t),this._validateLayer(a),a.setEventedParent(this,{layer:{id:i}})}const o=r?this._order.indexOf(r):this._order.length;if(r&&-1===o)this.fire(new e.j(new Error(`Cannot add layer \"${i}\" before non-existing layer \"${r}\".`)));else{if(this._order.splice(o,0,i),this._layerOrderChanged=!0,this._layers[i]=a,this._removedLayers[i]&&a.source&&\"custom\"!==a.type){const t=this._removedLayers[i];delete this._removedLayers[i],t.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)}}moveLayer(t,r){if(this._checkLoaded(),this._changed=!0,!this._layers[t])return void this.fire(new e.j(new Error(`The layer '${t}' does not exist in the map's style and cannot be moved.`)));if(t===r)return;const n=this._order.indexOf(t);this._order.splice(n,1);const i=r?this._order.indexOf(r):this._order.length;r&&-1===i?this.fire(new e.j(new Error(`Cannot move layer \"${t}\" before non-existing layer \"${r}\".`))):(this._order.splice(i,0,t),this._layerOrderChanged=!0)}removeLayer(t){this._checkLoaded();const r=this._layers[t];if(!r)return void this.fire(new e.j(new Error(`Cannot remove non-existing layer \"${t}\".`)));r.setEventedParent(null);const n=this._order.indexOf(t);this._order.splice(n,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[t]=r,delete this._layers[t],this._serializedLayers&&delete this._serializedLayers[t],delete this._updatedLayers[t],delete this._updatedPaintProps[t],r.onRemove&&r.onRemove(this.map)}getLayer(t){return this._layers[t]}getLayersOrder(){return[...this._order]}hasLayer(t){return t in this._layers}setLayerZoomRange(t,r,n){this._checkLoaded();const 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.j(new Error(`Cannot set the zoom range of non-existing layer \"${t}\".`)))}setFilter(t,r,n={}){this._checkLoaded();const i=this.getLayer(t);if(i){if(!e.aF(i.filter,r))return null==r?(i.filter=void 0,void this._updateLayer(i)):void(this._validate(e.x.filter,`layers.${i.id}.filter`,r,null,n)||(i.filter=e.aC(r),this._updateLayer(i)))}else this.fire(new e.j(new Error(`Cannot filter non-existing layer \"${t}\".`)))}getFilter(t){return e.aC(this.getLayer(t).filter)}setLayoutProperty(t,r,n,i={}){this._checkLoaded();const a=this.getLayer(t);a?e.aF(a.getLayoutProperty(r),n)||(a.setLayoutProperty(r,n,i),this._updateLayer(a)):this.fire(new e.j(new Error(`Cannot style non-existing layer \"${t}\".`)))}getLayoutProperty(t,r){const n=this.getLayer(t);if(n)return n.getLayoutProperty(r);this.fire(new e.j(new Error(`Cannot get style of non-existing layer \"${t}\".`)))}setPaintProperty(t,r,n,i={}){this._checkLoaded();const a=this.getLayer(t);a?e.aF(a.getPaintProperty(r),n)||(a.setPaintProperty(r,n,i)&&this._updateLayer(a),this._changed=!0,this._updatedPaintProps[t]=!0,this._serializedLayers=null):this.fire(new e.j(new Error(`Cannot style non-existing layer \"${t}\".`)))}getPaintProperty(t,e){return this.getLayer(t).getPaintProperty(e)}setFeatureState(t,r){this._checkLoaded();const n=t.source,i=t.sourceLayer,a=this.sourceCaches[n];if(void 0===a)return void this.fire(new e.j(new Error(`The source '${n}' does not exist in the map's style.`)));const o=a.getSource().type;\"geojson\"===o&&i?this.fire(new e.j(new Error(\"GeoJSON sources cannot have a sourceLayer parameter.\"))):\"vector\"!==o||i?(void 0===t.id&&this.fire(new e.j(new Error(\"The feature id parameter must be provided.\"))),a.setFeatureState(i,t.id,r)):this.fire(new e.j(new Error(\"The sourceLayer parameter must be provided for vector source types.\")))}removeFeatureState(t,r){this._checkLoaded();const n=t.source,i=this.sourceCaches[n];if(void 0===i)return void this.fire(new e.j(new Error(`The source '${n}' does not exist in the map's style.`)));const 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.j(new Error(\"A feature id is required to remove its specific state property.\"))):i.removeFeatureState(o,t.id,r):this.fire(new e.j(new Error(\"The sourceLayer parameter must be provided for vector source types.\")))}getFeatureState(t){this._checkLoaded();const r=t.source,n=t.sourceLayer,i=this.sourceCaches[r];if(void 0!==i)return\"vector\"!==i.getSource().type||n?(void 0===t.id&&this.fire(new e.j(new Error(\"The feature id parameter must be provided.\"))),i.getFeatureState(n,t.id)):void this.fire(new e.j(new Error(\"The sourceLayer parameter must be provided for vector source types.\")));this.fire(new e.j(new Error(`The source '${r}' does not exist in the map's style.`)))}getTransition(){return e.e({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)}serialize(){if(!this._loaded)return;const t=e.aG(this.sourceCaches,(t=>t.serialize())),r=this._serializeByIds(this._order),n=this.map.getTerrain()||void 0,i=this.stylesheet;return e.aH({version:i.version,name:i.name,metadata:i.metadata,light:i.light,sky:i.sky,center:i.center,zoom:i.zoom,bearing:i.bearing,pitch:i.pitch,sprite:i.sprite,glyphs:i.glyphs,transition:i.transition,sources:t,layers:r,terrain:n},(t=>void 0!==t))}_updateLayer(t){this._updatedLayers[t.id]=!0,t.source&&!this._updatedSources[t.source]&&\"raster\"!==this.sourceCaches[t.source].getSource().type&&(this._updatedSources[t.source]=\"reload\",this.sourceCaches[t.source].pause()),this._serializedLayers=null,this._changed=!0}_flattenAndSortRenderedFeatures(t){const e=t=>\"fill-extrusion\"===this._layers[t].type,r={},n=[];for(let i=this._order.length-1;i>=0;i--){const a=this._order[i];if(e(a)){r[a]=i;for(const e of t){const t=e[a];if(t)for(const e of t)n.push(e)}}}n.sort(((t,e)=>e.intersectionZ-t.intersectionZ));const i=[];for(let a=this._order.length-1;a>=0;a--){const o=this._order[a];if(e(o))for(let t=n.length-1;t>=0;t--){const e=n[t].feature;if(r[e.layer.id]<a)break;i.push(e),n.pop()}else for(const e of t){const t=e[o];if(t)for(const e of t)i.push(e.feature)}}return i}queryRenderedFeatures(t,r,n){r&&r.filter&&this._validate(e.x.filter,\"queryRenderedFeatures.filter\",r.filter,null,r);const i={};if(r&&r.layers){if(!Array.isArray(r.layers))return this.fire(new e.j(new Error(\"parameters.layers must be an Array.\"))),[];for(const t of r.layers){const r=this._layers[t];if(!r)return this.fire(new e.j(new Error(`The layer '${t}' does not exist in the map's style and cannot be queried for features.`))),[];i[r.source]=!0}}const a=[];r.availableImages=this._availableImages;const o=this._serializedAllLayers();for(const e in this.sourceCaches)r.layers&&!i[e]||a.push(Z(this.sourceCaches[e],this._layers,o,t,r,n));return this.placement&&a.push(function(t,e,r,n,i,a,o){const s={},l=a.queryRenderedSymbols(n),c=[];for(const t of Object.keys(l).map(Number))c.push(o[t]);c.sort(W);for(const r of c){const n=r.featureIndex.lookupSymbolFeatures(l[r.bucketInstanceId],e,r.bucketIndex,r.sourceLayerIndex,i.filter,i.layers,i.availableImages,t);for(const t in n){const e=s[t]=s[t]||[],i=n[t];i.sort(((t,e)=>{const n=r.featureSortOrder;if(n){const r=n.indexOf(t.featureIndex);return n.indexOf(e.featureIndex)-r}return e.featureIndex-t.featureIndex}));for(const t of i)e.push(t)}}for(const e in s)s[e].forEach((n=>{const i=n.feature,a=t[e],o=r[a.source].getFeatureState(i.layer[\"source-layer\"],i.id);i.source=i.layer.source,i.layer[\"source-layer\"]&&(i.sourceLayer=i.layer[\"source-layer\"]),i.state=o}));return s}(this._layers,o,this.sourceCaches,t,r,this.placement.collisionIndex,this.placement.retainedQueryData)),this._flattenAndSortRenderedFeatures(a)}querySourceFeatures(t,r){r&&r.filter&&this._validate(e.x.filter,\"querySourceFeatures.filter\",r.filter,null,r);const n=this.sourceCaches[t];return n?function(t,e){const r=t.getRenderableIds().map((e=>t.getTileByID(e))),n=[],i={};for(let t=0;t<r.length;t++){const a=r[t],o=a.tileID.canonical.key;i[o]||(i[o]=!0,a.querySourceFeatures(n,e))}return n}(n,r):[]}getLight(){return this.light.getLight()}setLight(t,r={}){this._checkLoaded();const n=this.light.getLight();let i=!1;for(const r in t)if(!e.aF(t[r],n[r])){i=!0;break}if(!i)return;const o={now:a.now(),transition:e.e({duration:300,delay:0},this.stylesheet.transition)};this.light.setLight(t,r),this.light.updateTransitions(o)}getSky(){var t;return null===(t=this.stylesheet)||void 0===t?void 0:t.sky}setSky(t,r={}){const n=this.sky.getSky();let i=!1;t||n&&(i=!0);for(const r in t)if(!e.aF(t[r],n[r])){i=!0;break}if(!i)return;const o={now:a.now(),transition:e.e({duration:300,delay:0},this.stylesheet.transition)};this.stylesheet.sky=t,this.sky.setSky(t,r),this.sky.updateTransitions(o)}_validate(t,r,n,i,a={}){return(!a||!1!==a.validate)&&fe(this,t.call(e.x,e.e({key:r,style:this.serialize(),value:n,styleSpec:e.v},i)))}_remove(t=!0){this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._loadStyleRequest&&(this._loadStyleRequest.abort(),this._loadStyleRequest=null),this._spriteRequest&&(this._spriteRequest.abort(),this._spriteRequest=null),ut().off(st,this._rtlPluginLoaded);for(const t in this._layers)this._layers[t].setEventedParent(null);for(const t in this.sourceCaches){const e=this.sourceCaches[t];e.setEventedParent(null),e.onRemove(this.map)}this.imageManager.setEventedParent(null),this.setEventedParent(null),t&&this.dispatcher.broadcast(\"RM\",void 0),this.dispatcher.remove(t)}_clearSource(t){this.sourceCaches[t].clearTiles()}_reloadSource(t){this.sourceCaches[t].resume(),this.sourceCaches[t].reload()}_updateSources(t){for(const e in this.sourceCaches)this.sourceCaches[e].update(t,this.map.terrain)}_generateCollisionBoxes(){for(const t in this.sourceCaches)this._reloadSource(t)}_updatePlacement(t,e,r,n,i=!1){let o=!1,s=!1;const l={};for(const e of this._order){const r=this._layers[e];if(\"symbol\"!==r.type)continue;if(!l[r.source]){const t=this.sourceCaches[r.source];l[r.source]=t.getRenderableIds(!0).map((e=>t.getTileByID(e))).sort(((t,e)=>e.tileID.overscaledZ-t.tileID.overscaledZ||(t.tileID.isLessThan(e.tileID)?-1:1)))}const n=this.crossTileSymbolIndex.addLayer(r,l[r.source],t.center.lng);o=o||n}if(this.crossTileSymbolIndex.pruneUnusedLayers(this._order),((i=i||this._layerOrderChanged||0===r)||!this.pauseablePlacement||this.pauseablePlacement.isDone()&&!this.placement.stillRecent(a.now(),t.zoom))&&(this.pauseablePlacement=new oe(t,this.map.terrain,this._order,i,e,r,n,this.placement),this._layerOrderChanged=!1),this.pauseablePlacement.isDone()?this.placement.setStale():(this.pauseablePlacement.continuePlacement(this._order,this._layers,l),this.pauseablePlacement.isDone()&&(this.placement=this.pauseablePlacement.commit(a.now()),s=!0),o&&this.pauseablePlacement.placement.setStale()),s||o)for(const t of this._order){const e=this._layers[t];\"symbol\"===e.type&&this.placement.updateLayerOpacities(e,l[e.source])}return!this.pauseablePlacement.isDone()||this.placement.hasTransitions(a.now())}_releaseSymbolFadeTiles(){for(const t in this.sourceCaches)this.sourceCaches[t].releaseSymbolFadeTiles()}getImages(t,r){return e._(this,void 0,void 0,(function*(){const t=yield this.imageManager.getImages(r.icons);this._updateTilesForChangedImages();const e=this.sourceCaches[r.source];return e&&e.setDependencies(r.tileID.key,r.type,r.icons),t}))}getGlyphs(t,r){return e._(this,void 0,void 0,(function*(){const t=yield this.glyphManager.getGlyphs(r.stacks),e=this.sourceCaches[r.source];return e&&e.setDependencies(r.tileID.key,r.type,[\"\"]),t}))}getGlyphsUrl(){return this.stylesheet.glyphs||null}setGlyphs(t,r={}){this._checkLoaded(),t&&this._validate(e.x.glyphs,\"glyphs\",t,null,r)||(this._glyphsDidChange=!0,this.stylesheet.glyphs=t,this.glyphManager.entries={},this.glyphManager.setURL(t))}addSprite(t,r,n={},i){this._checkLoaded();const a=[{id:t,url:r}],o=[...x(this.stylesheet.sprite),...a];this._validate(e.x.sprite,\"sprite\",o,null,n)||(this.stylesheet.sprite=o,this._loadSprite(a,!0,i))}removeSprite(t){this._checkLoaded();const r=x(this.stylesheet.sprite);if(r.find((e=>e.id===t))){if(this._spritesImagesIds[t])for(const e of this._spritesImagesIds[t])this.imageManager.removeImage(e),this._changedImages[e]=!0;r.splice(r.findIndex((e=>e.id===t)),1),this.stylesheet.sprite=r.length>0?r:void 0,delete this._spritesImagesIds[t],this._availableImages=this.imageManager.listImages(),this._changed=!0,this.dispatcher.broadcast(\"SI\",this._availableImages),this.fire(new e.k(\"data\",{dataType:\"style\"}))}else this.fire(new e.j(new Error(`Sprite \"${t}\" doesn't exists on this map.`)))}getSprite(){return x(this.stylesheet.sprite)}setSprite(t,r={},n){this._checkLoaded(),t&&this._validate(e.x.sprite,\"sprite\",t,null,r)||(this.stylesheet.sprite=t,t?this._loadSprite(t,!0,n):(this._unloadSprite(),n&&n(null)))}}var me=e.Y([{name:\"a_pos\",type:\"Int16\",components:2}]);const ge={prelude:ye(\"#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\\n\",\"#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;}\\n#ifdef TERRAIN3D\\nuniform sampler2D u_terrain;uniform float u_terrain_dim;uniform mat4 u_terrain_matrix;uniform vec4 u_terrain_unpack;uniform float u_terrain_exaggeration;uniform highp sampler2D u_depth;\\n#endif\\nconst highp vec4 bitSh=vec4(256.*256.*256.,256.*256.,256.,1.);const highp vec4 bitShifts=vec4(1.)/bitSh;highp float unpack(highp vec4 color) {return dot(color,bitShifts);}highp float depthOpacity(vec3 frag) {\\n#ifdef TERRAIN3D\\nhighp float d=unpack(texture2D(u_depth,frag.xy*0.5+0.5))+0.0001-frag.z;return 1.0-max(0.0,min(1.0,-d*500.0));\\n#else\\nreturn 1.0;\\n#endif\\n}float calculate_visibility(vec4 pos) {\\n#ifdef TERRAIN3D\\nvec3 frag=pos.xyz/pos.w;highp float d=depthOpacity(frag);if (d > 0.95) return 1.0;return (d+depthOpacity(frag+vec3(0.0,0.01,0.0)))/2.0;\\n#else\\nreturn 1.0;\\n#endif\\n}float ele(vec2 pos) {\\n#ifdef TERRAIN3D\\nvec4 rgb=(texture2D(u_terrain,pos)*255.0)*u_terrain_unpack;return rgb.r+rgb.g+rgb.b-u_terrain_unpack.a;\\n#else\\nreturn 0.0;\\n#endif\\n}float get_elevation(vec2 pos) {\\n#ifdef TERRAIN3D\\nvec2 coord=(u_terrain_matrix*vec4(pos,0.0,1.0)).xy*u_terrain_dim+1.0;vec2 f=fract(coord);vec2 c=(floor(coord)+0.5)/(u_terrain_dim+2.0);float d=1.0/(u_terrain_dim+2.0);float tl=ele(c);float tr=ele(c+vec2(d,0.0));float bl=ele(c+vec2(0.0,d));float br=ele(c+vec2(d,d));float elevation=mix(mix(tl,tr,f.x),mix(bl,br,f.x),f.y);return elevation*u_terrain_exaggeration;\\n#else\\nreturn 0.0;\\n#endif\\n}\"),background:ye(\"uniform vec4 u_color;uniform float u_opacity;void main() {gl_FragColor=u_color*u_opacity;\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}\"),backgroundPattern:ye(\"uniform vec2 u_pattern_tl_a;uniform vec2 u_pattern_br_a;uniform vec2 u_pattern_tl_b;uniform vec2 u_pattern_br_b;uniform vec2 u_texsize;uniform float u_mix;uniform float u_opacity;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;void main() {vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(u_pattern_tl_a/u_texsize,u_pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(u_pattern_tl_b/u_texsize,u_pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);gl_FragColor=mix(color1,color2,u_mix)*u_opacity;\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"uniform mat4 u_matrix;uniform vec2 u_pattern_size_a;uniform vec2 u_pattern_size_b;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_scale_a;uniform float u_scale_b;uniform float u_tile_units_to_pixels;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_scale_a*u_pattern_size_a,u_tile_units_to_pixels,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_scale_b*u_pattern_size_b,u_tile_units_to_pixels,a_pos);}\"),circle:ye(\"varying vec3 v_data;varying float v_visibility;\\n#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define mediump float radius\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define highp vec4 stroke_color\\n#pragma mapbox: define mediump float stroke_width\\n#pragma mapbox: define lowp float stroke_opacity\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 color\\n#pragma mapbox: initialize mediump float radius\\n#pragma mapbox: initialize lowp float blur\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize highp vec4 stroke_color\\n#pragma mapbox: initialize mediump float stroke_width\\n#pragma mapbox: initialize lowp float stroke_opacity\\nvec2 extrude=v_data.xy;float extrude_length=length(extrude);lowp float antialiasblur=v_data.z;float antialiased_blur=-max(blur,antialiasblur);float opacity_t=smoothstep(0.0,antialiased_blur,extrude_length-1.0);float color_t=stroke_width < 0.01 ? 0.0 : smoothstep(antialiased_blur,0.0,extrude_length-radius/(radius+stroke_width));gl_FragColor=v_visibility*opacity_t*mix(color*opacity,stroke_color*stroke_opacity,color_t);\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"uniform mat4 u_matrix;uniform bool u_scale_with_map;uniform bool u_pitch_with_map;uniform vec2 u_extrude_scale;uniform lowp float u_device_pixel_ratio;uniform highp float u_camera_to_center_distance;attribute vec2 a_pos;varying vec3 v_data;varying float v_visibility;\\n#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define mediump float radius\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define highp vec4 stroke_color\\n#pragma mapbox: define mediump float stroke_width\\n#pragma mapbox: define lowp float stroke_opacity\\nvoid main(void) {\\n#pragma mapbox: initialize highp vec4 color\\n#pragma mapbox: initialize mediump float radius\\n#pragma mapbox: initialize lowp float blur\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize highp vec4 stroke_color\\n#pragma mapbox: initialize mediump float stroke_width\\n#pragma mapbox: initialize lowp float stroke_opacity\\nvec2 extrude=vec2(mod(a_pos,2.0)*2.0-1.0);vec2 circle_center=floor(a_pos*0.5);float ele=get_elevation(circle_center);v_visibility=calculate_visibility(u_matrix*vec4(circle_center,ele,1.0));if (u_pitch_with_map) {vec2 corner_position=circle_center;if (u_scale_with_map) {corner_position+=extrude*(radius+stroke_width)*u_extrude_scale;} else {vec4 projected_center=u_matrix*vec4(circle_center,0,1);corner_position+=extrude*(radius+stroke_width)*u_extrude_scale*(projected_center.w/u_camera_to_center_distance);}gl_Position=u_matrix*vec4(corner_position,ele,1);} else {gl_Position=u_matrix*vec4(circle_center,ele,1);if (u_scale_with_map) {gl_Position.xy+=extrude*(radius+stroke_width)*u_extrude_scale*u_camera_to_center_distance;} else {gl_Position.xy+=extrude*(radius+stroke_width)*u_extrude_scale*gl_Position.w;}}lowp float antialiasblur=1.0/u_device_pixel_ratio/(radius+stroke_width);v_data=vec3(extrude.x,extrude.y,antialiasblur);}\"),clippingMask:ye(\"void main() {gl_FragColor=vec4(1.0);}\",\"attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}\"),heatmap:ye(\"uniform highp float u_intensity;varying vec2 v_extrude;\\n#pragma mapbox: define highp float weight\\n#define GAUSS_COEF 0.3989422804014327\\nvoid main() {\\n#pragma mapbox: initialize highp float weight\\nfloat d=-0.5*3.0*3.0*dot(v_extrude,v_extrude);float val=weight*u_intensity*GAUSS_COEF*exp(d);gl_FragColor=vec4(val,1.0,1.0,1.0);\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"uniform mat4 u_matrix;uniform float u_extrude_scale;uniform float u_opacity;uniform float u_intensity;attribute vec2 a_pos;varying vec2 v_extrude;\\n#pragma mapbox: define highp float weight\\n#pragma mapbox: define mediump float radius\\nconst highp float ZERO=1.0/255.0/16.0;\\n#define GAUSS_COEF 0.3989422804014327\\nvoid main(void) {\\n#pragma mapbox: initialize highp float weight\\n#pragma mapbox: initialize mediump float radius\\nvec2 unscaled_extrude=vec2(mod(a_pos,2.0)*2.0-1.0);float S=sqrt(-2.0*log(ZERO/weight/u_intensity/GAUSS_COEF))/3.0;v_extrude=S*unscaled_extrude;vec2 extrude=v_extrude*radius*u_extrude_scale;vec4 pos=vec4(floor(a_pos*0.5)+extrude,0,1);gl_Position=u_matrix*pos;}\"),heatmapTexture:ye(\"uniform sampler2D u_image;uniform sampler2D u_color_ramp;uniform float u_opacity;varying vec2 v_pos;void main() {float t=texture2D(u_image,v_pos).r;vec4 color=texture2D(u_color_ramp,vec2(t,0.5));gl_FragColor=color*u_opacity;\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(0.0);\\n#endif\\n}\",\"uniform mat4 u_matrix;uniform vec2 u_world;attribute vec2 a_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos*u_world,0,1);v_pos.x=a_pos.x;v_pos.y=1.0-a_pos.y;}\"),collisionBox:ye(\"varying float v_placed;varying float v_notUsed;void main() {float alpha=0.5;gl_FragColor=vec4(1.0,0.0,0.0,1.0)*alpha;if (v_placed > 0.5) {gl_FragColor=vec4(0.0,0.0,1.0,0.5)*alpha;}if (v_notUsed > 0.5) {gl_FragColor*=.1;}}\",\"attribute vec2 a_anchor_pos;attribute vec2 a_placed;attribute vec2 a_box_real;uniform mat4 u_matrix;uniform vec2 u_pixel_extrude_scale;varying float v_placed;varying float v_notUsed;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);}void main() {gl_Position=projectTileWithElevation(a_anchor_pos,get_elevation(a_anchor_pos));gl_Position.xy=((a_box_real+0.5)*u_pixel_extrude_scale*2.0-1.0)*vec2(1.0,-1.0)*gl_Position.w;if (gl_Position.z/gl_Position.w < 1.1) {gl_Position.z=0.5;}v_placed=a_placed.x;v_notUsed=a_placed.y;}\"),collisionCircle:ye(\"varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;void main() {float alpha=0.5*min(v_perspective_ratio,1.0);float stroke_radius=0.9*max(v_perspective_ratio,1.0);float distance_to_center=length(v_extrude);float distance_to_edge=abs(distance_to_center-v_radius);float opacity_t=smoothstep(-stroke_radius,0.0,-distance_to_edge);vec4 color=mix(vec4(0.0,0.0,1.0,0.5),vec4(1.0,0.0,0.0,1.0),v_collision);gl_FragColor=color*alpha*opacity_t;}\",\"attribute vec2 a_pos;attribute float a_radius;attribute vec2 a_flags;uniform mat4 u_matrix;uniform mat4 u_inv_matrix;uniform vec2 u_viewport_size;uniform float u_camera_to_center_distance;varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;vec3 toTilePosition(vec2 screenPos) {vec4 rayStart=u_inv_matrix*vec4(screenPos,-1.0,1.0);vec4 rayEnd =u_inv_matrix*vec4(screenPos, 1.0,1.0);rayStart.xyz/=rayStart.w;rayEnd.xyz /=rayEnd.w;highp float t=(0.0-rayStart.z)/(rayEnd.z-rayStart.z);return mix(rayStart.xyz,rayEnd.xyz,t);}void main() {vec2 quadCenterPos=a_pos;float radius=a_radius;float collision=a_flags.x;float vertexIdx=a_flags.y;vec2 quadVertexOffset=vec2(mix(-1.0,1.0,float(vertexIdx >=2.0)),mix(-1.0,1.0,float(vertexIdx >=1.0 && vertexIdx <=2.0)));vec2 quadVertexExtent=quadVertexOffset*radius;vec3 tilePos=toTilePosition(quadCenterPos);vec4 clipPos=u_matrix*vec4(tilePos,1.0);highp float camera_to_anchor_distance=clipPos.w;highp float collision_perspective_ratio=clamp(0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,4.0);float padding_factor=1.2;v_radius=radius;v_extrude=quadVertexExtent*padding_factor;v_perspective_ratio=collision_perspective_ratio;v_collision=collision;gl_Position=vec4(clipPos.xyz/clipPos.w,1.0)+vec4(quadVertexExtent*padding_factor/u_viewport_size*2.0,0.0,0.0);}\"),debug:ye(\"uniform highp vec4 u_color;uniform sampler2D u_overlay;varying vec2 v_uv;void main() {vec4 overlay_color=texture2D(u_overlay,v_uv);gl_FragColor=mix(u_color,overlay_color,overlay_color.a);}\",\"attribute vec2 a_pos;varying vec2 v_uv;uniform mat4 u_matrix;uniform float u_overlay_scale;void main() {v_uv=a_pos/8192.0;gl_Position=u_matrix*vec4(a_pos*u_overlay_scale,get_elevation(a_pos),1);}\"),fill:ye(\"#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}\",\"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);}\"),fillOutline:ye(\"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}\",\"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;}\"),fillOutlinePattern:ye(\"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}\",\"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;}\"),fillPattern:ye(\"#ifdef GL_ES\\nprecision highp float;\\n#endif\\nuniform 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}\",\"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);}\"),fillExtrusion:ye(\"varying vec4 v_color;void main() {gl_FragColor=v_color;\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"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;\\n#ifdef TERRAIN3D\\nattribute vec2 a_centroid;\\n#endif\\nvarying 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;\\n#ifdef TERRAIN3D\\nfloat height_terrain3d_offset=get_elevation(a_centroid);float base_terrain3d_offset=height_terrain3d_offset-(base > 0.0 ? 0.0 : 10.0);\\n#else\\nfloat height_terrain3d_offset=0.0;float base_terrain3d_offset=0.0;\\n#endif\\nbase=max(0.0,base)+base_terrain3d_offset;height=max(0.0,height)+height_terrain3d_offset;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;}\"),fillExtrusionPattern:ye(\"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}\",\"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;\\n#ifdef TERRAIN3D\\nattribute vec2 a_centroid;\\n#endif\\nvarying 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;\\n#ifdef TERRAIN3D\\nfloat height_terrain3d_offset=get_elevation(a_centroid);float base_terrain3d_offset=height_terrain3d_offset-(base > 0.0 ? 0.0 : 10.0);\\n#else\\nfloat height_terrain3d_offset=0.0;float base_terrain3d_offset=0.0;\\n#endif\\nbase=max(0.0,base)+base_terrain3d_offset;height=max(0.0,height)+height_terrain3d_offset;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;}\"),hillshadePrepare:ye(\"#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 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 exaggerationFactor=u_zoom < 2.0 ? 0.4 : u_zoom < 4.5 ? 0.35 : 0.3;float exaggeration=u_zoom < 15.0 ? (u_zoom-15.0)*exaggerationFactor : 0.0;vec2 deriv=vec2((c+f+f+i)-(a+d+d+g),(g+h+h+i)-(a+b+b+c))/pow(2.0,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}\",\"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;}\"),hillshade:ye(\"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}\",\"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;}\"),line:ye(\"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}\",\"\\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;\\n#ifdef TERRAIN3D\\nv_gamma_scale=1.0;\\n#else\\nfloat 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;\\n#endif\\nv_width2=vec2(outset,inset);}\"),lineGradient:ye(\"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 vec2 v_uv;\\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,v_uv);gl_FragColor=color*(alpha*opacity);\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"\\n#define scale 0.015873016\\nattribute vec2 a_pos_normal;attribute vec4 a_data;attribute float a_uv_x;attribute float a_split_index;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_units_to_pixels;uniform float u_image_height;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp vec2 v_uv;\\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;highp float texel_height=1.0/u_image_height;highp float half_texel_height=0.5*texel_height;v_uv=vec2(a_uv_x,a_split_index*texel_height-half_texel_height);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;\\n#ifdef TERRAIN3D\\nv_gamma_scale=1.0;\\n#else\\nfloat 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;\\n#endif\\nv_width2=vec2(outset,inset);}\"),linePattern:ye(\"#ifdef GL_ES\\nprecision highp float;\\n#endif\\nuniform 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}\",\"\\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;\\n#ifdef TERRAIN3D\\nv_gamma_scale=1.0;\\n#else\\nfloat 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;\\n#endif\\nv_linesofar=a_linesofar;v_width2=vec2(outset,inset);v_width=floorwidth;}\"),lineSDF:ye(\"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}\",\"\\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;\\n#ifdef TERRAIN3D\\nv_gamma_scale=1.0;\\n#else\\nfloat 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;\\n#endif\\nv_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);}\"),raster:ye(\"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}\",\"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;}\"),symbolIcon:ye(\"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}\",\"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;uniform bool u_is_along_line;uniform bool u_is_variable_anchor;uniform vec2 u_translation;uniform float u_pitched_scale;varying vec2 v_tex;varying float v_fade_opacity;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);}\\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;float ele=get_elevation(a_pos);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;}vec2 translated_a_pos=a_pos+u_translation;vec4 projectedPoint=projectTileWithElevation(translated_a_pos,ele);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=projectTileWithElevation(translated_a_pos+vec2(1,0),ele);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;if (u_is_along_line || u_is_variable_anchor) {projected_pos=vec4(a_projected_pos.xy,ele,1.0);} else if (u_pitch_with_map) {projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy+u_translation,ele,1.0);} else {projected_pos=u_label_plane_matrix*projectTileWithElevation(a_projected_pos.xy+u_translation,ele);}float z=float(u_pitch_with_map)*projected_pos.z/projected_pos.w;float projectionScaling=1.0;vec4 finalPos=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*max(a_minFontScale,fontScale)+a_pxoffset/16.0)*projectionScaling,z,1.0);if(u_pitch_with_map) {finalPos=projectTileWithElevation(finalPos.xy,finalPos.z);}gl_Position=finalPos;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;float visibility=calculate_visibility(projectedPoint);v_fade_opacity=max(0.0,min(visibility,fade_opacity[0]+fade_change));}\"),symbolSDF:ye(\"#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 inner_edge=(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);inner_edge=inner_edge+gamma*gamma_scale;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(inner_edge-gamma_scaled,inner_edge+gamma_scaled,dist);if (u_is_halo) {lowp float halo_edge=(6.0-halo_width/fontScale)/SDF_PX;alpha=min(smoothstep(halo_edge-gamma_scaled,halo_edge+gamma_scaled,dist),1.0-alpha);}gl_FragColor=color*(alpha*opacity*fade_opacity);\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"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 bool u_is_along_line;uniform bool u_is_variable_anchor;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_translation;uniform float u_pitched_scale;varying vec2 v_data0;varying vec3 v_data1;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);}\\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;float ele=get_elevation(a_pos);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;}vec2 translated_a_pos=a_pos+u_translation;vec4 projectedPoint=projectTileWithElevation(translated_a_pos,ele);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=projectTileWithElevation(translated_a_pos+vec2(1,0),ele);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;if (u_is_along_line || u_is_variable_anchor) {projected_pos=vec4(a_projected_pos.xy,ele,1.0);} else if (u_pitch_with_map) {projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy+u_translation,ele,1.0);} else {projected_pos=u_label_plane_matrix*projectTileWithElevation(a_projected_pos.xy+u_translation,ele);}float z=float(u_pitch_with_map)*projected_pos.z/projected_pos.w;float projectionScaling=1.0;vec4 finalPos=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale+a_pxoffset)*projectionScaling,z,1.0);if(u_pitch_with_map) {finalPos=projectTileWithElevation(finalPos.xy,finalPos.z);}float gamma_scale=finalPos.w;gl_Position=finalPos;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float visibility=calculate_visibility(projectedPoint);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(visibility,fade_opacity[0]+fade_change));v_data0=a_tex/u_texsize;v_data1=vec3(gamma_scale,size,interpolated_fade_opacity);}\"),symbolTextAndIcon:ye(\"#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}\",\"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;uniform bool u_is_along_line;uniform bool u_is_variable_anchor;uniform vec2 u_translation;uniform float u_pitched_scale;varying vec4 v_data0;varying vec4 v_data1;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);}\\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;float ele=get_elevation(a_pos);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;}vec2 translated_a_pos=a_pos+u_translation;vec4 projectedPoint=projectTileWithElevation(translated_a_pos,ele);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=projectTileWithElevation(translated_a_pos+vec2(1,0),ele);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;if (u_is_along_line || u_is_variable_anchor) {projected_pos=vec4(a_projected_pos.xy,ele,1.0);} else if (u_pitch_with_map) {projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy+u_translation,ele,1.0);} else {projected_pos=u_label_plane_matrix*projectTileWithElevation(a_projected_pos.xy+u_translation,ele);}float z=float(u_pitch_with_map)*projected_pos.z/projected_pos.w;float projectionScaling=1.0;vec4 finalPos=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale)*projectionScaling,z,1.0);if(u_pitch_with_map) {finalPos=projectTileWithElevation(finalPos.xy,finalPos.z);}float gamma_scale=finalPos.w;gl_Position=finalPos;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float visibility=calculate_visibility(projectedPoint);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(visibility,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);}\"),terrain:ye(\"uniform sampler2D u_texture;uniform vec4 u_fog_color;uniform vec4 u_horizon_color;uniform float u_fog_ground_blend;uniform float u_fog_ground_blend_opacity;uniform float u_horizon_fog_blend;varying vec2 v_texture_pos;varying float v_fog_depth;const float gamma=2.2;vec4 gammaToLinear(vec4 color) {return pow(color,vec4(gamma));}vec4 linearToGamma(vec4 color) {return pow(color,vec4(1.0/gamma));}void main() {vec4 surface_color=texture2D(u_texture,v_texture_pos);if (v_fog_depth > u_fog_ground_blend) {vec4 surface_color_linear=gammaToLinear(surface_color);float blend_color=smoothstep(0.0,1.0,max((v_fog_depth-u_horizon_fog_blend)/(1.0-u_horizon_fog_blend),0.0));vec4 fog_horizon_color_linear=mix(gammaToLinear(u_fog_color),gammaToLinear(u_horizon_color),blend_color);float factor_fog=max(v_fog_depth-u_fog_ground_blend,0.0)/(1.0-u_fog_ground_blend);gl_FragColor=linearToGamma(mix(surface_color_linear,fog_horizon_color_linear,pow(factor_fog,2.0)*u_fog_ground_blend_opacity));} else {gl_FragColor=surface_color;}}\",\"attribute vec3 a_pos3d;uniform mat4 u_matrix;uniform mat4 u_fog_matrix;uniform float u_ele_delta;varying vec2 v_texture_pos;varying float v_fog_depth;void main() {float ele=get_elevation(a_pos3d.xy);float ele_delta=a_pos3d.z==1.0 ? u_ele_delta : 0.0;v_texture_pos=a_pos3d.xy/8192.0;gl_Position=u_matrix*vec4(a_pos3d.xy,ele-ele_delta,1.0);vec4 pos=u_fog_matrix*vec4(a_pos3d.xy,ele,1.0);v_fog_depth=pos.z/pos.w*0.5+0.5;}\"),terrainDepth:ye(\"varying float v_depth;const highp vec4 bitSh=vec4(256.*256.*256.,256.*256.,256.,1.);const highp vec4 bitMsk=vec4(0.,vec3(1./256.0));highp vec4 pack(highp float value) {highp vec4 comp=fract(value*bitSh);comp-=comp.xxyz*bitMsk;return comp;}void main() {gl_FragColor=pack(v_depth);}\",\"attribute vec3 a_pos3d;uniform mat4 u_matrix;uniform float u_ele_delta;varying float v_depth;void main() {float ele=get_elevation(a_pos3d.xy);float ele_delta=a_pos3d.z==1.0 ? u_ele_delta : 0.0;gl_Position=u_matrix*vec4(a_pos3d.xy,ele-ele_delta,1.0);v_depth=gl_Position.z/gl_Position.w;}\"),terrainCoords:ye(\"precision mediump float;uniform sampler2D u_texture;uniform float u_terrain_coords_id;varying vec2 v_texture_pos;void main() {vec4 rgba=texture2D(u_texture,v_texture_pos);gl_FragColor=vec4(rgba.r,rgba.g,rgba.b,u_terrain_coords_id);}\",\"attribute vec3 a_pos3d;uniform mat4 u_matrix;uniform float u_ele_delta;varying vec2 v_texture_pos;void main() {float ele=get_elevation(a_pos3d.xy);float ele_delta=a_pos3d.z==1.0 ? u_ele_delta : 0.0;v_texture_pos=a_pos3d.xy/8192.0;gl_Position=u_matrix*vec4(a_pos3d.xy,ele-ele_delta,1.0);}\"),sky:ye(\"uniform vec4 u_sky_color;uniform vec4 u_horizon_color;uniform float u_horizon;uniform float u_sky_horizon_blend;void main() {float y=gl_FragCoord.y;if (y > u_horizon) {float blend=y-u_horizon;if (blend < u_sky_horizon_blend) {gl_FragColor=mix(u_sky_color,u_horizon_color,pow(1.0-blend/u_sky_horizon_blend,2.0));} else {gl_FragColor=u_sky_color;}}}\",\"attribute vec2 a_pos;void main() {gl_Position=vec4(a_pos,1.0,1.0);}\")};function ye(t,e){const r=/#pragma mapbox: ([\\w]+) ([\\w]+) ([\\w]+) ([\\w]+)/g,n=e.match(/attribute ([\\w]+) ([\\w]+)/g),i=t.match(/uniform ([\\w]+) ([\\w]+)([\\s]*)([\\w]*)/g),a=e.match(/uniform ([\\w]+) ([\\w]+)([\\s]*)([\\w]*)/g),o=a?a.concat(i):i,s={};return{fragmentSource:t=t.replace(r,((t,e,r,n,i)=>(s[i]=!0,\"define\"===e?`\\n#ifndef HAS_UNIFORM_u_${i}\\nvarying ${r} ${n} ${i};\\n#else\\nuniform ${r} ${n} u_${i};\\n#endif\\n`:`\\n#ifdef HAS_UNIFORM_u_${i}\\n ${r} ${n} ${i} = u_${i};\\n#endif\\n`))),vertexSource:e=e.replace(r,((t,e,r,n,i)=>{const a=\"float\"===n?\"vec2\":\"vec4\",o=i.match(/color/)?\"color\":a;return s[i]?\"define\"===e?`\\n#ifndef HAS_UNIFORM_u_${i}\\nuniform lowp float u_${i}_t;\\nattribute ${r} ${a} a_${i};\\nvarying ${r} ${n} ${i};\\n#else\\nuniform ${r} ${n} u_${i};\\n#endif\\n`:\"vec4\"===o?`\\n#ifndef HAS_UNIFORM_u_${i}\\n ${i} = a_${i};\\n#else\\n ${r} ${n} ${i} = u_${i};\\n#endif\\n`:`\\n#ifndef HAS_UNIFORM_u_${i}\\n ${i} = unpack_mix_${o}(a_${i}, u_${i}_t);\\n#else\\n ${r} ${n} ${i} = u_${i};\\n#endif\\n`:\"define\"===e?`\\n#ifndef HAS_UNIFORM_u_${i}\\nuniform lowp float u_${i}_t;\\nattribute ${r} ${a} a_${i};\\n#else\\nuniform ${r} ${n} u_${i};\\n#endif\\n`:\"vec4\"===o?`\\n#ifndef HAS_UNIFORM_u_${i}\\n ${r} ${n} ${i} = a_${i};\\n#else\\n ${r} ${n} ${i} = u_${i};\\n#endif\\n`:`\\n#ifndef HAS_UNIFORM_u_${i}\\n ${r} ${n} ${i} = unpack_mix_${o}(a_${i}, u_${i}_t);\\n#else\\n ${r} ${n} ${i} = u_${i};\\n#endif\\n`})),staticAttributes:n,staticUniforms:o}}class ve{constructor(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null}bind(t,e,r,n,i,a,o,s,l){this.context=t;let c=this.boundPaintVertexBuffers.length!==n.length;for(let t=0;!c&&t<n.length;t++)this.boundPaintVertexBuffers[t]!==n[t]&&(c=!0);!this.vao||this.boundProgram!==e||this.boundLayoutVertexBuffer!==r||c||this.boundIndexBuffer!==i||this.boundVertexOffset!==a||this.boundDynamicVertexBuffer!==o||this.boundDynamicVertexBuffer2!==s||this.boundDynamicVertexBuffer3!==l?this.freshBind(e,r,n,i,a,o,s,l):(t.bindVertexArray.set(this.vao),o&&o.bind(),i&&i.dynamicDraw&&i.bind(),s&&s.bind(),l&&l.bind())}freshBind(t,e,r,n,i,a,o,s){const l=t.numAttributes,c=this.context,u=c.gl;this.vao&&this.destroy(),this.vao=c.createVertexArray(),c.bindVertexArray.set(this.vao),this.boundProgram=t,this.boundLayoutVertexBuffer=e,this.boundPaintVertexBuffers=r,this.boundIndexBuffer=n,this.boundVertexOffset=i,this.boundDynamicVertexBuffer=a,this.boundDynamicVertexBuffer2=o,this.boundDynamicVertexBuffer3=s,e.enableAttributes(u,t);for(const e of r)e.enableAttributes(u,t);a&&a.enableAttributes(u,t),o&&o.enableAttributes(u,t),s&&s.enableAttributes(u,t),e.bind(),e.setVertexAttribPointers(u,t,i);for(const e of r)e.bind(),e.setVertexAttribPointers(u,t,i);a&&(a.bind(),a.setVertexAttribPointers(u,t,i)),n&&n.bind(),o&&(o.bind(),o.setVertexAttribPointers(u,t,i)),s&&(s.bind(),s.setVertexAttribPointers(u,t,i)),c.currentNumAttributes=l}destroy(){this.vao&&(this.context.deleteVertexArray(this.vao),this.vao=null)}}const xe=(t,r,n,i,a)=>({u_matrix:t,u_texture:0,u_ele_delta:r,u_fog_matrix:n,u_fog_color:i?i.properties.get(\"fog-color\"):e.aN.white,u_fog_ground_blend:i?i.properties.get(\"fog-ground-blend\"):1,u_fog_ground_blend_opacity:i?i.calculateFogBlendOpacity(a):0,u_horizon_color:i?i.properties.get(\"horizon-color\"):e.aN.white,u_horizon_fog_blend:i?i.properties.get(\"horizon-fog-blend\"):1});function _e(t){const e=[];for(let r=0;r<t.length;r++){if(null===t[r])continue;const n=t[r].split(\" \");e.push(n.pop())}return e}class be{constructor(t,r,n,i,a,o){const s=t.gl;this.program=s.createProgram();const l=_e(r.staticAttributes),c=n?n.getBinderAttributes():[],u=l.concat(c),h=ge.prelude.staticUniforms?_e(ge.prelude.staticUniforms):[],f=r.staticUniforms?_e(r.staticUniforms):[],p=n?n.getBinderUniforms():[],d=h.concat(f).concat(p),m=[];for(const t of d)m.indexOf(t)<0&&m.push(t);const g=n?n.defines():[];a&&g.push(\"#define OVERDRAW_INSPECTOR;\"),o&&g.push(\"#define TERRAIN3D;\");const y=g.concat(ge.prelude.fragmentSource,r.fragmentSource).join(\"\\n\"),v=g.concat(ge.prelude.vertexSource,r.vertexSource).join(\"\\n\"),x=s.createShader(s.FRAGMENT_SHADER);if(s.isContextLost())return void(this.failedToCreate=!0);if(s.shaderSource(x,y),s.compileShader(x),!s.getShaderParameter(x,s.COMPILE_STATUS))throw new Error(`Could not compile fragment shader: ${s.getShaderInfoLog(x)}`);s.attachShader(this.program,x);const _=s.createShader(s.VERTEX_SHADER);if(s.isContextLost())return void(this.failedToCreate=!0);if(s.shaderSource(_,v),s.compileShader(_),!s.getShaderParameter(_,s.COMPILE_STATUS))throw new Error(`Could not compile vertex shader: ${s.getShaderInfoLog(_)}`);s.attachShader(this.program,_),this.attributes={};const b={};this.numAttributes=u.length;for(let t=0;t<this.numAttributes;t++)u[t]&&(s.bindAttribLocation(this.program,t,u[t]),this.attributes[u[t]]=t);if(s.linkProgram(this.program),!s.getProgramParameter(this.program,s.LINK_STATUS))throw new Error(`Program failed to link: ${s.getProgramInfoLog(this.program)}`);s.deleteShader(_),s.deleteShader(x);for(let t=0;t<m.length;t++){const e=m[t];if(e&&!b[e]){const t=s.getUniformLocation(this.program,e);t&&(b[e]=t)}}this.fixedUniforms=i(t,b),this.terrainUniforms=((t,r)=>({u_depth:new e.aI(t,r.u_depth),u_terrain:new e.aI(t,r.u_terrain),u_terrain_dim:new e.aJ(t,r.u_terrain_dim),u_terrain_matrix:new e.aK(t,r.u_terrain_matrix),u_terrain_unpack:new e.aL(t,r.u_terrain_unpack),u_terrain_exaggeration:new e.aJ(t,r.u_terrain_exaggeration)}))(t,b),this.binderUniforms=n?n.getUniforms(t,b):[]}draw(t,e,r,n,i,a,o,s,l,c,u,h,f,p,d,m,g,y){const v=t.gl;if(this.failedToCreate)return;if(t.program.set(this.program),t.setDepthMode(r),t.setStencilMode(n),t.setColorMode(i),t.setCullFace(a),s){t.activeTexture.set(v.TEXTURE2),v.bindTexture(v.TEXTURE_2D,s.depthTexture),t.activeTexture.set(v.TEXTURE3),v.bindTexture(v.TEXTURE_2D,s.texture);for(const t in this.terrainUniforms)this.terrainUniforms[t].set(s[t])}for(const t in this.fixedUniforms)this.fixedUniforms[t].set(o[t]);d&&d.setUniforms(t,this.binderUniforms,f,{zoom:p});let x=0;switch(e){case v.LINES:x=2;break;case v.TRIANGLES:x=3;break;case v.LINE_STRIP:x=1}for(const r of h.get()){const n=r.vaos||(r.vaos={});(n[l]||(n[l]=new ve)).bind(t,this,c,d?d.getPaintVertexBuffers():[],u,r.vertexOffset,m,g,y),v.drawElements(e,r.primitiveLength*x,v.UNSIGNED_SHORT,r.primitiveOffset*x*2)}}}function we(t,e,r){const n=1/Nt(r,1,e.transform.tileZoom),i=Math.pow(2,r.tileID.overscaledZ),a=r.tileSize*Math.pow(2,e.transform.tileZoom)/i,o=a*(r.tileID.canonical.x+r.tileID.wrap*i),s=a*r.tileID.canonical.y;return{u_image:0,u_texsize:r.imageAtlasTexture.size,u_scale:[n,t.fromScale,t.toScale],u_fade:t.t,u_pixel_coord_upper:[o>>16,s>>16],u_pixel_coord_lower:[65535&o,65535&s]}}const Te=(t,r,n,i)=>{const a=r.style.light,o=a.properties.get(\"position\"),s=[o.x,o.y,o.z],l=function(){var t=new e.A(9);return e.A!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[5]=0,t[6]=0,t[7]=0),t[0]=1,t[4]=1,t[8]=1,t}();\"viewport\"===a.properties.get(\"anchor\")&&function(t,e){var r=Math.sin(e),n=Math.cos(e);t[0]=n,t[1]=r,t[2]=0,t[3]=-r,t[4]=n,t[5]=0,t[6]=0,t[7]=0,t[8]=1}(l,-r.transform.angle),function(t,e,r){var n=e[0],i=e[1],a=e[2];t[0]=n*r[0]+i*r[3]+a*r[6],t[1]=n*r[1]+i*r[4]+a*r[7],t[2]=n*r[2]+i*r[5]+a*r[8]}(s,s,l);const c=a.properties.get(\"color\");return{u_matrix:t,u_lightpos:s,u_lightintensity:a.properties.get(\"intensity\"),u_lightcolor:[c.r,c.g,c.b],u_vertical_gradient:+n,u_opacity:i}},ke=(t,r,n,i,a,o,s)=>e.e(Te(t,r,n,i),we(o,r,s),{u_height_factor:-Math.pow(2,a.overscaledZ)/s.tileSize/8}),Ae=t=>({u_matrix:t}),Me=(t,r,n,i)=>e.e(Ae(t),we(n,r,i)),Se=(t,e)=>({u_matrix:t,u_world:e}),Ee=(t,r,n,i,a)=>e.e(Me(t,r,n,i),{u_world:a}),Ce=(t,e,r,n)=>{const i=t.transform;let a,o;if(\"map\"===n.paint.get(\"circle-pitch-alignment\")){const t=Nt(r,1,i.zoom);a=!0,o=[t,t]}else a=!1,o=i.pixelsToGLUnits;return{u_camera_to_center_distance:i.cameraToCenterDistance,u_scale_with_map:+(\"map\"===n.paint.get(\"circle-pitch-scale\")),u_matrix:t.translatePosMatrix(e.posMatrix,r,n.paint.get(\"circle-translate\"),n.paint.get(\"circle-translate-anchor\")),u_pitch_with_map:+a,u_device_pixel_ratio:t.pixelRatio,u_extrude_scale:o}},Le=(t,e)=>({u_matrix:e,u_pixel_extrude_scale:[1/t.width,1/t.height]}),Ie=(t,e,r)=>({u_matrix:t,u_inv_matrix:e,u_camera_to_center_distance:r.cameraToCenterDistance,u_viewport_size:[r.width,r.height]}),Pe=(t,e,r=1)=>({u_matrix:t,u_color:e,u_overlay:0,u_overlay_scale:r}),ze=t=>({u_matrix:t}),Oe=(t,e,r,n)=>({u_matrix:t,u_extrude_scale:Nt(e,1,r),u_intensity:n}),De=(t,r,n,i)=>{const a=e.H();e.aQ(a,0,t.width,t.height,0,0,1);const 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\")}},Re=(t,e,r,n)=>{const i=r.paint.get(\"hillshade-shadow-color\"),a=r.paint.get(\"hillshade-highlight-color\"),o=r.paint.get(\"hillshade-accent-color\");let s=r.paint.get(\"hillshade-illumination-direction\")*(Math.PI/180);\"viewport\"===r.paint.get(\"hillshade-illumination-anchor\")&&(s-=t.transform.angle);const l=!t.options.moving;return{u_matrix:n?n.posMatrix:t.transform.calculatePosMatrix(e.tileID.toUnwrapped(),l),u_image:0,u_latrange:Be(0,e.tileID),u_light:[r.paint.get(\"hillshade-exaggeration\"),s],u_shadow:i,u_highlight:a,u_accent:o}},Fe=(t,r)=>{const n=r.stride,i=e.H();return e.aQ(i,0,e.X,-e.X,0,0,1),e.J(i,i,[0,-e.X,0]),{u_matrix:i,u_image:1,u_dimension:[n,n],u_zoom:t.overscaledZ,u_unpack:r.getUnpackVector()}};function Be(t,r){const n=Math.pow(2,r.canonical.z),i=r.canonical.y;return[new e.Z(0,i/n).toLngLat().lat,new e.Z(0,(i+1)/n).toLngLat().lat]}const Ne=(t,e,r,n)=>{const i=t.transform;return{u_matrix:He(t,e,r,n),u_ratio:1/Nt(e,1,i.zoom),u_device_pixel_ratio:t.pixelRatio,u_units_to_pixels:[1/i.pixelsToGLUnits[0],1/i.pixelsToGLUnits[1]]}},je=(t,r,n,i,a)=>e.e(Ne(t,r,n,a),{u_image:0,u_image_height:i}),Ue=(t,e,r,n,i)=>{const a=t.transform,o=qe(e,a);return{u_matrix:He(t,e,r,i),u_texsize:e.imageAtlasTexture.size,u_ratio:1/Nt(e,1,a.zoom),u_device_pixel_ratio:t.pixelRatio,u_image:0,u_scale:[o,n.fromScale,n.toScale],u_fade:n.t,u_units_to_pixels:[1/a.pixelsToGLUnits[0],1/a.pixelsToGLUnits[1]]}},Ve=(t,r,n,i,a,o)=>{const s=t.transform,l=t.lineAtlas,c=qe(r,s),u=\"round\"===n.layout.get(\"line-cap\"),h=l.getDash(i.from,u),f=l.getDash(i.to,u),p=h.width*a.fromScale,d=f.width*a.toScale;return e.e(Ne(t,r,n,o),{u_patternscale_a:[c/p,-h.height/2],u_patternscale_b:[c/d,-f.height/2],u_sdfgamma:l.width/(256*Math.min(p,d)*t.pixelRatio)/2,u_image:0,u_tex_y_a:h.y,u_tex_y_b:f.y,u_mix:a.t})};function qe(t,e){return 1/Nt(t,1,e.tileZoom)}function He(t,e,r,n){return t.translatePosMatrix(n?n.posMatrix:e.tileID.posMatrix,e,r.paint.get(\"line-translate\"),r.paint.get(\"line-translate-anchor\"))}const Ge=(t,e,r,n,i)=>{return{u_matrix:t,u_tl_parent:e,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:(o=i.paint.get(\"raster-saturation\"),o>0?1-1/(1.001-o):-o),u_contrast_factor:(a=i.paint.get(\"raster-contrast\"),a>0?1/(1-a):1+a),u_spin_weights:Ze(i.paint.get(\"raster-hue-rotate\"))};var a,o};function Ze(t){t*=Math.PI/180;const e=Math.sin(t),r=Math.cos(t);return[(2*r+1)/3,(-Math.sqrt(3)*e-r+1)/3,(Math.sqrt(3)*e-r+1)/3]}const We=(t,e,r,n,i,a,o,s,l,c,u,h,f,p)=>{const d=o.transform;return{u_is_size_zoom_constant:+(\"constant\"===t||\"source\"===t),u_is_size_feature_constant:+(\"constant\"===t||\"camera\"===t),u_size_t:e?e.uSizeT:0,u_size:e?e.uSize:0,u_camera_to_center_distance:d.cameraToCenterDistance,u_pitch:d.pitch/360*2*Math.PI,u_rotate_symbol:+r,u_aspect_ratio:d.width/d.height,u_fade_change:o.options.fadeDuration?o.symbolFadeChange:1,u_matrix:s,u_label_plane_matrix:l,u_coord_matrix:c,u_is_text:+h,u_pitch_with_map:+n,u_is_along_line:i,u_is_variable_anchor:a,u_texsize:f,u_texture:0,u_translation:u,u_pitched_scale:p}},Ye=(t,r,n,i,a,o,s,l,c,u,h,f,p,d,m)=>{const g=s.transform;return e.e(We(t,r,n,i,a,o,s,l,c,u,h,f,p,m),{u_gamma_scale:i?Math.cos(g._pitch)*g.cameraToCenterDistance:1,u_device_pixel_ratio:s.pixelRatio,u_is_halo:+d})},Xe=(t,r,n,i,a,o,s,l,c,u,h,f,p,d)=>e.e(Ye(t,r,n,i,a,o,s,l,c,u,h,!0,f,!0,d),{u_texsize_icon:p,u_texture_icon:1}),$e=(t,e,r)=>({u_matrix:t,u_opacity:e,u_color:r}),Je=(t,r,n,i,a,o)=>e.e(function(t,e,r,n){const i=r.imageManager.getPattern(t.from.toString()),a=r.imageManager.getPattern(t.to.toString()),{width:o,height:s}=r.imageManager.getPixelSize(),l=Math.pow(2,n.tileID.overscaledZ),c=n.tileSize*Math.pow(2,r.transform.tileZoom)/l,u=c*(n.tileID.canonical.x+n.tileID.wrap*l),h=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:[o,s],u_mix:e.t,u_pattern_size_a:i.displaySize,u_pattern_size_b:a.displaySize,u_scale_a:e.fromScale,u_scale_b:e.toScale,u_tile_units_to_pixels:1/Nt(n,1,r.transform.tileZoom),u_pixel_coord_upper:[u>>16,h>>16],u_pixel_coord_lower:[65535&u,65535&h]}}(i,o,n,a),{u_matrix:t,u_opacity:r}),Ke={fillExtrusion:(t,r)=>({u_matrix:new e.aK(t,r.u_matrix),u_lightpos:new e.aO(t,r.u_lightpos),u_lightintensity:new e.aJ(t,r.u_lightintensity),u_lightcolor:new e.aO(t,r.u_lightcolor),u_vertical_gradient:new e.aJ(t,r.u_vertical_gradient),u_opacity:new e.aJ(t,r.u_opacity)}),fillExtrusionPattern:(t,r)=>({u_matrix:new e.aK(t,r.u_matrix),u_lightpos:new e.aO(t,r.u_lightpos),u_lightintensity:new e.aJ(t,r.u_lightintensity),u_lightcolor:new e.aO(t,r.u_lightcolor),u_vertical_gradient:new e.aJ(t,r.u_vertical_gradient),u_height_factor:new e.aJ(t,r.u_height_factor),u_image:new e.aI(t,r.u_image),u_texsize:new e.aP(t,r.u_texsize),u_pixel_coord_upper:new e.aP(t,r.u_pixel_coord_upper),u_pixel_coord_lower:new e.aP(t,r.u_pixel_coord_lower),u_scale:new e.aO(t,r.u_scale),u_fade:new e.aJ(t,r.u_fade),u_opacity:new e.aJ(t,r.u_opacity)}),fill:(t,r)=>({u_matrix:new e.aK(t,r.u_matrix)}),fillPattern:(t,r)=>({u_matrix:new e.aK(t,r.u_matrix),u_image:new e.aI(t,r.u_image),u_texsize:new e.aP(t,r.u_texsize),u_pixel_coord_upper:new e.aP(t,r.u_pixel_coord_upper),u_pixel_coord_lower:new e.aP(t,r.u_pixel_coord_lower),u_scale:new e.aO(t,r.u_scale),u_fade:new e.aJ(t,r.u_fade)}),fillOutline:(t,r)=>({u_matrix:new e.aK(t,r.u_matrix),u_world:new e.aP(t,r.u_world)}),fillOutlinePattern:(t,r)=>({u_matrix:new e.aK(t,r.u_matrix),u_world:new e.aP(t,r.u_world),u_image:new e.aI(t,r.u_image),u_texsize:new e.aP(t,r.u_texsize),u_pixel_coord_upper:new e.aP(t,r.u_pixel_coord_upper),u_pixel_coord_lower:new e.aP(t,r.u_pixel_coord_lower),u_scale:new e.aO(t,r.u_scale),u_fade:new e.aJ(t,r.u_fade)}),circle:(t,r)=>({u_camera_to_center_distance:new e.aJ(t,r.u_camera_to_center_distance),u_scale_with_map:new e.aI(t,r.u_scale_with_map),u_pitch_with_map:new e.aI(t,r.u_pitch_with_map),u_extrude_scale:new e.aP(t,r.u_extrude_scale),u_device_pixel_ratio:new e.aJ(t,r.u_device_pixel_ratio),u_matrix:new e.aK(t,r.u_matrix)}),collisionBox:(t,r)=>({u_matrix:new e.aK(t,r.u_matrix),u_pixel_extrude_scale:new e.aP(t,r.u_pixel_extrude_scale)}),collisionCircle:(t,r)=>({u_matrix:new e.aK(t,r.u_matrix),u_inv_matrix:new e.aK(t,r.u_inv_matrix),u_camera_to_center_distance:new e.aJ(t,r.u_camera_to_center_distance),u_viewport_size:new e.aP(t,r.u_viewport_size)}),debug:(t,r)=>({u_color:new e.aM(t,r.u_color),u_matrix:new e.aK(t,r.u_matrix),u_overlay:new e.aI(t,r.u_overlay),u_overlay_scale:new e.aJ(t,r.u_overlay_scale)}),clippingMask:(t,r)=>({u_matrix:new e.aK(t,r.u_matrix)}),heatmap:(t,r)=>({u_extrude_scale:new e.aJ(t,r.u_extrude_scale),u_intensity:new e.aJ(t,r.u_intensity),u_matrix:new e.aK(t,r.u_matrix)}),heatmapTexture:(t,r)=>({u_matrix:new e.aK(t,r.u_matrix),u_world:new e.aP(t,r.u_world),u_image:new e.aI(t,r.u_image),u_color_ramp:new e.aI(t,r.u_color_ramp),u_opacity:new e.aJ(t,r.u_opacity)}),hillshade:(t,r)=>({u_matrix:new e.aK(t,r.u_matrix),u_image:new e.aI(t,r.u_image),u_latrange:new e.aP(t,r.u_latrange),u_light:new e.aP(t,r.u_light),u_shadow:new e.aM(t,r.u_shadow),u_highlight:new e.aM(t,r.u_highlight),u_accent:new e.aM(t,r.u_accent)}),hillshadePrepare:(t,r)=>({u_matrix:new e.aK(t,r.u_matrix),u_image:new e.aI(t,r.u_image),u_dimension:new e.aP(t,r.u_dimension),u_zoom:new e.aJ(t,r.u_zoom),u_unpack:new e.aL(t,r.u_unpack)}),line:(t,r)=>({u_matrix:new e.aK(t,r.u_matrix),u_ratio:new e.aJ(t,r.u_ratio),u_device_pixel_ratio:new e.aJ(t,r.u_device_pixel_ratio),u_units_to_pixels:new e.aP(t,r.u_units_to_pixels)}),lineGradient:(t,r)=>({u_matrix:new e.aK(t,r.u_matrix),u_ratio:new e.aJ(t,r.u_ratio),u_device_pixel_ratio:new e.aJ(t,r.u_device_pixel_ratio),u_units_to_pixels:new e.aP(t,r.u_units_to_pixels),u_image:new e.aI(t,r.u_image),u_image_height:new e.aJ(t,r.u_image_height)}),linePattern:(t,r)=>({u_matrix:new e.aK(t,r.u_matrix),u_texsize:new e.aP(t,r.u_texsize),u_ratio:new e.aJ(t,r.u_ratio),u_device_pixel_ratio:new e.aJ(t,r.u_device_pixel_ratio),u_image:new e.aI(t,r.u_image),u_units_to_pixels:new e.aP(t,r.u_units_to_pixels),u_scale:new e.aO(t,r.u_scale),u_fade:new e.aJ(t,r.u_fade)}),lineSDF:(t,r)=>({u_matrix:new e.aK(t,r.u_matrix),u_ratio:new e.aJ(t,r.u_ratio),u_device_pixel_ratio:new e.aJ(t,r.u_device_pixel_ratio),u_units_to_pixels:new e.aP(t,r.u_units_to_pixels),u_patternscale_a:new e.aP(t,r.u_patternscale_a),u_patternscale_b:new e.aP(t,r.u_patternscale_b),u_sdfgamma:new e.aJ(t,r.u_sdfgamma),u_image:new e.aI(t,r.u_image),u_tex_y_a:new e.aJ(t,r.u_tex_y_a),u_tex_y_b:new e.aJ(t,r.u_tex_y_b),u_mix:new e.aJ(t,r.u_mix)}),raster:(t,r)=>({u_matrix:new e.aK(t,r.u_matrix),u_tl_parent:new e.aP(t,r.u_tl_parent),u_scale_parent:new e.aJ(t,r.u_scale_parent),u_buffer_scale:new e.aJ(t,r.u_buffer_scale),u_fade_t:new e.aJ(t,r.u_fade_t),u_opacity:new e.aJ(t,r.u_opacity),u_image0:new e.aI(t,r.u_image0),u_image1:new e.aI(t,r.u_image1),u_brightness_low:new e.aJ(t,r.u_brightness_low),u_brightness_high:new e.aJ(t,r.u_brightness_high),u_saturation_factor:new e.aJ(t,r.u_saturation_factor),u_contrast_factor:new e.aJ(t,r.u_contrast_factor),u_spin_weights:new e.aO(t,r.u_spin_weights)}),symbolIcon:(t,r)=>({u_is_size_zoom_constant:new e.aI(t,r.u_is_size_zoom_constant),u_is_size_feature_constant:new e.aI(t,r.u_is_size_feature_constant),u_size_t:new e.aJ(t,r.u_size_t),u_size:new e.aJ(t,r.u_size),u_camera_to_center_distance:new e.aJ(t,r.u_camera_to_center_distance),u_pitch:new e.aJ(t,r.u_pitch),u_rotate_symbol:new e.aI(t,r.u_rotate_symbol),u_aspect_ratio:new e.aJ(t,r.u_aspect_ratio),u_fade_change:new e.aJ(t,r.u_fade_change),u_matrix:new e.aK(t,r.u_matrix),u_label_plane_matrix:new e.aK(t,r.u_label_plane_matrix),u_coord_matrix:new e.aK(t,r.u_coord_matrix),u_is_text:new e.aI(t,r.u_is_text),u_pitch_with_map:new e.aI(t,r.u_pitch_with_map),u_is_along_line:new e.aI(t,r.u_is_along_line),u_is_variable_anchor:new e.aI(t,r.u_is_variable_anchor),u_texsize:new e.aP(t,r.u_texsize),u_texture:new e.aI(t,r.u_texture),u_translation:new e.aP(t,r.u_translation),u_pitched_scale:new e.aJ(t,r.u_pitched_scale)}),symbolSDF:(t,r)=>({u_is_size_zoom_constant:new e.aI(t,r.u_is_size_zoom_constant),u_is_size_feature_constant:new e.aI(t,r.u_is_size_feature_constant),u_size_t:new e.aJ(t,r.u_size_t),u_size:new e.aJ(t,r.u_size),u_camera_to_center_distance:new e.aJ(t,r.u_camera_to_center_distance),u_pitch:new e.aJ(t,r.u_pitch),u_rotate_symbol:new e.aI(t,r.u_rotate_symbol),u_aspect_ratio:new e.aJ(t,r.u_aspect_ratio),u_fade_change:new e.aJ(t,r.u_fade_change),u_matrix:new e.aK(t,r.u_matrix),u_label_plane_matrix:new e.aK(t,r.u_label_plane_matrix),u_coord_matrix:new e.aK(t,r.u_coord_matrix),u_is_text:new e.aI(t,r.u_is_text),u_pitch_with_map:new e.aI(t,r.u_pitch_with_map),u_is_along_line:new e.aI(t,r.u_is_along_line),u_is_variable_anchor:new e.aI(t,r.u_is_variable_anchor),u_texsize:new e.aP(t,r.u_texsize),u_texture:new e.aI(t,r.u_texture),u_gamma_scale:new e.aJ(t,r.u_gamma_scale),u_device_pixel_ratio:new e.aJ(t,r.u_device_pixel_ratio),u_is_halo:new e.aI(t,r.u_is_halo),u_translation:new e.aP(t,r.u_translation),u_pitched_scale:new e.aJ(t,r.u_pitched_scale)}),symbolTextAndIcon:(t,r)=>({u_is_size_zoom_constant:new e.aI(t,r.u_is_size_zoom_constant),u_is_size_feature_constant:new e.aI(t,r.u_is_size_feature_constant),u_size_t:new e.aJ(t,r.u_size_t),u_size:new e.aJ(t,r.u_size),u_camera_to_center_distance:new e.aJ(t,r.u_camera_to_center_distance),u_pitch:new e.aJ(t,r.u_pitch),u_rotate_symbol:new e.aI(t,r.u_rotate_symbol),u_aspect_ratio:new e.aJ(t,r.u_aspect_ratio),u_fade_change:new e.aJ(t,r.u_fade_change),u_matrix:new e.aK(t,r.u_matrix),u_label_plane_matrix:new e.aK(t,r.u_label_plane_matrix),u_coord_matrix:new e.aK(t,r.u_coord_matrix),u_is_text:new e.aI(t,r.u_is_text),u_pitch_with_map:new e.aI(t,r.u_pitch_with_map),u_is_along_line:new e.aI(t,r.u_is_along_line),u_is_variable_anchor:new e.aI(t,r.u_is_variable_anchor),u_texsize:new e.aP(t,r.u_texsize),u_texsize_icon:new e.aP(t,r.u_texsize_icon),u_texture:new e.aI(t,r.u_texture),u_texture_icon:new e.aI(t,r.u_texture_icon),u_gamma_scale:new e.aJ(t,r.u_gamma_scale),u_device_pixel_ratio:new e.aJ(t,r.u_device_pixel_ratio),u_is_halo:new e.aI(t,r.u_is_halo),u_translation:new e.aP(t,r.u_translation),u_pitched_scale:new e.aJ(t,r.u_pitched_scale)}),background:(t,r)=>({u_matrix:new e.aK(t,r.u_matrix),u_opacity:new e.aJ(t,r.u_opacity),u_color:new e.aM(t,r.u_color)}),backgroundPattern:(t,r)=>({u_matrix:new e.aK(t,r.u_matrix),u_opacity:new e.aJ(t,r.u_opacity),u_image:new e.aI(t,r.u_image),u_pattern_tl_a:new e.aP(t,r.u_pattern_tl_a),u_pattern_br_a:new e.aP(t,r.u_pattern_br_a),u_pattern_tl_b:new e.aP(t,r.u_pattern_tl_b),u_pattern_br_b:new e.aP(t,r.u_pattern_br_b),u_texsize:new e.aP(t,r.u_texsize),u_mix:new e.aJ(t,r.u_mix),u_pattern_size_a:new e.aP(t,r.u_pattern_size_a),u_pattern_size_b:new e.aP(t,r.u_pattern_size_b),u_scale_a:new e.aJ(t,r.u_scale_a),u_scale_b:new e.aJ(t,r.u_scale_b),u_pixel_coord_upper:new e.aP(t,r.u_pixel_coord_upper),u_pixel_coord_lower:new e.aP(t,r.u_pixel_coord_lower),u_tile_units_to_pixels:new e.aJ(t,r.u_tile_units_to_pixels)}),terrain:(t,r)=>({u_matrix:new e.aK(t,r.u_matrix),u_texture:new e.aI(t,r.u_texture),u_ele_delta:new e.aJ(t,r.u_ele_delta),u_fog_matrix:new e.aK(t,r.u_fog_matrix),u_fog_color:new e.aM(t,r.u_fog_color),u_fog_ground_blend:new e.aJ(t,r.u_fog_ground_blend),u_fog_ground_blend_opacity:new e.aJ(t,r.u_fog_ground_blend_opacity),u_horizon_color:new e.aM(t,r.u_horizon_color),u_horizon_fog_blend:new e.aJ(t,r.u_horizon_fog_blend)}),terrainDepth:(t,r)=>({u_matrix:new e.aK(t,r.u_matrix),u_ele_delta:new e.aJ(t,r.u_ele_delta)}),terrainCoords:(t,r)=>({u_matrix:new e.aK(t,r.u_matrix),u_texture:new e.aI(t,r.u_texture),u_terrain_coords_id:new e.aJ(t,r.u_terrain_coords_id),u_ele_delta:new e.aJ(t,r.u_ele_delta)}),sky:(t,r)=>({u_sky_color:new e.aM(t,r.u_sky_color),u_horizon_color:new e.aM(t,r.u_horizon_color),u_horizon:new e.aJ(t,r.u_horizon),u_sky_horizon_blend:new e.aJ(t,r.u_sky_horizon_blend)})};class Qe{constructor(t,e,r){this.context=t;const n=t.gl;this.buffer=n.createBuffer(),this.dynamicDraw=Boolean(r),this.context.unbindVAO(),t.bindElementBuffer.set(this.buffer),n.bufferData(n.ELEMENT_ARRAY_BUFFER,e.arrayBuffer,this.dynamicDraw?n.DYNAMIC_DRAW:n.STATIC_DRAW),this.dynamicDraw||delete e.arrayBuffer}bind(){this.context.bindElementBuffer.set(this.buffer)}updateData(t){const e=this.context.gl;if(!this.dynamicDraw)throw new Error(\"Attempted to update data while not in dynamic mode.\");this.context.unbindVAO(),this.bind(),e.bufferSubData(e.ELEMENT_ARRAY_BUFFER,0,t.arrayBuffer)}destroy(){const t=this.context.gl;this.buffer&&(t.deleteBuffer(this.buffer),delete this.buffer)}}const tr={Int8:\"BYTE\",Uint8:\"UNSIGNED_BYTE\",Int16:\"SHORT\",Uint16:\"UNSIGNED_SHORT\",Int32:\"INT\",Uint32:\"UNSIGNED_INT\",Float32:\"FLOAT\"};class er{constructor(t,e,r,n){this.length=e.length,this.attributes=r,this.itemSize=e.bytesPerElement,this.dynamicDraw=n,this.context=t;const i=t.gl;this.buffer=i.createBuffer(),t.bindVertexBuffer.set(this.buffer),i.bufferData(i.ARRAY_BUFFER,e.arrayBuffer,this.dynamicDraw?i.DYNAMIC_DRAW:i.STATIC_DRAW),this.dynamicDraw||delete e.arrayBuffer}bind(){this.context.bindVertexBuffer.set(this.buffer)}updateData(t){if(t.length!==this.length)throw new Error(`Length of new data is ${t.length}, which doesn't match current length of ${this.length}`);const e=this.context.gl;this.bind(),e.bufferSubData(e.ARRAY_BUFFER,0,t.arrayBuffer)}enableAttributes(t,e){for(let r=0;r<this.attributes.length;r++){const n=this.attributes[r],i=e.attributes[n.name];void 0!==i&&t.enableVertexAttribArray(i)}}setVertexAttribPointers(t,e,r){for(let n=0;n<this.attributes.length;n++){const i=this.attributes[n],a=e.attributes[i.name];void 0!==a&&t.vertexAttribPointer(a,i.components,t[tr[i.type]],!1,this.itemSize,i.offset+this.itemSize*(r||0))}}destroy(){const t=this.context.gl;this.buffer&&(t.deleteBuffer(this.buffer),delete this.buffer)}}const rr=new WeakMap;function nr(t){var e;if(rr.has(t))return rr.get(t);{const r=null===(e=t.getParameter(t.VERSION))||void 0===e?void 0:e.startsWith(\"WebGL 2.0\");return rr.set(t,r),r}}class ir{constructor(t){this.gl=t.gl,this.default=this.getDefault(),this.current=this.default,this.dirty=!1}get(){return this.current}set(t){}getDefault(){return this.default}setDefault(){this.set(this.default)}}class ar extends ir{getDefault(){return e.aN.transparent}set(t){const e=this.current;(t.r!==e.r||t.g!==e.g||t.b!==e.b||t.a!==e.a||this.dirty)&&(this.gl.clearColor(t.r,t.g,t.b,t.a),this.current=t,this.dirty=!1)}}class or extends ir{getDefault(){return 1}set(t){(t!==this.current||this.dirty)&&(this.gl.clearDepth(t),this.current=t,this.dirty=!1)}}class sr extends ir{getDefault(){return 0}set(t){(t!==this.current||this.dirty)&&(this.gl.clearStencil(t),this.current=t,this.dirty=!1)}}class lr extends ir{getDefault(){return[!0,!0,!0,!0]}set(t){const e=this.current;(t[0]!==e[0]||t[1]!==e[1]||t[2]!==e[2]||t[3]!==e[3]||this.dirty)&&(this.gl.colorMask(t[0],t[1],t[2],t[3]),this.current=t,this.dirty=!1)}}class cr extends ir{getDefault(){return!0}set(t){(t!==this.current||this.dirty)&&(this.gl.depthMask(t),this.current=t,this.dirty=!1)}}class ur extends ir{getDefault(){return 255}set(t){(t!==this.current||this.dirty)&&(this.gl.stencilMask(t),this.current=t,this.dirty=!1)}}class hr extends ir{getDefault(){return{func:this.gl.ALWAYS,ref:0,mask:255}}set(t){const e=this.current;(t.func!==e.func||t.ref!==e.ref||t.mask!==e.mask||this.dirty)&&(this.gl.stencilFunc(t.func,t.ref,t.mask),this.current=t,this.dirty=!1)}}class fr extends ir{getDefault(){const t=this.gl;return[t.KEEP,t.KEEP,t.KEEP]}set(t){const e=this.current;(t[0]!==e[0]||t[1]!==e[1]||t[2]!==e[2]||this.dirty)&&(this.gl.stencilOp(t[0],t[1],t[2]),this.current=t,this.dirty=!1)}}class pr extends ir{getDefault(){return!1}set(t){if(t===this.current&&!this.dirty)return;const e=this.gl;t?e.enable(e.STENCIL_TEST):e.disable(e.STENCIL_TEST),this.current=t,this.dirty=!1}}class dr extends ir{getDefault(){return[0,1]}set(t){const e=this.current;(t[0]!==e[0]||t[1]!==e[1]||this.dirty)&&(this.gl.depthRange(t[0],t[1]),this.current=t,this.dirty=!1)}}class mr extends ir{getDefault(){return!1}set(t){if(t===this.current&&!this.dirty)return;const e=this.gl;t?e.enable(e.DEPTH_TEST):e.disable(e.DEPTH_TEST),this.current=t,this.dirty=!1}}class gr extends ir{getDefault(){return this.gl.LESS}set(t){(t!==this.current||this.dirty)&&(this.gl.depthFunc(t),this.current=t,this.dirty=!1)}}class yr extends ir{getDefault(){return!1}set(t){if(t===this.current&&!this.dirty)return;const e=this.gl;t?e.enable(e.BLEND):e.disable(e.BLEND),this.current=t,this.dirty=!1}}class vr extends ir{getDefault(){const t=this.gl;return[t.ONE,t.ZERO]}set(t){const e=this.current;(t[0]!==e[0]||t[1]!==e[1]||this.dirty)&&(this.gl.blendFunc(t[0],t[1]),this.current=t,this.dirty=!1)}}class xr extends ir{getDefault(){return e.aN.transparent}set(t){const e=this.current;(t.r!==e.r||t.g!==e.g||t.b!==e.b||t.a!==e.a||this.dirty)&&(this.gl.blendColor(t.r,t.g,t.b,t.a),this.current=t,this.dirty=!1)}}class _r extends ir{getDefault(){return this.gl.FUNC_ADD}set(t){(t!==this.current||this.dirty)&&(this.gl.blendEquation(t),this.current=t,this.dirty=!1)}}class br extends ir{getDefault(){return!1}set(t){if(t===this.current&&!this.dirty)return;const e=this.gl;t?e.enable(e.CULL_FACE):e.disable(e.CULL_FACE),this.current=t,this.dirty=!1}}class wr extends ir{getDefault(){return this.gl.BACK}set(t){(t!==this.current||this.dirty)&&(this.gl.cullFace(t),this.current=t,this.dirty=!1)}}class Tr extends ir{getDefault(){return this.gl.CCW}set(t){(t!==this.current||this.dirty)&&(this.gl.frontFace(t),this.current=t,this.dirty=!1)}}class kr extends ir{getDefault(){return null}set(t){(t!==this.current||this.dirty)&&(this.gl.useProgram(t),this.current=t,this.dirty=!1)}}class Ar extends ir{getDefault(){return this.gl.TEXTURE0}set(t){(t!==this.current||this.dirty)&&(this.gl.activeTexture(t),this.current=t,this.dirty=!1)}}class Mr extends ir{getDefault(){const t=this.gl;return[0,0,t.drawingBufferWidth,t.drawingBufferHeight]}set(t){const e=this.current;(t[0]!==e[0]||t[1]!==e[1]||t[2]!==e[2]||t[3]!==e[3]||this.dirty)&&(this.gl.viewport(t[0],t[1],t[2],t[3]),this.current=t,this.dirty=!1)}}class Sr extends ir{getDefault(){return null}set(t){if(t===this.current&&!this.dirty)return;const e=this.gl;e.bindFramebuffer(e.FRAMEBUFFER,t),this.current=t,this.dirty=!1}}class Er extends ir{getDefault(){return null}set(t){if(t===this.current&&!this.dirty)return;const e=this.gl;e.bindRenderbuffer(e.RENDERBUFFER,t),this.current=t,this.dirty=!1}}class Cr extends ir{getDefault(){return null}set(t){if(t===this.current&&!this.dirty)return;const e=this.gl;e.bindTexture(e.TEXTURE_2D,t),this.current=t,this.dirty=!1}}class Lr extends ir{getDefault(){return null}set(t){if(t===this.current&&!this.dirty)return;const e=this.gl;e.bindBuffer(e.ARRAY_BUFFER,t),this.current=t,this.dirty=!1}}class Ir extends ir{getDefault(){return null}set(t){const e=this.gl;e.bindBuffer(e.ELEMENT_ARRAY_BUFFER,t),this.current=t,this.dirty=!1}}class Pr extends ir{getDefault(){return null}set(t){var e;if(t===this.current&&!this.dirty)return;const r=this.gl;nr(r)?r.bindVertexArray(t):null===(e=r.getExtension(\"OES_vertex_array_object\"))||void 0===e||e.bindVertexArrayOES(t),this.current=t,this.dirty=!1}}class zr extends ir{getDefault(){return 4}set(t){if(t===this.current&&!this.dirty)return;const e=this.gl;e.pixelStorei(e.UNPACK_ALIGNMENT,t),this.current=t,this.dirty=!1}}class Or extends ir{getDefault(){return!1}set(t){if(t===this.current&&!this.dirty)return;const e=this.gl;e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,t),this.current=t,this.dirty=!1}}class Dr extends ir{getDefault(){return!1}set(t){if(t===this.current&&!this.dirty)return;const e=this.gl;e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,t),this.current=t,this.dirty=!1}}class Rr extends ir{constructor(t,e){super(t),this.context=t,this.parent=e}getDefault(){return null}}class Fr extends Rr{setDirty(){this.dirty=!0}set(t){if(t===this.current&&!this.dirty)return;this.context.bindFramebuffer.set(this.parent);const e=this.gl;e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,t,0),this.current=t,this.dirty=!1}}class Br extends Rr{set(t){if(t===this.current&&!this.dirty)return;this.context.bindFramebuffer.set(this.parent);const e=this.gl;e.framebufferRenderbuffer(e.FRAMEBUFFER,e.DEPTH_ATTACHMENT,e.RENDERBUFFER,t),this.current=t,this.dirty=!1}}class Nr extends Rr{set(t){if(t===this.current&&!this.dirty)return;this.context.bindFramebuffer.set(this.parent);const e=this.gl;e.framebufferRenderbuffer(e.FRAMEBUFFER,e.DEPTH_STENCIL_ATTACHMENT,e.RENDERBUFFER,t),this.current=t,this.dirty=!1}}class jr{constructor(t,e,r,n,i){this.context=t,this.width=e,this.height=r;const a=t.gl,o=this.framebuffer=a.createFramebuffer();if(this.colorAttachment=new Fr(t,o),n)this.depthAttachment=i?new Nr(t,o):new Br(t,o);else if(i)throw new Error(\"Stencil cannot be set without depth\");if(a.checkFramebufferStatus(a.FRAMEBUFFER)!==a.FRAMEBUFFER_COMPLETE)throw new Error(\"Framebuffer is not complete\")}destroy(){const t=this.context.gl,e=this.colorAttachment.get();if(e&&t.deleteTexture(e),this.depthAttachment){const e=this.depthAttachment.get();e&&t.deleteRenderbuffer(e)}t.deleteFramebuffer(this.framebuffer)}}class Ur{constructor(t,e,r){this.blendFunction=t,this.blendColor=e,this.mask=r}}Ur.Replace=[1,0],Ur.disabled=new Ur(Ur.Replace,e.aN.transparent,[!1,!1,!1,!1]),Ur.unblended=new Ur(Ur.Replace,e.aN.transparent,[!0,!0,!0,!0]),Ur.alphaBlended=new Ur([1,771],e.aN.transparent,[!0,!0,!0,!0]);class Vr{constructor(t){var e,r;if(this.gl=t,this.clearColor=new ar(this),this.clearDepth=new or(this),this.clearStencil=new sr(this),this.colorMask=new lr(this),this.depthMask=new cr(this),this.stencilMask=new ur(this),this.stencilFunc=new hr(this),this.stencilOp=new fr(this),this.stencilTest=new pr(this),this.depthRange=new dr(this),this.depthTest=new mr(this),this.depthFunc=new gr(this),this.blend=new yr(this),this.blendFunc=new vr(this),this.blendColor=new xr(this),this.blendEquation=new _r(this),this.cullFace=new br(this),this.cullFaceSide=new wr(this),this.frontFace=new Tr(this),this.program=new kr(this),this.activeTexture=new Ar(this),this.viewport=new Mr(this),this.bindFramebuffer=new Sr(this),this.bindRenderbuffer=new Er(this),this.bindTexture=new Cr(this),this.bindVertexBuffer=new Lr(this),this.bindElementBuffer=new Ir(this),this.bindVertexArray=new Pr(this),this.pixelStoreUnpack=new zr(this),this.pixelStoreUnpackPremultiplyAlpha=new Or(this),this.pixelStoreUnpackFlipY=new Dr(this),this.extTextureFilterAnisotropic=t.getExtension(\"EXT_texture_filter_anisotropic\")||t.getExtension(\"MOZ_EXT_texture_filter_anisotropic\")||t.getExtension(\"WEBKIT_EXT_texture_filter_anisotropic\"),this.extTextureFilterAnisotropic&&(this.extTextureFilterAnisotropicMax=t.getParameter(this.extTextureFilterAnisotropic.MAX_TEXTURE_MAX_ANISOTROPY_EXT)),this.maxTextureSize=t.getParameter(t.MAX_TEXTURE_SIZE),nr(t)){this.HALF_FLOAT=t.HALF_FLOAT;const n=t.getExtension(\"EXT_color_buffer_half_float\");this.RGBA16F=null!==(e=t.RGBA16F)&&void 0!==e?e:null==n?void 0:n.RGBA16F_EXT,this.RGB16F=null!==(r=t.RGB16F)&&void 0!==r?r:null==n?void 0:n.RGB16F_EXT,t.getExtension(\"EXT_color_buffer_float\")}else{t.getExtension(\"EXT_color_buffer_half_float\"),t.getExtension(\"OES_texture_half_float_linear\");const e=t.getExtension(\"OES_texture_half_float\");this.HALF_FLOAT=null==e?void 0:e.HALF_FLOAT_OES}}setDefault(){this.unbindVAO(),this.clearColor.setDefault(),this.clearDepth.setDefault(),this.clearStencil.setDefault(),this.colorMask.setDefault(),this.depthMask.setDefault(),this.stencilMask.setDefault(),this.stencilFunc.setDefault(),this.stencilOp.setDefault(),this.stencilTest.setDefault(),this.depthRange.setDefault(),this.depthTest.setDefault(),this.depthFunc.setDefault(),this.blend.setDefault(),this.blendFunc.setDefault(),this.blendColor.setDefault(),this.blendEquation.setDefault(),this.cullFace.setDefault(),this.cullFaceSide.setDefault(),this.frontFace.setDefault(),this.program.setDefault(),this.activeTexture.setDefault(),this.bindFramebuffer.setDefault(),this.pixelStoreUnpack.setDefault(),this.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.pixelStoreUnpackFlipY.setDefault()}setDirty(){this.clearColor.dirty=!0,this.clearDepth.dirty=!0,this.clearStencil.dirty=!0,this.colorMask.dirty=!0,this.depthMask.dirty=!0,this.stencilMask.dirty=!0,this.stencilFunc.dirty=!0,this.stencilOp.dirty=!0,this.stencilTest.dirty=!0,this.depthRange.dirty=!0,this.depthTest.dirty=!0,this.depthFunc.dirty=!0,this.blend.dirty=!0,this.blendFunc.dirty=!0,this.blendColor.dirty=!0,this.blendEquation.dirty=!0,this.cullFace.dirty=!0,this.cullFaceSide.dirty=!0,this.frontFace.dirty=!0,this.program.dirty=!0,this.activeTexture.dirty=!0,this.viewport.dirty=!0,this.bindFramebuffer.dirty=!0,this.bindRenderbuffer.dirty=!0,this.bindTexture.dirty=!0,this.bindVertexBuffer.dirty=!0,this.bindElementBuffer.dirty=!0,this.bindVertexArray.dirty=!0,this.pixelStoreUnpack.dirty=!0,this.pixelStoreUnpackPremultiplyAlpha.dirty=!0,this.pixelStoreUnpackFlipY.dirty=!0}createIndexBuffer(t,e){return new Qe(this,t,e)}createVertexBuffer(t,e,r){return new er(this,t,e,r)}createRenderbuffer(t,e,r){const n=this.gl,i=n.createRenderbuffer();return this.bindRenderbuffer.set(i),n.renderbufferStorage(n.RENDERBUFFER,t,e,r),this.bindRenderbuffer.set(null),i}createFramebuffer(t,e,r,n){return new jr(this,t,e,r,n)}clear({color:t,depth:e,stencil:r}){const n=this.gl;let i=0;t&&(i|=n.COLOR_BUFFER_BIT,this.clearColor.set(t),this.colorMask.set([!0,!0,!0,!0])),void 0!==e&&(i|=n.DEPTH_BUFFER_BIT,this.depthRange.set([0,1]),this.clearDepth.set(e),this.depthMask.set(!0)),void 0!==r&&(i|=n.STENCIL_BUFFER_BIT,this.clearStencil.set(r),this.stencilMask.set(255)),n.clear(i)}setCullFace(t){!1===t.enable?this.cullFace.set(!1):(this.cullFace.set(!0),this.cullFaceSide.set(t.mode),this.frontFace.set(t.frontFace))}setDepthMode(t){t.func!==this.gl.ALWAYS||t.mask?(this.depthTest.set(!0),this.depthFunc.set(t.func),this.depthMask.set(t.mask),this.depthRange.set(t.range)):this.depthTest.set(!1)}setStencilMode(t){t.test.func!==this.gl.ALWAYS||t.mask?(this.stencilTest.set(!0),this.stencilMask.set(t.mask),this.stencilOp.set([t.fail,t.depthFail,t.pass]),this.stencilFunc.set({func:t.test.func,ref:t.ref,mask:t.test.mask})):this.stencilTest.set(!1)}setColorMode(t){e.aF(t.blendFunction,Ur.Replace)?this.blend.set(!1):(this.blend.set(!0),this.blendFunc.set(t.blendFunction),this.blendColor.set(t.blendColor)),this.colorMask.set(t.mask)}createVertexArray(){var t;return nr(this.gl)?this.gl.createVertexArray():null===(t=this.gl.getExtension(\"OES_vertex_array_object\"))||void 0===t?void 0:t.createVertexArrayOES()}deleteVertexArray(t){var e;return nr(this.gl)?this.gl.deleteVertexArray(t):null===(e=this.gl.getExtension(\"OES_vertex_array_object\"))||void 0===e?void 0:e.deleteVertexArrayOES(t)}unbindVAO(){this.bindVertexArray.set(null)}}class qr{constructor(t,e,r){this.func=t,this.mask=e,this.range=r}}qr.ReadOnly=!1,qr.ReadWrite=!0,qr.disabled=new qr(519,qr.ReadOnly,[0,1]);const Hr=7680;class Gr{constructor(t,e,r,n,i,a){this.test=t,this.ref=e,this.mask=r,this.fail=n,this.depthFail=i,this.pass=a}}Gr.disabled=new Gr({func:519,mask:0},0,0,Hr,Hr,Hr);class Zr{constructor(t,e,r){this.enable=t,this.mode=e,this.frontFace=r}}let Wr;function Yr(t,r,n,i,a){const o=t.context,s=o.gl,l=t.useProgram(\"collisionBox\"),c=[];let u=0,h=0;for(let f=0;f<i.length;f++){const p=i[f],d=r.getTile(p).getBucket(n);if(!d)continue;const m=a?d.textCollisionBox:d.iconCollisionBox,g=d.collisionCircleArray;if(g.length>0){const r=e.H();e.aR(r,d.placementInvProjMatrix,t.transform.glCoordMatrix),e.aR(r,r,d.placementViewportMatrix),c.push({circleArray:g,circleOffset:h,transform:p.posMatrix,invTransform:r,coord:p}),u+=g.length/4,h=u}m&&l.draw(o,s.LINES,qr.disabled,Gr.disabled,t.colorModeForRenderPass(),Zr.disabled,Le(t.transform,p.posMatrix),t.style.map.terrain&&t.style.map.terrain.getTerrainData(p),n.id,m.layoutVertexBuffer,m.indexBuffer,m.segments,null,t.transform.zoom,null,null,m.collisionVertexBuffer)}if(!a||!c.length)return;const f=t.useProgram(\"collisionCircle\"),p=new e.aS;p.resize(4*u),p._trim();let d=0;for(const t of c)for(let e=0;e<t.circleArray.length/4;e++){const r=4*e,n=t.circleArray[r+0],i=t.circleArray[r+1],a=t.circleArray[r+2],o=t.circleArray[r+3];p.emplace(d++,n,i,a,o,0),p.emplace(d++,n,i,a,o,1),p.emplace(d++,n,i,a,o,2),p.emplace(d++,n,i,a,o,3)}(!Wr||Wr.length<2*u)&&(Wr=function(t){const r=2*t,n=new e.aU;n.resize(r),n._trim();for(let t=0;t<r;t++){const e=6*t;n.uint16[e+0]=4*t+0,n.uint16[e+1]=4*t+1,n.uint16[e+2]=4*t+2,n.uint16[e+3]=4*t+2,n.uint16[e+4]=4*t+3,n.uint16[e+5]=4*t+0}return n}(u));const m=o.createIndexBuffer(Wr,!0),g=o.createVertexBuffer(p,e.aT.members,!0);for(const r of c){const i=Ie(r.transform,r.invTransform,t.transform);f.draw(o,s.TRIANGLES,qr.disabled,Gr.disabled,t.colorModeForRenderPass(),Zr.disabled,i,t.style.map.terrain&&t.style.map.terrain.getTerrainData(r.coord),n.id,g,m,e.a0.simpleSegment(0,2*r.circleOffset,r.circleArray.length,r.circleArray.length/2),null,t.transform.zoom,null,null,null)}g.destroy(),m.destroy()}Zr.disabled=new Zr(!1,1029,2305),Zr.backCCW=new Zr(!0,1029,2305);const Xr=e.ao(new Float32Array(16));function $r(t,r,n,i,a){if(\"translucent\"!==t.renderPass)return;const o=Gr.disabled,s=t.colorModeForRenderPass();(n._unevaluatedLayout.hasValue(\"text-variable-anchor\")||n._unevaluatedLayout.hasValue(\"text-variable-anchor-offset\"))&&function(t,r,n,i,a,o,s,l,c){const u=r.transform,h=ie(),f=\"map\"===a,p=\"map\"===o;for(const a of t){const t=i.getTile(a),o=t.getBucket(n);if(!o||!o.text||!o.text.segments.get().length)continue;const d=o.textSizeData,m=e.ah(d,u.zoom),g=Nt(t,1,r.transform.zoom),y=_t(a.posMatrix,p,f,r.transform,g),v=\"none\"!==n.layout.get(\"icon-text-fit\")&&o.hasIconData();if(m){const e=Math.pow(2,u.zoom-t.tileID.overscaledZ),n=r.style.map.terrain?(t,e)=>r.style.map.terrain.getElevation(a,t,e):null,i=h.translatePosition(u,t,s,l);Qr(o,f,p,c,u,y,a.posMatrix,e,m,v,h,i,a.toUnwrapped(),n)}}}(i,t,n,r,n.layout.get(\"text-rotation-alignment\"),n.layout.get(\"text-pitch-alignment\"),n.paint.get(\"text-translate\"),n.paint.get(\"text-translate-anchor\"),a),0!==n.paint.get(\"icon-opacity\").constantOr(1)&&en(t,r,n,i,!1,n.paint.get(\"icon-translate\"),n.paint.get(\"icon-translate-anchor\"),n.layout.get(\"icon-rotation-alignment\"),n.layout.get(\"icon-pitch-alignment\"),n.layout.get(\"icon-keep-upright\"),o,s),0!==n.paint.get(\"text-opacity\").constantOr(1)&&en(t,r,n,i,!0,n.paint.get(\"text-translate\"),n.paint.get(\"text-translate-anchor\"),n.layout.get(\"text-rotation-alignment\"),n.layout.get(\"text-pitch-alignment\"),n.layout.get(\"text-keep-upright\"),o,s),r.map.showCollisionBoxes&&(Yr(t,r,n,i,!0),Yr(t,r,n,i,!1))}function Jr(t,r,n,i,a,o){const{horizontalAlign:s,verticalAlign:l}=e.av(t),c=-(s-.5)*r,u=-(l-.5)*n;return new e.P((c/a+i[0])*o,(u/a+i[1])*o)}function Kr(t,r,n,i,a,o){const s=r.tileAnchorPoint.add(new e.P(r.translation[0],r.translation[1]));if(r.pitchWithMap){let t=i.mult(o);return n||(t=t.rotate(-a)),wt(s.add(t),r.labelPlaneMatrix,r.getElevation).point}if(n){const e=It(r.tileAnchorPoint.x+1,r.tileAnchorPoint.y,r).point.sub(t),n=Math.atan(e.y/e.x)+(e.x<0?Math.PI:0);return t.add(i.rotate(n))}return t.add(i)}function Qr(t,r,n,i,a,o,s,l,c,u,h,f,p,d){const m=t.text.placedSymbolArray,g=t.text.dynamicLayoutVertexArray,y=t.icon.dynamicLayoutVertexArray,v={};g.clear();for(let y=0;y<m.length;y++){const x=m.get(y),_=t.allowVerticalPlacement&&!x.placedOrientation,b=x.hidden||!x.crossTileID||_?null:i[x.crossTileID];if(b){const i=new e.P(x.anchorX,x.anchorY),m={getElevation:d,width:a.width,height:a.height,labelPlaneMatrix:o,lineVertexArray:null,pitchWithMap:n,projection:h,projectionCache:null,tileAnchorPoint:i,translation:f,unwrappedTileID:p},y=n?wt(i,s,d):It(i.x,i.y,m),_=Tt(a.cameraToCenterDistance,y.signedDistanceFromCamera);let w=e.aj(t.textSizeData,c,x)*_/e.aq;n&&(w*=t.tilePixelRatio/l);const{width:T,height:k,anchor:A,textOffset:M,textBoxScale:S}=b,E=Jr(A,T,k,M,S,w),C=h.getPitchedTextCorrection(a,i.add(new e.P(f[0],f[1])),p),L=Kr(y.point,m,r,E,a.angle,C),I=t.allowVerticalPlacement&&x.placedOrientation===e.ai.vertical?Math.PI/2:0;for(let t=0;t<x.numGlyphs;t++)e.ak(g,L,I);u&&x.associatedIconIndex>=0&&(v[x.associatedIconIndex]={shiftedAnchor:L,angle:I})}else Rt(x.numGlyphs,g)}if(u){y.clear();const r=t.icon.placedSymbolArray;for(let t=0;t<r.length;t++){const n=r.get(t);if(n.hidden)Rt(n.numGlyphs,y);else{const r=v[t];if(r)for(let t=0;t<n.numGlyphs;t++)e.ak(y,r.shiftedAnchor,r.angle);else Rt(n.numGlyphs,y)}}t.icon.dynamicLayoutVertexBuffer.updateData(y)}t.text.dynamicLayoutVertexBuffer.updateData(g)}function tn(t,e,r){return r.iconsInText&&e?\"symbolTextAndIcon\":t?\"symbolSDF\":\"symbolIcon\"}function en(t,r,n,i,a,o,s,l,c,u,h,f){const p=t.context,d=p.gl,m=t.transform,g=ie(),y=\"map\"===l,v=\"map\"===c,x=\"viewport\"!==l&&\"point\"!==n.layout.get(\"symbol-placement\"),_=y&&!v&&!x,b=!v&&x,w=!n.layout.get(\"symbol-sort-key\").isConstant();let T=!1;const k=t.depthModeForSublayer(0,qr.ReadOnly),A=n._unevaluatedLayout.hasValue(\"text-variable-anchor\")||n._unevaluatedLayout.hasValue(\"text-variable-anchor-offset\"),M=[],S=g.getCircleRadiusCorrection(m);for(const l of i){const i=r.getTile(l),c=i.getBucket(n);if(!c)continue;const h=a?c.text:c.icon;if(!h||!h.segments.get().length||!h.hasVisibleVertices)continue;const f=h.programConfigurations.get(n.id),p=a||c.sdfIcons,k=a?c.textSizeData:c.iconSizeData,E=v||0!==m.pitch,C=t.useProgram(tn(p,a,c),f),L=e.ah(k,m.zoom),I=t.style.map.terrain&&t.style.map.terrain.getTerrainData(l);let P,z,O,D,R=[0,0],F=null;if(a){if(z=i.glyphAtlasTexture,O=d.LINEAR,P=i.glyphAtlasTexture.size,c.iconsInText){R=i.imageAtlasTexture.size,F=i.imageAtlasTexture;const e=\"composite\"===k.kind||\"camera\"===k.kind;D=E||t.options.rotating||t.options.zooming||e?d.LINEAR:d.NEAREST}}else{const e=1!==n.layout.get(\"icon-size\").constantOr(0)||c.iconsNeedLinear;z=i.imageAtlasTexture,O=p||t.options.rotating||t.options.zooming||e||E?d.LINEAR:d.NEAREST,P=i.imageAtlasTexture.size}const B=Nt(i,1,t.transform.zoom),N=b?l.posMatrix:Xr,j=_t(N,v,y,t.transform,B),U=bt(N,v,y,t.transform,B),V=bt(l.posMatrix,v,y,t.transform,B),q=g.translatePosition(t.transform,i,o,s),H=A&&c.hasTextData(),G=\"none\"!==n.layout.get(\"icon-text-fit\")&&H&&c.hasIconData();if(x){const e=t.style.map.terrain?(e,r)=>t.style.map.terrain.getElevation(l,e,r):null,r=\"map\"===n.layout.get(\"text-rotation-alignment\");At(c,l.posMatrix,t,a,j,V,v,u,r,g,l.toUnwrapped(),m.width,m.height,q,e)}const Z=l.posMatrix,W=a&&A||G,Y=x||W?Xr:j,X=U,$=p&&0!==n.paint.get(a?\"text-halo-width\":\"icon-halo-width\").constantOr(1);let J;J=p?c.iconsInText?Xe(k.kind,L,_,v,x,W,t,Z,Y,X,q,P,R,S):Ye(k.kind,L,_,v,x,W,t,Z,Y,X,q,a,P,!0,S):We(k.kind,L,_,v,x,W,t,Z,Y,X,q,a,P,S);const K={program:C,buffers:h,uniformValues:J,atlasTexture:z,atlasTextureIcon:F,atlasInterpolation:O,atlasInterpolationIcon:D,isSDF:p,hasHalo:$};if(w&&c.canOverlap){T=!0;const t=h.segments.get();for(const r of t)M.push({segments:new e.a0([r]),sortKey:r.sortKey,state:K,terrainData:I})}else M.push({segments:h.segments,sortKey:0,state:K,terrainData:I})}T&&M.sort(((t,e)=>t.sortKey-e.sortKey));for(const e of M){const r=e.state;if(p.activeTexture.set(d.TEXTURE0),r.atlasTexture.bind(r.atlasInterpolation,d.CLAMP_TO_EDGE),r.atlasTextureIcon&&(p.activeTexture.set(d.TEXTURE1),r.atlasTextureIcon&&r.atlasTextureIcon.bind(r.atlasInterpolationIcon,d.CLAMP_TO_EDGE)),r.isSDF){const i=r.uniformValues;r.hasHalo&&(i.u_is_halo=1,rn(r.buffers,e.segments,n,t,r.program,k,h,f,i,e.terrainData)),i.u_is_halo=0}rn(r.buffers,e.segments,n,t,r.program,k,h,f,r.uniformValues,e.terrainData)}}function rn(t,e,r,n,i,a,o,s,l,c){const u=n.context,h=u.gl;i.draw(u,h.TRIANGLES,a,o,s,Zr.disabled,l,c,r.id,t.layoutVertexBuffer,t.indexBuffer,e,r.paint,n.transform.zoom,t.programConfigurations.get(r.id),t.dynamicLayoutVertexBuffer,t.opacityVertexBuffer)}function nn(t,r,n,i){if(0!==n.paint.get(\"heatmap-opacity\"))if(\"offscreen\"===t.renderPass){const a=t.context,o=a.gl,s=Gr.disabled,l=new Ur([o.ONE,o.ONE],e.aN.transparent,[!0,!0,!0,!0]);(function(t,e,r){const n=t.gl;t.activeTexture.set(n.TEXTURE1),t.viewport.set([0,0,e.width/4,e.height/4]);let i=r.heatmapFbo;if(i)n.bindTexture(n.TEXTURE_2D,i.colorAttachment.get()),t.bindFramebuffer.set(i.framebuffer);else{const a=n.createTexture();n.bindTexture(n.TEXTURE_2D,a),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_S,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_T,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MIN_FILTER,n.LINEAR),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MAG_FILTER,n.LINEAR),i=r.heatmapFbo=t.createFramebuffer(e.width/4,e.height/4,!1,!1),function(t,e,r,n){var i,a;const o=t.gl,s=null!==(i=t.HALF_FLOAT)&&void 0!==i?i:o.UNSIGNED_BYTE,l=null!==(a=t.RGBA16F)&&void 0!==a?a:o.RGBA;o.texImage2D(o.TEXTURE_2D,0,l,e.width/4,e.height/4,0,o.RGBA,s,null),n.colorAttachment.set(r)}(t,e,a,i)}})(a,t,n),a.clear({color:e.aN.transparent});for(let e=0;e<i.length;e++){const c=i[e];if(r.hasRenderableParent(c))continue;const u=r.getTile(c),h=u.getBucket(n);if(!h)continue;const f=h.programConfigurations.get(n.id),p=t.useProgram(\"heatmap\",f),{zoom:d}=t.transform;p.draw(a,o.TRIANGLES,qr.disabled,s,l,Zr.disabled,Oe(c.posMatrix,u,d,n.paint.get(\"heatmap-intensity\")),null,n.id,h.layoutVertexBuffer,h.indexBuffer,h.segments,n.paint,t.transform.zoom,f)}a.viewport.set([0,0,t.width,t.height])}else\"translucent\"===t.renderPass&&(t.context.setColorMode(t.colorModeForRenderPass()),function(t,e){const r=t.context,n=r.gl,i=e.heatmapFbo;if(!i)return;r.activeTexture.set(n.TEXTURE0),n.bindTexture(n.TEXTURE_2D,i.colorAttachment.get()),r.activeTexture.set(n.TEXTURE1);let a=e.colorRampTexture;a||(a=e.colorRampTexture=new w(r,e.colorRamp,n.RGBA)),a.bind(n.LINEAR,n.CLAMP_TO_EDGE),t.useProgram(\"heatmapTexture\").draw(r,n.TRIANGLES,qr.disabled,Gr.disabled,t.colorModeForRenderPass(),Zr.disabled,De(t,e,0,1),null,e.id,t.viewportBuffer,t.quadTriangleIndexBuffer,t.viewportSegments,e.paint,t.transform.zoom)}(t,n))}function an(t,e,r,n,i){if(!r||!n||!n.imageAtlas)return;const a=n.imageAtlas.patternPositions;let o=a[r.to.toString()],s=a[r.from.toString()];if(!o&&s&&(o=s),!s&&o&&(s=o),!o||!s){const t=i.getPaintProperty(e);o=a[t],s=a[t]}o&&s&&t.setConstantPatternPositions(o,s)}function on(t,e,r,n,i,a,o){const s=t.context.gl,l=\"fill-pattern\",c=r.paint.get(l),u=c&&c.constantOr(1),h=r.getCrossfadeParameters();let f,p,d,m,g;o?(p=u&&!r.getPaintProperty(\"fill-outline-color\")?\"fillOutlinePattern\":\"fillOutline\",f=s.LINES):(p=u?\"fillPattern\":\"fill\",f=s.TRIANGLES);const y=c.constantOr(null);for(const c of n){const n=e.getTile(c);if(u&&!n.patternsLoaded())continue;const v=n.getBucket(r);if(!v)continue;const x=v.programConfigurations.get(r.id),_=t.useProgram(p,x),b=t.style.map.terrain&&t.style.map.terrain.getTerrainData(c);u&&(t.context.activeTexture.set(s.TEXTURE0),n.imageAtlasTexture.bind(s.LINEAR,s.CLAMP_TO_EDGE),x.updatePaintBuffers(h)),an(x,l,y,n,r);const w=b?c:null,T=w?w.posMatrix:c.posMatrix,k=t.translatePosMatrix(T,n,r.paint.get(\"fill-translate\"),r.paint.get(\"fill-translate-anchor\"));if(o){m=v.indexBuffer2,g=v.segments2;const e=[s.drawingBufferWidth,s.drawingBufferHeight];d=\"fillOutlinePattern\"===p&&u?Ee(k,t,h,n,e):Se(k,e)}else m=v.indexBuffer,g=v.segments,d=u?Me(k,t,h,n):Ae(k);_.draw(t.context,f,i,t.stencilModeForClipping(c),a,Zr.disabled,d,b,r.id,v.layoutVertexBuffer,m,g,r.paint,t.transform.zoom,x)}}function sn(t,e,r,n,i,a,o){const s=t.context,l=s.gl,c=\"fill-extrusion-pattern\",u=r.paint.get(c),h=u.constantOr(1),f=r.getCrossfadeParameters(),p=r.paint.get(\"fill-extrusion-opacity\"),d=u.constantOr(null);for(const u of n){const n=e.getTile(u),m=n.getBucket(r);if(!m)continue;const g=t.style.map.terrain&&t.style.map.terrain.getTerrainData(u),y=m.programConfigurations.get(r.id),v=t.useProgram(h?\"fillExtrusionPattern\":\"fillExtrusion\",y);h&&(t.context.activeTexture.set(l.TEXTURE0),n.imageAtlasTexture.bind(l.LINEAR,l.CLAMP_TO_EDGE),y.updatePaintBuffers(f)),an(y,c,d,n,r);const x=t.translatePosMatrix(u.posMatrix,n,r.paint.get(\"fill-extrusion-translate\"),r.paint.get(\"fill-extrusion-translate-anchor\")),_=r.paint.get(\"fill-extrusion-vertical-gradient\"),b=h?ke(x,t,_,p,u,f,n):Te(x,t,_,p);v.draw(s,s.gl.TRIANGLES,i,a,o,Zr.backCCW,b,g,r.id,m.layoutVertexBuffer,m.indexBuffer,m.segments,r.paint,t.transform.zoom,y,t.style.map.terrain&&m.centroidVertexBuffer)}}function ln(t,e,r,n,i,a,o){const s=t.context,l=s.gl,c=r.fbo;if(!c)return;const u=t.useProgram(\"hillshade\"),h=t.style.map.terrain&&t.style.map.terrain.getTerrainData(e);s.activeTexture.set(l.TEXTURE0),l.bindTexture(l.TEXTURE_2D,c.colorAttachment.get());const f=h?e:null;u.draw(s,l.TRIANGLES,i,a,o,Zr.disabled,Re(t,r,n,f),h,n.id,t.rasterBoundsBuffer,t.quadTriangleIndexBuffer,t.rasterBoundsSegments)}function cn(t,e,r,n,i,a){const o=t.context,s=o.gl,l=e.dem;if(l&&l.data){const c=l.dim,u=l.stride,h=l.getPixels();if(o.activeTexture.set(s.TEXTURE1),o.pixelStoreUnpackPremultiplyAlpha.set(!1),e.demTexture=e.demTexture||t.getTileTexture(u),e.demTexture){const t=e.demTexture;t.update(h,{premultiply:!1}),t.bind(s.NEAREST,s.CLAMP_TO_EDGE)}else e.demTexture=new w(o,h,s.RGBA,{premultiply:!1}),e.demTexture.bind(s.NEAREST,s.CLAMP_TO_EDGE);o.activeTexture.set(s.TEXTURE0);let f=e.fbo;if(!f){const t=new w(o,{width:c,height:c,data:null},s.RGBA);t.bind(s.LINEAR,s.CLAMP_TO_EDGE),f=e.fbo=o.createFramebuffer(c,c,!0,!1),f.colorAttachment.set(t.texture)}o.bindFramebuffer.set(f.framebuffer),o.viewport.set([0,0,c,c]),t.useProgram(\"hillshadePrepare\").draw(o,s.TRIANGLES,n,i,a,Zr.disabled,Fe(e.tileID,l),null,r.id,t.rasterBoundsBuffer,t.quadTriangleIndexBuffer,t.rasterBoundsSegments),e.needsHillshadePrepare=!1}}function un(t,r,n,i,o,s){const l=i.paint.get(\"raster-fade-duration\");if(!s&&l>0){const i=a.now(),s=(i-t.timeAdded)/l,c=r?(i-r.timeAdded)/l:-1,u=n.getSource(),h=o.coveringZoomLevel({tileSize:u.tileSize,roundZoom:u.roundZoom}),f=!r||Math.abs(r.tileID.overscaledZ-h)>Math.abs(t.tileID.overscaledZ-h),p=f&&t.refreshedUponExpiration?1:e.ad(f?s:1-c,0,1);return t.refreshedUponExpiration&&s>=1&&(t.refreshedUponExpiration=!1),r?{opacity:1,mix:1-p}:{opacity:p,mix:0}}return{opacity:1,mix:0}}const hn=new e.aN(1,0,0,1),fn=new e.aN(0,1,0,1),pn=new e.aN(0,0,1,1),dn=new e.aN(1,0,1,1),mn=new e.aN(0,1,1,1);function gn(t){const e=t.transform.padding;yn(t,t.transform.height-(e.top||0),3,hn),yn(t,e.bottom||0,3,fn),vn(t,e.left||0,3,pn),vn(t,t.transform.width-(e.right||0),3,dn);const r=t.transform.centerPoint;!function(t,e,r,n){const i=20,a=2;xn(t,e-a/2,r-i/2,a,i,n),xn(t,e-i/2,r-a/2,i,a,n)}(t,r.x,t.transform.height-r.y,mn)}function yn(t,e,r,n){xn(t,0,e+r/2,t.transform.width,r,n)}function vn(t,e,r,n){xn(t,e-r/2,0,r,t.transform.height,n)}function xn(t,e,r,n,i,a){const o=t.context,s=o.gl;s.enable(s.SCISSOR_TEST),s.scissor(e*t.pixelRatio,r*t.pixelRatio,n*t.pixelRatio,i*t.pixelRatio),o.clear({color:a}),s.disable(s.SCISSOR_TEST)}function _n(t,r,n){const i=t.context,a=i.gl,o=n.posMatrix,s=t.useProgram(\"debug\"),l=qr.disabled,c=Gr.disabled,u=t.colorModeForRenderPass(),h=\"$debug\",f=t.style.map.terrain&&t.style.map.terrain.getTerrainData(n);i.activeTexture.set(a.TEXTURE0);const p=r.getTileByID(n.key).latestRawTileData,d=p&&p.byteLength||0,m=Math.floor(d/1024),g=r.getTile(n).tileSize,y=512/Math.min(g,512)*(n.overscaledZ/t.transform.zoom)*.5;let v=n.canonical.toString();n.overscaledZ!==n.canonical.z&&(v+=` => ${n.overscaledZ}`),function(t,e){t.initDebugOverlayCanvas();const r=t.debugOverlayCanvas,n=t.context.gl,i=t.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(e,5,5),i.strokeText(e,5,5),t.debugOverlayTexture.update(r),t.debugOverlayTexture.bind(n.LINEAR,n.CLAMP_TO_EDGE)}(t,`${v} ${m}kB`),s.draw(i,a.TRIANGLES,l,c,Ur.alphaBlended,Zr.disabled,Pe(o,e.aN.transparent,y),null,h,t.debugBuffer,t.quadTriangleIndexBuffer,t.debugSegments),s.draw(i,a.LINE_STRIP,l,c,u,Zr.disabled,Pe(o,e.aN.red),f,h,t.debugBuffer,t.tileBorderIndexBuffer,t.debugSegments)}function bn(t,e,r){const n=t.context,i=n.gl,a=t.colorModeForRenderPass(),o=new qr(i.LEQUAL,qr.ReadWrite,t.depthRangeFor3D),s=t.useProgram(\"terrain\"),l=e.getTerrainMesh();n.bindFramebuffer.set(null),n.viewport.set([0,0,t.width,t.height]);for(const c of r){const r=t.renderToTexture.getTexture(c),u=e.getTerrainData(c.tileID);n.activeTexture.set(i.TEXTURE0),i.bindTexture(i.TEXTURE_2D,r.texture);const h=t.transform.calculatePosMatrix(c.tileID.toUnwrapped()),f=e.getMeshFrameDelta(t.transform.zoom),p=t.transform.calculateFogMatrix(c.tileID.toUnwrapped()),d=xe(h,f,p,t.style.sky,t.transform.pitch);s.draw(n,i.TRIANGLES,o,Gr.disabled,a,Zr.backCCW,d,u,\"terrain\",l.vertexBuffer,l.indexBuffer,l.segments)}}class wn{constructor(t,e,r){this.vertexBuffer=t,this.indexBuffer=e,this.segments=r}destroy(){this.vertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.vertexBuffer=null,this.indexBuffer=null,this.segments=null}}class Tn{constructor(t,r){this.context=new Vr(t),this.transform=r,this._tileTextures={},this.terrainFacilitator={dirty:!0,matrix:e.ao(new Float64Array(16)),renderTime:0},this.setup(),this.numSublayers=dt.maxUnderzooming+dt.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new he}resize(t,e,r){if(this.width=Math.floor(t*r),this.height=Math.floor(e*r),this.pixelRatio=r,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(const t of this.style._order)this.style._layers[t].resize()}setup(){const t=this.context,r=new e.aX;r.emplaceBack(0,0),r.emplaceBack(e.X,0),r.emplaceBack(0,e.X),r.emplaceBack(e.X,e.X),this.tileExtentBuffer=t.createVertexBuffer(r,me.members),this.tileExtentSegments=e.a0.simpleSegment(0,0,4,2);const n=new e.aX;n.emplaceBack(0,0),n.emplaceBack(e.X,0),n.emplaceBack(0,e.X),n.emplaceBack(e.X,e.X),this.debugBuffer=t.createVertexBuffer(n,me.members),this.debugSegments=e.a0.simpleSegment(0,0,4,5);const i=new e.$;i.emplaceBack(0,0,0,0),i.emplaceBack(e.X,0,e.X,0),i.emplaceBack(0,e.X,0,e.X),i.emplaceBack(e.X,e.X,e.X,e.X),this.rasterBoundsBuffer=t.createVertexBuffer(i,et.members),this.rasterBoundsSegments=e.a0.simpleSegment(0,0,4,2);const a=new e.aX;a.emplaceBack(0,0),a.emplaceBack(1,0),a.emplaceBack(0,1),a.emplaceBack(1,1),this.viewportBuffer=t.createVertexBuffer(a,me.members),this.viewportSegments=e.a0.simpleSegment(0,0,4,2);const o=new e.aZ;o.emplaceBack(0),o.emplaceBack(1),o.emplaceBack(3),o.emplaceBack(2),o.emplaceBack(0),this.tileBorderIndexBuffer=t.createIndexBuffer(o);const s=new e.aY;s.emplaceBack(0,1,2),s.emplaceBack(2,1,3),this.quadTriangleIndexBuffer=t.createIndexBuffer(s);const l=this.context.gl;this.stencilClearMode=new Gr({func:l.ALWAYS,mask:0},0,255,l.ZERO,l.ZERO,l.ZERO)}clearStencil(){const t=this.context,r=t.gl;this.nextStencilID=1,this.currentStencilSource=void 0;const n=e.H();e.aQ(n,0,this.width,this.height,0,0,1),e.K(n,n,[r.drawingBufferWidth,r.drawingBufferHeight,0]),this.useProgram(\"clippingMask\").draw(t,r.TRIANGLES,qr.disabled,this.stencilClearMode,Ur.disabled,Zr.disabled,ze(n),null,\"$clipping\",this.viewportBuffer,this.quadTriangleIndexBuffer,this.viewportSegments)}_renderTileClippingMasks(t,e){if(this.currentStencilSource===t.source||!t.isTileClipped()||!e||!e.length)return;this.currentStencilSource=t.source;const r=this.context,n=r.gl;this.nextStencilID+e.length>256&&this.clearStencil(),r.setColorMode(Ur.disabled),r.setDepthMode(qr.disabled);const i=this.useProgram(\"clippingMask\");this._tileClippingMaskIDs={};for(const t of e){const e=this._tileClippingMaskIDs[t.key]=this.nextStencilID++,a=this.style.map.terrain&&this.style.map.terrain.getTerrainData(t);i.draw(r,n.TRIANGLES,qr.disabled,new Gr({func:n.ALWAYS,mask:0},e,255,n.KEEP,n.KEEP,n.REPLACE),Ur.disabled,Zr.disabled,ze(t.posMatrix),a,\"$clipping\",this.tileExtentBuffer,this.quadTriangleIndexBuffer,this.tileExtentSegments)}}stencilModeFor3D(){this.currentStencilSource=void 0,this.nextStencilID+1>256&&this.clearStencil();const t=this.nextStencilID++,e=this.context.gl;return new Gr({func:e.NOTEQUAL,mask:255},t,255,e.KEEP,e.KEEP,e.REPLACE)}stencilModeForClipping(t){const e=this.context.gl;return new Gr({func:e.EQUAL,mask:255},this._tileClippingMaskIDs[t.key],0,e.KEEP,e.KEEP,e.REPLACE)}stencilConfigForOverlap(t){const e=this.context.gl,r=t.sort(((t,e)=>e.overscaledZ-t.overscaledZ)),n=r[r.length-1].overscaledZ,i=r[0].overscaledZ-n+1;if(i>1){this.currentStencilSource=void 0,this.nextStencilID+i>256&&this.clearStencil();const t={};for(let r=0;r<i;r++)t[r+n]=new Gr({func:e.GEQUAL,mask:255},r+this.nextStencilID,255,e.KEEP,e.KEEP,e.REPLACE);return this.nextStencilID+=i,[t,r]}return[{[n]:Gr.disabled},r]}colorModeForRenderPass(){const t=this.context.gl;if(this._showOverdrawInspector){const r=1/8;return new Ur([t.CONSTANT_COLOR,t.ONE],new e.aN(r,r,r,0),[!0,!0,!0,!0])}return\"opaque\"===this.renderPass?Ur.unblended:Ur.alphaBlended}depthModeForSublayer(t,e,r){if(!this.opaquePassEnabledForLayer())return qr.disabled;const n=1-((1+this.currentLayer)*this.numSublayers+t)*this.depthEpsilon;return new qr(r||this.context.gl.LEQUAL,e,[n,n])}opaquePassEnabledForLayer(){return this.currentLayer<this.opaquePassCutoff}render(t,r){var n;this.style=t,this.options=r,this.lineAtlas=t.lineAtlas,this.imageManager=t.imageManager,this.glyphManager=t.glyphManager,this.symbolFadeChange=t.placement.symbolFadeChange(a.now()),this.imageManager.beginFrame();const i=this.style._order,o=this.style.sourceCaches,s={},l={},c={};for(const t in o){const e=o[t];e.used&&e.prepare(this.context),s[t]=e.getVisibleCoordinates(),l[t]=s[t].slice().reverse(),c[t]=e.getVisibleCoordinates(!0).reverse()}this.opaquePassCutoff=1/0;for(let t=0;t<i.length;t++){const e=i[t];if(this.style._layers[e].is3D()){this.opaquePassCutoff=t;break}}this.maybeDrawDepthAndCoords(!1),this.renderToTexture&&(this.renderToTexture.prepareForRender(this.style,this.transform.zoom),this.opaquePassCutoff=0),this.renderPass=\"offscreen\";for(const t of i){const e=this.style._layers[t];if(!e.hasOffscreenPass()||e.isHidden(this.transform.zoom))continue;const r=l[e.source];(\"custom\"===e.type||r.length)&&this.renderLayer(this,o[e.source],e,r)}if(this.context.bindFramebuffer.set(null),this.context.clear({color:r.showOverdrawInspector?e.aN.black:e.aN.transparent,depth:1}),this.clearStencil(),(null===(n=this.style.stylesheet)||void 0===n?void 0:n.sky)&&function(t,r){const n=t.context,i=n.gl,a=((t,e,r)=>({u_sky_color:t.properties.get(\"sky-color\"),u_horizon_color:t.properties.get(\"horizon-color\"),u_horizon:(e.height/2+e.getHorizon())*r,u_sky_horizon_blend:t.properties.get(\"sky-horizon-blend\")*e.height/2*r}))(r,t.style.map.transform,t.pixelRatio),o=new qr(i.LEQUAL,qr.ReadWrite,[0,1]),s=Gr.disabled,l=t.colorModeForRenderPass(),c=t.useProgram(\"sky\");if(!r.mesh){const t=new e.aX;t.emplaceBack(-1,-1),t.emplaceBack(1,-1),t.emplaceBack(1,1),t.emplaceBack(-1,1);const i=new e.aY;i.emplaceBack(0,1,2),i.emplaceBack(0,2,3),r.mesh=new wn(n.createVertexBuffer(t,me.members),n.createIndexBuffer(i),e.a0.simpleSegment(0,0,t.length,i.length))}c.draw(n,i.TRIANGLES,o,s,l,Zr.disabled,a,void 0,\"sky\",r.mesh.vertexBuffer,r.mesh.indexBuffer,r.mesh.segments)}(this,this.style.sky),this._showOverdrawInspector=r.showOverdrawInspector,this.depthRangeFor3D=[0,1-(t._order.length+2)*this.numSublayers*this.depthEpsilon],!this.renderToTexture)for(this.renderPass=\"opaque\",this.currentLayer=i.length-1;this.currentLayer>=0;this.currentLayer--){const t=this.style._layers[i[this.currentLayer]],e=o[t.source],r=s[t.source];this._renderTileClippingMasks(t,r),this.renderLayer(this,e,t,r)}for(this.renderPass=\"translucent\",this.currentLayer=0;this.currentLayer<i.length;this.currentLayer++){const t=this.style._layers[i[this.currentLayer]],e=o[t.source];if(this.renderToTexture&&this.renderToTexture.renderLayer(t))continue;const r=(\"symbol\"===t.type?c:l)[t.source];this._renderTileClippingMasks(t,s[t.source]),this.renderLayer(this,e,t,r)}if(this.options.showTileBoundaries){const t=function(t,e){let r=null;const n=Object.values(t._layers).flatMap((r=>r.source&&!r.isHidden(e)?[t.sourceCaches[r.source]]:[])),i=n.filter((t=>\"vector\"===t.getSource().type)),a=n.filter((t=>\"vector\"!==t.getSource().type)),o=t=>{(!r||r.getSource().maxzoom<t.getSource().maxzoom)&&(r=t)};return i.forEach((t=>o(t))),r||a.forEach((t=>o(t))),r}(this.style,this.transform.zoom);t&&function(t,e,r){for(let n=0;n<r.length;n++)_n(t,e,r[n])}(this,t,t.getVisibleCoordinates())}this.options.showPadding&&gn(this),this.context.setDefault()}maybeDrawDepthAndCoords(t){if(!this.style||!this.style.map||!this.style.map.terrain)return;const r=this.terrainFacilitator.matrix,n=this.transform.modelViewProjectionMatrix;let i=this.terrainFacilitator.dirty;i||(i=t?!e.a_(r,n):!e.a$(r,n)),i||(i=this.style.map.terrain.sourceCache.tilesAfterTime(this.terrainFacilitator.renderTime).length>0),i&&(e.b0(r,n),this.terrainFacilitator.renderTime=Date.now(),this.terrainFacilitator.dirty=!1,function(t,r){const n=t.context,i=n.gl,a=Ur.unblended,o=new qr(i.LEQUAL,qr.ReadWrite,[0,1]),s=r.getTerrainMesh(),l=r.sourceCache.getRenderableTiles(),c=t.useProgram(\"terrainDepth\");n.bindFramebuffer.set(r.getFramebuffer(\"depth\").framebuffer),n.viewport.set([0,0,t.width/devicePixelRatio,t.height/devicePixelRatio]),n.clear({color:e.aN.transparent,depth:1});for(const e of l){const l=r.getTerrainData(e.tileID),u={u_matrix:t.transform.calculatePosMatrix(e.tileID.toUnwrapped()),u_ele_delta:r.getMeshFrameDelta(t.transform.zoom)};c.draw(n,i.TRIANGLES,o,Gr.disabled,a,Zr.backCCW,u,l,\"terrain\",s.vertexBuffer,s.indexBuffer,s.segments)}n.bindFramebuffer.set(null),n.viewport.set([0,0,t.width,t.height])}(this,this.style.map.terrain),function(t,r){const n=t.context,i=n.gl,a=Ur.unblended,o=new qr(i.LEQUAL,qr.ReadWrite,[0,1]),s=r.getTerrainMesh(),l=r.getCoordsTexture(),c=r.sourceCache.getRenderableTiles(),u=t.useProgram(\"terrainCoords\");n.bindFramebuffer.set(r.getFramebuffer(\"coords\").framebuffer),n.viewport.set([0,0,t.width/devicePixelRatio,t.height/devicePixelRatio]),n.clear({color:e.aN.transparent,depth:1}),r.coordsIndex=[];for(const e of c){const c=r.getTerrainData(e.tileID);n.activeTexture.set(i.TEXTURE0),i.bindTexture(i.TEXTURE_2D,l.texture);const h={u_matrix:t.transform.calculatePosMatrix(e.tileID.toUnwrapped()),u_terrain_coords_id:(255-r.coordsIndex.length)/255,u_texture:0,u_ele_delta:r.getMeshFrameDelta(t.transform.zoom)};u.draw(n,i.TRIANGLES,o,Gr.disabled,a,Zr.backCCW,h,c,\"terrain\",s.vertexBuffer,s.indexBuffer,s.segments),r.coordsIndex.push(e.tileID.key)}n.bindFramebuffer.set(null),n.viewport.set([0,0,t.width,t.height])}(this,this.style.map.terrain))}renderLayer(t,r,n,i){if(!n.isHidden(this.transform.zoom)&&(\"background\"===n.type||\"custom\"===n.type||(i||[]).length))switch(this.id=n.id,n.type){case\"symbol\":$r(t,r,n,i,this.style.placement.variableOffsets);break;case\"circle\":!function(t,r,n,i){if(\"translucent\"!==t.renderPass)return;const a=n.paint.get(\"circle-opacity\"),o=n.paint.get(\"circle-stroke-width\"),s=n.paint.get(\"circle-stroke-opacity\"),l=!n.layout.get(\"circle-sort-key\").isConstant();if(0===a.constantOr(1)&&(0===o.constantOr(1)||0===s.constantOr(1)))return;const c=t.context,u=c.gl,h=t.depthModeForSublayer(0,qr.ReadOnly),f=Gr.disabled,p=t.colorModeForRenderPass(),d=[];for(let a=0;a<i.length;a++){const o=i[a],s=r.getTile(o),c=s.getBucket(n);if(!c)continue;const u=c.programConfigurations.get(n.id),h=t.useProgram(\"circle\",u),f=c.layoutVertexBuffer,p=c.indexBuffer,m=t.style.map.terrain&&t.style.map.terrain.getTerrainData(o),g={programConfiguration:u,program:h,layoutVertexBuffer:f,indexBuffer:p,uniformValues:Ce(t,o,s,n),terrainData:m};if(l){const t=c.segments.get();for(const r of t)d.push({segments:new e.a0([r]),sortKey:r.sortKey,state:g})}else d.push({segments:c.segments,sortKey:0,state:g})}l&&d.sort(((t,e)=>t.sortKey-e.sortKey));for(const e of d){const{programConfiguration:r,program:i,layoutVertexBuffer:a,indexBuffer:o,uniformValues:s,terrainData:l}=e.state,d=e.segments;i.draw(c,u.TRIANGLES,h,f,p,Zr.disabled,s,l,n.id,a,o,d,n.paint,t.transform.zoom,r)}}(t,r,n,i);break;case\"heatmap\":nn(t,r,n,i);break;case\"line\":!function(t,r,n,i){if(\"translucent\"!==t.renderPass)return;const a=n.paint.get(\"line-opacity\"),o=n.paint.get(\"line-width\");if(0===a.constantOr(1)||0===o.constantOr(1))return;const s=t.depthModeForSublayer(0,qr.ReadOnly),l=t.colorModeForRenderPass(),c=n.paint.get(\"line-dasharray\"),u=n.paint.get(\"line-pattern\"),h=u.constantOr(1),f=n.paint.get(\"line-gradient\"),p=n.getCrossfadeParameters(),d=h?\"linePattern\":c?\"lineSDF\":f?\"lineGradient\":\"line\",m=t.context,g=m.gl;let y=!0;for(const a of i){const i=r.getTile(a);if(h&&!i.patternsLoaded())continue;const o=i.getBucket(n);if(!o)continue;const v=o.programConfigurations.get(n.id),x=t.context.program.get(),_=t.useProgram(d,v),b=y||_.program!==x,T=t.style.map.terrain&&t.style.map.terrain.getTerrainData(a),k=u.constantOr(null);if(k&&i.imageAtlas){const t=i.imageAtlas,e=t.patternPositions[k.to.toString()],r=t.patternPositions[k.from.toString()];e&&r&&v.setConstantPatternPositions(e,r)}const A=T?a:null,M=h?Ue(t,i,n,p,A):c?Ve(t,i,n,c,p,A):f?je(t,i,n,o.lineClipsArray.length,A):Ne(t,i,n,A);if(h)m.activeTexture.set(g.TEXTURE0),i.imageAtlasTexture.bind(g.LINEAR,g.CLAMP_TO_EDGE),v.updatePaintBuffers(p);else if(c&&(b||t.lineAtlas.dirty))m.activeTexture.set(g.TEXTURE0),t.lineAtlas.bind(m);else if(f){const i=o.gradients[n.id];let s=i.texture;if(n.gradientVersion!==i.version){let l=256;if(n.stepInterpolant){const n=r.getSource().maxzoom,i=a.canonical.z===n?Math.ceil(1<<t.transform.maxZoom-a.canonical.z):1,s=o.maxLineLength/e.X*1024*i;l=e.ad(e.aV(s),256,m.maxTextureSize)}i.gradient=e.aW({expression:n.gradientExpression(),evaluationKey:\"lineProgress\",resolution:l,image:i.gradient||void 0,clips:o.lineClipsArray}),i.texture?i.texture.update(i.gradient):i.texture=new w(m,i.gradient,g.RGBA),i.version=n.gradientVersion,s=i.texture}m.activeTexture.set(g.TEXTURE0),s.bind(n.stepInterpolant?g.NEAREST:g.LINEAR,g.CLAMP_TO_EDGE)}_.draw(m,g.TRIANGLES,s,t.stencilModeForClipping(a),l,Zr.disabled,M,T,n.id,o.layoutVertexBuffer,o.indexBuffer,o.segments,n.paint,t.transform.zoom,v,o.layoutVertexBuffer2),y=!1}}(t,r,n,i);break;case\"fill\":!function(t,r,n,i){const a=n.paint.get(\"fill-color\"),o=n.paint.get(\"fill-opacity\");if(0===o.constantOr(1))return;const s=t.colorModeForRenderPass(),l=n.paint.get(\"fill-pattern\"),c=t.opaquePassEnabledForLayer()&&!l.constantOr(1)&&1===a.constantOr(e.aN.transparent).a&&1===o.constantOr(0)?\"opaque\":\"translucent\";if(t.renderPass===c){const e=t.depthModeForSublayer(1,\"opaque\"===t.renderPass?qr.ReadWrite:qr.ReadOnly);on(t,r,n,i,e,s,!1)}if(\"translucent\"===t.renderPass&&n.paint.get(\"fill-antialias\")){const e=t.depthModeForSublayer(n.getPaintProperty(\"fill-outline-color\")?2:0,qr.ReadOnly);on(t,r,n,i,e,s,!0)}}(t,r,n,i);break;case\"fill-extrusion\":!function(t,e,r,n){const i=r.paint.get(\"fill-extrusion-opacity\");if(0!==i&&\"translucent\"===t.renderPass){const a=new qr(t.context.gl.LEQUAL,qr.ReadWrite,t.depthRangeFor3D);if(1!==i||r.paint.get(\"fill-extrusion-pattern\").constantOr(1))sn(t,e,r,n,a,Gr.disabled,Ur.disabled),sn(t,e,r,n,a,t.stencilModeFor3D(),t.colorModeForRenderPass());else{const i=t.colorModeForRenderPass();sn(t,e,r,n,a,Gr.disabled,i)}}}(t,r,n,i);break;case\"hillshade\":!function(t,e,r,n){if(\"offscreen\"!==t.renderPass&&\"translucent\"!==t.renderPass)return;const i=t.context,a=t.depthModeForSublayer(0,qr.ReadOnly),o=t.colorModeForRenderPass(),[s,l]=\"translucent\"===t.renderPass?t.stencilConfigForOverlap(n):[{},n];for(const n of l){const i=e.getTile(n);void 0!==i.needsHillshadePrepare&&i.needsHillshadePrepare&&\"offscreen\"===t.renderPass?cn(t,i,r,a,Gr.disabled,o):\"translucent\"===t.renderPass&&ln(t,n,i,r,a,s[n.overscaledZ],o)}i.viewport.set([0,0,t.width,t.height])}(t,r,n,i);break;case\"raster\":!function(t,e,r,n){if(\"translucent\"!==t.renderPass)return;if(0===r.paint.get(\"raster-opacity\"))return;if(!n.length)return;const i=t.context,a=i.gl,o=e.getSource(),s=t.useProgram(\"raster\"),l=t.colorModeForRenderPass(),[c,u]=o instanceof rt?[{},n]:t.stencilConfigForOverlap(n),h=u[u.length-1].overscaledZ,f=!t.options.moving;for(const n of u){const u=t.depthModeForSublayer(n.overscaledZ-h,1===r.paint.get(\"raster-opacity\")?qr.ReadWrite:qr.ReadOnly,a.LESS),p=e.getTile(n);p.registerFadeDuration(r.paint.get(\"raster-fade-duration\"));const d=e.findLoadedParent(n,0),m=e.findLoadedSibling(n),g=un(p,d||m||null,e,r,t.transform,t.style.map.terrain);let y,v;const x=\"nearest\"===r.paint.get(\"raster-resampling\")?a.NEAREST:a.LINEAR;i.activeTexture.set(a.TEXTURE0),p.texture.bind(x,a.CLAMP_TO_EDGE,a.LINEAR_MIPMAP_NEAREST),i.activeTexture.set(a.TEXTURE1),d?(d.texture.bind(x,a.CLAMP_TO_EDGE,a.LINEAR_MIPMAP_NEAREST),y=Math.pow(2,d.tileID.overscaledZ-p.tileID.overscaledZ),v=[p.tileID.canonical.x*y%1,p.tileID.canonical.y*y%1]):p.texture.bind(x,a.CLAMP_TO_EDGE,a.LINEAR_MIPMAP_NEAREST),p.texture.useMipmap&&i.extTextureFilterAnisotropic&&t.transform.pitch>20&&a.texParameterf(a.TEXTURE_2D,i.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,i.extTextureFilterAnisotropicMax);const _=t.style.map.terrain&&t.style.map.terrain.getTerrainData(n),b=_?n:null,w=b?b.posMatrix:t.transform.calculatePosMatrix(n.toUnwrapped(),f),T=Ge(w,v||[0,0],y||1,g,r);o instanceof rt?s.draw(i,a.TRIANGLES,u,Gr.disabled,l,Zr.disabled,T,_,r.id,o.boundsBuffer,t.quadTriangleIndexBuffer,o.boundsSegments):s.draw(i,a.TRIANGLES,u,c[n.overscaledZ],l,Zr.disabled,T,_,r.id,t.rasterBoundsBuffer,t.quadTriangleIndexBuffer,t.rasterBoundsSegments)}}(t,r,n,i);break;case\"background\":!function(t,e,r,n){const i=r.paint.get(\"background-color\"),a=r.paint.get(\"background-opacity\");if(0===a)return;const o=t.context,s=o.gl,l=t.transform,c=l.tileSize,u=r.paint.get(\"background-pattern\");if(t.isPatternMissing(u))return;const h=!u&&1===i.a&&1===a&&t.opaquePassEnabledForLayer()?\"opaque\":\"translucent\";if(t.renderPass!==h)return;const f=Gr.disabled,p=t.depthModeForSublayer(0,\"opaque\"===h?qr.ReadWrite:qr.ReadOnly),d=t.colorModeForRenderPass(),m=t.useProgram(u?\"backgroundPattern\":\"background\"),g=n||l.coveringTiles({tileSize:c,terrain:t.style.map.terrain});u&&(o.activeTexture.set(s.TEXTURE0),t.imageManager.bind(t.context));const y=r.getCrossfadeParameters();for(const e of g){const l=n?e.posMatrix:t.transform.calculatePosMatrix(e.toUnwrapped()),h=u?Je(l,a,t,u,{tileID:e,tileSize:c},y):$e(l,a,i),g=t.style.map.terrain&&t.style.map.terrain.getTerrainData(e);m.draw(o,s.TRIANGLES,p,f,d,Zr.disabled,h,g,r.id,t.tileExtentBuffer,t.quadTriangleIndexBuffer,t.tileExtentSegments)}}(t,0,n,i);break;case\"custom\":!function(t,e,r){const n=t.context,i=r.implementation;if(\"offscreen\"===t.renderPass){const e=i.prerender;e&&(t.setCustomLayerDefaults(),n.setColorMode(t.colorModeForRenderPass()),e.call(i,n.gl,t.transform.customLayerMatrix()),n.setDirty(),t.setBaseState())}else if(\"translucent\"===t.renderPass){t.setCustomLayerDefaults(),n.setColorMode(t.colorModeForRenderPass()),n.setStencilMode(Gr.disabled);const e=\"3d\"===i.renderingMode?new qr(t.context.gl.LEQUAL,qr.ReadWrite,t.depthRangeFor3D):t.depthModeForSublayer(0,qr.ReadOnly);n.setDepthMode(e),i.render(n.gl,t.transform.customLayerMatrix(),{farZ:t.transform.farZ,nearZ:t.transform.nearZ,fov:t.transform._fov,modelViewProjectionMatrix:t.transform.modelViewProjectionMatrix,projectionMatrix:t.transform.projectionMatrix}),n.setDirty(),t.setBaseState(),n.bindFramebuffer.set(null)}}(t,0,n)}}translatePosMatrix(t,r,n,i,a){if(!n[0]&&!n[1])return t;const o=a?\"map\"===i?this.transform.angle:0:\"viewport\"===i?-this.transform.angle:0;if(o){const t=Math.sin(o),e=Math.cos(o);n=[n[0]*e-n[1]*t,n[0]*t+n[1]*e]}const s=[a?n[0]:Nt(r,n[0],this.transform.zoom),a?n[1]:Nt(r,n[1],this.transform.zoom),0],l=new Float32Array(16);return e.J(l,t,s),l}saveTileTexture(t){const e=this._tileTextures[t.size[0]];e?e.push(t):this._tileTextures[t.size[0]]=[t]}getTileTexture(t){const e=this._tileTextures[t];return e&&e.length>0?e.pop():null}isPatternMissing(t){if(!t)return!1;if(!t.from||!t.to)return!0;const e=this.imageManager.getPattern(t.from.toString()),r=this.imageManager.getPattern(t.to.toString());return!e||!r}useProgram(t,e){this.cache=this.cache||{};const r=t+(e?e.cacheKey:\"\")+(this._showOverdrawInspector?\"/overdraw\":\"\")+(this.style.map.terrain?\"/terrain\":\"\");return this.cache[r]||(this.cache[r]=new be(this.context,ge[t],e,Ke[t],this._showOverdrawInspector,this.style.map.terrain)),this.cache[r]}setCustomLayerDefaults(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()}setBaseState(){const t=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(t.FUNC_ADD)}initDebugOverlayCanvas(){if(null==this.debugOverlayCanvas){this.debugOverlayCanvas=document.createElement(\"canvas\"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512;const t=this.context.gl;this.debugOverlayTexture=new w(this.context,this.debugOverlayCanvas,t.RGBA)}}destroy(){this.debugOverlayTexture&&this.debugOverlayTexture.destroy()}overLimit(){const{drawingBufferWidth:t,drawingBufferHeight:e}=this.context.gl;return this.width!==t||this.height!==e}}class kn{constructor(t,e){this.points=t,this.planes=e}static fromInvProjectionMatrix(t,r,n){const i=Math.pow(2,n),a=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]].map((n=>{const a=1/(n=e.ag([],n,t))[3]/r*i;return e.b1(n,n,[a,a,1/n[3],a])})),o=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]].map((t=>{const e=function(t,e){var r=e[0],n=e[1],i=e[2],a=r*r+n*n+i*i;return a>0&&(a=1/Math.sqrt(a)),t[0]=e[0]*a,t[1]=e[1]*a,t[2]=e[2]*a,t}([],function(t,e,r){var n=e[0],i=e[1],a=e[2],o=r[0],s=r[1],l=r[2];return t[0]=i*l-a*s,t[1]=a*o-n*l,t[2]=n*s-i*o,t}([],y([],a[t[0]],a[t[1]]),y([],a[t[2]],a[t[1]]))),r=(n=e,i=a[t[1]],-(n[0]*i[0]+n[1]*i[1]+n[2]*i[2]));var n,i;return e.concat(r)}));return new kn(a,o)}}class An{constructor(t,e){this.min=t,this.max=e,this.center=function(t,e,r){return t[0]=e[0]*r,t[1]=e[1]*r,t[2]=e[2]*r,t}([],function(t,e,r){return t[0]=e[0]+r[0],t[1]=e[1]+r[1],t[2]=e[2]+r[2],t}([],this.min,this.max),.5)}quadrant(t){const e=[t%2==0,t<2],r=m(this.min),n=m(this.max);for(let t=0;t<e.length;t++)r[t]=e[t]?this.min[t]:this.center[t],n[t]=e[t]?this.center[t]:this.max[t];return n[2]=this.max[2],new An(r,n)}distanceX(t){return Math.max(Math.min(this.max[0],t[0]),this.min[0])-t[0]}distanceY(t){return Math.max(Math.min(this.max[1],t[1]),this.min[1])-t[1]}intersects(t){const r=[[this.min[0],this.min[1],this.min[2],1],[this.max[0],this.min[1],this.min[2],1],[this.max[0],this.max[1],this.min[2],1],[this.min[0],this.max[1],this.min[2],1],[this.min[0],this.min[1],this.max[2],1],[this.max[0],this.min[1],this.max[2],1],[this.max[0],this.max[1],this.max[2],1],[this.min[0],this.max[1],this.max[2],1]];let n=!0;for(let i=0;i<t.planes.length;i++){const a=t.planes[i];let o=0;for(let t=0;t<r.length;t++)e.b2(a,r[t])>=0&&o++;if(0===o)return 0;o!==r.length&&(n=!1)}if(n)return 2;for(let e=0;e<3;e++){let r=Number.MAX_VALUE,n=-Number.MAX_VALUE;for(let i=0;i<t.points.length;i++){const a=t.points[i][e]-this.min[e];r=Math.min(r,a),n=Math.max(n,a)}if(n<0||r>this.max[e]-this.min[e])return 0}return 1}}class Mn{constructor(t=0,e=0,r=0,n=0){if(isNaN(t)||t<0||isNaN(e)||e<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=t,this.bottom=e,this.left=r,this.right=n}interpolate(t,r,n){return null!=r.top&&null!=t.top&&(this.top=e.z.number(t.top,r.top,n)),null!=r.bottom&&null!=t.bottom&&(this.bottom=e.z.number(t.bottom,r.bottom,n)),null!=r.left&&null!=t.left&&(this.left=e.z.number(t.left,r.left,n)),null!=r.right&&null!=t.right&&(this.right=e.z.number(t.right,r.right,n)),this}getCenter(t,r){const n=e.ad((this.left+t-this.right)/2,0,t),i=e.ad((this.top+r-this.bottom)/2,0,r);return new e.P(n,i)}equals(t){return this.top===t.top&&this.bottom===t.bottom&&this.left===t.left&&this.right===t.right}clone(){return new Mn(this.top,this.bottom,this.left,this.right)}toJSON(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}}}const Sn=85.051129;class En{constructor(t,r,n,i,a){this.tileSize=512,this._renderWorldCopies=void 0===a||!!a,this._minZoom=t||0,this._maxZoom=r||22,this._minPitch=null==n?0:n,this._maxPitch=null==i?60:i,this.setMaxBounds(),this.width=0,this.height=0,this._center=new e.N(0,0),this._elevation=0,this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new Mn,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={},this.minElevationForCurrentTile=0}clone(){const t=new En(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return t.apply(this),t}apply(t){this.tileSize=t.tileSize,this.latRange=t.latRange,this.width=t.width,this.height=t.height,this._center=t._center,this._elevation=t._elevation,this.minElevationForCurrentTile=t.minElevationForCurrentTile,this.zoom=t.zoom,this.angle=t.angle,this._fov=t._fov,this._pitch=t._pitch,this._unmodified=t._unmodified,this._edgeInsets=t._edgeInsets.clone(),this._calcMatrices()}get minZoom(){return this._minZoom}set minZoom(t){this._minZoom!==t&&(this._minZoom=t,this.zoom=Math.max(this.zoom,t))}get maxZoom(){return this._maxZoom}set maxZoom(t){this._maxZoom!==t&&(this._maxZoom=t,this.zoom=Math.min(this.zoom,t))}get minPitch(){return this._minPitch}set minPitch(t){this._minPitch!==t&&(this._minPitch=t,this.pitch=Math.max(this.pitch,t))}get maxPitch(){return this._maxPitch}set maxPitch(t){this._maxPitch!==t&&(this._maxPitch=t,this.pitch=Math.min(this.pitch,t))}get renderWorldCopies(){return this._renderWorldCopies}set renderWorldCopies(t){void 0===t?t=!0:null===t&&(t=!1),this._renderWorldCopies=t}get worldSize(){return this.tileSize*this.scale}get centerOffset(){return this.centerPoint._sub(this.size._div(2))}get size(){return new e.P(this.width,this.height)}get bearing(){return-this.angle/Math.PI*180}set bearing(t){const r=-e.b3(t,-180,180)*Math.PI/180;this.angle!==r&&(this._unmodified=!1,this.angle=r,this._calcMatrices(),this.rotationMatrix=function(){var t=new e.A(4);return e.A!=Float32Array&&(t[1]=0,t[2]=0),t[0]=1,t[3]=1,t}(),function(t,e,r){var n=e[0],i=e[1],a=e[2],o=e[3],s=Math.sin(r),l=Math.cos(r);t[0]=n*l+a*s,t[1]=i*l+o*s,t[2]=n*-s+a*l,t[3]=i*-s+o*l}(this.rotationMatrix,this.rotationMatrix,this.angle))}get pitch(){return this._pitch/Math.PI*180}set pitch(t){const r=e.ad(t,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==r&&(this._unmodified=!1,this._pitch=r,this._calcMatrices())}get fov(){return this._fov/Math.PI*180}set fov(t){t=Math.max(.01,Math.min(60,t)),this._fov!==t&&(this._unmodified=!1,this._fov=t/180*Math.PI,this._calcMatrices())}get zoom(){return this._zoom}set zoom(t){const e=Math.min(Math.max(t,this.minZoom),this.maxZoom);this._zoom!==e&&(this._unmodified=!1,this._zoom=e,this.tileZoom=Math.max(0,Math.floor(e)),this.scale=this.zoomScale(e),this._constrain(),this._calcMatrices())}get center(){return this._center}set center(t){t.lat===this._center.lat&&t.lng===this._center.lng||(this._unmodified=!1,this._center=t,this._constrain(),this._calcMatrices())}get elevation(){return this._elevation}set elevation(t){t!==this._elevation&&(this._elevation=t,this._constrain(),this._calcMatrices())}get padding(){return this._edgeInsets.toJSON()}set padding(t){this._edgeInsets.equals(t)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,t,1),this._calcMatrices())}get centerPoint(){return this._edgeInsets.getCenter(this.width,this.height)}isPaddingEqual(t){return this._edgeInsets.equals(t)}interpolatePadding(t,e,r){this._unmodified=!1,this._edgeInsets.interpolate(t,e,r),this._constrain(),this._calcMatrices()}coveringZoomLevel(t){const e=(t.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/t.tileSize));return Math.max(0,e)}getVisibleUnwrappedCoordinates(t){const r=[new e.b4(0,t)];if(this._renderWorldCopies){const n=this.pointCoordinate(new e.P(0,0)),i=this.pointCoordinate(new e.P(this.width,0)),a=this.pointCoordinate(new e.P(this.width,this.height)),o=this.pointCoordinate(new e.P(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)),c=1;for(let n=s-c;n<=l+c;n++)0!==n&&r.push(new e.b4(n,t))}return r}coveringTiles(t){var r,n;let i=this.coveringZoomLevel(t);const a=i;if(void 0!==t.minzoom&&i<t.minzoom)return[];void 0!==t.maxzoom&&i>t.maxzoom&&(i=t.maxzoom);const o=this.pointCoordinate(this.getCameraPoint()),s=e.Z.fromLngLat(this.center),l=Math.pow(2,i),c=[l*o.x,l*o.y,0],u=[l*s.x,l*s.y,0],h=kn.fromInvProjectionMatrix(this.invModelViewProjectionMatrix,this.worldSize,i);let f=t.minzoom||0;!t.terrain&&this.pitch<=60&&this._edgeInsets.top<.1&&(f=i);const p=t.terrain?2/Math.min(this.tileSize,t.tileSize)*this.tileSize:3,d=t=>({aabb:new An([t*l,0,0],[(t+1)*l,l,0]),zoom:0,x:0,y:0,wrap:t,fullyVisible:!1}),m=[],g=[],y=i,x=t.reparseOverscaled?a:i;if(this._renderWorldCopies)for(let t=1;t<=3;t++)m.push(d(-t)),m.push(d(t));for(m.push(d(0));m.length>0;){const i=m.pop(),a=i.x,o=i.y;let s=i.fullyVisible;if(!s){const t=i.aabb.intersects(h);if(0===t)continue;s=2===t}const l=t.terrain?c:u,d=i.aabb.distanceX(l),_=i.aabb.distanceY(l),b=Math.max(Math.abs(d),Math.abs(_)),w=p+(1<<y-i.zoom)-2;if(i.zoom===y||b>w&&i.zoom>=f){const t=y-i.zoom,r=c[0]-.5-(a<<t),n=c[1]-.5-(o<<t);g.push({tileID:new e.S(i.zoom===y?x:i.zoom,i.wrap,i.zoom,a,o),distanceSq:v([u[0]-.5-a,u[1]-.5-o]),tileDistanceToCamera:Math.sqrt(r*r+n*n)})}else for(let l=0;l<4;l++){const c=(a<<1)+l%2,u=(o<<1)+(l>>1),h=i.zoom+1;let f=i.aabb.quadrant(l);if(t.terrain){const a=new e.S(h,i.wrap,h,c,u),o=t.terrain.getMinMaxElevation(a),s=null!==(r=o.minElevation)&&void 0!==r?r:this.elevation,l=null!==(n=o.maxElevation)&&void 0!==n?n:this.elevation;f=new An([f.min[0],f.min[1],s],[f.max[0],f.max[1],l])}m.push({aabb:f,zoom:h,x:c,y:u,wrap:i.wrap,fullyVisible:s})}}return g.sort(((t,e)=>t.distanceSq-e.distanceSq)).map((t=>t.tileID))}resize(t,e){this.width=t,this.height=e,this.pixelsToGLUnits=[2/t,-2/e],this._constrain(),this._calcMatrices()}get unmodified(){return this._unmodified}zoomScale(t){return Math.pow(2,t)}scaleZoom(t){return Math.log(t)/Math.LN2}project(t){const r=e.ad(t.lat,-85.051129,Sn);return new e.P(e.O(t.lng)*this.worldSize,e.Q(r)*this.worldSize)}unproject(t){return new e.Z(t.x/this.worldSize,t.y/this.worldSize).toLngLat()}get point(){return this.project(this.center)}getCameraPosition(){return{lngLat:this.pointLocation(this.getCameraPoint()),altitude:Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter+this.elevation}}recalculateZoom(t){const r=this.elevation,n=Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter,i=this.pointLocation(this.centerPoint,t),a=t.getElevationForLngLatZoom(i,this.tileZoom);if(!(this.elevation-a))return;const o=n+r-a,s=Math.cos(this._pitch)*this.cameraToCenterDistance/o/e.b5(1,i.lat)/this.tileSize,l=this.scaleZoom(s);this._elevation=a,this._center=i,this.zoom=l}setLocationAtPoint(t,r){const n=this.pointCoordinate(r),i=this.pointCoordinate(this.centerPoint),a=this.locationCoordinate(t),o=new e.Z(a.x-(n.x-i.x),a.y-(n.y-i.y));this.center=this.coordinateLocation(o),this._renderWorldCopies&&(this.center=this.center.wrap())}locationPoint(t,e){return e?this.coordinatePoint(this.locationCoordinate(t),e.getElevationForLngLatZoom(t,this.tileZoom),this.pixelMatrix3D):this.coordinatePoint(this.locationCoordinate(t))}pointLocation(t,e){return this.coordinateLocation(this.pointCoordinate(t,e))}locationCoordinate(t){return e.Z.fromLngLat(t)}coordinateLocation(t){return t&&t.toLngLat()}pointCoordinate(t,r){if(r){const e=r.pointCoordinate(t);if(null!=e)return e}const n=[t.x,t.y,0,1],i=[t.x,t.y,1,1];e.ag(n,n,this.pixelMatrixInverse),e.ag(i,i,this.pixelMatrixInverse);const a=n[3],o=i[3],s=n[0]/a,l=i[0]/o,c=n[1]/a,u=i[1]/o,h=n[2]/a,f=i[2]/o,p=h===f?0:(0-h)/(f-h);return new e.Z(e.z.number(s,l,p)/this.worldSize,e.z.number(c,u,p)/this.worldSize)}coordinatePoint(t,r=0,n=this.pixelMatrix){const i=[t.x*this.worldSize,t.y*this.worldSize,r,1];return e.ag(i,i,n),new e.P(i[0]/i[3],i[1]/i[3])}getBounds(){const t=Math.max(0,this.height/2-this.getHorizon());return(new X).extend(this.pointLocation(new e.P(0,t))).extend(this.pointLocation(new e.P(this.width,t))).extend(this.pointLocation(new e.P(this.width,this.height))).extend(this.pointLocation(new e.P(0,this.height)))}getMaxBounds(){return this.latRange&&2===this.latRange.length&&this.lngRange&&2===this.lngRange.length?new X([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]]):null}getHorizon(){return Math.tan(Math.PI/2-this._pitch)*this.cameraToCenterDistance*.85}setMaxBounds(t){t?(this.lngRange=[t.getWest(),t.getEast()],this.latRange=[t.getSouth(),t.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-85.051129,Sn])}calculateTileMatrix(t){const r=t.canonical,n=this.worldSize/this.zoomScale(r.z),i=r.x+Math.pow(2,r.z)*t.wrap,a=e.ao(new Float64Array(16));return e.J(a,a,[i*n,r.y*n,0]),e.K(a,a,[n/e.X,n/e.X,1]),a}calculatePosMatrix(t,r=!1){const n=t.key,i=r?this._alignedPosMatrixCache:this._posMatrixCache;if(i[n])return i[n];const a=this.calculateTileMatrix(t);return e.L(a,r?this.alignedModelViewProjectionMatrix:this.modelViewProjectionMatrix,a),i[n]=new Float32Array(a),i[n]}calculateFogMatrix(t){const r=t.key,n=this._fogMatrixCache;if(n[r])return n[r];const i=this.calculateTileMatrix(t);return e.L(i,this.fogMatrix,i),n[r]=new Float32Array(i),n[r]}customLayerMatrix(){return this.mercatorMatrix.slice()}getConstrained(t,r){r=e.ad(+r,this.minZoom,this.maxZoom);const n={center:new e.N(t.lng,t.lat),zoom:r};let i=this.lngRange;if(!this._renderWorldCopies&&null===i){const t=180-1e-10;i=[-t,t]}const a=this.tileSize*this.zoomScale(n.zoom);let o=0,s=a,l=0,c=a,u=0,h=0;const{x:f,y:p}=this.size;if(this.latRange){const t=this.latRange;o=e.Q(t[1])*a,s=e.Q(t[0])*a,s-o<p&&(u=p/(s-o))}i&&(l=e.b3(e.O(i[0])*a,0,a),c=e.b3(e.O(i[1])*a,0,a),c<l&&(c+=a),c-l<f&&(h=f/(c-l)));const{x:d,y:m}=this.project.call({worldSize:a},t);let g,y;const v=Math.max(h||0,u||0);if(v){const t=new e.P(h?(c+l)/2:d,u?(s+o)/2:m);return n.center=this.unproject.call({worldSize:a},t).wrap(),n.zoom+=this.scaleZoom(v),n}if(this.latRange){const t=p/2;m-t<o&&(y=o+t),m+t>s&&(y=s-t)}if(i){const t=(l+c)/2;let r=d;this._renderWorldCopies&&(r=e.b3(d,t-a/2,t+a/2));const n=f/2;r-n<l&&(g=l+n),r+n>c&&(g=c-n)}if(void 0!==g||void 0!==y){const t=new e.P(null!=g?g:d,null!=y?y:m);n.center=this.unproject.call({worldSize:a},t).wrap()}return n}_constrain(){if(!this.center||!this.width||!this.height||this._constraining)return;this._constraining=!0;const t=this._unmodified,{center:e,zoom:r}=this.getConstrained(this.center,this.zoom);this.center=e,this.zoom=r,this._unmodified=t,this._constraining=!1}_calcMatrices(){if(!this.height)return;const t=this._fov/2,r=this.centerOffset,n=this.point.x,i=this.point.y;this.cameraToCenterDistance=.5/Math.tan(t)*this.height,this._pixelPerMeter=e.b5(1,this.center.lat)*this.worldSize;let a=e.ao(new Float64Array(16));e.K(a,a,[this.width/2,-this.height/2,1]),e.J(a,a,[1,-1,0]),this.labelPlaneMatrix=a,a=e.ao(new Float64Array(16)),e.K(a,a,[1,-1,1]),e.J(a,a,[-1,-1,0]),e.K(a,a,[2/this.width,2/this.height,1]),this.glCoordMatrix=a;const o=this.cameraToCenterDistance+this._elevation*this._pixelPerMeter/Math.cos(this._pitch),s=Math.min(this.elevation,this.minElevationForCurrentTile),l=o-s*this._pixelPerMeter/Math.cos(this._pitch),c=s<0?l:o,u=Math.PI/2+this._pitch,h=this._fov*(.5+r.y/this.height),f=Math.sin(h)*c/Math.sin(e.ad(Math.PI-u-h,.01,Math.PI-.01)),p=this.getHorizon(),d=2*Math.atan(p/this.cameraToCenterDistance)*(.5+r.y/(2*p)),m=Math.sin(d)*c/Math.sin(e.ad(Math.PI-u-d,.01,Math.PI-.01)),g=Math.min(f,m);this.farZ=1.01*(Math.cos(Math.PI/2-this._pitch)*g+c),this.nearZ=this.height/50,a=new Float64Array(16),e.b6(a,this._fov,this.width/this.height,this.nearZ,this.farZ),a[8]=2*-r.x/this.width,a[9]=2*r.y/this.height,this.projectionMatrix=e.af(a),e.K(a,a,[1,-1,1]),e.J(a,a,[0,0,-this.cameraToCenterDistance]),e.b7(a,a,this._pitch),e.ae(a,a,this.angle),e.J(a,a,[-n,-i,0]),this.mercatorMatrix=e.K([],a,[this.worldSize,this.worldSize,this.worldSize]),e.K(a,a,[1,1,this._pixelPerMeter]),this.pixelMatrix=e.L(new Float64Array(16),this.labelPlaneMatrix,a),e.J(a,a,[0,0,-this.elevation]),this.modelViewProjectionMatrix=a,this.invModelViewProjectionMatrix=e.at([],a),this.fogMatrix=new Float64Array(16),e.b6(this.fogMatrix,this._fov,this.width/this.height,o,this.farZ),this.fogMatrix[8]=2*-r.x/this.width,this.fogMatrix[9]=2*r.y/this.height,e.K(this.fogMatrix,this.fogMatrix,[1,-1,1]),e.J(this.fogMatrix,this.fogMatrix,[0,0,-this.cameraToCenterDistance]),e.b7(this.fogMatrix,this.fogMatrix,this._pitch),e.ae(this.fogMatrix,this.fogMatrix,this.angle),e.J(this.fogMatrix,this.fogMatrix,[-n,-i,0]),e.K(this.fogMatrix,this.fogMatrix,[1,1,this._pixelPerMeter]),e.J(this.fogMatrix,this.fogMatrix,[0,0,-this.elevation]),this.pixelMatrix3D=e.L(new Float64Array(16),this.labelPlaneMatrix,a);const y=this.width%2/2,v=this.height%2/2,x=Math.cos(this.angle),_=Math.sin(this.angle),b=n-Math.round(n)+x*y+_*v,w=i-Math.round(i)+x*v+_*y,T=new Float64Array(a);if(e.J(T,T,[b>.5?b-1:b,w>.5?w-1:w,0]),this.alignedModelViewProjectionMatrix=T,a=e.at(new Float64Array(16),this.pixelMatrix),!a)throw new Error(\"failed to invert matrix\");this.pixelMatrixInverse=a,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={}}maxPitchScaleFactor(){if(!this.pixelMatrixInverse)return 1;const t=this.pointCoordinate(new e.P(0,0)),r=[t.x*this.worldSize,t.y*this.worldSize,0,1];return e.ag(r,r,this.pixelMatrix)[3]/this.cameraToCenterDistance}getCameraPoint(){const t=this._pitch,r=Math.tan(t)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new e.P(0,r))}getCameraQueryGeometry(t){const r=this.getCameraPoint();if(1===t.length)return[t[0],r];{let n=r.x,i=r.y,a=r.x,o=r.y;for(const e of t)n=Math.min(n,e.x),i=Math.min(i,e.y),a=Math.max(a,e.x),o=Math.max(o,e.y);return[new e.P(n,i),new e.P(a,i),new e.P(a,o),new e.P(n,o),new e.P(n,i)]}}lngLatToCameraDepth(t,r){const n=this.locationCoordinate(t),i=[n.x*this.worldSize,n.y*this.worldSize,r,1];return e.ag(i,i,this.modelViewProjectionMatrix),i[2]/i[3]}}function Cn(t,e){let r,n=!1,i=null,a=null;const o=()=>{i=null,n&&(t.apply(a,r),i=setTimeout(o,e),n=!1)};return(...t)=>(n=!0,a=this,r=t,i||o(),i)}class Ln{constructor(t){this._getCurrentHash=()=>{const t=window.location.hash.replace(\"#\",\"\");if(this._hashName){let e;return t.split(\"&\").map((t=>t.split(\"=\"))).forEach((t=>{t[0]===this._hashName&&(e=t)})),(e&&e[1]||\"\").split(\"/\")}return t.split(\"/\")},this._onHashChange=()=>{const t=this._getCurrentHash();if(t.length>=3&&!t.some((t=>isNaN(t)))){const e=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(t[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+t[2],+t[1]],zoom:+t[0],bearing:e,pitch:+(t[4]||0)}),!0}return!1},this._updateHashUnthrottled=()=>{const t=window.location.href.replace(/(#.+)?$/,this.getHashString());window.history.replaceState(window.history.state,null,t)},this._removeHash=()=>{const t=this._getCurrentHash();if(0===t.length)return;const e=t.join(\"/\");let r=e;r.split(\"&\").length>0&&(r=r.split(\"&\")[0]),this._hashName&&(r=`${this._hashName}=${e}`);let n=window.location.hash.replace(r,\"\");n.startsWith(\"#&\")?n=n.slice(0,1)+n.slice(2):\"#\"===n&&(n=\"\");let i=window.location.href.replace(/(#.+)?$/,n);i=i.replace(\"&&\",\"&\"),window.history.replaceState(window.history.state,null,i)},this._updateHash=Cn(this._updateHashUnthrottled,300),this._hashName=t&&encodeURIComponent(t)}addTo(t){return this._map=t,addEventListener(\"hashchange\",this._onHashChange,!1),this._map.on(\"moveend\",this._updateHash),this}remove(){return removeEventListener(\"hashchange\",this._onHashChange,!1),this._map.off(\"moveend\",this._updateHash),clearTimeout(this._updateHash()),this._removeHash(),delete this._map,this}getHashString(t){const e=this._map.getCenter(),r=Math.round(100*this._map.getZoom())/100,n=Math.ceil((r*Math.LN2+Math.log(512/360/.5))/Math.LN10),i=Math.pow(10,n),a=Math.round(e.lng*i)/i,o=Math.round(e.lat*i)/i,s=this._map.getBearing(),l=this._map.getPitch();let c=\"\";if(c+=t?`/${a}/${o}/${r}`:`${r}/${o}/${a}`,(s||l)&&(c+=\"/\"+Math.round(10*s)/10),l&&(c+=`/${Math.round(l)}`),this._hashName){const t=this._hashName;let e=!1;const r=window.location.hash.slice(1).split(\"&\").map((r=>{const n=r.split(\"=\")[0];return n===t?(e=!0,`${n}=${c}`):r})).filter((t=>t));return e||r.push(`${t}=${c}`),`#${r.join(\"&\")}`}return`#${c}`}}const In={linearity:.3,easing:e.b8(0,0,.3,1)},Pn=e.e({deceleration:2500,maxSpeed:1400},In),zn=e.e({deceleration:20,maxSpeed:1400},In),On=e.e({deceleration:1e3,maxSpeed:360},In),Dn=e.e({deceleration:1e3,maxSpeed:90},In);class Rn{constructor(t){this._map=t,this.clear()}clear(){this._inertiaBuffer=[]}record(t){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:a.now(),settings:t})}_drainInertiaBuffer(){const t=this._inertiaBuffer,e=a.now();for(;t.length>0&&e-t[0].time>160;)t.shift()}_onMoveEnd(t){if(this._drainInertiaBuffer(),this._inertiaBuffer.length<2)return;const r={zoom:0,bearing:0,pitch:0,pan:new e.P(0,0),pinchAround:void 0,around:void 0};for(const{settings:t}of this._inertiaBuffer)r.zoom+=t.zoomDelta||0,r.bearing+=t.bearingDelta||0,r.pitch+=t.pitchDelta||0,t.panDelta&&r.pan._add(t.panDelta),t.around&&(r.around=t.around),t.pinchAround&&(r.pinchAround=t.pinchAround);const n=this._inertiaBuffer[this._inertiaBuffer.length-1].time-this._inertiaBuffer[0].time,i={};if(r.pan.mag()){const a=Bn(r.pan.mag(),n,e.e({},Pn,t||{}));i.offset=r.pan.mult(a.amount/r.pan.mag()),i.center=this._map.transform.center,Fn(i,a)}if(r.zoom){const t=Bn(r.zoom,n,zn);i.zoom=this._map.transform.zoom+t.amount,Fn(i,t)}if(r.bearing){const t=Bn(r.bearing,n,On);i.bearing=this._map.transform.bearing+e.ad(t.amount,-179,179),Fn(i,t)}if(r.pitch){const t=Bn(r.pitch,n,Dn);i.pitch=this._map.transform.pitch+t.amount,Fn(i,t)}if(i.zoom||i.bearing){const t=void 0===r.pinchAround?r.around:r.pinchAround;i.around=t?this._map.unproject(t):this._map.getCenter()}return this.clear(),e.e(i,{noMoveStart:!0})}}function Fn(t,e){(!t.duration||t.duration<e.duration)&&(t.duration=e.duration,t.easing=e.easing)}function Bn(t,r,n){const{maxSpeed:i,linearity:a,deceleration:o}=n,s=e.ad(t*a/(r/1e3),-i,i),l=Math.abs(s)/(o*a);return{easing:n.easing,duration:1e3*l,amount:s*(l/2)}}class Nn extends e.k{preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}constructor(t,r,n,i={}){const a=o.mousePos(r.getCanvas(),n),s=r.unproject(a);super(t,e.e({point:a,lngLat:s,originalEvent:n},i)),this._defaultPrevented=!1,this.target=r}}class jn extends e.k{preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}constructor(t,r,n){const i=\"touchend\"===t?n.changedTouches:n.touches,a=o.touchPos(r.getCanvasContainer(),i),s=a.map((t=>r.unproject(t))),l=a.reduce(((t,e,r,n)=>t.add(e.div(n.length))),new e.P(0,0));super(t,{points:a,point:l,lngLats:s,lngLat:r.unproject(l),originalEvent:n}),this._defaultPrevented=!1}}class Un extends e.k{preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}constructor(t,e,r){super(t,{originalEvent:r}),this._defaultPrevented=!1}}class Vn{constructor(t,e){this._map=t,this._clickTolerance=e.clickTolerance}reset(){delete this._mousedownPos}wheel(t){return this._firePreventable(new Un(t.type,this._map,t))}mousedown(t,e){return this._mousedownPos=e,this._firePreventable(new Nn(t.type,this._map,t))}mouseup(t){this._map.fire(new Nn(t.type,this._map,t))}click(t,e){this._mousedownPos&&this._mousedownPos.dist(e)>=this._clickTolerance||this._map.fire(new Nn(t.type,this._map,t))}dblclick(t){return this._firePreventable(new Nn(t.type,this._map,t))}mouseover(t){this._map.fire(new Nn(t.type,this._map,t))}mouseout(t){this._map.fire(new Nn(t.type,this._map,t))}touchstart(t){return this._firePreventable(new jn(t.type,this._map,t))}touchmove(t){this._map.fire(new jn(t.type,this._map,t))}touchend(t){this._map.fire(new jn(t.type,this._map,t))}touchcancel(t){this._map.fire(new jn(t.type,this._map,t))}_firePreventable(t){if(this._map.fire(t),t.defaultPrevented)return{}}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class qn{constructor(t){this._map=t}reset(){this._delayContextMenu=!1,this._ignoreContextMenu=!0,delete this._contextMenuEvent}mousemove(t){this._map.fire(new Nn(t.type,this._map,t))}mousedown(){this._delayContextMenu=!0,this._ignoreContextMenu=!1}mouseup(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new Nn(\"contextmenu\",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)}contextmenu(t){this._delayContextMenu?this._contextMenuEvent=t:this._ignoreContextMenu||this._map.fire(new Nn(t.type,this._map,t)),this._map.listens(\"contextmenu\")&&t.preventDefault()}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class Hn{constructor(t){this._map=t}get transform(){return this._map._requestedCameraState||this._map.transform}get center(){return{lng:this.transform.center.lng,lat:this.transform.center.lat}}get zoom(){return this.transform.zoom}get pitch(){return this.transform.pitch}get bearing(){return this.transform.bearing}unproject(t){return this.transform.pointLocation(e.P.convert(t),this._map.terrain)}}class Gn{constructor(t,e){this._map=t,this._tr=new Hn(t),this._el=t.getCanvasContainer(),this._container=t.getContainer(),this._clickTolerance=e.clickTolerance||1}isEnabled(){return!!this._enabled}isActive(){return!!this._active}enable(){this.isEnabled()||(this._enabled=!0)}disable(){this.isEnabled()&&(this._enabled=!1)}mousedown(t,e){this.isEnabled()&&t.shiftKey&&0===t.button&&(o.disableDrag(),this._startPos=this._lastPos=e,this._active=!0)}mousemoveWindow(t,e){if(!this._active)return;const r=e;if(this._lastPos.equals(r)||!this._box&&r.dist(this._startPos)<this._clickTolerance)return;const n=this._startPos;this._lastPos=r,this._box||(this._box=o.create(\"div\",\"maplibregl-boxzoom\",this._container),this._container.classList.add(\"maplibregl-crosshair\"),this._fireEvent(\"boxzoomstart\",t));const i=Math.min(n.x,r.x),a=Math.max(n.x,r.x),s=Math.min(n.y,r.y),l=Math.max(n.y,r.y);o.setTransform(this._box,`translate(${i}px,${s}px)`),this._box.style.width=a-i+\"px\",this._box.style.height=l-s+\"px\"}mouseupWindow(t,r){if(!this._active)return;if(0!==t.button)return;const n=this._startPos,i=r;if(this.reset(),o.suppressClick(),n.x!==i.x||n.y!==i.y)return this._map.fire(new e.k(\"boxzoomend\",{originalEvent:t})),{cameraAnimation:t=>t.fitScreenCoordinates(n,i,this._tr.bearing,{linear:!0})};this._fireEvent(\"boxzoomcancel\",t)}keydown(t){this._active&&27===t.keyCode&&(this.reset(),this._fireEvent(\"boxzoomcancel\",t))}reset(){this._active=!1,this._container.classList.remove(\"maplibregl-crosshair\"),this._box&&(o.remove(this._box),this._box=null),o.enableDrag(),delete this._startPos,delete this._lastPos}_fireEvent(t,r){return this._map.fire(new e.k(t,{originalEvent:r}))}}function Zn(t,e){if(t.length!==e.length)throw new Error(`The number of touches and points are not equal - touches ${t.length}, points ${e.length}`);const r={};for(let n=0;n<t.length;n++)r[t[n].identifier]=e[n];return r}class Wn{constructor(t){this.reset(),this.numTouches=t.numTouches}reset(){delete this.centroid,delete this.startTime,delete this.touches,this.aborted=!1}touchstart(t,r,n){(this.centroid||n.length>this.numTouches)&&(this.aborted=!0),this.aborted||(void 0===this.startTime&&(this.startTime=t.timeStamp),n.length===this.numTouches&&(this.centroid=function(t){const r=new e.P(0,0);for(const e of t)r._add(e);return r.div(t.length)}(r),this.touches=Zn(n,r)))}touchmove(t,e,r){if(this.aborted||!this.centroid)return;const n=Zn(r,e);for(const t in this.touches){const e=this.touches[t],r=n[t];(!r||r.dist(e)>30)&&(this.aborted=!0)}}touchend(t,e,r){if((!this.centroid||t.timeStamp-this.startTime>500)&&(this.aborted=!0),0===r.length){const t=!this.aborted&&this.centroid;if(this.reset(),t)return t}}}class Yn{constructor(t){this.singleTap=new Wn(t),this.numTaps=t.numTaps,this.reset()}reset(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()}touchstart(t,e,r){this.singleTap.touchstart(t,e,r)}touchmove(t,e,r){this.singleTap.touchmove(t,e,r)}touchend(t,e,r){const n=this.singleTap.touchend(t,e,r);if(n){const e=t.timeStamp-this.lastTime<500,r=!this.lastTap||this.lastTap.dist(n)<30;if(e&&r||this.reset(),this.count++,this.lastTime=t.timeStamp,this.lastTap=n,this.count===this.numTaps)return this.reset(),n}}}class Xn{constructor(t){this._tr=new Hn(t),this._zoomIn=new Yn({numTouches:1,numTaps:2}),this._zoomOut=new Yn({numTouches:2,numTaps:1}),this.reset()}reset(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset()}touchstart(t,e,r){this._zoomIn.touchstart(t,e,r),this._zoomOut.touchstart(t,e,r)}touchmove(t,e,r){this._zoomIn.touchmove(t,e,r),this._zoomOut.touchmove(t,e,r)}touchend(t,e,r){const n=this._zoomIn.touchend(t,e,r),i=this._zoomOut.touchend(t,e,r),a=this._tr;return n?(this._active=!0,t.preventDefault(),setTimeout((()=>this.reset()),0),{cameraAnimation:e=>e.easeTo({duration:300,zoom:a.zoom+1,around:a.unproject(n)},{originalEvent:t})}):i?(this._active=!0,t.preventDefault(),setTimeout((()=>this.reset()),0),{cameraAnimation:e=>e.easeTo({duration:300,zoom:a.zoom-1,around:a.unproject(i)},{originalEvent:t})}):void 0}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class $n{constructor(t){this._enabled=!!t.enable,this._moveStateManager=t.moveStateManager,this._clickTolerance=t.clickTolerance||1,this._moveFunction=t.move,this._activateOnStart=!!t.activateOnStart,t.assignEvents(this),this.reset()}reset(t){this._active=!1,this._moved=!1,delete this._lastPoint,this._moveStateManager.endMove(t)}_move(...t){const e=this._moveFunction(...t);if(e.bearingDelta||e.pitchDelta||e.around||e.panDelta)return this._active=!0,e}dragStart(t,e){this.isEnabled()&&!this._lastPoint&&this._moveStateManager.isValidStartEvent(t)&&(this._moveStateManager.startMove(t),this._lastPoint=e.length?e[0]:e,this._activateOnStart&&this._lastPoint&&(this._active=!0))}dragMove(t,e){if(!this.isEnabled())return;const r=this._lastPoint;if(!r)return;if(t.preventDefault(),!this._moveStateManager.isValidMoveEvent(t))return void this.reset(t);const n=e.length?e[0]:e;return!this._moved&&n.dist(r)<this._clickTolerance?void 0:(this._moved=!0,this._lastPoint=n,this._move(r,n))}dragEnd(t){this.isEnabled()&&this._lastPoint&&this._moveStateManager.isValidEndEvent(t)&&(this._moved&&o.suppressClick(),this.reset(t))}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}getClickTolerance(){return this._clickTolerance}}const Jn={0:1,2:2};class Kn{constructor(t){this._correctEvent=t.checkCorrectEvent}startMove(t){const e=o.mouseButton(t);this._eventButton=e}endMove(t){delete this._eventButton}isValidStartEvent(t){return this._correctEvent(t)}isValidMoveEvent(t){return!function(t,e){const r=Jn[e];return void 0===t.buttons||(t.buttons&r)!==r}(t,this._eventButton)}isValidEndEvent(t){return o.mouseButton(t)===this._eventButton}}class Qn{constructor(){this._firstTouch=void 0}_isOneFingerTouch(t){return 1===t.targetTouches.length}_isSameTouchEvent(t){return t.targetTouches[0].identifier===this._firstTouch}startMove(t){const e=t.targetTouches[0].identifier;this._firstTouch=e}endMove(t){delete this._firstTouch}isValidStartEvent(t){return this._isOneFingerTouch(t)}isValidMoveEvent(t){return this._isOneFingerTouch(t)&&this._isSameTouchEvent(t)}isValidEndEvent(t){return this._isOneFingerTouch(t)&&this._isSameTouchEvent(t)}}const ti=t=>{t.mousedown=t.dragStart,t.mousemoveWindow=t.dragMove,t.mouseup=t.dragEnd,t.contextmenu=t=>{t.preventDefault()}},ei=({enable:t,clickTolerance:e,bearingDegreesPerPixelMoved:r=.8})=>{const n=new Kn({checkCorrectEvent:t=>0===o.mouseButton(t)&&t.ctrlKey||2===o.mouseButton(t)});return new $n({clickTolerance:e,move:(t,e)=>({bearingDelta:(e.x-t.x)*r}),moveStateManager:n,enable:t,assignEvents:ti})},ri=({enable:t,clickTolerance:e,pitchDegreesPerPixelMoved:r=-.5})=>{const n=new Kn({checkCorrectEvent:t=>0===o.mouseButton(t)&&t.ctrlKey||2===o.mouseButton(t)});return new $n({clickTolerance:e,move:(t,e)=>({pitchDelta:(e.y-t.y)*r}),moveStateManager:n,enable:t,assignEvents:ti})};class ni{constructor(t,e){this._clickTolerance=t.clickTolerance||1,this._map=e,this.reset()}reset(){this._active=!1,this._touches={},this._sum=new e.P(0,0)}_shouldBePrevented(t){return t<(this._map.cooperativeGestures.isEnabled()?2:1)}touchstart(t,e,r){return this._calculateTransform(t,e,r)}touchmove(t,e,r){if(this._active){if(!this._shouldBePrevented(r.length))return t.preventDefault(),this._calculateTransform(t,e,r);this._map.cooperativeGestures.notifyGestureBlocked(\"touch_pan\",t)}}touchend(t,e,r){this._calculateTransform(t,e,r),this._active&&this._shouldBePrevented(r.length)&&this.reset()}touchcancel(){this.reset()}_calculateTransform(t,r,n){n.length>0&&(this._active=!0);const i=Zn(n,r),a=new e.P(0,0),o=new e.P(0,0);let s=0;for(const t in i){const e=i[t],r=this._touches[t];r&&(a._add(e),o._add(e.sub(r)),s++,i[t]=e)}if(this._touches=i,this._shouldBePrevented(s)||!o.mag())return;const l=o.div(s);return this._sum._add(l),this._sum.mag()<this._clickTolerance?void 0:{around:a.div(s),panDelta:l}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class ii{constructor(){this.reset()}reset(){this._active=!1,delete this._firstTwoTouches}touchstart(t,e,r){this._firstTwoTouches||r.length<2||(this._firstTwoTouches=[r[0].identifier,r[1].identifier],this._start([e[0],e[1]]))}touchmove(t,e,r){if(!this._firstTwoTouches)return;t.preventDefault();const[n,i]=this._firstTwoTouches,a=ai(r,e,n),o=ai(r,e,i);if(!a||!o)return;const s=this._aroundCenter?null:a.add(o).div(2);return this._move([a,o],s,t)}touchend(t,e,r){if(!this._firstTwoTouches)return;const[n,i]=this._firstTwoTouches,a=ai(r,e,n),s=ai(r,e,i);a&&s||(this._active&&o.suppressClick(),this.reset())}touchcancel(){this.reset()}enable(t){this._enabled=!0,this._aroundCenter=!!t&&\"center\"===t.around}disable(){this._enabled=!1,this.reset()}isEnabled(){return!!this._enabled}isActive(){return!!this._active}}function ai(t,e,r){for(let n=0;n<t.length;n++)if(t[n].identifier===r)return e[n]}function oi(t,e){return Math.log(t/e)/Math.LN2}class si extends ii{reset(){super.reset(),delete this._distance,delete this._startDistance}_start(t){this._startDistance=this._distance=t[0].dist(t[1])}_move(t,e){const r=this._distance;if(this._distance=t[0].dist(t[1]),this._active||!(Math.abs(oi(this._distance,this._startDistance))<.1))return this._active=!0,{zoomDelta:oi(this._distance,r),pinchAround:e}}}function li(t,e){return 180*t.angleWith(e)/Math.PI}class ci extends ii{reset(){super.reset(),delete this._minDiameter,delete this._startVector,delete this._vector}_start(t){this._startVector=this._vector=t[0].sub(t[1]),this._minDiameter=t[0].dist(t[1])}_move(t,e,r){const n=this._vector;if(this._vector=t[0].sub(t[1]),this._active||!this._isBelowThreshold(this._vector))return this._active=!0,{bearingDelta:li(this._vector,n),pinchAround:e}}_isBelowThreshold(t){this._minDiameter=Math.min(this._minDiameter,t.mag());const e=25/(Math.PI*this._minDiameter)*360,r=li(t,this._startVector);return Math.abs(r)<e}}function ui(t){return Math.abs(t.y)>Math.abs(t.x)}class hi extends ii{constructor(t){super(),this._currentTouchCount=0,this._map=t}reset(){super.reset(),this._valid=void 0,delete this._firstMove,delete this._lastPoints}touchstart(t,e,r){super.touchstart(t,e,r),this._currentTouchCount=r.length}_start(t){this._lastPoints=t,ui(t[0].sub(t[1]))&&(this._valid=!1)}_move(t,e,r){if(this._map.cooperativeGestures.isEnabled()&&this._currentTouchCount<3)return;const n=t[0].sub(this._lastPoints[0]),i=t[1].sub(this._lastPoints[1]);return this._valid=this.gestureBeginsVertically(n,i,r.timeStamp),this._valid?(this._lastPoints=t,this._active=!0,{pitchDelta:(n.y+i.y)/2*-.5}):void 0}gestureBeginsVertically(t,e,r){if(void 0!==this._valid)return this._valid;const n=t.mag()>=2,i=e.mag()>=2;if(!n&&!i)return;if(!n||!i)return void 0===this._firstMove&&(this._firstMove=r),r-this._firstMove<100&&void 0;const a=t.y>0==e.y>0;return ui(t)&&ui(e)&&a}}const fi={panStep:100,bearingStep:15,pitchStep:10};class pi{constructor(t){this._tr=new Hn(t);const e=fi;this._panStep=e.panStep,this._bearingStep=e.bearingStep,this._pitchStep=e.pitchStep,this._rotationDisabled=!1}reset(){this._active=!1}keydown(t){if(t.altKey||t.ctrlKey||t.metaKey)return;let e=0,r=0,n=0,i=0,a=0;switch(t.keyCode){case 61:case 107:case 171:case 187:e=1;break;case 189:case 109:case 173:e=-1;break;case 37:t.shiftKey?r=-1:(t.preventDefault(),i=-1);break;case 39:t.shiftKey?r=1:(t.preventDefault(),i=1);break;case 38:t.shiftKey?n=1:(t.preventDefault(),a=-1);break;case 40:t.shiftKey?n=-1:(t.preventDefault(),a=1);break;default:return}return this._rotationDisabled&&(r=0,n=0),{cameraAnimation:o=>{const s=this._tr;o.easeTo({duration:300,easeId:\"keyboardHandler\",easing:di,zoom:e?Math.round(s.zoom)+e*(t.shiftKey?2:1):s.zoom,bearing:s.bearing+r*this._bearingStep,pitch:s.pitch+n*this._pitchStep,offset:[-i*this._panStep,-a*this._panStep],center:s.center},{originalEvent:t})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}disableRotation(){this._rotationDisabled=!0}enableRotation(){this._rotationDisabled=!1}}function di(t){return t*(2-t)}const mi=4.000244140625;class gi{constructor(t,e){this._onTimeout=t=>{this._type=\"wheel\",this._delta-=this._lastValue,this._active||this._start(t)},this._map=t,this._tr=new Hn(t),this._triggerRenderFrame=e,this._delta=0,this._defaultZoomRate=.01,this._wheelZoomRate=.0022222222222222222}setZoomRate(t){this._defaultZoomRate=t}setWheelZoomRate(t){this._wheelZoomRate=t}isEnabled(){return!!this._enabled}isActive(){return!!this._active||void 0!==this._finishTimeout}isZooming(){return!!this._zooming}enable(t){this.isEnabled()||(this._enabled=!0,this._aroundCenter=!!t&&\"center\"===t.around)}disable(){this.isEnabled()&&(this._enabled=!1)}_shouldBePrevented(t){return!!this._map.cooperativeGestures.isEnabled()&&!(t.ctrlKey||this._map.cooperativeGestures.isBypassed(t))}wheel(t){if(!this.isEnabled())return;if(this._shouldBePrevented(t))return void this._map.cooperativeGestures.notifyGestureBlocked(\"wheel_zoom\",t);let e=t.deltaMode===WheelEvent.DOM_DELTA_LINE?40*t.deltaY:t.deltaY;const r=a.now(),n=r-(this._lastWheelEventTime||0);this._lastWheelEventTime=r,0!==e&&e%mi==0?this._type=\"wheel\":0!==e&&Math.abs(e)<4?this._type=\"trackpad\":n>400?(this._type=null,this._lastValue=e,this._timeout=setTimeout(this._onTimeout,40,t)):this._type||(this._type=Math.abs(n*e)<200?\"trackpad\":\"wheel\",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,e+=this._lastValue)),t.shiftKey&&e&&(e/=4),this._type&&(this._lastWheelEvent=t,this._delta-=e,this._active||this._start(t)),t.preventDefault()}_start(t){if(!this._delta)return;this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);const r=o.mousePos(this._map.getCanvas(),t),n=this._tr;r.y>n.transform.height/2-n.transform.getHorizon()?this._around=e.N.convert(this._aroundCenter?n.center:n.unproject(r)):this._around=e.N.convert(n.center),this._aroundPoint=n.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._triggerRenderFrame())}renderFrame(){if(!this._frameId)return;if(this._frameId=null,!this.isActive())return;const t=this._tr.transform;if(0!==this._delta){const e=\"wheel\"===this._type&&Math.abs(this._delta)>mi?this._wheelZoomRate:this._defaultZoomRate;let r=2/(1+Math.exp(-Math.abs(this._delta*e)));this._delta<0&&0!==r&&(r=1/r);const n=\"number\"==typeof this._targetZoom?t.zoomScale(this._targetZoom):t.scale;this._targetZoom=Math.min(t.maxZoom,Math.max(t.minZoom,t.scaleZoom(n*r))),\"wheel\"===this._type&&(this._startZoom=t.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}const r=\"number\"==typeof this._targetZoom?this._targetZoom:t.zoom,n=this._startZoom,i=this._easing;let o,s=!1;const l=a.now()-this._lastWheelEventTime;if(\"wheel\"===this._type&&n&&i&&l){const t=Math.min(l/200,1),a=i(t);o=e.z.number(n,r,a),t<1?this._frameId||(this._frameId=!0):s=!0}else o=r,s=!0;return this._active=!0,s&&(this._active=!1,this._finishTimeout=setTimeout((()=>{this._zooming=!1,this._triggerRenderFrame(),delete this._targetZoom,delete this._finishTimeout}),200)),{noInertia:!0,needsRenderFrame:!s,zoomDelta:o-t.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}_smoothOutEasing(t){let r=e.b9;if(this._prevEase){const t=this._prevEase,n=(a.now()-t.start)/t.duration,i=t.easing(n+.01)-t.easing(n),o=.27/Math.sqrt(i*i+1e-4)*.01,s=Math.sqrt(.0729-o*o);r=e.b8(o,s,.25,1)}return this._prevEase={start:a.now(),duration:t,easing:r},r}reset(){this._active=!1,this._zooming=!1,delete this._targetZoom,this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout)}}class yi{constructor(t,e){this._clickZoom=t,this._tapZoom=e}enable(){this._clickZoom.enable(),this._tapZoom.enable()}disable(){this._clickZoom.disable(),this._tapZoom.disable()}isEnabled(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()}isActive(){return this._clickZoom.isActive()||this._tapZoom.isActive()}}class vi{constructor(t){this._tr=new Hn(t),this.reset()}reset(){this._active=!1}dblclick(t,e){return t.preventDefault(),{cameraAnimation:r=>{r.easeTo({duration:300,zoom:this._tr.zoom+(t.shiftKey?-1:1),around:this._tr.unproject(e)},{originalEvent:t})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class xi{constructor(){this._tap=new Yn({numTouches:1,numTaps:1}),this.reset()}reset(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,delete this._tapPoint,this._tap.reset()}touchstart(t,e,r){if(!this._swipePoint)if(this._tapTime){const n=e[0],i=t.timeStamp-this._tapTime<500,a=this._tapPoint.dist(n)<30;i&&a?r.length>0&&(this._swipePoint=n,this._swipeTouch=r[0].identifier):this.reset()}else this._tap.touchstart(t,e,r)}touchmove(t,e,r){if(this._tapTime){if(this._swipePoint){if(r[0].identifier!==this._swipeTouch)return;const n=e[0],i=n.y-this._swipePoint.y;return this._swipePoint=n,t.preventDefault(),this._active=!0,{zoomDelta:i/128}}}else this._tap.touchmove(t,e,r)}touchend(t,e,r){if(this._tapTime)this._swipePoint&&0===r.length&&this.reset();else{const n=this._tap.touchend(t,e,r);n&&(this._tapTime=t.timeStamp,this._tapPoint=n)}}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class _i{constructor(t,e,r){this._el=t,this._mousePan=e,this._touchPan=r}enable(t){this._inertiaOptions=t||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add(\"maplibregl-touch-drag-pan\")}disable(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove(\"maplibregl-touch-drag-pan\")}isEnabled(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()}isActive(){return this._mousePan.isActive()||this._touchPan.isActive()}}class bi{constructor(t,e,r){this._pitchWithRotate=t.pitchWithRotate,this._mouseRotate=e,this._mousePitch=r}enable(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()}disable(){this._mouseRotate.disable(),this._mousePitch.disable()}isEnabled(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())}isActive(){return this._mouseRotate.isActive()||this._mousePitch.isActive()}}class wi{constructor(t,e,r,n){this._el=t,this._touchZoom=e,this._touchRotate=r,this._tapDragZoom=n,this._rotationDisabled=!1,this._enabled=!0}enable(t){this._touchZoom.enable(t),this._rotationDisabled||this._touchRotate.enable(t),this._tapDragZoom.enable(),this._el.classList.add(\"maplibregl-touch-zoom-rotate\")}disable(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove(\"maplibregl-touch-zoom-rotate\")}isEnabled(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()}isActive(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()}disableRotation(){this._rotationDisabled=!0,this._touchRotate.disable()}enableRotation(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()}}class Ti{constructor(t,e){this._bypassKey=-1!==navigator.userAgent.indexOf(\"Mac\")?\"metaKey\":\"ctrlKey\",this._map=t,this._options=e,this._enabled=!1}isActive(){return!1}reset(){}_setupUI(){if(this._container)return;const t=this._map.getCanvasContainer();t.classList.add(\"maplibregl-cooperative-gestures\"),this._container=o.create(\"div\",\"maplibregl-cooperative-gesture-screen\",t);let e=this._map._getUIString(\"CooperativeGesturesHandler.WindowsHelpText\");\"metaKey\"===this._bypassKey&&(e=this._map._getUIString(\"CooperativeGesturesHandler.MacHelpText\"));const r=this._map._getUIString(\"CooperativeGesturesHandler.MobileHelpText\"),n=document.createElement(\"div\");n.className=\"maplibregl-desktop-message\",n.textContent=e,this._container.appendChild(n);const i=document.createElement(\"div\");i.className=\"maplibregl-mobile-message\",i.textContent=r,this._container.appendChild(i),this._container.setAttribute(\"aria-hidden\",\"true\")}_destroyUI(){this._container&&(o.remove(this._container),this._map.getCanvasContainer().classList.remove(\"maplibregl-cooperative-gestures\")),delete this._container}enable(){this._setupUI(),this._enabled=!0}disable(){this._enabled=!1,this._destroyUI()}isEnabled(){return this._enabled}isBypassed(t){return t[this._bypassKey]}notifyGestureBlocked(t,r){this._enabled&&(this._map.fire(new e.k(\"cooperativegestureprevented\",{gestureType:t,originalEvent:r})),this._container.classList.add(\"maplibregl-show\"),setTimeout((()=>{this._container.classList.remove(\"maplibregl-show\")}),100))}}const ki=t=>t.zoom||t.drag||t.pitch||t.rotate;class Ai extends e.k{}function Mi(t){return t.panDelta&&t.panDelta.mag()||t.zoomDelta||t.bearingDelta||t.pitchDelta}class Si{constructor(t,e){this.handleWindowEvent=t=>{this.handleEvent(t,`${t.type}Window`)},this.handleEvent=(t,e)=>{if(\"blur\"===t.type)return void this.stop(!0);this._updatingCamera=!0;const r=\"renderFrame\"===t.type?void 0:t,n={needsRenderFrame:!1},i={},a={},s=t.touches,l=s?this._getMapTouches(s):void 0,c=l?o.touchPos(this._map.getCanvas(),l):o.mousePos(this._map.getCanvas(),t);for(const{handlerName:o,handler:s,allowed:u}of this._handlers){if(!s.isEnabled())continue;let h;this._blockedByActive(a,u,o)?s.reset():s[e||t.type]&&(h=s[e||t.type](t,c,l),this.mergeHandlerResult(n,i,h,o,r),h&&h.needsRenderFrame&&this._triggerRenderFrame()),(h||s.isActive())&&(a[o]=s)}const u={};for(const t in this._previousActiveHandlers)a[t]||(u[t]=r);this._previousActiveHandlers=a,(Object.keys(u).length||Mi(n))&&(this._changes.push([n,i,u]),this._triggerRenderFrame()),(Object.keys(a).length||Mi(n))&&this._map._stop(!0),this._updatingCamera=!1;const{cameraAnimation:h}=n;h&&(this._inertia.clear(),this._fireEvents({},{},!0),this._changes=[],h(this._map))},this._map=t,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new Rn(t),this._bearingSnap=e.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(e);const r=this._el;this._listeners=[[r,\"touchstart\",{passive:!0}],[r,\"touchmove\",{passive:!1}],[r,\"touchend\",void 0],[r,\"touchcancel\",void 0],[r,\"mousedown\",void 0],[r,\"mousemove\",void 0],[r,\"mouseup\",void 0],[document,\"mousemove\",{capture:!0}],[document,\"mouseup\",void 0],[r,\"mouseover\",void 0],[r,\"mouseout\",void 0],[r,\"dblclick\",void 0],[r,\"click\",void 0],[r,\"keydown\",{capture:!1}],[r,\"keyup\",void 0],[r,\"wheel\",{passive:!1}],[r,\"contextmenu\",void 0],[window,\"blur\",void 0]];for(const[t,e,r]of this._listeners)o.addEventListener(t,e,t===document?this.handleWindowEvent:this.handleEvent,r)}destroy(){for(const[t,e,r]of this._listeners)o.removeEventListener(t,e,t===document?this.handleWindowEvent:this.handleEvent,r)}_addDefaultHandlers(t){const e=this._map,r=e.getCanvasContainer();this._add(\"mapEvent\",new Vn(e,t));const n=e.boxZoom=new Gn(e,t);this._add(\"boxZoom\",n),t.interactive&&t.boxZoom&&n.enable();const i=e.cooperativeGestures=new Ti(e,t.cooperativeGestures);this._add(\"cooperativeGestures\",i),t.cooperativeGestures&&i.enable();const a=new Xn(e),s=new vi(e);e.doubleClickZoom=new yi(s,a),this._add(\"tapZoom\",a),this._add(\"clickZoom\",s),t.interactive&&t.doubleClickZoom&&e.doubleClickZoom.enable();const l=new xi;this._add(\"tapDragZoom\",l);const c=e.touchPitch=new hi(e);this._add(\"touchPitch\",c),t.interactive&&t.touchPitch&&e.touchPitch.enable(t.touchPitch);const u=ei(t),h=ri(t);e.dragRotate=new bi(t,u,h),this._add(\"mouseRotate\",u,[\"mousePitch\"]),this._add(\"mousePitch\",h,[\"mouseRotate\"]),t.interactive&&t.dragRotate&&e.dragRotate.enable();const f=(({enable:t,clickTolerance:e})=>{const r=new Kn({checkCorrectEvent:t=>0===o.mouseButton(t)&&!t.ctrlKey});return new $n({clickTolerance:e,move:(t,e)=>({around:e,panDelta:e.sub(t)}),activateOnStart:!0,moveStateManager:r,enable:t,assignEvents:ti})})(t),p=new ni(t,e);e.dragPan=new _i(r,f,p),this._add(\"mousePan\",f),this._add(\"touchPan\",p,[\"touchZoom\",\"touchRotate\"]),t.interactive&&t.dragPan&&e.dragPan.enable(t.dragPan);const d=new ci,m=new si;e.touchZoomRotate=new wi(r,m,d,l),this._add(\"touchRotate\",d,[\"touchPan\",\"touchZoom\"]),this._add(\"touchZoom\",m,[\"touchPan\",\"touchRotate\"]),t.interactive&&t.touchZoomRotate&&e.touchZoomRotate.enable(t.touchZoomRotate);const g=e.scrollZoom=new gi(e,(()=>this._triggerRenderFrame()));this._add(\"scrollZoom\",g,[\"mousePan\"]),t.interactive&&t.scrollZoom&&e.scrollZoom.enable(t.scrollZoom);const y=e.keyboard=new pi(e);this._add(\"keyboard\",y),t.interactive&&t.keyboard&&e.keyboard.enable(),this._add(\"blockableMapEvent\",new qn(e))}_add(t,e,r){this._handlers.push({handlerName:t,handler:e,allowed:r}),this._handlersById[t]=e}stop(t){if(!this._updatingCamera){for(const{handler:t}of this._handlers)t.reset();this._inertia.clear(),this._fireEvents({},{},t),this._changes=[]}}isActive(){for(const{handler:t}of this._handlers)if(t.isActive())return!0;return!1}isZooming(){return!!this._eventsInProgress.zoom||this._map.scrollZoom.isZooming()}isRotating(){return!!this._eventsInProgress.rotate}isMoving(){return Boolean(ki(this._eventsInProgress))||this.isZooming()}_blockedByActive(t,e,r){for(const n in t)if(n!==r&&(!e||e.indexOf(n)<0))return!0;return!1}_getMapTouches(t){const e=[];for(const r of t){const t=r.target;this._el.contains(t)&&e.push(r)}return e}mergeHandlerResult(t,r,n,i,a){if(!n)return;e.e(t,n);const o={handlerName:i,originalEvent:n.originalEvent||a};void 0!==n.zoomDelta&&(r.zoom=o),void 0!==n.panDelta&&(r.drag=o),void 0!==n.pitchDelta&&(r.pitch=o),void 0!==n.bearingDelta&&(r.rotate=o)}_applyChanges(){const t={},r={},n={};for(const[i,a,o]of this._changes)i.panDelta&&(t.panDelta=(t.panDelta||new e.P(0,0))._add(i.panDelta)),i.zoomDelta&&(t.zoomDelta=(t.zoomDelta||0)+i.zoomDelta),i.bearingDelta&&(t.bearingDelta=(t.bearingDelta||0)+i.bearingDelta),i.pitchDelta&&(t.pitchDelta=(t.pitchDelta||0)+i.pitchDelta),void 0!==i.around&&(t.around=i.around),void 0!==i.pinchAround&&(t.pinchAround=i.pinchAround),i.noInertia&&(t.noInertia=i.noInertia),e.e(r,a),e.e(n,o);this._updateMapTransform(t,r,n),this._changes=[]}_updateMapTransform(t,e,r){const n=this._map,i=n._getTransformForUpdate(),a=n.terrain;if(!(Mi(t)||a&&this._terrainMovement))return this._fireEvents(e,r,!0);let{panDelta:o,zoomDelta:s,bearingDelta:l,pitchDelta:c,around:u,pinchAround:h}=t;void 0!==h&&(u=h),n._stop(!0),u=u||n.transform.centerPoint;const f=i.pointLocation(o?u.sub(o):u);l&&(i.bearing+=l),c&&(i.pitch+=c),s&&(i.zoom+=s),a?this._terrainMovement||!e.drag&&!e.zoom?e.drag&&this._terrainMovement?i.center=i.pointLocation(i.centerPoint.sub(o)):i.setLocationAtPoint(f,u):(this._terrainMovement=!0,this._map._elevationFreeze=!0,i.setLocationAtPoint(f,u)):i.setLocationAtPoint(f,u),n._applyUpdatedTransform(i),this._map._update(),t.noInertia||this._inertia.record(t),this._fireEvents(e,r,!0)}_fireEvents(t,r,n){const i=ki(this._eventsInProgress),o=ki(t),s={};for(const e in t){const{originalEvent:r}=t[e];this._eventsInProgress[e]||(s[`${e}start`]=r),this._eventsInProgress[e]=t[e]}!i&&o&&this._fireEvent(\"movestart\",o.originalEvent);for(const t in s)this._fireEvent(t,s[t]);o&&this._fireEvent(\"move\",o.originalEvent);for(const e in t){const{originalEvent:r}=t[e];this._fireEvent(e,r)}const l={};let c;for(const t in this._eventsInProgress){const{handlerName:e,originalEvent:n}=this._eventsInProgress[t];this._handlersById[e].isActive()||(delete this._eventsInProgress[t],c=r[e]||n,l[`${t}end`]=c)}for(const t in l)this._fireEvent(t,l[t]);const u=ki(this._eventsInProgress),h=(i||o)&&!u;if(h&&this._terrainMovement){this._map._elevationFreeze=!1,this._terrainMovement=!1;const t=this._map._getTransformForUpdate();t.recalculateZoom(this._map.terrain),this._map._applyUpdatedTransform(t)}if(n&&h){this._updatingCamera=!0;const t=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),r=t=>0!==t&&-this._bearingSnap<t&&t<this._bearingSnap;!t||!t.essential&&a.prefersReducedMotion?(this._map.fire(new e.k(\"moveend\",{originalEvent:c})),r(this._map.getBearing())&&this._map.resetNorth()):(r(t.bearing||this._map.getBearing())&&(t.bearing=0),t.freezeElevation=!0,this._map.easeTo(t,{originalEvent:c})),this._updatingCamera=!1}}_fireEvent(t,r){this._map.fire(new e.k(t,r?{originalEvent:r}:{}))}_requestFrame(){return this._map.triggerRepaint(),this._map._renderTaskQueue.add((t=>{delete this._frameId,this.handleEvent(new Ai(\"renderFrame\",{timeStamp:t})),this._applyChanges()}))}_triggerRenderFrame(){void 0===this._frameId&&(this._frameId=this._requestFrame())}}class Ei extends e.E{constructor(t,e){super(),this._renderFrameCallback=()=>{const t=Math.min((a.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(t)),t<1&&this._easeFrameId?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},this._moving=!1,this._zooming=!1,this.transform=t,this._bearingSnap=e.bearingSnap,this.on(\"moveend\",(()=>{delete this._requestedCameraState}))}getCenter(){return new e.N(this.transform.center.lng,this.transform.center.lat)}setCenter(t,e){return this.jumpTo({center:t},e)}panBy(t,r,n){return t=e.P.convert(t).mult(-1),this.panTo(this.transform.center,e.e({offset:t},r),n)}panTo(t,r,n){return this.easeTo(e.e({center:t},r),n)}getZoom(){return this.transform.zoom}setZoom(t,e){return this.jumpTo({zoom:t},e),this}zoomTo(t,r,n){return this.easeTo(e.e({zoom:t},r),n)}zoomIn(t,e){return this.zoomTo(this.getZoom()+1,t,e),this}zoomOut(t,e){return this.zoomTo(this.getZoom()-1,t,e),this}getBearing(){return this.transform.bearing}setBearing(t,e){return this.jumpTo({bearing:t},e),this}getPadding(){return this.transform.padding}setPadding(t,e){return this.jumpTo({padding:t},e),this}rotateTo(t,r,n){return this.easeTo(e.e({bearing:t},r),n)}resetNorth(t,r){return this.rotateTo(0,e.e({duration:1e3},t),r),this}resetNorthPitch(t,r){return this.easeTo(e.e({bearing:0,pitch:0,duration:1e3},t),r),this}snapToNorth(t,e){return Math.abs(this.getBearing())<this._bearingSnap?this.resetNorth(t,e):this}getPitch(){return this.transform.pitch}setPitch(t,e){return this.jumpTo({pitch:t},e),this}cameraForBounds(t,e){t=X.convert(t);const r=e&&e.bearing||0;return this._cameraForBoxAndBearing(t.getNorthWest(),t.getSouthEast(),r,e)}_cameraForBoxAndBearing(t,r,n,i){const a={top:0,bottom:0,right:0,left:0};if(\"number\"==typeof(i=e.e({padding:a,offset:[0,0],maxZoom:this.transform.maxZoom},i)).padding){const t=i.padding;i.padding={top:t,bottom:t,right:t,left:t}}i.padding=e.e(a,i.padding);const o=this.transform,s=o.padding,l=new X(t,r),c=o.project(l.getNorthWest()),u=o.project(l.getNorthEast()),h=o.project(l.getSouthEast()),f=o.project(l.getSouthWest()),p=e.ba(-n),d=c.rotate(p),m=u.rotate(p),g=h.rotate(p),y=f.rotate(p),v=new e.P(Math.max(d.x,m.x,y.x,g.x),Math.max(d.y,m.y,y.y,g.y)),x=new e.P(Math.min(d.x,m.x,y.x,g.x),Math.min(d.y,m.y,y.y,g.y)),_=v.sub(x),b=(o.width-(s.left+s.right+i.padding.left+i.padding.right))/_.x,w=(o.height-(s.top+s.bottom+i.padding.top+i.padding.bottom))/_.y;if(w<0||b<0)return void e.w(\"Map cannot fit within canvas with the given bounds, padding, and/or offset.\");const T=Math.min(o.scaleZoom(o.scale*Math.min(b,w)),i.maxZoom),k=e.P.convert(i.offset),A=(i.padding.left-i.padding.right)/2,M=(i.padding.top-i.padding.bottom)/2,S=new e.P(A,M).rotate(e.ba(n)),E=k.add(S).mult(o.scale/o.zoomScale(T));return{center:o.unproject(c.add(h).div(2).sub(E)),zoom:T,bearing:n}}fitBounds(t,e,r){return this._fitInternal(this.cameraForBounds(t,e),e,r)}fitScreenCoordinates(t,r,n,i,a){return this._fitInternal(this._cameraForBoxAndBearing(this.transform.pointLocation(e.P.convert(t)),this.transform.pointLocation(e.P.convert(r)),n,i),i,a)}_fitInternal(t,r,n){return t?(delete(r=e.e(t,r)).padding,r.linear?this.easeTo(r,n):this.flyTo(r,n)):this}jumpTo(t,r){this.stop();const n=this._getTransformForUpdate();let i=!1,a=!1,o=!1;return\"zoom\"in t&&n.zoom!==+t.zoom&&(i=!0,n.zoom=+t.zoom),void 0!==t.center&&(n.center=e.N.convert(t.center)),\"bearing\"in t&&n.bearing!==+t.bearing&&(a=!0,n.bearing=+t.bearing),\"pitch\"in t&&n.pitch!==+t.pitch&&(o=!0,n.pitch=+t.pitch),null==t.padding||n.isPaddingEqual(t.padding)||(n.padding=t.padding),this._applyUpdatedTransform(n),this.fire(new e.k(\"movestart\",r)).fire(new e.k(\"move\",r)),i&&this.fire(new e.k(\"zoomstart\",r)).fire(new e.k(\"zoom\",r)).fire(new e.k(\"zoomend\",r)),a&&this.fire(new e.k(\"rotatestart\",r)).fire(new e.k(\"rotate\",r)).fire(new e.k(\"rotateend\",r)),o&&this.fire(new e.k(\"pitchstart\",r)).fire(new e.k(\"pitch\",r)).fire(new e.k(\"pitchend\",r)),this.fire(new e.k(\"moveend\",r))}calculateCameraOptionsFromTo(t,r,n,i=0){const a=e.Z.fromLngLat(t,r),o=e.Z.fromLngLat(n,i),s=o.x-a.x,l=o.y-a.y,c=o.z-a.z,u=Math.hypot(s,l,c);if(0===u)throw new Error(\"Can't calculate camera options with same From and To\");const h=Math.hypot(s,l),f=this.transform.scaleZoom(this.transform.cameraToCenterDistance/u/this.transform.tileSize),p=180*Math.atan2(s,-l)/Math.PI;let d=180*Math.acos(h/u)/Math.PI;return d=c<0?90-d:90+d,{center:o.toLngLat(),zoom:f,pitch:d,bearing:p}}easeTo(t,r){var n;this._stop(!1,t.easeId),(!1===(t=e.e({offset:[0,0],duration:500,easing:e.b9},t)).animate||!t.essential&&a.prefersReducedMotion)&&(t.duration=0);const i=this._getTransformForUpdate(),o=i.zoom,s=i.bearing,l=i.pitch,c=i.padding,u=\"bearing\"in t?this._normalizeBearing(t.bearing,s):s,h=\"pitch\"in t?+t.pitch:l,f=\"padding\"in t?t.padding:i.padding,p=e.P.convert(t.offset);let d=i.centerPoint.add(p);const m=i.pointLocation(d),{center:g,zoom:y}=i.getConstrained(e.N.convert(t.center||m),null!==(n=t.zoom)&&void 0!==n?n:o);this._normalizeCenter(g,i);const v=i.project(m),x=i.project(g).sub(v),_=i.zoomScale(y-o);let b,w;t.around&&(b=e.N.convert(t.around),w=i.locationPoint(b));const T={moving:this._moving,zooming:this._zooming,rotating:this._rotating,pitching:this._pitching};return this._zooming=this._zooming||y!==o,this._rotating=this._rotating||s!==u,this._pitching=this._pitching||h!==l,this._padding=!i.isPaddingEqual(f),this._easeId=t.easeId,this._prepareEase(r,t.noMoveStart,T),this.terrain&&this._prepareElevation(g),this._ease((n=>{if(this._zooming&&(i.zoom=e.z.number(o,y,n)),this._rotating&&(i.bearing=e.z.number(s,u,n)),this._pitching&&(i.pitch=e.z.number(l,h,n)),this._padding&&(i.interpolatePadding(c,f,n),d=i.centerPoint.add(p)),this.terrain&&!t.freezeElevation&&this._updateElevation(n),b)i.setLocationAtPoint(b,w);else{const t=i.zoomScale(i.zoom-o),e=y>o?Math.min(2,_):Math.max(.5,_),r=Math.pow(e,1-n),a=i.unproject(v.add(x.mult(n*r)).mult(t));i.setLocationAtPoint(i.renderWorldCopies?a.wrap():a,d)}this._applyUpdatedTransform(i),this._fireMoveEvents(r)}),(e=>{this.terrain&&t.freezeElevation&&this._finalizeElevation(),this._afterEase(r,e)}),t),this}_prepareEase(t,r,n={}){this._moving=!0,r||n.moving||this.fire(new e.k(\"movestart\",t)),this._zooming&&!n.zooming&&this.fire(new e.k(\"zoomstart\",t)),this._rotating&&!n.rotating&&this.fire(new e.k(\"rotatestart\",t)),this._pitching&&!n.pitching&&this.fire(new e.k(\"pitchstart\",t))}_prepareElevation(t){this._elevationCenter=t,this._elevationStart=this.transform.elevation,this._elevationTarget=this.terrain.getElevationForLngLatZoom(t,this.transform.tileZoom),this._elevationFreeze=!0}_updateElevation(t){this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this._elevationCenter,this.transform.tileZoom);const r=this.terrain.getElevationForLngLatZoom(this._elevationCenter,this.transform.tileZoom);if(t<1&&r!==this._elevationTarget){const e=this._elevationTarget-this._elevationStart,n=(r-(e*t+this._elevationStart))/(1-t);this._elevationStart+=t*(e-n),this._elevationTarget=r}this.transform.elevation=e.z.number(this._elevationStart,this._elevationTarget,t)}_finalizeElevation(){this._elevationFreeze=!1,this.transform.recalculateZoom(this.terrain)}_getTransformForUpdate(){return this.transformCameraUpdate||this.terrain?(this._requestedCameraState||(this._requestedCameraState=this.transform.clone()),this._requestedCameraState):this.transform}_elevateCameraIfInsideTerrain(t){const e=t.getCameraPosition(),r=this.terrain.getElevationForLngLatZoom(e.lngLat,t.zoom);if(e.altitude<r){const n=this.calculateCameraOptionsFromTo(e.lngLat,r,t.center,t.elevation);return{pitch:n.pitch,zoom:n.zoom}}return{}}_applyUpdatedTransform(t){const e=[];if(this.terrain&&e.push((t=>this._elevateCameraIfInsideTerrain(t))),this.transformCameraUpdate&&e.push((t=>this.transformCameraUpdate(t))),!e.length)return;const r=t.clone();for(const t of e){const e=r.clone(),{center:n,zoom:i,pitch:a,bearing:o,elevation:s}=t(e);n&&(e.center=n),void 0!==i&&(e.zoom=i),void 0!==a&&(e.pitch=a),void 0!==o&&(e.bearing=o),void 0!==s&&(e.elevation=s),r.apply(e)}this.transform.apply(r)}_fireMoveEvents(t){this.fire(new e.k(\"move\",t)),this._zooming&&this.fire(new e.k(\"zoom\",t)),this._rotating&&this.fire(new e.k(\"rotate\",t)),this._pitching&&this.fire(new e.k(\"pitch\",t))}_afterEase(t,r){if(this._easeId&&r&&this._easeId===r)return;delete this._easeId;const 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.k(\"zoomend\",t)),i&&this.fire(new e.k(\"rotateend\",t)),a&&this.fire(new e.k(\"pitchend\",t)),this.fire(new e.k(\"moveend\",t))}flyTo(t,r){var n;if(!t.essential&&a.prefersReducedMotion){const n=e.M(t,[\"center\",\"zoom\",\"bearing\",\"pitch\",\"around\"]);return this.jumpTo(n,r)}this.stop(),t=e.e({offset:[0,0],speed:1.2,curve:1.42,easing:e.b9},t);const i=this._getTransformForUpdate(),o=i.zoom,s=i.bearing,l=i.pitch,c=i.padding,u=\"bearing\"in t?this._normalizeBearing(t.bearing,s):s,h=\"pitch\"in t?+t.pitch:l,f=\"padding\"in t?t.padding:i.padding,p=e.P.convert(t.offset);let d=i.centerPoint.add(p);const m=i.pointLocation(d),{center:g,zoom:y}=i.getConstrained(e.N.convert(t.center||m),null!==(n=t.zoom)&&void 0!==n?n:o);this._normalizeCenter(g,i);const v=i.zoomScale(y-o),x=i.project(m),_=i.project(g).sub(x);let b=t.curve;const w=Math.max(i.width,i.height),T=w/v,k=_.mag();if(\"minZoom\"in t){const r=e.ad(Math.min(t.minZoom,o,y),i.minZoom,i.maxZoom),n=w/i.zoomScale(r-o);b=Math.sqrt(n/k*2)}const A=b*b;function M(t){const e=(T*T-w*w+(t?-1:1)*A*A*k*k)/(2*(t?T:w)*A*k);return Math.log(Math.sqrt(e*e+1)-e)}function S(t){return(Math.exp(t)-Math.exp(-t))/2}function E(t){return(Math.exp(t)+Math.exp(-t))/2}const C=M(!1);let L=function(t){return E(C)/E(C+b*t)},I=function(t){return w*((E(C)*(S(e=C+b*t)/E(e))-S(C))/A)/k;var e},P=(M(!0)-C)/b;if(Math.abs(k)<1e-6||!isFinite(P)){if(Math.abs(w-T)<1e-6)return this.easeTo(t,r);const e=T<w?-1:1;P=Math.abs(Math.log(T/w))/b,I=()=>0,L=t=>Math.exp(e*b*t)}if(\"duration\"in t)t.duration=+t.duration;else{const e=\"screenSpeed\"in t?+t.screenSpeed/b:+t.speed;t.duration=1e3*P/e}return t.maxDuration&&t.duration>t.maxDuration&&(t.duration=0),this._zooming=!0,this._rotating=s!==u,this._pitching=h!==l,this._padding=!i.isPaddingEqual(f),this._prepareEase(r,!1),this.terrain&&this._prepareElevation(g),this._ease((n=>{const a=n*P,m=1/L(a);i.zoom=1===n?y:o+i.scaleZoom(m),this._rotating&&(i.bearing=e.z.number(s,u,n)),this._pitching&&(i.pitch=e.z.number(l,h,n)),this._padding&&(i.interpolatePadding(c,f,n),d=i.centerPoint.add(p)),this.terrain&&!t.freezeElevation&&this._updateElevation(n);const v=1===n?g:i.unproject(x.add(_.mult(I(a))).mult(m));i.setLocationAtPoint(i.renderWorldCopies?v.wrap():v,d),this._applyUpdatedTransform(i),this._fireMoveEvents(r)}),(()=>{this.terrain&&t.freezeElevation&&this._finalizeElevation(),this._afterEase(r)}),t),this}isEasing(){return!!this._easeFrameId}stop(){return this._stop()}_stop(t,e){var r;if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){const t=this._onEaseEnd;delete this._onEaseEnd,t.call(this,e)}return t||null===(r=this.handlers)||void 0===r||r.stop(!1),this}_ease(t,e,r){!1===r.animate||0===r.duration?(t(1),e()):(this._easeStart=a.now(),this._easeOptions=r,this._onEaseFrame=t,this._onEaseEnd=e,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))}_normalizeBearing(t,r){t=e.b3(t,-180,180);const n=Math.abs(t-r);return Math.abs(t-360-r)<n&&(t-=360),Math.abs(t+360-r)<n&&(t+=360),t}_normalizeCenter(t,e){if(!e.renderWorldCopies||e.lngRange)return;const r=t.lng-e.center.lng;t.lng+=r>180?-360:r<-180?360:0}queryTerrainElevation(t){return this.terrain?this.terrain.getElevationForLngLatZoom(e.N.convert(t),this.transform.tileZoom)-this.transform.elevation:null}}const Ci={compact:!0,customAttribution:'<a href=\"https://maplibre.org/\" target=\"_blank\">MapLibre</a>'};class Li{constructor(t=Ci){this._toggleAttribution=()=>{this._container.classList.contains(\"maplibregl-compact\")&&(this._container.classList.contains(\"maplibregl-compact-show\")?(this._container.setAttribute(\"open\",\"\"),this._container.classList.remove(\"maplibregl-compact-show\")):(this._container.classList.add(\"maplibregl-compact-show\"),this._container.removeAttribute(\"open\")))},this._updateData=t=>{!t||\"metadata\"!==t.sourceDataType&&\"visibility\"!==t.sourceDataType&&\"style\"!==t.dataType&&\"terrain\"!==t.type||this._updateAttributions()},this._updateCompact=()=>{this._map.getCanvasContainer().offsetWidth<=640||this._compact?!1===this._compact?this._container.setAttribute(\"open\",\"\"):this._container.classList.contains(\"maplibregl-compact\")||this._container.classList.contains(\"maplibregl-attrib-empty\")||(this._container.setAttribute(\"open\",\"\"),this._container.classList.add(\"maplibregl-compact\",\"maplibregl-compact-show\")):(this._container.setAttribute(\"open\",\"\"),this._container.classList.contains(\"maplibregl-compact\")&&this._container.classList.remove(\"maplibregl-compact\",\"maplibregl-compact-show\"))},this._updateCompactMinimize=()=>{this._container.classList.contains(\"maplibregl-compact\")&&this._container.classList.contains(\"maplibregl-compact-show\")&&this._container.classList.remove(\"maplibregl-compact-show\")},this.options=t}getDefaultPosition(){return\"bottom-right\"}onAdd(t){return this._map=t,this._compact=this.options.compact,this._container=o.create(\"details\",\"maplibregl-ctrl maplibregl-ctrl-attrib\"),this._compactButton=o.create(\"summary\",\"maplibregl-ctrl-attrib-button\",this._container),this._compactButton.addEventListener(\"click\",this._toggleAttribution),this._setElementTitle(this._compactButton,\"ToggleAttribution\"),this._innerContainer=o.create(\"div\",\"maplibregl-ctrl-attrib-inner\",this._container),this._updateAttributions(),this._updateCompact(),this._map.on(\"styledata\",this._updateData),this._map.on(\"sourcedata\",this._updateData),this._map.on(\"terrain\",this._updateData),this._map.on(\"resize\",this._updateCompact),this._map.on(\"drag\",this._updateCompactMinimize),this._container}onRemove(){o.remove(this._container),this._map.off(\"styledata\",this._updateData),this._map.off(\"sourcedata\",this._updateData),this._map.off(\"terrain\",this._updateData),this._map.off(\"resize\",this._updateCompact),this._map.off(\"drag\",this._updateCompactMinimize),this._map=void 0,this._compact=void 0,this._attribHTML=void 0}_setElementTitle(t,e){const r=this._map._getUIString(`AttributionControl.${e}`);t.title=r,t.setAttribute(\"aria-label\",r)}_updateAttributions(){if(!this._map.style)return;let t=[];if(this.options.customAttribution&&(Array.isArray(this.options.customAttribution)?t=t.concat(this.options.customAttribution.map((t=>\"string\"!=typeof t?\"\":t))):\"string\"==typeof this.options.customAttribution&&t.push(this.options.customAttribution)),this._map.style.stylesheet){const t=this._map.style.stylesheet;this.styleOwner=t.owner,this.styleId=t.id}const e=this._map.style.sourceCaches;for(const r in e){const n=e[r];if(n.used||n.usedForTerrain){const e=n.getSource();e.attribution&&t.indexOf(e.attribution)<0&&t.push(e.attribution)}}t=t.filter((t=>String(t).trim())),t.sort(((t,e)=>t.length-e.length)),t=t.filter(((e,r)=>{for(let n=r+1;n<t.length;n++)if(t[n].indexOf(e)>=0)return!1;return!0}));const r=t.join(\" | \");r!==this._attribHTML&&(this._attribHTML=r,t.length?(this._innerContainer.innerHTML=r,this._container.classList.remove(\"maplibregl-attrib-empty\")):this._container.classList.add(\"maplibregl-attrib-empty\"),this._updateCompact(),this._editLink=null)}}class Ii{constructor(t={}){this._updateCompact=()=>{const t=this._container.children;if(t.length){const e=t[0];this._map.getCanvasContainer().offsetWidth<=640||this._compact?!1!==this._compact&&e.classList.add(\"maplibregl-compact\"):e.classList.remove(\"maplibregl-compact\")}},this.options=t}getDefaultPosition(){return\"bottom-left\"}onAdd(t){this._map=t,this._compact=this.options&&this.options.compact,this._container=o.create(\"div\",\"maplibregl-ctrl\");const e=o.create(\"a\",\"maplibregl-ctrl-logo\");return e.target=\"_blank\",e.rel=\"noopener nofollow\",e.href=\"https://maplibre.org/\",e.setAttribute(\"aria-label\",this._map._getUIString(\"LogoControl.Title\")),e.setAttribute(\"rel\",\"noopener nofollow\"),this._container.appendChild(e),this._container.style.display=\"block\",this._map.on(\"resize\",this._updateCompact),this._updateCompact(),this._container}onRemove(){o.remove(this._container),this._map.off(\"resize\",this._updateCompact),this._map=void 0,this._compact=void 0}}class Pi{constructor(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1}add(t){const e=++this._id;return this._queue.push({callback:t,id:e,cancelled:!1}),e}remove(t){const e=this._currentlyRunning,r=e?this._queue.concat(e):this._queue;for(const e of r)if(e.id===t)return void(e.cancelled=!0)}run(t=0){if(this._currentlyRunning)throw new Error(\"Attempting to run(), but is already running.\");const e=this._currentlyRunning=this._queue;this._queue=[];for(const r of e)if(!r.cancelled&&(r.callback(t),this._cleared))break;this._cleared=!1,this._currentlyRunning=!1}clear(){this._currentlyRunning&&(this._cleared=!0),this._queue=[]}}var zi=e.Y([{name:\"a_pos3d\",type:\"Int16\",components:3}]);class Oi extends e.E{constructor(t){super(),this.sourceCache=t,this._tiles={},this._renderableTilesKeys=[],this._sourceTileCache={},this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.deltaZoom=1,t.usedForTerrain=!0,t.tileSize=this.tileSize*2**this.deltaZoom}destruct(){this.sourceCache.usedForTerrain=!1,this.sourceCache.tileSize=null}update(t,r){this.sourceCache.update(t,r),this._renderableTilesKeys=[];const n={};for(const i of t.coveringTiles({tileSize:this.tileSize,minzoom:this.minzoom,maxzoom:this.maxzoom,reparseOverscaled:!1,terrain:r}))n[i.key]=!0,this._renderableTilesKeys.push(i.key),this._tiles[i.key]||(i.posMatrix=new Float64Array(16),e.aQ(i.posMatrix,0,e.X,0,e.X,0,1),this._tiles[i.key]=new ht(i,this.tileSize));for(const t in this._tiles)n[t]||delete this._tiles[t]}freeRtt(t){for(const e in this._tiles){const r=this._tiles[e];(!t||r.tileID.equals(t)||r.tileID.isChildOf(t)||t.isChildOf(r.tileID))&&(r.rtt=[])}}getRenderableTiles(){return this._renderableTilesKeys.map((t=>this.getTileByID(t)))}getTileByID(t){return this._tiles[t]}getTerrainCoords(t){const r={};for(const n of this._renderableTilesKeys){const i=this._tiles[n].tileID;if(i.canonical.equals(t.canonical)){const i=t.clone();i.posMatrix=new Float64Array(16),e.aQ(i.posMatrix,0,e.X,0,e.X,0,1),r[n]=i}else if(i.canonical.isChildOf(t.canonical)){const a=t.clone();a.posMatrix=new Float64Array(16);const o=i.canonical.z-t.canonical.z,s=i.canonical.x-(i.canonical.x>>o<<o),l=i.canonical.y-(i.canonical.y>>o<<o),c=e.X>>o;e.aQ(a.posMatrix,0,c,0,c,0,1),e.J(a.posMatrix,a.posMatrix,[-s*c,-l*c,0]),r[n]=a}else if(t.canonical.isChildOf(i.canonical)){const a=t.clone();a.posMatrix=new Float64Array(16);const o=t.canonical.z-i.canonical.z,s=t.canonical.x-(t.canonical.x>>o<<o),l=t.canonical.y-(t.canonical.y>>o<<o),c=e.X>>o;e.aQ(a.posMatrix,0,e.X,0,e.X,0,1),e.J(a.posMatrix,a.posMatrix,[s*c,l*c,0]),e.K(a.posMatrix,a.posMatrix,[1/2**o,1/2**o,0]),r[n]=a}}return r}getSourceTile(t,e){const r=this.sourceCache._source;let n=t.overscaledZ-this.deltaZoom;if(n>r.maxzoom&&(n=r.maxzoom),n<r.minzoom)return null;this._sourceTileCache[t.key]||(this._sourceTileCache[t.key]=t.scaledTo(n).key);let i=this.sourceCache.getTileByID(this._sourceTileCache[t.key]);if((!i||!i.dem)&&e)for(;n>=r.minzoom&&(!i||!i.dem);)i=this.sourceCache.getTileByID(t.scaledTo(n--).key);return i}tilesAfterTime(t=Date.now()){return Object.values(this._tiles).filter((e=>e.timeAdded>=t))}}class Di{constructor(t,e,r){this.painter=t,this.sourceCache=new Oi(e),this.options=r,this.exaggeration=\"number\"==typeof r.exaggeration?r.exaggeration:1,this.qualityFactor=2,this.meshSize=128,this._demMatrixCache={},this.coordsIndex=[],this._coordsTextureSize=1024}getDEMElevation(t,r,n,i=e.X){var a;if(!(r>=0&&r<i&&n>=0&&n<i))return 0;const o=this.getTerrainData(t),s=null===(a=o.tile)||void 0===a?void 0:a.dem;if(!s)return 0;const l=function(t,e,r){var n=e[0],i=e[1];return t[0]=r[0]*n+r[4]*i+r[12],t[1]=r[1]*n+r[5]*i+r[13],t}([],[r/i*e.X,n/i*e.X],o.u_terrain_matrix),c=[l[0]*s.dim,l[1]*s.dim],u=Math.floor(c[0]),h=Math.floor(c[1]),f=c[0]-u,p=c[1]-h;return s.get(u,h)*(1-f)*(1-p)+s.get(u+1,h)*f*(1-p)+s.get(u,h+1)*(1-f)*p+s.get(u+1,h+1)*f*p}getElevationForLngLatZoom(t,r){const{tileID:n,mercatorX:i,mercatorY:a}=this._getOverscaledTileIDFromLngLatZoom(t,r);return this.getElevation(n,i%e.X,a%e.X,e.X)}getElevation(t,r,n,i=e.X){return this.getDEMElevation(t,r,n,i)*this.exaggeration}getTerrainData(t){if(!this._emptyDemTexture){const t=this.painter.context,r=new e.R({width:1,height:1},new Uint8Array(4));this._emptyDepthTexture=new w(t,r,t.gl.RGBA,{premultiply:!1}),this._emptyDemUnpack=[0,0,0,0],this._emptyDemTexture=new w(t,new e.R({width:1,height:1}),t.gl.RGBA,{premultiply:!1}),this._emptyDemTexture.bind(t.gl.NEAREST,t.gl.CLAMP_TO_EDGE),this._emptyDemMatrix=e.ao([])}const r=this.sourceCache.getSourceTile(t,!0);if(r&&r.dem&&(!r.demTexture||r.needsTerrainPrepare)){const t=this.painter.context;r.demTexture=this.painter.getTileTexture(r.dem.stride),r.demTexture?r.demTexture.update(r.dem.getPixels(),{premultiply:!1}):r.demTexture=new w(t,r.dem.getPixels(),t.gl.RGBA,{premultiply:!1}),r.demTexture.bind(t.gl.NEAREST,t.gl.CLAMP_TO_EDGE),r.needsTerrainPrepare=!1}const n=r&&r+r.tileID.key+t.key;if(n&&!this._demMatrixCache[n]){const n=this.sourceCache.sourceCache._source.maxzoom;let i=t.canonical.z-r.tileID.canonical.z;t.overscaledZ>t.canonical.z&&(t.canonical.z>=n?i=t.canonical.z-n:e.w(\"cannot calculate elevation if elevation maxzoom > source.maxzoom\"));const a=t.canonical.x-(t.canonical.x>>i<<i),o=t.canonical.y-(t.canonical.y>>i<<i),s=e.bb(new Float64Array(16),[1/(e.X<<i),1/(e.X<<i),0]);e.J(s,s,[a*e.X,o*e.X,0]),this._demMatrixCache[t.key]={matrix:s,coord:t}}return{u_depth:2,u_terrain:3,u_terrain_dim:r&&r.dem&&r.dem.dim||1,u_terrain_matrix:n?this._demMatrixCache[t.key].matrix:this._emptyDemMatrix,u_terrain_unpack:r&&r.dem&&r.dem.getUnpackVector()||this._emptyDemUnpack,u_terrain_exaggeration:this.exaggeration,texture:(r&&r.demTexture||this._emptyDemTexture).texture,depthTexture:(this._fboDepthTexture||this._emptyDepthTexture).texture,tile:r}}getFramebuffer(t){const e=this.painter,r=e.width/devicePixelRatio,n=e.height/devicePixelRatio;return!this._fbo||this._fbo.width===r&&this._fbo.height===n||(this._fbo.destroy(),this._fboCoordsTexture.destroy(),this._fboDepthTexture.destroy(),delete this._fbo,delete this._fboDepthTexture,delete this._fboCoordsTexture),this._fboCoordsTexture||(this._fboCoordsTexture=new w(e.context,{width:r,height:n,data:null},e.context.gl.RGBA,{premultiply:!1}),this._fboCoordsTexture.bind(e.context.gl.NEAREST,e.context.gl.CLAMP_TO_EDGE)),this._fboDepthTexture||(this._fboDepthTexture=new w(e.context,{width:r,height:n,data:null},e.context.gl.RGBA,{premultiply:!1}),this._fboDepthTexture.bind(e.context.gl.NEAREST,e.context.gl.CLAMP_TO_EDGE)),this._fbo||(this._fbo=e.context.createFramebuffer(r,n,!0,!1),this._fbo.depthAttachment.set(e.context.createRenderbuffer(e.context.gl.DEPTH_COMPONENT16,r,n))),this._fbo.colorAttachment.set(\"coords\"===t?this._fboCoordsTexture.texture:this._fboDepthTexture.texture),this._fbo}getCoordsTexture(){const t=this.painter.context;if(this._coordsTexture)return this._coordsTexture;const r=new Uint8Array(this._coordsTextureSize*this._coordsTextureSize*4);for(let t=0,e=0;t<this._coordsTextureSize;t++)for(let n=0;n<this._coordsTextureSize;n++,e+=4)r[e+0]=255&n,r[e+1]=255&t,r[e+2]=n>>8<<4|t>>8,r[e+3]=0;const n=new e.R({width:this._coordsTextureSize,height:this._coordsTextureSize},new Uint8Array(r.buffer)),i=new w(t,n,t.gl.RGBA,{premultiply:!1});return i.bind(t.gl.NEAREST,t.gl.CLAMP_TO_EDGE),this._coordsTexture=i,i}pointCoordinate(t){this.painter.maybeDrawDepthAndCoords(!0);const r=new Uint8Array(4),n=this.painter.context,i=n.gl,a=Math.round(t.x*this.painter.pixelRatio/devicePixelRatio),o=Math.round(t.y*this.painter.pixelRatio/devicePixelRatio),s=Math.round(this.painter.height/devicePixelRatio);n.bindFramebuffer.set(this.getFramebuffer(\"coords\").framebuffer),i.readPixels(a,s-o-1,1,1,i.RGBA,i.UNSIGNED_BYTE,r),n.bindFramebuffer.set(null);const l=r[0]+(r[2]>>4<<8),c=r[1]+((15&r[2])<<8),u=this.coordsIndex[255-r[3]],h=u&&this.sourceCache.getTileByID(u);if(!h)return null;const f=this._coordsTextureSize,p=(1<<h.tileID.canonical.z)*f;return new e.Z((h.tileID.canonical.x*f+l)/p+h.tileID.wrap,(h.tileID.canonical.y*f+c)/p,this.getElevation(h.tileID,l,c,f))}depthAtPoint(t){const e=new Uint8Array(4),r=this.painter.context,n=r.gl;return r.bindFramebuffer.set(this.getFramebuffer(\"depth\").framebuffer),n.readPixels(t.x,this.painter.height/devicePixelRatio-t.y-1,1,1,n.RGBA,n.UNSIGNED_BYTE,e),r.bindFramebuffer.set(null),(e[0]/16777216+e[1]/65536+e[2]/256+e[3])/256}getTerrainMesh(){if(this._mesh)return this._mesh;const t=this.painter.context,r=new e.bc,n=new e.aY,i=this.meshSize,a=e.X/i,o=i*i;for(let t=0;t<=i;t++)for(let e=0;e<=i;e++)r.emplaceBack(e*a,t*a,0);for(let t=0;t<o;t+=i+1)for(let e=0;e<i;e++)n.emplaceBack(e+t,i+e+t+1,i+e+t+2),n.emplaceBack(e+t,i+e+t+2,e+t+1);const s=r.length,l=s+2*(i+1);for(const t of[0,1])for(let n=0;n<=i;n++)for(const i of[0,1])r.emplaceBack(n*a,t*e.X,i);for(let t=0;t<2*i;t+=2)n.emplaceBack(l+t,l+t+1,l+t+3),n.emplaceBack(l+t,l+t+3,l+t+2),n.emplaceBack(s+t,s+t+3,s+t+1),n.emplaceBack(s+t,s+t+2,s+t+3);const c=r.length,u=c+2*(i+1);for(const t of[0,1])for(let n=0;n<=i;n++)for(const i of[0,1])r.emplaceBack(t*e.X,n*a,i);for(let t=0;t<2*i;t+=2)n.emplaceBack(c+t,c+t+1,c+t+3),n.emplaceBack(c+t,c+t+3,c+t+2),n.emplaceBack(u+t,u+t+3,u+t+1),n.emplaceBack(u+t,u+t+2,u+t+3);return this._mesh=new wn(t.createVertexBuffer(r,zi.members),t.createIndexBuffer(n),e.a0.simpleSegment(0,0,r.length,n.length)),this._mesh}getMeshFrameDelta(t){return 2*Math.PI*e.bd/Math.pow(2,t)/5}getMinTileElevationForLngLatZoom(t,e){var r;const{tileID:n}=this._getOverscaledTileIDFromLngLatZoom(t,e);return null!==(r=this.getMinMaxElevation(n).minElevation)&&void 0!==r?r:0}getMinMaxElevation(t){const e=this.getTerrainData(t).tile,r={minElevation:null,maxElevation:null};return e&&e.dem&&(r.minElevation=e.dem.min*this.exaggeration,r.maxElevation=e.dem.max*this.exaggeration),r}_getOverscaledTileIDFromLngLatZoom(t,r){const n=e.Z.fromLngLat(t.wrap()),i=(1<<r)*e.X,a=n.x*i,o=n.y*i,s=Math.floor(a/e.X),l=Math.floor(o/e.X);return{tileID:new e.S(r,0,r,s,l),mercatorX:a,mercatorY:o}}}class Ri{constructor(t,e,r){this._context=t,this._size=e,this._tileSize=r,this._objects=[],this._recentlyUsed=[],this._stamp=0}destruct(){for(const t of this._objects)t.texture.destroy(),t.fbo.destroy()}_createObject(t){const e=this._context.createFramebuffer(this._tileSize,this._tileSize,!0,!0),r=new w(this._context,{width:this._tileSize,height:this._tileSize,data:null},this._context.gl.RGBA);return r.bind(this._context.gl.LINEAR,this._context.gl.CLAMP_TO_EDGE),e.depthAttachment.set(this._context.createRenderbuffer(this._context.gl.DEPTH_STENCIL,this._tileSize,this._tileSize)),e.colorAttachment.set(r.texture),{id:t,fbo:e,texture:r,stamp:-1,inUse:!1}}getObjectForId(t){return this._objects[t]}useObject(t){t.inUse=!0,this._recentlyUsed=this._recentlyUsed.filter((e=>t.id!==e)),this._recentlyUsed.push(t.id)}stampObject(t){t.stamp=++this._stamp}getOrCreateFreeObject(){for(const t of this._recentlyUsed)if(!this._objects[t].inUse)return this._objects[t];if(this._objects.length>=this._size)throw new Error(\"No free RenderPool available, call freeAllObjects() required!\");const t=this._createObject(this._objects.length);return this._objects.push(t),t}freeObject(t){t.inUse=!1}freeAllObjects(){for(const t of this._objects)this.freeObject(t)}isFull(){return!(this._objects.length<this._size)&&!1===this._objects.some((t=>!t.inUse))}}const Fi={background:!0,fill:!0,line:!0,raster:!0,hillshade:!0};class Bi{constructor(t,e){this.painter=t,this.terrain=e,this.pool=new Ri(t.context,30,e.sourceCache.tileSize*e.qualityFactor)}destruct(){this.pool.destruct()}getTexture(t){return this.pool.getObjectForId(t.rtt[this._stacks.length-1].id).texture}prepareForRender(t,e){this._stacks=[],this._prevType=null,this._rttTiles=[],this._renderableTiles=this.terrain.sourceCache.getRenderableTiles(),this._renderableLayerIds=t._order.filter((r=>!t._layers[r].isHidden(e))),this._coordsDescendingInv={};for(const e in t.sourceCaches){this._coordsDescendingInv[e]={};const r=t.sourceCaches[e].getVisibleCoordinates();for(const t of r){const r=this.terrain.sourceCache.getTerrainCoords(t);for(const t in r)this._coordsDescendingInv[e][t]||(this._coordsDescendingInv[e][t]=[]),this._coordsDescendingInv[e][t].push(r[t])}}this._coordsDescendingInvStr={};for(const e of t._order){const r=t._layers[e],n=r.source;if(Fi[r.type]&&!this._coordsDescendingInvStr[n]){this._coordsDescendingInvStr[n]={};for(const t in this._coordsDescendingInv[n])this._coordsDescendingInvStr[n][t]=this._coordsDescendingInv[n][t].map((t=>t.key)).sort().join()}}for(const t of this._renderableTiles)for(const e in this._coordsDescendingInvStr){const r=this._coordsDescendingInvStr[e][t.tileID.key];r&&r!==t.rttCoords[e]&&(t.rtt=[])}}renderLayer(t){if(t.isHidden(this.painter.transform.zoom))return!1;const r=t.type,n=this.painter,i=this._renderableLayerIds[this._renderableLayerIds.length-1]===t.id;if(Fi[r]&&(this._prevType&&Fi[this._prevType]||this._stacks.push([]),this._prevType=r,this._stacks[this._stacks.length-1].push(t.id),!i))return!0;if(Fi[this._prevType]||Fi[r]&&i){this._prevType=r;const t=this._stacks.length-1,i=this._stacks[t]||[];for(const r of this._renderableTiles){if(this.pool.isFull()&&(bn(this.painter,this.terrain,this._rttTiles),this._rttTiles=[],this.pool.freeAllObjects()),this._rttTiles.push(r),r.rtt[t]){const e=this.pool.getObjectForId(r.rtt[t].id);if(e.stamp===r.rtt[t].stamp){this.pool.useObject(e);continue}}const a=this.pool.getOrCreateFreeObject();this.pool.useObject(a),this.pool.stampObject(a),r.rtt[t]={id:a.id,stamp:a.stamp},n.context.bindFramebuffer.set(a.fbo.framebuffer),n.context.clear({color:e.aN.transparent,stencil:0}),n.currentStencilSource=void 0;for(let t=0;t<i.length;t++){const e=n.style._layers[i[t]],o=e.source?this._coordsDescendingInv[e.source][r.tileID.key]:[r.tileID];n.context.viewport.set([0,0,a.fbo.width,a.fbo.height]),n._renderTileClippingMasks(e,o),n.renderLayer(n,n.style.sourceCaches[e.source],e,o),e.source&&(r.rttCoords[e.source]=this._coordsDescendingInvStr[e.source][r.tileID.key])}}return bn(this.painter,this.terrain,this._rttTiles),this._rttTiles=[],this.pool.freeAllObjects(),Fi[r]}return!1}}const Ni={\"AttributionControl.ToggleAttribution\":\"Toggle attribution\",\"AttributionControl.MapFeedback\":\"Map feedback\",\"FullscreenControl.Enter\":\"Enter fullscreen\",\"FullscreenControl.Exit\":\"Exit fullscreen\",\"GeolocateControl.FindMyLocation\":\"Find my location\",\"GeolocateControl.LocationNotAvailable\":\"Location not available\",\"LogoControl.Title\":\"MapLibre logo\",\"Map.Title\":\"Map\",\"Marker.Title\":\"Map marker\",\"NavigationControl.ResetBearing\":\"Reset bearing to north\",\"NavigationControl.ZoomIn\":\"Zoom in\",\"NavigationControl.ZoomOut\":\"Zoom out\",\"Popup.Close\":\"Close popup\",\"ScaleControl.Feet\":\"ft\",\"ScaleControl.Meters\":\"m\",\"ScaleControl.Kilometers\":\"km\",\"ScaleControl.Miles\":\"mi\",\"ScaleControl.NauticalMiles\":\"nm\",\"TerrainControl.Enable\":\"Enable terrain\",\"TerrainControl.Disable\":\"Disable terrain\",\"CooperativeGesturesHandler.WindowsHelpText\":\"Use Ctrl + scroll to zoom the map\",\"CooperativeGesturesHandler.MacHelpText\":\"Use ⌘ + scroll to zoom the map\",\"CooperativeGesturesHandler.MobileHelpText\":\"Use two fingers to move the map\"},ji=r,Ui={hash:!1,interactive:!0,bearingSnap:7,attributionControl:Ci,maplibreLogo:!1,failIfMajorPerformanceCaveat:!1,preserveDrawingBuffer:!1,refreshExpiredTiles:!0,scrollZoom:!0,minZoom:-2,maxZoom:22,minPitch:0,maxPitch:60,boxZoom:!0,dragRotate:!0,dragPan:!0,keyboard:!0,doubleClickZoom:!0,touchZoomRotate:!0,touchPitch:!0,cooperativeGestures:!1,trackResize:!0,center:[0,0],zoom:0,bearing:0,pitch:0,renderWorldCopies:!0,maxTileCacheSize:null,maxTileCacheZoomLevels:e.a.MAX_TILE_CACHE_ZOOM_LEVELS,transformRequest:null,transformCameraUpdate:null,fadeDuration:300,crossSourceCollisions:!0,clickTolerance:3,localIdeographFontFamily:\"sans-serif\",pitchWithRotate:!0,validateStyle:!0,maxCanvasSize:[4096,4096],cancelPendingTileRequestsWhileZooming:!0};const Vi=t=>{t.touchstart=t.dragStart,t.touchmoveWindow=t.dragMove,t.touchend=t.dragEnd},qi={showCompass:!0,showZoom:!0,visualizePitch:!1};class Hi{constructor(t,r,n=!1){this.mousedown=t=>{this.startMouse(e.e({},t,{ctrlKey:!0,preventDefault:()=>t.preventDefault()}),o.mousePos(this.element,t)),o.addEventListener(window,\"mousemove\",this.mousemove),o.addEventListener(window,\"mouseup\",this.mouseup)},this.mousemove=t=>{this.moveMouse(t,o.mousePos(this.element,t))},this.mouseup=t=>{this.mouseRotate.dragEnd(t),this.mousePitch&&this.mousePitch.dragEnd(t),this.offTemp()},this.touchstart=t=>{1!==t.targetTouches.length?this.reset():(this._startPos=this._lastPos=o.touchPos(this.element,t.targetTouches)[0],this.startTouch(t,this._startPos),o.addEventListener(window,\"touchmove\",this.touchmove,{passive:!1}),o.addEventListener(window,\"touchend\",this.touchend))},this.touchmove=t=>{1!==t.targetTouches.length?this.reset():(this._lastPos=o.touchPos(this.element,t.targetTouches)[0],this.moveTouch(t,this._lastPos))},this.touchend=t=>{0===t.targetTouches.length&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos)<this._clickTolerance&&this.element.click(),delete this._startPos,delete this._lastPos,this.offTemp()},this.reset=()=>{this.mouseRotate.reset(),this.mousePitch&&this.mousePitch.reset(),this.touchRotate.reset(),this.touchPitch&&this.touchPitch.reset(),delete this._startPos,delete this._lastPos,this.offTemp()},this._clickTolerance=10;const i=t.dragRotate._mouseRotate.getClickTolerance(),a=t.dragRotate._mousePitch.getClickTolerance();this.element=r,this.mouseRotate=ei({clickTolerance:i,enable:!0}),this.touchRotate=(({enable:t,clickTolerance:e,bearingDegreesPerPixelMoved:r=.8})=>{const n=new Qn;return new $n({clickTolerance:e,move:(t,e)=>({bearingDelta:(e.x-t.x)*r}),moveStateManager:n,enable:t,assignEvents:Vi})})({clickTolerance:i,enable:!0}),this.map=t,n&&(this.mousePitch=ri({clickTolerance:a,enable:!0}),this.touchPitch=(({enable:t,clickTolerance:e,pitchDegreesPerPixelMoved:r=-.5})=>{const n=new Qn;return new $n({clickTolerance:e,move:(t,e)=>({pitchDelta:(e.y-t.y)*r}),moveStateManager:n,enable:t,assignEvents:Vi})})({clickTolerance:a,enable:!0})),o.addEventListener(r,\"mousedown\",this.mousedown),o.addEventListener(r,\"touchstart\",this.touchstart,{passive:!1}),o.addEventListener(r,\"touchcancel\",this.reset)}startMouse(t,e){this.mouseRotate.dragStart(t,e),this.mousePitch&&this.mousePitch.dragStart(t,e),o.disableDrag()}startTouch(t,e){this.touchRotate.dragStart(t,e),this.touchPitch&&this.touchPitch.dragStart(t,e),o.disableDrag()}moveMouse(t,e){const r=this.map,{bearingDelta:n}=this.mouseRotate.dragMove(t,e)||{};if(n&&r.setBearing(r.getBearing()+n),this.mousePitch){const{pitchDelta:n}=this.mousePitch.dragMove(t,e)||{};n&&r.setPitch(r.getPitch()+n)}}moveTouch(t,e){const r=this.map,{bearingDelta:n}=this.touchRotate.dragMove(t,e)||{};if(n&&r.setBearing(r.getBearing()+n),this.touchPitch){const{pitchDelta:n}=this.touchPitch.dragMove(t,e)||{};n&&r.setPitch(r.getPitch()+n)}}off(){const t=this.element;o.removeEventListener(t,\"mousedown\",this.mousedown),o.removeEventListener(t,\"touchstart\",this.touchstart,{passive:!1}),o.removeEventListener(window,\"touchmove\",this.touchmove,{passive:!1}),o.removeEventListener(window,\"touchend\",this.touchend),o.removeEventListener(t,\"touchcancel\",this.reset),this.offTemp()}offTemp(){o.enableDrag(),o.removeEventListener(window,\"mousemove\",this.mousemove),o.removeEventListener(window,\"mouseup\",this.mouseup),o.removeEventListener(window,\"touchmove\",this.touchmove,{passive:!1}),o.removeEventListener(window,\"touchend\",this.touchend)}}let Gi;function Zi(t,r,n){const i=new e.N(t.lng,t.lat);if(t=new e.N(t.lng,t.lat),r){const i=new e.N(t.lng-360,t.lat),a=new e.N(t.lng+360,t.lat),o=n.locationPoint(t).distSqr(r);n.locationPoint(i).distSqr(r)<o?t=i:n.locationPoint(a).distSqr(r)<o&&(t=a)}for(;Math.abs(t.lng-n.center.lng)>180;){const e=n.locationPoint(t);if(e.x>=0&&e.y>=0&&e.x<=n.width&&e.y<=n.height)break;t.lng>n.center.lng?t.lng-=360:t.lng+=360}return t.lng!==i.lng&&n.locationPoint(t).y>n.height/2-n.getHorizon()?t:i}const Wi={center:\"translate(-50%,-50%)\",top:\"translate(-50%,0)\",\"top-left\":\"translate(0,0)\",\"top-right\":\"translate(-100%,0)\",bottom:\"translate(-50%,-100%)\",\"bottom-left\":\"translate(0,-100%)\",\"bottom-right\":\"translate(-100%,-100%)\",left:\"translate(0,-50%)\",right:\"translate(-100%,-50%)\"};function Yi(t,e,r){const n=t.classList;for(const t in Wi)n.remove(`maplibregl-${r}-anchor-${t}`);n.add(`maplibregl-${r}-anchor-${e}`)}class Xi extends e.E{constructor(t){if(super(),this._onKeyPress=t=>{const e=t.code,r=t.charCode||t.keyCode;\"Space\"!==e&&\"Enter\"!==e&&32!==r&&13!==r||this.togglePopup()},this._onMapClick=t=>{const e=t.originalEvent.target,r=this._element;this._popup&&(e===r||r.contains(e))&&this.togglePopup()},this._update=t=>{var e;if(!this._map)return;const r=this._map.loaded()&&!this._map.isMoving();(\"terrain\"===(null==t?void 0:t.type)||\"render\"===(null==t?void 0:t.type)&&!r)&&this._map.once(\"render\",this._update),this._map.transform.renderWorldCopies?this._lngLat=Zi(this._lngLat,this._flatPos,this._map.transform):this._lngLat=null===(e=this._lngLat)||void 0===e?void 0:e.wrap(),this._flatPos=this._pos=this._map.project(this._lngLat)._add(this._offset),this._map.terrain&&(this._flatPos=this._map.transform.locationPoint(this._lngLat)._add(this._offset));let n=\"\";\"viewport\"===this._rotationAlignment||\"auto\"===this._rotationAlignment?n=`rotateZ(${this._rotation}deg)`:\"map\"===this._rotationAlignment&&(n=`rotateZ(${this._rotation-this._map.getBearing()}deg)`);let i=\"\";\"viewport\"===this._pitchAlignment||\"auto\"===this._pitchAlignment?i=\"rotateX(0deg)\":\"map\"===this._pitchAlignment&&(i=`rotateX(${this._map.getPitch()}deg)`),this._subpixelPositioning||t&&\"moveend\"!==t.type||(this._pos=this._pos.round()),o.setTransform(this._element,`${Wi[this._anchor]} translate(${this._pos.x}px, ${this._pos.y}px) ${i} ${n}`),a.frameAsync(new AbortController).then((()=>{this._updateOpacity(t&&\"moveend\"===t.type)})).catch((()=>{}))},this._onMove=t=>{if(!this._isDragging){const e=this._clickTolerance||this._map._clickTolerance;this._isDragging=t.point.dist(this._pointerdownPos)>=e}this._isDragging&&(this._pos=t.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents=\"none\",\"pending\"===this._state&&(this._state=\"active\",this.fire(new e.k(\"dragstart\"))),this.fire(new e.k(\"drag\")))},this._onUp=()=>{this._element.style.pointerEvents=\"auto\",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1,this._map.off(\"mousemove\",this._onMove),this._map.off(\"touchmove\",this._onMove),\"active\"===this._state&&this.fire(new e.k(\"dragend\")),this._state=\"inactive\"},this._addDragHandler=t=>{this._element.contains(t.originalEvent.target)&&(t.preventDefault(),this._positionDelta=t.point.sub(this._pos).add(this._offset),this._pointerdownPos=t.point,this._state=\"pending\",this._map.on(\"mousemove\",this._onMove),this._map.on(\"touchmove\",this._onMove),this._map.once(\"mouseup\",this._onUp),this._map.once(\"touchend\",this._onUp))},this._anchor=t&&t.anchor||\"center\",this._color=t&&t.color||\"#3FB1CE\",this._scale=t&&t.scale||1,this._draggable=t&&t.draggable||!1,this._clickTolerance=t&&t.clickTolerance||0,this._subpixelPositioning=t&&t.subpixelPositioning||!1,this._isDragging=!1,this._state=\"inactive\",this._rotation=t&&t.rotation||0,this._rotationAlignment=t&&t.rotationAlignment||\"auto\",this._pitchAlignment=t&&t.pitchAlignment&&\"auto\"!==t.pitchAlignment?t.pitchAlignment:this._rotationAlignment,this.setOpacity(),this.setOpacity(null==t?void 0:t.opacity,null==t?void 0:t.opacityWhenCovered),t&&t.element)this._element=t.element,this._offset=e.P.convert(t&&t.offset||[0,0]);else{this._defaultMarker=!0,this._element=o.create(\"div\");const r=o.createNS(\"http://www.w3.org/2000/svg\",\"svg\"),n=41,i=27;r.setAttributeNS(null,\"display\",\"block\"),r.setAttributeNS(null,\"height\",`${n}px`),r.setAttributeNS(null,\"width\",`${i}px`),r.setAttributeNS(null,\"viewBox\",`0 0 ${i} ${n}`);const a=o.createNS(\"http://www.w3.org/2000/svg\",\"g\");a.setAttributeNS(null,\"stroke\",\"none\"),a.setAttributeNS(null,\"stroke-width\",\"1\"),a.setAttributeNS(null,\"fill\",\"none\"),a.setAttributeNS(null,\"fill-rule\",\"evenodd\");const s=o.createNS(\"http://www.w3.org/2000/svg\",\"g\");s.setAttributeNS(null,\"fill-rule\",\"nonzero\");const l=o.createNS(\"http://www.w3.org/2000/svg\",\"g\");l.setAttributeNS(null,\"transform\",\"translate(3.0, 29.0)\"),l.setAttributeNS(null,\"fill\",\"#000000\");const c=[{rx:\"10.5\",ry:\"5.25002273\"},{rx:\"10.5\",ry:\"5.25002273\"},{rx:\"9.5\",ry:\"4.77275007\"},{rx:\"8.5\",ry:\"4.29549936\"},{rx:\"7.5\",ry:\"3.81822308\"},{rx:\"6.5\",ry:\"3.34094679\"},{rx:\"5.5\",ry:\"2.86367051\"},{rx:\"4.5\",ry:\"2.38636864\"}];for(const t of c){const e=o.createNS(\"http://www.w3.org/2000/svg\",\"ellipse\");e.setAttributeNS(null,\"opacity\",\"0.04\"),e.setAttributeNS(null,\"cx\",\"10.5\"),e.setAttributeNS(null,\"cy\",\"5.80029008\"),e.setAttributeNS(null,\"rx\",t.rx),e.setAttributeNS(null,\"ry\",t.ry),l.appendChild(e)}const u=o.createNS(\"http://www.w3.org/2000/svg\",\"g\");u.setAttributeNS(null,\"fill\",this._color);const h=o.createNS(\"http://www.w3.org/2000/svg\",\"path\");h.setAttributeNS(null,\"d\",\"M27,13.5 C27,19.074644 20.250001,27.000002 14.75,34.500002 C14.016665,35.500004 12.983335,35.500004 12.25,34.500002 C6.7499993,27.000002 0,19.222562 0,13.5 C0,6.0441559 6.0441559,0 13.5,0 C20.955844,0 27,6.0441559 27,13.5 Z\"),u.appendChild(h);const f=o.createNS(\"http://www.w3.org/2000/svg\",\"g\");f.setAttributeNS(null,\"opacity\",\"0.25\"),f.setAttributeNS(null,\"fill\",\"#000000\");const p=o.createNS(\"http://www.w3.org/2000/svg\",\"path\");p.setAttributeNS(null,\"d\",\"M13.5,0 C6.0441559,0 0,6.0441559 0,13.5 C0,19.222562 6.7499993,27 12.25,34.5 C13,35.522727 14.016664,35.500004 14.75,34.5 C20.250001,27 27,19.074644 27,13.5 C27,6.0441559 20.955844,0 13.5,0 Z M13.5,1 C20.415404,1 26,6.584596 26,13.5 C26,15.898657 24.495584,19.181431 22.220703,22.738281 C19.945823,26.295132 16.705119,30.142167 13.943359,33.908203 C13.743445,34.180814 13.612715,34.322738 13.5,34.441406 C13.387285,34.322738 13.256555,34.180814 13.056641,33.908203 C10.284481,30.127985 7.4148684,26.314159 5.015625,22.773438 C2.6163816,19.232715 1,15.953538 1,13.5 C1,6.584596 6.584596,1 13.5,1 Z\"),f.appendChild(p);const d=o.createNS(\"http://www.w3.org/2000/svg\",\"g\");d.setAttributeNS(null,\"transform\",\"translate(6.0, 7.0)\"),d.setAttributeNS(null,\"fill\",\"#FFFFFF\");const m=o.createNS(\"http://www.w3.org/2000/svg\",\"g\");m.setAttributeNS(null,\"transform\",\"translate(8.0, 8.0)\");const g=o.createNS(\"http://www.w3.org/2000/svg\",\"circle\");g.setAttributeNS(null,\"fill\",\"#000000\"),g.setAttributeNS(null,\"opacity\",\"0.25\"),g.setAttributeNS(null,\"cx\",\"5.5\"),g.setAttributeNS(null,\"cy\",\"5.5\"),g.setAttributeNS(null,\"r\",\"5.4999962\");const y=o.createNS(\"http://www.w3.org/2000/svg\",\"circle\");y.setAttributeNS(null,\"fill\",\"#FFFFFF\"),y.setAttributeNS(null,\"cx\",\"5.5\"),y.setAttributeNS(null,\"cy\",\"5.5\"),y.setAttributeNS(null,\"r\",\"5.4999962\"),m.appendChild(g),m.appendChild(y),s.appendChild(l),s.appendChild(u),s.appendChild(f),s.appendChild(d),s.appendChild(m),r.appendChild(s),r.setAttributeNS(null,\"height\",n*this._scale+\"px\"),r.setAttributeNS(null,\"width\",i*this._scale+\"px\"),this._element.appendChild(r),this._offset=e.P.convert(t&&t.offset||[0,-14])}if(this._element.classList.add(\"maplibregl-marker\"),this._element.addEventListener(\"dragstart\",(t=>{t.preventDefault()})),this._element.addEventListener(\"mousedown\",(t=>{t.preventDefault()})),Yi(this._element,this._anchor,\"marker\"),t&&t.className)for(const e of t.className.split(\" \"))this._element.classList.add(e);this._popup=null}addTo(t){return this.remove(),this._map=t,this._element.setAttribute(\"aria-label\",t._getUIString(\"Marker.Title\")),t.getCanvasContainer().appendChild(this._element),t.on(\"move\",this._update),t.on(\"moveend\",this._update),t.on(\"terrain\",this._update),this.setDraggable(this._draggable),this._update(),this._map.on(\"click\",this._onMapClick),this}remove(){return this._opacityTimeout&&(clearTimeout(this._opacityTimeout),delete this._opacityTimeout),this._map&&(this._map.off(\"click\",this._onMapClick),this._map.off(\"move\",this._update),this._map.off(\"moveend\",this._update),this._map.off(\"terrain\",this._update),this._map.off(\"mousedown\",this._addDragHandler),this._map.off(\"touchstart\",this._addDragHandler),this._map.off(\"mouseup\",this._onUp),this._map.off(\"touchend\",this._onUp),this._map.off(\"mousemove\",this._onMove),this._map.off(\"touchmove\",this._onMove),delete this._map),o.remove(this._element),this._popup&&this._popup.remove(),this}getLngLat(){return this._lngLat}setLngLat(t){return this._lngLat=e.N.convert(t),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this}getElement(){return this._element}setPopup(t){if(this._popup&&(this._popup.remove(),this._popup=null,this._element.removeEventListener(\"keypress\",this._onKeyPress),this._originalTabIndex||this._element.removeAttribute(\"tabindex\")),t){if(!(\"offset\"in t.options)){const e=38.1,r=13.5,n=Math.abs(r)/Math.SQRT2;t.options.offset=this._defaultMarker?{top:[0,0],\"top-left\":[0,0],\"top-right\":[0,0],bottom:[0,-e],\"bottom-left\":[n,-1*(e-r+n)],\"bottom-right\":[-n,-1*(e-r+n)],left:[r,-1*(e-r)],right:[-r,-1*(e-r)]}:this._offset}this._popup=t,this._originalTabIndex=this._element.getAttribute(\"tabindex\"),this._originalTabIndex||this._element.setAttribute(\"tabindex\",\"0\"),this._element.addEventListener(\"keypress\",this._onKeyPress)}return this}setSubpixelPositioning(t){return this._subpixelPositioning=t,this}getPopup(){return this._popup}togglePopup(){const t=this._popup;return this._element.style.opacity===this._opacityWhenCovered?this:t?(t.isOpen()?t.remove():(t.setLngLat(this._lngLat),t.addTo(this._map)),this):this}_updateOpacity(t=!1){var r,n;if(!(null===(r=this._map)||void 0===r?void 0:r.terrain))return void(this._element.style.opacity!==this._opacity&&(this._element.style.opacity=this._opacity));if(t)this._opacityTimeout=null;else{if(this._opacityTimeout)return;this._opacityTimeout=setTimeout((()=>{this._opacityTimeout=null}),100)}const i=this._map,a=i.terrain.depthAtPoint(this._pos),o=i.terrain.getElevationForLngLatZoom(this._lngLat,i.transform.tileZoom);if(i.transform.lngLatToCameraDepth(this._lngLat,o)-a<.006)return void(this._element.style.opacity=this._opacity);const s=-this._offset.y/i.transform._pixelPerMeter,l=Math.sin(i.getPitch()*Math.PI/180)*s,c=i.terrain.depthAtPoint(new e.P(this._pos.x,this._pos.y-this._offset.y)),u=i.transform.lngLatToCameraDepth(this._lngLat,o+l)-c>.006;(null===(n=this._popup)||void 0===n?void 0:n.isOpen())&&u&&this._popup.remove(),this._element.style.opacity=u?this._opacityWhenCovered:this._opacity}getOffset(){return this._offset}setOffset(t){return this._offset=e.P.convert(t),this._update(),this}addClassName(t){this._element.classList.add(t)}removeClassName(t){this._element.classList.remove(t)}toggleClassName(t){return this._element.classList.toggle(t)}setDraggable(t){return this._draggable=!!t,this._map&&(t?(this._map.on(\"mousedown\",this._addDragHandler),this._map.on(\"touchstart\",this._addDragHandler)):(this._map.off(\"mousedown\",this._addDragHandler),this._map.off(\"touchstart\",this._addDragHandler))),this}isDraggable(){return this._draggable}setRotation(t){return this._rotation=t||0,this._update(),this}getRotation(){return this._rotation}setRotationAlignment(t){return this._rotationAlignment=t||\"auto\",this._update(),this}getRotationAlignment(){return this._rotationAlignment}setPitchAlignment(t){return this._pitchAlignment=t&&\"auto\"!==t?t:this._rotationAlignment,this._update(),this}getPitchAlignment(){return this._pitchAlignment}setOpacity(t,e){return void 0===t&&void 0===e&&(this._opacity=\"1\",this._opacityWhenCovered=\"0.2\"),void 0!==t&&(this._opacity=t),void 0!==e&&(this._opacityWhenCovered=e),this._map&&this._updateOpacity(!0),this}}const $i={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0};let Ji=0,Ki=!1;class Qi extends e.E{constructor(t){super(),this._onSuccess=t=>{if(this._map){if(this._isOutOfMapMaxBounds(t))return this._setErrorState(),this.fire(new e.k(\"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(\"maplibregl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.remove(\"maplibregl-ctrl-geolocate-active-error\"),this._geolocateButton.classList.add(\"maplibregl-ctrl-geolocate-active\");break;case\"BACKGROUND\":case\"BACKGROUND_ERROR\":this._watchState=\"BACKGROUND\",this._geolocateButton.classList.remove(\"maplibregl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.remove(\"maplibregl-ctrl-geolocate-background-error\"),this._geolocateButton.classList.add(\"maplibregl-ctrl-geolocate-background\");break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}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(\"maplibregl-user-location-dot-stale\"),this.fire(new e.k(\"geolocate\",t)),this._finish()}},this._updateCamera=t=>{const r=new e.N(t.coords.longitude,t.coords.latitude),n=t.coords.accuracy,i=this._map.getBearing(),a=e.e({bearing:i},this.options.fitBoundsOptions),o=X.fromLngLat(r,n);this._map.fitBounds(o,a,{geolocateSource:!0})},this._updateMarker=t=>{if(t){const r=new e.N(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()},this._onZoom=()=>{this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},this._onError=t=>{if(this._map){if(this.options.trackUserLocation)if(1===t.code){this._watchState=\"OFF\",this._geolocateButton.classList.remove(\"maplibregl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.remove(\"maplibregl-ctrl-geolocate-active\"),this._geolocateButton.classList.remove(\"maplibregl-ctrl-geolocate-active-error\"),this._geolocateButton.classList.remove(\"maplibregl-ctrl-geolocate-background\"),this._geolocateButton.classList.remove(\"maplibregl-ctrl-geolocate-background-error\"),this._geolocateButton.disabled=!0;const t=this._map._getUIString(\"GeolocateControl.LocationNotAvailable\");this._geolocateButton.title=t,this._geolocateButton.setAttribute(\"aria-label\",t),void 0!==this._geolocationWatchID&&this._clearWatch()}else{if(3===t.code&&Ki)return;this._setErrorState()}\"OFF\"!==this._watchState&&this.options.showUserLocation&&this._dotElement.classList.add(\"maplibregl-user-location-dot-stale\"),this.fire(new e.k(\"error\",t)),this._finish()}},this._finish=()=>{this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},this._setupUI=()=>{this._map&&(this._container.addEventListener(\"contextmenu\",(t=>t.preventDefault())),this._geolocateButton=o.create(\"button\",\"maplibregl-ctrl-geolocate\",this._container),o.create(\"span\",\"maplibregl-ctrl-icon\",this._geolocateButton).setAttribute(\"aria-hidden\",\"true\"),this._geolocateButton.type=\"button\",this._geolocateButton.disabled=!0)},this._finishSetupUI=t=>{if(this._map){if(!1===t){e.w(\"Geolocation support is not available so the GeolocateControl will be disabled.\");const t=this._map._getUIString(\"GeolocateControl.LocationNotAvailable\");this._geolocateButton.disabled=!0,this._geolocateButton.title=t,this._geolocateButton.setAttribute(\"aria-label\",t)}else{const t=this._map._getUIString(\"GeolocateControl.FindMyLocation\");this._geolocateButton.disabled=!1,this._geolocateButton.title=t,this._geolocateButton.setAttribute(\"aria-label\",t)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute(\"aria-pressed\",\"false\"),this._watchState=\"OFF\"),this.options.showUserLocation&&(this._dotElement=o.create(\"div\",\"maplibregl-user-location-dot\"),this._userLocationDotMarker=new Xi({element:this._dotElement}),this._circleElement=o.create(\"div\",\"maplibregl-user-location-accuracy-circle\"),this._accuracyCircleMarker=new Xi({element:this._circleElement,pitchAlignment:\"map\"}),this.options.trackUserLocation&&(this._watchState=\"OFF\"),this._map.on(\"zoom\",this._onZoom)),this._geolocateButton.addEventListener(\"click\",(()=>this.trigger())),this._setup=!0,this.options.trackUserLocation&&this._map.on(\"movestart\",(t=>{const r=t.originalEvent&&\"resize\"===t.originalEvent.type;t.geolocateSource||\"ACTIVE_LOCK\"!==this._watchState||r||(this._watchState=\"BACKGROUND\",this._geolocateButton.classList.add(\"maplibregl-ctrl-geolocate-background\"),this._geolocateButton.classList.remove(\"maplibregl-ctrl-geolocate-active\"),this.fire(new e.k(\"trackuserlocationend\")),this.fire(new e.k(\"userlocationlostfocus\")))}))}},this.options=e.e({},$i,t)}onAdd(t){return this._map=t,this._container=o.create(\"div\",\"maplibregl-ctrl maplibregl-ctrl-group\"),this._setupUI(),function(){return e._(this,arguments,void 0,(function*(t=!1){if(void 0!==Gi&&!t)return Gi;if(void 0===window.navigator.permissions)return Gi=!!window.navigator.geolocation,Gi;try{const t=yield window.navigator.permissions.query({name:\"geolocation\"});Gi=\"denied\"!==t.state}catch(t){Gi=!!window.navigator.geolocation}return Gi}))}().then((t=>this._finishSetupUI(t))),this._container}onRemove(){void 0!==this._geolocationWatchID&&(window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),o.remove(this._container),this._map.off(\"zoom\",this._onZoom),this._map=void 0,Ji=0,Ki=!1}_isOutOfMapMaxBounds(t){const e=this._map.getMaxBounds(),r=t.coords;return e&&(r.longitude<e.getWest()||r.longitude>e.getEast()||r.latitude<e.getSouth()||r.latitude>e.getNorth())}_setErrorState(){switch(this._watchState){case\"WAITING_ACTIVE\":this._watchState=\"ACTIVE_ERROR\",this._geolocateButton.classList.remove(\"maplibregl-ctrl-geolocate-active\"),this._geolocateButton.classList.add(\"maplibregl-ctrl-geolocate-active-error\");break;case\"ACTIVE_LOCK\":this._watchState=\"ACTIVE_ERROR\",this._geolocateButton.classList.remove(\"maplibregl-ctrl-geolocate-active\"),this._geolocateButton.classList.add(\"maplibregl-ctrl-geolocate-active-error\"),this._geolocateButton.classList.add(\"maplibregl-ctrl-geolocate-waiting\");break;case\"BACKGROUND\":this._watchState=\"BACKGROUND_ERROR\",this._geolocateButton.classList.remove(\"maplibregl-ctrl-geolocate-background\"),this._geolocateButton.classList.add(\"maplibregl-ctrl-geolocate-background-error\"),this._geolocateButton.classList.add(\"maplibregl-ctrl-geolocate-waiting\");break;case\"ACTIVE_ERROR\":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}}_updateCircleRadius(){const t=this._map.getBounds(),e=t.getSouthEast(),r=t.getNorthEast(),n=e.distanceTo(r),i=this._map._container.clientHeight,a=Math.ceil(this._accuracy/(n/i)*2);this._circleElement.style.width=`${a}px`,this._circleElement.style.height=`${a}px`}trigger(){if(!this._setup)return e.w(\"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.k(\"trackuserlocationstart\"));break;case\"WAITING_ACTIVE\":case\"ACTIVE_LOCK\":case\"ACTIVE_ERROR\":case\"BACKGROUND_ERROR\":Ji--,Ki=!1,this._watchState=\"OFF\",this._geolocateButton.classList.remove(\"maplibregl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.remove(\"maplibregl-ctrl-geolocate-active\"),this._geolocateButton.classList.remove(\"maplibregl-ctrl-geolocate-active-error\"),this._geolocateButton.classList.remove(\"maplibregl-ctrl-geolocate-background\"),this._geolocateButton.classList.remove(\"maplibregl-ctrl-geolocate-background-error\"),this.fire(new e.k(\"trackuserlocationend\"));break;case\"BACKGROUND\":this._watchState=\"ACTIVE_LOCK\",this._geolocateButton.classList.remove(\"maplibregl-ctrl-geolocate-background\"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new e.k(\"trackuserlocationstart\")),this.fire(new e.k(\"userlocationfocus\"));break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}switch(this._watchState){case\"WAITING_ACTIVE\":this._geolocateButton.classList.add(\"maplibregl-ctrl-geolocate-waiting\"),this._geolocateButton.classList.add(\"maplibregl-ctrl-geolocate-active\");break;case\"ACTIVE_LOCK\":this._geolocateButton.classList.add(\"maplibregl-ctrl-geolocate-active\");break;case\"OFF\":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}if(\"OFF\"===this._watchState&&void 0!==this._geolocationWatchID)this._clearWatch();else if(void 0===this._geolocationWatchID){let t;this._geolocateButton.classList.add(\"maplibregl-ctrl-geolocate-waiting\"),this._geolocateButton.setAttribute(\"aria-pressed\",\"true\"),Ji++,Ji>1?(t={maximumAge:6e5,timeout:0},Ki=!0):(t=this.options.positionOptions,Ki=!1),this._geolocationWatchID=window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,t)}}else window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0}_clearWatch(){window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove(\"maplibregl-ctrl-geolocate-waiting\"),this._geolocateButton.setAttribute(\"aria-pressed\",\"false\"),this.options.showUserLocation&&this._updateMarker(null)}}const ta={maxWidth:100,unit:\"metric\"};function ea(t,e,r){const n=r&&r.maxWidth||100,i=t._container.clientHeight/2,a=t.unproject([0,i]),o=t.unproject([n,i]),s=a.distanceTo(o);if(r&&\"imperial\"===r.unit){const r=3.2808*s;r>5280?ra(e,n,r/5280,t._getUIString(\"ScaleControl.Miles\")):ra(e,n,r,t._getUIString(\"ScaleControl.Feet\"))}else r&&\"nautical\"===r.unit?ra(e,n,s/1852,t._getUIString(\"ScaleControl.NauticalMiles\")):s>=1e3?ra(e,n,s/1e3,t._getUIString(\"ScaleControl.Kilometers\")):ra(e,n,s,t._getUIString(\"ScaleControl.Meters\"))}function ra(t,e,r,n){const i=function(t){const e=Math.pow(10,`${Math.floor(t)}`.length-1);let r=t/e;return r=r>=10?10:r>=5?5:r>=3?3:r>=2?2:r>=1?1:function(t){const e=Math.pow(10,Math.ceil(-Math.log(t)/Math.LN10));return Math.round(t*e)/e}(r),e*r}(r),a=i/r;t.style.width=e*a+\"px\",t.innerHTML=`${i}&nbsp;${n}`}class na extends e.E{constructor(t={}){super(),this._onFullscreenChange=()=>{var t;let e=window.document.fullscreenElement||window.document.mozFullScreenElement||window.document.webkitFullscreenElement||window.document.msFullscreenElement;for(;null===(t=null==e?void 0:e.shadowRoot)||void 0===t?void 0:t.fullscreenElement;)e=e.shadowRoot.fullscreenElement;e===this._container!==this._fullscreen&&this._handleFullscreenChange()},this._onClickFullscreen=()=>{this._isFullscreen()?this._exitFullscreen():this._requestFullscreen()},this._fullscreen=!1,t&&t.container&&(t.container instanceof HTMLElement?this._container=t.container:e.w(\"Full screen control 'container' must be a DOM element.\")),\"onfullscreenchange\"in document?this._fullscreenchange=\"fullscreenchange\":\"onmozfullscreenchange\"in document?this._fullscreenchange=\"mozfullscreenchange\":\"onwebkitfullscreenchange\"in document?this._fullscreenchange=\"webkitfullscreenchange\":\"onmsfullscreenchange\"in document&&(this._fullscreenchange=\"MSFullscreenChange\")}onAdd(t){return this._map=t,this._container||(this._container=this._map.getContainer()),this._controlContainer=o.create(\"div\",\"maplibregl-ctrl maplibregl-ctrl-group\"),this._setupUI(),this._controlContainer}onRemove(){o.remove(this._controlContainer),this._map=null,window.document.removeEventListener(this._fullscreenchange,this._onFullscreenChange)}_setupUI(){const t=this._fullscreenButton=o.create(\"button\",\"maplibregl-ctrl-fullscreen\",this._controlContainer);o.create(\"span\",\"maplibregl-ctrl-icon\",t).setAttribute(\"aria-hidden\",\"true\"),t.type=\"button\",this._updateTitle(),this._fullscreenButton.addEventListener(\"click\",this._onClickFullscreen),window.document.addEventListener(this._fullscreenchange,this._onFullscreenChange)}_updateTitle(){const t=this._getTitle();this._fullscreenButton.setAttribute(\"aria-label\",t),this._fullscreenButton.title=t}_getTitle(){return this._map._getUIString(this._isFullscreen()?\"FullscreenControl.Exit\":\"FullscreenControl.Enter\")}_isFullscreen(){return this._fullscreen}_handleFullscreenChange(){this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle(\"maplibregl-ctrl-shrink\"),this._fullscreenButton.classList.toggle(\"maplibregl-ctrl-fullscreen\"),this._updateTitle(),this._fullscreen?(this.fire(new e.k(\"fullscreenstart\")),this._prevCooperativeGesturesEnabled=this._map.cooperativeGestures.isEnabled(),this._map.cooperativeGestures.disable()):(this.fire(new e.k(\"fullscreenend\")),this._prevCooperativeGesturesEnabled&&this._map.cooperativeGestures.enable())}_exitFullscreen(){window.document.exitFullscreen?window.document.exitFullscreen():window.document.mozCancelFullScreen?window.document.mozCancelFullScreen():window.document.msExitFullscreen?window.document.msExitFullscreen():window.document.webkitCancelFullScreen?window.document.webkitCancelFullScreen():this._togglePseudoFullScreen()}_requestFullscreen(){this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen?this._container.webkitRequestFullscreen():this._togglePseudoFullScreen()}_togglePseudoFullScreen(){this._container.classList.toggle(\"maplibregl-pseudo-fullscreen\"),this._handleFullscreenChange(),this._map.resize()}}const ia={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:\"\",maxWidth:\"240px\",subpixelPositioning:!1},aa=[\"a[href]\",\"[tabindex]:not([tabindex='-1'])\",\"[contenteditable]:not([contenteditable='false'])\",\"button:not([disabled])\",\"input:not([disabled])\",\"select:not([disabled])\",\"textarea:not([disabled])\"].join(\", \");class oa extends e.E{constructor(t){super(),this.remove=()=>(this._content&&o.remove(this._content),this._container&&(o.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),this._map._canvasContainer.classList.remove(\"maplibregl-track-pointer\"),delete this._map,this.fire(new e.k(\"close\"))),this),this._onMouseUp=t=>{this._update(t.point)},this._onMouseMove=t=>{this._update(t.point)},this._onDrag=t=>{this._update(t.point)},this._update=t=>{var e;const r=this._lngLat||this._trackPointer;if(!this._map||!r||!this._content)return;if(!this._container){if(this._container=o.create(\"div\",\"maplibregl-popup\",this._map.getContainer()),this._tip=o.create(\"div\",\"maplibregl-popup-tip\",this._container),this._container.appendChild(this._content),this.options.className)for(const t of this.options.className.split(\" \"))this._container.classList.add(t);this._closeButton&&this._closeButton.setAttribute(\"aria-label\",this._map._getUIString(\"Popup.Close\")),this._trackPointer&&this._container.classList.add(\"maplibregl-popup-track-pointer\")}if(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=Zi(this._lngLat,this._flatPos,this._map.transform):this._lngLat=null===(e=this._lngLat)||void 0===e?void 0:e.wrap(),this._trackPointer&&!t)return;const n=this._flatPos=this._pos=this._trackPointer&&t?t:this._map.project(this._lngLat);this._map.terrain&&(this._flatPos=this._trackPointer&&t?t:this._map.transform.locationPoint(this._lngLat));let i=this.options.anchor;const a=sa(this.options.offset);if(!i){const t=this._container.offsetWidth,e=this._container.offsetHeight;let r;r=n.y+a.bottom.y<e?[\"top\"]:n.y>this._map.transform.height-e?[\"bottom\"]:[],n.x<t/2?r.push(\"left\"):n.x>this._map.transform.width-t/2&&r.push(\"right\"),i=0===r.length?\"bottom\":r.join(\"-\")}let s=n.add(a[i]);this.options.subpixelPositioning||(s=s.round()),o.setTransform(this._container,`${Wi[i]} translate(${s.x}px,${s.y}px)`),Yi(this._container,i,\"popup\")},this._onClose=()=>{this.remove()},this.options=e.e(Object.create(ia),t)}addTo(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._focusFirstElement(),this._trackPointer?(this._map.on(\"mousemove\",this._onMouseMove),this._map.on(\"mouseup\",this._onMouseUp),this._container&&this._container.classList.add(\"maplibregl-popup-track-pointer\"),this._map._canvasContainer.classList.add(\"maplibregl-track-pointer\")):this._map.on(\"move\",this._update),this.fire(new e.k(\"open\")),this}isOpen(){return!!this._map}getLngLat(){return this._lngLat}setLngLat(t){return this._lngLat=e.N.convert(t),this._pos=null,this._flatPos=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(\"maplibregl-popup-track-pointer\"),this._map._canvasContainer.classList.remove(\"maplibregl-track-pointer\")),this}trackPointer(){return this._trackPointer=!0,this._pos=null,this._flatPos=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(\"maplibregl-popup-track-pointer\"),this._map._canvasContainer.classList.add(\"maplibregl-track-pointer\")),this}getElement(){return this._container}setText(t){return this.setDOMContent(document.createTextNode(t))}setHTML(t){const e=document.createDocumentFragment(),r=document.createElement(\"body\");let n;for(r.innerHTML=t;n=r.firstChild,n;)e.appendChild(n);return this.setDOMContent(e)}getMaxWidth(){var t;return null===(t=this._container)||void 0===t?void 0:t.style.maxWidth}setMaxWidth(t){return this.options.maxWidth=t,this._update(),this}setDOMContent(t){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=o.create(\"div\",\"maplibregl-popup-content\",this._container);return this._content.appendChild(t),this._createCloseButton(),this._update(),this._focusFirstElement(),this}addClassName(t){return this._container&&this._container.classList.add(t),this}removeClassName(t){return this._container&&this._container.classList.remove(t),this}setOffset(t){return this.options.offset=t,this._update(),this}toggleClassName(t){if(this._container)return this._container.classList.toggle(t)}setSubpixelPositioning(t){this.options.subpixelPositioning=t}_createCloseButton(){this.options.closeButton&&(this._closeButton=o.create(\"button\",\"maplibregl-popup-close-button\",this._content),this._closeButton.type=\"button\",this._closeButton.innerHTML=\"&#215;\",this._closeButton.addEventListener(\"click\",this._onClose))}_focusFirstElement(){if(!this.options.focusAfterOpen||!this._container)return;const t=this._container.querySelector(aa);t&&t.focus()}}function sa(t){if(t){if(\"number\"==typeof t){const r=Math.round(Math.abs(t)/Math.SQRT2);return{center:new e.P(0,0),top:new e.P(0,t),\"top-left\":new e.P(r,r),\"top-right\":new e.P(-r,r),bottom:new e.P(0,-t),\"bottom-left\":new e.P(r,-r),\"bottom-right\":new e.P(-r,-r),left:new e.P(t,0),right:new e.P(-t,0)}}if(t instanceof e.P||Array.isArray(t)){const r=e.P.convert(t);return{center:r,top:r,\"top-left\":r,\"top-right\":r,bottom:r,\"bottom-left\":r,\"bottom-right\":r,left:r,right:r}}return{center:e.P.convert(t.center||[0,0]),top:e.P.convert(t.top||[0,0]),\"top-left\":e.P.convert(t[\"top-left\"]||[0,0]),\"top-right\":e.P.convert(t[\"top-right\"]||[0,0]),bottom:e.P.convert(t.bottom||[0,0]),\"bottom-left\":e.P.convert(t[\"bottom-left\"]||[0,0]),\"bottom-right\":e.P.convert(t[\"bottom-right\"]||[0,0]),left:e.P.convert(t.left||[0,0]),right:e.P.convert(t.right||[0,0])}}return sa(new e.P(0,0))}const la=r;t.AJAXError=e.bg,t.Evented=e.E,t.LngLat=e.N,t.MercatorCoordinate=e.Z,t.Point=e.P,t.addProtocol=e.bh,t.config=e.a,t.removeProtocol=e.bi,t.AttributionControl=Li,t.BoxZoomHandler=Gn,t.CanvasSource=it,t.CooperativeGesturesHandler=Ti,t.DoubleClickZoomHandler=yi,t.DragPanHandler=_i,t.DragRotateHandler=bi,t.EdgeInsets=Mn,t.FullscreenControl=na,t.GeoJSONSource=tt,t.GeolocateControl=Qi,t.Hash=Ln,t.ImageSource=rt,t.KeyboardHandler=pi,t.LngLatBounds=X,t.LogoControl=Ii,t.Map=class extends Ei{constructor(t){e.be.mark(e.bf.create);const r=Object.assign(Object.assign({},Ui),t);if(null!=r.minZoom&&null!=r.maxZoom&&r.minZoom>r.maxZoom)throw new Error(\"maxZoom must be greater than or equal to minZoom\");if(null!=r.minPitch&&null!=r.maxPitch&&r.minPitch>r.maxPitch)throw new Error(\"maxPitch must be greater than or equal to minPitch\");if(null!=r.minPitch&&r.minPitch<0)throw new Error(\"minPitch must be greater than or equal to 0\");if(null!=r.maxPitch&&r.maxPitch>85)throw new Error(\"maxPitch must be less than or equal to 85\");if(super(new En(r.minZoom,r.maxZoom,r.minPitch,r.maxPitch,r.renderWorldCopies),{bearingSnap:r.bearingSnap}),this._idleTriggered=!1,this._crossFadingFactor=1,this._renderTaskQueue=new Pi,this._controls=[],this._mapId=e.a4(),this._contextLost=t=>{t.preventDefault(),this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this.fire(new e.k(\"webglcontextlost\",{originalEvent:t}))},this._contextRestored=t=>{this._setupPainter(),this.resize(),this._update(),this.fire(new e.k(\"webglcontextrestored\",{originalEvent:t}))},this._onMapScroll=t=>{if(t.target===this._container)return this._container.scrollTop=0,this._container.scrollLeft=0,!1},this._onWindowOnline=()=>{this._update()},this._interactive=r.interactive,this._maxTileCacheSize=r.maxTileCacheSize,this._maxTileCacheZoomLevels=r.maxTileCacheZoomLevels,this._failIfMajorPerformanceCaveat=!0===r.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=!0===r.preserveDrawingBuffer,this._antialias=!0===r.antialias,this._trackResize=!0===r.trackResize,this._bearingSnap=r.bearingSnap,this._refreshExpiredTiles=!0===r.refreshExpiredTiles,this._fadeDuration=r.fadeDuration,this._crossSourceCollisions=!0===r.crossSourceCollisions,this._collectResourceTiming=!0===r.collectResourceTiming,this._locale=Object.assign(Object.assign({},Ni),r.locale),this._clickTolerance=r.clickTolerance,this._overridePixelRatio=r.pixelRatio,this._maxCanvasSize=r.maxCanvasSize,this.transformCameraUpdate=r.transformCameraUpdate,this.cancelPendingTileRequestsWhileZooming=!0===r.cancelPendingTileRequestsWhileZooming,this._imageQueueHandle=p.addThrottleControl((()=>this.isMoving())),this._requestManager=new d(r.transformRequest),\"string\"==typeof r.container){if(this._container=document.getElementById(r.container),!this._container)throw new Error(`Container '${r.container}' not found.`)}else{if(!(r.container instanceof HTMLElement))throw new Error(\"Invalid type: 'container' must be a String or HTMLElement.\");this._container=r.container}if(r.maxBounds&&this.setMaxBounds(r.maxBounds),this._setupContainer(),this._setupPainter(),this.on(\"move\",(()=>this._update(!1))).on(\"moveend\",(()=>this._update(!1))).on(\"zoom\",(()=>this._update(!0))).on(\"terrain\",(()=>{this.painter.terrainFacilitator.dirty=!0,this._update(!0)})).once(\"idle\",(()=>{this._idleTriggered=!0})),\"undefined\"!=typeof window){addEventListener(\"online\",this._onWindowOnline,!1);let t=!1;const e=Cn((t=>{this._trackResize&&!this._removed&&this.resize(t)._update()}),50);this._resizeObserver=new ResizeObserver((r=>{t?e(r):t=!0})),this._resizeObserver.observe(this._container)}this.handlers=new Si(this,r);const n=\"string\"==typeof r.hash&&r.hash||void 0;this._hash=r.hash&&new Ln(n).addTo(this),this._hash&&this._hash._onHashChange()||(this.jumpTo({center:r.center,zoom:r.zoom,bearing:r.bearing,pitch:r.pitch}),r.bounds&&(this.resize(),this.fitBounds(r.bounds,e.e({},r.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=r.localIdeographFontFamily,this._validateStyle=r.validateStyle,r.style&&this.setStyle(r.style,{localIdeographFontFamily:r.localIdeographFontFamily}),r.attributionControl&&this.addControl(new Li(\"boolean\"==typeof r.attributionControl?void 0:r.attributionControl)),r.maplibreLogo&&this.addControl(new Ii,r.logoPosition),this.on(\"style.load\",(()=>{this.transform.unmodified&&this.jumpTo(this.style.stylesheet)})),this.on(\"data\",(t=>{this._update(\"style\"===t.dataType),this.fire(new e.k(`${t.dataType}data`,t))})),this.on(\"dataloading\",(t=>{this.fire(new e.k(`${t.dataType}dataloading`,t))})),this.on(\"dataabort\",(t=>{this.fire(new e.k(\"sourcedataabort\",t))}))}_getMapId(){return this._mapId}addControl(t,r){if(void 0===r&&(r=t.getDefaultPosition?t.getDefaultPosition():\"top-right\"),!t||!t.onAdd)return this.fire(new e.j(new Error(\"Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.\")));const n=t.onAdd(this);this._controls.push(t);const i=this._controlPositions[r];return-1!==r.indexOf(\"bottom\")?i.insertBefore(n,i.firstChild):i.appendChild(n),this}removeControl(t){if(!t||!t.onRemove)return this.fire(new e.j(new Error(\"Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.\")));const r=this._controls.indexOf(t);return r>-1&&this._controls.splice(r,1),t.onRemove(this),this}hasControl(t){return this._controls.indexOf(t)>-1}calculateCameraOptionsFromTo(t,e,r,n){return null==n&&this.terrain&&(n=this.terrain.getElevationForLngLatZoom(r,this.transform.tileZoom)),super.calculateCameraOptionsFromTo(t,e,r,n)}resize(t){var r;const n=this._containerDimensions(),i=n[0],a=n[1],o=this._getClampedPixelRatio(i,a);if(this._resizeCanvas(i,a,o),this.painter.resize(i,a,o),this.painter.overLimit()){const t=this.painter.context.gl;this._maxCanvasSize=[t.drawingBufferWidth,t.drawingBufferHeight];const e=this._getClampedPixelRatio(i,a);this._resizeCanvas(i,a,e),this.painter.resize(i,a,e)}this.transform.resize(i,a),null===(r=this._requestedCameraState)||void 0===r||r.resize(i,a);const s=!this._moving;return s&&(this.stop(),this.fire(new e.k(\"movestart\",t)).fire(new e.k(\"move\",t))),this.fire(new e.k(\"resize\",t)),s&&this.fire(new e.k(\"moveend\",t)),this}_getClampedPixelRatio(t,e){const{0:r,1:n}=this._maxCanvasSize,i=this.getPixelRatio(),a=t*i,o=e*i,s=a>r?r/a:1,l=o>n?n/o:1;return Math.min(s,l)*i}getPixelRatio(){var t;return null!==(t=this._overridePixelRatio)&&void 0!==t?t:devicePixelRatio}setPixelRatio(t){this._overridePixelRatio=t,this.resize()}getBounds(){return this.transform.getBounds()}getMaxBounds(){return this.transform.getMaxBounds()}setMaxBounds(t){return this.transform.setMaxBounds(X.convert(t)),this._update()}setMinZoom(t){if((t=null==t?-2:t)>=-2&&t<=this.transform.maxZoom)return this.transform.minZoom=t,this._update(),this.getZoom()<t&&this.setZoom(t),this;throw new Error(\"minZoom must be between -2 and the current maxZoom, inclusive\")}getMinZoom(){return this.transform.minZoom}setMaxZoom(t){if((t=null==t?22:t)>=this.transform.minZoom)return this.transform.maxZoom=t,this._update(),this.getZoom()>t&&this.setZoom(t),this;throw new Error(\"maxZoom must be greater than the current minZoom\")}getMaxZoom(){return this.transform.maxZoom}setMinPitch(t){if((t=null==t?0:t)<0)throw new Error(\"minPitch must be greater than or equal to 0\");if(t>=0&&t<=this.transform.maxPitch)return this.transform.minPitch=t,this._update(),this.getPitch()<t&&this.setPitch(t),this;throw new Error(\"minPitch must be between 0 and the current maxPitch, inclusive\")}getMinPitch(){return this.transform.minPitch}setMaxPitch(t){if((t=null==t?60:t)>85)throw new Error(\"maxPitch must be less than or equal to 85\");if(t>=this.transform.minPitch)return this.transform.maxPitch=t,this._update(),this.getPitch()>t&&this.setPitch(t),this;throw new Error(\"maxPitch must be greater than the current minPitch\")}getMaxPitch(){return this.transform.maxPitch}getRenderWorldCopies(){return this.transform.renderWorldCopies}setRenderWorldCopies(t){return this.transform.renderWorldCopies=t,this._update()}project(t){return this.transform.locationPoint(e.N.convert(t),this.style&&this.terrain)}unproject(t){return this.transform.pointLocation(e.P.convert(t),this.terrain)}isMoving(){var t;return this._moving||(null===(t=this.handlers)||void 0===t?void 0:t.isMoving())}isZooming(){var t;return this._zooming||(null===(t=this.handlers)||void 0===t?void 0:t.isZooming())}isRotating(){var t;return this._rotating||(null===(t=this.handlers)||void 0===t?void 0:t.isRotating())}_createDelegatedListener(t,e,r){if(\"mouseenter\"===t||\"mouseover\"===t){let n=!1;const i=i=>{const a=this.getLayer(e)?this.queryRenderedFeatures(i.point,{layers:[e]}):[];a.length?n||(n=!0,r.call(this,new Nn(t,this,i.originalEvent,{features:a}))):n=!1};return{layer:e,listener:r,delegates:{mousemove:i,mouseout:()=>{n=!1}}}}if(\"mouseleave\"===t||\"mouseout\"===t){let n=!1;const i=i=>{(this.getLayer(e)?this.queryRenderedFeatures(i.point,{layers:[e]}):[]).length?n=!0:n&&(n=!1,r.call(this,new Nn(t,this,i.originalEvent)))},a=e=>{n&&(n=!1,r.call(this,new Nn(t,this,e.originalEvent)))};return{layer:e,listener:r,delegates:{mousemove:i,mouseout:a}}}{const n=t=>{const n=this.getLayer(e)?this.queryRenderedFeatures(t.point,{layers:[e]}):[];n.length&&(t.features=n,r.call(this,t),delete t.features)};return{layer:e,listener:r,delegates:{[t]:n}}}}on(t,e,r){if(void 0===r)return super.on(t,e);const n=this._createDelegatedListener(t,e,r);this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[t]=this._delegatedListeners[t]||[],this._delegatedListeners[t].push(n);for(const t in n.delegates)this.on(t,n.delegates[t]);return this}once(t,e,r){if(void 0===r)return super.once(t,e);const n=this._createDelegatedListener(t,e,r);for(const t in n.delegates)this.once(t,n.delegates[t]);return this}off(t,e,r){if(void 0===r)return super.off(t,e);return this._delegatedListeners&&this._delegatedListeners[t]&&(n=>{const i=n[t];for(let t=0;t<i.length;t++){const n=i[t];if(n.layer===e&&n.listener===r){for(const t in n.delegates)this.off(t,n.delegates[t]);return i.splice(t,1),this}}})(this._delegatedListeners),this}queryRenderedFeatures(t,r){if(!this.style)return[];let n;const i=t instanceof e.P||Array.isArray(t),a=i?t:[[0,0],[this.transform.width,this.transform.height]];if(r=r||(i?{}:t)||{},a instanceof e.P||\"number\"==typeof a[0])n=[e.P.convert(a)];else{const t=e.P.convert(a[0]),r=e.P.convert(a[1]);n=[t,new e.P(r.x,t.y),r,new e.P(t.x,r.y),t]}return this.style.queryRenderedFeatures(n,r,this.transform)}querySourceFeatures(t,e){return this.style.querySourceFeatures(t,e)}setStyle(t,r){return!1!==(r=e.e({},{localIdeographFontFamily:this._localIdeographFontFamily,validate:this._validateStyle},r)).diff&&r.localIdeographFontFamily===this._localIdeographFontFamily&&this.style&&t?(this._diffStyle(t,r),this):(this._localIdeographFontFamily=r.localIdeographFontFamily,this._updateStyle(t,r))}setTransformRequest(t){return this._requestManager.setTransformRequest(t),this}_getUIString(t){const e=this._locale[t];if(null==e)throw new Error(`Missing UI string '${t}'`);return e}_updateStyle(t,e){if(e.transformStyle&&this.style&&!this.style._loaded)return void this.style.once(\"style.load\",(()=>this._updateStyle(t,e)));const r=this.style&&e.transformStyle?this.style.serialize():void 0;return this.style&&(this.style.setEventedParent(null),this.style._remove(!t)),t?(this.style=new de(this,e||{}),this.style.setEventedParent(this,{style:this.style}),\"string\"==typeof t?this.style.loadURL(t,e,r):this.style.loadJSON(t,e,r),this):(delete this.style,this)}_lazyInitEmptyStyle(){this.style||(this.style=new de(this,{}),this.style.setEventedParent(this,{style:this.style}),this.style.loadEmpty())}_diffStyle(t,r){if(\"string\"==typeof t){const n=t,i=this._requestManager.transformRequest(n,\"Style\");e.h(i,new AbortController).then((t=>{this._updateDiff(t.data,r)})).catch((t=>{t&&this.fire(new e.j(t))}))}else\"object\"==typeof t&&this._updateDiff(t,r)}_updateDiff(t,r){try{this.style.setState(t,r)&&this._update(!0)}catch(n){e.w(`Unable to perform style diff: ${n.message||n.error||n}. Rebuilding the style from scratch.`),this._updateStyle(t,r)}}getStyle(){if(this.style)return this.style.serialize()}isStyleLoaded(){return this.style?this.style.loaded():e.w(\"There is no style added to the map.\")}addSource(t,e){return this._lazyInitEmptyStyle(),this.style.addSource(t,e),this._update(!0)}isSourceLoaded(t){const r=this.style&&this.style.sourceCaches[t];if(void 0!==r)return r.loaded();this.fire(new e.j(new Error(`There is no source with ID '${t}'`)))}setTerrain(t){if(this.style._checkLoaded(),this._terrainDataCallback&&this.style.off(\"data\",this._terrainDataCallback),t){const r=this.style.sourceCaches[t.source];if(!r)throw new Error(`cannot load terrain, because there exists no source with ID: ${t.source}`);null===this.terrain&&r.reload();for(const r in this.style._layers){const n=this.style._layers[r];\"hillshade\"===n.type&&n.source===t.source&&e.w(\"You are using the same source for a hillshade layer and for 3D terrain. Please consider using two separate sources to improve rendering quality.\")}this.terrain=new Di(this.painter,r,t),this.painter.renderToTexture=new Bi(this.painter,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._terrainDataCallback=e=>{\"style\"===e.dataType?this.terrain.sourceCache.freeRtt():\"source\"===e.dataType&&e.tile&&(e.sourceId!==t.source||this._elevationFreeze||(this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom)),this.terrain.sourceCache.freeRtt(e.tile.tileID))},this.style.on(\"data\",this._terrainDataCallback)}else this.terrain&&this.terrain.sourceCache.destruct(),this.terrain=null,this.painter.renderToTexture&&this.painter.renderToTexture.destruct(),this.painter.renderToTexture=null,this.transform.minElevationForCurrentTile=0,this.transform.elevation=0;return this.fire(new e.k(\"terrain\",{terrain:t})),this}getTerrain(){var t,e;return null!==(e=null===(t=this.terrain)||void 0===t?void 0:t.options)&&void 0!==e?e:null}areTilesLoaded(){const t=this.style&&this.style.sourceCaches;for(const e in t){const r=t[e]._tiles;for(const t in r){const e=r[t];if(\"loaded\"!==e.state&&\"errored\"!==e.state)return!1}}return!0}removeSource(t){return this.style.removeSource(t),this._update(!0)}getSource(t){return this.style.getSource(t)}addImage(t,r,n={}){const{pixelRatio:i=1,sdf:o=!1,stretchX:s,stretchY:l,content:c,textFitWidth:u,textFitHeight:h}=n;this._lazyInitEmptyStyle();if(!(r instanceof HTMLImageElement||e.b(r))){if(void 0===r.width||void 0===r.height)return this.fire(new e.j(new Error(\"Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`\")));{const{width:n,height:a,data:f}=r,p=r;return this.style.addImage(t,{data:new e.R({width:n,height:a},new Uint8Array(f)),pixelRatio:i,stretchX:s,stretchY:l,content:c,textFitWidth:u,textFitHeight:h,sdf:o,version:0,userImage:p}),p.onAdd&&p.onAdd(this,t),this}}{const{width:n,height:f,data:p}=a.getImageData(r);this.style.addImage(t,{data:new e.R({width:n,height:f},p),pixelRatio:i,stretchX:s,stretchY:l,content:c,textFitWidth:u,textFitHeight:h,sdf:o,version:0})}}updateImage(t,r){const n=this.style.getImage(t);if(!n)return this.fire(new e.j(new Error(\"The map has no image with that id. If you are adding a new image use `map.addImage(...)` instead.\")));const i=r instanceof HTMLImageElement||e.b(r)?a.getImageData(r):r,{width:o,height:s,data:l}=i;if(void 0===o||void 0===s)return this.fire(new e.j(new Error(\"Invalid arguments to map.updateImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`\")));if(o!==n.data.width||s!==n.data.height)return this.fire(new e.j(new Error(\"The width and height of the updated image must be that same as the previous version of the image\")));const c=!(r instanceof HTMLImageElement||e.b(r));return n.data.replace(l,c),this.style.updateImage(t,n),this}getImage(t){return this.style.getImage(t)}hasImage(t){return t?!!this.style.getImage(t):(this.fire(new e.j(new Error(\"Missing required image id\"))),!1)}removeImage(t){this.style.removeImage(t)}loadImage(t){return p.getImage(this._requestManager.transformRequest(t,\"Image\"),new AbortController)}listImages(){return this.style.listImages()}addLayer(t,e){return this._lazyInitEmptyStyle(),this.style.addLayer(t,e),this._update(!0)}moveLayer(t,e){return this.style.moveLayer(t,e),this._update(!0)}removeLayer(t){return this.style.removeLayer(t),this._update(!0)}getLayer(t){return this.style.getLayer(t)}getLayersOrder(){return this.style.getLayersOrder()}setLayerZoomRange(t,e,r){return this.style.setLayerZoomRange(t,e,r),this._update(!0)}setFilter(t,e,r={}){return this.style.setFilter(t,e,r),this._update(!0)}getFilter(t){return this.style.getFilter(t)}setPaintProperty(t,e,r,n={}){return this.style.setPaintProperty(t,e,r,n),this._update(!0)}getPaintProperty(t,e){return this.style.getPaintProperty(t,e)}setLayoutProperty(t,e,r,n={}){return this.style.setLayoutProperty(t,e,r,n),this._update(!0)}getLayoutProperty(t,e){return this.style.getLayoutProperty(t,e)}setGlyphs(t,e={}){return this._lazyInitEmptyStyle(),this.style.setGlyphs(t,e),this._update(!0)}getGlyphs(){return this.style.getGlyphsUrl()}addSprite(t,e,r={}){return this._lazyInitEmptyStyle(),this.style.addSprite(t,e,r,(t=>{t||this._update(!0)})),this}removeSprite(t){return this._lazyInitEmptyStyle(),this.style.removeSprite(t),this._update(!0)}getSprite(){return this.style.getSprite()}setSprite(t,e={}){return this._lazyInitEmptyStyle(),this.style.setSprite(t,e,(t=>{t||this._update(!0)})),this}setLight(t,e={}){return this._lazyInitEmptyStyle(),this.style.setLight(t,e),this._update(!0)}getLight(){return this.style.getLight()}setSky(t){return this._lazyInitEmptyStyle(),this.style.setSky(t),this._update(!0)}getSky(){return this.style.getSky()}setFeatureState(t,e){return this.style.setFeatureState(t,e),this._update()}removeFeatureState(t,e){return this.style.removeFeatureState(t,e),this._update()}getFeatureState(t){return this.style.getFeatureState(t)}getContainer(){return this._container}getCanvasContainer(){return this._canvasContainer}getCanvas(){return this._canvas}_containerDimensions(){let t=0,e=0;return this._container&&(t=this._container.clientWidth||400,e=this._container.clientHeight||300),[t,e]}_setupContainer(){const t=this._container;t.classList.add(\"maplibregl-map\");const e=this._canvasContainer=o.create(\"div\",\"maplibregl-canvas-container\",t);this._interactive&&e.classList.add(\"maplibregl-interactive\"),this._canvas=o.create(\"canvas\",\"maplibregl-canvas\",e),this._canvas.addEventListener(\"webglcontextlost\",this._contextLost,!1),this._canvas.addEventListener(\"webglcontextrestored\",this._contextRestored,!1),this._canvas.setAttribute(\"tabindex\",this._interactive?\"0\":\"-1\"),this._canvas.setAttribute(\"aria-label\",this._getUIString(\"Map.Title\")),this._canvas.setAttribute(\"role\",\"region\");const r=this._containerDimensions(),n=this._getClampedPixelRatio(r[0],r[1]);this._resizeCanvas(r[0],r[1],n);const i=this._controlContainer=o.create(\"div\",\"maplibregl-control-container\",t),a=this._controlPositions={};[\"top-left\",\"top-right\",\"bottom-left\",\"bottom-right\"].forEach((t=>{a[t]=o.create(\"div\",`maplibregl-ctrl-${t} `,i)})),this._container.addEventListener(\"scroll\",this._onMapScroll,!1)}_resizeCanvas(t,e,r){this._canvas.width=Math.floor(r*t),this._canvas.height=Math.floor(r*e),this._canvas.style.width=`${t}px`,this._canvas.style.height=`${e}px`}_setupPainter(){const t={alpha:!0,stencil:!0,depth:!0,failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1};let e=null;this._canvas.addEventListener(\"webglcontextcreationerror\",(r=>{e={requestedAttributes:t},r&&(e.statusMessage=r.statusMessage,e.type=r.type)}),{once:!0});const r=this._canvas.getContext(\"webgl2\",t)||this._canvas.getContext(\"webgl\",t);if(!r){const t=\"Failed to initialize WebGL\";throw e?(e.message=t,new Error(JSON.stringify(e))):new Error(t)}this.painter=new Tn(r,this.transform),s.testSupport(r)}loaded(){return!this._styleDirty&&!this._sourcesDirty&&!!this.style&&this.style.loaded()}_update(t){return this.style&&this.style._loaded?(this._styleDirty=this._styleDirty||t,this._sourcesDirty=!0,this.triggerRepaint(),this):this}_requestRenderFrame(t){return this._update(),this._renderTaskQueue.add(t)}_cancelRenderFrame(t){this._renderTaskQueue.remove(t)}_render(t){const r=this._idleTriggered?this._fadeDuration:0;if(this.painter.context.setDirty(),this.painter.setBaseState(),this._renderTaskQueue.run(t),this._removed)return;let n=!1;if(this.style&&this._styleDirty){this._styleDirty=!1;const t=this.transform.zoom,i=a.now();this.style.zoomHistory.update(t,i);const o=new e.a9(t,{now:i,fadeDuration:r,zoomHistory:this.style.zoomHistory,transition:this.style.getTransition()}),s=o.crossFadingFactor();1===s&&s===this._crossFadingFactor||(n=!0,this._crossFadingFactor=s),this.style.update(o)}this.style&&this._sourcesDirty&&(this._sourcesDirty=!1,this.style._updateSources(this.transform)),this.terrain?(this.terrain.sourceCache.update(this.transform,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._elevationFreeze||(this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom))):(this.transform.minElevationForCurrentTile=0,this.transform.elevation=0),this._placementDirty=this.style&&this.style._updatePlacement(this.painter.transform,this.showCollisionBoxes,r,this._crossSourceCollisions),this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showOverdrawInspector:this._showOverdrawInspector,rotating:this.isRotating(),zooming:this.isZooming(),moving:this.isMoving(),fadeDuration:r,showPadding:this.showPadding}),this.fire(new e.k(\"render\")),this.loaded()&&!this._loaded&&(this._loaded=!0,e.be.mark(e.bf.load),this.fire(new e.k(\"load\"))),this.style&&(this.style.hasTransitions()||n)&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles();const i=this._sourcesDirty||this._styleDirty||this._placementDirty;return i||this._repaint?this.triggerRepaint():!this.isMoving()&&this.loaded()&&this.fire(new e.k(\"idle\")),!this._loaded||this._fullyLoaded||i||(this._fullyLoaded=!0,e.be.mark(e.bf.fullLoad)),this}redraw(){return this.style&&(this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._render(0)),this}remove(){var t;this._hash&&this._hash.remove();for(const t of this._controls)t.onRemove(this);this._controls=[],this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._renderTaskQueue.clear(),this.painter.destroy(),this.handlers.destroy(),delete this.handlers,this.setStyle(null),\"undefined\"!=typeof window&&removeEventListener(\"online\",this._onWindowOnline,!1),p.removeThrottleControl(this._imageQueueHandle),null===(t=this._resizeObserver)||void 0===t||t.disconnect();const r=this.painter.context.gl.getExtension(\"WEBGL_lose_context\");(null==r?void 0:r.loseContext)&&r.loseContext(),this._canvas.removeEventListener(\"webglcontextrestored\",this._contextRestored,!1),this._canvas.removeEventListener(\"webglcontextlost\",this._contextLost,!1),o.remove(this._canvasContainer),o.remove(this._controlContainer),this._container.classList.remove(\"maplibregl-map\"),e.be.clearMetrics(),this._removed=!0,this.fire(new e.k(\"remove\"))}triggerRepaint(){this.style&&!this._frameRequest&&(this._frameRequest=new AbortController,a.frameAsync(this._frameRequest).then((t=>{e.be.frame(t),this._frameRequest=null,this._render(t)})).catch((()=>{})))}get showTileBoundaries(){return!!this._showTileBoundaries}set showTileBoundaries(t){this._showTileBoundaries!==t&&(this._showTileBoundaries=t,this._update())}get showPadding(){return!!this._showPadding}set showPadding(t){this._showPadding!==t&&(this._showPadding=t,this._update())}get showCollisionBoxes(){return!!this._showCollisionBoxes}set showCollisionBoxes(t){this._showCollisionBoxes!==t&&(this._showCollisionBoxes=t,t?this.style._generateCollisionBoxes():this._update())}get showOverdrawInspector(){return!!this._showOverdrawInspector}set showOverdrawInspector(t){this._showOverdrawInspector!==t&&(this._showOverdrawInspector=t,this._update())}get repaint(){return!!this._repaint}set repaint(t){this._repaint!==t&&(this._repaint=t,this.triggerRepaint())}get vertices(){return!!this._vertices}set vertices(t){this._vertices=t,this._update()}get version(){return ji}getCameraTargetElevation(){return this.transform.elevation}},t.MapMouseEvent=Nn,t.MapTouchEvent=jn,t.MapWheelEvent=Un,t.Marker=Xi,t.NavigationControl=class{constructor(t){this._updateZoomButtons=()=>{const t=this._map.getZoom(),e=t===this._map.getMaxZoom(),r=t===this._map.getMinZoom();this._zoomInButton.disabled=e,this._zoomOutButton.disabled=r,this._zoomInButton.setAttribute(\"aria-disabled\",e.toString()),this._zoomOutButton.setAttribute(\"aria-disabled\",r.toString())},this._rotateCompassArrow=()=>{const t=this.options.visualizePitch?`scale(${1/Math.pow(Math.cos(this._map.transform.pitch*(Math.PI/180)),.5)}) rotateX(${this._map.transform.pitch}deg) rotateZ(${this._map.transform.angle*(180/Math.PI)}deg)`:`rotate(${this._map.transform.angle*(180/Math.PI)}deg)`;this._compassIcon.style.transform=t},this._setButtonTitle=(t,e)=>{const r=this._map._getUIString(`NavigationControl.${e}`);t.title=r,t.setAttribute(\"aria-label\",r)},this.options=e.e({},qi,t),this._container=o.create(\"div\",\"maplibregl-ctrl maplibregl-ctrl-group\"),this._container.addEventListener(\"contextmenu\",(t=>t.preventDefault())),this.options.showZoom&&(this._zoomInButton=this._createButton(\"maplibregl-ctrl-zoom-in\",(t=>this._map.zoomIn({},{originalEvent:t}))),o.create(\"span\",\"maplibregl-ctrl-icon\",this._zoomInButton).setAttribute(\"aria-hidden\",\"true\"),this._zoomOutButton=this._createButton(\"maplibregl-ctrl-zoom-out\",(t=>this._map.zoomOut({},{originalEvent:t}))),o.create(\"span\",\"maplibregl-ctrl-icon\",this._zoomOutButton).setAttribute(\"aria-hidden\",\"true\")),this.options.showCompass&&(this._compass=this._createButton(\"maplibregl-ctrl-compass\",(t=>{this.options.visualizePitch?this._map.resetNorthPitch({},{originalEvent:t}):this._map.resetNorth({},{originalEvent:t})})),this._compassIcon=o.create(\"span\",\"maplibregl-ctrl-icon\",this._compass),this._compassIcon.setAttribute(\"aria-hidden\",\"true\"))}onAdd(t){return this._map=t,this.options.showZoom&&(this._setButtonTitle(this._zoomInButton,\"ZoomIn\"),this._setButtonTitle(this._zoomOutButton,\"ZoomOut\"),this._map.on(\"zoom\",this._updateZoomButtons),this._updateZoomButtons()),this.options.showCompass&&(this._setButtonTitle(this._compass,\"ResetBearing\"),this.options.visualizePitch&&this._map.on(\"pitch\",this._rotateCompassArrow),this._map.on(\"rotate\",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new Hi(this._map,this._compass,this.options.visualizePitch)),this._container}onRemove(){o.remove(this._container),this.options.showZoom&&this._map.off(\"zoom\",this._updateZoomButtons),this.options.showCompass&&(this.options.visualizePitch&&this._map.off(\"pitch\",this._rotateCompassArrow),this._map.off(\"rotate\",this._rotateCompassArrow),this._handler.off(),delete this._handler),delete this._map}_createButton(t,e){const r=o.create(\"button\",t,this._container);return r.type=\"button\",r.addEventListener(\"click\",e),r}},t.Popup=oa,t.RasterDEMTileSource=Q,t.RasterTileSource=K,t.ScaleControl=class{constructor(t){this._onMove=()=>{ea(this._map,this._container,this.options)},this.setUnit=t=>{this.options.unit=t,ea(this._map,this._container,this.options)},this.options=Object.assign(Object.assign({},ta),t)}getDefaultPosition(){return\"bottom-left\"}onAdd(t){return this._map=t,this._container=o.create(\"div\",\"maplibregl-ctrl maplibregl-ctrl-scale\",t.getContainer()),this._map.on(\"move\",this._onMove),this._onMove(),this._container}onRemove(){o.remove(this._container),this._map.off(\"move\",this._onMove),this._map=void 0}},t.ScrollZoomHandler=gi,t.Style=de,t.TerrainControl=class{constructor(t){this._toggleTerrain=()=>{this._map.getTerrain()?this._map.setTerrain(null):this._map.setTerrain(this.options),this._updateTerrainIcon()},this._updateTerrainIcon=()=>{this._terrainButton.classList.remove(\"maplibregl-ctrl-terrain\"),this._terrainButton.classList.remove(\"maplibregl-ctrl-terrain-enabled\"),this._map.terrain?(this._terrainButton.classList.add(\"maplibregl-ctrl-terrain-enabled\"),this._terrainButton.title=this._map._getUIString(\"TerrainControl.Disable\")):(this._terrainButton.classList.add(\"maplibregl-ctrl-terrain\"),this._terrainButton.title=this._map._getUIString(\"TerrainControl.Enable\"))},this.options=t}onAdd(t){return this._map=t,this._container=o.create(\"div\",\"maplibregl-ctrl maplibregl-ctrl-group\"),this._terrainButton=o.create(\"button\",\"maplibregl-ctrl-terrain\",this._container),o.create(\"span\",\"maplibregl-ctrl-icon\",this._terrainButton).setAttribute(\"aria-hidden\",\"true\"),this._terrainButton.type=\"button\",this._terrainButton.addEventListener(\"click\",this._toggleTerrain),this._updateTerrainIcon(),this._map.on(\"terrain\",this._updateTerrainIcon),this._container}onRemove(){o.remove(this._container),this._map.off(\"terrain\",this._updateTerrainIcon),this._map=void 0}},t.TwoFingersTouchPitchHandler=hi,t.TwoFingersTouchRotateHandler=ci,t.TwoFingersTouchZoomHandler=si,t.TwoFingersTouchZoomRotateHandler=wi,t.VectorTileSource=J,t.VideoSource=nt,t.addSourceType=(t,r)=>e._(void 0,void 0,void 0,(function*(){if(ot(t))throw new Error(`A source type called \"${t}\" already exists.`);((t,e)=>{at[t]=e})(t,r)})),t.clearPrewarmedResources=function(){const t=j;t&&(t.isPreloaded()&&1===t.numActive()?(t.release(F),j=null):console.warn(\"Could not clear WebWorkers since there are active Map instances that still reference it. The pre-warmed WebWorker pool can only be cleared when all map instances have been removed with map.remove()\"))},t.getMaxParallelImageRequests=function(){return e.a.MAX_PARALLEL_IMAGE_REQUESTS},t.getRTLTextPluginStatus=function(){return ut().getRTLTextPluginStatus()},t.getVersion=function(){return la},t.getWorkerCount=function(){return B.workerCount},t.getWorkerUrl=function(){return e.a.WORKER_URL},t.importScriptInWorkers=function(t){return H().broadcast(\"IS\",t)},t.prewarm=function(){V().acquire(F)},t.setMaxParallelImageRequests=function(t){e.a.MAX_PARALLEL_IMAGE_REQUESTS=t},t.setRTLTextPlugin=function(t,e){return ut().setRTLTextPlugin(t,e)},t.setWorkerCount=function(t){B.workerCount=t},t.setWorkerUrl=function(t){e.a.WORKER_URL=t}})),t}()},88640:function(t,e,r){\"use strict\";function n(t,e,r){t.prototype=e.prototype=r,r.constructor=t}function i(t,e){var r=Object.create(t.prototype);for(var n in e)r[n]=e[n];return r}function a(){}r.d(e,{GW:function(){return K},Dj:function(){return H}});var o=.7,s=1/o,l=\"\\\\s*([+-]?\\\\d+)\\\\s*\",c=\"\\\\s*([+-]?(?:\\\\d*\\\\.)?\\\\d+(?:[eE][+-]?\\\\d+)?)\\\\s*\",u=\"\\\\s*([+-]?(?:\\\\d*\\\\.)?\\\\d+(?:[eE][+-]?\\\\d+)?)%\\\\s*\",h=/^#([0-9a-f]{3,8})$/,f=new RegExp(\"^rgb\\\\(\".concat(l,\",\").concat(l,\",\").concat(l,\"\\\\)$\")),p=new RegExp(\"^rgb\\\\(\".concat(u,\",\").concat(u,\",\").concat(u,\"\\\\)$\")),d=new RegExp(\"^rgba\\\\(\".concat(l,\",\").concat(l,\",\").concat(l,\",\").concat(c,\"\\\\)$\")),m=new RegExp(\"^rgba\\\\(\".concat(u,\",\").concat(u,\",\").concat(u,\",\").concat(c,\"\\\\)$\")),g=new RegExp(\"^hsl\\\\(\".concat(c,\",\").concat(u,\",\").concat(u,\"\\\\)$\")),y=new RegExp(\"^hsla\\\\(\".concat(c,\",\").concat(u,\",\").concat(u,\",\").concat(c,\"\\\\)$\")),v={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};function x(){return this.rgb().formatHex()}function _(){return this.rgb().formatRgb()}function b(t){var e,r;return t=(t+\"\").trim().toLowerCase(),(e=h.exec(t))?(r=e[1].length,e=parseInt(e[1],16),6===r?w(e):3===r?new A(e>>8&15|e>>4&240,e>>4&15|240&e,(15&e)<<4|15&e,1):8===r?T(e>>24&255,e>>16&255,e>>8&255,(255&e)/255):4===r?T(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|240&e,((15&e)<<4|15&e)/255):null):(e=f.exec(t))?new A(e[1],e[2],e[3],1):(e=p.exec(t))?new A(255*e[1]/100,255*e[2]/100,255*e[3]/100,1):(e=d.exec(t))?T(e[1],e[2],e[3],e[4]):(e=m.exec(t))?T(255*e[1]/100,255*e[2]/100,255*e[3]/100,e[4]):(e=g.exec(t))?I(e[1],e[2]/100,e[3]/100,1):(e=y.exec(t))?I(e[1],e[2]/100,e[3]/100,e[4]):v.hasOwnProperty(t)?w(v[t]):\"transparent\"===t?new A(NaN,NaN,NaN,0):null}function w(t){return new A(t>>16&255,t>>8&255,255&t,1)}function T(t,e,r,n){return n<=0&&(t=e=r=NaN),new A(t,e,r,n)}function k(t,e,r,n){return 1===arguments.length?((i=t)instanceof a||(i=b(i)),i?new A((i=i.rgb()).r,i.g,i.b,i.opacity):new A):new A(t,e,r,null==n?1:n);var i}function A(t,e,r,n){this.r=+t,this.g=+e,this.b=+r,this.opacity=+n}function M(){return\"#\".concat(L(this.r)).concat(L(this.g)).concat(L(this.b))}function S(){var t=E(this.opacity);return\"\".concat(1===t?\"rgb(\":\"rgba(\").concat(C(this.r),\", \").concat(C(this.g),\", \").concat(C(this.b)).concat(1===t?\")\":\", \".concat(t,\")\"))}function E(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function C(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function L(t){return((t=C(t))<16?\"0\":\"\")+t.toString(16)}function I(t,e,r,n){return n<=0?t=e=r=NaN:r<=0||r>=1?t=e=NaN:e<=0&&(t=NaN),new z(t,e,r,n)}function P(t){if(t instanceof z)return new z(t.h,t.s,t.l,t.opacity);if(t instanceof a||(t=b(t)),!t)return new z;if(t instanceof z)return t;var e=(t=t.rgb()).r/255,r=t.g/255,n=t.b/255,i=Math.min(e,r,n),o=Math.max(e,r,n),s=NaN,l=o-i,c=(o+i)/2;return l?(s=e===o?(r-n)/l+6*(r<n):r===o?(n-e)/l+2:(e-r)/l+4,l/=c<.5?o+i:2-o-i,s*=60):l=c>0&&c<1?0:s,new z(s,l,c,t.opacity)}function z(t,e,r,n){this.h=+t,this.s=+e,this.l=+r,this.opacity=+n}function O(t){return(t=(t||0)%360)<0?t+360:t}function D(t){return Math.max(0,Math.min(1,t||0))}function R(t,e,r){return 255*(t<60?e+(r-e)*t/60:t<180?r:t<240?e+(r-e)*(240-t)/60:e)}function F(t,e,r,n,i){var a=t*t,o=a*t;return((1-3*t+3*a-o)*e+(4-6*a+3*o)*r+(1+3*t+3*a-3*o)*n+o*i)/6}n(a,b,{copy:function(t){return Object.assign(new this.constructor,this,t)},displayable:function(){return this.rgb().displayable()},hex:x,formatHex:x,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return P(this).formatHsl()},formatRgb:_,toString:_}),n(A,k,i(a,{brighter:function(t){return t=null==t?s:Math.pow(s,t),new A(this.r*t,this.g*t,this.b*t,this.opacity)},darker:function(t){return t=null==t?o:Math.pow(o,t),new A(this.r*t,this.g*t,this.b*t,this.opacity)},rgb:function(){return this},clamp:function(){return new A(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:M,formatHex:M,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(z,(function(t,e,r,n){return 1===arguments.length?P(t):new z(t,e,r,null==n?1:n)}),i(a,{brighter:function(t){return t=null==t?s:Math.pow(s,t),new z(this.h,this.s,this.l*t,this.opacity)},darker:function(t){return t=null==t?o:Math.pow(o,t),new z(this.h,this.s,this.l*t,this.opacity)},rgb:function(){var t=this.h%360+360*(this.h<0),e=isNaN(t)||isNaN(this.s)?0:this.s,r=this.l,n=r+(r<.5?r:1-r)*e,i=2*r-n;return new A(R(t>=240?t-240:t+120,i,n),R(t,i,n),R(t<120?t+240:t-120,i,n),this.opacity)},clamp:function(){return new z(O(this.h),D(this.s),D(this.l),E(this.opacity))},displayable:function(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl:function(){var t=E(this.opacity);return\"\".concat(1===t?\"hsl(\":\"hsla(\").concat(O(this.h),\", \").concat(100*D(this.s),\"%, \").concat(100*D(this.l),\"%\").concat(1===t?\")\":\", \".concat(t,\")\"))}}));var B=function(t){return function(){return t}};function N(t,e){var r=e-t;return r?function(t,e){return function(r){return t+r*e}}(t,r):B(isNaN(t)?e:t)}var j=function t(e){var r=function(t){return 1==(t=+t)?N:function(e,r){return r-e?function(t,e,r){return t=Math.pow(t,r),e=Math.pow(e,r)-t,r=1/r,function(n){return Math.pow(t+n*e,r)}}(e,r,t):B(isNaN(e)?r:e)}}(e);function n(t,e){var n=r((t=k(t)).r,(e=k(e)).r),i=r(t.g,e.g),a=r(t.b,e.b),o=N(t.opacity,e.opacity);return function(e){return t.r=n(e),t.g=i(e),t.b=a(e),t.opacity=o(e),t+\"\"}}return n.gamma=t,n}(1);function U(t){return function(e){var r,n,i=e.length,a=new Array(i),o=new Array(i),s=new Array(i);for(r=0;r<i;++r)n=k(e[r]),a[r]=n.r||0,o[r]=n.g||0,s[r]=n.b||0;return a=t(a),o=t(o),s=t(s),n.opacity=1,function(t){return n.r=a(t),n.g=o(t),n.b=s(t),n+\"\"}}}function V(t,e){var r,n=e?e.length:0,i=t?Math.min(n,t.length):0,a=new Array(i),o=new Array(n);for(r=0;r<i;++r)a[r]=K(t[r],e[r]);for(;r<n;++r)o[r]=e[r];return function(t){for(r=0;r<i;++r)o[r]=a[r](t);return o}}function q(t,e){var r=new Date;return t=+t,e=+e,function(n){return r.setTime(t*(1-n)+e*n),r}}function H(t,e){return t=+t,e=+e,function(r){return t*(1-r)+e*r}}function G(t){return G=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},G(t)}function Z(t,e){var r,n={},i={};for(r in null!==t&&\"object\"===G(t)||(t={}),null!==e&&\"object\"===G(e)||(e={}),e)r in t?n[r]=K(t[r],e[r]):i[r]=e[r];return function(t){for(r in n)i[r]=n[r](t);return i}}U((function(t){var e=t.length-1;return function(r){var n=r<=0?r=0:r>=1?(r=1,e-1):Math.floor(r*e),i=t[n],a=t[n+1],o=n>0?t[n-1]:2*i-a,s=n<e-1?t[n+2]:2*a-i;return F((r-n/e)*e,o,i,a,s)}})),U((function(t){var e=t.length;return function(r){var n=Math.floor(((r%=1)<0?++r:r)*e),i=t[(n+e-1)%e],a=t[n%e],o=t[(n+1)%e],s=t[(n+2)%e];return F((r-n/e)*e,i,a,o,s)}}));var W=/[-+]?(?:\\d+\\.?\\d*|\\.?\\d+)(?:[eE][-+]?\\d+)?/g,Y=new RegExp(W.source,\"g\");function X(t,e){var r,n,i,a=W.lastIndex=Y.lastIndex=0,o=-1,s=[],l=[];for(t+=\"\",e+=\"\";(r=W.exec(t))&&(n=Y.exec(e));)(i=n.index)>a&&(i=e.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:H(r,n)})),a=Y.lastIndex;return a<e.length&&(i=e.slice(a),s[o]?s[o]+=i:s[++o]=i),s.length<2?l[0]?function(t){return function(e){return t(e)+\"\"}}(l[0].x):function(t){return function(){return t}}(e):(e=l.length,function(t){for(var r,n=0;n<e;++n)s[(r=l[n]).i]=r.x(t);return s.join(\"\")})}function $(t,e){e||(e=[]);var r,n=t?Math.min(e.length,t.length):0,i=e.slice();return function(a){for(r=0;r<n;++r)i[r]=t[r]*(1-a)+e[r]*a;return i}}function J(t){return J=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},J(t)}function K(t,e){var r,n,i=J(e);return null==e||\"boolean\"===i?B(e):(\"number\"===i?H:\"string\"===i?(r=b(e))?(e=r,j):X:e instanceof b?j:e instanceof Date?q:(n=e,!ArrayBuffer.isView(n)||n instanceof DataView?Array.isArray(e)?V:\"function\"!=typeof e.valueOf&&\"function\"!=typeof e.toString||isNaN(e)?Z:H:$))(t,e)}},23648:function(t){\"use strict\";t.exports=JSON.parse('[\"xx-small\",\"x-small\",\"small\",\"medium\",\"large\",\"x-large\",\"xx-large\",\"larger\",\"smaller\"]')},2362:function(t){\"use strict\";t.exports=JSON.parse('[\"normal\",\"condensed\",\"semi-condensed\",\"extra-condensed\",\"ultra-condensed\",\"expanded\",\"semi-expanded\",\"extra-expanded\",\"ultra-expanded\"]')},87486:function(t){\"use strict\";t.exports=JSON.parse('[\"normal\",\"italic\",\"oblique\"]')},99803:function(t){\"use strict\";t.exports=JSON.parse('[\"normal\",\"bold\",\"bolder\",\"lighter\",\"100\",\"200\",\"300\",\"400\",\"500\",\"600\",\"700\",\"800\",\"900\"]')},54324:function(t){\"use strict\";t.exports=JSON.parse('[\"inherit\",\"initial\",\"unset\"]')},94316:function(t){\"use strict\";t.exports=JSON.parse('[\"caption\",\"icon\",\"menu\",\"message-box\",\"small-caption\",\"status-bar\"]')},37071:function(t){\"use strict\";t.exports=JSON.parse('{\"version\":8,\"name\":\"orto\",\"metadata\":{\"maputnik:renderer\":\"mlgljs\"},\"center\":[1.537786,41.837539],\"zoom\":12,\"bearing\":0,\"pitch\":0,\"light\":{\"anchor\":\"viewport\",\"color\":\"white\",\"intensity\":0.4,\"position\":[1.15,45,30]},\"sources\":{\"ortoEsri\":{\"type\":\"raster\",\"tiles\":[\"https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}\"],\"tileSize\":256,\"maxzoom\":18,\"attribution\":\"ESRI &copy; <a href=\\'http://www.esri.com\\'>ESRI</a>\"},\"ortoInstaMaps\":{\"type\":\"raster\",\"tiles\":[\"https://tilemaps.icgc.cat/mapfactory/wmts/orto_8_12/CAT3857/{z}/{x}/{y}.png\"],\"tileSize\":256,\"maxzoom\":13},\"ortoICGC\":{\"type\":\"raster\",\"tiles\":[\"https://geoserveis.icgc.cat/icc_mapesmultibase/noutm/wmts/orto/GRID3857/{z}/{x}/{y}.jpeg\"],\"tileSize\":256,\"minzoom\":13.1,\"maxzoom\":20},\"openmaptiles\":{\"type\":\"vector\",\"url\":\"https://geoserveis.icgc.cat/contextmaps/basemap.json\"}},\"sprite\":\"https://geoserveis.icgc.cat/contextmaps/sprites/sprite@1\",\"glyphs\":\"https://geoserveis.icgc.cat/contextmaps/glyphs/{fontstack}/{range}.pbf\",\"layers\":[{\"id\":\"background\",\"type\":\"background\",\"paint\":{\"background-color\":\"#F4F9F4\"}},{\"id\":\"ortoEsri\",\"type\":\"raster\",\"source\":\"ortoEsri\",\"maxzoom\":16,\"layout\":{\"visibility\":\"visible\"}},{\"id\":\"ortoICGC\",\"type\":\"raster\",\"source\":\"ortoICGC\",\"minzoom\":13.1,\"maxzoom\":19,\"layout\":{\"visibility\":\"visible\"}},{\"id\":\"ortoInstaMaps\",\"type\":\"raster\",\"source\":\"ortoInstaMaps\",\"maxzoom\":13,\"layout\":{\"visibility\":\"visible\"}},{\"id\":\"waterway_tunnel\",\"type\":\"line\",\"source\":\"openmaptiles\",\"source-layer\":\"waterway\",\"minzoom\":14,\"filter\":[\"all\",[\"in\",\"class\",\"river\",\"stream\",\"canal\"],[\"==\",\"brunnel\",\"tunnel\"]],\"layout\":{\"line-cap\":\"round\"},\"paint\":{\"line-color\":\"#a0c8f0\",\"line-width\":{\"base\":1.3,\"stops\":[[13,0.5],[20,6]]},\"line-dasharray\":[2,4]}},{\"id\":\"waterway-other\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849382550.77\"},\"source\":\"openmaptiles\",\"source-layer\":\"waterway\",\"filter\":[\"!in\",\"class\",\"canal\",\"river\",\"stream\"],\"layout\":{\"line-cap\":\"round\"},\"paint\":{\"line-color\":\"#a0c8f0\",\"line-width\":{\"base\":1.3,\"stops\":[[13,0.5],[20,2]]}}},{\"id\":\"waterway-stream-canal\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849382550.77\"},\"source\":\"openmaptiles\",\"source-layer\":\"waterway\",\"filter\":[\"all\",[\"in\",\"class\",\"canal\",\"stream\"],[\"!=\",\"brunnel\",\"tunnel\"]],\"layout\":{\"line-cap\":\"round\"},\"paint\":{\"line-color\":\"#a0c8f0\",\"line-width\":{\"base\":1.3,\"stops\":[[13,0.5],[20,6]]}}},{\"id\":\"waterway-river\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849382550.77\"},\"source\":\"openmaptiles\",\"source-layer\":\"waterway\",\"filter\":[\"all\",[\"==\",\"class\",\"river\"],[\"!=\",\"brunnel\",\"tunnel\"]],\"layout\":{\"line-cap\":\"round\"},\"paint\":{\"line-color\":\"#a0c8f0\",\"line-width\":{\"base\":1.2,\"stops\":[[10,0.8],[20,4]]},\"line-opacity\":0.5}},{\"id\":\"water-offset\",\"type\":\"fill\",\"metadata\":{\"mapbox:group\":\"1444849382550.77\"},\"source\":\"openmaptiles\",\"source-layer\":\"water\",\"maxzoom\":8,\"filter\":[\"==\",\"$type\",\"Polygon\"],\"layout\":{\"visibility\":\"visible\"},\"paint\":{\"fill-opacity\":0,\"fill-color\":\"#a0c8f0\",\"fill-translate\":{\"base\":1,\"stops\":[[6,[2,0]],[8,[0,0]]]}}},{\"id\":\"water\",\"type\":\"fill\",\"metadata\":{\"mapbox:group\":\"1444849382550.77\"},\"source\":\"openmaptiles\",\"source-layer\":\"water\",\"layout\":{\"visibility\":\"visible\"},\"paint\":{\"fill-color\":\"hsl(210, 67%, 85%)\",\"fill-opacity\":0}},{\"id\":\"water-pattern\",\"type\":\"fill\",\"metadata\":{\"mapbox:group\":\"1444849382550.77\"},\"source\":\"openmaptiles\",\"source-layer\":\"water\",\"layout\":{\"visibility\":\"visible\"},\"paint\":{\"fill-translate\":[0,2.5],\"fill-pattern\":\"wave\",\"fill-opacity\":1}},{\"id\":\"landcover-ice-shelf\",\"type\":\"fill\",\"metadata\":{\"mapbox:group\":\"1444849382550.77\"},\"source\":\"openmaptiles\",\"source-layer\":\"landcover\",\"filter\":[\"==\",\"subclass\",\"ice_shelf\"],\"layout\":{\"visibility\":\"visible\"},\"paint\":{\"fill-color\":\"#fff\",\"fill-opacity\":{\"base\":1,\"stops\":[[0,0.9],[10,0.3]]}}},{\"id\":\"tunnel-service-track-casing\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849354174.1904\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"brunnel\",\"tunnel\"],[\"in\",\"class\",\"service\",\"track\"]],\"layout\":{\"line-join\":\"round\"},\"paint\":{\"line-color\":\"#cfcdca\",\"line-dasharray\":[0.5,0.25],\"line-width\":{\"base\":1.2,\"stops\":[[15,1],[16,4],[20,11]]}}},{\"id\":\"tunnel-minor-casing\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849354174.1904\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"brunnel\",\"tunnel\"],[\"==\",\"class\",\"minor\"]],\"layout\":{\"line-join\":\"round\"},\"paint\":{\"line-color\":\"#cfcdca\",\"line-opacity\":{\"stops\":[[12,0],[12.5,1]]},\"line-width\":{\"base\":1.2,\"stops\":[[12,0.5],[13,1],[14,4],[20,15]]}}},{\"id\":\"tunnel-secondary-tertiary-casing\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849354174.1904\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"brunnel\",\"tunnel\"],[\"in\",\"class\",\"secondary\",\"tertiary\"]],\"layout\":{\"line-join\":\"round\"},\"paint\":{\"line-color\":\"#e9ac77\",\"line-opacity\":1,\"line-width\":{\"base\":1.2,\"stops\":[[8,1.5],[20,17]]}}},{\"id\":\"tunnel-trunk-primary-casing\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849354174.1904\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"brunnel\",\"tunnel\"],[\"in\",\"class\",\"primary\",\"trunk\"]],\"layout\":{\"line-join\":\"round\"},\"paint\":{\"line-color\":\"#e9ac77\",\"line-width\":{\"base\":1.2,\"stops\":[[5,0.4],[6,0.6],[7,1.5],[20,22]]},\"line-opacity\":0.7}},{\"id\":\"tunnel-motorway-casing\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849354174.1904\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"brunnel\",\"tunnel\"],[\"==\",\"class\",\"motorway\"]],\"layout\":{\"line-join\":\"round\",\"visibility\":\"visible\"},\"paint\":{\"line-color\":\"#e9ac77\",\"line-dasharray\":[0.5,0.25],\"line-width\":{\"base\":1.2,\"stops\":[[5,0.4],[6,0.6],[7,1.5],[20,22]]},\"line-opacity\":0.5}},{\"id\":\"tunnel-path\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849354174.1904\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"$type\",\"LineString\"],[\"all\",[\"==\",\"brunnel\",\"tunnel\"],[\"==\",\"class\",\"path\"]]],\"paint\":{\"line-color\":\"#cba\",\"line-dasharray\":[1.5,0.75],\"line-width\":{\"base\":1.2,\"stops\":[[15,1.2],[20,4]]}}},{\"id\":\"tunnel-service-track\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849354174.1904\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"brunnel\",\"tunnel\"],[\"in\",\"class\",\"service\",\"track\"]],\"layout\":{\"line-join\":\"round\"},\"paint\":{\"line-color\":\"#fff\",\"line-width\":{\"base\":1.2,\"stops\":[[15.5,0],[16,2],[20,7.5]]}}},{\"id\":\"tunnel-minor\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849354174.1904\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"brunnel\",\"tunnel\"],[\"==\",\"class\",\"minor_road\"]],\"layout\":{\"line-join\":\"round\"},\"paint\":{\"line-color\":\"#fff\",\"line-opacity\":1,\"line-width\":{\"base\":1.2,\"stops\":[[13.5,0],[14,2.5],[20,11.5]]}}},{\"id\":\"tunnel-secondary-tertiary\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849354174.1904\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"brunnel\",\"tunnel\"],[\"in\",\"class\",\"secondary\",\"tertiary\"]],\"layout\":{\"line-join\":\"round\"},\"paint\":{\"line-color\":\"#fff4c6\",\"line-width\":{\"base\":1.2,\"stops\":[[6.5,0],[7,0.5],[20,10]]}}},{\"id\":\"tunnel-trunk-primary\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849354174.1904\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"brunnel\",\"tunnel\"],[\"in\",\"class\",\"primary\",\"trunk\"]],\"layout\":{\"line-join\":\"round\"},\"paint\":{\"line-color\":\"#fff4c6\",\"line-width\":{\"base\":1.2,\"stops\":[[6.5,0],[7,0.5],[20,18]]},\"line-opacity\":0.5}},{\"id\":\"tunnel-motorway\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849354174.1904\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"brunnel\",\"tunnel\"],[\"==\",\"class\",\"motorway\"]],\"layout\":{\"line-join\":\"round\",\"visibility\":\"visible\"},\"paint\":{\"line-color\":\"#ffdaa6\",\"line-width\":{\"base\":1.2,\"stops\":[[6.5,0],[7,0.5],[20,18]]},\"line-opacity\":0.5}},{\"id\":\"tunnel-railway\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849354174.1904\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"brunnel\",\"tunnel\"],[\"==\",\"class\",\"rail\"]],\"paint\":{\"line-color\":\"#bbb\",\"line-width\":{\"base\":1.4,\"stops\":[[14,0.4],[15,0.75],[20,2]]},\"line-dasharray\":[2,2]}},{\"id\":\"ferry\",\"type\":\"line\",\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"in\",\"class\",\"ferry\"]],\"layout\":{\"line-join\":\"round\",\"visibility\":\"visible\"},\"paint\":{\"line-color\":\"rgba(108, 159, 182, 1)\",\"line-width\":1.1,\"line-dasharray\":[2,2]}},{\"id\":\"aeroway-taxiway-casing\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849345966.4436\"},\"source\":\"openmaptiles\",\"source-layer\":\"aeroway\",\"minzoom\":12,\"filter\":[\"all\",[\"in\",\"class\",\"taxiway\"]],\"layout\":{\"line-cap\":\"round\",\"line-join\":\"round\",\"visibility\":\"visible\"},\"paint\":{\"line-color\":\"rgba(153, 153, 153, 1)\",\"line-width\":{\"base\":1.5,\"stops\":[[11,2],[17,12]]},\"line-opacity\":1}},{\"id\":\"aeroway-runway-casing\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849345966.4436\"},\"source\":\"openmaptiles\",\"source-layer\":\"aeroway\",\"minzoom\":12,\"filter\":[\"all\",[\"in\",\"class\",\"runway\"]],\"layout\":{\"line-cap\":\"round\",\"line-join\":\"round\",\"visibility\":\"visible\"},\"paint\":{\"line-color\":\"rgba(153, 153, 153, 1)\",\"line-width\":{\"base\":1.5,\"stops\":[[11,5],[17,55]]},\"line-opacity\":1}},{\"id\":\"aeroway-taxiway\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849345966.4436\"},\"source\":\"openmaptiles\",\"source-layer\":\"aeroway\",\"minzoom\":4,\"filter\":[\"all\",[\"in\",\"class\",\"taxiway\"],[\"==\",\"$type\",\"LineString\"]],\"layout\":{\"line-cap\":\"round\",\"line-join\":\"round\",\"visibility\":\"visible\"},\"paint\":{\"line-color\":\"rgba(255, 255, 255, 1)\",\"line-width\":{\"base\":1.5,\"stops\":[[11,1],[17,10]]},\"line-opacity\":{\"base\":1,\"stops\":[[11,0],[12,1]]}}},{\"id\":\"aeroway-runway\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849345966.4436\"},\"source\":\"openmaptiles\",\"source-layer\":\"aeroway\",\"minzoom\":4,\"filter\":[\"all\",[\"in\",\"class\",\"runway\"],[\"==\",\"$type\",\"LineString\"]],\"layout\":{\"line-cap\":\"round\",\"line-join\":\"round\",\"visibility\":\"visible\"},\"paint\":{\"line-color\":\"rgba(255, 255, 255, 1)\",\"line-width\":{\"base\":1.5,\"stops\":[[11,4],[17,50]]},\"line-opacity\":{\"base\":1,\"stops\":[[11,0],[12,1]]}}},{\"id\":\"highway-motorway-link-casing\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849345966.4436\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"minzoom\":12,\"filter\":[\"all\",[\"!in\",\"brunnel\",\"bridge\",\"tunnel\"],[\"==\",\"class\",\"motorway_link\"]],\"layout\":{\"line-cap\":\"round\",\"line-join\":\"round\"},\"paint\":{\"line-color\":\"#e9ac77\",\"line-opacity\":1,\"line-width\":{\"base\":1.2,\"stops\":[[12,1],[13,3],[14,4],[20,15]]}}},{\"id\":\"highway-link-casing\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849345966.4436\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"minzoom\":13,\"filter\":[\"all\",[\"!in\",\"brunnel\",\"bridge\",\"tunnel\"],[\"in\",\"class\",\"primary_link\",\"secondary_link\",\"tertiary_link\",\"trunk_link\"]],\"layout\":{\"line-cap\":\"round\",\"line-join\":\"round\",\"visibility\":\"visible\"},\"paint\":{\"line-color\":\"#e9ac77\",\"line-opacity\":1,\"line-width\":{\"base\":1.2,\"stops\":[[12,1],[13,3],[14,4],[20,15]]}}},{\"id\":\"highway-minor-casing\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849345966.4436\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"$type\",\"LineString\"],[\"all\",[\"!=\",\"brunnel\",\"tunnel\"],[\"in\",\"class\",\"minor\",\"service\",\"track\"]]],\"layout\":{\"line-cap\":\"round\",\"line-join\":\"round\"},\"paint\":{\"line-color\":\"#cfcdca\",\"line-opacity\":{\"stops\":[[12,0],[12.5,0]]},\"line-width\":{\"base\":1.2,\"stops\":[[12,0.5],[13,1],[14,4],[20,15]]}}},{\"id\":\"highway-secondary-tertiary-casing\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849345966.4436\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"!in\",\"brunnel\",\"bridge\",\"tunnel\"],[\"in\",\"class\",\"secondary\",\"tertiary\"]],\"layout\":{\"line-cap\":\"butt\",\"line-join\":\"round\",\"visibility\":\"visible\"},\"paint\":{\"line-color\":\"#e9ac77\",\"line-opacity\":0.5,\"line-width\":{\"base\":1.2,\"stops\":[[8,1.5],[20,17]]}}},{\"id\":\"highway-primary-casing\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849345966.4436\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"minzoom\":5,\"filter\":[\"all\",[\"!in\",\"brunnel\",\"bridge\",\"tunnel\"],[\"in\",\"class\",\"primary\"]],\"layout\":{\"line-cap\":\"butt\",\"line-join\":\"round\",\"visibility\":\"visible\"},\"paint\":{\"line-color\":\"#e9ac77\",\"line-opacity\":{\"stops\":[[7,0],[8,0.6]]},\"line-width\":{\"base\":1.2,\"stops\":[[7,0],[8,0.6],[9,1.5],[20,22]]}}},{\"id\":\"highway-trunk-casing\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849345966.4436\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"minzoom\":5,\"filter\":[\"all\",[\"!in\",\"brunnel\",\"bridge\",\"tunnel\"],[\"in\",\"class\",\"trunk\"]],\"layout\":{\"line-cap\":\"butt\",\"line-join\":\"round\",\"visibility\":\"visible\"},\"paint\":{\"line-color\":\"#e9ac77\",\"line-opacity\":{\"stops\":[[5,0],[6,0.5]]},\"line-width\":{\"base\":1.2,\"stops\":[[5,0],[6,0.6],[7,1.5],[20,22]]}}},{\"id\":\"highway-motorway-casing\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849345966.4436\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"minzoom\":4,\"filter\":[\"all\",[\"!in\",\"brunnel\",\"bridge\",\"tunnel\"],[\"==\",\"class\",\"motorway\"]],\"layout\":{\"line-cap\":\"butt\",\"line-join\":\"round\",\"visibility\":\"visible\"},\"paint\":{\"line-color\":\"#e9ac77\",\"line-width\":{\"base\":1.2,\"stops\":[[4,0],[5,0.4],[6,0.6],[7,1.5],[20,22]]},\"line-opacity\":{\"stops\":[[4,0],[5,0.5]]}}},{\"id\":\"highway-path\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849345966.4436\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"$type\",\"LineString\"],[\"all\",[\"!in\",\"brunnel\",\"bridge\",\"tunnel\"],[\"==\",\"class\",\"path\"]]],\"paint\":{\"line-color\":\"#cba\",\"line-dasharray\":[1.5,0.75],\"line-width\":{\"base\":1.2,\"stops\":[[15,1.2],[20,4]]}}},{\"id\":\"highway-motorway-link\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849345966.4436\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"minzoom\":12,\"filter\":[\"all\",[\"!in\",\"brunnel\",\"bridge\",\"tunnel\"],[\"==\",\"class\",\"motorway_link\"]],\"layout\":{\"line-cap\":\"round\",\"line-join\":\"round\"},\"paint\":{\"line-color\":\"#fc8\",\"line-width\":{\"base\":1.2,\"stops\":[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{\"id\":\"highway-link\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849345966.4436\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"minzoom\":13,\"filter\":[\"all\",[\"!in\",\"brunnel\",\"bridge\",\"tunnel\"],[\"in\",\"class\",\"primary_link\",\"secondary_link\",\"tertiary_link\",\"trunk_link\"]],\"layout\":{\"line-cap\":\"round\",\"line-join\":\"round\",\"visibility\":\"visible\"},\"paint\":{\"line-color\":\"#fea\",\"line-width\":{\"base\":1.2,\"stops\":[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{\"id\":\"highway-minor\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849345966.4436\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"$type\",\"LineString\"],[\"all\",[\"!=\",\"brunnel\",\"tunnel\"],[\"in\",\"class\",\"minor\",\"service\",\"track\"]]],\"layout\":{\"line-cap\":\"round\",\"line-join\":\"round\"},\"paint\":{\"line-color\":\"#fff\",\"line-opacity\":0.5,\"line-width\":{\"base\":1.2,\"stops\":[[13.5,0],[14,2.5],[20,11.5]]}}},{\"id\":\"highway-secondary-tertiary\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849345966.4436\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"!in\",\"brunnel\",\"bridge\",\"tunnel\"],[\"in\",\"class\",\"secondary\",\"tertiary\"]],\"layout\":{\"line-cap\":\"round\",\"line-join\":\"round\",\"visibility\":\"visible\"},\"paint\":{\"line-color\":\"#fea\",\"line-width\":{\"base\":1.2,\"stops\":[[6.5,0],[8,0.5],[20,13]]},\"line-opacity\":0.5}},{\"id\":\"highway-primary\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849345966.4436\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"$type\",\"LineString\"],[\"all\",[\"!in\",\"brunnel\",\"bridge\",\"tunnel\"],[\"in\",\"class\",\"primary\"]]],\"layout\":{\"line-cap\":\"round\",\"line-join\":\"round\",\"visibility\":\"visible\"},\"paint\":{\"line-color\":\"#fea\",\"line-width\":{\"base\":1.2,\"stops\":[[8.5,0],[9,0.5],[20,18]]},\"line-opacity\":0}},{\"id\":\"highway-trunk\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849345966.4436\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"$type\",\"LineString\"],[\"all\",[\"!in\",\"brunnel\",\"bridge\",\"tunnel\"],[\"in\",\"class\",\"trunk\"]]],\"layout\":{\"line-cap\":\"round\",\"line-join\":\"round\",\"visibility\":\"visible\"},\"paint\":{\"line-color\":\"#fea\",\"line-width\":{\"base\":1.2,\"stops\":[[6.5,0],[7,0.5],[20,18]]},\"line-opacity\":0.5}},{\"id\":\"highway-motorway\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849345966.4436\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"minzoom\":5,\"filter\":[\"all\",[\"==\",\"$type\",\"LineString\"],[\"all\",[\"!in\",\"brunnel\",\"bridge\",\"tunnel\"],[\"==\",\"class\",\"motorway\"]]],\"layout\":{\"line-cap\":\"round\",\"line-join\":\"round\",\"visibility\":\"visible\"},\"paint\":{\"line-color\":\"#fc8\",\"line-width\":{\"base\":1.2,\"stops\":[[6.5,0],[7,0.5],[20,18]]},\"line-opacity\":0.5}},{\"id\":\"railway-transit\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849345966.4436\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"$type\",\"LineString\"],[\"all\",[\"==\",\"class\",\"transit\"],[\"!in\",\"brunnel\",\"tunnel\"]]],\"layout\":{\"visibility\":\"visible\"},\"paint\":{\"line-color\":\"hsla(0, 0%, 73%, 0.77)\",\"line-width\":{\"base\":1.4,\"stops\":[[14,0.4],[20,1]]}}},{\"id\":\"railway-transit-hatching\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849345966.4436\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"$type\",\"LineString\"],[\"all\",[\"==\",\"class\",\"transit\"],[\"!in\",\"brunnel\",\"tunnel\"]]],\"layout\":{\"visibility\":\"visible\"},\"paint\":{\"line-color\":\"hsla(0, 0%, 73%, 0.68)\",\"line-dasharray\":[0.2,8],\"line-width\":{\"base\":1.4,\"stops\":[[14.5,0],[15,2],[20,6]]}}},{\"id\":\"railway-service\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849345966.4436\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"$type\",\"LineString\"],[\"all\",[\"==\",\"class\",\"rail\"],[\"has\",\"service\"]]],\"paint\":{\"line-color\":\"hsla(0, 0%, 73%, 0.77)\",\"line-width\":{\"base\":1.4,\"stops\":[[14,0.4],[20,1]]}}},{\"id\":\"railway-service-hatching\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849345966.4436\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"$type\",\"LineString\"],[\"all\",[\"==\",\"class\",\"rail\"],[\"has\",\"service\"]]],\"layout\":{\"visibility\":\"visible\"},\"paint\":{\"line-color\":\"hsla(0, 0%, 73%, 0.68)\",\"line-dasharray\":[0.2,8],\"line-width\":{\"base\":1.4,\"stops\":[[14.5,0],[15,2],[20,6]]}}},{\"id\":\"railway\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849345966.4436\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"$type\",\"LineString\"],[\"all\",[\"!has\",\"service\"],[\"!in\",\"brunnel\",\"bridge\",\"tunnel\"],[\"==\",\"class\",\"rail\"]]],\"paint\":{\"line-color\":\"#bbb\",\"line-width\":{\"base\":1.4,\"stops\":[[14,0.4],[15,0.75],[20,2]]}}},{\"id\":\"railway-hatching\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849345966.4436\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"$type\",\"LineString\"],[\"all\",[\"!has\",\"service\"],[\"!in\",\"brunnel\",\"bridge\",\"tunnel\"],[\"==\",\"class\",\"rail\"]]],\"paint\":{\"line-color\":\"#bbb\",\"line-dasharray\":[0.2,8],\"line-width\":{\"base\":1.4,\"stops\":[[14.5,0],[15,3],[20,8]]}}},{\"id\":\"bridge-motorway-link-casing\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849334699.1902\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"brunnel\",\"bridge\"],[\"==\",\"class\",\"motorway_link\"]],\"layout\":{\"line-join\":\"round\"},\"paint\":{\"line-color\":\"#e9ac77\",\"line-opacity\":1,\"line-width\":{\"base\":1.2,\"stops\":[[12,1],[13,3],[14,4],[20,15]]}}},{\"id\":\"bridge-link-casing\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849334699.1902\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"brunnel\",\"bridge\"],[\"in\",\"class\",\"primary_link\",\"secondary_link\",\"tertiary_link\",\"trunk_link\"]],\"layout\":{\"line-join\":\"round\"},\"paint\":{\"line-color\":\"#e9ac77\",\"line-opacity\":1,\"line-width\":{\"base\":1.2,\"stops\":[[12,1],[13,3],[14,4],[20,15]]}}},{\"id\":\"bridge-secondary-tertiary-casing\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849334699.1902\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"brunnel\",\"bridge\"],[\"in\",\"class\",\"secondary\",\"tertiary\"]],\"layout\":{\"line-join\":\"round\"},\"paint\":{\"line-color\":\"#e9ac77\",\"line-opacity\":1,\"line-width\":{\"base\":1.2,\"stops\":[[8,1.5],[20,28]]}}},{\"id\":\"bridge-trunk-primary-casing\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849334699.1902\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"brunnel\",\"bridge\"],[\"in\",\"class\",\"primary\",\"trunk\"]],\"layout\":{\"line-join\":\"round\"},\"paint\":{\"line-color\":\"hsl(28, 76%, 67%)\",\"line-width\":{\"base\":1.2,\"stops\":[[5,0.4],[6,0.6],[7,1.5],[20,26]]}}},{\"id\":\"bridge-motorway-casing\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849334699.1902\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"brunnel\",\"bridge\"],[\"==\",\"class\",\"motorway\"]],\"layout\":{\"line-join\":\"round\"},\"paint\":{\"line-color\":\"#e9ac77\",\"line-width\":{\"base\":1.2,\"stops\":[[5,0.4],[6,0.6],[7,1.5],[20,22]]},\"line-opacity\":0.5}},{\"id\":\"bridge-path-casing\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849334699.1902\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"$type\",\"LineString\"],[\"all\",[\"==\",\"brunnel\",\"bridge\"],[\"==\",\"class\",\"path\"]]],\"paint\":{\"line-color\":\"#f8f4f0\",\"line-width\":{\"base\":1.2,\"stops\":[[15,1.2],[20,18]]}}},{\"id\":\"bridge-path\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849334699.1902\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"$type\",\"LineString\"],[\"all\",[\"==\",\"brunnel\",\"bridge\"],[\"==\",\"class\",\"path\"]]],\"paint\":{\"line-color\":\"#cba\",\"line-width\":{\"base\":1.2,\"stops\":[[15,1.2],[20,4]]},\"line-dasharray\":[1.5,0.75]}},{\"id\":\"bridge-motorway-link\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849334699.1902\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"brunnel\",\"bridge\"],[\"==\",\"class\",\"motorway_link\"]],\"layout\":{\"line-join\":\"round\"},\"paint\":{\"line-color\":\"#fc8\",\"line-width\":{\"base\":1.2,\"stops\":[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{\"id\":\"bridge-link\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849334699.1902\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"brunnel\",\"bridge\"],[\"in\",\"class\",\"primary_link\",\"secondary_link\",\"tertiary_link\",\"trunk_link\"]],\"layout\":{\"line-join\":\"round\"},\"paint\":{\"line-color\":\"#fea\",\"line-width\":{\"base\":1.2,\"stops\":[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{\"id\":\"bridge-secondary-tertiary\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849334699.1902\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"brunnel\",\"bridge\"],[\"in\",\"class\",\"secondary\",\"tertiary\"]],\"layout\":{\"line-join\":\"round\"},\"paint\":{\"line-color\":\"#fea\",\"line-width\":{\"base\":1.2,\"stops\":[[6.5,0],[7,0.5],[20,20]]}}},{\"id\":\"bridge-trunk-primary\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849334699.1902\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"brunnel\",\"bridge\"],[\"in\",\"class\",\"primary\",\"trunk\"]],\"layout\":{\"line-join\":\"round\"},\"paint\":{\"line-color\":\"#fea\",\"line-width\":{\"base\":1.2,\"stops\":[[6.5,0],[7,0.5],[20,18]]}}},{\"id\":\"bridge-motorway\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849334699.1902\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"brunnel\",\"bridge\"],[\"==\",\"class\",\"motorway\"]],\"layout\":{\"line-join\":\"round\"},\"paint\":{\"line-color\":\"#fc8\",\"line-width\":{\"base\":1.2,\"stops\":[[6.5,0],[7,0.5],[20,18]]},\"line-opacity\":0.5}},{\"id\":\"bridge-railway\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849334699.1902\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"brunnel\",\"bridge\"],[\"==\",\"class\",\"rail\"]],\"paint\":{\"line-color\":\"#bbb\",\"line-width\":{\"base\":1.4,\"stops\":[[14,0.4],[15,0.75],[20,2]]}}},{\"id\":\"bridge-railway-hatching\",\"type\":\"line\",\"metadata\":{\"mapbox:group\":\"1444849334699.1902\"},\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"filter\":[\"all\",[\"==\",\"brunnel\",\"bridge\"],[\"==\",\"class\",\"rail\"]],\"paint\":{\"line-color\":\"#bbb\",\"line-dasharray\":[0.2,8],\"line-width\":{\"base\":1.4,\"stops\":[[14.5,0],[15,3],[20,8]]}}},{\"id\":\"cablecar\",\"type\":\"line\",\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"minzoom\":13,\"filter\":[\"==\",\"class\",\"cable_car\"],\"layout\":{\"visibility\":\"visible\",\"line-cap\":\"round\"},\"paint\":{\"line-color\":\"hsl(0, 0%, 70%)\",\"line-width\":{\"base\":1,\"stops\":[[11,1],[19,2.5]]}}},{\"id\":\"cablecar-dash\",\"type\":\"line\",\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"minzoom\":13,\"filter\":[\"==\",\"class\",\"cable_car\"],\"layout\":{\"visibility\":\"visible\",\"line-cap\":\"round\"},\"paint\":{\"line-color\":\"hsl(0, 0%, 70%)\",\"line-width\":{\"base\":1,\"stops\":[[11,3],[19,5.5]]},\"line-dasharray\":[2,3]}},{\"id\":\"boundary-land-level-4\",\"type\":\"line\",\"source\":\"openmaptiles\",\"source-layer\":\"boundary\",\"filter\":[\"all\",[\">=\",\"admin_level\",4],[\"<=\",\"admin_level\",8],[\"!=\",\"maritime\",1]],\"layout\":{\"line-join\":\"round\"},\"paint\":{\"line-color\":\"#9e9cab\",\"line-dasharray\":[3,1,1,1],\"line-width\":{\"base\":1.4,\"stops\":[[4,0.4],[5,1],[12,3]]},\"line-opacity\":0.6}},{\"id\":\"boundary-land-level-2\",\"type\":\"line\",\"source\":\"openmaptiles\",\"source-layer\":\"boundary\",\"filter\":[\"all\",[\"==\",\"admin_level\",2],[\"!=\",\"maritime\",1],[\"!=\",\"disputed\",1]],\"layout\":{\"line-cap\":\"round\",\"line-join\":\"round\"},\"paint\":{\"line-color\":\"hsl(248, 7%, 66%)\",\"line-width\":{\"base\":1,\"stops\":[[0,0.6],[4,1.4],[5,2],[12,2]]}}},{\"id\":\"boundary-land-disputed\",\"type\":\"line\",\"source\":\"openmaptiles\",\"source-layer\":\"boundary\",\"filter\":[\"all\",[\"!=\",\"maritime\",1],[\"==\",\"disputed\",1]],\"layout\":{\"line-cap\":\"round\",\"line-join\":\"round\"},\"paint\":{\"line-color\":\"hsl(248, 7%, 70%)\",\"line-dasharray\":[1,3],\"line-width\":{\"base\":1,\"stops\":[[0,0.6],[4,1.4],[5,2],[12,8]]}}},{\"id\":\"boundary-water\",\"type\":\"line\",\"source\":\"openmaptiles\",\"source-layer\":\"boundary\",\"filter\":[\"all\",[\"in\",\"admin_level\",2,4],[\"==\",\"maritime\",1]],\"layout\":{\"line-cap\":\"round\",\"line-join\":\"round\"},\"paint\":{\"line-color\":\"rgba(154, 189, 214, 1)\",\"line-width\":{\"base\":1,\"stops\":[[0,0.6],[4,1],[5,1],[12,1]]},\"line-opacity\":{\"stops\":[[6,0],[10,0]]}}},{\"id\":\"waterway-name\",\"type\":\"symbol\",\"source\":\"openmaptiles\",\"source-layer\":\"waterway\",\"minzoom\":13,\"filter\":[\"all\",[\"==\",\"$type\",\"LineString\"],[\"has\",\"name\"]],\"layout\":{\"text-font\":[\"Noto Sans Italic\"],\"text-size\":14,\"text-field\":\"{name:latin} {name:nonlatin}\",\"text-max-width\":5,\"text-rotation-alignment\":\"map\",\"symbol-placement\":\"line\",\"text-letter-spacing\":0.2,\"symbol-spacing\":350},\"paint\":{\"text-color\":\"#74aee9\",\"text-halo-width\":1.5,\"text-halo-color\":\"rgba(255,255,255,0.7)\"}},{\"id\":\"water-name-lakeline\",\"type\":\"symbol\",\"source\":\"openmaptiles\",\"source-layer\":\"water_name\",\"filter\":[\"==\",\"$type\",\"LineString\"],\"layout\":{\"text-font\":[\"Noto Sans Italic\"],\"text-size\":14,\"text-field\":\"{name:latin}\\\\n{name:nonlatin}\",\"text-max-width\":5,\"text-rotation-alignment\":\"map\",\"symbol-placement\":\"line\",\"symbol-spacing\":350,\"text-letter-spacing\":0.2},\"paint\":{\"text-color\":\"#74aee9\",\"text-halo-width\":1.5,\"text-halo-color\":\"rgba(255,255,255,0.7)\"}},{\"id\":\"water-name-ocean\",\"type\":\"symbol\",\"source\":\"openmaptiles\",\"source-layer\":\"water_name\",\"filter\":[\"all\",[\"==\",\"$type\",\"Point\"],[\"==\",\"class\",\"ocean\"]],\"layout\":{\"text-font\":[\"Noto Sans Italic\"],\"text-size\":14,\"text-field\":\"{name:latin}\",\"text-max-width\":5,\"text-rotation-alignment\":\"map\",\"symbol-placement\":\"point\",\"symbol-spacing\":350,\"text-letter-spacing\":0.2},\"paint\":{\"text-color\":\"#74aee9\",\"text-halo-width\":1.5,\"text-halo-color\":\"rgba(255,255,255,0.7)\"}},{\"id\":\"water-name-other\",\"type\":\"symbol\",\"source\":\"openmaptiles\",\"source-layer\":\"water_name\",\"filter\":[\"all\",[\"==\",\"$type\",\"Point\"],[\"!in\",\"class\",\"ocean\"]],\"layout\":{\"text-font\":[\"Noto Sans Italic\"],\"text-size\":{\"stops\":[[0,10],[6,14]]},\"text-field\":\"{name:latin}\\\\n{name:nonlatin}\",\"text-max-width\":5,\"text-rotation-alignment\":\"map\",\"symbol-placement\":\"point\",\"symbol-spacing\":350,\"text-letter-spacing\":0.2,\"visibility\":\"visible\"},\"paint\":{\"text-color\":\"#74aee9\",\"text-halo-width\":1.5,\"text-halo-color\":\"rgba(255,255,255,0.7)\"}},{\"id\":\"poi-level-3\",\"type\":\"symbol\",\"source\":\"openmaptiles\",\"source-layer\":\"poi\",\"minzoom\":16,\"filter\":[\"all\",[\"==\",\"$type\",\"Point\"],[\">=\",\"rank\",25]],\"layout\":{\"text-padding\":2,\"text-font\":[\"Noto Sans Regular\"],\"text-anchor\":\"top\",\"icon-image\":\"{class}_11\",\"text-field\":\"{name:latin}\\\\n{name:nonlatin}\",\"text-offset\":[0,0.6],\"text-size\":12,\"text-max-width\":9},\"paint\":{\"text-halo-blur\":0.5,\"text-color\":\"#666\",\"text-halo-width\":1,\"text-halo-color\":\"#ffffff\"}},{\"id\":\"poi-level-2\",\"type\":\"symbol\",\"source\":\"openmaptiles\",\"source-layer\":\"poi\",\"minzoom\":15,\"filter\":[\"all\",[\"==\",\"$type\",\"Point\"],[\"<=\",\"rank\",24],[\">=\",\"rank\",15]],\"layout\":{\"text-padding\":2,\"text-font\":[\"Noto Sans Regular\"],\"text-anchor\":\"top\",\"icon-image\":\"{class}_11\",\"text-field\":\"{name:latin}\\\\n{name:nonlatin}\",\"text-offset\":[0,0.6],\"text-size\":12,\"text-max-width\":9},\"paint\":{\"text-halo-blur\":0.5,\"text-color\":\"#666\",\"text-halo-width\":1,\"text-halo-color\":\"#ffffff\"}},{\"id\":\"poi-level-1\",\"type\":\"symbol\",\"source\":\"openmaptiles\",\"source-layer\":\"poi\",\"minzoom\":14,\"filter\":[\"all\",[\"==\",\"$type\",\"Point\"],[\"<=\",\"rank\",14],[\"has\",\"name\"]],\"layout\":{\"text-padding\":2,\"text-font\":[\"Noto Sans Regular\"],\"text-anchor\":\"top\",\"icon-image\":\"{class}_11\",\"text-field\":\"{name:latin}\\\\n{name:nonlatin}\",\"text-offset\":[0,0.6],\"text-size\":11,\"text-max-width\":9},\"paint\":{\"text-halo-blur\":0.5,\"text-color\":\"rgba(191, 228, 172, 1)\",\"text-halo-width\":1,\"text-halo-color\":\"rgba(30, 29, 29, 1)\"}},{\"id\":\"poi-railway\",\"type\":\"symbol\",\"source\":\"openmaptiles\",\"source-layer\":\"poi\",\"minzoom\":13,\"filter\":[\"all\",[\"==\",\"$type\",\"Point\"],[\"has\",\"name\"],[\"==\",\"class\",\"railway\"],[\"==\",\"subclass\",\"station\"]],\"layout\":{\"text-padding\":2,\"text-font\":[\"Noto Sans Regular\"],\"text-anchor\":\"top\",\"icon-image\":\"{class}_11\",\"text-field\":\"{name:latin}\\\\n{name:nonlatin}\",\"text-offset\":[0,0.6],\"text-size\":12,\"text-max-width\":9,\"icon-optional\":false,\"icon-ignore-placement\":false,\"icon-allow-overlap\":false,\"text-ignore-placement\":false,\"text-allow-overlap\":false,\"text-optional\":true},\"paint\":{\"text-halo-blur\":0.5,\"text-color\":\"#666\",\"text-halo-width\":1,\"text-halo-color\":\"#ffffff\"}},{\"id\":\"road_oneway\",\"type\":\"symbol\",\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"minzoom\":15,\"filter\":[\"all\",[\"==\",\"oneway\",1],[\"in\",\"class\",\"motorway\",\"trunk\",\"primary\",\"secondary\",\"tertiary\",\"minor\",\"service\"]],\"layout\":{\"symbol-placement\":\"line\",\"icon-image\":\"oneway\",\"symbol-spacing\":75,\"icon-padding\":2,\"icon-rotation-alignment\":\"map\",\"icon-rotate\":90,\"icon-size\":{\"stops\":[[15,0.5],[19,1]]}},\"paint\":{\"icon-opacity\":0.5}},{\"id\":\"road_oneway_opposite\",\"type\":\"symbol\",\"source\":\"openmaptiles\",\"source-layer\":\"transportation\",\"minzoom\":15,\"filter\":[\"all\",[\"==\",\"oneway\",-1],[\"in\",\"class\",\"motorway\",\"trunk\",\"primary\",\"secondary\",\"tertiary\",\"minor\",\"service\"]],\"layout\":{\"symbol-placement\":\"line\",\"icon-image\":\"oneway\",\"symbol-spacing\":75,\"icon-padding\":2,\"icon-rotation-alignment\":\"map\",\"icon-rotate\":-90,\"icon-size\":{\"stops\":[[15,0.5],[19,1]]}},\"paint\":{\"icon-opacity\":0.5}},{\"id\":\"highway-name-path\",\"type\":\"symbol\",\"source\":\"openmaptiles\",\"source-layer\":\"transportation_name\",\"minzoom\":15.5,\"filter\":[\"==\",\"class\",\"path\"],\"layout\":{\"text-size\":{\"base\":1,\"stops\":[[13,12],[14,13]]},\"text-font\":[\"Noto Sans Regular\"],\"text-field\":\"{name:latin} {name:nonlatin}\",\"symbol-placement\":\"line\",\"text-rotation-alignment\":\"map\"},\"paint\":{\"text-halo-color\":\"#f8f4f0\",\"text-color\":\"hsl(30, 23%, 62%)\",\"text-halo-width\":0.5}},{\"id\":\"highway-name-minor\",\"type\":\"symbol\",\"source\":\"openmaptiles\",\"source-layer\":\"transportation_name\",\"minzoom\":15,\"filter\":[\"all\",[\"==\",\"$type\",\"LineString\"],[\"in\",\"class\",\"minor\",\"service\",\"track\"]],\"layout\":{\"text-size\":{\"base\":1,\"stops\":[[13,12],[14,13]]},\"text-font\":[\"Noto Sans Regular\"],\"text-field\":\"{name:latin} {name:nonlatin}\",\"symbol-placement\":\"line\",\"text-rotation-alignment\":\"map\"},\"paint\":{\"text-halo-blur\":0.5,\"text-color\":\"#765\",\"text-halo-width\":1}},{\"id\":\"highway-name-major\",\"type\":\"symbol\",\"source\":\"openmaptiles\",\"source-layer\":\"transportation_name\",\"minzoom\":12.2,\"filter\":[\"in\",\"class\",\"primary\",\"secondary\",\"tertiary\",\"trunk\"],\"layout\":{\"text-size\":{\"base\":1,\"stops\":[[13,12],[14,13]]},\"text-font\":[\"Noto Sans Regular\"],\"text-field\":\"{name:latin} {name:nonlatin}\",\"symbol-placement\":\"line\",\"text-rotation-alignment\":\"map\"},\"paint\":{\"text-halo-blur\":0.5,\"text-color\":\"#765\",\"text-halo-width\":1}},{\"id\":\"highway-shield\",\"type\":\"symbol\",\"source\":\"openmaptiles\",\"source-layer\":\"transportation_name\",\"minzoom\":8,\"filter\":[\"all\",[\"<=\",\"ref_length\",6],[\"==\",\"$type\",\"LineString\"],[\"!in\",\"network\",\"us-interstate\",\"us-highway\",\"us-state\"]],\"layout\":{\"text-size\":10,\"icon-image\":\"road_{ref_length}\",\"icon-rotation-alignment\":\"viewport\",\"symbol-spacing\":200,\"text-font\":[\"Noto Sans Regular\"],\"symbol-placement\":{\"base\":1,\"stops\":[[10,\"point\"],[11,\"line\"]]},\"text-rotation-alignment\":\"viewport\",\"icon-size\":1,\"text-field\":\"{ref}\"},\"paint\":{\"text-opacity\":1,\"text-color\":\"rgba(20, 19, 19, 1)\",\"text-halo-color\":\"rgba(230, 221, 221, 0)\",\"text-halo-width\":2,\"icon-color\":\"rgba(183, 18, 18, 1)\",\"icon-opacity\":0.3,\"icon-halo-color\":\"rgba(183, 55, 55, 0)\"}},{\"id\":\"highway-shield-us-interstate\",\"type\":\"symbol\",\"source\":\"openmaptiles\",\"source-layer\":\"transportation_name\",\"minzoom\":7,\"filter\":[\"all\",[\"<=\",\"ref_length\",6],[\"==\",\"$type\",\"LineString\"],[\"in\",\"network\",\"us-interstate\"]],\"layout\":{\"text-size\":10,\"icon-image\":\"{network}_{ref_length}\",\"icon-rotation-alignment\":\"viewport\",\"symbol-spacing\":200,\"text-font\":[\"Noto Sans Regular\"],\"symbol-placement\":{\"base\":1,\"stops\":[[7,\"point\"],[7,\"line\"],[8,\"line\"]]},\"text-rotation-alignment\":\"viewport\",\"icon-size\":1,\"text-field\":\"{ref}\"},\"paint\":{\"text-color\":\"rgba(0, 0, 0, 1)\"}},{\"id\":\"highway-shield-us-other\",\"type\":\"symbol\",\"source\":\"openmaptiles\",\"source-layer\":\"transportation_name\",\"minzoom\":9,\"filter\":[\"all\",[\"<=\",\"ref_length\",6],[\"==\",\"$type\",\"LineString\"],[\"in\",\"network\",\"us-highway\",\"us-state\"]],\"layout\":{\"text-size\":10,\"icon-image\":\"{network}_{ref_length}\",\"icon-rotation-alignment\":\"viewport\",\"symbol-spacing\":200,\"text-font\":[\"Noto Sans Regular\"],\"symbol-placement\":{\"base\":1,\"stops\":[[10,\"point\"],[11,\"line\"]]},\"text-rotation-alignment\":\"viewport\",\"icon-size\":1,\"text-field\":\"{ref}\"},\"paint\":{\"text-color\":\"rgba(0, 0, 0, 1)\"}},{\"id\":\"place-other\",\"type\":\"symbol\",\"metadata\":{\"mapbox:group\":\"1444849242106.713\"},\"source\":\"openmaptiles\",\"source-layer\":\"place\",\"minzoom\":12,\"filter\":[\"!in\",\"class\",\"city\",\"town\",\"village\",\"country\",\"continent\"],\"layout\":{\"text-letter-spacing\":0.1,\"text-size\":{\"base\":1.2,\"stops\":[[12,10],[15,14]]},\"text-font\":[\"Noto Sans Bold\"],\"text-field\":\"{name:latin}\\\\n{name:nonlatin}\",\"text-transform\":\"uppercase\",\"text-max-width\":9,\"visibility\":\"visible\"},\"paint\":{\"text-color\":\"rgba(255,255,255,1)\",\"text-halo-width\":1.2,\"text-halo-color\":\"rgba(57, 28, 28, 1)\"}},{\"id\":\"place-village\",\"type\":\"symbol\",\"metadata\":{\"mapbox:group\":\"1444849242106.713\"},\"source\":\"openmaptiles\",\"source-layer\":\"place\",\"minzoom\":10,\"filter\":[\"==\",\"class\",\"village\"],\"layout\":{\"text-font\":[\"Noto Sans Regular\"],\"text-size\":{\"base\":1.2,\"stops\":[[10,12],[15,16]]},\"text-field\":\"{name:latin}\\\\n{name:nonlatin}\",\"text-max-width\":8,\"visibility\":\"visible\"},\"paint\":{\"text-color\":\"rgba(255, 255, 255, 1)\",\"text-halo-width\":1.2,\"text-halo-color\":\"rgba(10, 9, 9, 0.8)\"}},{\"id\":\"place-town\",\"type\":\"symbol\",\"metadata\":{\"mapbox:group\":\"1444849242106.713\"},\"source\":\"openmaptiles\",\"source-layer\":\"place\",\"filter\":[\"==\",\"class\",\"town\"],\"layout\":{\"text-font\":[\"Noto Sans Regular\"],\"text-size\":{\"base\":1.2,\"stops\":[[10,14],[15,24]]},\"text-field\":\"{name:latin}\\\\n{name:nonlatin}\",\"text-max-width\":8,\"visibility\":\"visible\"},\"paint\":{\"text-color\":\"rgba(255, 255, 255, 1)\",\"text-halo-width\":1.2,\"text-halo-color\":\"rgba(22, 22, 22, 0.8)\"}},{\"id\":\"place-city\",\"type\":\"symbol\",\"metadata\":{\"mapbox:group\":\"1444849242106.713\"},\"source\":\"openmaptiles\",\"source-layer\":\"place\",\"filter\":[\"all\",[\"!=\",\"capital\",2],[\"==\",\"class\",\"city\"]],\"layout\":{\"text-font\":[\"Noto Sans Regular\"],\"text-size\":{\"base\":1.2,\"stops\":[[7,14],[11,24]]},\"text-field\":\"{name:latin}\\\\n{name:nonlatin}\",\"text-max-width\":8,\"visibility\":\"visible\"},\"paint\":{\"text-color\":\"rgba(0, 0, 0, 1)\",\"text-halo-width\":1.2,\"text-halo-color\":\"rgba(255,255,255,0.8)\"}},{\"id\":\"place-city-capital\",\"type\":\"symbol\",\"metadata\":{\"mapbox:group\":\"1444849242106.713\"},\"source\":\"openmaptiles\",\"source-layer\":\"place\",\"filter\":[\"all\",[\"==\",\"capital\",2],[\"==\",\"class\",\"city\"]],\"layout\":{\"text-font\":[\"Noto Sans Regular\"],\"text-size\":{\"base\":1.2,\"stops\":[[7,14],[11,24]]},\"text-field\":\"{name:latin}\\\\n{name:nonlatin}\",\"text-max-width\":8,\"icon-image\":\"star_11\",\"text-offset\":[0.4,0],\"icon-size\":0.8,\"text-anchor\":\"left\",\"visibility\":\"visible\"},\"paint\":{\"text-color\":\"#333\",\"text-halo-width\":1.2,\"text-halo-color\":\"rgba(255,255,255,0.8)\"}},{\"id\":\"place-country-other\",\"type\":\"symbol\",\"metadata\":{\"mapbox:group\":\"1444849242106.713\"},\"source\":\"openmaptiles\",\"source-layer\":\"place\",\"filter\":[\"all\",[\"==\",\"class\",\"country\"],[\">=\",\"rank\",3],[\"!has\",\"iso_a2\"]],\"layout\":{\"text-font\":[\"Noto Sans Italic\"],\"text-field\":\"{name:latin}\",\"text-size\":{\"stops\":[[3,11],[7,17]]},\"text-transform\":\"uppercase\",\"text-max-width\":6.25,\"visibility\":\"visible\"},\"paint\":{\"text-halo-blur\":1,\"text-color\":\"#334\",\"text-halo-width\":2,\"text-halo-color\":\"rgba(255,255,255,0.8)\"}},{\"id\":\"place-country-3\",\"type\":\"symbol\",\"metadata\":{\"mapbox:group\":\"1444849242106.713\"},\"source\":\"openmaptiles\",\"source-layer\":\"place\",\"filter\":[\"all\",[\"==\",\"class\",\"country\"],[\">=\",\"rank\",3],[\"has\",\"iso_a2\"]],\"layout\":{\"text-font\":[\"Noto Sans Bold\"],\"text-field\":\"{name:latin}\",\"text-size\":{\"stops\":[[3,11],[7,17]]},\"text-transform\":\"uppercase\",\"text-max-width\":6.25,\"visibility\":\"visible\"},\"paint\":{\"text-halo-blur\":1,\"text-color\":\"#334\",\"text-halo-width\":2,\"text-halo-color\":\"rgba(255,255,255,0.8)\"}},{\"id\":\"place-country-2\",\"type\":\"symbol\",\"metadata\":{\"mapbox:group\":\"1444849242106.713\"},\"source\":\"openmaptiles\",\"source-layer\":\"place\",\"filter\":[\"all\",[\"==\",\"class\",\"country\"],[\"==\",\"rank\",2],[\"has\",\"iso_a2\"]],\"layout\":{\"text-font\":[\"Noto Sans Bold\"],\"text-field\":\"{name:latin}\",\"text-size\":{\"stops\":[[2,11],[5,17]]},\"text-transform\":\"uppercase\",\"text-max-width\":6.25,\"visibility\":\"visible\"},\"paint\":{\"text-halo-blur\":1,\"text-color\":\"#334\",\"text-halo-width\":2,\"text-halo-color\":\"rgba(255,255,255,0.8)\"}},{\"id\":\"place-country-1\",\"type\":\"symbol\",\"metadata\":{\"mapbox:group\":\"1444849242106.713\"},\"source\":\"openmaptiles\",\"source-layer\":\"place\",\"filter\":[\"all\",[\"==\",\"class\",\"country\"],[\"==\",\"rank\",1],[\"has\",\"iso_a2\"]],\"layout\":{\"text-font\":[\"Noto Sans Bold\"],\"text-field\":\"{name:latin}\",\"text-size\":{\"stops\":[[1,11],[4,17]]},\"text-transform\":\"uppercase\",\"text-max-width\":6.25,\"visibility\":\"visible\"},\"paint\":{\"text-halo-blur\":1,\"text-color\":\"#334\",\"text-halo-width\":2,\"text-halo-color\":\"rgba(255,255,255,0.8)\"}},{\"id\":\"place-continent\",\"type\":\"symbol\",\"metadata\":{\"mapbox:group\":\"1444849242106.713\"},\"source\":\"openmaptiles\",\"source-layer\":\"place\",\"maxzoom\":1,\"filter\":[\"==\",\"class\",\"continent\"],\"layout\":{\"text-font\":[\"Noto Sans Bold\"],\"text-field\":\"{name:latin}\",\"text-size\":14,\"text-max-width\":6.25,\"text-transform\":\"uppercase\",\"visibility\":\"visible\"},\"paint\":{\"text-halo-blur\":1,\"text-color\":\"#334\",\"text-halo-width\":2,\"text-halo-color\":\"rgba(255,255,255,0.8)\"}}],\"id\":\"qebnlkra6\"}')},51962:function(t){\"use strict\";t.exports=JSON.parse('{\"version\":8,\"name\":\"orto\",\"metadata\":{},\"center\":[1.537786,41.837539],\"zoom\":12,\"bearing\":0,\"pitch\":0,\"light\":{\"anchor\":\"viewport\",\"color\":\"white\",\"intensity\":0.4,\"position\":[1.15,45,30]},\"sources\":{\"ortoEsri\":{\"type\":\"raster\",\"tiles\":[\"https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}\"],\"tileSize\":256,\"maxzoom\":18,\"attribution\":\"ESRI &copy; <a href=\\'http://www.esri.com\\'>ESRI</a>\"},\"ortoInstaMaps\":{\"type\":\"raster\",\"tiles\":[\"https://tilemaps.icgc.cat/mapfactory/wmts/orto_8_12/CAT3857/{z}/{x}/{y}.png\"],\"tileSize\":256,\"maxzoom\":13},\"ortoICGC\":{\"type\":\"raster\",\"tiles\":[\"https://geoserveis.icgc.cat/icc_mapesmultibase/noutm/wmts/orto/GRID3857/{z}/{x}/{y}.jpeg\"],\"tileSize\":256,\"minzoom\":13.1,\"maxzoom\":20},\"openmaptiles\":{\"type\":\"vector\",\"url\":\"https://geoserveis.icgc.cat/contextmaps/basemap.json\"}},\"sprite\":\"https://geoserveis.icgc.cat/contextmaps/sprites/sprite@1\",\"glyphs\":\"https://geoserveis.icgc.cat/contextmaps/glyphs/{fontstack}/{range}.pbf\",\"layers\":[{\"id\":\"background\",\"type\":\"background\",\"paint\":{\"background-color\":\"#F4F9F4\"}},{\"id\":\"ortoEsri\",\"type\":\"raster\",\"source\":\"ortoEsri\",\"maxzoom\":16,\"layout\":{\"visibility\":\"visible\"}},{\"id\":\"ortoICGC\",\"type\":\"raster\",\"source\":\"ortoICGC\",\"minzoom\":13.1,\"maxzoom\":19,\"layout\":{\"visibility\":\"visible\"}},{\"id\":\"ortoInstaMaps\",\"type\":\"raster\",\"source\":\"ortoInstaMaps\",\"maxzoom\":13,\"layout\":{\"visibility\":\"visible\"}}]}')}},e={};function r(n){var i=e[n];if(void 0!==i)return i.exports;var a=e[n]={id:n,exports:{}};return t[n].call(a.exports,a,a.exports,r),a.exports}return r.m=t,r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,{a:e}),e},r.d=function(t,e){for(var n in e)r.o(e,n)&&!r.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},r.g=function(){if(\"object\"==typeof globalThis)return globalThis;try{return this||new Function(\"return this\")()}catch(t){if(\"object\"==typeof window)return window}}(),r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.r=function(t){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(t,\"__esModule\",{value:!0})},r.b=document.baseURI||self.location.href,r.nc=void 0,r(20260)}()}));\n",
" });\n",
" require(['plotly'], function(Plotly) {\n",
" window._Plotly = Plotly;\n",
" });\n",
" }\n",
" </script>\n",
" "
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"customdata": [
[
"Aarewasser"
],
[
"Abbaye de Belval"
],
[
"Abbaye de Citeaux"
],
[
"Abbaye de Tamié"
],
[
"Abbaye de Timadeuc"
],
[
"Abbaye du Mont des Cats"
],
[
"Abbots Gold"
],
[
"Abondance"
],
[
"Adelost"
],
[
"ADL Brick Cheese"
],
[
"ADL Mild Cheddar"
],
[
"Affidelice au Chablis"
],
[
"Affineur Walo Rotwein Sennechäs"
],
[
"Afuega'l Pitu"
],
[
"Aged British Cheddar"
],
[
"Aged Cheddar"
],
[
"Aggiano"
],
[
"Airedale"
],
[
"Aisy Cendre"
],
[
"Alex James Co. No 1 Cheddar"
],
[
"Alex James Co. No 2 Blue Monday"
],
[
"Alex James Co. No 3 Valley Brie"
],
[
"Alex James Co. No 5 Grunge"
],
[
"Alisia-Victoria"
],
[
"Allgauer Emmentaler"
],
[
"Alma Vorarlberger Alpkäse (3-5 months)"
],
[
"Alma Vorarlberger Alpkäse (6-9 months)"
],
[
"Alma Vorarlberger Bergkäse (10 months)"
],
[
"Alma Vorarlberger Bergkäse (12 months)"
],
[
"Alma Vorarlberger Bergkäse (6 months)"
],
[
"Almnäs Tegel"
],
[
"Alpe di Frabosa"
],
[
"Alpha Tolman"
],
[
"Alpine Gold"
],
[
"Alpkäse"
],
[
"Alps Rebel"
],
[
"Alta Badia"
],
[
"Amablu Blue cheese"
],
[
"Ameribella"
],
[
"American Cheese"
],
[
"Ami du Chambertin"
],
[
"Amish Frolic"
],
[
"Amul Cheese Spread"
],
[
"Amul Emmental"
],
[
"Amul Gouda"
],
[
"Amul Pizza Mozzarella Cheese"
],
[
"Anniversary Ale Cheddar"
],
[
"Anster"
],
[
"Appalachian"
],
[
"Appenzeller"
],
[
"Apple Walnut Smoked"
],
[
"Appleby's Double Gloucester"
],
[
"Applewood"
],
[
"Ardrahan"
],
[
"Arådalen"
],
[
"Ascutney Mountain"
],
[
"Asher Blue"
],
[
"Ashley"
],
[
"Asiago DOP"
],
[
"Asiago dAllevo DOP"
],
[
"Asiago Pressato DOP"
],
[
"Auld Lochnagar"
],
[
"Auld Reekie"
],
[
"Aura"
],
[
"Austrian Alps cheese"
],
[
"Avaxtskyr"
],
[
"Avonlea Clothbound Cheddar"
],
[
"Baby Brie"
],
[
"Baby Swiss"
],
[
"Babybel"
],
[
"Baguette Laonnaise"
],
[
"Baita Friuli"
],
[
"Balaton"
],
[
"Baluchon"
],
[
"Bandal"
],
[
"Barambah Organics Marinated Feta"
],
[
"Barber's 1833"
],
[
"Barberey"
],
[
"Barden Blue"
],
[
"Barely Buzzed"
],
[
"Barlocco"
],
[
"Baron Bigod"
],
[
"Baron Bigod Baby Truffle"
],
[
"Barricato al Pepe"
],
[
"Barry's Bay Cheddar"
],
[
"Basils Original Rauchkäse"
],
[
"Basket Cheese"
],
[
"Bassigny au porto"
],
[
"Bath Blue"
],
[
"Bath Soft Cheese"
],
[
"Bath Soft Cheese Truffled"
],
[
"Bavaria blu"
],
[
"Bavarian Bergkase"
],
[
"Bayley Hazen Blue"
],
[
"Baylough"
],
[
"Beach Box Brie"
],
[
"Beaufort"
],
[
"Beaumont"
],
[
"Beauvale"
],
[
"Beauvoorde"
],
[
"Beehive Fresh"
],
[
"Beemster Aged"
],
[
"Beemster Classic"
],
[
"Beemster Extra Aged (XO)"
],
[
"Beemster Graskaas"
],
[
"Bega Processed Cheddar"
],
[
"Bel Ceillo"
],
[
"Bel Paese"
],
[
"Bella Lodi"
],
[
"Belle Creme"
],
[
"Belletoile"
],
[
"Bellwether Farms Crescenza"
],
[
"Bent River"
],
[
"Bergader"
],
[
"Bergues"
],
[
"Bermondsey Hard Pressed"
],
[
"Bethmale des Pyrenees"
],
[
"Bianco"
],
[
"Bierkase"
],
[
"Big John's Cajun"
],
[
"Big Rock Blue"
],
[
"Binnorie Marinated Fetta"
],
[
"Bishop Kennedy"
],
[
"Bix"
],
[
"Black Bomber Cheddar"
],
[
"Blacksticks Blue"
],
[
"Blaenafon Pwll Ddu"
],
[
"Blarney Castle"
],
[
"Bleu Bénédictin"
],
[
"Bleu d'Auvergne"
],
[
"Bleu de Laqueuille"
],
[
"Bleu Des Causses"
],
[
"Bleu L'Ermite"
],
[
"Bleu Mont Dairy Bandaged Cheddar"
],
[
"Bleubry"
],
[
"Blu '61"
],
[
"Blue Castello"
],
[
"Blue Clouds"
],
[
"Blue Earth"
],
[
"Blue Vein (Australian)"
],
[
"Blue Wensleydale"
],
[
"Blue Yonder"
],
[
"Bluebell"
],
[
"Blythedale Camembert Vermont™"
],
[
"Boeren-Leidse met sleutels"
],
[
"Boivin Extra Aged Cheddar"
],
[
"Boivin Marbled Cheddar"
],
[
"Boivin Medium Cheddar"
],
[
"Bonchester"
],
[
"Bonifaz"
],
[
"Boo Boo Baby Swiss"
],
[
"Bothwell Black Truffle Cheddar"
],
[
"Boulette d'Avesnes"
],
[
"Bouncing Berry"
],
[
"Boursault"
],
[
"Boursin"
],
[
"Bouyssou"
],
[
"Bra Duro DOP"
],
[
"Braudostur"
],
[
"Breakfast Cheese"
],
[
"Bresse Bleu"
],
[
"Brewer's Gold"
],
[
"Brick"
],
[
"Bridgewater"
],
[
"Brie"
],
[
"Brie au poivre (Brie with pepper)"
],
[
"Brie Coco"
],
[
"Brie d'Alexis"
],
[
"Brie de Meaux"
],
[
"Brie de Melun"
],
[
"Brie de Portneuf"
],
[
"Brie de Portneuf Double Cream"
],
[
"Brillat-Savarin"
],
[
"Brillo di Treviso"
],
[
"Brimstone"
],
[
"Brin"
],
[
"Briscola"
],
[
"Brise du Matin"
],
[
"Bruder Basil"
],
[
"Brusselae Kaas (Fromage de Bruxelles)"
],
[
"Brutal Blue"
],
[
"Burwash Rose"
],
[
"Burwood Bole"
],
[
"Butte"
],
[
"Buttermilk Blue"
],
[
"Buttermilk Blue Affinee"
],
[
"Buttermilk Gorgonzola"
],
[
"Butternut"
],
[
"Buxton Blue"
],
[
"Caboc"
],
[
"Cabot Clothbound"
],
[
"Cabrales"
],
[
"Caciobarricato"
],
[
"Caciobirraio"
],
[
"Caciocavallo"
],
[
"Caciocavallo Podolico Vetus"
],
[
"Cacow Belle"
],
[
"Caerphilly"
],
[
"Cahill's Irish Porter Cheddar"
],
[
"Cahill's Whiskey Cheese"
],
[
"cambazola"
],
[
"Cambozola Grand Noir"
],
[
"Cambus oMay"
],
[
"Camembert"
],
[
"Camembert Calvados"
],
[
"Camembert de Normandie"
],
[
"Camembert de Portneuf"
],
[
"Camembert des Camarades"
],
[
"Campfire"
],
[
"Canastra cheese"
],
[
"Cancoillotte (Cancoyotte)"
],
[
"Cantal"
],
[
"Caprice des Dieux"
],
[
"Carabiner"
],
[
"Carlina"
],
[
"Carlow"
],
[
"Carmody"
],
[
"Carnia Altobut"
],
[
"Caronzola"
],
[
"Carr Valley Glacier Wildfire Blue"
],
[
"Carre de l'Est"
],
[
"Carrick"
],
[
"Carrot Rebel"
],
[
"Carrowholly"
],
[
"Cashel Blue"
],
[
"Castle Blue"
],
[
"Cathelain"
],
[
"Catupiry"
],
[
"Cave Rebel"
],
[
"Caveman Blue"
],
[
"Caws Penhelyg Abaty"
],
[
"Cello Thick & Smooth Mascarpone"
],
[
"Celtic Promise"
],
[
"Cendre d'Olivet"
],
[
"Cendré des Prés"
],
[
"Challerhocker"
],
[
"Champignon de Luxe Garlic"
],
[
"Champignon de Luxe Pepper"
],
[
"Champignon Mushrooom"
],
[
"Chaource"
],
[
"Chapman's Pasture"
],
[
"Chaumes"
],
[
"Checkerboard Cheddar"
],
[
"Cheddar"
],
[
"Cheddar LaDiDa Lavender"
],
[
"Cheddar with Irish Porter"
],
[
"Cheddar with Red Wine"
],
[
"Cherokee Rose"
],
[
"Cheshire"
],
[
"Chimney Rock"
],
[
"Chiriboga Blue"
],
[
"Chocolate Lab"
],
[
"Chocolate Stout Cheddar"
],
[
"Chontaleno"
],
[
"Chorlton Blue Cheshire"
],
[
"Château de Versailles"
],
[
"Cirrus"
],
[
"Classics Fresh Mozzarella"
],
[
"Clava Brie"
],
[
"Coalho"
],
[
"Coastal Cheddar"
],
[
"Coeur de Camembert au Calvados"
],
[
"Colby"
],
[
"Cold Pack"
],
[
"ColoRouge"
],
[
"Colston Bassett Stilton"
],
[
"Comox Brie"
],
[
"Comox Camembert"
],
[
"Comte"
],
[
"Comte 12 months"
],
[
"Comte 18 months"
],
[
"Comtomme"
],
[
"Conciato Al Pepe"
],
[
"Condio"
],
[
"Connemara"
],
[
"Coolattin Cheddar"
],
[
"Coolea"
],
[
"Cooleney"
],
[
"Coquetdale"
],
[
"Cornish Blue"
],
[
"Cornish Brie"
],
[
"Cornish Crumbly"
],
[
"Cornish Pepper"
],
[
"Cornish Smuggler"
],
[
"Cornish Wild Garlic Yarg"
],
[
"Cornish Yarg"
],
[
"Cote Hill Blue"
],
[
"Cotherstone"
],
[
"Cotija Cheese"
],
[
"Cotswold"
],
[
"Cottage Cheese (Australian)"
],
[
"Cougar Gold"
],
[
"Coulommiers"
],
[
"Country Morning"
],
[
"Coverdale"
],
[
"Cow's Milk Gouda"
],
[
"Cranborne"
],
[
"Cravero Parmigiano Reggiano"
],
[
"Crayeux de Roncq"
],
[
"Cream Cheese"
],
[
"Cream Havarti"
],
[
"Creamy Gouda"
],
[
"Creamy Lancashire"
],
[
"Cremig Extra Würzig, Bergkäse Aus Dem Schweizer Jura"
],
[
"Crescenza-Stracchino"
],
[
"Criffel"
],
[
"Criollo Cheese"
],
[
"Crowdie"
],
[
"Crowley"
],
[
"Crucolo"
],
[
"Crumbly Lancashire"
],
[
"CréMonté"
],
[
"Cup Cheese"
],
[
"Cure Nantais"
],
[
"Curworthy"
],
[
"L'Affine Au Chablis"
],
[
"L'Amuse Brabander Goat Gouda"
],
[
"L'Amuse Signature Gouda"
],
[
"L'Aveyronnais"
],
[
"L'Ecir de l'Aubrac"
],
[
"L'Étivaz"
],
[
"La Bonaparte"
],
[
"La Casatella"
],
[
"La Fleurie"
],
[
"La Peral"
],
[
"La Rumeur"
],
[
"La Sauvagine"
],
[
"La Sauvagine Réserve"
],
[
"La Vache Qui Rit cheese"
],
[
"Labneh"
],
[
"Lacy Swiss"
],
[
"Lady Jane"
],
[
"Laganory"
],
[
"Laguiole"
],
[
"Lajta"
],
[
"Lake District Extra Mature Cheddar"
],
[
"Lake District Mature Cheddar"
],
[
"Lancashire Smoked"
],
[
"Landaff"
],
[
"Langres"
],
[
"Lappi"
],
[
"Largo"
],
[
"Latteria Navel"
],
[
"Latteria San Biagio"
],
[
"Lavistown"
],
[
"Le Brin"
],
[
"Le Conquerant Camembert"
],
[
"Le Duc Vacherin"
],
[
"Le Gruyère AOP"
],
[
"Le Maréchal"
],
[
"Le Wavreumont"
],
[
"Leerdammer"
],
[
"Legacy"
],
[
"Legato"
],
[
"Les Calendos"
],
[
"Leyden"
],
[
"Lil Moo"
],
[
"Liliputas"
],
[
"Lincolnshire Poacher"
],
[
"Lindale"
],
[
"Lindy Hop"
],
[
"Liptauer"
],
[
"Little Colonel"
],
[
"Little Qualicum Raclette"
],
[
"Livarot"
],
[
"Llanboidy"
],
[
"Llanglofan Farmhouse"
],
[
"Lo Speziato"
],
[
"Loch Arthur Farmhouse"
],
[
"Loma Alta"
],
[
"Longhorn"
],
[
"Lou Bergier Pichin"
],
[
"Lou Palou"
],
[
"Lyburn Garlic and Nettle"
],
[
"Lyburn Gold"
],
[
"Lyburn Lightly Oak Smoked"
],
[
"Lyburn's Winchester"
],
[
"Maasdam"
],
[
"Maffra Aged Rinded Cheddar"
],
[
"Maffra Cheshire"
],
[
"Maffra Dargo Walnut"
],
[
"Maffra Mature Cheddar"
],
[
"Maffra Peppercorn Cheddar"
],
[
"Maffra Red Leicester"
],
[
"Maffra Sage Derby"
],
[
"Maffra Wensleydale"
],
[
"Maggie's Round"
],
[
"Magna"
],
[
"Mahoe Aged Gouda"
],
[
"Mahón"
],
[
"Maida Vale"
],
[
"Maisie's Kebbuck"
],
[
"Mandolin"
],
[
"Mango Rebel"
],
[
"Manteca"
],
[
"Marble Cheddar"
],
[
"Marble Cheese"
],
[
"Marco Polo"
],
[
"Maredsous"
],
[
"Margot"
],
[
"Maribo"
],
[
"Marin French Triple Crème"
],
[
"Maroilles"
],
[
"Martha's Heat"
],
[
"Mascarpone"
],
[
"Mature Wensleydale"
],
[
"May Hill Green"
],
[
"Maytag Blue"
],
[
"McLaren"
],
[
"Medallion"
],
[
"Melinda Mae"
],
[
"Menallack Farmhouse"
],
[
"Menonita"
],
[
"Merry Wyfe"
],
[
"Mersey Valley Original Vintage"
],
[
"Meyer Vintage Gouda"
],
[
"MezzaLuna Fontina"
],
[
"Mezzo Secco"
],
[
"Milawa Blue"
],
[
"Milawa Brie"
],
[
"Milawa White"
],
[
"Milbenkäse"
],
[
"Milleens"
],
[
"Mimolette (Boule de Lille)"
],
[
"Minas cheese"
],
[
"Minger"
],
[
"Mirabo Brie with Walnut"
],
[
"Miss Muffet"
],
[
"Mladi Trapist"
],
[
"Molbo"
],
[
"Mondseer"
],
[
"Mont D'or"
],
[
"Mont St-Benoît"
],
[
"Montagnolo"
],
[
"Montasio"
],
[
"Montasio Mezzano"
],
[
"Montasio Vecchio"
],
[
"Monteo"
],
[
"Montgomery's Cheddar"
],
[
"Montsalvat"
],
[
"Moody Blue"
],
[
"Moonlight Chaource"
],
[
"Morbier"
],
[
"Morgan"
],
[
"Morimoto Soba Ale Cheddar"
],
[
"Morlacco"
],
[
"Moses Sleeper"
],
[
"Mossfield Organic"
],
[
"MouCo Camembert"
],
[
"MouCo Truffello"
],
[
"Mountain Herbs Rebel"
],
[
"Mountain Rebel"
],
[
"Mountaineer"
],
[
"Mouse House Chilli Cheddar"
],
[
"Mouse House Garlic & Chive Cheddar"
],
[
"Mouse House Smoked Cheddar"
],
[
"Mozzarellissima"
],
[
"Mt Scott"
],
[
"Mt Tam"
],
[
"Muenster"
],
[
"Muffato"
],
[
"Mun-chee"
],
[
"Munster"
],
[
"Muranda Blue"
],
[
"Murol"
],
[
"Mycella"
],
[
"Météorite"
],
[
"Pacific Rock"
],
[
"Pack Square"
],
[
"Paesanella Bocconcini"
],
[
"Paesanella Burrata"
],
[
"Paesanella Caciotta"
],
[
"Paesanella Caciotta with Rocket & Chilli"
],
[
"Paesanella Cherry Bocconcini"
],
[
"Paesanella Dry Ricotta"
],
[
"Paesanella Fresco"
],
[
"Paesanella Fresh Ricotta"
],
[
"Palet de Babligny"
],
[
"Pallone di Gravina"
],
[
"Panela"
],
[
"Paniolo"
],
[
"Pannerone"
],
[
"Panquehue"
],
[
"Paprika Rebel"
],
[
"Parmesan"
],
[
"Parrano"
],
[
"Pas de l'Escalette"
],
[
"Passendale"
],
[
"Patefine Fort"
],
[
"Pave d'Affinois"
],
[
"Pave d'Auge"
],
[
"Pawlet"
],
[
"Peau Rouge"
],
[
"Peekskill Pyramid"
],
[
"Pembrokeshire Extra Mature Cheddar"
],
[
"Pembrokeshire Mature Cheddar"
],
[
"Penbryn"
],
[
"Pencarreg"
],
[
"PepBert"
],
[
"Pepper Jack"
],
[
"Pepper Rebel"
],
[
"Peppercorn Gouda"
],
[
"Perl Las Blue"
],
[
"Perl Wen"
],
[
"Perlagrigia Sotto Cenere"
],
[
"Petida"
],
[
"Petit Pardou"
],
[
"Petit-Suisse"
],
[
"Petite Swiss"
],
[
"Pianoforte"
],
[
"Piave"
],
[
"Piave Fresco"
],
[
"Piave Mezzano"
],
[
"Piave Vecchio DOP"
],
[
"Piave Vecchio Selezione Oro"
],
[
"Picobello"
],
[
"Picolo"
],
[
"Picos de Europa"
],
[
"Pied-de-vent"
],
[
"Pierce Pt"
],
[
"Pimento"
],
[
"Pinconning"
],
[
"Piora"
],
[
"Pistol Point Cheddar"
],
[
"Pitchfork Cheddar"
],
[
"Pithtiviers au Foin"
],
[
"Pizy"
],
[
"Pleasant Ridge Reserve"
],
[
"Plymouth Cheese"
],
[
"Point Reyes Bay Blue"
],
[
"Point Reyes Original Blue"
],
[
"Point Reyes Toma"
],
[
"Pokolbin"
],
[
"Pompeii"
],
[
"Pong's Extraordinary... Cheddar"
],
[
"Pont l'Eveque"
],
[
"Port Nicholson"
],
[
"Port-Salut"
],
[
"Postel"
],
[
"Prairie Breeze Cheddar"
],
[
"Prastost"
],
[
"President Brie"
],
[
"President Camembert"
],
[
"President Light Brie"
],
[
"President Madrigal"
],
[
"Prima Donna"
],
[
"Prima Donna fino"
],
[
"Prima Donna leggero"
],
[
"Prima Donna maturo"
],
[
"Prince-Jean"
],
[
"Prix de Diane"
],
[
"Processed Smoked Gouda"
],
[
"Promontory"
],
[
"Provel"
],
[
"Provolone"
],
[
"Provolone del Monaco"
],
[
"Provolone Mandarino Gran Riserva"
],
[
"Provolone Valpadana"
],
[
"Pyengana Cheddar"
],
[
"Saaland Pfarr"
],
[
"Saanenkaese"
],
[
"Saga"
],
[
"Sage Derby"
],
[
"Saint Agur"
],
[
"Saint Albray"
],
[
"Saint André"
],
[
"Saint Felicien"
],
[
"Saint Honoré"
],
[
"Saint Marcellin"
],
[
"Saint Nectaire"
],
[
"Saint Paulin"
],
[
"Salemville Amish Blue"
],
[
"Salemville Amish Gorgonzola"
],
[
"Salemville Smokehaus Blue"
],
[
"Salers"
],
[
"Salsa Asiago"
],
[
"Samso"
],
[
"San Geronimo"
],
[
"San Simón DOP"
],
[
"Sao Jorge"
],
[
"Sap Sago"
],
[
"Saporito"
],
[
"Sardo"
],
[
"Sartori Classic Cheese Asiago"
],
[
"Sartori Classic Cheese Fontina"
],
[
"Sartori Classic Cheese Parmesan"
],
[
"Sartori Classic Cheese Romano"
],
[
"Sartori Classic MontAmore"
],
[
"Sartori Limited Edition Cannella BellaVitano"
],
[
"Sartori Limited Edition Cognac BellaVitano"
],
[
"Sartori Limited Edition Family Heirloom BellaVitano"
],
[
"Sartori Limited Edition Family Heirloom Parmesan"
],
[
"Sartori Reserve Balsamic BellaVitano"
],
[
"Sartori Reserve Basil & Olive Oil Asiago"
],
[
"Sartori Reserve BellaVitano Gold"
],
[
"Sartori Reserve Black Pepper BellaVitano"
],
[
"Sartori Reserve Chai BellaVitano"
],
[
"Sartori Reserve Cheese Mediterranean Fontina"
],
[
"Sartori Reserve Dolcina Gorgonzola"
],
[
"Sartori Reserve Espresso BellaVitano"
],
[
"Sartori Reserve Extra Aged Fontina"
],
[
"Sartori Reserve Extra-Aged Asiago"
],
[
"Sartori Reserve Merlot BellaVitano"
],
[
"Sartori Reserve Raspberry BellaVitano"
],
[
"Sartori Reserve Rosemary & Olive Oil Asiago"
],
[
"Sartori Reserve SarVecchio Parmesan"
],
[
"Sbrinz"
],
[
"Scallion Onion Cheddar"
],
[
"Scamorza"
],
[
"Schloss"
],
[
"Scotch Bonnet Cheddar"
],
[
"Sea Change"
],
[
"Seahive"
],
[
"Seastack"
],
[
"Seator's Orkney"
],
[
"Selva"
],
[
"Seriously Strong Cheddar"
],
[
"Sharon Hollow Garlic and Chive"
],
[
"Sharp Cheddar"
],
[
"Sharpham"
],
[
"Sharpham Elmhirst"
],
[
"Sharpham Rustic"
],
[
"Sharpham Rustic Chive & Garlic"
],
[
"Shelburne Cheddar"
],
[
"Ships Wheel Brie"
],
[
"Shorrock's Lancashire Bomb"
],
[
"Shropshire Blue"
],
[
"Shtayburne Farm Cheddar"
],
[
"Shtayburne Farm Monterey Jack"
],
[
"Sicilian Blend"
],
[
"Smoked Fior Di Latte"
],
[
"Smoked Lincolnshire Poacher"
],
[
"Smokey Oregon Blue"
],
[
"Smokey Touvelle"
],
[
"Somerset Brie"
],
[
"Somerset Organic Cheddar"
],
[
"Sonoma Jack"
],
[
"Sottocenere® al Tartufo"
],
[
"Soumaintrain"
],
[
"Sourire Lozerien"
],
[
"Sparkenhoe Red Leicester"
],
[
"Speziato"
],
[
"St Andrews Farmhouse Cheddar"
],
[
"St Cera"
],
[
"St Fidèle Swiss"
],
[
"St Gall"
],
[
"St Jude"
],
[
"St Killian"
],
[
"St Mang Original Allgäuer Limburger"
],
[
"St Pat"
],
[
"Staffordshire Organic"
],
[
"Stella Asiago"
],
[
"Stella Black Pepper Romano"
],
[
"Stella Blue"
],
[
"Stella Feta"
],
[
"Stella Fontina"
],
[
"Stella Fontinella"
],
[
"Stella Gorgonzola"
],
[
"Stella Italian Sharp"
],
[
"Stella Kasseri"
],
[
"Stella Mediterranean Parmesan"
],
[
"Stella Parmesan"
],
[
"Stella Parmesan & Romano Blend"
],
[
"Stella Reduced Fat Blue"
],
[
"Stella Smoked Blue"
],
[
"Stella Swiss"
],
[
"Sternschnuppe"
],
[
"Stichelton"
],
[
"Stilton"
],
[
"Stinking Bishop"
],
[
"Stoney Cross"
],
[
"Stracchinata"
],
[
"Strathdon Blue"
],
[
"Striegistaler Zwerge Camembert"
],
[
"Suffolk Punch"
],
[
"Sveciaost"
],
[
"Swiss cheese"
]
],
"hovertemplate": "<b>%{hovertext}</b><br><br>milk=cow<br>latitude=%{lat}<br>longitude=%{lon}<br>cheese=%{customdata[0]}<extra></extra>",
"hovertext": [
"Aarewasser",
"Abbaye de Belval",
"Abbaye de Citeaux",
"Abbaye de Tamié",
"Abbaye de Timadeuc",
"Abbaye du Mont des Cats",
"Abbots Gold",
"Abondance",
"Adelost",
"ADL Brick Cheese",
"ADL Mild Cheddar",
"Affidelice au Chablis",
"Affineur Walo Rotwein Sennechäs",
"Afuega'l Pitu",
"Aged British Cheddar",
"Aged Cheddar",
"Aggiano",
"Airedale",
"Aisy Cendre",
"Alex James Co. No 1 Cheddar",
"Alex James Co. No 2 Blue Monday",
"Alex James Co. No 3 Valley Brie",
"Alex James Co. No 5 Grunge",
"Alisia-Victoria",
"Allgauer Emmentaler",
"Alma Vorarlberger Alpkäse (3-5 months)",
"Alma Vorarlberger Alpkäse (6-9 months)",
"Alma Vorarlberger Bergkäse (10 months)",
"Alma Vorarlberger Bergkäse (12 months)",
"Alma Vorarlberger Bergkäse (6 months)",
"Almnäs Tegel",
"Alpe di Frabosa",
"Alpha Tolman",
"Alpine Gold",
"Alpkäse",
"Alps Rebel",
"Alta Badia",
"Amablu Blue cheese",
"Ameribella",
"American Cheese",
"Ami du Chambertin",
"Amish Frolic",
"Amul Cheese Spread",
"Amul Emmental",
"Amul Gouda",
"Amul Pizza Mozzarella Cheese",
"Anniversary Ale Cheddar",
"Anster",
"Appalachian",
"Appenzeller",
"Apple Walnut Smoked",
"Appleby's Double Gloucester",
"Applewood",
"Ardrahan",
"Arådalen",
"Ascutney Mountain",
"Asher Blue",
"Ashley",
"Asiago DOP",
"Asiago dAllevo DOP",
"Asiago Pressato DOP",
"Auld Lochnagar",
"Auld Reekie",
"Aura",
"Austrian Alps cheese",
"Avaxtskyr",
"Avonlea Clothbound Cheddar",
"Baby Brie",
"Baby Swiss",
"Babybel",
"Baguette Laonnaise",
"Baita Friuli",
"Balaton",
"Baluchon",
"Bandal",
"Barambah Organics Marinated Feta",
"Barber's 1833",
"Barberey",
"Barden Blue",
"Barely Buzzed",
"Barlocco",
"Baron Bigod",
"Baron Bigod Baby Truffle",
"Barricato al Pepe",
"Barry's Bay Cheddar",
"Basils Original Rauchkäse",
"Basket Cheese",
"Bassigny au porto",
"Bath Blue",
"Bath Soft Cheese",
"Bath Soft Cheese Truffled",
"Bavaria blu",
"Bavarian Bergkase",
"Bayley Hazen Blue",
"Baylough",
"Beach Box Brie",
"Beaufort",
"Beaumont",
"Beauvale",
"Beauvoorde",
"Beehive Fresh",
"Beemster Aged",
"Beemster Classic",
"Beemster Extra Aged (XO)",
"Beemster Graskaas",
"Bega Processed Cheddar",
"Bel Ceillo",
"Bel Paese",
"Bella Lodi",
"Belle Creme",
"Belletoile",
"Bellwether Farms Crescenza",
"Bent River",
"Bergader",
"Bergues",
"Bermondsey Hard Pressed",
"Bethmale des Pyrenees",
"Bianco",
"Bierkase",
"Big John's Cajun",
"Big Rock Blue",
"Binnorie Marinated Fetta",
"Bishop Kennedy",
"Bix",
"Black Bomber Cheddar",
"Blacksticks Blue",
"Blaenafon Pwll Ddu",
"Blarney Castle",
"Bleu Bénédictin",
"Bleu d'Auvergne",
"Bleu de Laqueuille",
"Bleu Des Causses",
"Bleu L'Ermite",
"Bleu Mont Dairy Bandaged Cheddar",
"Bleubry",
"Blu '61",
"Blue Castello",
"Blue Clouds",
"Blue Earth",
"Blue Vein (Australian)",
"Blue Wensleydale",
"Blue Yonder",
"Bluebell",
"Blythedale Camembert Vermont™",
"Boeren-Leidse met sleutels",
"Boivin Extra Aged Cheddar",
"Boivin Marbled Cheddar",
"Boivin Medium Cheddar",
"Bonchester",
"Bonifaz",
"Boo Boo Baby Swiss",
"Bothwell Black Truffle Cheddar",
"Boulette d'Avesnes",
"Bouncing Berry",
"Boursault",
"Boursin",
"Bouyssou",
"Bra Duro DOP",
"Braudostur",
"Breakfast Cheese",
"Bresse Bleu",
"Brewer's Gold",
"Brick",
"Bridgewater",
"Brie",
"Brie au poivre (Brie with pepper)",
"Brie Coco",
"Brie d'Alexis",
"Brie de Meaux",
"Brie de Melun",
"Brie de Portneuf",
"Brie de Portneuf Double Cream",
"Brillat-Savarin",
"Brillo di Treviso",
"Brimstone",
"Brin",
"Briscola",
"Brise du Matin",
"Bruder Basil",
"Brusselae Kaas (Fromage de Bruxelles)",
"Brutal Blue",
"Burwash Rose",
"Burwood Bole",
"Butte",
"Buttermilk Blue",
"Buttermilk Blue Affinee",
"Buttermilk Gorgonzola",
"Butternut",
"Buxton Blue",
"Caboc",
"Cabot Clothbound",
"Cabrales",
"Caciobarricato",
"Caciobirraio",
"Caciocavallo",
"Caciocavallo Podolico Vetus",
"Cacow Belle",
"Caerphilly",
"Cahill's Irish Porter Cheddar",
"Cahill's Whiskey Cheese",
"cambazola",
"Cambozola Grand Noir",
"Cambus oMay",
"Camembert",
"Camembert Calvados",
"Camembert de Normandie",
"Camembert de Portneuf",
"Camembert des Camarades",
"Campfire",
"Canastra cheese",
"Cancoillotte (Cancoyotte)",
"Cantal",
"Caprice des Dieux",
"Carabiner",
"Carlina",
"Carlow",
"Carmody",
"Carnia Altobut",
"Caronzola",
"Carr Valley Glacier Wildfire Blue",
"Carre de l'Est",
"Carrick",
"Carrot Rebel",
"Carrowholly",
"Cashel Blue",
"Castle Blue",
"Cathelain",
"Catupiry",
"Cave Rebel",
"Caveman Blue",
"Caws Penhelyg Abaty",
"Cello Thick & Smooth Mascarpone",
"Celtic Promise",
"Cendre d'Olivet",
"Cendré des Prés",
"Challerhocker",
"Champignon de Luxe Garlic",
"Champignon de Luxe Pepper",
"Champignon Mushrooom",
"Chaource",
"Chapman's Pasture",
"Chaumes",
"Checkerboard Cheddar",
"Cheddar",
"Cheddar LaDiDa Lavender",
"Cheddar with Irish Porter",
"Cheddar with Red Wine",
"Cherokee Rose",
"Cheshire",
"Chimney Rock",
"Chiriboga Blue",
"Chocolate Lab",
"Chocolate Stout Cheddar",
"Chontaleno",
"Chorlton Blue Cheshire",
"Château de Versailles",
"Cirrus",
"Classics Fresh Mozzarella",
"Clava Brie",
"Coalho",
"Coastal Cheddar",
"Coeur de Camembert au Calvados",
"Colby",
"Cold Pack",
"ColoRouge",
"Colston Bassett Stilton",
"Comox Brie",
"Comox Camembert",
"Comte",
"Comte 12 months",
"Comte 18 months",
"Comtomme",
"Conciato Al Pepe",
"Condio",
"Connemara",
"Coolattin Cheddar",
"Coolea",
"Cooleney",
"Coquetdale",
"Cornish Blue",
"Cornish Brie",
"Cornish Crumbly",
"Cornish Pepper",
"Cornish Smuggler",
"Cornish Wild Garlic Yarg",
"Cornish Yarg",
"Cote Hill Blue",
"Cotherstone",
"Cotija Cheese",
"Cotswold",
"Cottage Cheese (Australian)",
"Cougar Gold",
"Coulommiers",
"Country Morning",
"Coverdale",
"Cow's Milk Gouda",
"Cranborne",
"Cravero Parmigiano Reggiano",
"Crayeux de Roncq",
"Cream Cheese",
"Cream Havarti",
"Creamy Gouda",
"Creamy Lancashire",
"Cremig Extra Würzig, Bergkäse Aus Dem Schweizer Jura",
"Crescenza-Stracchino",
"Criffel",
"Criollo Cheese",
"Crowdie",
"Crowley",
"Crucolo",
"Crumbly Lancashire",
"CréMonté",
"Cup Cheese",
"Cure Nantais",
"Curworthy",
"L'Affine Au Chablis",
"L'Amuse Brabander Goat Gouda",
"L'Amuse Signature Gouda",
"L'Aveyronnais",
"L'Ecir de l'Aubrac",
"L'Étivaz",
"La Bonaparte",
"La Casatella",
"La Fleurie",
"La Peral",
"La Rumeur",
"La Sauvagine",
"La Sauvagine Réserve",
"La Vache Qui Rit cheese",
"Labneh",
"Lacy Swiss",
"Lady Jane",
"Laganory",
"Laguiole",
"Lajta",
"Lake District Extra Mature Cheddar",
"Lake District Mature Cheddar",
"Lancashire Smoked",
"Landaff",
"Langres",
"Lappi",
"Largo",
"Latteria Navel",
"Latteria San Biagio",
"Lavistown",
"Le Brin",
"Le Conquerant Camembert",
"Le Duc Vacherin",
"Le Gruyère AOP",
"Le Maréchal",
"Le Wavreumont",
"Leerdammer",
"Legacy",
"Legato",
"Les Calendos",
"Leyden",
"Lil Moo",
"Liliputas",
"Lincolnshire Poacher",
"Lindale",
"Lindy Hop",
"Liptauer",
"Little Colonel",
"Little Qualicum Raclette",
"Livarot",
"Llanboidy",
"Llanglofan Farmhouse",
"Lo Speziato",
"Loch Arthur Farmhouse",
"Loma Alta",
"Longhorn",
"Lou Bergier Pichin",
"Lou Palou",
"Lyburn Garlic and Nettle",
"Lyburn Gold",
"Lyburn Lightly Oak Smoked",
"Lyburn's Winchester",
"Maasdam",
"Maffra Aged Rinded Cheddar",
"Maffra Cheshire",
"Maffra Dargo Walnut",
"Maffra Mature Cheddar",
"Maffra Peppercorn Cheddar",
"Maffra Red Leicester",
"Maffra Sage Derby",
"Maffra Wensleydale",
"Maggie's Round",
"Magna",
"Mahoe Aged Gouda",
"Mahón",
"Maida Vale",
"Maisie's Kebbuck",
"Mandolin",
"Mango Rebel",
"Manteca",
"Marble Cheddar",
"Marble Cheese",
"Marco Polo",
"Maredsous",
"Margot",
"Maribo",
"Marin French Triple Crème",
"Maroilles",
"Martha's Heat",
"Mascarpone",
"Mature Wensleydale",
"May Hill Green",
"Maytag Blue",
"McLaren",
"Medallion",
"Melinda Mae",
"Menallack Farmhouse",
"Menonita",
"Merry Wyfe",
"Mersey Valley Original Vintage",
"Meyer Vintage Gouda",
"MezzaLuna Fontina",
"Mezzo Secco",
"Milawa Blue",
"Milawa Brie",
"Milawa White",
"Milbenkäse",
"Milleens",
"Mimolette (Boule de Lille)",
"Minas cheese",
"Minger",
"Mirabo Brie with Walnut",
"Miss Muffet",
"Mladi Trapist",
"Molbo",
"Mondseer",
"Mont D'or",
"Mont St-Benoît",
"Montagnolo",
"Montasio",
"Montasio Mezzano",
"Montasio Vecchio",
"Monteo",
"Montgomery's Cheddar",
"Montsalvat",
"Moody Blue",
"Moonlight Chaource",
"Morbier",
"Morgan",
"Morimoto Soba Ale Cheddar",
"Morlacco",
"Moses Sleeper",
"Mossfield Organic",
"MouCo Camembert",
"MouCo Truffello",
"Mountain Herbs Rebel",
"Mountain Rebel",
"Mountaineer",
"Mouse House Chilli Cheddar",
"Mouse House Garlic & Chive Cheddar",
"Mouse House Smoked Cheddar",
"Mozzarellissima",
"Mt Scott",
"Mt Tam",
"Muenster",
"Muffato",
"Mun-chee",
"Munster",
"Muranda Blue",
"Murol",
"Mycella",
"Météorite",
"Pacific Rock",
"Pack Square",
"Paesanella Bocconcini",
"Paesanella Burrata",
"Paesanella Caciotta",
"Paesanella Caciotta with Rocket & Chilli",
"Paesanella Cherry Bocconcini",
"Paesanella Dry Ricotta",
"Paesanella Fresco",
"Paesanella Fresh Ricotta",
"Palet de Babligny",
"Pallone di Gravina",
"Panela",
"Paniolo",
"Pannerone",
"Panquehue",
"Paprika Rebel",
"Parmesan",
"Parrano",
"Pas de l'Escalette",
"Passendale",
"Patefine Fort",
"Pave d'Affinois",
"Pave d'Auge",
"Pawlet",
"Peau Rouge",
"Peekskill Pyramid",
"Pembrokeshire Extra Mature Cheddar",
"Pembrokeshire Mature Cheddar",
"Penbryn",
"Pencarreg",
"PepBert",
"Pepper Jack",
"Pepper Rebel",
"Peppercorn Gouda",
"Perl Las Blue",
"Perl Wen",
"Perlagrigia Sotto Cenere",
"Petida",
"Petit Pardou",
"Petit-Suisse",
"Petite Swiss",
"Pianoforte",
"Piave",
"Piave Fresco",
"Piave Mezzano",
"Piave Vecchio DOP",
"Piave Vecchio Selezione Oro",
"Picobello",
"Picolo",
"Picos de Europa",
"Pied-de-vent",
"Pierce Pt",
"Pimento",
"Pinconning",
"Piora",
"Pistol Point Cheddar",
"Pitchfork Cheddar",
"Pithtiviers au Foin",
"Pizy",
"Pleasant Ridge Reserve",
"Plymouth Cheese",
"Point Reyes Bay Blue",
"Point Reyes Original Blue",
"Point Reyes Toma",
"Pokolbin",
"Pompeii",
"Pong's Extraordinary... Cheddar",
"Pont l'Eveque",
"Port Nicholson",
"Port-Salut",
"Postel",
"Prairie Breeze Cheddar",
"Prastost",
"President Brie",
"President Camembert",
"President Light Brie",
"President Madrigal",
"Prima Donna",
"Prima Donna fino",
"Prima Donna leggero",
"Prima Donna maturo",
"Prince-Jean",
"Prix de Diane",
"Processed Smoked Gouda",
"Promontory",
"Provel",
"Provolone",
"Provolone del Monaco",
"Provolone Mandarino Gran Riserva",
"Provolone Valpadana",
"Pyengana Cheddar",
"Saaland Pfarr",
"Saanenkaese",
"Saga",
"Sage Derby",
"Saint Agur",
"Saint Albray",
"Saint André",
"Saint Felicien",
"Saint Honoré",
"Saint Marcellin",
"Saint Nectaire",
"Saint Paulin",
"Salemville Amish Blue",
"Salemville Amish Gorgonzola",
"Salemville Smokehaus Blue",
"Salers",
"Salsa Asiago",
"Samso",
"San Geronimo",
"San Simón DOP",
"Sao Jorge",
"Sap Sago",
"Saporito",
"Sardo",
"Sartori Classic Cheese Asiago",
"Sartori Classic Cheese Fontina",
"Sartori Classic Cheese Parmesan",
"Sartori Classic Cheese Romano",
"Sartori Classic MontAmore",
"Sartori Limited Edition Cannella BellaVitano",
"Sartori Limited Edition Cognac BellaVitano",
"Sartori Limited Edition Family Heirloom BellaVitano",
"Sartori Limited Edition Family Heirloom Parmesan",
"Sartori Reserve Balsamic BellaVitano",
"Sartori Reserve Basil & Olive Oil Asiago",
"Sartori Reserve BellaVitano Gold",
"Sartori Reserve Black Pepper BellaVitano",
"Sartori Reserve Chai BellaVitano",
"Sartori Reserve Cheese Mediterranean Fontina",
"Sartori Reserve Dolcina Gorgonzola",
"Sartori Reserve Espresso BellaVitano",
"Sartori Reserve Extra Aged Fontina",
"Sartori Reserve Extra-Aged Asiago",
"Sartori Reserve Merlot BellaVitano",
"Sartori Reserve Raspberry BellaVitano",
"Sartori Reserve Rosemary & Olive Oil Asiago",
"Sartori Reserve SarVecchio Parmesan",
"Sbrinz",
"Scallion Onion Cheddar",
"Scamorza",
"Schloss",
"Scotch Bonnet Cheddar",
"Sea Change",
"Seahive",
"Seastack",
"Seator's Orkney",
"Selva",
"Seriously Strong Cheddar",
"Sharon Hollow Garlic and Chive",
"Sharp Cheddar",
"Sharpham",
"Sharpham Elmhirst",
"Sharpham Rustic",
"Sharpham Rustic Chive & Garlic",
"Shelburne Cheddar",
"Ships Wheel Brie",
"Shorrock's Lancashire Bomb",
"Shropshire Blue",
"Shtayburne Farm Cheddar",
"Shtayburne Farm Monterey Jack",
"Sicilian Blend",
"Smoked Fior Di Latte",
"Smoked Lincolnshire Poacher",
"Smokey Oregon Blue",
"Smokey Touvelle",
"Somerset Brie",
"Somerset Organic Cheddar",
"Sonoma Jack",
"Sottocenere® al Tartufo",
"Soumaintrain",
"Sourire Lozerien",
"Sparkenhoe Red Leicester",
"Speziato",
"St Andrews Farmhouse Cheddar",
"St Cera",
"St Fidèle Swiss",
"St Gall",
"St Jude",
"St Killian",
"St Mang Original Allgäuer Limburger",
"St Pat",
"Staffordshire Organic",
"Stella Asiago",
"Stella Black Pepper Romano",
"Stella Blue",
"Stella Feta",
"Stella Fontina",
"Stella Fontinella",
"Stella Gorgonzola",
"Stella Italian Sharp",
"Stella Kasseri",
"Stella Mediterranean Parmesan",
"Stella Parmesan",
"Stella Parmesan & Romano Blend",
"Stella Reduced Fat Blue",
"Stella Smoked Blue",
"Stella Swiss",
"Sternschnuppe",
"Stichelton",
"Stilton",
"Stinking Bishop",
"Stoney Cross",
"Stracchinata",
"Strathdon Blue",
"Striegistaler Zwerge Camembert",
"Suffolk Punch",
"Sveciaost",
"Swiss cheese"
],
"lat": [
46.7985624,
46.603354,
47.27808725,
45.494895150000005,
46.603354,
50.5289634,
54.13453275,
46.603354,
59.6749712,
46.3355508,
46.3355508,
47.27808725,
46.7985624,
43.3133868,
43.1561681,
39.7837304,
39.4225192,
-41.5000831,
47.27808725,
54.7023545,
54.7023545,
54.7023545,
54.7023545,
46.7985624,
48.15313125,
47.25,
47.25,
47.387028799999996,
47.387028799999996,
47.387028799999996,
58.215850200000006,
42.6384261,
36.0726355,
55.001251,
46.7985624,
47.52121792021591,
42.6384261,
39.7837304,
40.3270127,
39.7837304,
47.2261857,
41.2222218,
22.3850051,
22.3850051,
22.3850051,
22.3850051,
34.3129464,
56.3333331,
37.1232245,
46.7985624,
39.4225192,
51.7643786,
51.161750850000004,
52.1837912,
62.9974877,
44.5990718,
32.3293809,
38.7251776,
45.6476663,
45.6476663,
45.6476663,
56.7861112,
56.7861112,
62.6032186,
46.7985624,
64.9841821,
46.3355508,
46.603354,
40.5067308,
46.603354,
48.5499833,
46.151042,
47.1817585,
52.4760892,
22.9964948,
-27.4689682,
52.5310214,
48.2971626,
43.356893,
39.4225192,
56.7861112,
52.5310214,
52.5310214,
42.6384261,
-41.5000831,
51.1638175,
39.3014159,
50.6402809,
51.50076785,
51.50076785,
54.7023545,
51.1638175,
51.1638175,
36.0726355,
52.68482145,
-38.3312575,
46.603354,
45.3175313,
53.1188177,
51.096246199999996,
39.4225192,
52.2434979,
52.2434979,
52.2434979,
52.2434979,
-24.7761086,
43.1561681,
45.5703694,
45.2613104,
52.4760892,
46.603354,
38.5110803,
44.1634663,
51.1638175,
50.9683886,
51.4970125,
48.8738565,
51.1638175,
51.1638175,
39.4225192,
36.7014631,
-32.7792106,
56.3822607,
54.7023545,
54.7023545,
54.7023545,
52.2928116,
51.9325233,
52.4760892,
45.2968119,
45.6507627,
46.603354,
52.4760892,
44.4308975,
52.4760892,
45.6476663,
55.670249,
54.7023545,
44.1634663,
-24.7761086,
54.13453275,
43.1561681,
56.7861112,
44.5990718,
52.1594747,
52.4760892,
52.4760892,
52.4760892,
56.7861112,
51.1638175,
39.4225192,
55.001251,
50.5495906,
54.7023545,
46.603354,
49.0291802,
44.315857449999996,
45.060735,
64.9841821,
36.7014631,
46.603354,
52.5362671,
44.4308975,
42.2813722,
46.603354,
46.603354,
52.4760892,
52.4760892,
48.6443057,
48.6443057,
52.4760892,
52.4760892,
48.6443057,
45.6476663,
38.7604815,
45.2968119,
45.6476663,
52.4760892,
48.9467562,
50.6402809,
43.9792797,
53.960910892985034,
50.79683685,
46.603354,
44.4308975,
44.4308975,
44.4308975,
44.5990718,
53.2593422,
56.7861112,
44.5990718,
39.3260685,
45.6476663,
45.6476663,
42.6384261,
42.6384261,
43.9792797,
52.41446365,
52.865196,
52.518831649999996,
51.1638175,
47.5926009,
57.166667,
46.603354,
46.603354,
49.0677708,
52.4760892,
52.4760892,
48.1179702,
-20.1615,
46.603354,
46.603354,
48.2089823,
36.7014631,
45.6476663,
52.69078865,
36.7014631,
46.3738716,
52.4760892,
44.4308975,
46.603354,
56.7861112,
47.52121792021591,
53.9087056,
52.865196,
55.001251,
46.603354,
-10.3333333,
47.52121792021591,
43.9792797,
52.2928116,
39.7837304,
52.2945764,
47.5490251,
52.4760892,
47.1561047,
47.5926009,
47.5926009,
47.5926009,
46.603354,
44.5990718,
44.0361186,
43.1561681,
52.5310214,
43.9792797,
52.400645600000004,
52.400645600000004,
32.3293809,
54.7023545,
36.7014631,
47.8241593,
40.6333724,
43.9792797,
23.6585116,
53.2141028,
52.4760892,
48.1179702,
44.4308975,
56.7861112,
-10.3333333,
50.79683685,
48.953684499999994,
44.5684775,
44.4308975,
38.7251776,
53.1188177,
55.001251,
52.4760892,
46.603354,
46.603354,
46.603354,
52.4760892,
45.6476663,
45.735099578237005,
40.6333724,
52.69078865,
52.865196,
52.4734839,
54.88091196980861,
50.443348900000004,
50.443348900000004,
51.7561518,
52.5310214,
51.7561518,
52.5310214,
52.5310214,
53.1823034,
54.570244,
23.6585116,
51.9425914,
-24.7761086,
46.7304268,
46.603354,
55.001251,
54.13453275,
45.709097,
50.79683685,
44.5384728,
50.7531232,
39.7837304,
55.670249,
52.2434979,
52.5310214,
47.3566699,
42.6384261,
55.166667,
18.5565446,
56.7861112,
44.5990718,
42.6384261,
52.5310214,
48.536217,
40.9699889,
45.3462,
50.724140500000004,
46.603354,
52.2434979,
52.2434979,
46.603354,
45.2968119,
46.7985624,
52.4760892,
45.6476663,
44.5990718,
39.3260685,
52.4760892,
52.4760892,
52.4760892,
46.603354,
39.3014159,
39.7837304,
55.001251,
56.7861112,
44.315857449999996,
47.1817585,
54.478530449999994,
54.478530449999994,
52.5310214,
43.4849133,
46.603354,
67.69291045,
36.7014631,
42.6384261,
45.6476663,
52.5362671,
45.2968119,
49.0356178,
48.68347355,
46.7985624,
46.7985624,
50.154540049999994,
51.920458,
38.7604815,
36.7014631,
52.4760892,
52.1594747,
32.3293809,
55.0820118,
52.5310214,
35.6729639,
44.5990718,
42.2813722,
50.79683685,
55.001251,
46.603354,
51.893669849999995,
51.8339209,
45.806691349999994,
55.0691397,
36.7014631,
44.5684775,
45.060735,
48.8738565,
50.9700788,
50.9700788,
50.9700788,
50.9700788,
52.4601118,
-37.87448275,
-37.87448275,
-37.87448275,
-37.87448275,
-37.87448275,
-37.87448275,
-37.87448275,
-37.87448275,
42.3788774,
62.9974877,
52.2434979,
39.949257200000005,
52.5310214,
55.5752966,
-30.5343665,
47.52121792021591,
40.500571,
54.7023545,
54.7023545,
47.6038321,
50.6402809,
45.060735,
54.7758018,
38.2325829,
46.603354,
-38.3312575,
45.5703694,
54.13453275,
51.7643786,
41.9216734,
-30.5343665,
45.709097,
40.375713,
52.5310214,
23.6585116,
51.0339991,
-42.035067,
-37.7878809,
44.4308975,
38.5110803,
-37.8633951,
-37.8633951,
-24.7761086,
51.1638175,
51.7280451,
46.603354,
-18.5264844,
56.7861112,
48.9467562,
51.7561518,
43.538796500000004,
56.187042,
47.59397,
46.603354,
52.4760892,
51.1638175,
42.6384261,
42.6384261,
42.6384261,
45.6476663,
54.7023545,
48.536217,
44.4308975,
40.7127281,
46.603354,
45.709097,
43.9792797,
45.6476663,
44.5990718,
53.13617215,
38.7251776,
38.7251776,
47.52121792021591,
47.52121792021591,
36.6612387,
52.5310214,
52.5310214,
52.5310214,
39.7837304,
-45.0321923,
36.7014631,
39.7837304,
45.806691349999994,
44.8766431,
46.603354,
43.1561681,
46.603354,
55.143122399999996,
52.4760892,
52.4760892,
40.6333724,
-24.7761086,
-24.7761086,
-24.7761086,
-24.7761086,
-24.7761086,
-24.7761086,
-24.7761086,
-24.7761086,
47.27808725,
40.819725,
23.6585116,
44.5990718,
45.2613104,
-33.030515957094444,
47.52121792021591,
42.6384261,
51.5246,
44.74693,
50.9003015,
45.28979315,
46.603354,
46.603354,
44.5990718,
52.4760892,
41.289811,
51.8339209,
51.8339209,
52.2928116,
53.28236125,
38.7251776,
36.2231079,
47.52121792021591,
39.4225192,
54.7023545,
52.2928116,
45.6476663,
51.1638175,
42.9882368,
49.0677708,
44.4308975,
36.7014631,
45.6476663,
45.6476663,
45.6476663,
45.6476663,
45.6476663,
52.2958122,
36.7014631,
39.3260685,
52.4760892,
36.7014631,
42.2813722,
43.853633,
46.7985624,
43.9792797,
52.5310214,
47.5490251,
52.4760892,
44.4308975,
44.5990718,
36.7014631,
36.7014631,
36.7014631,
-32.5421803,
-30.5343665,
54.7023545,
46.603354,
-41.5000831,
48.2640845,
51.2874865,
41.9216734,
59.6749712,
46.603354,
40.7127281,
44.8705067,
46.603354,
52.2434979,
52.2434979,
52.2434979,
52.2434979,
50.6402809,
45.709097,
44.4308975,
39.4225192,
38.6280278,
42.6384261,
40.8358846,
45.6476663,
39.60288591417616,
-42.035067,
59.6749712,
46.7985624,
55.670249,
53.1188177,
45.2968119,
44.24620635,
46.603354,
46.603354,
52.4760892,
46.603354,
45.2968119,
46.603354,
44.4308975,
44.4308975,
44.4308975,
45.2968119,
44.4308975,
55.670249,
38.0615885,
42.61946,
37.80855645,
46.7985624,
45.806691349999994,
-34.9964963,
44.4308975,
44.4308975,
44.4308975,
44.4308975,
44.4308975,
44.4308975,
44.94725995,
44.4308975,
44.4308975,
44.4308975,
44.4308975,
44.4308975,
44.4308975,
44.4308975,
44.4308975,
44.4308975,
44.4308975,
44.4308975,
44.4308975,
44.4308975,
44.4308975,
44.4308975,
44.4308975,
47.0505452,
43.1561681,
42.6384261,
39.7837304,
54.7023545,
40.375713,
39.4225192,
48.1179702,
58.94182309999999,
41.9319675,
54.9044332,
42.2813722,
39.7837304,
50.724140500000004,
50.724140500000004,
50.724140500000004,
50.724140500000004,
34.89046225,
-38.3312575,
54.7023545,
54.7023545,
43.1561681,
43.1561681,
44.4308975,
42.6384261,
54.7023545,
43.9792797,
43.9792797,
51.161750850000004,
54.7023545,
38.5110803,
45.6476663,
46.603354,
44.3509309,
54.7023545,
45.6476663,
56.7861112,
52.5310214,
52.4760892,
51.917535900000004,
52.5310214,
53.3360017,
47.5926009,
36.7014631,
52.824694199999996,
45.8753771,
44.4308975,
44.4308975,
39.7837304,
44.4308975,
39.7837304,
39.7837304,
39.7837304,
44.4308975,
44.4308975,
39.7837304,
44.4308975,
44.4308975,
44.4308975,
44.4308975,
51.1638175,
53.1459288,
53.1185033,
54.7023545,
50.9700788,
45.6476663,
57.8119372,
47.5926009,
44.5990718,
59.6749712,
39.7837304
],
"legendgroup": "cow",
"lon": [
8.2319736,
1.8883335,
4.222486304306048,
6.384660381375652,
1.8883335,
2.454515765955904,
-1.498628491239545,
1.8883335,
14.5208584,
-63.1466676,
-63.1466676,
4.222486304306048,
8.2319736,
-5.94192,
-75.8449946,
-100.445882,
-111.714358,
172.8344077,
4.222486304306048,
-3.2765753,
-3.2765753,
-3.2765753,
-3.2765753,
8.2319736,
10.47129100603846,
9.9166667,
9.9166667,
9.95606355528393,
9.95606355528393,
9.95606355528393,
12.651820794914073,
12.674297,
-79.7919754,
-125.002441,
8.2319736,
9.91273065974192,
12.674297,
-100.445882,
-86.1746933,
-100.445882,
4.9705666,
-73.0570603,
71.745261,
71.745261,
71.745261,
71.745261,
-78.1611077,
-3.0000001,
-78.4927721,
8.2319736,
-111.714358,
-2.1880661838719386,
-3.0753867062227487,
-9.00609563330653,
14.3928671,
-72.5002608,
-83.1137366,
-105.607716,
11.8665254,
11.8665254,
11.8665254,
-4.1140518,
-4.1140518,
25.7301361,
8.2319736,
-18.1059013,
-63.1466676,
1.8883335,
-81.7848553,
1.8883335,
7.7510775,
13.055904,
19.5060937,
-71.8258668,
87.6855882,
153.0234991,
-1.2649062,
4.0746257,
-73.24966776033015,
-111.714358,
-4.1140518,
-1.2649062,
-1.2649062,
12.674297,
172.8344077,
10.4478313,
-76.5888477,
4.6667145,
-2.5503106339491204,
-2.5503106339491204,
-3.2765753,
10.4478313,
10.4478313,
-79.7919754,
-7.898147186112796,
145.08106868543985,
1.8883335,
5.721294352585611,
-1.2597068974971675,
4.178629103169916,
-111.714358,
5.6343227,
5.6343227,
5.6343227,
5.6343227,
134.755,
-75.8449946,
9.7732524,
9.491678060021837,
-71.8258668,
1.8883335,
-122.8473388,
-93.9993505,
10.4478313,
2.4325247,
-0.063268,
2.3852638,
10.4478313,
10.4478313,
-111.714358,
-118.755997,
151.2978747,
-3.36565,
-3.2765753,
-3.2765753,
-3.2765753,
-3.73893,
-8.5678665,
-71.8258668,
4.6604809,
2.7320917,
1.8883335,
-71.8258668,
-89.6884637,
-71.8258668,
11.8665254,
10.3333283,
-3.2765753,
-93.9993505,
134.755,
-1.498628491239545,
-75.8449946,
-4.1140518,
-72.5002608,
4.4908843,
-71.8258668,
-71.8258668,
-71.8258668,
-4.1140518,
10.4478313,
-111.714358,
-97.001038,
1.9721295,
-3.2765753,
1.8883335,
1.346505,
2.5065697302419823,
7.923549,
-18.1059013,
-118.755997,
1.8883335,
-7.2278963,
-89.6884637,
-83.7484616,
1.8883335,
1.8883335,
-71.8258668,
-71.8258668,
2.7537863,
2.7537863,
-71.8258668,
-71.8258668,
2.7537863,
11.8665254,
-92.5617875,
4.6604809,
11.8665254,
-71.8258668,
11.4038717,
4.6667145,
-120.737257,
-1.0833748506182423,
-2.34473226124306,
1.8883335,
-89.6884637,
-89.6884637,
-89.6884637,
-72.5002608,
-1.9100768,
-4.1140518,
-72.5002608,
-4.8379791,
11.8665254,
11.8665254,
12.674297,
12.674297,
-120.737257,
-4.0685073132923,
-7.9794599,
-8.795834650292788,
10.4478313,
10.209156,
-2.666667,
1.8883335,
1.8883335,
0.3138532,
-71.8258668,
-71.8258668,
-122.769544,
-46.76365461658604,
1.8883335,
1.8883335,
5.5615126,
-118.755997,
11.8665254,
-6.825145150844913,
-118.755997,
13.1339829,
-71.8258668,
-89.6884637,
1.8883335,
-4.1140518,
9.91273065974192,
-9.298304863654256,
-7.9794599,
-125.002441,
1.8883335,
-53.2,
9.91273065974192,
-120.737257,
-3.73893,
-100.445882,
-3.9527809990291427,
1.7324062,
-71.8258668,
9.338323,
10.209156,
10.209156,
10.209156,
1.8883335,
-72.5002608,
0.8397552,
-75.8449946,
-1.2649062,
-120.737257,
-8.571161660434711,
-8.571161660434711,
-83.1137366,
-3.2765753,
-118.755997,
11.6822424,
-90.1637318,
-120.737257,
-102.0077097,
-2.471770086071205,
-71.8258668,
-122.769544,
-89.6884637,
-4.1140518,
-53.2,
-2.34473226124306,
-0.573365358805311,
-69.66002565150262,
-89.6884637,
-105.607716,
-1.2597068974971675,
-125.002441,
-71.8258668,
1.8883335,
1.8883335,
1.8883335,
-71.8258668,
11.8665254,
7.320173335891282,
-90.1637318,
-6.825145150844913,
-7.9794599,
-8.1614446,
-1.5495607774216265,
-4.62465658489158,
-4.62465658489158,
0.4645198,
-1.2649062,
0.4645198,
-1.2649062,
-1.2649062,
-0.2031208542548153,
-1.9804176,
-102.0077097,
-2.100154122305389,
134.755,
-117.173895,
1.8883335,
-125.002441,
-1.498628491239545,
-68.8590201,
-2.34473226124306,
10.935960870530739,
3.1209016,
-100.445882,
10.3333283,
5.6343227,
-1.2649062,
7.1598893,
12.674297,
-3.5,
-99.6052838,
-4.1140518,
-72.5002608,
12.674297,
-1.2649062,
12.1516551,
-77.7278831,
4.88149,
-3.6607788161410735,
1.8883335,
5.6343227,
5.6343227,
1.8883335,
4.6604809,
8.2319736,
-71.8258668,
11.8665254,
-72.5002608,
-4.8379791,
-71.8258668,
-71.8258668,
-71.8258668,
1.8883335,
-76.5888477,
-100.445882,
-125.002441,
-4.1140518,
2.5065697302419823,
19.5060937,
-3.06553306667584,
-3.06553306667584,
-1.2649062,
-71.6553992,
1.8883335,
26.728214183162986,
-118.755997,
12.674297,
11.8665254,
-7.2278963,
4.6604809,
0.1573083324015645,
2.1776625116070027,
8.2319736,
8.2319736,
5.399359762971196,
5.1156505,
-92.5617875,
-118.755997,
-71.8258668,
4.4908843,
-83.1137366,
23.3897023,
-1.2649062,
-79.0392919,
-72.5002608,
-83.7484616,
-2.34473226124306,
-125.002441,
1.8883335,
-4.217282721429928,
-4.916667,
12.206315763116372,
-3.6107936,
-118.755997,
-69.66002565150262,
7.923549,
2.3852638,
-1.6363792,
-1.6363792,
-1.6363792,
-1.6363792,
4.6056526,
146.9111788341666,
146.9111788341666,
146.9111788341666,
146.9111788341666,
146.9111788341666,
146.9111788341666,
146.9111788341666,
146.9111788341666,
-72.032366,
14.3928671,
5.6343227,
4.0499641751186415,
-1.2649062,
-3.833333,
135.6301212,
9.91273065974192,
16.081953,
-3.2765753,
-3.2765753,
-122.330062,
4.6667145,
7.923549,
11.5054333,
-122.636465,
1.8883335,
145.08106868543985,
9.7732524,
-1.498628491239545,
-2.1880661838719386,
-93.3122705,
135.6301212,
-68.8590201,
-76.4626118,
-1.2649062,
-102.0077097,
-2.949011916021195,
146.6366887,
175.281788,
-89.6884637,
-122.8473388,
145.0100994,
145.0100994,
134.755,
10.4478313,
-9.767906428362338,
1.8883335,
-44.1588654,
-4.1140518,
11.4038717,
0.4645198,
16.175235566874342,
10.460782482125193,
14.12456,
1.8883335,
-71.8258668,
10.4478313,
12.674297,
12.674297,
12.674297,
11.8665254,
-3.2765753,
12.1516551,
-89.6884637,
-74.0060152,
1.8883335,
-68.8590201,
-120.737257,
11.8665254,
-72.5002608,
-7.810340751784169,
-105.607716,
-105.607716,
9.91273065974192,
9.91273065974192,
-80.9239671,
-1.2649062,
-1.2649062,
-1.2649062,
-100.445882,
168.661,
-118.755997,
-100.445882,
12.206315763116372,
-93.2877877,
1.8883335,
-75.8449946,
1.8883335,
14.922629658767558,
-71.8258668,
-71.8258668,
-90.1637318,
134.755,
134.755,
134.755,
134.755,
134.755,
134.755,
134.755,
134.755,
4.222486304306048,
16.422779,
-102.0077097,
-72.5002608,
9.491678060021837,
-71.5177984276482,
9.91273065974192,
12.674297,
4.280818038775446,
1.0075,
3.0203891,
5.634382477386232,
1.8883335,
1.8883335,
-72.5002608,
-71.8258668,
-73.9204922,
-4.916667,
-4.916667,
-3.73893,
-3.8286207326666837,
-105.607716,
-121.387742,
9.91273065974192,
-111.714358,
-3.2765753,
-3.73893,
11.8665254,
10.4478313,
-0.4266324,
0.3138532,
-89.6884637,
-118.755997,
11.8665254,
11.8665254,
11.8665254,
11.8665254,
11.8665254,
5.2567209,
-118.755997,
-4.8379791,
-71.8258668,
-118.755997,
-83.7484616,
-83.964987,
8.2319736,
-120.737257,
-1.2649062,
1.7324062,
-71.8258668,
-89.6884637,
-72.5002608,
-118.755997,
-118.755997,
-118.755997,
151.2185641,
135.6301212,
-3.2765753,
1.8883335,
172.8344077,
-2.9202408,
5.1897863,
-93.3122705,
14.5208584,
1.8883335,
-74.0060152,
-0.5504343,
1.8883335,
5.6343227,
5.6343227,
5.6343227,
5.6343227,
4.6667145,
-68.8590201,
-89.6884637,
-111.714358,
-90.1910154,
12.674297,
14.2487679,
11.8665254,
16.626802703803317,
146.6366887,
14.5208584,
8.2319736,
10.3333283,
-1.2597068974971675,
4.6604809,
-0.18399787392367906,
1.8883335,
1.8883335,
-71.8258668,
1.8883335,
4.6604809,
1.8883335,
-89.6884637,
-89.6884637,
-89.6884637,
4.6604809,
-89.6884637,
10.3333283,
-122.6985975,
-7.863112,
-25.473137391245295,
8.2319736,
12.206315763116372,
-64.9672817,
-89.6884637,
-89.6884637,
-89.6884637,
-89.6884637,
-89.6884637,
-89.6884637,
-91.39373410986752,
-89.6884637,
-89.6884637,
-89.6884637,
-89.6884637,
-89.6884637,
-89.6884637,
-89.6884637,
-89.6884637,
-89.6884637,
-89.6884637,
-89.6884637,
-89.6884637,
-89.6884637,
-89.6884637,
-89.6884637,
-89.6884637,
8.3054682,
-75.8449946,
12.674297,
-100.445882,
-3.2765753,
-76.4626118,
-111.714358,
-122.769544,
-3.129694439563327,
2.8090343,
-5.026204,
-83.7484616,
-100.445882,
-3.6607788161410735,
-3.6607788161410735,
-3.6607788161410735,
-3.6607788161410735,
-82.24340593189123,
145.08106868543985,
-3.2765753,
-3.2765753,
-75.8449946,
-75.8449946,
-89.6884637,
12.674297,
-3.2765753,
-120.737257,
-120.737257,
-3.0753867062227487,
-3.2765753,
-122.8473388,
11.8665254,
1.8883335,
3.8584812791602983,
-3.2765753,
11.8665254,
-4.1140518,
-1.2649062,
-71.8258668,
-8.58597726870895,
-1.2649062,
-6.4692321,
10.209156,
-118.755997,
-2.0074546723348115,
11.5106998,
-89.6884637,
-89.6884637,
-100.445882,
-89.6884637,
-100.445882,
-100.445882,
-100.445882,
-89.6884637,
-89.6884637,
-100.445882,
-89.6884637,
-89.6884637,
-89.6884637,
-89.6884637,
10.4478313,
-1.0214971168122484,
-1.5566179305872214,
-3.2765753,
-1.6363792,
11.8665254,
-4.0550663,
10.209156,
-72.5002608,
14.5208584,
-100.445882
],
"marker": {
"color": "#636efa"
},
"mode": "markers",
"name": "cow",
"showlegend": true,
"subplot": "mapbox",
"type": "scattermapbox"
},
{
"customdata": [
[
"Abbaye de Belloc"
],
[
"Abertam"
],
[
"Acorn"
],
[
"Amou"
],
[
"Ardi Gasna"
],
[
"Azeitao"
],
[
"Bad Axe"
],
[
"Balfour"
],
[
"Bartlett"
],
[
"Basajo"
],
[
"Baserri"
],
[
"Baskeriu"
],
[
"Bear Hill"
],
[
"Beenleigh Blue"
],
[
"Bergere Bleue"
],
[
"Berkswell"
],
[
"Big Woods Blue"
],
[
"Bismark"
],
[
"Bohemian Blue"
],
[
"Bossa"
],
[
"Brebirousse d'Argental"
],
[
"Brebis du Lavort"
],
[
"Brebis du Puyfaucon"
],
[
"Brefu Bach"
],
[
"Brin d'Amour"
],
[
"Brinza - Feta style"
],
[
"Briquette de Brebis"
],
[
"Brânză de Burduf"
],
[
"Cacio De Roma®"
],
[
"Cairnsmore"
],
[
"Calcagno"
],
[
"Canarejal"
],
[
"Castillon Frais"
],
[
"Cave Aged Marisa"
],
[
"Caws Cenarth Black Sheep"
],
[
"Cherni Vit"
],
[
"Cinerino"
],
[
"Classico Pecorino Senese"
],
[
"Classico Riserva"
],
[
"corra linn"
],
[
"Cratloe Hills"
],
[
"Crotonese"
],
[
"Crozier"
],
[
"Cwmtawe Pecorino"
],
[
"La Retorta"
],
[
"La Serena"
],
[
"Lanark Blue"
],
[
"Lanark White"
],
[
"Laruns"
],
[
"Le Brebiou"
],
[
"Le Lacandou"
],
[
"Leafield"
],
[
"Lemon Fetish"
],
[
"Little Rydings"
],
[
"Lo Sburrato"
],
[
"Lord of the Hundreds"
],
[
"Lost Lake"
],
[
"Malvarosa®"
],
[
"Malvern"
],
[
"Manchego"
],
[
"Marisa"
],
[
"Mastorazio"
],
[
"Meira"
],
[
"Meredith Blue"
],
[
"Mihalic Peynir"
],
[
"Millstone"
],
[
"MitiCaña® de Oveja"
],
[
"Morcella"
],
[
"P'tit Basque"
],
[
"Paglierino"
],
[
"Paški Sir (PDO)"
],
[
"Pecorino"
],
[
"Pecorino a Latte Crudo"
],
[
"Pecorino al Pepe"
],
[
"Pecorino al Tartufo"
],
[
"Pecorino alla Canapa"
],
[
"Pecorino allo Zafferano"
],
[
"Pecorino Barba Del Passatore"
],
[
"Pecorino Boccondilatte"
],
[
"Pecorino Camomilla"
],
[
"Pecorino Con Caglio Vegetale"
],
[
"Pecorino dei Malatesta al Sangiovese"
],
[
"Pecorino Dei Malatesta Sotto Cenere"
],
[
"Pecorino dei Monaci"
],
[
"Pecorino di Sogliano"
],
[
"Pecorino di Talamello"
],
[
"Pecorino di Vigna"
],
[
"Pecorino Erica"
],
[
"Pecorino Fiordaliso"
],
[
"Pecorino Foglie Noci"
],
[
"Pecorino Gelsomino"
],
[
"Pecorino Ginepro"
],
[
"Pecorino Gran Riserva Del Passatore"
],
[
"Pecorino in Walnut Leaves"
],
[
"Pecorino Mallo di Noce"
],
[
"Pecorino nel fieno"
],
[
"Pecorino Nel Granaio"
],
[
"Pecorino Nero"
],
[
"Pecorino Ortica"
],
[
"Pecorino Papavero"
],
[
"Pecorino Pepato Mitica® Aged"
],
[
"Pecorino Pera"
],
[
"Pecorino Querciaiolo"
],
[
"Pecorino Romagnolo"
],
[
"Pecorino Romano"
],
[
"Pecorino Toscanello"
],
[
"Pepato"
],
[
"Pigouille"
],
[
"Prairie Tomme"
],
[
"Primo Fresco"
],
[
"Pérail de Brebis"
],
[
"Saint Rose"
],
[
"San Andreas"
],
[
"Serat"
],
[
"Serra da Estrela DOP"
],
[
"Shaker Blue"
],
[
"Sheep Gouda"
],
[
"Shepherd's Crook"
],
[
"Shepherd's Hope"
],
[
"Shepherdista Crush"
],
[
"Spenwood"
],
[
"St James"
],
[
"Sussex Slipcote"
],
[
"Swaledale"
]
],
"hovertemplate": "<b>%{hovertext}</b><br><br>milk=sheep<br>latitude=%{lat}<br>longitude=%{lon}<br>cheese=%{customdata[0]}<extra></extra>",
"hovertext": [
"Abbaye de Belloc",
"Abertam",
"Acorn",
"Amou",
"Ardi Gasna",
"Azeitao",
"Bad Axe",
"Balfour",
"Bartlett",
"Basajo",
"Baserri",
"Baskeriu",
"Bear Hill",
"Beenleigh Blue",
"Bergere Bleue",
"Berkswell",
"Big Woods Blue",
"Bismark",
"Bohemian Blue",
"Bossa",
"Brebirousse d'Argental",
"Brebis du Lavort",
"Brebis du Puyfaucon",
"Brefu Bach",
"Brin d'Amour",
"Brinza - Feta style",
"Briquette de Brebis",
"Brânză de Burduf",
"Cacio De Roma®",
"Cairnsmore",
"Calcagno",
"Canarejal",
"Castillon Frais",
"Cave Aged Marisa",
"Caws Cenarth Black Sheep",
"Cherni Vit",
"Cinerino",
"Classico Pecorino Senese",
"Classico Riserva",
"corra linn",
"Cratloe Hills",
"Crotonese",
"Crozier",
"Cwmtawe Pecorino",
"La Retorta",
"La Serena",
"Lanark Blue",
"Lanark White",
"Laruns",
"Le Brebiou",
"Le Lacandou",
"Leafield",
"Lemon Fetish",
"Little Rydings",
"Lo Sburrato",
"Lord of the Hundreds",
"Lost Lake",
"Malvarosa®",
"Malvern",
"Manchego",
"Marisa",
"Mastorazio",
"Meira",
"Meredith Blue",
"Mihalic Peynir",
"Millstone",
"MitiCaña® de Oveja",
"Morcella",
"P'tit Basque",
"Paglierino",
"Paški Sir (PDO)",
"Pecorino",
"Pecorino a Latte Crudo",
"Pecorino al Pepe",
"Pecorino al Tartufo",
"Pecorino alla Canapa",
"Pecorino allo Zafferano",
"Pecorino Barba Del Passatore",
"Pecorino Boccondilatte",
"Pecorino Camomilla",
"Pecorino Con Caglio Vegetale",
"Pecorino dei Malatesta al Sangiovese",
"Pecorino Dei Malatesta Sotto Cenere",
"Pecorino dei Monaci",
"Pecorino di Sogliano",
"Pecorino di Talamello",
"Pecorino di Vigna",
"Pecorino Erica",
"Pecorino Fiordaliso",
"Pecorino Foglie Noci",
"Pecorino Gelsomino",
"Pecorino Ginepro",
"Pecorino Gran Riserva Del Passatore",
"Pecorino in Walnut Leaves",
"Pecorino Mallo di Noce",
"Pecorino nel fieno",
"Pecorino Nel Granaio",
"Pecorino Nero",
"Pecorino Ortica",
"Pecorino Papavero",
"Pecorino Pepato Mitica® Aged",
"Pecorino Pera",
"Pecorino Querciaiolo",
"Pecorino Romagnolo",
"Pecorino Romano",
"Pecorino Toscanello",
"Pepato",
"Pigouille",
"Prairie Tomme",
"Primo Fresco",
"Pérail de Brebis",
"Saint Rose",
"San Andreas",
"Serat",
"Serra da Estrela DOP",
"Shaker Blue",
"Sheep Gouda",
"Shepherd's Crook",
"Shepherd's Hope",
"Shepherdista Crush",
"Spenwood",
"St James",
"Sussex Slipcote",
"Swaledale"
],
"lat": [
47.6867895,
50.2306216,
52.2509586,
43.59266,
43.8099068,
38.5241783,
44.4308975,
-45.0321923,
51.161750850000004,
42.6384261,
39.7837304,
46.603354,
44.5990718,
52.5310214,
44.8914036,
54.7023545,
45.9896587,
44.5990718,
42.53116075,
38.7604815,
46.603354,
45.2968119,
45.91901925,
52.2928116,
46.603354,
-45.0321923,
46.603354,
46.4046483,
42.6384261,
54.9042579,
42.6384261,
39.3260685,
46.603354,
44.4308975,
52.2928116,
42.6073975,
40.860672,
43.4586541,
43.4586541,
56.7861112,
52.70642975,
39.1873894,
52.467222,
40.02656765,
39.3260685,
39.1748426,
56.7861112,
56.7861112,
42.9882368,
43.18718655,
44.315857449999996,
51.7412674,
44.031827,
52.7923213,
43.4586541,
50.9404266,
44.031827,
39.4697065,
52.454530899999995,
39.3260685,
44.4308975,
40.860672,
33.0955793,
-37.5623013,
39.9895878,
51.161750850000004,
37.9923795,
45.9896587,
45.359277750000004,
40.860672,
45.3658443,
42.6384261,
44.525696,
43.4586541,
42.6384261,
44.525696,
43.4586541,
44.525696,
44.525696,
44.525696,
43.4586541,
44.525696,
44.525696,
44.525696,
44.525696,
44.525696,
44.525696,
44.525696,
44.525696,
44.525696,
44.525696,
44.525696,
44.525696,
44.525696,
44.525696,
43.0765485,
44.525696,
43.4586541,
44.525696,
44.525696,
40.0912813,
44.525696,
44.525696,
44.525696,
41.9808038,
43.4586541,
42.6384261,
45.4039367,
38.7604815,
36.7014631,
46.603354,
36.7014631,
36.7014631,
33.7680065,
40.4358994,
40.7127281,
45.709097,
51.161750850000004,
45.9896587,
36.7014631,
52.5310214,
52.5310214,
52.5310214,
54.38299324007608
],
"legendgroup": "sheep",
"lon": [
7.3927627,
12.8701437,
-4.0888576,
-0.7475291,
1.4344926056549236,
-8.8932341,
-89.6884637,
168.661,
-3.0753867062227487,
12.674297,
-100.445882,
1.8883335,
-72.5002608,
-1.2649062,
-89.7748098,
-3.2765753,
-94.6113288,
-72.5002608,
-90.43762550236468,
-92.5617875,
1.8883335,
4.6604809,
1.203176771876291,
-3.73893,
1.8883335,
168.661,
1.8883335,
22.9894841933513,
12.674297,
-5.0248893,
12.674297,
-4.8379791,
1.8883335,
-89.6884637,
-3.73893,
25.4856617,
14.843984,
11.1389204,
11.1389204,
-4.1140518,
-8.751786760846851,
16.87828188895307,
-7.691111,
8.679641647435716,
-4.8379791,
-6.1529891,
-4.1140518,
-4.1140518,
-0.4266324,
-0.728247400084667,
2.5065697302419823,
-1.2245951,
-77.246933,
0.4278194,
11.1389204,
0.3699977891068864,
-77.246933,
-0.3763353,
-2.3755702502240226,
-4.8379791,
-89.6884637,
14.843984,
44.1749775,
143.8605645,
28.8944669,
-3.0753867062227487,
-1.1305431,
-94.6113288,
-1.1480053453043046,
14.843984,
15.6575209,
12.674297,
11.039437,
11.1389204,
12.674297,
11.039437,
11.1389204,
11.039437,
11.039437,
11.039437,
11.1389204,
11.039437,
11.039437,
11.039437,
11.039437,
11.039437,
11.039437,
11.039437,
11.039437,
11.039437,
11.039437,
11.039437,
11.039437,
11.039437,
11.039437,
11.6789076,
11.039437,
11.1389204,
11.039437,
11.039437,
9.0305773,
11.039437,
11.039437,
11.039437,
12.7662312,
11.1389204,
12.674297,
0.3756199,
-92.5617875,
-118.755997,
1.8883335,
-118.755997,
-118.755997,
66.2385139,
-7.516865473467464,
-74.0060152,
-68.8590201,
-3.0753867062227487,
-94.6113288,
-118.755997,
-1.2649062,
-1.2649062,
-1.2649062,
-1.9841360652878535
],
"marker": {
"color": "#EF553B"
},
"mode": "markers",
"name": "sheep",
"showlegend": true,
"subplot": "mapbox",
"type": "scattermapbox"
},
{
"customdata": [
[
"Acapella"
],
[
"Aged Chelsea"
],
[
"Ailsa Craig"
],
[
"Alex James Co. No 4 Goats'"
],
[
"Allium Piper"
],
[
"Alpicrème"
],
[
"Amalthée"
],
[
"Anneau du Vic-Bilh"
],
[
"Aphrodite Goat Milk Halloumi"
],
[
"Applewood Smoked Chevre"
],
[
"Ardsallagh Hard Goat's Cheese"
],
[
"Ardsallagh Smoked Cheese"
],
[
"Aspen Ash"
],
[
"Assa"
],
[
"Banon"
],
[
"Baronerosso di Capra"
],
[
"Barriquet"
],
[
"Basing"
],
[
"Bermuda Triangle"
],
[
"Bettine Bleu"
],
[
"Bettine Grand Cru"
],
[
"Bijou"
],
[
"Black Betty"
],
[
"Black Pearl"
],
[
"Blackmount"
],
[
"Bloomsdale"
],
[
"Blue Ledge La Luna"
],
[
"Blue Lupine"
],
[
"Blue Rathgore"
],
[
"Bluebell Falls Cygnus"
],
[
"Bonne Bouche"
],
[
"Bosworth"
],
[
"Bougon"
],
[
"Boulder Chevre"
],
[
"Boule Du Roves"
],
[
"Bourdin Goat Log"
],
[
"Bouyguette"
],
[
"Boyne Valley Bán"
],
[
"Brightwell Ash"
],
[
"Browns Gulch"
],
[
"Buche de Chevre"
],
[
"Bucheret"
],
[
"Buchette d'Anjou"
],
[
"Buchette de Manon"
],
[
"Bûchette à la Sarriette"
],
[
"Cabecou"
],
[
"Cabecou Feuille D'Armagnac"
],
[
"Cachaille"
],
[
"California Crottin"
],
[
"Cameo"
],
[
"Cana de Cabra"
],
[
"Cape Vessey"
],
[
"Capra al Fieno"
],
[
"Capra al Pepe"
],
[
"Capra Nouveau"
],
[
"Caprano"
],
[
"Capraricca"
],
[
"Capriago"
],
[
"Capricious"
],
[
"Capricorn Somerset Goats Cheese"
],
[
"Capriny"
],
[
"Capriole Banon"
],
[
"Caprotto"
],
[
"Cardo"
],
[
"Cayuga Blue"
],
[
"Cerney Pyramid"
],
[
"Chabichou du Poitou"
],
[
"Chabis de Gatine"
],
[
"Charolais"
],
[
"Chavroux"
],
[
"Chevre en Marinade"
],
[
"Chevre Log"
],
[
"Chevrotin des Aravis"
],
[
"Childwickbury"
],
[
"Chile Jack"
],
[
"Chèvre"
],
[
"Civray"
],
[
"Classic Blue Log"
],
[
"Clonmore"
],
[
"Coeur de Chevre"
],
[
"Consider Bardwell Farm Manchester"
],
[
"Corleggy"
],
[
"Coupole"
],
[
"Couronne Lochoise"
],
[
"Cracked Pepper Chevre"
],
[
"Crocodile Tear"
],
[
"Croghan"
],
[
"Crottin de Champcol"
],
[
"Crottin de Chavignol"
],
[
"Cypress Grove Chevre"
],
[
"La Pyramide"
],
[
"La Taupiniere"
],
[
"Lacey Grey"
],
[
"LaClare Farms Cheddar"
],
[
"LaClare Farms Chevre"
],
[
"LaClare Farms Evalon"
],
[
"LaClare Farms Evalon with Cummin"
],
[
"LaClare Farms Evalon with Fenugreek"
],
[
"LaClare Farms Fondry Jack"
],
[
"LaClare Farms Martone"
],
[
"LaClare Farms Raw Goats Milk Cheddar"
],
[
"Lairobell"
],
[
"Laura Chenel Taupiniere"
],
[
"Laura Chenel Tome"
],
[
"Laura Chenel's Cabecou"
],
[
"Le Cendrillon"
],
[
"Le Chevrot"
],
[
"Le Marquis Chevre"
],
[
"Le Moutier"
],
[
"Lemon Myrtle Chevre"
],
[
"Leonora®"
],
[
"Lincoln Log"
],
[
"Lingot des Causses"
],
[
"Lingot Saint Bousquet d'Orb"
],
[
"Little Bloom on the Prairie"
],
[
"Little Dragon"
],
[
"Little Napoleon"
],
[
"Little Ypsi"
],
[
"Loddiswell Avondale"
],
[
"Lou Pevre"
],
[
"Madrona"
],
[
"Majorero"
],
[
"Manon"
],
[
"Melville"
],
[
"Meredith Ashed Pyramids"
],
[
"Meredith Chevre Ash"
],
[
"Meredith Chevre Dill"
],
[
"Meredith Chevre Plain"
],
[
"Meredith Goat Cheese in Extra Virgin Olive Oil"
],
[
"Mettowee"
],
[
"Midnight Blue"
],
[
"Midnight Moon®"
],
[
"Milawa Affine"
],
[
"Milawa Goats Tomme"
],
[
"Mine-Gabhar"
],
[
"Mistralou"
],
[
"Monet"
],
[
"Mont Saint-Francis"
],
[
"Montchevre Goat Cheese Log"
],
[
"Monte Enebro"
],
[
"Moonglo"
],
[
"Mothais a la Feuille"
],
[
"Mountain Goat"
],
[
"Ms. Natural"
],
[
"P'tit Berrichon"
],
[
"Paillot de Chèvre"
],
[
"Pant ys Gawn"
],
[
"Pastoral"
],
[
"Pave de Chirac"
],
[
"Pelardon des Cevennes"
],
[
"Pelardon des Corbieres"
],
[
"Perroche"
],
[
"Petit Blaja"
],
[
"Picodon de Chevre"
],
[
"Piper's Pyramide"
],
[
"Plancherin d'Arêches"
],
[
"Pleasant Creek"
],
[
"Pouligny-Saint-Pierre"
],
[
"Pourly"
],
[
"Providence"
],
[
"Président Fresh Goat Cheese"
],
[
"PsycheDillic"
],
[
"Purple Haze"
],
[
"Pyramide"
],
[
"Saanen Silk"
],
[
"Sainte-Maure de Touraine AOC"
],
[
"Saltbush Chevre"
],
[
"Sancerre"
],
[
"Sandy Creek"
],
[
"Santa Gadea"
],
[
"Sarró de Cabra"
],
[
"Sartori Limited Edition Extra-Aged Goat"
],
[
"Selles sur Cher"
],
[
"Sgt. Pepper"
],
[
"Siltcoos"
],
[
"Sinodun Hill"
],
[
"Sleightlett"
],
[
"Smokey Mountain Round"
],
[
"Sofia"
],
[
"St Tola Ash Log"
],
[
"St Tola Cranberry"
],
[
"St Tola Crottin"
],
[
"St Tola Divine"
],
[
"St Tola Greek Style"
],
[
"St Tola Hard Cheese"
],
[
"St Tola Log"
],
[
"Stawley"
],
[
"Stella Goat"
],
[
"Stickney Hill Chevre"
],
[
"Sunlight"
],
[
"Sunset Bay"
],
[
"Swag"
]
],
"hovertemplate": "<b>%{hovertext}</b><br><br>milk=goat<br>latitude=%{lat}<br>longitude=%{lon}<br>cheese=%{customdata[0]}<extra></extra>",
"hovertext": [
"Acapella",
"Aged Chelsea",
"Ailsa Craig",
"Alex James Co. No 4 Goats'",
"Allium Piper",
"Alpicrème",
"Amalthée",
"Anneau du Vic-Bilh",
"Aphrodite Goat Milk Halloumi",
"Applewood Smoked Chevre",
"Ardsallagh Hard Goat's Cheese",
"Ardsallagh Smoked Cheese",
"Aspen Ash",
"Assa",
"Banon",
"Baronerosso di Capra",
"Barriquet",
"Basing",
"Bermuda Triangle",
"Bettine Bleu",
"Bettine Grand Cru",
"Bijou",
"Black Betty",
"Black Pearl",
"Blackmount",
"Bloomsdale",
"Blue Ledge La Luna",
"Blue Lupine",
"Blue Rathgore",
"Bluebell Falls Cygnus",
"Bonne Bouche",
"Bosworth",
"Bougon",
"Boulder Chevre",
"Boule Du Roves",
"Bourdin Goat Log",
"Bouyguette",
"Boyne Valley Bán",
"Brightwell Ash",
"Browns Gulch",
"Buche de Chevre",
"Bucheret",
"Buchette d'Anjou",
"Buchette de Manon",
"Bûchette à la Sarriette",
"Cabecou",
"Cabecou Feuille D'Armagnac",
"Cachaille",
"California Crottin",
"Cameo",
"Cana de Cabra",
"Cape Vessey",
"Capra al Fieno",
"Capra al Pepe",
"Capra Nouveau",
"Caprano",
"Capraricca",
"Capriago",
"Capricious",
"Capricorn Somerset Goats Cheese",
"Capriny",
"Capriole Banon",
"Caprotto",
"Cardo",
"Cayuga Blue",
"Cerney Pyramid",
"Chabichou du Poitou",
"Chabis de Gatine",
"Charolais",
"Chavroux",
"Chevre en Marinade",
"Chevre Log",
"Chevrotin des Aravis",
"Childwickbury",
"Chile Jack",
"Chèvre",
"Civray",
"Classic Blue Log",
"Clonmore",
"Coeur de Chevre",
"Consider Bardwell Farm Manchester",
"Corleggy",
"Coupole",
"Couronne Lochoise",
"Cracked Pepper Chevre",
"Crocodile Tear",
"Croghan",
"Crottin de Champcol",
"Crottin de Chavignol",
"Cypress Grove Chevre",
"La Pyramide",
"La Taupiniere",
"Lacey Grey",
"LaClare Farms Cheddar",
"LaClare Farms Chevre",
"LaClare Farms Evalon",
"LaClare Farms Evalon with Cummin",
"LaClare Farms Evalon with Fenugreek",
"LaClare Farms Fondry Jack",
"LaClare Farms Martone",
"LaClare Farms Raw Goats Milk Cheddar",
"Lairobell",
"Laura Chenel Taupiniere",
"Laura Chenel Tome",
"Laura Chenel's Cabecou",
"Le Cendrillon",
"Le Chevrot",
"Le Marquis Chevre",
"Le Moutier",
"Lemon Myrtle Chevre",
"Leonora®",
"Lincoln Log",
"Lingot des Causses",
"Lingot Saint Bousquet d'Orb",
"Little Bloom on the Prairie",
"Little Dragon",
"Little Napoleon",
"Little Ypsi",
"Loddiswell Avondale",
"Lou Pevre",
"Madrona",
"Majorero",
"Manon",
"Melville",
"Meredith Ashed Pyramids",
"Meredith Chevre Ash",
"Meredith Chevre Dill",
"Meredith Chevre Plain",
"Meredith Goat Cheese in Extra Virgin Olive Oil",
"Mettowee",
"Midnight Blue",
"Midnight Moon®",
"Milawa Affine",
"Milawa Goats Tomme",
"Mine-Gabhar",
"Mistralou",
"Monet",
"Mont Saint-Francis",
"Montchevre Goat Cheese Log",
"Monte Enebro",
"Moonglo",
"Mothais a la Feuille",
"Mountain Goat",
"Ms. Natural",
"P'tit Berrichon",
"Paillot de Chèvre",
"Pant ys Gawn",
"Pastoral",
"Pave de Chirac",
"Pelardon des Cevennes",
"Pelardon des Corbieres",
"Perroche",
"Petit Blaja",
"Picodon de Chevre",
"Piper's Pyramide",
"Plancherin d'Arêches",
"Pleasant Creek",
"Pouligny-Saint-Pierre",
"Pourly",
"Providence",
"Président Fresh Goat Cheese",
"PsycheDillic",
"Purple Haze",
"Pyramide",
"Saanen Silk",
"Sainte-Maure de Touraine AOC",
"Saltbush Chevre",
"Sancerre",
"Sandy Creek",
"Santa Gadea",
"Sarró de Cabra",
"Sartori Limited Edition Extra-Aged Goat",
"Selles sur Cher",
"Sgt. Pepper",
"Siltcoos",
"Sinodun Hill",
"Sleightlett",
"Smokey Mountain Round",
"Sofia",
"St Tola Ash Log",
"St Tola Cranberry",
"St Tola Crottin",
"St Tola Divine",
"St Tola Greek Style",
"St Tola Hard Cheese",
"St Tola Log",
"Stawley",
"Stella Goat",
"Stickney Hill Chevre",
"Sunlight",
"Sunset Bay",
"Swag"
],
"lat": [
36.7014631,
42.2813722,
55.680265,
54.7023545,
-30.5343665,
46.603354,
45.4039367,
43.18718655,
34.9174159,
38.7251776,
51.9094617,
51.9094617,
38.7251776,
38.2468075,
44.0381752,
45.6476663,
46.603354,
51.20707485,
36.7014631,
52.2434979,
52.2434979,
44.162985,
52.2434979,
-38.3312575,
56.7861112,
33.2473378,
44.5990718,
36.7014631,
54.864725500000006,
51.917535900000004,
44.5990718,
54.7023545,
46.603354,
39.7837304,
46.603354,
46.603354,
46.603354,
52.865196,
51.45115235,
43.9792797,
46.603354,
36.7014631,
45.75385355,
46.603354,
46.603354,
43.8099068,
46.603354,
46.603354,
39.7837304,
36.7014631,
37.9923795,
44.031827,
45.806691349999994,
45.806691349999994,
52.4875359,
52.4760892,
45.6476663,
38.4021038,
38.2325829,
51.161750850000004,
52.4760892,
34.851354,
40.860672,
56.7861112,
43.1561681,
51.7489422,
46.603354,
46.13244785,
47.27808725,
46.603354,
38.7251776,
36.7014631,
46.06904065,
52.21843025,
38.7251776,
46.603354,
46.603354,
42.3788774,
51.917535900000004,
48.15497515,
44.5990718,
54.03497495,
44.5990718,
47.44927715,
38.7251776,
40.3270127,
52.46018745,
46.603354,
46.603354,
36.7014631,
55.001251,
46.13244785,
44.031827,
44.4308975,
44.4308975,
44.4308975,
44.4308975,
44.4308975,
44.4308975,
44.4308975,
44.4308975,
56.7861112,
33.223027,
38.5110803,
36.7014631,
52.4760892,
47.44927715,
46.603354,
52.4760892,
-30.5343665,
40.4598868,
42.2813722,
46.603354,
43.591422,
40.0796606,
42.2813722,
42.2813722,
42.2813722,
50.724140500000004,
44.0580563,
43.9792797,
28.286398900000002,
-30.5343665,
40.375713,
-36.5986096,
-36.5986096,
-36.5986096,
-36.5986096,
-36.5986096,
44.5990718,
38.7251776,
52.2434979,
-37.8633951,
-37.8633951,
52.46018745,
46.603354,
-30.5343665,
40.3270127,
39.7837304,
40.656478,
40.0796606,
46.603354,
-38.3312575,
36.7014631,
44.5760186,
52.4760892,
52.2928116,
36.7014631,
45.9140138,
43.65420305,
43.65420305,
52.083333,
46.603354,
46.603354,
40.3270127,
46.603354,
43.9792797,
44.5760186,
47.27808725,
35.6729639,
46.13244785,
36.7014631,
36.7014631,
47.44927715,
50.000678,
45.75385355,
-30.5343665,
46.603354,
35.6729639,
39.3260685,
41.3828939,
44.4308975,
46.603354,
36.7014631,
39.7837304,
52.5310214,
51.3271927,
35.6729639,
40.3270127,
52.865196,
52.9071704,
52.865196,
52.9071704,
52.857257450000006,
52.9071704,
52.865196,
50.9961449,
44.4308975,
41.1881305,
38.7251776,
39.7837304,
-30.5343665
],
"legendgroup": "goat",
"lon": [
-118.755997,
-83.7484616,
-4.5153023,
-3.2765753,
135.6301212,
1.8883335,
0.3756199,
-0.728247400084667,
32.889902651331866,
-105.607716,
-8.2611809,
-8.2611809,
-105.607716,
-122.90630461024097,
5.6296701,
11.8665254,
1.8883335,
0.7210361813401444,
-118.755997,
5.6343227,
5.6343227,
-72.47576806895253,
5.6343227,
145.08106868543985,
-4.1140518,
-96.6794382,
-72.5002608,
-118.755997,
-6.143637910742768,
-8.58597726870895,
-72.5002608,
-3.2765753,
1.8883335,
-100.445882,
1.8883335,
1.8883335,
1.8883335,
-7.9794599,
-0.9935673736185868,
-120.737257,
1.8883335,
-118.755997,
4.045473682551104,
1.8883335,
1.8883335,
1.4344926056549236,
1.8883335,
1.8883335,
-100.445882,
-118.755997,
-1.1305431,
-77.246933,
12.206315763116372,
12.206315763116372,
-2.4124407,
-71.8258668,
11.8665254,
-122.824222,
-122.636465,
-3.0753867062227487,
-71.8258668,
-82.3984882,
14.843984,
-4.1140518,
-75.8449946,
-0.2303579,
1.8883335,
-0.15455354898441043,
4.222486304306048,
1.8883335,
-105.607716,
-118.755997,
6.344532137164,
-0.5921260787763352,
-105.607716,
1.8883335,
1.8883335,
-72.032366,
-8.58597726870895,
2.811419156673292,
-72.5002608,
-7.2937022825583675,
-72.5002608,
-0.34954901296919916,
-105.607716,
-86.1746933,
-6.606515459159162,
1.8883335,
1.8883335,
-118.755997,
-125.002441,
-0.15455354898441043,
-77.246933,
-89.6884637,
-89.6884637,
-89.6884637,
-89.6884637,
-89.6884637,
-89.6884637,
-89.6884637,
-89.6884637,
-4.1140518,
-111.70568456233669,
-122.8473388,
-118.755997,
-71.8258668,
-0.34954901296919916,
1.8883335,
-71.8258668,
135.6301212,
-3.4720773,
-83.7484616,
1.8883335,
3.3553309364095925,
-89.4337288,
-83.7484616,
-83.7484616,
-83.7484616,
-3.6607788161410735,
6.0638506,
-120.737257,
-16.796011808910734,
135.6301212,
-76.4626118,
144.6780052,
144.6780052,
144.6780052,
144.6780052,
144.6780052,
-72.5002608,
-105.607716,
5.6343227,
145.0100994,
145.0100994,
-6.606515459159162,
1.8883335,
135.6301212,
-86.1746933,
-100.445882,
-4.7002172,
-89.4337288,
1.8883335,
145.08106868543985,
-118.755997,
0.3095833,
-71.8258668,
-3.73893,
-118.755997,
0.6548543,
3.674669940206605,
3.674669940206605,
-2.75,
1.8883335,
1.8883335,
-86.1746933,
1.8883335,
-120.737257,
0.3095833,
4.222486304306048,
-79.0392919,
-0.15455354898441043,
-118.755997,
-118.755997,
-0.34954901296919916,
-86.000977,
4.045473682551104,
135.6301212,
1.8883335,
-79.0392919,
-4.8379791,
2.1774322,
-89.6884637,
1.8883335,
-118.755997,
-100.445882,
-1.2649062,
-2.4755923,
-79.0392919,
-86.1746933,
-7.9794599,
-9.2345138,
-7.9794599,
-9.2345138,
-8.937435925994537,
-9.2345138,
-7.9794599,
-3.3382702,
-89.6884637,
-103.6997645,
-105.607716,
-100.445882,
135.6301212
],
"marker": {
"color": "#00cc96"
},
"mode": "markers",
"name": "goat",
"showlegend": true,
"subplot": "mapbox",
"type": "scattermapbox"
},
{
"customdata": [
[
"Accasciato"
],
[
"Cubetto"
],
[
"Paesanella Buffalo Mozzarella"
],
[
"Smoked Sulguni"
],
[
"Sulguni"
]
],
"hovertemplate": "<b>%{hovertext}</b><br><br>milk=buffalo, cow<br>latitude=%{lat}<br>longitude=%{lon}<br>cheese=%{customdata[0]}<extra></extra>",
"hovertext": [
"Accasciato",
"Cubetto",
"Paesanella Buffalo Mozzarella",
"Smoked Sulguni",
"Sulguni"
],
"lat": [
40.860672,
40.860672,
-31.8759835,
42.63545205,
42.63545205
],
"legendgroup": "buffalo, cow",
"lon": [
14.843984,
14.843984,
147.2869493,
42.24871384619953,
42.24871384619953
],
"marker": {
"color": "#ab63fa"
},
"mode": "markers",
"name": "buffalo, cow",
"showlegend": true,
"subplot": "mapbox",
"type": "scattermapbox"
},
{
"customdata": [
[
"Aged Gouda"
],
[
"Armenian String Cheese"
],
[
"Barrel Aged Feta"
],
[
"Benedictine"
],
[
"Beyaz Peynir"
],
[
"Bica de Queijo"
],
[
"Brousse du Rove"
],
[
"Canadian Cheddar"
],
[
"Carboncino"
],
[
"Castelmagno"
],
[
"Castigliano"
],
[
"La Tur"
],
[
"Liburnski Sir"
],
[
"Menage"
],
[
"Penamellera"
],
[
"Smoked Gouda"
]
],
"hovertemplate": "<b>%{hovertext}</b><br><br>milk=cow, goat, sheep<br>latitude=%{lat}<br>longitude=%{lon}<br>cheese=%{customdata[0]}<extra></extra>",
"hovertext": [
"Aged Gouda",
"Armenian String Cheese",
"Barrel Aged Feta",
"Benedictine",
"Beyaz Peynir",
"Bica de Queijo",
"Brousse du Rove",
"Canadian Cheddar",
"Carboncino",
"Castelmagno",
"Castigliano",
"La Tur",
"Liburnski Sir",
"Menage",
"Penamellera",
"Smoked Gouda"
],
"lat": [
52.2434979,
4.491976149999999,
38.9953683,
45.1699553,
39.294076,
41.5759516,
43.687621,
50.000678,
42.6384261,
45.060735,
41.55005,
44.7007236,
45.3658443,
44.4308975,
43.3133868,
52.2434979
],
"legendgroup": "cow, goat, sheep",
"lon": [
5.6343227,
-75.74135085294314,
21.9877132,
-109.88428658948227,
35.2316631,
-8.2699521,
4.2691037,
-86.000977,
12.674297,
7.923549,
-5.1387401,
8.0357786,
15.6575209,
-89.6884637,
-5.94192,
5.6343227
],
"marker": {
"color": "#19d3f3"
},
"mode": "markers",
"name": "cow, goat, sheep",
"showlegend": true,
"subplot": "mapbox",
"type": "scattermapbox"
},
{
"customdata": [
[
"Alverca"
],
[
"Amarelo de Beira Baixa"
],
[
"Anari"
],
[
"Anthotyro"
],
[
"Anthotyro Fresco"
],
[
"Batzos"
],
[
"Bianca"
],
[
"Brocciu"
],
[
"Calenzana (Calinzanincu)"
],
[
"Canestrato"
],
[
"Castelo Branco"
],
[
"Le Fium Orbo"
],
[
"Lebbene"
],
[
"Manouri"
],
[
"Mascares"
],
[
"Miette"
],
[
"Mobay"
],
[
"Myzithra"
],
[
"Pate de Fromage"
],
[
"Phoebe"
],
[
"Sonnet"
]
],
"hovertemplate": "<b>%{hovertext}</b><br><br>milk=goat, sheep<br>latitude=%{lat}<br>longitude=%{lon}<br>cheese=%{customdata[0]}<extra></extra>",
"hovertext": [
"Alverca",
"Amarelo de Beira Baixa",
"Anari",
"Anthotyro",
"Anthotyro Fresco",
"Batzos",
"Bianca",
"Brocciu",
"Calenzana (Calinzanincu)",
"Canestrato",
"Castelo Branco",
"Le Fium Orbo",
"Lebbene",
"Manouri",
"Mascares",
"Miette",
"Mobay",
"Myzithra",
"Pate de Fromage",
"Phoebe",
"Sonnet"
],
"lat": [
39.6621648,
39.6621648,
34.9174159,
40.6186482,
40.6186482,
38.9953683,
46.7020686,
42.188089649999995,
46.603354,
40.2423024,
39.97675825,
46.603354,
30.8124247,
38.9953683,
43.7899311033635,
38.7604815,
44.4308975,
38.9953683,
46.603354,
46.7020686,
46.7020686
],
"legendgroup": "goat, sheep",
"lon": [
-8.1353519,
-8.1353519,
32.889902651331866,
22.91795361795959,
22.91795361795959,
21.9877132,
-120.75535,
9.068413771427695,
1.8883335,
15.868903,
-7.446059929966704,
1.8883335,
34.8594762,
21.9877132,
7.524017533510311,
-92.5617875,
-89.6884637,
21.9877132,
1.8883335,
-120.75535,
-120.75535
],
"marker": {
"color": "#FF6692"
},
"mode": "markers",
"name": "goat, sheep",
"showlegend": true,
"subplot": "mapbox",
"type": "scattermapbox"
},
{
"customdata": [
[
"Amul Processed Cheese"
],
[
"Mozzarella (Australian)"
]
],
"hovertemplate": "<b>%{hovertext}</b><br><br>milk=cow, water buffalo<br>latitude=%{lat}<br>longitude=%{lon}<br>cheese=%{customdata[0]}<extra></extra>",
"hovertext": [
"Amul Processed Cheese",
"Mozzarella (Australian)"
],
"lat": [
22.3850051,
-24.7761086
],
"legendgroup": "cow, water buffalo",
"lon": [
71.745261,
134.755
],
"marker": {
"color": "#B6E880"
},
"mode": "markers",
"name": "cow, water buffalo",
"showlegend": true,
"subplot": "mapbox",
"type": "scattermapbox"
},
{
"customdata": [
[
"Anejo Enchilado"
],
[
"Aromes au Gene de Marc"
],
[
"Autun"
],
[
"Briquette du Forez"
],
[
"Broncha"
],
[
"Buttercup"
],
[
"Chèvre des neiges"
],
[
"Cremet"
],
[
"Cremont"
],
[
"LaClare Farms Chandoka"
],
[
"LaClare Ziege Zacke Blue"
],
[
"Le Double Joie"
],
[
"Macconais"
],
[
"Melange"
],
[
"Melange Brie"
],
[
"Metronome"
],
[
"Minuet"
],
[
"Mt. Mazama Cheddar"
],
[
"Murazzano DOP"
],
[
"Poivre d'Ane"
],
[
"Seascape"
],
[
"Sharpham Savour"
],
[
"Snow Camp"
]
],
"hovertemplate": "<b>%{hovertext}</b><br><br>milk=cow, goat<br>latitude=%{lat}<br>longitude=%{lon}<br>cheese=%{customdata[0]}<extra></extra>",
"hovertext": [
"Anejo Enchilado",
"Aromes au Gene de Marc",
"Autun",
"Briquette du Forez",
"Broncha",
"Buttercup",
"Chèvre des neiges",
"Cremet",
"Cremont",
"LaClare Farms Chandoka",
"LaClare Ziege Zacke Blue",
"Le Double Joie",
"Macconais",
"Melange",
"Melange Brie",
"Metronome",
"Minuet",
"Mt. Mazama Cheddar",
"Murazzano DOP",
"Poivre d'Ane",
"Seascape",
"Sharpham Savour",
"Snow Camp"
],
"lat": [
23.6585116,
45.3175313,
47.27808725,
45.2968119,
36.7014631,
38.7251776,
52.4760892,
50.724140500000004,
44.5990718,
39.7837304,
44.4308975,
52.4760892,
47.27808725,
36.7014631,
36.7014631,
36.7014631,
36.7014631,
43.9792797,
44.4746494,
46.603354,
36.7014631,
50.724140500000004,
35.6729639
],
"legendgroup": "cow, goat",
"lon": [
-102.0077097,
5.721294352585611,
4.222486304306048,
4.6604809,
-118.755997,
-105.607716,
-71.8258668,
-3.6607788161410735,
-72.5002608,
-100.445882,
-89.6884637,
-71.8258668,
4.222486304306048,
-118.755997,
-118.755997,
-118.755997,
-118.755997,
-120.737257,
8.0213361,
1.8883335,
-118.755997,
-3.6607788161410735,
-79.0392919
],
"marker": {
"color": "#FF97FF"
},
"mode": "markers",
"name": "cow, goat",
"showlegend": true,
"subplot": "mapbox",
"type": "scattermapbox"
},
{
"customdata": [
[
"Aubisque Pyrenees"
],
[
"Blenda"
],
[
"Blu Della Casera"
],
[
"Burgos"
],
[
"Cacio di Bosco al Tartufo"
],
[
"Caciotta Al Tartufo"
],
[
"Casciotta di Urbino"
],
[
"Chilli Caciotta"
],
[
"Crema de Blue"
],
[
"Cuajada"
],
[
"Manur"
],
[
"Matocq"
],
[
"Mi-Ewe"
],
[
"Mona"
],
[
"Morangie Brie"
],
[
"Muddlewell"
],
[
"Podhalanski"
],
[
"Sartori Limited Edition Pastorale Blend"
],
[
"Shepsog"
]
],
"hovertemplate": "<b>%{hovertext}</b><br><br>milk=cow, sheep<br>latitude=%{lat}<br>longitude=%{lon}<br>cheese=%{customdata[0]}<extra></extra>",
"hovertext": [
"Aubisque Pyrenees",
"Blenda",
"Blu Della Casera",
"Burgos",
"Cacio di Bosco al Tartufo",
"Caciotta Al Tartufo",
"Casciotta di Urbino",
"Chilli Caciotta",
"Crema de Blue",
"Cuajada",
"Manur",
"Matocq",
"Mi-Ewe",
"Mona",
"Morangie Brie",
"Muddlewell",
"Podhalanski",
"Sartori Limited Edition Pastorale Blend",
"Shepsog"
],
"lat": [
46.603354,
62.9974877,
45.060735,
41.55005,
43.4586541,
42.965916,
43.694112700000005,
42.6384261,
40.0757384,
39.3260685,
44.024322850000004,
46.603354,
36.7014631,
44.4308975,
57.8119372,
52.7923213,
52.215933,
44.4308975,
44.5990718
],
"legendgroup": "cow, sheep",
"lon": [
1.8883335,
14.3928671,
7.923549,
-5.1387401,
11.1389204,
12.490236,
12.701443660480004,
12.674297,
-74.4041622,
-4.8379791,
21.07657433209902,
1.8883335,
-118.755997,
-89.6884637,
-4.0550663,
0.4278194,
19.134422,
-89.6884637,
-72.5002608
],
"marker": {
"color": "#FECB52"
},
"mode": "markers",
"name": "cow, sheep",
"showlegend": true,
"subplot": "mapbox",
"type": "scattermapbox"
},
{
"customdata": [
[
"Barilotto"
],
[
"Bufalino"
],
[
"Buff Blue"
],
[
"Paesanella Buffalo Ricotta"
]
],
"hovertemplate": "<b>%{hovertext}</b><br><br>milk=buffalo<br>latitude=%{lat}<br>longitude=%{lon}<br>cheese=%{customdata[0]}<extra></extra>",
"hovertext": [
"Barilotto",
"Bufalino",
"Buff Blue",
"Paesanella Buffalo Ricotta"
],
"lat": [
40.860672,
42.6384261,
34.169262950000004,
-24.7761086
],
"legendgroup": "buffalo",
"lon": [
14.843984,
12.674297,
-116.787448181486,
134.755
],
"marker": {
"color": "#636efa"
},
"mode": "markers",
"name": "buffalo",
"showlegend": true,
"subplot": "mapbox",
"type": "scattermapbox"
},
{
"customdata": [
[
"Blu di Bufala"
],
[
"Bufarolo"
],
[
"Caciobufala"
],
[
"Caciocavallo di Bufala"
],
[
"Campi"
],
[
"Caprese di Bufala"
],
[
"Casatica"
],
[
"Crescenza di Bufala"
],
[
"Moringhello"
],
[
"Mozzarella di Bufala DOP"
],
[
"Provoleta"
],
[
"Sbronzo"
],
[
"Squaquerone di Bufala"
]
],
"hovertemplate": "<b>%{hovertext}</b><br><br>milk=water buffalo<br>latitude=%{lat}<br>longitude=%{lon}<br>cheese=%{customdata[0]}<extra></extra>",
"hovertext": [
"Blu di Bufala",
"Bufarolo",
"Caciobufala",
"Caciocavallo di Bufala",
"Campi",
"Caprese di Bufala",
"Casatica",
"Crescenza di Bufala",
"Moringhello",
"Mozzarella di Bufala DOP",
"Provoleta",
"Sbronzo",
"Squaquerone di Bufala"
],
"lat": [
45.5703694,
45.5703694,
40.860672,
42.6384261,
45.5703694,
45.6476663,
45.5703694,
45.5703694,
45.5703694,
40.860672,
-34.9964963,
40.860672,
45.5703694
],
"legendgroup": "water buffalo",
"lon": [
9.7732524,
9.7732524,
14.843984,
12.674297,
9.7732524,
11.8665254,
9.7732524,
9.7732524,
9.7732524,
14.843984,
-64.9672817,
14.843984,
9.7732524
],
"marker": {
"color": "#EF553B"
},
"mode": "markers",
"name": "water buffalo",
"showlegend": true,
"subplot": "mapbox",
"type": "scattermapbox"
},
{
"customdata": [
[
"Blue"
],
[
"Bree"
],
[
"Brick Lane Bree"
],
[
"Brixton Blue"
],
[
"Shamembert"
],
[
"Shoreditch Smoked"
]
],
"hovertemplate": "<b>%{hovertext}</b><br><br>milk=plant-based<br>latitude=%{lat}<br>longitude=%{lon}<br>cheese=%{customdata[0]}<extra></extra>",
"hovertext": [
"Blue",
"Bree",
"Brick Lane Bree",
"Brixton Blue",
"Shamembert",
"Shoreditch Smoked"
],
"lat": [
54.7023545,
54.7023545,
54.7023545,
54.7023545,
54.7023545,
54.7023545
],
"legendgroup": "plant-based",
"lon": [
-3.2765753,
-3.2765753,
-3.2765753,
-3.2765753,
-3.2765753,
-3.2765753
],
"marker": {
"color": "#00cc96"
},
"mode": "markers",
"name": "plant-based",
"showlegend": true,
"subplot": "mapbox",
"type": "scattermapbox"
},
{
"customdata": [
[
"Bocconcini"
],
[
"Bufala Soldier"
]
],
"hovertemplate": "<b>%{hovertext}</b><br><br>milk=cow, goat, water buffalo<br>latitude=%{lat}<br>longitude=%{lon}<br>cheese=%{customdata[0]}<extra></extra>",
"hovertext": [
"Bocconcini",
"Bufala Soldier"
],
"lat": [
42.6384261,
38.7251776
],
"legendgroup": "cow, goat, water buffalo",
"lon": [
12.674297,
-105.607716
],
"marker": {
"color": "#ab63fa"
},
"mode": "markers",
"name": "cow, goat, water buffalo",
"showlegend": true,
"subplot": "mapbox",
"type": "scattermapbox"
},
{
"customdata": [
[
"Byaslag"
]
],
"hovertemplate": "<b>%{hovertext}</b><br><br>milk=yak<br>latitude=%{lat}<br>longitude=%{lon}<br>cheese=%{customdata[0]}<extra></extra>",
"hovertext": [
"Byaslag"
],
"lat": [
46.8250388
],
"legendgroup": "yak",
"lon": [
103.8499736
],
"marker": {
"color": "#FFA15A"
},
"mode": "markers",
"name": "yak",
"showlegend": true,
"subplot": "mapbox",
"type": "scattermapbox"
},
{
"customdata": [
[
"Caciotta"
],
[
"Mozzarella"
]
],
"hovertemplate": "<b>%{hovertext}</b><br><br>milk=cow, goat, sheep, water buffalo<br>latitude=%{lat}<br>longitude=%{lon}<br>cheese=%{customdata[0]}<extra></extra>",
"hovertext": [
"Caciotta",
"Mozzarella"
],
"lat": [
42.6384261,
42.6384261
],
"legendgroup": "cow, goat, sheep, water buffalo",
"lon": [
12.674297,
12.674297
],
"marker": {
"color": "#19d3f3"
},
"mode": "markers",
"name": "cow, goat, sheep, water buffalo",
"showlegend": true,
"subplot": "mapbox",
"type": "scattermapbox"
},
{
"customdata": [
[
"Caravane"
]
],
"hovertemplate": "<b>%{hovertext}</b><br><br>milk=camel<br>latitude=%{lat}<br>longitude=%{lon}<br>cheese=%{customdata[0]}<extra></extra>",
"hovertext": [
"Caravane"
],
"lat": [
20.2540382
],
"legendgroup": "camel",
"lon": [
-9.2399263
],
"marker": {
"color": "#FF6692"
},
"mode": "markers",
"name": "camel",
"showlegend": true,
"subplot": "mapbox",
"type": "scattermapbox"
},
{
"customdata": [
[
"Cilentano ai fichi"
]
],
"hovertemplate": "<b>%{hovertext}</b><br><br>milk=buffalo, cow, sheep<br>latitude=%{lat}<br>longitude=%{lon}<br>cheese=%{customdata[0]}<extra></extra>",
"hovertext": [
"Cilentano ai fichi"
],
"lat": [
39.0565974
],
"legendgroup": "buffalo, cow, sheep",
"lon": [
16.5249864
],
"marker": {
"color": "#B6E880"
},
"mode": "markers",
"name": "buffalo, cow, sheep",
"showlegend": true,
"subplot": "mapbox",
"type": "scattermapbox"
},
{
"customdata": [
[
"Moose"
]
],
"hovertemplate": "<b>%{hovertext}</b><br><br>milk=moose<br>latitude=%{lat}<br>longitude=%{lon}<br>cheese=%{customdata[0]}<extra></extra>",
"hovertext": [
"Moose"
],
"lat": [
63.966667
],
"legendgroup": "moose",
"lon": [
19
],
"marker": {
"color": "#FF97FF"
},
"mode": "markers",
"name": "moose",
"showlegend": true,
"subplot": "mapbox",
"type": "scattermapbox"
},
{
"customdata": [
[
"Pule"
]
],
"hovertemplate": "<b>%{hovertext}</b><br><br>milk=donkey<br>latitude=%{lat}<br>longitude=%{lon}<br>cheese=%{customdata[0]}<extra></extra>",
"hovertext": [
"Pule"
],
"lat": [
44.9454307
],
"legendgroup": "donkey",
"lon": [
19.4987239
],
"marker": {
"color": "#FECB52"
},
"mode": "markers",
"name": "donkey",
"showlegend": true,
"subplot": "mapbox",
"type": "scattermapbox"
}
],
"layout": {
"height": 800,
"legend": {
"title": {
"text": "milk"
},
"tracegroupgap": 0
},
"mapbox": {
"center": {
"lat": 41.45684542346779,
"lon": -20.657924389403536
},
"domain": {
"x": [
0,
1
],
"y": [
0,
1
]
},
"style": "open-street-map",
"zoom": 1.5
},
"margin": {
"b": 0,
"l": 0,
"r": 0,
"t": 0
},
"template": {
"data": {
"bar": [
{
"error_x": {
"color": "#2a3f5f"
},
"error_y": {
"color": "#2a3f5f"
},
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
},
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "bar"
}
],
"barpolar": [
{
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
},
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "barpolar"
}
],
"carpet": [
{
"aaxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"baxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"type": "carpet"
}
],
"choropleth": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "choropleth"
}
],
"contour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "contour"
}
],
"contourcarpet": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "contourcarpet"
}
],
"heatmap": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmap"
}
],
"heatmapgl": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmapgl"
}
],
"histogram": [
{
"marker": {
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "histogram"
}
],
"histogram2d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2d"
}
],
"histogram2dcontour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2dcontour"
}
],
"mesh3d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "mesh3d"
}
],
"parcoords": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "parcoords"
}
],
"pie": [
{
"automargin": true,
"type": "pie"
}
],
"scatter": [
{
"fillpattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
},
"type": "scatter"
}
],
"scatter3d": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter3d"
}
],
"scattercarpet": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattercarpet"
}
],
"scattergeo": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergeo"
}
],
"scattergl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergl"
}
],
"scattermapbox": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattermapbox"
}
],
"scatterpolar": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolar"
}
],
"scatterpolargl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolargl"
}
],
"scatterternary": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterternary"
}
],
"surface": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "surface"
}
],
"table": [
{
"cells": {
"fill": {
"color": "#EBF0F8"
},
"line": {
"color": "white"
}
},
"header": {
"fill": {
"color": "#C8D4E3"
},
"line": {
"color": "white"
}
},
"type": "table"
}
]
},
"layout": {
"annotationdefaults": {
"arrowcolor": "#2a3f5f",
"arrowhead": 0,
"arrowwidth": 1
},
"autotypenumbers": "strict",
"coloraxis": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"colorscale": {
"diverging": [
[
0,
"#8e0152"
],
[
0.1,
"#c51b7d"
],
[
0.2,
"#de77ae"
],
[
0.3,
"#f1b6da"
],
[
0.4,
"#fde0ef"
],
[
0.5,
"#f7f7f7"
],
[
0.6,
"#e6f5d0"
],
[
0.7,
"#b8e186"
],
[
0.8,
"#7fbc41"
],
[
0.9,
"#4d9221"
],
[
1,
"#276419"
]
],
"sequential": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"sequentialminus": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
]
},
"colorway": [
"#636efa",
"#EF553B",
"#00cc96",
"#ab63fa",
"#FFA15A",
"#19d3f3",
"#FF6692",
"#B6E880",
"#FF97FF",
"#FECB52"
],
"font": {
"color": "#2a3f5f"
},
"geo": {
"bgcolor": "white",
"lakecolor": "white",
"landcolor": "#E5ECF6",
"showlakes": true,
"showland": true,
"subunitcolor": "white"
},
"hoverlabel": {
"align": "left"
},
"hovermode": "closest",
"mapbox": {
"style": "light"
},
"paper_bgcolor": "white",
"plot_bgcolor": "#E5ECF6",
"polar": {
"angularaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"radialaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"scene": {
"xaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"yaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"zaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
}
},
"shapedefaults": {
"line": {
"color": "#2a3f5f"
}
},
"ternary": {
"aaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"baxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"caxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"title": {
"x": 0.05
},
"xaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
},
"yaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
}
}
},
"width": 1400
}
},
"text/html": [
"<div> <div id=\"7c8ae3eb-511f-4ccf-8488-f74d51db6032\" class=\"plotly-graph-div\" style=\"height:800px; width:1400px;\"></div> <script type=\"text/javascript\"> require([\"plotly\"], function(Plotly) { window.PLOTLYENV=window.PLOTLYENV || {}; if (document.getElementById(\"7c8ae3eb-511f-4ccf-8488-f74d51db6032\")) { Plotly.newPlot( \"7c8ae3eb-511f-4ccf-8488-f74d51db6032\", [{\"customdata\":[[\"Aarewasser\"],[\"Abbaye de Belval\"],[\"Abbaye de Citeaux\"],[\"Abbaye de Tami\\u00e9\"],[\"Abbaye de Timadeuc\"],[\"Abbaye du Mont des Cats\"],[\"Abbot\\u2019s Gold\"],[\"Abondance\"],[\"Adelost\"],[\"ADL Brick Cheese\"],[\"ADL Mild Cheddar\"],[\"Affidelice au Chablis\"],[\"Affineur Walo Rotwein Sennech\\u00e4s\"],[\"Afuega'l Pitu\"],[\"Aged British Cheddar\"],[\"Aged Cheddar\"],[\"Aggiano\"],[\"Airedale\"],[\"Aisy Cendre\"],[\"Alex James Co. No 1 Cheddar\"],[\"Alex James Co. No 2 Blue Monday\"],[\"Alex James Co. No 3 Valley Brie\"],[\"Alex James Co. No 5 Grunge\"],[\"Alisia-Victoria\"],[\"Allgauer Emmentaler\"],[\"Alma Vorarlberger Alpk\\u00e4se (3-5 months)\"],[\"Alma Vorarlberger Alpk\\u00e4se (6-9 months)\"],[\"Alma Vorarlberger Bergk\\u00e4se (10 months)\"],[\"Alma Vorarlberger Bergk\\u00e4se (12 months)\"],[\"Alma Vorarlberger Bergk\\u00e4se (6 months)\"],[\"Almn\\u00e4s Tegel\"],[\"Alpe di Frabosa\"],[\"Alpha Tolman\"],[\"Alpine Gold\"],[\"Alpk\\u00e4se\"],[\"Alps Rebel\"],[\"Alta Badia\"],[\"Amablu Blue cheese\"],[\"Ameribella\"],[\"American Cheese\"],[\"Ami du Chambertin\"],[\"Amish Frolic\"],[\"Amul Cheese Spread\"],[\"Amul Emmental\"],[\"Amul Gouda\"],[\"Amul Pizza Mozzarella Cheese\"],[\"Anniversary Ale Cheddar\"],[\"Anster\"],[\"Appalachian\"],[\"Appenzeller\"],[\"Apple Walnut Smoked\"],[\"Appleby's Double Gloucester\"],[\"Applewood\"],[\"Ardrahan\"],[\"Ar\\u00e5dalen\"],[\"Ascutney Mountain\"],[\"Asher Blue\"],[\"Ashley\"],[\"Asiago DOP\"],[\"Asiago d\\u2019Allevo DOP\"],[\"Asiago Pressato DOP\"],[\"Auld Lochnagar\"],[\"Auld Reekie\"],[\"Aura\"],[\"Austrian Alps cheese\"],[\"Avaxtskyr\"],[\"Avonlea Clothbound Cheddar\"],[\"Baby Brie\"],[\"Baby Swiss\"],[\"Babybel\"],[\"Baguette Laonnaise\"],[\"Baita Friuli\"],[\"Balaton\"],[\"Baluchon\"],[\"Bandal\"],[\"Barambah Organics Marinated Feta\"],[\"Barber's 1833\"],[\"Barberey\"],[\"Barden Blue\"],[\"Barely Buzzed\"],[\"Barlocco\"],[\"Baron Bigod\"],[\"Baron Bigod Baby Truffle\"],[\"Barricato al Pepe\"],[\"Barry's Bay Cheddar\"],[\"Basils Original Rauchk\\u00e4se\"],[\"Basket Cheese\"],[\"Bassigny au porto\"],[\"Bath Blue\"],[\"Bath Soft Cheese\"],[\"Bath Soft Cheese Truffled\"],[\"Bavaria blu\"],[\"Bavarian Bergkase\"],[\"Bayley Hazen Blue\"],[\"Baylough\"],[\"Beach Box Brie\"],[\"Beaufort\"],[\"Beaumont\"],[\"Beauvale\"],[\"Beauvoorde\"],[\"Beehive Fresh\"],[\"Beemster Aged\"],[\"Beemster Classic\"],[\"Beemster Extra Aged (XO)\"],[\"Beemster Graskaas\"],[\"Bega Processed Cheddar\"],[\"Bel Ceillo\"],[\"Bel Paese\"],[\"Bella Lodi\"],[\"Belle Creme\"],[\"Belletoile\"],[\"Bellwether Farms Crescenza\"],[\"Bent River\"],[\"Bergader\"],[\"Bergues\"],[\"Bermondsey Hard Pressed\"],[\"Bethmale des Pyrenees\"],[\"Bianco\"],[\"Bierkase\"],[\"Big John's Cajun\"],[\"Big Rock Blue\"],[\"Binnorie Marinated Fetta\"],[\"Bishop Kennedy\"],[\"Bix\"],[\"Black Bomber Cheddar\"],[\"Blacksticks Blue\"],[\"Blaenafon Pwll Ddu\"],[\"Blarney Castle\"],[\"Bleu B\\u00e9n\\u00e9dictin\"],[\"Bleu d'Auvergne\"],[\"Bleu de Laqueuille\"],[\"Bleu Des Causses\"],[\"Bleu L'Ermite\"],[\"Bleu Mont Dairy Bandaged Cheddar\"],[\"Bleubry\"],[\"Blu '61\"],[\"Blue Castello\"],[\"Blue Clouds\"],[\"Blue Earth\"],[\"Blue Vein (Australian)\"],[\"Blue Wensleydale\"],[\"Blue Yonder\"],[\"Bluebell\"],[\"Blythedale Camembert Vermont\\u2122\"],[\"Boeren-Leidse met sleutels\"],[\"Boivin Extra Aged Cheddar\"],[\"Boivin Marbled Cheddar\"],[\"Boivin Medium Cheddar\"],[\"Bonchester\"],[\"Bonifaz\"],[\"Boo Boo Baby Swiss\"],[\"Bothwell Black Truffle Cheddar\"],[\"Boulette d'Avesnes\"],[\"Bouncing Berry\"],[\"Boursault\"],[\"Boursin\"],[\"Bouyssou\"],[\"Bra Duro DOP\"],[\"Braudostur\"],[\"Breakfast Cheese\"],[\"Bresse Bleu\"],[\"Brewer's Gold\"],[\"Brick\"],[\"Bridgewater\"],[\"Brie\"],[\"Brie au poivre (Brie with pepper)\"],[\"Brie Coco\"],[\"Brie d'Alexis\"],[\"Brie de Meaux\"],[\"Brie de Melun\"],[\"Brie de Portneuf\"],[\"Brie de Portneuf Double Cream\"],[\"Brillat-Savarin\"],[\"Brillo di Treviso\"],[\"Brimstone\"],[\"Brin\"],[\"Briscola\"],[\"Brise du Matin\"],[\"Bruder Basil\"],[\"Brusselae Kaas (Fromage de Bruxelles)\"],[\"Brutal Blue\"],[\"Burwash Rose\"],[\"Burwood Bole\"],[\"Butte\"],[\"Buttermilk Blue\"],[\"Buttermilk Blue Affinee\"],[\"Buttermilk Gorgonzola\"],[\"Butternut\"],[\"Buxton Blue\"],[\"Caboc\"],[\"Cabot Clothbound\"],[\"Cabrales\"],[\"Caciobarricato\"],[\"Caciobirraio\"],[\"Caciocavallo\"],[\"Caciocavallo Podolico Vetus\"],[\"Cacow Belle\"],[\"Caerphilly\"],[\"Cahill's Irish Porter Cheddar\"],[\"Cahill's Whiskey Cheese\"],[\"cambazola\"],[\"Cambozola Grand Noir\"],[\"Cambus o\\u2019May\"],[\"Camembert\"],[\"Camembert Calvados\"],[\"Camembert de Normandie\"],[\"Camembert de Portneuf\"],[\"Camembert des Camarades\"],[\"Campfire\"],[\"Canastra cheese\"],[\"Cancoillotte (Cancoyotte)\"],[\"Cantal\"],[\"Caprice des Dieux\"],[\"Carabiner\"],[\"Carlina\"],[\"Carlow\"],[\"Carmody\"],[\"Carnia Altobut\"],[\"Caronzola\"],[\"Carr Valley Glacier Wildfire Blue\"],[\"Carre de l'Est\"],[\"Carrick\"],[\"Carrot Rebel\"],[\"Carrowholly\"],[\"Cashel Blue\"],[\"Castle Blue\"],[\"Cathelain\"],[\"Catupiry\"],[\"Cave Rebel\"],[\"Caveman Blue\"],[\"Caws Penhelyg Abaty\"],[\"Cello Thick & Smooth Mascarpone\"],[\"Celtic Promise\"],[\"Cendre d'Olivet\"],[\"Cendr\\u00e9 des Pr\\u00e9s\"],[\"Challerhocker\"],[\"Champignon de Luxe Garlic\"],[\"Champignon de Luxe Pepper\"],[\"Champignon Mushrooom\"],[\"Chaource\"],[\"Chapman's Pasture\"],[\"Chaumes\"],[\"Checkerboard Cheddar\"],[\"Cheddar\"],[\"Cheddar LaDiDa Lavender\"],[\"Cheddar with Irish Porter\"],[\"Cheddar with Red Wine\"],[\"Cherokee Rose\"],[\"Cheshire\"],[\"Chimney Rock\"],[\"Chiriboga Blue\"],[\"Chocolate Lab\"],[\"Chocolate Stout Cheddar\"],[\"Chontaleno\"],[\"Chorlton Blue Cheshire\"],[\"Ch\\u00e2teau de Versailles\"],[\"Cirrus\"],[\"Classics Fresh Mozzarella\"],[\"Clava Brie\"],[\"Coalho\"],[\"Coastal Cheddar\"],[\"Coeur de Camembert au Calvados\"],[\"Colby\"],[\"Cold Pack\"],[\"ColoRouge\"],[\"Colston Bassett Stilton\"],[\"Comox Brie\"],[\"Comox Camembert\"],[\"Comte\"],[\"Comte 12 months\"],[\"Comte 18 months\"],[\"Comtomme\"],[\"Conciato Al Pepe\"],[\"Condio\"],[\"Connemara\"],[\"Coolattin Cheddar\"],[\"Coolea\"],[\"Cooleney\"],[\"Coquetdale\"],[\"Cornish Blue\"],[\"Cornish Brie\"],[\"Cornish Crumbly\"],[\"Cornish Pepper\"],[\"Cornish Smuggler\"],[\"Cornish Wild Garlic Yarg\"],[\"Cornish Yarg\"],[\"Cote Hill Blue\"],[\"Cotherstone\"],[\"Cotija Cheese\"],[\"Cotswold\"],[\"Cottage Cheese (Australian)\"],[\"Cougar Gold\"],[\"Coulommiers\"],[\"Country Morning\"],[\"Coverdale\"],[\"Cow's Milk Gouda\"],[\"Cranborne\"],[\"Cravero Parmigiano Reggiano\"],[\"Crayeux de Roncq\"],[\"Cream Cheese\"],[\"Cream Havarti\"],[\"Creamy Gouda\"],[\"Creamy Lancashire\"],[\"Cremig Extra W\\u00fcrzig, Bergk\\u00e4se Aus Dem Schweizer Jura\"],[\"Crescenza-Stracchino\"],[\"Criffel\"],[\"Criollo Cheese\"],[\"Crowdie\"],[\"Crowley\"],[\"Crucolo\"],[\"Crumbly Lancashire\"],[\"Cr\\u00e9Mont\\u00e9\"],[\"Cup Cheese\"],[\"Cure Nantais\"],[\"Curworthy\"],[\"L'Affine Au Chablis\"],[\"L'Amuse Brabander Goat Gouda\"],[\"L'Amuse Signature Gouda\"],[\"L'Aveyronnais\"],[\"L'Ecir de l'Aubrac\"],[\"L'\\u00c9tivaz\"],[\"La Bonaparte\"],[\"La Casatella\"],[\"La Fleurie\"],[\"La Peral\"],[\"La Rumeur\"],[\"La Sauvagine\"],[\"La Sauvagine R\\u00e9serve\"],[\"La Vache Qui Rit cheese\"],[\"Labneh\"],[\"Lacy Swiss\"],[\"Lady Jane\"],[\"Laganory\"],[\"Laguiole\"],[\"Lajta\"],[\"Lake District Extra Mature Cheddar\"],[\"Lake District Mature Cheddar\"],[\"Lancashire Smoked\"],[\"Landaff\"],[\"Langres\"],[\"Lappi\"],[\"Largo\"],[\"Latteria Navel\"],[\"Latteria San Biagio\"],[\"Lavistown\"],[\"Le Brin\"],[\"Le Conquerant Camembert\"],[\"Le Duc Vacherin\"],[\"Le Gruy\\u00e8re AOP\"],[\"Le Mar\\u00e9chal\"],[\"Le Wavreumont\"],[\"Leerdammer\"],[\"Legacy\"],[\"Legato\"],[\"Les Calendos\"],[\"Leyden\"],[\"Lil Moo\"],[\"Liliputas\"],[\"Lincolnshire Poacher\"],[\"Lindale\"],[\"Lindy Hop\"],[\"Liptauer\"],[\"Little Colonel\"],[\"Little Qualicum Raclette\"],[\"Livarot\"],[\"Llanboidy\"],[\"Llanglofan Farmhouse\"],[\"Lo Speziato\"],[\"Loch Arthur Farmhouse\"],[\"Loma Alta\"],[\"Longhorn\"],[\"Lou Bergier Pichin\"],[\"Lou Palou\"],[\"Lyburn Garlic and Nettle\"],[\"Lyburn Gold\"],[\"Lyburn Lightly Oak Smoked\"],[\"Lyburn's Winchester\"],[\"Maasdam\"],[\"Maffra Aged Rinded Cheddar\"],[\"Maffra Cheshire\"],[\"Maffra Dargo Walnut\"],[\"Maffra Mature Cheddar\"],[\"Maffra Peppercorn Cheddar\"],[\"Maffra Red Leicester\"],[\"Maffra Sage Derby\"],[\"Maffra Wensleydale\"],[\"Maggie's Round\"],[\"Magna\"],[\"Mahoe Aged Gouda\"],[\"Mah\\u00f3n\"],[\"Maida Vale\"],[\"Maisie's Kebbuck\"],[\"Mandolin\"],[\"Mango Rebel\"],[\"Manteca\"],[\"Marble Cheddar\"],[\"Marble Cheese\"],[\"Marco Polo\"],[\"Maredsous\"],[\"Margot\"],[\"Maribo\"],[\"Marin French Triple Cr\\u00e8me\"],[\"Maroilles\"],[\"Martha's Heat\"],[\"Mascarpone\"],[\"Mature Wensleydale\"],[\"May Hill Green\"],[\"Maytag Blue\"],[\"McLaren\"],[\"Medallion\"],[\"Melinda Mae\"],[\"Menallack Farmhouse\"],[\"Menonita\"],[\"Merry Wyfe\"],[\"Mersey Valley Original Vintage\"],[\"Meyer Vintage Gouda\"],[\"MezzaLuna Fontina\"],[\"Mezzo Secco\"],[\"Milawa Blue\"],[\"Milawa Brie\"],[\"Milawa White\"],[\"Milbenk\\u00e4se\"],[\"Milleens\"],[\"Mimolette (Boule de Lille)\"],[\"Minas cheese\"],[\"Minger\"],[\"Mirabo Brie with Walnut\"],[\"Miss Muffet\"],[\"Mladi Trapist\"],[\"Molbo\"],[\"Mondseer\"],[\"Mont D'or\"],[\"Mont St-Beno\\u00eet\"],[\"Montagnolo\"],[\"Montasio\"],[\"Montasio Mezzano\"],[\"Montasio Vecchio\"],[\"Monteo\"],[\"Montgomery's Cheddar\"],[\"Montsalvat\"],[\"Moody Blue\"],[\"Moonlight Chaource\"],[\"Morbier\"],[\"Morgan\"],[\"Morimoto Soba Ale Cheddar\"],[\"Morlacco\"],[\"Moses Sleeper\"],[\"Mossfield Organic\"],[\"MouCo Camembert\"],[\"MouCo Truffello\"],[\"Mountain Herbs Rebel\"],[\"Mountain Rebel\"],[\"Mountaineer\"],[\"Mouse House Chilli Cheddar\"],[\"Mouse House Garlic & Chive Cheddar\"],[\"Mouse House Smoked Cheddar\"],[\"Mozzarellissima\"],[\"Mt Scott\"],[\"Mt Tam\"],[\"Muenster\"],[\"Muffato\"],[\"Mun-chee\"],[\"Munster\"],[\"Muranda Blue\"],[\"Murol\"],[\"Mycella\"],[\"M\\u00e9t\\u00e9orite\"],[\"Pacific Rock\"],[\"Pack Square\"],[\"Paesanella Bocconcini\"],[\"Paesanella Burrata\"],[\"Paesanella Caciotta\"],[\"Paesanella Caciotta with Rocket & Chilli\"],[\"Paesanella Cherry Bocconcini\"],[\"Paesanella Dry Ricotta\"],[\"Paesanella Fresco\"],[\"Paesanella Fresh Ricotta\"],[\"Palet de Babligny\"],[\"Pallone di Gravina\"],[\"Panela\"],[\"Paniolo\"],[\"Pannerone\"],[\"Panquehue\"],[\"Paprika Rebel\"],[\"Parmesan\"],[\"Parrano\"],[\"Pas de l'Escalette\"],[\"Passendale\"],[\"Patefine Fort\"],[\"Pave d'Affinois\"],[\"Pave d'Auge\"],[\"Pawlet\"],[\"Peau Rouge\"],[\"Peekskill Pyramid\"],[\"Pembrokeshire Extra Mature Cheddar\"],[\"Pembrokeshire Mature Cheddar\"],[\"Penbryn\"],[\"Pencarreg\"],[\"PepBert\"],[\"Pepper Jack\"],[\"Pepper Rebel\"],[\"Peppercorn Gouda\"],[\"Perl Las Blue\"],[\"Perl Wen\"],[\"Perlagrigia Sotto Cenere\"],[\"Petida\"],[\"Petit Pardou\"],[\"Petit-Suisse\"],[\"Petite Swiss\"],[\"Pianoforte\"],[\"Piave\"],[\"Piave Fresco\"],[\"Piave Mezzano\"],[\"Piave Vecchio DOP\"],[\"Piave Vecchio Selezione Oro\"],[\"Picobello\"],[\"Picolo\"],[\"Picos de Europa\"],[\"Pied-de-vent\"],[\"Pierce Pt\"],[\"Pimento\"],[\"Pinconning\"],[\"Piora\"],[\"Pistol Point Cheddar\"],[\"Pitchfork Cheddar\"],[\"Pithtiviers au Foin\"],[\"Pizy\"],[\"Pleasant Ridge Reserve\"],[\"Plymouth Cheese\"],[\"Point Reyes Bay Blue\"],[\"Point Reyes Original Blue\"],[\"Point Reyes Toma\"],[\"Pokolbin\"],[\"Pompeii\"],[\"Pong's Extraordinary... Cheddar\"],[\"Pont l'Eveque\"],[\"Port Nicholson\"],[\"Port-Salut\"],[\"Postel\"],[\"Prairie Breeze Cheddar\"],[\"Prastost\"],[\"President Brie\"],[\"President Camembert\"],[\"President Light Brie\"],[\"President Madrigal\"],[\"Prima Donna\"],[\"Prima Donna fino\"],[\"Prima Donna leggero\"],[\"Prima Donna maturo\"],[\"Prince-Jean\"],[\"Prix de Diane\"],[\"Processed Smoked Gouda\"],[\"Promontory\"],[\"Provel\"],[\"Provolone\"],[\"Provolone del Monaco\"],[\"Provolone Mandarino Gran Riserva\"],[\"Provolone Valpadana\"],[\"Pyengana Cheddar\"],[\"Saaland Pfarr\"],[\"Saanenkaese\"],[\"Saga\"],[\"Sage Derby\"],[\"Saint Agur\"],[\"Saint Albray\"],[\"Saint Andr\\u00e9\"],[\"Saint Felicien\"],[\"Saint Honor\\u00e9\"],[\"Saint Marcellin\"],[\"Saint Nectaire\"],[\"Saint Paulin\"],[\"Salemville Amish Blue\"],[\"Salemville Amish Gorgonzola\"],[\"Salemville Smokehaus Blue\"],[\"Salers\"],[\"Salsa Asiago\"],[\"Samso\"],[\"San Geronimo\"],[\"San Sim\\u00f3n DOP\"],[\"Sao Jorge\"],[\"Sap Sago\"],[\"Saporito\"],[\"Sardo\"],[\"Sartori Classic Cheese Asiago\"],[\"Sartori Classic Cheese Fontina\"],[\"Sartori Classic Cheese Parmesan\"],[\"Sartori Classic Cheese Romano\"],[\"Sartori Classic MontAmore\"],[\"Sartori Limited Edition Cannella BellaVitano\"],[\"Sartori Limited Edition Cognac BellaVitano\"],[\"Sartori Limited Edition Family Heirloom BellaVitano\"],[\"Sartori Limited Edition Family Heirloom Parmesan\"],[\"Sartori Reserve Balsamic BellaVitano\"],[\"Sartori Reserve Basil & Olive Oil Asiago\"],[\"Sartori Reserve BellaVitano Gold\"],[\"Sartori Reserve Black Pepper BellaVitano\"],[\"Sartori Reserve Chai BellaVitano\"],[\"Sartori Reserve Cheese Mediterranean Fontina\"],[\"Sartori Reserve Dolcina Gorgonzola\"],[\"Sartori Reserve Espresso BellaVitano\"],[\"Sartori Reserve Extra Aged Fontina\"],[\"Sartori Reserve Extra-Aged Asiago\"],[\"Sartori Reserve Merlot BellaVitano\"],[\"Sartori Reserve Raspberry BellaVitano\"],[\"Sartori Reserve Rosemary & Olive Oil Asiago\"],[\"Sartori Reserve SarVecchio Parmesan\"],[\"Sbrinz\"],[\"Scallion Onion Cheddar\"],[\"Scamorza\"],[\"Schloss\"],[\"Scotch Bonnet Cheddar\"],[\"Sea Change\"],[\"Seahive\"],[\"Seastack\"],[\"Seator's Orkney\"],[\"Selva\"],[\"Seriously Strong Cheddar\"],[\"Sharon Hollow Garlic and Chive\"],[\"Sharp Cheddar\"],[\"Sharpham\"],[\"Sharpham Elmhirst\"],[\"Sharpham Rustic\"],[\"Sharpham Rustic Chive & Garlic\"],[\"Shelburne Cheddar\"],[\"Ships Wheel Brie\"],[\"Shorrock's Lancashire Bomb\"],[\"Shropshire Blue\"],[\"Shtayburne Farm Cheddar\"],[\"Shtayburne Farm Monterey Jack\"],[\"Sicilian Blend\"],[\"Smoked Fior Di Latte\"],[\"Smoked Lincolnshire Poacher\"],[\"Smokey Oregon Blue\"],[\"Smokey Touvelle\"],[\"Somerset Brie\"],[\"Somerset Organic Cheddar\"],[\"Sonoma Jack\"],[\"Sottocenere\\u00ae al Tartufo\"],[\"Soumaintrain\"],[\"Sourire Lozerien\"],[\"Sparkenhoe Red Leicester\"],[\"Speziato\"],[\"St Andrews Farmhouse Cheddar\"],[\"St Cera\"],[\"St Fid\\u00e8le Swiss\"],[\"St Gall\"],[\"St Jude\"],[\"St Killian\"],[\"St Mang Original Allg\\u00e4uer Limburger\"],[\"St Pat\"],[\"Staffordshire Organic\"],[\"Stella Asiago\"],[\"Stella Black Pepper Romano\"],[\"Stella Blue\"],[\"Stella Feta\"],[\"Stella Fontina\"],[\"Stella Fontinella\"],[\"Stella Gorgonzola\"],[\"Stella Italian Sharp\"],[\"Stella Kasseri\"],[\"Stella Mediterranean Parmesan\"],[\"Stella Parmesan\"],[\"Stella Parmesan & Romano Blend\"],[\"Stella Reduced Fat Blue\"],[\"Stella Smoked Blue\"],[\"Stella Swiss\"],[\"Sternschnuppe\"],[\"Stichelton\"],[\"Stilton\"],[\"Stinking Bishop\"],[\"Stoney Cross\"],[\"Stracchinata\"],[\"Strathdon Blue\"],[\"Striegistaler Zwerge Camembert\"],[\"Suffolk Punch\"],[\"Sveciaost\"],[\"Swiss cheese\"]],\"hovertemplate\":\"\\u003cb\\u003e%{hovertext}\\u003c\\u002fb\\u003e\\u003cbr\\u003e\\u003cbr\\u003emilk=cow\\u003cbr\\u003elatitude=%{lat}\\u003cbr\\u003elongitude=%{lon}\\u003cbr\\u003echeese=%{customdata[0]}\\u003cextra\\u003e\\u003c\\u002fextra\\u003e\",\"hovertext\":[\"Aarewasser\",\"Abbaye de Belval\",\"Abbaye de Citeaux\",\"Abbaye de Tami\\u00e9\",\"Abbaye de Timadeuc\",\"Abbaye du Mont des Cats\",\"Abbot\\u2019s Gold\",\"Abondance\",\"Adelost\",\"ADL Brick Cheese\",\"ADL Mild Cheddar\",\"Affidelice au Chablis\",\"Affineur Walo Rotwein Sennech\\u00e4s\",\"Afuega'l Pitu\",\"Aged British Cheddar\",\"Aged Cheddar\",\"Aggiano\",\"Airedale\",\"Aisy Cendre\",\"Alex James Co. No 1 Cheddar\",\"Alex James Co. No 2 Blue Monday\",\"Alex James Co. No 3 Valley Brie\",\"Alex James Co. No 5 Grunge\",\"Alisia-Victoria\",\"Allgauer Emmentaler\",\"Alma Vorarlberger Alpk\\u00e4se (3-5 months)\",\"Alma Vorarlberger Alpk\\u00e4se (6-9 months)\",\"Alma Vorarlberger Bergk\\u00e4se (10 months)\",\"Alma Vorarlberger Bergk\\u00e4se (12 months)\",\"Alma Vorarlberger Bergk\\u00e4se (6 months)\",\"Almn\\u00e4s Tegel\",\"Alpe di Frabosa\",\"Alpha Tolman\",\"Alpine Gold\",\"Alpk\\u00e4se\",\"Alps Rebel\",\"Alta Badia\",\"Amablu Blue cheese\",\"Ameribella\",\"American Cheese\",\"Ami du Chambertin\",\"Amish Frolic\",\"Amul Cheese Spread\",\"Amul Emmental\",\"Amul Gouda\",\"Amul Pizza Mozzarella Cheese\",\"Anniversary Ale Cheddar\",\"Anster\",\"Appalachian\",\"Appenzeller\",\"Apple Walnut Smoked\",\"Appleby's Double Gloucester\",\"Applewood\",\"Ardrahan\",\"Ar\\u00e5dalen\",\"Ascutney Mountain\",\"Asher Blue\",\"Ashley\",\"Asiago DOP\",\"Asiago d\\u2019Allevo DOP\",\"Asiago Pressato DOP\",\"Auld Lochnagar\",\"Auld Reekie\",\"Aura\",\"Austrian Alps cheese\",\"Avaxtskyr\",\"Avonlea Clothbound Cheddar\",\"Baby Brie\",\"Baby Swiss\",\"Babybel\",\"Baguette Laonnaise\",\"Baita Friuli\",\"Balaton\",\"Baluchon\",\"Bandal\",\"Barambah Organics Marinated Feta\",\"Barber's 1833\",\"Barberey\",\"Barden Blue\",\"Barely Buzzed\",\"Barlocco\",\"Baron Bigod\",\"Baron Bigod Baby Truffle\",\"Barricato al Pepe\",\"Barry's Bay Cheddar\",\"Basils Original Rauchk\\u00e4se\",\"Basket Cheese\",\"Bassigny au porto\",\"Bath Blue\",\"Bath Soft Cheese\",\"Bath Soft Cheese Truffled\",\"Bavaria blu\",\"Bavarian Bergkase\",\"Bayley Hazen Blue\",\"Baylough\",\"Beach Box Brie\",\"Beaufort\",\"Beaumont\",\"Beauvale\",\"Beauvoorde\",\"Beehive Fresh\",\"Beemster Aged\",\"Beemster Classic\",\"Beemster Extra Aged (XO)\",\"Beemster Graskaas\",\"Bega Processed Cheddar\",\"Bel Ceillo\",\"Bel Paese\",\"Bella Lodi\",\"Belle Creme\",\"Belletoile\",\"Bellwether Farms Crescenza\",\"Bent River\",\"Bergader\",\"Bergues\",\"Bermondsey Hard Pressed\",\"Bethmale des Pyrenees\",\"Bianco\",\"Bierkase\",\"Big John's Cajun\",\"Big Rock Blue\",\"Binnorie Marinated Fetta\",\"Bishop Kennedy\",\"Bix\",\"Black Bomber Cheddar\",\"Blacksticks Blue\",\"Blaenafon Pwll Ddu\",\"Blarney Castle\",\"Bleu B\\u00e9n\\u00e9dictin\",\"Bleu d'Auvergne\",\"Bleu de Laqueuille\",\"Bleu Des Causses\",\"Bleu L'Ermite\",\"Bleu Mont Dairy Bandaged Cheddar\",\"Bleubry\",\"Blu '61\",\"Blue Castello\",\"Blue Clouds\",\"Blue Earth\",\"Blue Vein (Australian)\",\"Blue Wensleydale\",\"Blue Yonder\",\"Bluebell\",\"Blythedale Camembert Vermont\\u2122\",\"Boeren-Leidse met sleutels\",\"Boivin Extra Aged Cheddar\",\"Boivin Marbled Cheddar\",\"Boivin Medium Cheddar\",\"Bonchester\",\"Bonifaz\",\"Boo Boo Baby Swiss\",\"Bothwell Black Truffle Cheddar\",\"Boulette d'Avesnes\",\"Bouncing Berry\",\"Boursault\",\"Boursin\",\"Bouyssou\",\"Bra Duro DOP\",\"Braudostur\",\"Breakfast Cheese\",\"Bresse Bleu\",\"Brewer's Gold\",\"Brick\",\"Bridgewater\",\"Brie\",\"Brie au poivre (Brie with pepper)\",\"Brie Coco\",\"Brie d'Alexis\",\"Brie de Meaux\",\"Brie de Melun\",\"Brie de Portneuf\",\"Brie de Portneuf Double Cream\",\"Brillat-Savarin\",\"Brillo di Treviso\",\"Brimstone\",\"Brin\",\"Briscola\",\"Brise du Matin\",\"Bruder Basil\",\"Brusselae Kaas (Fromage de Bruxelles)\",\"Brutal Blue\",\"Burwash Rose\",\"Burwood Bole\",\"Butte\",\"Buttermilk Blue\",\"Buttermilk Blue Affinee\",\"Buttermilk Gorgonzola\",\"Butternut\",\"Buxton Blue\",\"Caboc\",\"Cabot Clothbound\",\"Cabrales\",\"Caciobarricato\",\"Caciobirraio\",\"Caciocavallo\",\"Caciocavallo Podolico Vetus\",\"Cacow Belle\",\"Caerphilly\",\"Cahill's Irish Porter Cheddar\",\"Cahill's Whiskey Cheese\",\"cambazola\",\"Cambozola Grand Noir\",\"Cambus o\\u2019May\",\"Camembert\",\"Camembert Calvados\",\"Camembert de Normandie\",\"Camembert de Portneuf\",\"Camembert des Camarades\",\"Campfire\",\"Canastra cheese\",\"Cancoillotte (Cancoyotte)\",\"Cantal\",\"Caprice des Dieux\",\"Carabiner\",\"Carlina\",\"Carlow\",\"Carmody\",\"Carnia Altobut\",\"Caronzola\",\"Carr Valley Glacier Wildfire Blue\",\"Carre de l'Est\",\"Carrick\",\"Carrot Rebel\",\"Carrowholly\",\"Cashel Blue\",\"Castle Blue\",\"Cathelain\",\"Catupiry\",\"Cave Rebel\",\"Caveman Blue\",\"Caws Penhelyg Abaty\",\"Cello Thick & Smooth Mascarpone\",\"Celtic Promise\",\"Cendre d'Olivet\",\"Cendr\\u00e9 des Pr\\u00e9s\",\"Challerhocker\",\"Champignon de Luxe Garlic\",\"Champignon de Luxe Pepper\",\"Champignon Mushrooom\",\"Chaource\",\"Chapman's Pasture\",\"Chaumes\",\"Checkerboard Cheddar\",\"Cheddar\",\"Cheddar LaDiDa Lavender\",\"Cheddar with Irish Porter\",\"Cheddar with Red Wine\",\"Cherokee Rose\",\"Cheshire\",\"Chimney Rock\",\"Chiriboga Blue\",\"Chocolate Lab\",\"Chocolate Stout Cheddar\",\"Chontaleno\",\"Chorlton Blue Cheshire\",\"Ch\\u00e2teau de Versailles\",\"Cirrus\",\"Classics Fresh Mozzarella\",\"Clava Brie\",\"Coalho\",\"Coastal Cheddar\",\"Coeur de Camembert au Calvados\",\"Colby\",\"Cold Pack\",\"ColoRouge\",\"Colston Bassett Stilton\",\"Comox Brie\",\"Comox Camembert\",\"Comte\",\"Comte 12 months\",\"Comte 18 months\",\"Comtomme\",\"Conciato Al Pepe\",\"Condio\",\"Connemara\",\"Coolattin Cheddar\",\"Coolea\",\"Cooleney\",\"Coquetdale\",\"Cornish Blue\",\"Cornish Brie\",\"Cornish Crumbly\",\"Cornish Pepper\",\"Cornish Smuggler\",\"Cornish Wild Garlic Yarg\",\"Cornish Yarg\",\"Cote Hill Blue\",\"Cotherstone\",\"Cotija Cheese\",\"Cotswold\",\"Cottage Cheese (Australian)\",\"Cougar Gold\",\"Coulommiers\",\"Country Morning\",\"Coverdale\",\"Cow's Milk Gouda\",\"Cranborne\",\"Cravero Parmigiano Reggiano\",\"Crayeux de Roncq\",\"Cream Cheese\",\"Cream Havarti\",\"Creamy Gouda\",\"Creamy Lancashire\",\"Cremig Extra W\\u00fcrzig, Bergk\\u00e4se Aus Dem Schweizer Jura\",\"Crescenza-Stracchino\",\"Criffel\",\"Criollo Cheese\",\"Crowdie\",\"Crowley\",\"Crucolo\",\"Crumbly Lancashire\",\"Cr\\u00e9Mont\\u00e9\",\"Cup Cheese\",\"Cure Nantais\",\"Curworthy\",\"L'Affine Au Chablis\",\"L'Amuse Brabander Goat Gouda\",\"L'Amuse Signature Gouda\",\"L'Aveyronnais\",\"L'Ecir de l'Aubrac\",\"L'\\u00c9tivaz\",\"La Bonaparte\",\"La Casatella\",\"La Fleurie\",\"La Peral\",\"La Rumeur\",\"La Sauvagine\",\"La Sauvagine R\\u00e9serve\",\"La Vache Qui Rit cheese\",\"Labneh\",\"Lacy Swiss\",\"Lady Jane\",\"Laganory\",\"Laguiole\",\"Lajta\",\"Lake District Extra Mature Cheddar\",\"Lake District Mature Cheddar\",\"Lancashire Smoked\",\"Landaff\",\"Langres\",\"Lappi\",\"Largo\",\"Latteria Navel\",\"Latteria San Biagio\",\"Lavistown\",\"Le Brin\",\"Le Conquerant Camembert\",\"Le Duc Vacherin\",\"Le Gruy\\u00e8re AOP\",\"Le Mar\\u00e9chal\",\"Le Wavreumont\",\"Leerdammer\",\"Legacy\",\"Legato\",\"Les Calendos\",\"Leyden\",\"Lil Moo\",\"Liliputas\",\"Lincolnshire Poacher\",\"Lindale\",\"Lindy Hop\",\"Liptauer\",\"Little Colonel\",\"Little Qualicum Raclette\",\"Livarot\",\"Llanboidy\",\"Llanglofan Farmhouse\",\"Lo Speziato\",\"Loch Arthur Farmhouse\",\"Loma Alta\",\"Longhorn\",\"Lou Bergier Pichin\",\"Lou Palou\",\"Lyburn Garlic and Nettle\",\"Lyburn Gold\",\"Lyburn Lightly Oak Smoked\",\"Lyburn's Winchester\",\"Maasdam\",\"Maffra Aged Rinded Cheddar\",\"Maffra Cheshire\",\"Maffra Dargo Walnut\",\"Maffra Mature Cheddar\",\"Maffra Peppercorn Cheddar\",\"Maffra Red Leicester\",\"Maffra Sage Derby\",\"Maffra Wensleydale\",\"Maggie's Round\",\"Magna\",\"Mahoe Aged Gouda\",\"Mah\\u00f3n\",\"Maida Vale\",\"Maisie's Kebbuck\",\"Mandolin\",\"Mango Rebel\",\"Manteca\",\"Marble Cheddar\",\"Marble Cheese\",\"Marco Polo\",\"Maredsous\",\"Margot\",\"Maribo\",\"Marin French Triple Cr\\u00e8me\",\"Maroilles\",\"Martha's Heat\",\"Mascarpone\",\"Mature Wensleydale\",\"May Hill Green\",\"Maytag Blue\",\"McLaren\",\"Medallion\",\"Melinda Mae\",\"Menallack Farmhouse\",\"Menonita\",\"Merry Wyfe\",\"Mersey Valley Original Vintage\",\"Meyer Vintage Gouda\",\"MezzaLuna Fontina\",\"Mezzo Secco\",\"Milawa Blue\",\"Milawa Brie\",\"Milawa White\",\"Milbenk\\u00e4se\",\"Milleens\",\"Mimolette (Boule de Lille)\",\"Minas cheese\",\"Minger\",\"Mirabo Brie with Walnut\",\"Miss Muffet\",\"Mladi Trapist\",\"Molbo\",\"Mondseer\",\"Mont D'or\",\"Mont St-Beno\\u00eet\",\"Montagnolo\",\"Montasio\",\"Montasio Mezzano\",\"Montasio Vecchio\",\"Monteo\",\"Montgomery's Cheddar\",\"Montsalvat\",\"Moody Blue\",\"Moonlight Chaource\",\"Morbier\",\"Morgan\",\"Morimoto Soba Ale Cheddar\",\"Morlacco\",\"Moses Sleeper\",\"Mossfield Organic\",\"MouCo Camembert\",\"MouCo Truffello\",\"Mountain Herbs Rebel\",\"Mountain Rebel\",\"Mountaineer\",\"Mouse House Chilli Cheddar\",\"Mouse House Garlic & Chive Cheddar\",\"Mouse House Smoked Cheddar\",\"Mozzarellissima\",\"Mt Scott\",\"Mt Tam\",\"Muenster\",\"Muffato\",\"Mun-chee\",\"Munster\",\"Muranda Blue\",\"Murol\",\"Mycella\",\"M\\u00e9t\\u00e9orite\",\"Pacific Rock\",\"Pack Square\",\"Paesanella Bocconcini\",\"Paesanella Burrata\",\"Paesanella Caciotta\",\"Paesanella Caciotta with Rocket & Chilli\",\"Paesanella Cherry Bocconcini\",\"Paesanella Dry Ricotta\",\"Paesanella Fresco\",\"Paesanella Fresh Ricotta\",\"Palet de Babligny\",\"Pallone di Gravina\",\"Panela\",\"Paniolo\",\"Pannerone\",\"Panquehue\",\"Paprika Rebel\",\"Parmesan\",\"Parrano\",\"Pas de l'Escalette\",\"Passendale\",\"Patefine Fort\",\"Pave d'Affinois\",\"Pave d'Auge\",\"Pawlet\",\"Peau Rouge\",\"Peekskill Pyramid\",\"Pembrokeshire Extra Mature Cheddar\",\"Pembrokeshire Mature Cheddar\",\"Penbryn\",\"Pencarreg\",\"PepBert\",\"Pepper Jack\",\"Pepper Rebel\",\"Peppercorn Gouda\",\"Perl Las Blue\",\"Perl Wen\",\"Perlagrigia Sotto Cenere\",\"Petida\",\"Petit Pardou\",\"Petit-Suisse\",\"Petite Swiss\",\"Pianoforte\",\"Piave\",\"Piave Fresco\",\"Piave Mezzano\",\"Piave Vecchio DOP\",\"Piave Vecchio Selezione Oro\",\"Picobello\",\"Picolo\",\"Picos de Europa\",\"Pied-de-vent\",\"Pierce Pt\",\"Pimento\",\"Pinconning\",\"Piora\",\"Pistol Point Cheddar\",\"Pitchfork Cheddar\",\"Pithtiviers au Foin\",\"Pizy\",\"Pleasant Ridge Reserve\",\"Plymouth Cheese\",\"Point Reyes Bay Blue\",\"Point Reyes Original Blue\",\"Point Reyes Toma\",\"Pokolbin\",\"Pompeii\",\"Pong's Extraordinary... Cheddar\",\"Pont l'Eveque\",\"Port Nicholson\",\"Port-Salut\",\"Postel\",\"Prairie Breeze Cheddar\",\"Prastost\",\"President Brie\",\"President Camembert\",\"President Light Brie\",\"President Madrigal\",\"Prima Donna\",\"Prima Donna fino\",\"Prima Donna leggero\",\"Prima Donna maturo\",\"Prince-Jean\",\"Prix de Diane\",\"Processed Smoked Gouda\",\"Promontory\",\"Provel\",\"Provolone\",\"Provolone del Monaco\",\"Provolone Mandarino Gran Riserva\",\"Provolone Valpadana\",\"Pyengana Cheddar\",\"Saaland Pfarr\",\"Saanenkaese\",\"Saga\",\"Sage Derby\",\"Saint Agur\",\"Saint Albray\",\"Saint Andr\\u00e9\",\"Saint Felicien\",\"Saint Honor\\u00e9\",\"Saint Marcellin\",\"Saint Nectaire\",\"Saint Paulin\",\"Salemville Amish Blue\",\"Salemville Amish Gorgonzola\",\"Salemville Smokehaus Blue\",\"Salers\",\"Salsa Asiago\",\"Samso\",\"San Geronimo\",\"San Sim\\u00f3n DOP\",\"Sao Jorge\",\"Sap Sago\",\"Saporito\",\"Sardo\",\"Sartori Classic Cheese Asiago\",\"Sartori Classic Cheese Fontina\",\"Sartori Classic Cheese Parmesan\",\"Sartori Classic Cheese Romano\",\"Sartori Classic MontAmore\",\"Sartori Limited Edition Cannella BellaVitano\",\"Sartori Limited Edition Cognac BellaVitano\",\"Sartori Limited Edition Family Heirloom BellaVitano\",\"Sartori Limited Edition Family Heirloom Parmesan\",\"Sartori Reserve Balsamic BellaVitano\",\"Sartori Reserve Basil & Olive Oil Asiago\",\"Sartori Reserve BellaVitano Gold\",\"Sartori Reserve Black Pepper BellaVitano\",\"Sartori Reserve Chai BellaVitano\",\"Sartori Reserve Cheese Mediterranean Fontina\",\"Sartori Reserve Dolcina Gorgonzola\",\"Sartori Reserve Espresso BellaVitano\",\"Sartori Reserve Extra Aged Fontina\",\"Sartori Reserve Extra-Aged Asiago\",\"Sartori Reserve Merlot BellaVitano\",\"Sartori Reserve Raspberry BellaVitano\",\"Sartori Reserve Rosemary & Olive Oil Asiago\",\"Sartori Reserve SarVecchio Parmesan\",\"Sbrinz\",\"Scallion Onion Cheddar\",\"Scamorza\",\"Schloss\",\"Scotch Bonnet Cheddar\",\"Sea Change\",\"Seahive\",\"Seastack\",\"Seator's Orkney\",\"Selva\",\"Seriously Strong Cheddar\",\"Sharon Hollow Garlic and Chive\",\"Sharp Cheddar\",\"Sharpham\",\"Sharpham Elmhirst\",\"Sharpham Rustic\",\"Sharpham Rustic Chive & Garlic\",\"Shelburne Cheddar\",\"Ships Wheel Brie\",\"Shorrock's Lancashire Bomb\",\"Shropshire Blue\",\"Shtayburne Farm Cheddar\",\"Shtayburne Farm Monterey Jack\",\"Sicilian Blend\",\"Smoked Fior Di Latte\",\"Smoked Lincolnshire Poacher\",\"Smokey Oregon Blue\",\"Smokey Touvelle\",\"Somerset Brie\",\"Somerset Organic Cheddar\",\"Sonoma Jack\",\"Sottocenere\\u00ae al Tartufo\",\"Soumaintrain\",\"Sourire Lozerien\",\"Sparkenhoe Red Leicester\",\"Speziato\",\"St Andrews Farmhouse Cheddar\",\"St Cera\",\"St Fid\\u00e8le Swiss\",\"St Gall\",\"St Jude\",\"St Killian\",\"St Mang Original Allg\\u00e4uer Limburger\",\"St Pat\",\"Staffordshire Organic\",\"Stella Asiago\",\"Stella Black Pepper Romano\",\"Stella Blue\",\"Stella Feta\",\"Stella Fontina\",\"Stella Fontinella\",\"Stella Gorgonzola\",\"Stella Italian Sharp\",\"Stella Kasseri\",\"Stella Mediterranean Parmesan\",\"Stella Parmesan\",\"Stella Parmesan & Romano Blend\",\"Stella Reduced Fat Blue\",\"Stella Smoked Blue\",\"Stella Swiss\",\"Sternschnuppe\",\"Stichelton\",\"Stilton\",\"Stinking Bishop\",\"Stoney Cross\",\"Stracchinata\",\"Strathdon Blue\",\"Striegistaler Zwerge Camembert\",\"Suffolk Punch\",\"Sveciaost\",\"Swiss cheese\"],\"lat\":[46.7985624,46.603354,47.27808725,45.494895150000005,46.603354,50.5289634,54.13453275,46.603354,59.6749712,46.3355508,46.3355508,47.27808725,46.7985624,43.3133868,43.1561681,39.7837304,39.4225192,-41.5000831,47.27808725,54.7023545,54.7023545,54.7023545,54.7023545,46.7985624,48.15313125,47.25,47.25,47.387028799999996,47.387028799999996,47.387028799999996,58.215850200000006,42.6384261,36.0726355,55.001251,46.7985624,47.52121792021591,42.6384261,39.7837304,40.3270127,39.7837304,47.2261857,41.2222218,22.3850051,22.3850051,22.3850051,22.3850051,34.3129464,56.3333331,37.1232245,46.7985624,39.4225192,51.7643786,51.161750850000004,52.1837912,62.9974877,44.5990718,32.3293809,38.7251776,45.6476663,45.6476663,45.6476663,56.7861112,56.7861112,62.6032186,46.7985624,64.9841821,46.3355508,46.603354,40.5067308,46.603354,48.5499833,46.151042,47.1817585,52.4760892,22.9964948,-27.4689682,52.5310214,48.2971626,43.356893,39.4225192,56.7861112,52.5310214,52.5310214,42.6384261,-41.5000831,51.1638175,39.3014159,50.6402809,51.50076785,51.50076785,54.7023545,51.1638175,51.1638175,36.0726355,52.68482145,-38.3312575,46.603354,45.3175313,53.1188177,51.096246199999996,39.4225192,52.2434979,52.2434979,52.2434979,52.2434979,-24.7761086,43.1561681,45.5703694,45.2613104,52.4760892,46.603354,38.5110803,44.1634663,51.1638175,50.9683886,51.4970125,48.8738565,51.1638175,51.1638175,39.4225192,36.7014631,-32.7792106,56.3822607,54.7023545,54.7023545,54.7023545,52.2928116,51.9325233,52.4760892,45.2968119,45.6507627,46.603354,52.4760892,44.4308975,52.4760892,45.6476663,55.670249,54.7023545,44.1634663,-24.7761086,54.13453275,43.1561681,56.7861112,44.5990718,52.1594747,52.4760892,52.4760892,52.4760892,56.7861112,51.1638175,39.4225192,55.001251,50.5495906,54.7023545,46.603354,49.0291802,44.315857449999996,45.060735,64.9841821,36.7014631,46.603354,52.5362671,44.4308975,42.2813722,46.603354,46.603354,52.4760892,52.4760892,48.6443057,48.6443057,52.4760892,52.4760892,48.6443057,45.6476663,38.7604815,45.2968119,45.6476663,52.4760892,48.9467562,50.6402809,43.9792797,53.960910892985034,50.79683685,46.603354,44.4308975,44.4308975,44.4308975,44.5990718,53.2593422,56.7861112,44.5990718,39.3260685,45.6476663,45.6476663,42.6384261,42.6384261,43.9792797,52.41446365,52.865196,52.518831649999996,51.1638175,47.5926009,57.166667,46.603354,46.603354,49.0677708,52.4760892,52.4760892,48.1179702,-20.1615,46.603354,46.603354,48.2089823,36.7014631,45.6476663,52.69078865,36.7014631,46.3738716,52.4760892,44.4308975,46.603354,56.7861112,47.52121792021591,53.9087056,52.865196,55.001251,46.603354,-10.3333333,47.52121792021591,43.9792797,52.2928116,39.7837304,52.2945764,47.5490251,52.4760892,47.1561047,47.5926009,47.5926009,47.5926009,46.603354,44.5990718,44.0361186,43.1561681,52.5310214,43.9792797,52.400645600000004,52.400645600000004,32.3293809,54.7023545,36.7014631,47.8241593,40.6333724,43.9792797,23.6585116,53.2141028,52.4760892,48.1179702,44.4308975,56.7861112,-10.3333333,50.79683685,48.953684499999994,44.5684775,44.4308975,38.7251776,53.1188177,55.001251,52.4760892,46.603354,46.603354,46.603354,52.4760892,45.6476663,45.735099578237005,40.6333724,52.69078865,52.865196,52.4734839,54.88091196980861,50.443348900000004,50.443348900000004,51.7561518,52.5310214,51.7561518,52.5310214,52.5310214,53.1823034,54.570244,23.6585116,51.9425914,-24.7761086,46.7304268,46.603354,55.001251,54.13453275,45.709097,50.79683685,44.5384728,50.7531232,39.7837304,55.670249,52.2434979,52.5310214,47.3566699,42.6384261,55.166667,18.5565446,56.7861112,44.5990718,42.6384261,52.5310214,48.536217,40.9699889,45.3462,50.724140500000004,46.603354,52.2434979,52.2434979,46.603354,45.2968119,46.7985624,52.4760892,45.6476663,44.5990718,39.3260685,52.4760892,52.4760892,52.4760892,46.603354,39.3014159,39.7837304,55.001251,56.7861112,44.315857449999996,47.1817585,54.478530449999994,54.478530449999994,52.5310214,43.4849133,46.603354,67.69291045,36.7014631,42.6384261,45.6476663,52.5362671,45.2968119,49.0356178,48.68347355,46.7985624,46.7985624,50.154540049999994,51.920458,38.7604815,36.7014631,52.4760892,52.1594747,32.3293809,55.0820118,52.5310214,35.6729639,44.5990718,42.2813722,50.79683685,55.001251,46.603354,51.893669849999995,51.8339209,45.806691349999994,55.0691397,36.7014631,44.5684775,45.060735,48.8738565,50.9700788,50.9700788,50.9700788,50.9700788,52.4601118,-37.87448275,-37.87448275,-37.87448275,-37.87448275,-37.87448275,-37.87448275,-37.87448275,-37.87448275,42.3788774,62.9974877,52.2434979,39.949257200000005,52.5310214,55.5752966,-30.5343665,47.52121792021591,40.500571,54.7023545,54.7023545,47.6038321,50.6402809,45.060735,54.7758018,38.2325829,46.603354,-38.3312575,45.5703694,54.13453275,51.7643786,41.9216734,-30.5343665,45.709097,40.375713,52.5310214,23.6585116,51.0339991,-42.035067,-37.7878809,44.4308975,38.5110803,-37.8633951,-37.8633951,-24.7761086,51.1638175,51.7280451,46.603354,-18.5264844,56.7861112,48.9467562,51.7561518,43.538796500000004,56.187042,47.59397,46.603354,52.4760892,51.1638175,42.6384261,42.6384261,42.6384261,45.6476663,54.7023545,48.536217,44.4308975,40.7127281,46.603354,45.709097,43.9792797,45.6476663,44.5990718,53.13617215,38.7251776,38.7251776,47.52121792021591,47.52121792021591,36.6612387,52.5310214,52.5310214,52.5310214,39.7837304,-45.0321923,36.7014631,39.7837304,45.806691349999994,44.8766431,46.603354,43.1561681,46.603354,55.143122399999996,52.4760892,52.4760892,40.6333724,-24.7761086,-24.7761086,-24.7761086,-24.7761086,-24.7761086,-24.7761086,-24.7761086,-24.7761086,47.27808725,40.819725,23.6585116,44.5990718,45.2613104,-33.030515957094444,47.52121792021591,42.6384261,51.5246,44.74693,50.9003015,45.28979315,46.603354,46.603354,44.5990718,52.4760892,41.289811,51.8339209,51.8339209,52.2928116,53.28236125,38.7251776,36.2231079,47.52121792021591,39.4225192,54.7023545,52.2928116,45.6476663,51.1638175,42.9882368,49.0677708,44.4308975,36.7014631,45.6476663,45.6476663,45.6476663,45.6476663,45.6476663,52.2958122,36.7014631,39.3260685,52.4760892,36.7014631,42.2813722,43.853633,46.7985624,43.9792797,52.5310214,47.5490251,52.4760892,44.4308975,44.5990718,36.7014631,36.7014631,36.7014631,-32.5421803,-30.5343665,54.7023545,46.603354,-41.5000831,48.2640845,51.2874865,41.9216734,59.6749712,46.603354,40.7127281,44.8705067,46.603354,52.2434979,52.2434979,52.2434979,52.2434979,50.6402809,45.709097,44.4308975,39.4225192,38.6280278,42.6384261,40.8358846,45.6476663,39.60288591417616,-42.035067,59.6749712,46.7985624,55.670249,53.1188177,45.2968119,44.24620635,46.603354,46.603354,52.4760892,46.603354,45.2968119,46.603354,44.4308975,44.4308975,44.4308975,45.2968119,44.4308975,55.670249,38.0615885,42.61946,37.80855645,46.7985624,45.806691349999994,-34.9964963,44.4308975,44.4308975,44.4308975,44.4308975,44.4308975,44.4308975,44.94725995,44.4308975,44.4308975,44.4308975,44.4308975,44.4308975,44.4308975,44.4308975,44.4308975,44.4308975,44.4308975,44.4308975,44.4308975,44.4308975,44.4308975,44.4308975,44.4308975,47.0505452,43.1561681,42.6384261,39.7837304,54.7023545,40.375713,39.4225192,48.1179702,58.94182309999999,41.9319675,54.9044332,42.2813722,39.7837304,50.724140500000004,50.724140500000004,50.724140500000004,50.724140500000004,34.89046225,-38.3312575,54.7023545,54.7023545,43.1561681,43.1561681,44.4308975,42.6384261,54.7023545,43.9792797,43.9792797,51.161750850000004,54.7023545,38.5110803,45.6476663,46.603354,44.3509309,54.7023545,45.6476663,56.7861112,52.5310214,52.4760892,51.917535900000004,52.5310214,53.3360017,47.5926009,36.7014631,52.824694199999996,45.8753771,44.4308975,44.4308975,39.7837304,44.4308975,39.7837304,39.7837304,39.7837304,44.4308975,44.4308975,39.7837304,44.4308975,44.4308975,44.4308975,44.4308975,51.1638175,53.1459288,53.1185033,54.7023545,50.9700788,45.6476663,57.8119372,47.5926009,44.5990718,59.6749712,39.7837304],\"legendgroup\":\"cow\",\"lon\":[8.2319736,1.8883335,4.222486304306048,6.384660381375652,1.8883335,2.454515765955904,-1.498628491239545,1.8883335,14.5208584,-63.1466676,-63.1466676,4.222486304306048,8.2319736,-5.94192,-75.8449946,-100.445882,-111.714358,172.8344077,4.222486304306048,-3.2765753,-3.2765753,-3.2765753,-3.2765753,8.2319736,10.47129100603846,9.9166667,9.9166667,9.95606355528393,9.95606355528393,9.95606355528393,12.651820794914073,12.674297,-79.7919754,-125.002441,8.2319736,9.91273065974192,12.674297,-100.445882,-86.1746933,-100.445882,4.9705666,-73.0570603,71.745261,71.745261,71.745261,71.745261,-78.1611077,-3.0000001,-78.4927721,8.2319736,-111.714358,-2.1880661838719386,-3.0753867062227487,-9.00609563330653,14.3928671,-72.5002608,-83.1137366,-105.607716,11.8665254,11.8665254,11.8665254,-4.1140518,-4.1140518,25.7301361,8.2319736,-18.1059013,-63.1466676,1.8883335,-81.7848553,1.8883335,7.7510775,13.055904,19.5060937,-71.8258668,87.6855882,153.0234991,-1.2649062,4.0746257,-73.24966776033015,-111.714358,-4.1140518,-1.2649062,-1.2649062,12.674297,172.8344077,10.4478313,-76.5888477,4.6667145,-2.5503106339491204,-2.5503106339491204,-3.2765753,10.4478313,10.4478313,-79.7919754,-7.898147186112796,145.08106868543985,1.8883335,5.721294352585611,-1.2597068974971675,4.178629103169916,-111.714358,5.6343227,5.6343227,5.6343227,5.6343227,134.755,-75.8449946,9.7732524,9.491678060021837,-71.8258668,1.8883335,-122.8473388,-93.9993505,10.4478313,2.4325247,-0.063268,2.3852638,10.4478313,10.4478313,-111.714358,-118.755997,151.2978747,-3.36565,-3.2765753,-3.2765753,-3.2765753,-3.73893,-8.5678665,-71.8258668,4.6604809,2.7320917,1.8883335,-71.8258668,-89.6884637,-71.8258668,11.8665254,10.3333283,-3.2765753,-93.9993505,134.755,-1.498628491239545,-75.8449946,-4.1140518,-72.5002608,4.4908843,-71.8258668,-71.8258668,-71.8258668,-4.1140518,10.4478313,-111.714358,-97.001038,1.9721295,-3.2765753,1.8883335,1.346505,2.5065697302419823,7.923549,-18.1059013,-118.755997,1.8883335,-7.2278963,-89.6884637,-83.7484616,1.8883335,1.8883335,-71.8258668,-71.8258668,2.7537863,2.7537863,-71.8258668,-71.8258668,2.7537863,11.8665254,-92.5617875,4.6604809,11.8665254,-71.8258668,11.4038717,4.6667145,-120.737257,-1.0833748506182423,-2.34473226124306,1.8883335,-89.6884637,-89.6884637,-89.6884637,-72.5002608,-1.9100768,-4.1140518,-72.5002608,-4.8379791,11.8665254,11.8665254,12.674297,12.674297,-120.737257,-4.0685073132923,-7.9794599,-8.795834650292788,10.4478313,10.209156,-2.666667,1.8883335,1.8883335,0.3138532,-71.8258668,-71.8258668,-122.769544,-46.76365461658604,1.8883335,1.8883335,5.5615126,-118.755997,11.8665254,-6.825145150844913,-118.755997,13.1339829,-71.8258668,-89.6884637,1.8883335,-4.1140518,9.91273065974192,-9.298304863654256,-7.9794599,-125.002441,1.8883335,-53.2,9.91273065974192,-120.737257,-3.73893,-100.445882,-3.9527809990291427,1.7324062,-71.8258668,9.338323,10.209156,10.209156,10.209156,1.8883335,-72.5002608,0.8397552,-75.8449946,-1.2649062,-120.737257,-8.571161660434711,-8.571161660434711,-83.1137366,-3.2765753,-118.755997,11.6822424,-90.1637318,-120.737257,-102.0077097,-2.471770086071205,-71.8258668,-122.769544,-89.6884637,-4.1140518,-53.2,-2.34473226124306,-0.573365358805311,-69.66002565150262,-89.6884637,-105.607716,-1.2597068974971675,-125.002441,-71.8258668,1.8883335,1.8883335,1.8883335,-71.8258668,11.8665254,7.320173335891282,-90.1637318,-6.825145150844913,-7.9794599,-8.1614446,-1.5495607774216265,-4.62465658489158,-4.62465658489158,0.4645198,-1.2649062,0.4645198,-1.2649062,-1.2649062,-0.2031208542548153,-1.9804176,-102.0077097,-2.100154122305389,134.755,-117.173895,1.8883335,-125.002441,-1.498628491239545,-68.8590201,-2.34473226124306,10.935960870530739,3.1209016,-100.445882,10.3333283,5.6343227,-1.2649062,7.1598893,12.674297,-3.5,-99.6052838,-4.1140518,-72.5002608,12.674297,-1.2649062,12.1516551,-77.7278831,4.88149,-3.6607788161410735,1.8883335,5.6343227,5.6343227,1.8883335,4.6604809,8.2319736,-71.8258668,11.8665254,-72.5002608,-4.8379791,-71.8258668,-71.8258668,-71.8258668,1.8883335,-76.5888477,-100.445882,-125.002441,-4.1140518,2.5065697302419823,19.5060937,-3.06553306667584,-3.06553306667584,-1.2649062,-71.6553992,1.8883335,26.728214183162986,-118.755997,12.674297,11.8665254,-7.2278963,4.6604809,0.1573083324015645,2.1776625116070027,8.2319736,8.2319736,5.399359762971196,5.1156505,-92.5617875,-118.755997,-71.8258668,4.4908843,-83.1137366,23.3897023,-1.2649062,-79.0392919,-72.5002608,-83.7484616,-2.34473226124306,-125.002441,1.8883335,-4.217282721429928,-4.916667,12.206315763116372,-3.6107936,-118.755997,-69.66002565150262,7.923549,2.3852638,-1.6363792,-1.6363792,-1.6363792,-1.6363792,4.6056526,146.9111788341666,146.9111788341666,146.9111788341666,146.9111788341666,146.9111788341666,146.9111788341666,146.9111788341666,146.9111788341666,-72.032366,14.3928671,5.6343227,4.0499641751186415,-1.2649062,-3.833333,135.6301212,9.91273065974192,16.081953,-3.2765753,-3.2765753,-122.330062,4.6667145,7.923549,11.5054333,-122.636465,1.8883335,145.08106868543985,9.7732524,-1.498628491239545,-2.1880661838719386,-93.3122705,135.6301212,-68.8590201,-76.4626118,-1.2649062,-102.0077097,-2.949011916021195,146.6366887,175.281788,-89.6884637,-122.8473388,145.0100994,145.0100994,134.755,10.4478313,-9.767906428362338,1.8883335,-44.1588654,-4.1140518,11.4038717,0.4645198,16.175235566874342,10.460782482125193,14.12456,1.8883335,-71.8258668,10.4478313,12.674297,12.674297,12.674297,11.8665254,-3.2765753,12.1516551,-89.6884637,-74.0060152,1.8883335,-68.8590201,-120.737257,11.8665254,-72.5002608,-7.810340751784169,-105.607716,-105.607716,9.91273065974192,9.91273065974192,-80.9239671,-1.2649062,-1.2649062,-1.2649062,-100.445882,168.661,-118.755997,-100.445882,12.206315763116372,-93.2877877,1.8883335,-75.8449946,1.8883335,14.922629658767558,-71.8258668,-71.8258668,-90.1637318,134.755,134.755,134.755,134.755,134.755,134.755,134.755,134.755,4.222486304306048,16.422779,-102.0077097,-72.5002608,9.491678060021837,-71.5177984276482,9.91273065974192,12.674297,4.280818038775446,1.0075,3.0203891,5.634382477386232,1.8883335,1.8883335,-72.5002608,-71.8258668,-73.9204922,-4.916667,-4.916667,-3.73893,-3.8286207326666837,-105.607716,-121.387742,9.91273065974192,-111.714358,-3.2765753,-3.73893,11.8665254,10.4478313,-0.4266324,0.3138532,-89.6884637,-118.755997,11.8665254,11.8665254,11.8665254,11.8665254,11.8665254,5.2567209,-118.755997,-4.8379791,-71.8258668,-118.755997,-83.7484616,-83.964987,8.2319736,-120.737257,-1.2649062,1.7324062,-71.8258668,-89.6884637,-72.5002608,-118.755997,-118.755997,-118.755997,151.2185641,135.6301212,-3.2765753,1.8883335,172.8344077,-2.9202408,5.1897863,-93.3122705,14.5208584,1.8883335,-74.0060152,-0.5504343,1.8883335,5.6343227,5.6343227,5.6343227,5.6343227,4.6667145,-68.8590201,-89.6884637,-111.714358,-90.1910154,12.674297,14.2487679,11.8665254,16.626802703803317,146.6366887,14.5208584,8.2319736,10.3333283,-1.2597068974971675,4.6604809,-0.18399787392367906,1.8883335,1.8883335,-71.8258668,1.8883335,4.6604809,1.8883335,-89.6884637,-89.6884637,-89.6884637,4.6604809,-89.6884637,10.3333283,-122.6985975,-7.863112,-25.473137391245295,8.2319736,12.206315763116372,-64.9672817,-89.6884637,-89.6884637,-89.6884637,-89.6884637,-89.6884637,-89.6884637,-91.39373410986752,-89.6884637,-89.6884637,-89.6884637,-89.6884637,-89.6884637,-89.6884637,-89.6884637,-89.6884637,-89.6884637,-89.6884637,-89.6884637,-89.6884637,-89.6884637,-89.6884637,-89.6884637,-89.6884637,8.3054682,-75.8449946,12.674297,-100.445882,-3.2765753,-76.4626118,-111.714358,-122.769544,-3.129694439563327,2.8090343,-5.026204,-83.7484616,-100.445882,-3.6607788161410735,-3.6607788161410735,-3.6607788161410735,-3.6607788161410735,-82.24340593189123,145.08106868543985,-3.2765753,-3.2765753,-75.8449946,-75.8449946,-89.6884637,12.674297,-3.2765753,-120.737257,-120.737257,-3.0753867062227487,-3.2765753,-122.8473388,11.8665254,1.8883335,3.8584812791602983,-3.2765753,11.8665254,-4.1140518,-1.2649062,-71.8258668,-8.58597726870895,-1.2649062,-6.4692321,10.209156,-118.755997,-2.0074546723348115,11.5106998,-89.6884637,-89.6884637,-100.445882,-89.6884637,-100.445882,-100.445882,-100.445882,-89.6884637,-89.6884637,-100.445882,-89.6884637,-89.6884637,-89.6884637,-89.6884637,10.4478313,-1.0214971168122484,-1.5566179305872214,-3.2765753,-1.6363792,11.8665254,-4.0550663,10.209156,-72.5002608,14.5208584,-100.445882],\"marker\":{\"color\":\"#636efa\"},\"mode\":\"markers\",\"name\":\"cow\",\"showlegend\":true,\"subplot\":\"mapbox\",\"type\":\"scattermapbox\"},{\"customdata\":[[\"Abbaye de Belloc\"],[\"Abertam\"],[\"Acorn\"],[\"Amou\"],[\"Ardi Gasna\"],[\"Azeitao\"],[\"Bad Axe\"],[\"Balfour\"],[\"Bartlett\"],[\"Basajo\"],[\"Baserri\"],[\"Baskeriu\"],[\"Bear Hill\"],[\"Beenleigh Blue\"],[\"Bergere Bleue\"],[\"Berkswell\"],[\"Big Woods Blue\"],[\"Bismark\"],[\"Bohemian Blue\"],[\"Bossa\"],[\"Brebirousse d'Argental\"],[\"Brebis du Lavort\"],[\"Brebis du Puyfaucon\"],[\"Brefu Bach\"],[\"Brin d'Amour\"],[\"Brinza - Feta style\"],[\"Briquette de Brebis\"],[\"Br\\u00e2nz\\u0103 de Burduf\"],[\"Cacio De Roma\\u00ae\"],[\"Cairnsmore\"],[\"Calcagno\"],[\"Canarejal\"],[\"Castillon Frais\"],[\"Cave Aged Marisa\"],[\"Caws Cenarth Black Sheep\"],[\"Cherni Vit\"],[\"Cinerino\"],[\"Classico Pecorino Senese\"],[\"Classico Riserva\"],[\"corra linn\"],[\"Cratloe Hills\"],[\"Crotonese\"],[\"Crozier\"],[\"Cwmtawe Pecorino\"],[\"La Retorta\"],[\"La Serena\"],[\"Lanark Blue\"],[\"Lanark White\"],[\"Laruns\"],[\"Le Brebiou\"],[\"Le Lacandou\"],[\"Leafield\"],[\"Lemon Fetish\"],[\"Little Rydings\"],[\"Lo Sburrato\"],[\"Lord of the Hundreds\"],[\"Lost Lake\"],[\"Malvarosa\\u00ae\"],[\"Malvern\"],[\"Manchego\"],[\"Marisa\"],[\"Mastorazio\"],[\"Meira\"],[\"Meredith Blue\"],[\"Mihalic Peynir\"],[\"Millstone\"],[\"MitiCa\\u00f1a\\u00ae de Oveja\"],[\"Morcella\"],[\"P'tit Basque\"],[\"Paglierino\"],[\"Pa\\u0161ki Sir (PDO)\"],[\"Pecorino\"],[\"Pecorino a Latte Crudo\"],[\"Pecorino al Pepe\"],[\"Pecorino al Tartufo\"],[\"Pecorino alla Canapa\"],[\"Pecorino allo Zafferano\"],[\"Pecorino Barba Del Passatore\"],[\"Pecorino Boccondilatte\"],[\"Pecorino Camomilla\"],[\"Pecorino Con Caglio Vegetale\"],[\"Pecorino dei Malatesta al Sangiovese\"],[\"Pecorino Dei Malatesta Sotto Cenere\"],[\"Pecorino dei Monaci\"],[\"Pecorino di Sogliano\"],[\"Pecorino di Talamello\"],[\"Pecorino di Vigna\"],[\"Pecorino Erica\"],[\"Pecorino Fiordaliso\"],[\"Pecorino Foglie Noci\"],[\"Pecorino Gelsomino\"],[\"Pecorino Ginepro\"],[\"Pecorino Gran Riserva Del Passatore\"],[\"Pecorino in Walnut Leaves\"],[\"Pecorino Mallo di Noce\"],[\"Pecorino nel fieno\"],[\"Pecorino Nel Granaio\"],[\"Pecorino Nero\"],[\"Pecorino Ortica\"],[\"Pecorino Papavero\"],[\"Pecorino Pepato Mitica\\u00ae Aged\"],[\"Pecorino Pera\"],[\"Pecorino Querciaiolo\"],[\"Pecorino Romagnolo\"],[\"Pecorino Romano\"],[\"Pecorino Toscanello\"],[\"Pepato\"],[\"Pigouille\"],[\"Prairie Tomme\"],[\"Primo Fresco\"],[\"P\\u00e9rail de Brebis\"],[\"Saint Rose\"],[\"San Andreas\"],[\"Serat\"],[\"Serra da Estrela DOP\"],[\"Shaker Blue\"],[\"Sheep Gouda\"],[\"Shepherd's Crook\"],[\"Shepherd's Hope\"],[\"Shepherdista Crush\"],[\"Spenwood\"],[\"St James\"],[\"Sussex Slipcote\"],[\"Swaledale\"]],\"hovertemplate\":\"\\u003cb\\u003e%{hovertext}\\u003c\\u002fb\\u003e\\u003cbr\\u003e\\u003cbr\\u003emilk=sheep\\u003cbr\\u003elatitude=%{lat}\\u003cbr\\u003elongitude=%{lon}\\u003cbr\\u003echeese=%{customdata[0]}\\u003cextra\\u003e\\u003c\\u002fextra\\u003e\",\"hovertext\":[\"Abbaye de Belloc\",\"Abertam\",\"Acorn\",\"Amou\",\"Ardi Gasna\",\"Azeitao\",\"Bad Axe\",\"Balfour\",\"Bartlett\",\"Basajo\",\"Baserri\",\"Baskeriu\",\"Bear Hill\",\"Beenleigh Blue\",\"Bergere Bleue\",\"Berkswell\",\"Big Woods Blue\",\"Bismark\",\"Bohemian Blue\",\"Bossa\",\"Brebirousse d'Argental\",\"Brebis du Lavort\",\"Brebis du Puyfaucon\",\"Brefu Bach\",\"Brin d'Amour\",\"Brinza - Feta style\",\"Briquette de Brebis\",\"Br\\u00e2nz\\u0103 de Burduf\",\"Cacio De Roma\\u00ae\",\"Cairnsmore\",\"Calcagno\",\"Canarejal\",\"Castillon Frais\",\"Cave Aged Marisa\",\"Caws Cenarth Black Sheep\",\"Cherni Vit\",\"Cinerino\",\"Classico Pecorino Senese\",\"Classico Riserva\",\"corra linn\",\"Cratloe Hills\",\"Crotonese\",\"Crozier\",\"Cwmtawe Pecorino\",\"La Retorta\",\"La Serena\",\"Lanark Blue\",\"Lanark White\",\"Laruns\",\"Le Brebiou\",\"Le Lacandou\",\"Leafield\",\"Lemon Fetish\",\"Little Rydings\",\"Lo Sburrato\",\"Lord of the Hundreds\",\"Lost Lake\",\"Malvarosa\\u00ae\",\"Malvern\",\"Manchego\",\"Marisa\",\"Mastorazio\",\"Meira\",\"Meredith Blue\",\"Mihalic Peynir\",\"Millstone\",\"MitiCa\\u00f1a\\u00ae de Oveja\",\"Morcella\",\"P'tit Basque\",\"Paglierino\",\"Pa\\u0161ki Sir (PDO)\",\"Pecorino\",\"Pecorino a Latte Crudo\",\"Pecorino al Pepe\",\"Pecorino al Tartufo\",\"Pecorino alla Canapa\",\"Pecorino allo Zafferano\",\"Pecorino Barba Del Passatore\",\"Pecorino Boccondilatte\",\"Pecorino Camomilla\",\"Pecorino Con Caglio Vegetale\",\"Pecorino dei Malatesta al Sangiovese\",\"Pecorino Dei Malatesta Sotto Cenere\",\"Pecorino dei Monaci\",\"Pecorino di Sogliano\",\"Pecorino di Talamello\",\"Pecorino di Vigna\",\"Pecorino Erica\",\"Pecorino Fiordaliso\",\"Pecorino Foglie Noci\",\"Pecorino Gelsomino\",\"Pecorino Ginepro\",\"Pecorino Gran Riserva Del Passatore\",\"Pecorino in Walnut Leaves\",\"Pecorino Mallo di Noce\",\"Pecorino nel fieno\",\"Pecorino Nel Granaio\",\"Pecorino Nero\",\"Pecorino Ortica\",\"Pecorino Papavero\",\"Pecorino Pepato Mitica\\u00ae Aged\",\"Pecorino Pera\",\"Pecorino Querciaiolo\",\"Pecorino Romagnolo\",\"Pecorino Romano\",\"Pecorino Toscanello\",\"Pepato\",\"Pigouille\",\"Prairie Tomme\",\"Primo Fresco\",\"P\\u00e9rail de Brebis\",\"Saint Rose\",\"San Andreas\",\"Serat\",\"Serra da Estrela DOP\",\"Shaker Blue\",\"Sheep Gouda\",\"Shepherd's Crook\",\"Shepherd's Hope\",\"Shepherdista Crush\",\"Spenwood\",\"St James\",\"Sussex Slipcote\",\"Swaledale\"],\"lat\":[47.6867895,50.2306216,52.2509586,43.59266,43.8099068,38.5241783,44.4308975,-45.0321923,51.161750850000004,42.6384261,39.7837304,46.603354,44.5990718,52.5310214,44.8914036,54.7023545,45.9896587,44.5990718,42.53116075,38.7604815,46.603354,45.2968119,45.91901925,52.2928116,46.603354,-45.0321923,46.603354,46.4046483,42.6384261,54.9042579,42.6384261,39.3260685,46.603354,44.4308975,52.2928116,42.6073975,40.860672,43.4586541,43.4586541,56.7861112,52.70642975,39.1873894,52.467222,40.02656765,39.3260685,39.1748426,56.7861112,56.7861112,42.9882368,43.18718655,44.315857449999996,51.7412674,44.031827,52.7923213,43.4586541,50.9404266,44.031827,39.4697065,52.454530899999995,39.3260685,44.4308975,40.860672,33.0955793,-37.5623013,39.9895878,51.161750850000004,37.9923795,45.9896587,45.359277750000004,40.860672,45.3658443,42.6384261,44.525696,43.4586541,42.6384261,44.525696,43.4586541,44.525696,44.525696,44.525696,43.4586541,44.525696,44.525696,44.525696,44.525696,44.525696,44.525696,44.525696,44.525696,44.525696,44.525696,44.525696,44.525696,44.525696,44.525696,43.0765485,44.525696,43.4586541,44.525696,44.525696,40.0912813,44.525696,44.525696,44.525696,41.9808038,43.4586541,42.6384261,45.4039367,38.7604815,36.7014631,46.603354,36.7014631,36.7014631,33.7680065,40.4358994,40.7127281,45.709097,51.161750850000004,45.9896587,36.7014631,52.5310214,52.5310214,52.5310214,54.38299324007608],\"legendgroup\":\"sheep\",\"lon\":[7.3927627,12.8701437,-4.0888576,-0.7475291,1.4344926056549236,-8.8932341,-89.6884637,168.661,-3.0753867062227487,12.674297,-100.445882,1.8883335,-72.5002608,-1.2649062,-89.7748098,-3.2765753,-94.6113288,-72.5002608,-90.43762550236468,-92.5617875,1.8883335,4.6604809,1.203176771876291,-3.73893,1.8883335,168.661,1.8883335,22.9894841933513,12.674297,-5.0248893,12.674297,-4.8379791,1.8883335,-89.6884637,-3.73893,25.4856617,14.843984,11.1389204,11.1389204,-4.1140518,-8.751786760846851,16.87828188895307,-7.691111,8.679641647435716,-4.8379791,-6.1529891,-4.1140518,-4.1140518,-0.4266324,-0.728247400084667,2.5065697302419823,-1.2245951,-77.246933,0.4278194,11.1389204,0.3699977891068864,-77.246933,-0.3763353,-2.3755702502240226,-4.8379791,-89.6884637,14.843984,44.1749775,143.8605645,28.8944669,-3.0753867062227487,-1.1305431,-94.6113288,-1.1480053453043046,14.843984,15.6575209,12.674297,11.039437,11.1389204,12.674297,11.039437,11.1389204,11.039437,11.039437,11.039437,11.1389204,11.039437,11.039437,11.039437,11.039437,11.039437,11.039437,11.039437,11.039437,11.039437,11.039437,11.039437,11.039437,11.039437,11.039437,11.6789076,11.039437,11.1389204,11.039437,11.039437,9.0305773,11.039437,11.039437,11.039437,12.7662312,11.1389204,12.674297,0.3756199,-92.5617875,-118.755997,1.8883335,-118.755997,-118.755997,66.2385139,-7.516865473467464,-74.0060152,-68.8590201,-3.0753867062227487,-94.6113288,-118.755997,-1.2649062,-1.2649062,-1.2649062,-1.9841360652878535],\"marker\":{\"color\":\"#EF553B\"},\"mode\":\"markers\",\"name\":\"sheep\",\"showlegend\":true,\"subplot\":\"mapbox\",\"type\":\"scattermapbox\"},{\"customdata\":[[\"Acapella\"],[\"Aged Chelsea\"],[\"Ailsa Craig\"],[\"Alex James Co. No 4 Goats'\"],[\"Allium Piper\"],[\"Alpicr\\u00e8me\"],[\"Amalth\\u00e9e\"],[\"Anneau du Vic-Bilh\"],[\"Aphrodite Goat Milk Halloumi\"],[\"Applewood Smoked Chevre\"],[\"Ardsallagh Hard Goat's Cheese\"],[\"Ardsallagh Smoked Cheese\"],[\"Aspen Ash\"],[\"Assa\"],[\"Banon\"],[\"Baronerosso di Capra\"],[\"Barriquet\"],[\"Basing\"],[\"Bermuda Triangle\"],[\"Bettine Bleu\"],[\"Bettine Grand Cru\"],[\"Bijou\"],[\"Black Betty\"],[\"Black Pearl\"],[\"Blackmount\"],[\"Bloomsdale\"],[\"Blue Ledge La Luna\"],[\"Blue Lupine\"],[\"Blue Rathgore\"],[\"Bluebell Falls Cygnus\"],[\"Bonne Bouche\"],[\"Bosworth\"],[\"Bougon\"],[\"Boulder Chevre\"],[\"Boule Du Roves\"],[\"Bourdin Goat Log\"],[\"Bouyguette\"],[\"Boyne Valley B\\u00e1n\"],[\"Brightwell Ash\"],[\"Brown\\u2019s Gulch\"],[\"Buche de Chevre\"],[\"Bucheret\"],[\"Buchette d'Anjou\"],[\"Buchette de Manon\"],[\"B\\u00fbchette \\u00e0 la Sarriette\"],[\"Cabecou\"],[\"Cabecou Feuille D'Armagnac\"],[\"Cachaille\"],[\"California Crottin\"],[\"Cameo\"],[\"Cana de Cabra\"],[\"Cape Vessey\"],[\"Capra al Fieno\"],[\"Capra al Pepe\"],[\"Capra Nouveau\"],[\"Caprano\"],[\"Capraricca\"],[\"Capriago\"],[\"Capricious\"],[\"Capricorn Somerset Goats Cheese\"],[\"Capriny\"],[\"Capriole Banon\"],[\"Caprotto\"],[\"Cardo\"],[\"Cayuga Blue\"],[\"Cerney Pyramid\"],[\"Chabichou du Poitou\"],[\"Chabis de Gatine\"],[\"Charolais\"],[\"Chavroux\"],[\"Chevre en Marinade\"],[\"Chevre Log\"],[\"Chevrotin des Aravis\"],[\"Childwickbury\"],[\"Chile Jack\"],[\"Ch\\u00e8vre\"],[\"Civray\"],[\"Classic Blue Log\"],[\"Clonmore\"],[\"Coeur de Chevre\"],[\"Consider Bardwell Farm Manchester\"],[\"Corleggy\"],[\"Coupole\"],[\"Couronne Lochoise\"],[\"Cracked Pepper Chevre\"],[\"Crocodile Tear\"],[\"Croghan\"],[\"Crottin de Champcol\"],[\"Crottin de Chavignol\"],[\"Cypress Grove Chevre\"],[\"La Pyramide\"],[\"La Taupiniere\"],[\"Lacey Grey\"],[\"LaClare Farms Cheddar\"],[\"LaClare Farms Chevre\"],[\"LaClare Farms Evalon\"],[\"LaClare Farms Evalon with Cummin\"],[\"LaClare Farms Evalon with Fenugreek\"],[\"LaClare Farms Fondry Jack\"],[\"LaClare Farms Martone\"],[\"LaClare Farms Raw Goats Milk Cheddar\"],[\"Lairobell\"],[\"Laura Chenel Taupiniere\"],[\"Laura Chenel Tome\"],[\"Laura Chenel's Cabecou\"],[\"Le Cendrillon\"],[\"Le Chevrot\"],[\"Le Marquis Chevre\"],[\"Le Moutier\"],[\"Lemon Myrtle Chevre\"],[\"Leonora\\u00ae\"],[\"Lincoln Log\"],[\"Lingot des Causses\"],[\"Lingot Saint Bousquet d'Orb\"],[\"Little Bloom on the Prairie\"],[\"Little Dragon\"],[\"Little Napoleon\"],[\"Little Ypsi\"],[\"Loddiswell Avondale\"],[\"Lou Pevre\"],[\"Madrona\"],[\"Majorero\"],[\"Manon\"],[\"Melville\"],[\"Meredith Ashed Pyramids\"],[\"Meredith Chevre Ash\"],[\"Meredith Chevre Dill\"],[\"Meredith Chevre Plain\"],[\"Meredith Goat Cheese in Extra Virgin Olive Oil\"],[\"Mettowee\"],[\"Midnight Blue\"],[\"Midnight Moon\\u00ae\"],[\"Milawa Affine\"],[\"Milawa Goats Tomme\"],[\"Mine-Gabhar\"],[\"Mistralou\"],[\"Monet\"],[\"Mont Saint-Francis\"],[\"Montchevre Goat Cheese Log\"],[\"Monte Enebro\"],[\"Moonglo\"],[\"Mothais a la Feuille\"],[\"Mountain Goat\"],[\"Ms. Natural\"],[\"P'tit Berrichon\"],[\"Paillot de Ch\\u00e8vre\"],[\"Pant ys Gawn\"],[\"Pastoral\"],[\"Pave de Chirac\"],[\"Pelardon des Cevennes\"],[\"Pelardon des Corbieres\"],[\"Perroche\"],[\"Petit Blaja\"],[\"Picodon de Chevre\"],[\"Piper's Pyramide\"],[\"Plancherin d'Ar\\u00eaches\"],[\"Pleasant Creek\"],[\"Pouligny-Saint-Pierre\"],[\"Pourly\"],[\"Providence\"],[\"Pr\\u00e9sident Fresh Goat Cheese\"],[\"PsycheDillic\"],[\"Purple Haze\"],[\"Pyramide\"],[\"Saanen Silk\"],[\"Sainte-Maure de Touraine AOC\"],[\"Saltbush Chevre\"],[\"Sancerre\"],[\"Sandy Creek\"],[\"Santa Gadea\"],[\"Sarr\\u00f3 de Cabra\"],[\"Sartori Limited Edition Extra-Aged Goat\"],[\"Selles sur Cher\"],[\"Sgt. Pepper\"],[\"Siltcoos\"],[\"Sinodun Hill\"],[\"Sleightlett\"],[\"Smokey Mountain Round\"],[\"Sofia\"],[\"St Tola Ash Log\"],[\"St Tola Cranberry\"],[\"St Tola Crottin\"],[\"St Tola Divine\"],[\"St Tola Greek Style\"],[\"St Tola Hard Cheese\"],[\"St Tola Log\"],[\"Stawley\"],[\"Stella Goat\"],[\"Stickney Hill Chevre\"],[\"Sunlight\"],[\"Sunset Bay\"],[\"Swag\"]],\"hovertemplate\":\"\\u003cb\\u003e%{hovertext}\\u003c\\u002fb\\u003e\\u003cbr\\u003e\\u003cbr\\u003emilk=goat\\u003cbr\\u003elatitude=%{lat}\\u003cbr\\u003elongitude=%{lon}\\u003cbr\\u003echeese=%{customdata[0]}\\u003cextra\\u003e\\u003c\\u002fextra\\u003e\",\"hovertext\":[\"Acapella\",\"Aged Chelsea\",\"Ailsa Craig\",\"Alex James Co. No 4 Goats'\",\"Allium Piper\",\"Alpicr\\u00e8me\",\"Amalth\\u00e9e\",\"Anneau du Vic-Bilh\",\"Aphrodite Goat Milk Halloumi\",\"Applewood Smoked Chevre\",\"Ardsallagh Hard Goat's Cheese\",\"Ardsallagh Smoked Cheese\",\"Aspen Ash\",\"Assa\",\"Banon\",\"Baronerosso di Capra\",\"Barriquet\",\"Basing\",\"Bermuda Triangle\",\"Bettine Bleu\",\"Bettine Grand Cru\",\"Bijou\",\"Black Betty\",\"Black Pearl\",\"Blackmount\",\"Bloomsdale\",\"Blue Ledge La Luna\",\"Blue Lupine\",\"Blue Rathgore\",\"Bluebell Falls Cygnus\",\"Bonne Bouche\",\"Bosworth\",\"Bougon\",\"Boulder Chevre\",\"Boule Du Roves\",\"Bourdin Goat Log\",\"Bouyguette\",\"Boyne Valley B\\u00e1n\",\"Brightwell Ash\",\"Brown\\u2019s Gulch\",\"Buche de Chevre\",\"Bucheret\",\"Buchette d'Anjou\",\"Buchette de Manon\",\"B\\u00fbchette \\u00e0 la Sarriette\",\"Cabecou\",\"Cabecou Feuille D'Armagnac\",\"Cachaille\",\"California Crottin\",\"Cameo\",\"Cana de Cabra\",\"Cape Vessey\",\"Capra al Fieno\",\"Capra al Pepe\",\"Capra Nouveau\",\"Caprano\",\"Capraricca\",\"Capriago\",\"Capricious\",\"Capricorn Somerset Goats Cheese\",\"Capriny\",\"Capriole Banon\",\"Caprotto\",\"Cardo\",\"Cayuga Blue\",\"Cerney Pyramid\",\"Chabichou du Poitou\",\"Chabis de Gatine\",\"Charolais\",\"Chavroux\",\"Chevre en Marinade\",\"Chevre Log\",\"Chevrotin des Aravis\",\"Childwickbury\",\"Chile Jack\",\"Ch\\u00e8vre\",\"Civray\",\"Classic Blue Log\",\"Clonmore\",\"Coeur de Chevre\",\"Consider Bardwell Farm Manchester\",\"Corleggy\",\"Coupole\",\"Couronne Lochoise\",\"Cracked Pepper Chevre\",\"Crocodile Tear\",\"Croghan\",\"Crottin de Champcol\",\"Crottin de Chavignol\",\"Cypress Grove Chevre\",\"La Pyramide\",\"La Taupiniere\",\"Lacey Grey\",\"LaClare Farms Cheddar\",\"LaClare Farms Chevre\",\"LaClare Farms Evalon\",\"LaClare Farms Evalon with Cummin\",\"LaClare Farms Evalon with Fenugreek\",\"LaClare Farms Fondry Jack\",\"LaClare Farms Martone\",\"LaClare Farms Raw Goats Milk Cheddar\",\"Lairobell\",\"Laura Chenel Taupiniere\",\"Laura Chenel Tome\",\"Laura Chenel's Cabecou\",\"Le Cendrillon\",\"Le Chevrot\",\"Le Marquis Chevre\",\"Le Moutier\",\"Lemon Myrtle Chevre\",\"Leonora\\u00ae\",\"Lincoln Log\",\"Lingot des Causses\",\"Lingot Saint Bousquet d'Orb\",\"Little Bloom on the Prairie\",\"Little Dragon\",\"Little Napoleon\",\"Little Ypsi\",\"Loddiswell Avondale\",\"Lou Pevre\",\"Madrona\",\"Majorero\",\"Manon\",\"Melville\",\"Meredith Ashed Pyramids\",\"Meredith Chevre Ash\",\"Meredith Chevre Dill\",\"Meredith Chevre Plain\",\"Meredith Goat Cheese in Extra Virgin Olive Oil\",\"Mettowee\",\"Midnight Blue\",\"Midnight Moon\\u00ae\",\"Milawa Affine\",\"Milawa Goats Tomme\",\"Mine-Gabhar\",\"Mistralou\",\"Monet\",\"Mont Saint-Francis\",\"Montchevre Goat Cheese Log\",\"Monte Enebro\",\"Moonglo\",\"Mothais a la Feuille\",\"Mountain Goat\",\"Ms. Natural\",\"P'tit Berrichon\",\"Paillot de Ch\\u00e8vre\",\"Pant ys Gawn\",\"Pastoral\",\"Pave de Chirac\",\"Pelardon des Cevennes\",\"Pelardon des Corbieres\",\"Perroche\",\"Petit Blaja\",\"Picodon de Chevre\",\"Piper's Pyramide\",\"Plancherin d'Ar\\u00eaches\",\"Pleasant Creek\",\"Pouligny-Saint-Pierre\",\"Pourly\",\"Providence\",\"Pr\\u00e9sident Fresh Goat Cheese\",\"PsycheDillic\",\"Purple Haze\",\"Pyramide\",\"Saanen Silk\",\"Sainte-Maure de Touraine AOC\",\"Saltbush Chevre\",\"Sancerre\",\"Sandy Creek\",\"Santa Gadea\",\"Sarr\\u00f3 de Cabra\",\"Sartori Limited Edition Extra-Aged Goat\",\"Selles sur Cher\",\"Sgt. Pepper\",\"Siltcoos\",\"Sinodun Hill\",\"Sleightlett\",\"Smokey Mountain Round\",\"Sofia\",\"St Tola Ash Log\",\"St Tola Cranberry\",\"St Tola Crottin\",\"St Tola Divine\",\"St Tola Greek Style\",\"St Tola Hard Cheese\",\"St Tola Log\",\"Stawley\",\"Stella Goat\",\"Stickney Hill Chevre\",\"Sunlight\",\"Sunset Bay\",\"Swag\"],\"lat\":[36.7014631,42.2813722,55.680265,54.7023545,-30.5343665,46.603354,45.4039367,43.18718655,34.9174159,38.7251776,51.9094617,51.9094617,38.7251776,38.2468075,44.0381752,45.6476663,46.603354,51.20707485,36.7014631,52.2434979,52.2434979,44.162985,52.2434979,-38.3312575,56.7861112,33.2473378,44.5990718,36.7014631,54.864725500000006,51.917535900000004,44.5990718,54.7023545,46.603354,39.7837304,46.603354,46.603354,46.603354,52.865196,51.45115235,43.9792797,46.603354,36.7014631,45.75385355,46.603354,46.603354,43.8099068,46.603354,46.603354,39.7837304,36.7014631,37.9923795,44.031827,45.806691349999994,45.806691349999994,52.4875359,52.4760892,45.6476663,38.4021038,38.2325829,51.161750850000004,52.4760892,34.851354,40.860672,56.7861112,43.1561681,51.7489422,46.603354,46.13244785,47.27808725,46.603354,38.7251776,36.7014631,46.06904065,52.21843025,38.7251776,46.603354,46.603354,42.3788774,51.917535900000004,48.15497515,44.5990718,54.03497495,44.5990718,47.44927715,38.7251776,40.3270127,52.46018745,46.603354,46.603354,36.7014631,55.001251,46.13244785,44.031827,44.4308975,44.4308975,44.4308975,44.4308975,44.4308975,44.4308975,44.4308975,44.4308975,56.7861112,33.223027,38.5110803,36.7014631,52.4760892,47.44927715,46.603354,52.4760892,-30.5343665,40.4598868,42.2813722,46.603354,43.591422,40.0796606,42.2813722,42.2813722,42.2813722,50.724140500000004,44.0580563,43.9792797,28.286398900000002,-30.5343665,40.375713,-36.5986096,-36.5986096,-36.5986096,-36.5986096,-36.5986096,44.5990718,38.7251776,52.2434979,-37.8633951,-37.8633951,52.46018745,46.603354,-30.5343665,40.3270127,39.7837304,40.656478,40.0796606,46.603354,-38.3312575,36.7014631,44.5760186,52.4760892,52.2928116,36.7014631,45.9140138,43.65420305,43.65420305,52.083333,46.603354,46.603354,40.3270127,46.603354,43.9792797,44.5760186,47.27808725,35.6729639,46.13244785,36.7014631,36.7014631,47.44927715,50.000678,45.75385355,-30.5343665,46.603354,35.6729639,39.3260685,41.3828939,44.4308975,46.603354,36.7014631,39.7837304,52.5310214,51.3271927,35.6729639,40.3270127,52.865196,52.9071704,52.865196,52.9071704,52.857257450000006,52.9071704,52.865196,50.9961449,44.4308975,41.1881305,38.7251776,39.7837304,-30.5343665],\"legendgroup\":\"goat\",\"lon\":[-118.755997,-83.7484616,-4.5153023,-3.2765753,135.6301212,1.8883335,0.3756199,-0.728247400084667,32.889902651331866,-105.607716,-8.2611809,-8.2611809,-105.607716,-122.90630461024097,5.6296701,11.8665254,1.8883335,0.7210361813401444,-118.755997,5.6343227,5.6343227,-72.47576806895253,5.6343227,145.08106868543985,-4.1140518,-96.6794382,-72.5002608,-118.755997,-6.143637910742768,-8.58597726870895,-72.5002608,-3.2765753,1.8883335,-100.445882,1.8883335,1.8883335,1.8883335,-7.9794599,-0.9935673736185868,-120.737257,1.8883335,-118.755997,4.045473682551104,1.8883335,1.8883335,1.4344926056549236,1.8883335,1.8883335,-100.445882,-118.755997,-1.1305431,-77.246933,12.206315763116372,12.206315763116372,-2.4124407,-71.8258668,11.8665254,-122.824222,-122.636465,-3.0753867062227487,-71.8258668,-82.3984882,14.843984,-4.1140518,-75.8449946,-0.2303579,1.8883335,-0.15455354898441043,4.222486304306048,1.8883335,-105.607716,-118.755997,6.344532137164,-0.5921260787763352,-105.607716,1.8883335,1.8883335,-72.032366,-8.58597726870895,2.811419156673292,-72.5002608,-7.2937022825583675,-72.5002608,-0.34954901296919916,-105.607716,-86.1746933,-6.606515459159162,1.8883335,1.8883335,-118.755997,-125.002441,-0.15455354898441043,-77.246933,-89.6884637,-89.6884637,-89.6884637,-89.6884637,-89.6884637,-89.6884637,-89.6884637,-89.6884637,-4.1140518,-111.70568456233669,-122.8473388,-118.755997,-71.8258668,-0.34954901296919916,1.8883335,-71.8258668,135.6301212,-3.4720773,-83.7484616,1.8883335,3.3553309364095925,-89.4337288,-83.7484616,-83.7484616,-83.7484616,-3.6607788161410735,6.0638506,-120.737257,-16.796011808910734,135.6301212,-76.4626118,144.6780052,144.6780052,144.6780052,144.6780052,144.6780052,-72.5002608,-105.607716,5.6343227,145.0100994,145.0100994,-6.606515459159162,1.8883335,135.6301212,-86.1746933,-100.445882,-4.7002172,-89.4337288,1.8883335,145.08106868543985,-118.755997,0.3095833,-71.8258668,-3.73893,-118.755997,0.6548543,3.674669940206605,3.674669940206605,-2.75,1.8883335,1.8883335,-86.1746933,1.8883335,-120.737257,0.3095833,4.222486304306048,-79.0392919,-0.15455354898441043,-118.755997,-118.755997,-0.34954901296919916,-86.000977,4.045473682551104,135.6301212,1.8883335,-79.0392919,-4.8379791,2.1774322,-89.6884637,1.8883335,-118.755997,-100.445882,-1.2649062,-2.4755923,-79.0392919,-86.1746933,-7.9794599,-9.2345138,-7.9794599,-9.2345138,-8.937435925994537,-9.2345138,-7.9794599,-3.3382702,-89.6884637,-103.6997645,-105.607716,-100.445882,135.6301212],\"marker\":{\"color\":\"#00cc96\"},\"mode\":\"markers\",\"name\":\"goat\",\"showlegend\":true,\"subplot\":\"mapbox\",\"type\":\"scattermapbox\"},{\"customdata\":[[\"Accasciato\"],[\"Cubetto\"],[\"Paesanella Buffalo Mozzarella\"],[\"Smoked Sulguni\"],[\"Sulguni\"]],\"hovertemplate\":\"\\u003cb\\u003e%{hovertext}\\u003c\\u002fb\\u003e\\u003cbr\\u003e\\u003cbr\\u003emilk=buffalo, cow\\u003cbr\\u003elatitude=%{lat}\\u003cbr\\u003elongitude=%{lon}\\u003cbr\\u003echeese=%{customdata[0]}\\u003cextra\\u003e\\u003c\\u002fextra\\u003e\",\"hovertext\":[\"Accasciato\",\"Cubetto\",\"Paesanella Buffalo Mozzarella\",\"Smoked Sulguni\",\"Sulguni\"],\"lat\":[40.860672,40.860672,-31.8759835,42.63545205,42.63545205],\"legendgroup\":\"buffalo, cow\",\"lon\":[14.843984,14.843984,147.2869493,42.24871384619953,42.24871384619953],\"marker\":{\"color\":\"#ab63fa\"},\"mode\":\"markers\",\"name\":\"buffalo, cow\",\"showlegend\":true,\"subplot\":\"mapbox\",\"type\":\"scattermapbox\"},{\"customdata\":[[\"Aged Gouda\"],[\"Armenian String Cheese\"],[\"Barrel Aged Feta\"],[\"Benedictine\"],[\"Beyaz Peynir\"],[\"Bica de Queijo\"],[\"Brousse du Rove\"],[\"Canadian Cheddar\"],[\"Carboncino\"],[\"Castelmagno\"],[\"Castigliano\"],[\"La Tur\"],[\"Liburnski Sir\"],[\"Menage\"],[\"Penamellera\"],[\"Smoked Gouda\"]],\"hovertemplate\":\"\\u003cb\\u003e%{hovertext}\\u003c\\u002fb\\u003e\\u003cbr\\u003e\\u003cbr\\u003emilk=cow, goat, sheep\\u003cbr\\u003elatitude=%{lat}\\u003cbr\\u003elongitude=%{lon}\\u003cbr\\u003echeese=%{customdata[0]}\\u003cextra\\u003e\\u003c\\u002fextra\\u003e\",\"hovertext\":[\"Aged Gouda\",\"Armenian String Cheese\",\"Barrel Aged Feta\",\"Benedictine\",\"Beyaz Peynir\",\"Bica de Queijo\",\"Brousse du Rove\",\"Canadian Cheddar\",\"Carboncino\",\"Castelmagno\",\"Castigliano\",\"La Tur\",\"Liburnski Sir\",\"Menage\",\"Penamellera\",\"Smoked Gouda\"],\"lat\":[52.2434979,4.491976149999999,38.9953683,45.1699553,39.294076,41.5759516,43.687621,50.000678,42.6384261,45.060735,41.55005,44.7007236,45.3658443,44.4308975,43.3133868,52.2434979],\"legendgroup\":\"cow, goat, sheep\",\"lon\":[5.6343227,-75.74135085294314,21.9877132,-109.88428658948227,35.2316631,-8.2699521,4.2691037,-86.000977,12.674297,7.923549,-5.1387401,8.0357786,15.6575209,-89.6884637,-5.94192,5.6343227],\"marker\":{\"color\":\"#19d3f3\"},\"mode\":\"markers\",\"name\":\"cow, goat, sheep\",\"showlegend\":true,\"subplot\":\"mapbox\",\"type\":\"scattermapbox\"},{\"customdata\":[[\"Alverca\"],[\"Amarelo de Beira Baixa\"],[\"Anari\"],[\"Anthotyro\"],[\"Anthotyro Fresco\"],[\"Batzos\"],[\"Bianca\"],[\"Brocciu\"],[\"Calenzana (Calinzanincu)\"],[\"Canestrato\"],[\"Castelo Branco\"],[\"Le Fium Orbo\"],[\"Lebbene\"],[\"Manouri\"],[\"Mascares\"],[\"Miette\"],[\"Mobay\"],[\"Myzithra\"],[\"Pate de Fromage\"],[\"Phoebe\"],[\"Sonnet\"]],\"hovertemplate\":\"\\u003cb\\u003e%{hovertext}\\u003c\\u002fb\\u003e\\u003cbr\\u003e\\u003cbr\\u003emilk=goat, sheep\\u003cbr\\u003elatitude=%{lat}\\u003cbr\\u003elongitude=%{lon}\\u003cbr\\u003echeese=%{customdata[0]}\\u003cextra\\u003e\\u003c\\u002fextra\\u003e\",\"hovertext\":[\"Alverca\",\"Amarelo de Beira Baixa\",\"Anari\",\"Anthotyro\",\"Anthotyro Fresco\",\"Batzos\",\"Bianca\",\"Brocciu\",\"Calenzana (Calinzanincu)\",\"Canestrato\",\"Castelo Branco\",\"Le Fium Orbo\",\"Lebbene\",\"Manouri\",\"Mascares\",\"Miette\",\"Mobay\",\"Myzithra\",\"Pate de Fromage\",\"Phoebe\",\"Sonnet\"],\"lat\":[39.6621648,39.6621648,34.9174159,40.6186482,40.6186482,38.9953683,46.7020686,42.188089649999995,46.603354,40.2423024,39.97675825,46.603354,30.8124247,38.9953683,43.7899311033635,38.7604815,44.4308975,38.9953683,46.603354,46.7020686,46.7020686],\"legendgroup\":\"goat, sheep\",\"lon\":[-8.1353519,-8.1353519,32.889902651331866,22.91795361795959,22.91795361795959,21.9877132,-120.75535,9.068413771427695,1.8883335,15.868903,-7.446059929966704,1.8883335,34.8594762,21.9877132,7.524017533510311,-92.5617875,-89.6884637,21.9877132,1.8883335,-120.75535,-120.75535],\"marker\":{\"color\":\"#FF6692\"},\"mode\":\"markers\",\"name\":\"goat, sheep\",\"showlegend\":true,\"subplot\":\"mapbox\",\"type\":\"scattermapbox\"},{\"customdata\":[[\"Amul Processed Cheese\"],[\"Mozzarella (Australian)\"]],\"hovertemplate\":\"\\u003cb\\u003e%{hovertext}\\u003c\\u002fb\\u003e\\u003cbr\\u003e\\u003cbr\\u003emilk=cow, water buffalo\\u003cbr\\u003elatitude=%{lat}\\u003cbr\\u003elongitude=%{lon}\\u003cbr\\u003echeese=%{customdata[0]}\\u003cextra\\u003e\\u003c\\u002fextra\\u003e\",\"hovertext\":[\"Amul Processed Cheese\",\"Mozzarella (Australian)\"],\"lat\":[22.3850051,-24.7761086],\"legendgroup\":\"cow, water buffalo\",\"lon\":[71.745261,134.755],\"marker\":{\"color\":\"#B6E880\"},\"mode\":\"markers\",\"name\":\"cow, water buffalo\",\"showlegend\":true,\"subplot\":\"mapbox\",\"type\":\"scattermapbox\"},{\"customdata\":[[\"Anejo Enchilado\"],[\"Aromes au Gene de Marc\"],[\"Autun\"],[\"Briquette du Forez\"],[\"Broncha\"],[\"Buttercup\"],[\"Ch\\u00e8vre des neiges\"],[\"Cremet\"],[\"Cremont\"],[\"LaClare Farms Chandoka\"],[\"LaClare Ziege Zacke Blue\"],[\"Le Double Joie\"],[\"Macconais\"],[\"Melange\"],[\"Melange Brie\"],[\"Metronome\"],[\"Minuet\"],[\"Mt. Mazama Cheddar\"],[\"Murazzano DOP\"],[\"Poivre d'Ane\"],[\"Seascape\"],[\"Sharpham Savour\"],[\"Snow Camp\"]],\"hovertemplate\":\"\\u003cb\\u003e%{hovertext}\\u003c\\u002fb\\u003e\\u003cbr\\u003e\\u003cbr\\u003emilk=cow, goat\\u003cbr\\u003elatitude=%{lat}\\u003cbr\\u003elongitude=%{lon}\\u003cbr\\u003echeese=%{customdata[0]}\\u003cextra\\u003e\\u003c\\u002fextra\\u003e\",\"hovertext\":[\"Anejo Enchilado\",\"Aromes au Gene de Marc\",\"Autun\",\"Briquette du Forez\",\"Broncha\",\"Buttercup\",\"Ch\\u00e8vre des neiges\",\"Cremet\",\"Cremont\",\"LaClare Farms Chandoka\",\"LaClare Ziege Zacke Blue\",\"Le Double Joie\",\"Macconais\",\"Melange\",\"Melange Brie\",\"Metronome\",\"Minuet\",\"Mt. Mazama Cheddar\",\"Murazzano DOP\",\"Poivre d'Ane\",\"Seascape\",\"Sharpham Savour\",\"Snow Camp\"],\"lat\":[23.6585116,45.3175313,47.27808725,45.2968119,36.7014631,38.7251776,52.4760892,50.724140500000004,44.5990718,39.7837304,44.4308975,52.4760892,47.27808725,36.7014631,36.7014631,36.7014631,36.7014631,43.9792797,44.4746494,46.603354,36.7014631,50.724140500000004,35.6729639],\"legendgroup\":\"cow, goat\",\"lon\":[-102.0077097,5.721294352585611,4.222486304306048,4.6604809,-118.755997,-105.607716,-71.8258668,-3.6607788161410735,-72.5002608,-100.445882,-89.6884637,-71.8258668,4.222486304306048,-118.755997,-118.755997,-118.755997,-118.755997,-120.737257,8.0213361,1.8883335,-118.755997,-3.6607788161410735,-79.0392919],\"marker\":{\"color\":\"#FF97FF\"},\"mode\":\"markers\",\"name\":\"cow, goat\",\"showlegend\":true,\"subplot\":\"mapbox\",\"type\":\"scattermapbox\"},{\"customdata\":[[\"Aubisque Pyrenees\"],[\"Blenda\"],[\"Blu Della Casera\"],[\"Burgos\"],[\"Cacio di Bosco al Tartufo\"],[\"Caciotta Al Tartufo\"],[\"Casciotta di Urbino\"],[\"Chilli Caciotta\"],[\"Crema de Blue\"],[\"Cuajada\"],[\"Manur\"],[\"Matocq\"],[\"Mi-Ewe\"],[\"Mona\"],[\"Morangie Brie\"],[\"Muddlewell\"],[\"Podhalanski\"],[\"Sartori Limited Edition Pastorale Blend\"],[\"Shepsog\"]],\"hovertemplate\":\"\\u003cb\\u003e%{hovertext}\\u003c\\u002fb\\u003e\\u003cbr\\u003e\\u003cbr\\u003emilk=cow, sheep\\u003cbr\\u003elatitude=%{lat}\\u003cbr\\u003elongitude=%{lon}\\u003cbr\\u003echeese=%{customdata[0]}\\u003cextra\\u003e\\u003c\\u002fextra\\u003e\",\"hovertext\":[\"Aubisque Pyrenees\",\"Blenda\",\"Blu Della Casera\",\"Burgos\",\"Cacio di Bosco al Tartufo\",\"Caciotta Al Tartufo\",\"Casciotta di Urbino\",\"Chilli Caciotta\",\"Crema de Blue\",\"Cuajada\",\"Manur\",\"Matocq\",\"Mi-Ewe\",\"Mona\",\"Morangie Brie\",\"Muddlewell\",\"Podhalanski\",\"Sartori Limited Edition Pastorale Blend\",\"Shepsog\"],\"lat\":[46.603354,62.9974877,45.060735,41.55005,43.4586541,42.965916,43.694112700000005,42.6384261,40.0757384,39.3260685,44.024322850000004,46.603354,36.7014631,44.4308975,57.8119372,52.7923213,52.215933,44.4308975,44.5990718],\"legendgroup\":\"cow, sheep\",\"lon\":[1.8883335,14.3928671,7.923549,-5.1387401,11.1389204,12.490236,12.701443660480004,12.674297,-74.4041622,-4.8379791,21.07657433209902,1.8883335,-118.755997,-89.6884637,-4.0550663,0.4278194,19.134422,-89.6884637,-72.5002608],\"marker\":{\"color\":\"#FECB52\"},\"mode\":\"markers\",\"name\":\"cow, sheep\",\"showlegend\":true,\"subplot\":\"mapbox\",\"type\":\"scattermapbox\"},{\"customdata\":[[\"Barilotto\"],[\"Bufalino\"],[\"Buff Blue\"],[\"Paesanella Buffalo Ricotta\"]],\"hovertemplate\":\"\\u003cb\\u003e%{hovertext}\\u003c\\u002fb\\u003e\\u003cbr\\u003e\\u003cbr\\u003emilk=buffalo\\u003cbr\\u003elatitude=%{lat}\\u003cbr\\u003elongitude=%{lon}\\u003cbr\\u003echeese=%{customdata[0]}\\u003cextra\\u003e\\u003c\\u002fextra\\u003e\",\"hovertext\":[\"Barilotto\",\"Bufalino\",\"Buff Blue\",\"Paesanella Buffalo Ricotta\"],\"lat\":[40.860672,42.6384261,34.169262950000004,-24.7761086],\"legendgroup\":\"buffalo\",\"lon\":[14.843984,12.674297,-116.787448181486,134.755],\"marker\":{\"color\":\"#636efa\"},\"mode\":\"markers\",\"name\":\"buffalo\",\"showlegend\":true,\"subplot\":\"mapbox\",\"type\":\"scattermapbox\"},{\"customdata\":[[\"Blu di Bufala\"],[\"Bufarolo\"],[\"Caciobufala\"],[\"Caciocavallo di Bufala\"],[\"Campi\"],[\"Caprese di Bufala\"],[\"Casatica\"],[\"Crescenza di Bufala\"],[\"Moringhello\"],[\"Mozzarella di Bufala DOP\"],[\"Provoleta\"],[\"Sbronzo\"],[\"Squaquerone di Bufala\"]],\"hovertemplate\":\"\\u003cb\\u003e%{hovertext}\\u003c\\u002fb\\u003e\\u003cbr\\u003e\\u003cbr\\u003emilk=water buffalo\\u003cbr\\u003elatitude=%{lat}\\u003cbr\\u003elongitude=%{lon}\\u003cbr\\u003echeese=%{customdata[0]}\\u003cextra\\u003e\\u003c\\u002fextra\\u003e\",\"hovertext\":[\"Blu di Bufala\",\"Bufarolo\",\"Caciobufala\",\"Caciocavallo di Bufala\",\"Campi\",\"Caprese di Bufala\",\"Casatica\",\"Crescenza di Bufala\",\"Moringhello\",\"Mozzarella di Bufala DOP\",\"Provoleta\",\"Sbronzo\",\"Squaquerone di Bufala\"],\"lat\":[45.5703694,45.5703694,40.860672,42.6384261,45.5703694,45.6476663,45.5703694,45.5703694,45.5703694,40.860672,-34.9964963,40.860672,45.5703694],\"legendgroup\":\"water buffalo\",\"lon\":[9.7732524,9.7732524,14.843984,12.674297,9.7732524,11.8665254,9.7732524,9.7732524,9.7732524,14.843984,-64.9672817,14.843984,9.7732524],\"marker\":{\"color\":\"#EF553B\"},\"mode\":\"markers\",\"name\":\"water buffalo\",\"showlegend\":true,\"subplot\":\"mapbox\",\"type\":\"scattermapbox\"},{\"customdata\":[[\"Blue\"],[\"Bree\"],[\"Brick Lane Bree\"],[\"Brixton Blue\"],[\"Shamembert\"],[\"Shoreditch Smoked\"]],\"hovertemplate\":\"\\u003cb\\u003e%{hovertext}\\u003c\\u002fb\\u003e\\u003cbr\\u003e\\u003cbr\\u003emilk=plant-based\\u003cbr\\u003elatitude=%{lat}\\u003cbr\\u003elongitude=%{lon}\\u003cbr\\u003echeese=%{customdata[0]}\\u003cextra\\u003e\\u003c\\u002fextra\\u003e\",\"hovertext\":[\"Blue\",\"Bree\",\"Brick Lane Bree\",\"Brixton Blue\",\"Shamembert\",\"Shoreditch Smoked\"],\"lat\":[54.7023545,54.7023545,54.7023545,54.7023545,54.7023545,54.7023545],\"legendgroup\":\"plant-based\",\"lon\":[-3.2765753,-3.2765753,-3.2765753,-3.2765753,-3.2765753,-3.2765753],\"marker\":{\"color\":\"#00cc96\"},\"mode\":\"markers\",\"name\":\"plant-based\",\"showlegend\":true,\"subplot\":\"mapbox\",\"type\":\"scattermapbox\"},{\"customdata\":[[\"Bocconcini\"],[\"Bufala Soldier\"]],\"hovertemplate\":\"\\u003cb\\u003e%{hovertext}\\u003c\\u002fb\\u003e\\u003cbr\\u003e\\u003cbr\\u003emilk=cow, goat, water buffalo\\u003cbr\\u003elatitude=%{lat}\\u003cbr\\u003elongitude=%{lon}\\u003cbr\\u003echeese=%{customdata[0]}\\u003cextra\\u003e\\u003c\\u002fextra\\u003e\",\"hovertext\":[\"Bocconcini\",\"Bufala Soldier\"],\"lat\":[42.6384261,38.7251776],\"legendgroup\":\"cow, goat, water buffalo\",\"lon\":[12.674297,-105.607716],\"marker\":{\"color\":\"#ab63fa\"},\"mode\":\"markers\",\"name\":\"cow, goat, water buffalo\",\"showlegend\":true,\"subplot\":\"mapbox\",\"type\":\"scattermapbox\"},{\"customdata\":[[\"Byaslag\"]],\"hovertemplate\":\"\\u003cb\\u003e%{hovertext}\\u003c\\u002fb\\u003e\\u003cbr\\u003e\\u003cbr\\u003emilk=yak\\u003cbr\\u003elatitude=%{lat}\\u003cbr\\u003elongitude=%{lon}\\u003cbr\\u003echeese=%{customdata[0]}\\u003cextra\\u003e\\u003c\\u002fextra\\u003e\",\"hovertext\":[\"Byaslag\"],\"lat\":[46.8250388],\"legendgroup\":\"yak\",\"lon\":[103.8499736],\"marker\":{\"color\":\"#FFA15A\"},\"mode\":\"markers\",\"name\":\"yak\",\"showlegend\":true,\"subplot\":\"mapbox\",\"type\":\"scattermapbox\"},{\"customdata\":[[\"Caciotta\"],[\"Mozzarella\"]],\"hovertemplate\":\"\\u003cb\\u003e%{hovertext}\\u003c\\u002fb\\u003e\\u003cbr\\u003e\\u003cbr\\u003emilk=cow, goat, sheep, water buffalo\\u003cbr\\u003elatitude=%{lat}\\u003cbr\\u003elongitude=%{lon}\\u003cbr\\u003echeese=%{customdata[0]}\\u003cextra\\u003e\\u003c\\u002fextra\\u003e\",\"hovertext\":[\"Caciotta\",\"Mozzarella\"],\"lat\":[42.6384261,42.6384261],\"legendgroup\":\"cow, goat, sheep, water buffalo\",\"lon\":[12.674297,12.674297],\"marker\":{\"color\":\"#19d3f3\"},\"mode\":\"markers\",\"name\":\"cow, goat, sheep, water buffalo\",\"showlegend\":true,\"subplot\":\"mapbox\",\"type\":\"scattermapbox\"},{\"customdata\":[[\"Caravane\"]],\"hovertemplate\":\"\\u003cb\\u003e%{hovertext}\\u003c\\u002fb\\u003e\\u003cbr\\u003e\\u003cbr\\u003emilk=camel\\u003cbr\\u003elatitude=%{lat}\\u003cbr\\u003elongitude=%{lon}\\u003cbr\\u003echeese=%{customdata[0]}\\u003cextra\\u003e\\u003c\\u002fextra\\u003e\",\"hovertext\":[\"Caravane\"],\"lat\":[20.2540382],\"legendgroup\":\"camel\",\"lon\":[-9.2399263],\"marker\":{\"color\":\"#FF6692\"},\"mode\":\"markers\",\"name\":\"camel\",\"showlegend\":true,\"subplot\":\"mapbox\",\"type\":\"scattermapbox\"},{\"customdata\":[[\"Cilentano ai fichi\"]],\"hovertemplate\":\"\\u003cb\\u003e%{hovertext}\\u003c\\u002fb\\u003e\\u003cbr\\u003e\\u003cbr\\u003emilk=buffalo, cow, sheep\\u003cbr\\u003elatitude=%{lat}\\u003cbr\\u003elongitude=%{lon}\\u003cbr\\u003echeese=%{customdata[0]}\\u003cextra\\u003e\\u003c\\u002fextra\\u003e\",\"hovertext\":[\"Cilentano ai fichi\"],\"lat\":[39.0565974],\"legendgroup\":\"buffalo, cow, sheep\",\"lon\":[16.5249864],\"marker\":{\"color\":\"#B6E880\"},\"mode\":\"markers\",\"name\":\"buffalo, cow, sheep\",\"showlegend\":true,\"subplot\":\"mapbox\",\"type\":\"scattermapbox\"},{\"customdata\":[[\"Moose\"]],\"hovertemplate\":\"\\u003cb\\u003e%{hovertext}\\u003c\\u002fb\\u003e\\u003cbr\\u003e\\u003cbr\\u003emilk=moose\\u003cbr\\u003elatitude=%{lat}\\u003cbr\\u003elongitude=%{lon}\\u003cbr\\u003echeese=%{customdata[0]}\\u003cextra\\u003e\\u003c\\u002fextra\\u003e\",\"hovertext\":[\"Moose\"],\"lat\":[63.966667],\"legendgroup\":\"moose\",\"lon\":[19.0],\"marker\":{\"color\":\"#FF97FF\"},\"mode\":\"markers\",\"name\":\"moose\",\"showlegend\":true,\"subplot\":\"mapbox\",\"type\":\"scattermapbox\"},{\"customdata\":[[\"Pule\"]],\"hovertemplate\":\"\\u003cb\\u003e%{hovertext}\\u003c\\u002fb\\u003e\\u003cbr\\u003e\\u003cbr\\u003emilk=donkey\\u003cbr\\u003elatitude=%{lat}\\u003cbr\\u003elongitude=%{lon}\\u003cbr\\u003echeese=%{customdata[0]}\\u003cextra\\u003e\\u003c\\u002fextra\\u003e\",\"hovertext\":[\"Pule\"],\"lat\":[44.9454307],\"legendgroup\":\"donkey\",\"lon\":[19.4987239],\"marker\":{\"color\":\"#FECB52\"},\"mode\":\"markers\",\"name\":\"donkey\",\"showlegend\":true,\"subplot\":\"mapbox\",\"type\":\"scattermapbox\"}], {\"template\":{\"data\":{\"histogram2dcontour\":[{\"type\":\"histogram2dcontour\",\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"},\"colorscale\":[[0.0,\"#0d0887\"],[0.1111111111111111,\"#46039f\"],[0.2222222222222222,\"#7201a8\"],[0.3333333333333333,\"#9c179e\"],[0.4444444444444444,\"#bd3786\"],[0.5555555555555556,\"#d8576b\"],[0.6666666666666666,\"#ed7953\"],[0.7777777777777778,\"#fb9f3a\"],[0.8888888888888888,\"#fdca26\"],[1.0,\"#f0f921\"]]}],\"choropleth\":[{\"type\":\"choropleth\",\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}}],\"histogram2d\":[{\"type\":\"histogram2d\",\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"},\"colorscale\":[[0.0,\"#0d0887\"],[0.1111111111111111,\"#46039f\"],[0.2222222222222222,\"#7201a8\"],[0.3333333333333333,\"#9c179e\"],[0.4444444444444444,\"#bd3786\"],[0.5555555555555556,\"#d8576b\"],[0.6666666666666666,\"#ed7953\"],[0.7777777777777778,\"#fb9f3a\"],[0.8888888888888888,\"#fdca26\"],[1.0,\"#f0f921\"]]}],\"heatmap\":[{\"type\":\"heatmap\",\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"},\"colorscale\":[[0.0,\"#0d0887\"],[0.1111111111111111,\"#46039f\"],[0.2222222222222222,\"#7201a8\"],[0.3333333333333333,\"#9c179e\"],[0.4444444444444444,\"#bd3786\"],[0.5555555555555556,\"#d8576b\"],[0.6666666666666666,\"#ed7953\"],[0.7777777777777778,\"#fb9f3a\"],[0.8888888888888888,\"#fdca26\"],[1.0,\"#f0f921\"]]}],\"heatmapgl\":[{\"type\":\"heatmapgl\",\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"},\"colorscale\":[[0.0,\"#0d0887\"],[0.1111111111111111,\"#46039f\"],[0.2222222222222222,\"#7201a8\"],[0.3333333333333333,\"#9c179e\"],[0.4444444444444444,\"#bd3786\"],[0.5555555555555556,\"#d8576b\"],[0.6666666666666666,\"#ed7953\"],[0.7777777777777778,\"#fb9f3a\"],[0.8888888888888888,\"#fdca26\"],[1.0,\"#f0f921\"]]}],\"contourcarpet\":[{\"type\":\"contourcarpet\",\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}}],\"contour\":[{\"type\":\"contour\",\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"},\"colorscale\":[[0.0,\"#0d0887\"],[0.1111111111111111,\"#46039f\"],[0.2222222222222222,\"#7201a8\"],[0.3333333333333333,\"#9c179e\"],[0.4444444444444444,\"#bd3786\"],[0.5555555555555556,\"#d8576b\"],[0.6666666666666666,\"#ed7953\"],[0.7777777777777778,\"#fb9f3a\"],[0.8888888888888888,\"#fdca26\"],[1.0,\"#f0f921\"]]}],\"surface\":[{\"type\":\"surface\",\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"},\"colorscale\":[[0.0,\"#0d0887\"],[0.1111111111111111,\"#46039f\"],[0.2222222222222222,\"#7201a8\"],[0.3333333333333333,\"#9c179e\"],[0.4444444444444444,\"#bd3786\"],[0.5555555555555556,\"#d8576b\"],[0.6666666666666666,\"#ed7953\"],[0.7777777777777778,\"#fb9f3a\"],[0.8888888888888888,\"#fdca26\"],[1.0,\"#f0f921\"]]}],\"mesh3d\":[{\"type\":\"mesh3d\",\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}}],\"scatter\":[{\"fillpattern\":{\"fillmode\":\"overlay\",\"size\":10,\"solidity\":0.2},\"type\":\"scatter\"}],\"parcoords\":[{\"type\":\"parcoords\",\"line\":{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}}}],\"scatterpolargl\":[{\"type\":\"scatterpolargl\",\"marker\":{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}}}],\"bar\":[{\"error_x\":{\"color\":\"#2a3f5f\"},\"error_y\":{\"color\":\"#2a3f5f\"},\"marker\":{\"line\":{\"color\":\"#E5ECF6\",\"width\":0.5},\"pattern\":{\"fillmode\":\"overlay\",\"size\":10,\"solidity\":0.2}},\"type\":\"bar\"}],\"scattergeo\":[{\"type\":\"scattergeo\",\"marker\":{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}}}],\"scatterpolar\":[{\"type\":\"scatterpolar\",\"marker\":{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}}}],\"histogram\":[{\"marker\":{\"pattern\":{\"fillmode\":\"overlay\",\"size\":10,\"solidity\":0.2}},\"type\":\"histogram\"}],\"scattergl\":[{\"type\":\"scattergl\",\"marker\":{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}}}],\"scatter3d\":[{\"type\":\"scatter3d\",\"line\":{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}},\"marker\":{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}}}],\"scattermapbox\":[{\"type\":\"scattermapbox\",\"marker\":{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}}}],\"scatterternary\":[{\"type\":\"scatterternary\",\"marker\":{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}}}],\"scattercarpet\":[{\"type\":\"scattercarpet\",\"marker\":{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}}}],\"carpet\":[{\"aaxis\":{\"endlinecolor\":\"#2a3f5f\",\"gridcolor\":\"white\",\"linecolor\":\"white\",\"minorgridcolor\":\"white\",\"startlinecolor\":\"#2a3f5f\"},\"baxis\":{\"endlinecolor\":\"#2a3f5f\",\"gridcolor\":\"white\",\"linecolor\":\"white\",\"minorgridcolor\":\"white\",\"startlinecolor\":\"#2a3f5f\"},\"type\":\"carpet\"}],\"table\":[{\"cells\":{\"fill\":{\"color\":\"#EBF0F8\"},\"line\":{\"color\":\"white\"}},\"header\":{\"fill\":{\"color\":\"#C8D4E3\"},\"line\":{\"color\":\"white\"}},\"type\":\"table\"}],\"barpolar\":[{\"marker\":{\"line\":{\"color\":\"#E5ECF6\",\"width\":0.5},\"pattern\":{\"fillmode\":\"overlay\",\"size\":10,\"solidity\":0.2}},\"type\":\"barpolar\"}],\"pie\":[{\"automargin\":true,\"type\":\"pie\"}]},\"layout\":{\"autotypenumbers\":\"strict\",\"colorway\":[\"#636efa\",\"#EF553B\",\"#00cc96\",\"#ab63fa\",\"#FFA15A\",\"#19d3f3\",\"#FF6692\",\"#B6E880\",\"#FF97FF\",\"#FECB52\"],\"font\":{\"color\":\"#2a3f5f\"},\"hovermode\":\"closest\",\"hoverlabel\":{\"align\":\"left\"},\"paper_bgcolor\":\"white\",\"plot_bgcolor\":\"#E5ECF6\",\"polar\":{\"bgcolor\":\"#E5ECF6\",\"angularaxis\":{\"gridcolor\":\"white\",\"linecolor\":\"white\",\"ticks\":\"\"},\"radialaxis\":{\"gridcolor\":\"white\",\"linecolor\":\"white\",\"ticks\":\"\"}},\"ternary\":{\"bgcolor\":\"#E5ECF6\",\"aaxis\":{\"gridcolor\":\"white\",\"linecolor\":\"white\",\"ticks\":\"\"},\"baxis\":{\"gridcolor\":\"white\",\"linecolor\":\"white\",\"ticks\":\"\"},\"caxis\":{\"gridcolor\":\"white\",\"linecolor\":\"white\",\"ticks\":\"\"}},\"coloraxis\":{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}},\"colorscale\":{\"sequential\":[[0.0,\"#0d0887\"],[0.1111111111111111,\"#46039f\"],[0.2222222222222222,\"#7201a8\"],[0.3333333333333333,\"#9c179e\"],[0.4444444444444444,\"#bd3786\"],[0.5555555555555556,\"#d8576b\"],[0.6666666666666666,\"#ed7953\"],[0.7777777777777778,\"#fb9f3a\"],[0.8888888888888888,\"#fdca26\"],[1.0,\"#f0f921\"]],\"sequentialminus\":[[0.0,\"#0d0887\"],[0.1111111111111111,\"#46039f\"],[0.2222222222222222,\"#7201a8\"],[0.3333333333333333,\"#9c179e\"],[0.4444444444444444,\"#bd3786\"],[0.5555555555555556,\"#d8576b\"],[0.6666666666666666,\"#ed7953\"],[0.7777777777777778,\"#fb9f3a\"],[0.8888888888888888,\"#fdca26\"],[1.0,\"#f0f921\"]],\"diverging\":[[0,\"#8e0152\"],[0.1,\"#c51b7d\"],[0.2,\"#de77ae\"],[0.3,\"#f1b6da\"],[0.4,\"#fde0ef\"],[0.5,\"#f7f7f7\"],[0.6,\"#e6f5d0\"],[0.7,\"#b8e186\"],[0.8,\"#7fbc41\"],[0.9,\"#4d9221\"],[1,\"#276419\"]]},\"xaxis\":{\"gridcolor\":\"white\",\"linecolor\":\"white\",\"ticks\":\"\",\"title\":{\"standoff\":15},\"zerolinecolor\":\"white\",\"automargin\":true,\"zerolinewidth\":2},\"yaxis\":{\"gridcolor\":\"white\",\"linecolor\":\"white\",\"ticks\":\"\",\"title\":{\"standoff\":15},\"zerolinecolor\":\"white\",\"automargin\":true,\"zerolinewidth\":2},\"scene\":{\"xaxis\":{\"backgroundcolor\":\"#E5ECF6\",\"gridcolor\":\"white\",\"linecolor\":\"white\",\"showbackground\":true,\"ticks\":\"\",\"zerolinecolor\":\"white\",\"gridwidth\":2},\"yaxis\":{\"backgroundcolor\":\"#E5ECF6\",\"gridcolor\":\"white\",\"linecolor\":\"white\",\"showbackground\":true,\"ticks\":\"\",\"zerolinecolor\":\"white\",\"gridwidth\":2},\"zaxis\":{\"backgroundcolor\":\"#E5ECF6\",\"gridcolor\":\"white\",\"linecolor\":\"white\",\"showbackground\":true,\"ticks\":\"\",\"zerolinecolor\":\"white\",\"gridwidth\":2}},\"shapedefaults\":{\"line\":{\"color\":\"#2a3f5f\"}},\"annotationdefaults\":{\"arrowcolor\":\"#2a3f5f\",\"arrowhead\":0,\"arrowwidth\":1},\"geo\":{\"bgcolor\":\"white\",\"landcolor\":\"#E5ECF6\",\"subunitcolor\":\"white\",\"showland\":true,\"showlakes\":true,\"lakecolor\":\"white\"},\"title\":{\"x\":0.05},\"mapbox\":{\"style\":\"light\"}}},\"mapbox\":{\"domain\":{\"x\":[0.0,1.0],\"y\":[0.0,1.0]},\"center\":{\"lat\":41.45684542346779,\"lon\":-20.657924389403536},\"zoom\":1.5,\"style\":\"open-street-map\"},\"legend\":{\"title\":{\"text\":\"milk\"},\"tracegroupgap\":0},\"margin\":{\"t\":0,\"r\":0,\"l\":0,\"b\":0},\"height\":800,\"width\":1400}, {\"responsive\": true} ).then(function(){\n",
" \n",
"var gd = document.getElementById('7c8ae3eb-511f-4ccf-8488-f74d51db6032');\n",
"var x = new MutationObserver(function (mutations, observer) {{\n",
" var display = window.getComputedStyle(gd).display;\n",
" if (!display || display === 'none') {{\n",
" console.log([gd, 'removed!']);\n",
" Plotly.purge(gd);\n",
" observer.disconnect();\n",
" }}\n",
"}});\n",
"\n",
"// Listen for the removal of the full notebook cells\n",
"var notebookContainer = gd.closest('#notebook-container');\n",
"if (notebookContainer) {{\n",
" x.observe(notebookContainer, {childList: true});\n",
"}}\n",
"\n",
"// Listen for the clearing of the current output cell\n",
"var outputEl = gd.closest('.output');\n",
"if (outputEl) {{\n",
" x.observe(outputEl, {childList: true});\n",
"}}\n",
"\n",
" }) }; }); </script> </div>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"fig = px.scatter_mapbox(data, \n",
" lat=\"latitude\", \n",
" lon=\"longitude\", \n",
" hover_name=\"cheese\", \n",
" hover_data=[\"cheese\"],\n",
" color=\"milk\",\n",
" zoom=1.5,\n",
" height=800,\n",
" width=1400)\n",
"\n",
"fig.update_layout(mapbox_style=\"open-street-map\")\n",
"fig.update_layout(margin={\"r\":0,\"t\":0,\"l\":0,\"b\":0})\n",
"fig.show()"
]
},
{
"cell_type": "code",
"execution_count": 19,
"id": "66ce4e4a-7006-411f-abd0-ee94d7cf99b3",
"metadata": {},
"outputs": [],
"source": [
"def filter_df(df, cols=None):\n",
" if cols is None:\n",
" cols = [\"milk\", \n",
" # \"country\",\n",
" \"color\",\n",
" \"type\", \"texture\", \"flavor\", \"aroma\", \"family\", \"rind\"]\n",
"\n",
" df = df.copy()\n",
" attributes = set() # Get all the possible attributes (some are mixed in different columns)\n",
" for col in cols:\n",
" values = set()\n",
" for val in set(df[col]):\n",
" if type(val) == float: # skip NaN values\n",
" continue\n",
" values = values.union([x.strip() for x in set(val.split(\",\"))])\n",
" attributes = attributes.union(values)\n",
" row_attrs = [set() for _ in range(len(df))] # get the attributes specific to each row\n",
" for col in cols:\n",
" for i, row in enumerate(df[col]):\n",
" if type(row) != float:\n",
" row_attrs[i] = row_attrs[i].union([x.strip() for x in row.split(\",\")])\n",
" for attr in attributes: # Add attributes rows\n",
" df[attr] = list(attr in row_attrs[i] for i in range(len(df[col])))\n",
" df=df.copy()\n",
" for col in cols:\n",
" del df[col]\n",
"\n",
" return df.copy()"
]
},
{
"cell_type": "code",
"execution_count": 41,
"id": "5b0c0b53-192a-46e6-a115-67e76e974a63",
"metadata": {},
"outputs": [],
"source": [
"def color_columns(data):\n",
" \"\"\"\n",
" Returns 3 columns corresponding to approximate RGB values of the colors on the cheeses\n",
" \"\"\"\n",
" color_to_hex = {\n",
" 'blue': \"#50564B\",\n",
" 'blue-grey': \"#504E4A\",\n",
" 'brown': \"#D19651\",\n",
" 'brownish yellow': \"#E5CD80\",\n",
" 'cream': \"#D9D9CE\",\n",
" 'golden orange': \"#D0915D\",\n",
" 'golden yellow': \"#DCBE9A\",\n",
" 'green': \"#6AA57F\",\n",
" 'ivory': \"#E8C891\",\n",
" 'orange': \"#C7980D\",\n",
" 'pale white': \"#DAD5C2\",\n",
" 'pale yellow': \"#F3D7B1\",\n",
" 'pink and white': \"#C0AB94\",\n",
" 'red': \"#984F18\",\n",
" 'straw': \"#F8EAC6\",\n",
" 'white': \"#F8F8F8\",\n",
" 'yellow': \"#EBD88B\",\n",
" }\n",
" color_to_rgb = {color: colors.to_rgb(color_to_hex[color]) for color in color_to_hex}\n",
" data_colors = list(color_to_rgb[color] if color in color_to_rgb else (0, 0, 0) for color in data[\"color\"])\n",
" return list(c[0] for c in data_colors), list(c[1] for c in data_colors), list(c[2] for c in data_colors)"
]
},
{
"cell_type": "code",
"execution_count": 43,
"id": "196efbec-82b4-487a-a2cb-fe9084cf7878",
"metadata": {},
"outputs": [],
"source": [
"data[\"color_r\"], data[\"color_g\"], data[\"color_b\"] = color_columns(data)"
]
},
{
"cell_type": "code",
"execution_count": 24,
"id": "fda6aaad-7b1e-4daa-8d28-cd049df9cec2",
"metadata": {},
"outputs": [],
"source": [
"data_features=filter_df(data)\n",
"data_features"
]
},
{
"cell_type": "markdown",
"id": "a1b022a3-a2f9-4e39-9e79-48ae9f6adca5",
"metadata": {},
"source": [
"## II. Classification"
]
},
{
"cell_type": "code",
"execution_count": 26,
"id": "94bcde38-784b-41d9-89b0-3e2e17aa2979",
"metadata": {},
"outputs": [],
"source": [
"from sklearn import tree\n",
"from sklearn.model_selection import train_test_split\n",
"from sklearn.preprocessing import LabelEncoder"
]
},
{
"cell_type": "markdown",
"id": "100a7c2e-2d24-4814-bd68-4b9f6433ce4d",
"metadata": {},
"source": [
"Transformer: la couleur en RGB; la localisation en GPS\n",
"1ère question: est-ce que la couleur suffit à savoir d'où ça vient ? \n",
"2ème question: est-ce que si on ajoute le type ça marche ? \n",
"3ème question: et les caractéristiques gustatives ?\n"
]
},
{
"cell_type": "code",
"execution_count": 27,
"id": "24e7ff6e-c308-4cc8-aeac-eeb372f4c479",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>cheese</th>\n",
" <th>country</th>\n",
" <th>region</th>\n",
" <th>vegetarian</th>\n",
" <th>vegan</th>\n",
" <th>location</th>\n",
" <th>latitude</th>\n",
" <th>longitude</th>\n",
" <th>color_r</th>\n",
" <th>color_g</th>\n",
" <th>...</th>\n",
" <th>rich</th>\n",
" <th>vegetal</th>\n",
" <th>ivory</th>\n",
" <th>herbal</th>\n",
" <th>fermented</th>\n",
" <th>Gouda</th>\n",
" <th>crystalline</th>\n",
" <th>gooey</th>\n",
" <th>mild</th>\n",
" <th>stringy</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>Aarewasser</td>\n",
" <td>Switzerland</td>\n",
" <td></td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>, Switzerland</td>\n",
" <td>46.798562</td>\n",
" <td>8.231974</td>\n",
" <td>0.921569</td>\n",
" <td>0.847059</td>\n",
" <td>...</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Abbaye de Belloc</td>\n",
" <td>France</td>\n",
" <td>Pays Basque</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" <td>Pays Basque, France</td>\n",
" <td>47.686790</td>\n",
" <td>7.392763</td>\n",
" <td>0.921569</td>\n",
" <td>0.847059</td>\n",
" <td>...</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>Abbaye de Belval</td>\n",
" <td>France</td>\n",
" <td></td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>, France</td>\n",
" <td>46.603354</td>\n",
" <td>1.888334</td>\n",
" <td>0.909804</td>\n",
" <td>0.784314</td>\n",
" <td>...</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>Abbaye de Citeaux</td>\n",
" <td>France</td>\n",
" <td>Burgundy</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>Burgundy, France</td>\n",
" <td>47.278087</td>\n",
" <td>4.222486</td>\n",
" <td>0.972549</td>\n",
" <td>0.972549</td>\n",
" <td>...</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>Abbaye de Tamié</td>\n",
" <td>France</td>\n",
" <td>Savoie</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>Savoie, France</td>\n",
" <td>45.494895</td>\n",
" <td>6.384660</td>\n",
" <td>0.972549</td>\n",
" <td>0.972549</td>\n",
" <td>...</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1182</th>\n",
" <td>Sveciaost</td>\n",
" <td>Sweden</td>\n",
" <td>Low-laying regions</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>Low-laying regions, Sweden</td>\n",
" <td>59.674971</td>\n",
" <td>14.520858</td>\n",
" <td>0.952941</td>\n",
" <td>0.843137</td>\n",
" <td>...</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1183</th>\n",
" <td>Swag</td>\n",
" <td>Australia</td>\n",
" <td>South Australia</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" <td>South Australia, Australia</td>\n",
" <td>-30.534367</td>\n",
" <td>135.630121</td>\n",
" <td>0.972549</td>\n",
" <td>0.972549</td>\n",
" <td>...</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1184</th>\n",
" <td>Swaledale</td>\n",
" <td>England</td>\n",
" <td>Swaledale, North Yorkshire</td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" <td>Swaledale, North Yorkshire, England</td>\n",
" <td>54.382993</td>\n",
" <td>-1.984136</td>\n",
" <td>0.921569</td>\n",
" <td>0.847059</td>\n",
" <td>...</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1185</th>\n",
" <td>Sweet Style Swiss</td>\n",
" <td>Switzerland</td>\n",
" <td></td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>, Switzerland</td>\n",
" <td>46.798562</td>\n",
" <td>8.231974</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>...</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1186</th>\n",
" <td>Swiss cheese</td>\n",
" <td>United States</td>\n",
" <td></td>\n",
" <td>True</td>\n",
" <td>False</td>\n",
" <td>, United States</td>\n",
" <td>39.783730</td>\n",
" <td>-100.445882</td>\n",
" <td>0.952941</td>\n",
" <td>0.843137</td>\n",
" <td>...</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" <td>False</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>1140 rows × 175 columns</p>\n",
"</div>"
],
"text/plain": [
" cheese country region vegetarian \\\n",
"0 Aarewasser Switzerland False \n",
"1 Abbaye de Belloc France Pays Basque True \n",
"2 Abbaye de Belval France False \n",
"3 Abbaye de Citeaux France Burgundy False \n",
"4 Abbaye de Tamié France Savoie False \n",
"... ... ... ... ... \n",
"1182 Sveciaost Sweden Low-laying regions False \n",
"1183 Swag Australia South Australia True \n",
"1184 Swaledale England Swaledale, North Yorkshire True \n",
"1185 Sweet Style Swiss Switzerland False \n",
"1186 Swiss cheese United States True \n",
"\n",
" vegan location latitude longitude \\\n",
"0 False , Switzerland 46.798562 8.231974 \n",
"1 False Pays Basque, France 47.686790 7.392763 \n",
"2 False , France 46.603354 1.888334 \n",
"3 False Burgundy, France 47.278087 4.222486 \n",
"4 False Savoie, France 45.494895 6.384660 \n",
"... ... ... ... ... \n",
"1182 False Low-laying regions, Sweden 59.674971 14.520858 \n",
"1183 False South Australia, Australia -30.534367 135.630121 \n",
"1184 False Swaledale, North Yorkshire, England 54.382993 -1.984136 \n",
"1185 False , Switzerland 46.798562 8.231974 \n",
"1186 False , United States 39.783730 -100.445882 \n",
"\n",
" color_r color_g ... rich vegetal ivory herbal fermented \\\n",
"0 0.921569 0.847059 ... False False False False False \n",
"1 0.921569 0.847059 ... False False False False False \n",
"2 0.909804 0.784314 ... False False True False False \n",
"3 0.972549 0.972549 ... False False False False False \n",
"4 0.972549 0.972549 ... False False False False False \n",
"... ... ... ... ... ... ... ... ... \n",
"1182 0.952941 0.843137 ... False False False False False \n",
"1183 0.972549 0.972549 ... False False False False False \n",
"1184 0.921569 0.847059 ... False False False False False \n",
"1185 0.000000 0.000000 ... False False False False False \n",
"1186 0.952941 0.843137 ... False False False False False \n",
"\n",
" Gouda crystalline gooey mild stringy \n",
"0 False False False False False \n",
"1 False False False False False \n",
"2 False False False False False \n",
"3 False False False False False \n",
"4 False False False False False \n",
"... ... ... ... ... ... \n",
"1182 False False False False False \n",
"1183 False False False False False \n",
"1184 False False False False False \n",
"1185 False False False False False \n",
"1186 False False False False False \n",
"\n",
"[1140 rows x 175 columns]"
]
},
"execution_count": 27,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"data_features.drop(columns=[\"region\"])\n",
"data_features"
]
},
{
"cell_type": "code",
"execution_count": 28,
"id": "ca969d41-a88a-47d9-b94b-8b633d3d3348",
"metadata": {},
"outputs": [],
"source": [
"Y=LabelEncoder().fit_transform(data_features[\"country\"])"
]
},
{
"cell_type": "code",
"execution_count": 29,
"id": "a8d0848f-b844-4a08-976d-4d1370070f73",
"metadata": {},
"outputs": [],
"source": [
"X=data_features.drop(columns=[\"cheese\",\"country\",\"region\",\"vegetarian\",\"location\",\"latitude\",\"longitude\"])"
]
},
{
"cell_type": "code",
"execution_count": 30,
"id": "43a62595-36f6-48f1-8c5f-7e4eb04916f4",
"metadata": {},
"outputs": [],
"source": [
"data_train, data_test, target_train, target_test = train_test_split(\n",
" X, Y)"
]
},
{
"cell_type": "code",
"execution_count": 31,
"id": "9146fe82-eb70-4c66-b844-fdb405a8712b",
"metadata": {},
"outputs": [],
"source": [
"c=tree.DecisionTreeClassifier(max_depth=4)"
]
},
{
"cell_type": "code",
"execution_count": 32,
"id": "ac1d325e-8bad-48a4-ac33-9cf055ef25b2",
"metadata": {},
"outputs": [],
"source": [
"c=c.fit(data_train,target_train)"
]
},
{
"cell_type": "code",
"execution_count": 33,
"id": "e2c9b84f-b899-4c99-abb7-37a9deeafbb5",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAHlkAAC0yCAYAAABl0sCnAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzs3UEBACAQgDC1f+ezhTzcEtCAPTOzAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHjt1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8CeTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASJssAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEDCZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEiYLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmTZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIGGyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJEyWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhMkyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQMFkGAAAAAAAAAAAAAAAAAAAAAAAAAAAA4LJ3xwIAAAAAg/yth7GnRAIAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAgNi7YwEAAACAQf7Ww9hTIgEAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAQOzdd3TX1f348RcEwybsoYJSFUTRKkNlOFCr1gVUbcFdR63160Crto5WBdFqFVdtK60F11dluKhfN6AIqIAKCg5QmSrDEEkCYeX3R39+SiSGQAIX5fE4h3Pu+/2+73tv3if8x+EJAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEmILAMAAAAAAAAAAAAA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JUk+7tYjX/f/uYjrHr/fMWccX3bx7oXhu4GDctZFl+Tsi/+V1iuskDXbtU3TJk1Su3atjB8/IX2++iqf9ulbokD06quukoduubnMeevUKcpTd9+R7fc7MGPHjU/XXr2y1nY7ZsuNN0qblVbMpEmT836XTzJwyM/nd501Vs8tl/2rUu6rZs2aefyO27L1Ph0yZuy4fDdwUDbcabdsvekmabPSivlh5Ki88d77mTR5cpIfi1r+9/prstLyy1fK+vNrjyOOypDhJQtdD//++0K7a69P53peb7/qimy47jpznfOQffbOex93yZ0PPpwkufo/t+Whp57JlhtvlKKionT7tHc+++KLQvyG666Tq/5xXmXcTpKkzUor5q5rrs4Rp56W4uLivP7ue2mzyRbZYcstsnSzpvmm/4C881HnFBcXJ0maNm6cx+/4T6mFTRcm57V8Lrj62rz69juFfts2rfNyp7fycqe3yjX+pn9dXCl5XHfhBene+7N0/7R3Jk+ZkkNOOiWX3fTvrL/WWpk6dWre7fxxho74+T3ixCMPz/577F4pa8+vC6+5Lh1fe73EtYkTJ5Xoz+27fdxhh+b4ww+t8PpV/RworxE/jMyF116fC6+9Pssvs0zWXn21LN20aerUKcroMWPStden+XbAwBJjOuy2Sy4so9B4cXFxXnzjzbz4xpupU1SUNdu1y8orrZhGjRpm5syZ+f6Hkene+7MMHjasxLjTjj0mfzxw/0q7t1/TuxMAAAAAAAAA8NujyDIAAAAAAAAAAAAAAAAAAAAAAMBirlHDhtnzD7/PY893LHH9oL33TPXq1ec5fvVVV8kjt/47h/35L5kwcWKKi4vTuVv3dO7WvURch912yR1XX5nTLrio0nLfaL11c9e1V+XYs87NjBkzMmXq1DmK2y3VqGHuuubqrLfWmuWas1q1arnj6ivTfu21c+E112Xk6NGZMWNGuvTomS49epY6buP110utmv75rcXROSefmNq1a+cfV16dKVOnZvTYsXn6xZfniNtsww1y343Xp8XSS5c5309FMH9Soxzfk/KYOGlSen3ep8yYgUOGlChsmSRjx42rlPWTZOvNNs3z996do08/K0OGD8/06dPzyltvzxG3XKtWueeGa7PlxhvNc87Z96syC4bOa69Gjx1bolDfT6b9f5HoimrVonleffThHHHqaYXn3cfd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f/9uJk2atPr8Y445Zo3a/vjHP+YnP/lJ+vXrl27duqV9+/bp1q1bPvWpT+W8887LCy+88ME/8EZy8803p76+PldddVU+/OEPl50DAAAAAACUYLvttsvYsWNzyy23pL6+vuyc9a4oikyfPj2DBw9e/VypY8eO6dChQ7bffvvst99+Oeecc/K3v/1tvd/35ptvzre+9a306NEjnTt3Tps2bdKpU6d07949BxxwQM4444xMnTo1TU1N73u95557LhdffHH233//7LTTTunQoUO23nrr9OrVKyeddFIefvjh9doPAAAAAABA89C27AAAAAAAAAAAAAAAAAAAAAAA4J09+uij+drXvpZ58+aV1vDaa6/l+OOPzw033JCiKN722osvvpgXX3wx999/f4YOHZqf//znOf7440sqfWcvvvhivv/97+dLX/pSvv3tb5edAwAAAAAAlOhLX/pSjjrqqJx00kk54IAD8uEPf7jspPVixYoV2XXXXd91QHnhwoVZuHBhfv/73+fSSy/NkCFDcsopp6zzfRcuXJjDDz88999//z+8tmTJkixYsCALFizI1KlTc9lll+Wuu+7KZz/72Xe8VlEUufDCC3PJJZdk6dKlb3tt+fLlefXVV9PY2Jirr7463/ve93L11VenXbt26/wZAAAAAAAAaB6MLAMAAAAAAAAAAAAAAAAAAABAM7Ro0aIccsghWbBgQTp06JCBAweme/fuefPNNzNr1qyN0rBw4cIceOCBmT9//urf9ejRI3369EmXLl3y8ssv5w9/+EOef/75vPnmmznhhBOyePHinH766Rul7/0URZHjjz8+RVFk9OjRqVQqZScBAAAAAAAlGz58eO65554ce+yxufPOO1OtVstOWmerVq1aPbDcqVOn7Lnnntl9993TuXPnrFq1Ks8//3wefPDBLFq0KMuXL8+pp56apqamnHbaaet0z0MPPTSzZ89e/buamprU1NRkq622yltvvZUXXnghc+bMyfPPP/+e12pqasq3vvWt3HDDDat/t/3222ffffdNt27dsnTp0vzxj3/Mn/70pxRFkbFjx+Zvf/tbbr31Vs9/AAAAAAAAWgkjywAAAAAAAAAAAAAAAAAAAADQDI0ePTorV67Ml770pYwePTof+tCHVr9WFEVWrFixQe/f1NSUI488cvXAcr9+/TJq1Kjss88+bztv5cqVGT16dE477bQsX748gwYNymc+85nsu+++G7RvTVx33XX59a9/nZtuuult/38AAAAAAMCma6uttsqECRNy8MEHZ/To0fn3f//3spPWWbVazTHHHJOjjjoqn/70p9O+fft/OGflypWpq6vLSSedlCVLluTMM8/MV77ylXzkIx9Zq3veeuutqweWd9hhh/zXf/3Xuz4fmj9/fq699tp07tz5HV+/4IILVg8sd+vWLVdddVW++tWv/sMA9pQpU3LUUUfl+eefz+23357LL788P/nJT9aqHwAAAAAAgObFyDIAAAAAAAAAAAAAAAAAAAAANEMrV67MgQcemJtuuilt2rR522uVSuUd/zj++vSf//mfufvuu5Mk/fv3z3333ZdOnTr9w3lt27bNiSeemM033zzf/e53s2rVqpx33nm54447Nmjf+/nb3/6WE088MUceeWS+/OUvl9oCAAAAAAA0L5/73Odywgkn5Kc//Wk+97nP5aMf/WjZSW9z7rnnZsstt3zPc3beeef87//9v5Mk7du3T21t7Xue37Zt2xx33HHp1KlTvvnNb2bFihUZPXp0LrnkkrVqnD59+urj888//10HlpOkZ8+eGTJkyDu+tmDBglx44YVJki5dumTatGnp0aPHO5772c9+NnfddVf69++fZcuW5dJLL82///u/p2PHjmv1GQAAAAAAAGg+jCwDAAAAAAAAAAAAAAAAAAAAQDN15ZVX/sPA8sZyxRVXrD4eOXLkOw4s/3fHHntshg4dmj//+c/57W9/m0WLFmXbbbfd0JnvqCiKHHfccenYsWNGjBhRSgMAAAAAANC8XXbZZfnd736Xo48+OtOmTSvtmcw7qa+vf99z9tprr9Ujyx/EV7/61Xzve9/LG2+8kbvuumutR5YXL168+ni77bZbq2skyVVXXZWVK1cmSQYNGvSuA8v/T8+ePXP00Udn7Nixeemll/Lb3/42RxxxxFrfHwAAAAAAgObByDIAAAAAAAAAAAAAAAAAAAAANEO9evVKTU1NKfd+/vnn88c//jFJsvvuu2efffZ53/dUKpUccMAB+fOf/5yiKPKHP/whhx122IZOfUdjx47NnXfemcmTJ2frrbcupQEAAAAAAGjetthii0yaNCn77bdfLr/88px++ullJ60XRVGkoaEhDQ0NeeaZZ7J48eIsX778bedUKpUkydy5c9PU1JRqtfqB77PLLrusPh4zZkwOPfTQtG37wf/0/W233bb6+Fvf+tYavefAAw/M2LFjkyTTp083sgwAAAAAANAKGFkGAAAAAAAAAAAAAAAAAAAAgGaof//+pd37/vvvX328fPnynHjiiWv0vlmzZq0+fuaZZ9Z715p48sknc9ppp+X73/9+DjnkkFIaAAAAAACAlmHgwIE57bTTcvbZZ+fzn/98ampqyk5Kkvz1r39N9+7dP9B7mpqaMnLkyPz85z/PggUL1ug9K1asyGuvvZatt976Azd+5StfybnnnpumpqZMnjw5e+65Z77zne/kX/7lX9K7d+81Gm5etGhRHnvssSRJtVrNkCFD1ujezz777Orjsp5JAQAAAAAAsH4ZWQYAAAAAAAAAAAAAAAAAAACAZqhbt26l3fu5555bffzMM8/kmmuu+cDXeOWVV9Zn0hpZtWpVjjnmmHTr1i0///nPN/r9AQAAAACAlueCCy7IHXfckaOOOioPPPBA2rdvX3bSB7Z8+fJ8+ctfzm233faB3/v666+v1cjyHnvskcsvvzynnnpqiqLI448/nkGDBmXQoEHp3LlzPvnJT2b//ffP4Ycfnh49erzjNZ5//vnVx01NTS3mmRQAAAAAAADrX7XsAAAAAAAAAAAAAAAAAAAAAADgH22++eal3fu1115b52usXLlyPZR8MMOHD8/06dMzadKkbLnllhv9/gAAAAAAQMuz2Wabpb6+PvPmzctFF11Uds5aufDCC1cPLFer1XzjG9/IDTfckD/96U959dVXs3z58hRFsfrfRz7ykdXvbWpqWuv7/vjHP860adNy8MEHp1r9///s/eLFi3PnnXfmzDPPzB577JEDDzww8+bN+4f3t9RnUgAAAAAAAKx/bcsOAAAAAAAAAAAAAAAAAAAAAAA2rvf7Y/lbbLHF6uPPfe5zufPOOzd00jr705/+lEGDBuWUU07JfvvtV3YOAAAAAADQgvTv3z9nnXVWLrjggnzhC1/I3nvvXXbSGlu+fHmuvPLK1T/X1dXl3/7t397zPYsXL15v9x84cGB++9vf5qWXXsq0adMybdq0/P73v8/DDz+8+pnUPffck3333Td33XVXPv3pT69+739/JtWhQ4e89dZb660LAAAAAACAlqVadgAAAAAAAAAAAAAAAAAAAAAAsG7atWu3+njlypXve/5rr732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/e2YPHly3HTTTbHffvulzgEAAIC6cP7558chhxwSw4cPj9dffz11DgAAAAAAAAAAAHSocrkcWZZFU5O5H2DTyPM81qxZEwsXLkydAgAAkIRfXQAAAAAAAAAAAAAAgLrx/PPPx7hx46K5uTmOPPLI1DkAAABQNzp37hwzZ86Mt956K4444oioVCqpkwAAAAAAAAAAAKDDFEURWZalzgDq2ODBg6OpqSmKokidAgAAkISRZQAAAAAAAAAAAAAAoC6sW7cuWlpa4mMf+1jceeedUSqVUicBAABAXdlpp53i3nvvjX/+53+OW2+9NXUOAAAAAAAAAAAAdIglS5bEK6+8Enmep04B6liPHj1iwIABRpYBAICGZWQZAAAAAAAAAAAAAACoC+edd17MmzcvWltbY8stt0ydAwAAAHXpK1/5Spx44olx6qmnxiOPPJI6BwAAAAAAAAAAADa5crkcEWFkGdjk8jz/w50DAADQaIwsAwAAAAAAAAAAAAAANe/HP/5xXH311XHFFVd4qAIAAAA2sauvvjoGDBgQzc3N8eabb6bOAQAAAAAAAAAAgE2qKIrYbrvtYocddkidAtS5LMvisccei7feeit1CgAAQIczsgwAAAAAAAAAAAAAANS0V199NUaPHh1/+7d/G6ecckrqHAAAAKh7m222WbS2tsaSJUvi+OOPT50DAAAAAAAAAAAAm1RRFJHneeoMoAHkeR7t7e0xf/781CkAAAAdzsgyAAAAAAAAAAAAAABQszZs2BCjRo2KpqamuO+++6KpyacSAAAA0BH22muvuP322+O+++6L6dOnp84BAAAAAAAAAACATWLDhg0xZ84cI8tAh9h///2jW7duUS6XU6cAAAB0OC8HAQAAAAAAAAAAAAAANevqq6+OBx98MGbMmBHbbLNN6hwAAABoKKNGjYpRo0bFscceG08//XTqHAAAAAAAAAAAANjonnnmmVi5cqWRZaBDdOnSJQYPHhxFUaROAQAA6HBGlgEAAAAAAAAAAAAAgJr08MMPx3nnnRfnnHNOfPazn02dAwAAAA3p1ltvje233z5aWlrinXfeSZ0DAAAAAAAAAAAAG9W7Q6dDhw5NXAI0iizLjCwDAAANycgyAAAAAAAAAAAAAABQc954440YNmxYfPzjH4+JEyemzgEAAICG1bNnz2htbY0nnngizjrrrNQ5AAAA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I7FixYrI8zx1CgDQjnTp0iWyLDOyDAAA/4ORZQAAAAAAAAAAAADe17/+67/GbbfdFpMmTYo999wzdQ4AAAAAAADAejv77LPjs5/9bDQ0NMSrr76aOgcAAAAAAACADqQsy6ipqYmhQ4emTgEA2pk8z6Msy9QZAADQphhZBgAAAAAAAAAAAOBvPP3003H44YdHfX19HHLIIalzAAAAAAAAADZI165dY8aMGfHOO+/EIYccEtVqNXUSAAAAAAAAAB1EURSx1157xSabbJI6BQBoZ7IsixdffDFeeOGF1CkAANBmGFkGAAAAAAAAAAAA4K+sXr066uvrY6uttopbbrklKpVK6iQAAAAAAACADbbNNtvElClT4r777osbbrghdQ4AAAAAAAAAHURRFJHneeoMAKAdeveGKIoicQkAALQdRpYBAAAAAAAAAAAA+Ctnn312zJ07NxobG2PzzTdPnQMAAAAAAADwsX3961+PE044IU455ZSYN29e6hwAAAAAAAAA2rlly5bFwoULjSwDABtk4MCBMWDAgCjLMnUKAAC0GUaWAQAAAAAAAAAAAHjPf/zHf8SVV14Zl19+eWRZljoHAAAAAAAAoMVceeWVMXjw4Kirq4u33347dQ4AAAAAAAAA7djcuXOjubnZ/3EBgA2WZVkURZE6AwAA2gwjywAAAAAAAAAAAABERMRLL70Uo0aNigMPPDBOOumk1DkAAAAAAAAALapHjx7R2NgYL774Yhx33HGpcwAAAAAAAABox4qiiF69esXgwYNTpwAA7VSe51GWZTQ3N6dOAQCANsHIMgAAAAAAAAAAAADR3Nwco0aNipqamrjrrruiSxefmQIAAAAAAAAdz2677RY333xz3H333TFt2rTUOQAAAAAAAAC0U2VZxrBhw6Jr166pUwCAdirP81i6dGk88cQTqVMAAKBN8PodAAAAAAAAAAAAAHHFFVfEL37xi5g+fXr069cvdQ4AAAAAAABAqxk1alSMHj06jj766Hj88cdT5wAAAAAAAADQDhVFEVmWpc4AANqx2traiPjLXQEAABhZBgAAAAAAAAAAAOj0fvvb38Y555wTZ555Znz5y19OnQMAAAAAAADQ6m688cYYMGBA1NfXx8qVK1PnAAAAAAAAANCOLF68OJ5++unI8zx1CgDQjm2xxRax2267GVkGAID/ZmQZAAAAAAAA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6iQAAAAAAAAAAAAAAGqprbbaKu6888749a9/HXfddVfqHAAAAACo1UqlUmRZljoDAACgzvjwGapUKiUuAQBYnZFlAAAAAAAAAIB17JJLLomnnnoqRo0aFe3atUudAwAAAAAAAAAAAABALfejH/0ojj766DjllFNiypQpqXMAAAAAoFZatGhRvPDCC1EsFlOnAAAA1BkdOnSITTbZJPI8T50CALAaI8sAAAAAAAAAAOvQX/7yl7jkkkvioosuit122y11DgAAAAAAAAAAAAAAdcR1110XW221VfTt2zcWL16cOgcAAAAAap2JEyfGypUrI8uy1CkAAAB1RqFQiCzLjCwDALWOkWUAAAAAAAAAgHXk3XffjUMOOST22muvGDp0aOocAAAAAAAAAAAAAADqkBYtWkRVVVW8+uqrcdppp6XOAQAAAIBap1QqRbNmzaJLly6pUwAAAOqULMuiVCpFuVxOnQIAsIqRZQAAAAAAAACAdaBcLscRRxwRy5Yti/vuuy8qKytTJwEAAAAAAAAAAAAAUMd06dIlrr/++rjtttviN7/5TeocAAAAAKhV8jyPHj16ROPGjVOnAAAA1CnFYjHmzp0b06ZNS50CALCKkWUAAAAAAAAAgHXguuuuiz/84Q9x7733xmabbZY6BwAAAAAAAAAAAACAOuroo4+OH/3oR3H00UfH9OnTU+cAAAAAQK2R53lkWZY6AwAAoM4pFosR8e/nKgCA2sLIMgAAAAAAAADAWjZ+/PgYMmRInHHGGbH//vunzgEAAAAAAAAAAAAAoA4rFApx++23R9u2baN///6xfPny1EkAAAAAkNycOXPi1VdfNbIMAADwJbRr1y46deoUpVIpdQoAwCpGlgEAAAAAAAAA1qL58+dH3759o1u3bnH55ZenzgEAAAAAAAAAAAAAoB5o06ZNjB49OsaPHx/nn39+6hwAAAAASO7DIbBisZi4BAAAoG4qFouR53nqDACAVYwsAwAAAAAAAACsJeVyOY4//vh45513YvTo0dGkSZPUSQAAAAAAAAAAAAAA1BM777xzXHbZZXHllVfGo48+mjoHAAAAAJLK8zzatGkTnTp1Sp0CAABQJ2VZFhMnTozly5enTgEAiAgjywAAAAAAAAAAa829994bo0aNittuu81/hAcAAAAAAAAAAAAAwFp35plnxr777huHHnpo/Otf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oMatt956UVVVFZMmTYpzzjkndQ4AAAAAfESpVIptt9022rVrlzoFAACgQciyLKZNmxZz5sxJnQIANDBGlgEAAAAAAACABqdcLsexxx4b77//fowePToaN26cOgkAAAAAAAAAAAAAAJLo3bt3/PznP49rrrkm/vCHP6TOAQAAAIDV5HkexWIxdQYAAECD8eEz2Lhx4xKXAAANjZFlAAAAAAAAAKDBueuuu+LXv/513HHHHbHVVlulzgEAAAAAAAAAAAAAgKROPfXU2H///ePwww+Pt956K3UOAAAAAERExLJly2LixImRZVnqFAAAgAajU6dO0aZNm8jzPHUKANDAGFkGAAAAAAAAABqUKVOmxCmnnBLHHHNM/OhHP0qdAwAAAAAAAAAAAAAAyVVUVMQ999wTjRs3jkMOOSRWrlyZOgkAAAAAYvLkybF06VIjywAAADWooqIiisVilEql1CkAQANjZBkAAAAAAAAAaDAWL14cffv2ja233jquvfba1DkAAAAAAAAAAAAAAFBrbLTRRjFy5Mh44okn4uc//3nqHAAAAACIPM+jUaNG0b1799QpAAAADUqxWIxnn302yuVy6hQAoAExsgwAAAAAAAAANBinnXZavPbaa1FVVRUtWrRInQMAAAAAAAAAAAAAALXKN77xjTj33HPjggsuiCeffDJ1DgAAAAANXJ7n0bVr12jevHnqFAAAgAYly7KYNWtWzJw5M3UKANCAGFkGAAAAAAAAABqE3/zmN3HbbbfF9ddfHzvuuGPqHAAAAAAAAAAAAAAAqJUuuOCC2HnnnWPAgAExZ86c1DkAAAAANGClUimyLEudAQAA0OB8+CxWKpUSlwAADYmRZQAAAAAAAACg3ps+fXocffTR8eMf/zgGDx6cOgcAAAAAAAAAAAAAAGqtRo0axahRo2LhwoVx1FFHRblcTp0EAAAAQAO0YMGCmDJlipFlAACABNq3bx8dOnSIPM9TpwAADYiRZQAAAAAAAACgXlu+fHn0798/2rZtG7fffnsUCoXUSQAAAAAAAAAAAAAAUKttscUWcffdd8dDDz0Uv/rVr1LnAAAAANAATZgwIcrlchSLxdQpAAAADVKxWDSyDADUKCPLAAAAAAAAAEC9dv7558f48eNjzJgxsf7666fOAQAAAAAAAAAAAACAOuHAAw+Mk046KU4//fR47rnnUucA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K+JPf/1bjHzgwfjdn8fGkqVLP3JNsXu3OO7QgTXSsza9/OprsXLlylWve3Tp8pmf6dFlx1XHK1asiKmvTY+u23Vea00TJ0+Jh//853h71jtRXV0dG7RtG5232Tp2LfaODdu1W2vfAwAAAAAAAAAAAAAAAAAAAABrS58+feKSSy6JSZMmRY8ePSIiIs/zKBQK0atXr9WuPeuss+LJJ5+MsWPHRuvWrVPkAgAAUEPOOOOMePzxx6Nfv34xbty42GqrrVadKxaL8cADD6x2/dixY+PrX/96NG/evKZTAYBayMgyAAAAAAAAUGddcePNq0aRD/r2t+LWKy+Ptuuv/5HrlixZGn95+un43WNjP/Y+019/I44+6+xV9+q2ww4x4oZrY/ttO626plwux7Cq38TJ518Qy5Yti5dffTWOOevsuP+O21Zd065Nm7jhkgsjIuKvf39m1chyp606rnr/41x87fWrRpa//Y294men/eRz/zNYW8a/8ELcd/+DUfXw7+Ld9+Z85HynjltG/wO/H/0P/F5s+x8/pPZx5sydGxdec91a7dugbZu44PRT1+ge/3jttdVeb7H5Zp/5mf97zdRXX12rI8s/Pu6Ej32/srIyDtxv3zj/tFNix69+da19HwAAAAAAAAAAAAAAAAAAAACsqZ133jmaN28eY8eOXW1kebvttov11ltv1XWjRo2Ka6+9Nq6//vrYY489UuUCAABQQyorK2PUqFFRLBbjoIMOiqeeeipatGgRERFZlsUvf/nLePfdd2OjjTaKFStWxBNPPBFDhgxJXA0A1BZGlgEAAAAAAIA666nS+IiIaNq0Sdx1zVXRqmXLj72uWbOm8e29vxHf3vsbH3v+kutviAULF0ZExJYdNo9HR4+Idm3arHZNoVCII/v9OJo0aRyDTjszIiIefvSxeDIvxW5ZcS39iWrWzLffjlEP/leMfOChePGVVz5yfqMN2sXB3/lODPjB92Pnnj0+933nL1gYtwwfsTZTY8sOm6/xyPJ7789ddbxe61bRvFmzz/xMi+bNo3WrVqv+/zFn7txP/8BasnLlyrj/D4/Ef499PG6+/JI47OAf1sj3AgAAAAAAAAAAAAAAAAAAAMBnadq0aey+++7x2GOPxZln/vt3sZRKpciybNU1kyZNisGDB8chhxwSJ598cqpUAAAAali7du3igQceiF122SWO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RERERERERERERERERETUZFz/ntrsETvh79W1seMQUTNQosnDxaTfkJS5F/mKOJRqC2EyGSCVOsNVFggv93YI8u6DNiFj4eFSdREoo1GP1JzDSMk+iKyCsyhQJKBUWwjABJmjF7zdI9DCfwg6t7oHMkcvi5m+XB8otJ+engkAyCmMQUziSqTkHIaqJAMA4O0eiQ7hd6Jzq7kQi6VmY2QVRCE64Wdk5p+FQp0KqUQGH48O6NTybrQPm17j/LHX1mH36WcBAB3C78Ttvb+E0WRAXMomXEr+E/nFcSjR5ELm6Alfj05oHz4TEaFTLC56/cu23lCoUwEA9485AXeXsBr7G416XEndgqsZO5FVEAW1JhdGox5yJx8EeHVHm5BxiGgxpVLhqKoo1GmIvbYWKTmHUKCIh0ZXDJhMcHRwhas8CN7ukQj26Yc2IePgIvO3ON7NpuLP3M05FA+MPWX1saqSLPyyrReMJj0cpW54eEI0pBK5nZIS0a0quyAa6/69g9+lIaql638j39FlO7xduzR2HCKiZikx+zecSFgAAGjpNxP9237RuIGIiOiWl688j53nx/BvZKJauv438vatXdCls2tjxyEiuqn99mc2FryYAACYOd0PXyxq28iJiIjoZnQ+RokxE8/z7+NmTmq5CxEREREREREREREREREREREREREREREREREREREREREREREREREREdHNLyF9O3afehYaXWGlfVpdMfJ1xchXxCEh7W+cjf8eD407W6mfQp2GtXtuR6k2v8o5VKWZUJVmIiX7AE5eWoKRPRchosWUWuU8fflrHLnwIUwmg9njWQVnkVVwFokZOzFhwHJIJU4wmgzYH/U/nE9cYdZXbyhBWs4RpOUcwbWMXbij7zdWFScuO4dsbDv+KNJzj93weBZUpVlIyvoX5xNXYHz/ZZA7+dTq3KqTnnscu08vQKEyodI+ZUkalCVpSEj/G6cuLcG4/svg7d6u2rFiElfhQPSb0BtKKu0r1RagVFuA3KJYxKVsxOWUDZh52xabnMOt4nLKRhhNegBAq6DbWWCZiIiIiIiIiIiIiIiIiIiIiIgsYpFlIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiuuVlFURh27GHheKwUokcgd494e7cAhKxI7R6JQpV15BXdLHK4rzX6fRqocCyo4M7fNwj4e7cAg5SVxhNOijUacjMPw2dXgWdXontJ+ZBLJaibcgEq3KeT1yJwzHvAQB8PTrC16MTxCIJMvPPIF8RBwBIztqLA+dex4ien2Lf2VcQc3UVRBDD37s7vN3awWQyIj33OIrVyQCAuNRN8PXshN6RT1mc32jU4++jDyAz/zREECPIty88XVtDr1cjPe8ElCXpAID03GPYeHAmZgzbAkcHV6vOrTrxaX9jx4n5MBg1AACJ2AkB3j3g4RIGscgBxapkpOedgMGoQb4iDn/sm4g7h/8FL7e2lcZKSNuGf8++KGw7St0Q6NMbrvIgiEVSaHXFKFAmIq/4EoxGbb1y36oy8k4KbT/PrgCAQkUizl9diWuZe6BUpwEiEVxkAQjy6YPIFtMQFjCsseISEREREREREREREREREREREVETwCLLREREREREREREREREREREREREREREREREREREREREREREREREREREdMs7efELocBym5DxGNnzM8gcPSv10xtKkZp9CIkZO6scRyqRoWubB9E+bAb8vbpBLJJUOUZU/I84euEjmEwG/HvmRYQHDIeD1MVizgPn3oCzzB9j+n6HUL9BZvvOxH2HQ+ffBgDEXlsLL7e2iLm6Cl5u7TCm71L4eXYS+hpNBhyKfhtR8T+Unf+lJejW5iE4SJ1rnP9K2l8wGrXw9eiEMX2Xwtu9nbDPZDIhOuFnHIh+EyaTAblFsTgc8y6G9/jY4nlVJ784DrtOPiUUWO7e9hH0af8c5E7eZv1UJVn49+xLuJqxAxpdIbYdfwyzR+6sdP2PX1wktLu2eRCDOr9e5Tlr9SokZe5BdkF0nbNfl5l/BpeS/qj3OBUF+vRC+7AZNh3TVrIKzgptN+cQRCf8goPRb8NgLDXrV6hMRKEyEReTfkN4wHCM7vtdlc85IiIiIiIiIiIiIiIiIiIiIiK6+bHIMhEREREREREREREREREREREREREREREREREREREREREREREREREREd3y0vNOAAAkYifc3vtLOFZT8FgqkaFl0Ci0DBpV5X53lxa4rfsHNc4llcjQO/IpAMCRmPdRqi3ApeT16NL6XiuSijB1yO/wcW9faU/PiMeRlLUXKdkHYDTpcTD6LcidfDF96AY4y/zM+opFEgzu+haSMv9FgTIeOr0SVzN3ISJ0co2zG41auMgCMGXIb3B28jVPJhKhW9uHAAD7z70GADifuBI9282Hh2u4FedW2f5zr0NnUAMABnZ+TbhuN3KRB2D8gJ+x8eBMpOUcQW7RBcSn/WV2Plq9CrlFFwAArvIQDOv2PkQiUZXjOUpd0C50EtqFTqpT7oryi+MQnfhLvcepSGdQNckiyyaTEcqSDGE7Ie1vxKVuAgBIxDKE+A2AmzwEpboCpOUcRak2HwCQlLUXf+6fjDuH/1Ptc4+IiIiIiIiIiIiIiIiIiIiIiG5e4sYOQERERERERERERERERERERERERERERERERERERERERERERERERERERNTYtDoFAEAqkTdYkdeO4bOFdnL2fquO6dJ6bpUFlq+LaDHFbLtP5DOVCixfJxZJ0C50orCdlX/Wqgz9Or5UqcByRV3bPFghowkXrq22atwb5RbFIiX7AADA2z0SvSKeqLG/WCTBwE7/E7YvJ68323/9ZwwAMkevagssU92VXWOTsH29wHIL/2G4f8xxTBm8FiN7LcL4/svw4Lgz6NFuntA3v/gyDpx7vYETExERERERERERERERERERERFRUyBt7ABEREREREREREREREREREREREREREREREREREREREREREREREREREREjc3NOQRFqmvQ6ApxOXkDIsOm1XtMo1GPrIIo5BZdgKokE1q9Ckajrsq+OYUxVo3ZNmRCjft93TuY9w+tub+3R3nB5mJVisX5JWKnSoWcbyQSidA+bCYOx7wLAEjNOWxx3KpczdgttCNCp0AkEls8JtC7FxwkztAZ1EjPPWG2T+7kA6lEDr2hBHnFF5GWcxQhfgPqlK02OracjY4tZ1vueBPQ6lWVHvP16IiJA1dCKnEye1wqkWFI14XQ6VWIuboKAHAx6Xf0af8sPFzCGyQvERERERERERERERERERERERE1DSyyTERERERERERERERERERkZ/fNnIH7Zs5o7BhEREREREREREREREREREREREREREREREREVIN2oZNx6vISAMCOk08gLnUT2oVORgu/wXCRB9RqLL2hFKfjvsH5hOVQa3KsOqZUk29VPx/39jXud3L0FNqODu5wlQfV2F/m4CW0tXqFFfNHwlHqYrFfkE9voZ1TGAOTyQSRSGTxuIoy808J7fTc49h39tVaHa/RFUKnV8Hhv7wSsQPaBI/F5ZQNMJkM2HjwTrQNnYC2IRMQ4jsAcifvWo1Pld1YSBkABnR6pcrHK+6/mPQ7DEYNTCYDrqRuQe/Ip+wZk4iIiIiIqM5a+89Ca/9ZjR2DiIiIiIiIqNmYNcMfs2b4N3YMIiIiagZYZJmIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIhueX3aP4O03KPIyDsBwISrGTtxNWMnAMDdOQzBvv3Qwn8oWgePgZODW7XjaHTF2HTwTmQVRNVqfq1eaVU/Rwf3GveLRRKhXVNOob+4vL/RqLPY38051GIfAHCVBwttg1EDrV5pVZ6KVCWZQjs5ex+Ss/fV6ngAKNUWCUWWAWBI17eRXXgeBYorMJp0iEvZiLiUjQBE8HJrixDf/ggLGIaWgaMglchqPd+tzkHqarYtlcgRHjCixmPkTj4I9u2HlOwDAICMvJN2y0dERERERERERERERERERERERE0TiywTERERERERERERERERERERERERERERERERERERERERERERERERERHRLc9B6oxpQ9cjOuEXRCf8jCLVNWFfsToZxcnJuJT8B6QSObq2vh/9O70EqUReaZz9Uf8TCiyLxY7oEHYnWgaNgo9bBJxl/pBKZBCLy5eD/HJ94H8tk1U5RSJRLc6qNn2tI5U6W9XP4YZ+ujoUWdboFLXqXxWTSW+27Szzw6wR23E27jvEXP0VqtLrhZxNKFBcQYHiCmKuroKTgyd6RsxHr8gnzApXU82kEic4SJyhM6gBAJ6urc3u9+p4u0UIRZaVFYprExERERERERERERERERERERHRrYFFlomIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIgASMQO6NHuUfRo9yjyii8hLeco0nOPIy3vOFQlGQAAvaEEZ658h7S845g+dL1ZoWVlSSYuJa8HAIhEEkwZvBahfoOqnc8WRYQbml6vtqqf7oZ+DlLXWs/lIHUR2qP7fofIFlNrPUZVHKUu6NfxBfTtsAA5heeRmnMU6XnHkZ57HKXafACARleIoxc+QFb+GYwf8Esti1uby8w/g0tJf9gk+3WBPr3QPmyGTce0FS/3dsguOAfA/GdYE0eH8vtDp1faJRcRERERERERERERERERERERETVdLLJMREREREREREREREREREREREREREREREREREREREREREREREREREREdAMf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4btZX+Pq5SvYvPMfva4jB1++gi0bNhok92eC2rXFuEkTDTomUHh8jxo8FFevBAMArK2tsWXXDnTq0lnvsW+GhuLWjZvC9sSXp+g9Zll8fH1Vtp+9r0REREREREREREREREREREREREREVDlYWoowfZovpk/zRcS9HFy8nIkrwZm4HCxGfHw+ACA3V46lK+JwOViM7Zsbw9bGXOgfn5CPnbsL7xE1Nwc2rm2Eju3LXo9ILJYa9wUZQW6uXKu4nBzVOAd78zIiy2avVKj5rz/qY9gQD53HKHVce3N89EF1fPheNdy+ky28z1euipGaWviepGfI8PNvkbgeKsaqZQF63bsdcl2MHbuSDJL7M61bOWLkcE+DjklERERERERERERERERE9DxhkWUiIiIiIiIDa1yvLhrXq4s3xo4GANwIj8CSLduxZtceAMCVW7exdOt2zHh5stDn1JVgKBQKAEDfTh3UFlgGgMi4eCNlbzxR8QlaxhW9NmsrKzja26uJLp2Xu5vQTkhO0bm/JiKRCK0bN0Lrxo3wwZSJkMvluHTjFhau3YC9J08BAPadPI1dx05gRJ9e5Z4n/PFjLN263UBZF8rKzanwIsuAavFsextbNZHac3UqWjhdLpcjLVOsdZHlmxH3cDPivrA9ecggg+REREREREREREREREREVJpGTZqgUZMmmP7WmwAKC8Qu+2sJ1v29GgBw9fIVLF+8BB/M/Ejoc/rESeE6cp9+fdUWWAaAqKdPjZS98URHRWkVFxVZFGdtbQ3HchRZ9vLyFtoJCdpdv9aFSCRCqzat0apNa7w340PI5XJcvngJi+b/jv179gIADuzdhz07dmLYqJHlniciLBzLFy8xVNoAgKysLIMXWZZIJBg3bCQunD0HoLDo+IbtW9Gjd/mvoSvbtG6D0Pb28UGffn0NMm5pihcDtyvHfQxERERERERERERERERERERERERERFQxAhrYIaCBHaZO9gEA3L6bjTVr47F5WyIA4HpoFtauS8Cbr/sJfc5fyMB/t26jRzdXtQWWASA6Js84yRtRTKx2OSvHWVuZwcFB9yLLnh6WQjsxKV/n/pqIRGZo3swBzZs54I3X/CCXK3AtRIylK2Jx+N80AMCRo2k4cCgVgwa4l3ue+w9zsWa9Ye89z86Rs8gyEREREREREREREREREZEaIlMnQERERERE9Lxr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IiIiIiIiIiIiIiIiIiIiIiIiIiIi/bDIMhERERERERERERERERERERERERERERERERERERERERERERERkYmFPlooFFiu5T0QXZrMg7WlS4k4qUyCuNTzeJp4pNRxzM1t0LjGNNTzHQkP5xYQmZmXOsadpytw9cEvUChkOHf3U1Tz6AlLCzuNeV4K/wa2Vl7o0WIJ/Nw6qjx388lSXIn4DgAQEbMFzvb1EB69AS729dGj+RK4OzURYuUKGa5EfIfbT1f89/oXoUnNV2Fhrj6Hx/EHIFfkw82xCXo2XwIXh/rCcwqFAncjV+NSxDdQKGRIzbqL4Hs/oFPjnzW+rrKkZd3D6VvvCwWWm9R4Da3qzoCNlZtKXE5eAs7d+QyRSUeQJ03HiRtvYliHIyX2f8jD+UK7cY1paNtgVqmvuUCajajkE0jOvFnu3J9JTA/Bg9h/9B5HmadLa9T3G2XQMY3leOhrpT5uZmaOWl790brex3B1CKjgrIiIiIiIiIiIiIiIiIiIiIiIiIiIiEgZiywTERERERERERERERERERERERERERERERERERERERERERERERGZWHzaFQCAucga3Zr+AUsL+1LjLMxtUN2zF6p79ir1eUfb6ujY6Ee1c1mY26BFnfcAAMH35yKvIA0P4v5Bo+pTtMjUDAOCtpValLZ5rTcRnXwSsSlnoFBIcTliNmysPDAwaCdsrT1UYkVm5mgb8C2ikk8gI/shCmRZiEw6hjo+Q9TOLlfkw87aG/0Dt8DWSnVMMzMzNKk5DQBwMXwWACAsah2a1XoLTnY1tXhtJV0M/xpSWQ4AIKj+l8J+K87O2hu9W63CoeAxiEu7gFTxHTxJOKDyegqk2UgV3wEA2Nv4oUPDH2BmZlbqeJYW9qjjMxh1fAaXK29l6dn3cTdqtd7jKKsvy64yRZbLolDI8DhhPyKTjqFT41/QwH+MqVMiIiIiIiIiIiIiIiIiIiIiIiIiIiJ6YYlMnQAREREREREREREREREREREREREREREREREREREREREREREREdGLrkCaBQCwENmWWWDZ0Br4jxfaMSlntOrTsNqkUgssP1PXZ5jKdss675cosPyMyMwcdbyLihAnZVzXKofW9T4pUWBZWeMar8DVoeF/WwpERG/UatziUsR3EfvffnF1CEDz2u+ojReZmSOwwRfC9oPYHSrP50vF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ZGHbUN9U6f0MDEyFQoWZkhS158oLs4qDWcXBrOJgVnEwqziYVRy6lJWIiDTvmxWVNB2BiIiIiIiIiIiIiIiIiIiIiJTAIstEREREREREREREREREREREREREREREREREREREREREREREWsrI0ALlnbrgRehhAMDz0IP5Fll+HnpQ2HZ36Qs9Pf1Cx09ICUJk/H0kpAQiIysREmk6IJMJP09MfQ0AkEGKmMRHcLZrqsrdUavgyHPCdmWXvkrt41rqEwS82QUACI/1UqnIsqt9c3zaObTY+2sTiTRN2NbXN1J6PwN945wxJKlqzZQfZhUHs4qDWcXBrOJgVnEwqzh0KSsRERERERERERERERERERERERERKYdFlomIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIi0WGWXAUKR5Reh/6Bx1cW5CihnZqUgKOKU0K7iOqDAMd9EXca9Z98jMuG+0jnSMmKUDy2ytIwYxKe8AADoQR8PAtcqtV9yekjOdlpIAT0/Lgb6psK2VJqp9H4SaUbOGAZmas2UH2YVB7OKg1nFwaziYFZxMKs4dCkrERERERERERERERERERERERERESmHRZaJiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiItJibQ2uYGTshNSMCKemhCIm5BrdSrRT6vIr4F1mSFACAvVUt2FvVyHe8+4G/4u6z74ucIzMrqcj7iCUlPULYlkGKx8FbizxGema8OiPpNEMDC2E7S5qm9H4SSU5fIwNztWbKD7OKg1nFwaziYFZxMKs4mFUcupSViIiIiIiIiIiIiIiIiIiIiIiIiJTDIstEREREREREREREREREREREREREREREREREREREREREREREWkxfzwDuLn3gF7QRAPA85GCuIsvPQw4K25VdB+Q7Vkj0NYUCy062nqjqOggONh6wNHWFkaElDPRNhJ9f9p2JZyH7AAAyyNRyf9QhIytB5TGksiw1JPkwmBrbCduZWYnIkqTB0MC0wH2yJCnIlOQU3jYxsiugt/owqziYVRzMKg5mFQezioNZxaFLWYmIiIiIiIiIiIiIiIiIiIiIiIhIOSyyTERERERERERERERERERERERERERERERERERERERERERERKTlKrsOEIosvwo/gRY1v4ehgRkAICU9AiEx1wAAenoGqOzSN99xHrxcK2xXcxuGlrV+gp6eXr79M7IS1RG/yGQyaYE/NzKwELYN9E0wtuMrkRPlFp8ciEdBm9U6prVFRdQuP0GtYyrDxtxdoZ2U9ga2FpUL3Ccp9a1Cu7D+6sKs4mBWcTCrOJhVHMwqDmYVhy5lJSIiIiIiIiIiIiIiIiIiIiIiIiLlsMgyERERERERERERERERERERERERERERERERERERERERERERkZZzsK4DO8tqiE16gkxJEoIiTsPdpQ8A4EXoYchkEgCAq31LmJuUznMMqUyC0JibAAA96KNR1QUFFlgGsgvWqYO+Xs6lbmSyrEL7Z2QlFPhzMxNHYVsiTUd6ZhxMjGyLna84ktPD8Dh4q1rHdLZrppEiy7aWlaGnZyCso+gEv0ILD0Yl+ArbenoGsLFwL6C3+jCrOJhVHMwqDmYVB7OKg1nFoUtZiYiIiIiIiIiIiIiIiIiIiIiIiEg5+poOQERERERERERERERERERERERERERERERERERERERERERERESFq+zSX9h+HnIgz+3KrgPy3T89IxZSWQYAwNTYAWbGDgXOl54Zh5hE/+LGVWBkaClsp2XGFto/tpB5zU2cYGnqJrTDY+8UPxzBQN8EpW0bCe3QmBuF7hMWe1PYLm3bGAb6xqJkex+zioNZxcGs4mBWcTCrOJhVHLqUlYiIiIiIiIiIiIiIiIiIiIiIiIiUY6jpAERERES6TiaT4VlQEO76Pca9R9n/Hjx5itS0dABAOVcXPD15tESy3PB5gF3HjuO6932EREQCAFydHNGiQT2M6NkDzet7lEiO/MQnJuHibS9cvnMPD548xYvXrxGbkAgjQ0PY2VjDo1pVdGjWFMN7doO1pWXhA6rgRfAb7DxyDKeuXseb8HAkpaTC2aEU6latisHdOqNvh3bQ19cXNUNh4hOT4P3YH/cePYb3Y3/cffQYr0NChZ9vXPEVRvXuKXqOuIRE7Dl+AofPX0Dg6zeIjI2Fo50dKpUrg77t22F4z+6wsRL391WYh0+e4sItL9x68BCPXwQiNDIKqelpsLG0RFlnZzT1qIuhPbqiSd06ouaQSCQ4fO4C9p08g4dPnyIsKhqW5mYo6+yMzi2bY1SfnqhUpoyoGVSxevsuzP/lV4Xb0h6odkGBhKQk1O87GG8jIoTbFk2egCVTJqo0bn64XpX3sa7Xql17KTyXKuPBP/tRrWKFIu2jDK5X5enien38/AUOnDmHczdu4W14BCJjY2FrZQWnUvaoXrECWnk2RLsmjVG5fDm1z63trwnlaTqrLrwmJCIiIiIiIiIi7SORSHDk4CHs/3sv/B76Iiw0FBaWlihbriw6de2CEWNGo2KlSqJmuHn9Bvbs2Ikb164h9G0IAMDFzRXNW7bEsFEj0axFc1HnLwpNZw188QK7t+/A6RMn8Sb4DZKTkuDs4oLadetg0NAh6N2/n8bfB4yPj8f9e964d/cufO7eg/fde3gdFCT8/PctmzFizCjRc8TFxeHvXbtx5NBhBD5/gajISDg4OqJSZXf07tcXQ0eOgI2Njeg5CuL74AEunr+A2zduwv/xY4SFhCI1NRXWNjYoW64smjRrhsHDh6Fx0yai5tCG54HCyGQyPHv6FN537sL77j3cu3sXvvcfIDU1FQBQrnx5PAp8VqyxExMTsePPrTh36gwe+fkhOioKFpaWcCvjhrYdOmDYyOGoXbeuOu9OLuFhYdi1fQeOHzmK16+CEB8XB6fSpVGtenX0GzQQA4cOhqmpqagZlKXprGlpadi3528c3n8ATwICEBEeDhtbW5SvWAHde/XEiNGjUNrZWbT5C7Jr2w5MGf9psffP7/kx6NUr1HavWqSxnEqXxouQ4GJnKYgunIve0XRWXTgXZWRkwPfBQ/j899zqffcunvgHQCKRAACGjRqJDVu3FHnc0JAQ3LuTPZ7P3ezXBbExMcLP/V48RfkKFdR1N/Kl6TWgDL52IiIiIiIiIiIiAtxd+uHOs+8AyPAm+jJSM6KQlhGD6EQ/AIChgTkqOHXLfwC9nM0saSpkMhn09PTy7R4QvAsyWZZasluZ5fwtTXSCX6H9X4QdKbRPWceO8A/eBgB4HLwN5Zw6FjtfcbjaN8ennYv2N2varLxTF4TF3gYABIYdRdPqy2FoYJZn3yxJKgLDjgntCqULWHciYFZxMKs4mFUczCoOZhUHs4pDl7ISEWkTiUSGf09G48ixKDz2T0FERAbMLQzg5mqCdm1sMXigE8qX047vYTKrOJhVHMwqDmYVB7OKg1nFoUtZiYiIiIiIiIiIiIiISHV6MplMpukQRERElDdvb280bNgQN//eifo1qms6DuXh3qPH6DpxKhKSkvPtUxJFlpNTUjH7h5+w/Z+C5xnbrzd+nvcFzM1K9gtAKalpGDV/Ec5cv4mMzMxC+1tbWuDHL2ZjTN9eouRZs2sPlvy2Hmnp6fn2aVqvLrZ9uxIV3FxFyVCYkV8uwoHTZ1HQy/WSKLJ8/tZtTFyyQqFA7vvcSjth88plaNvEU9Qsedl38gyWrl2Pl2/eKtW/Y/Om+GPZEriVdlJ7lsA3bzBu4Ve49cA33z6mJib4ZuZ0TBs+RO3zqyrwzRs06j8UKWlpCrerWmR5+srvsPnAIYXbxCqyzPWqvI95vWpLkWWuV+Xp2nqNiY/HotVrsO3w0QLP4wDQrJ4HLm7frLa5tf01oTxtyKoLrwlJeT7+AWg2ZCTu3buHBg0aaDoOERERERERkVZ493nz1Tu3Ua9BfU3H+WC8DAzEp6PGwOvmrXz7mJqaYsX332LKjOlqnz85ORlzZ36OnVu3Fdhv9Phx+HH1LzA3N1d7BmVpQ9Z1v/6GZQsXI+29zxTkNWneDFt2bi+RooV5GTtsBA7u21/ge8olUSjw4rnzmDzuU4S8zf+zAbcyZbBh6xa0btdW1Cx5OfD3XqxYshQvAwOV6t+hUyes27wBrm5uas+i6ecBZXjfvYeeHTsjISEh3z7FLbJ85NBhzJg0RaHw5/v09fUx/fNZWPbNShgZGRV5jsLs/+tvzJ7+GeLi4vLtU71mDWzZuR1169VT+/xFoemsD3x8MG7EKDwNeJJvHzs7O6xatwb9Bw9S+/yFUbXI8qF/j6Fjl865btemIsu6cC56R9NZtf1cBAAb1q3Hwi/mISMjI98+xSmyXKVMeYSFFvxdhpIosqzpNaAMvnai+94++MSzCT8bJiIiIiIiIiKd9O5z/D7NTsPBuq7K4/17ZwBCY64DAJpV/xop6eF48HINAKCy6wC0qbMm331lMil2XqiBjKzsz5O6NdoP11It8+wbm/QER251RZYkVbitVe3VqOo2OFffe89/gs+LnwEA9d3noGHlL3L1SUmPxJ5LHgBkAPTQv8VF2FlWy3PuoIjTOOszRmhbmpbBkNa5/4YsISUI+6+1FApBt6j5PWqUHZ3nmO9Ly4iGsZEt9PUMlOqvazafdhG2lS0EnZYRjb1XmyEzKxEAUK/STDSqMj/PvneefiusO2NDGwz65CZMje1UTK08ZmVWZmVWZmVWZmVWTWeNSniIf2525meYREX07v/Ip47VQZ3alpqO89EJep2GGZ8/wz3vpHz7mJroYeGX5TF+rEu+fUoCs4qDWcXBrOJgVnEwqziYVRy6lPVj5uuXhC49ffn/YyIiIiIiIiIiIiIiUgtDTQcgIiIi0mVJKakFFlguCRKJBCPmLcTJq9eE2yqWcUPjurUBAF4P/YQCiVsPHUFUbBz2/vIj9PX1SyxjSloajl+6onCbg50tGtaqCWcHB0ilUvi/CMS9x/6QyWRISErG5GUr8To0FF9NnaTWLP/bsg1LflsntG2trNCmcSNYW1ri8fMXuPvoMQDg1v2H6DpxKq7s3ApH+5L74513wqKiCi3MKLar97zRd/rnQmFsI0NDtGncCG6lS+NNWDgu3bmDrCwJ3oZHoM/0WTi5cT2a1/co0Yw3fO4rFADV19eHR7WqcC9bBjZWVoiMicV1Hx9Ex8UDAM7euIU2o8fj3J8bUd5VfV+CC4+ORtcJ0xAUEiLc5lm7Fmq4V0JCUhIued1FXGIi0tLTMefHn5GZlYVZo0eobX51mLr8m1wFa1V15e49bDl4WK1j5ofrVXlcrzmG9+wOKyUKNthaW6k8lzyuV+Xp2noNiYhElwlT8PRVkHBbxTJuqFe9GuxtbJCemYHXIWHwffoMsQUUNSgOXXhNqE1ZdeU1IRERERERERERaZeI8HD07NgFQa9eCbc1auyJ6jVrIiE+HlcuXkJcXBzS0tIwb9ZsZGZm4rPZn6ttfolEgtFDhuP0iRPCbRUrVYJnk8YAgDu3vYQCtNu3/ImoyEjsObhfY+8Dajrrzz/8iGULFwttW1tbtGrbBtY2NvB/9Aj37twFANy+cRM9O3bB+RtX4ejoqLb5lRUWFqbxz4avXbmKAT17CwUjjYyM0LptW7iWccPb4De4fPEisrKy8PbNG/Tv0QvHzp5GsxbNSzTjzes3FAos6+vro249D1Ryd4eNrS0iIyJw49p1xERHAwDOnTmDDi1b49Sl8yhXvrzacmj6eUBZyUlJBRZYLq6tm7bgs8lThLahoSGaNG8G98qVkZGejrt37uD502eQSqX47edfEBkRgY3b/lRrhv1//Y3xI0cLjxtzc3O0btcWDo6OeBkYiOtXrkImkyHgsT96dOyC89evoErVohXb/VCyPgkIQM+OXRAbGwsA0NPTQ4tWn6BipUqIiozEpfMXkJqaitjYWIwdPhIGBgboM6C/2uZXRrUa1TFx6pTCO/7nzMlTePXyJQCgtLMz2nZoX+g+VlZWGDqy8M8QrdT8uTCgO+cibciqC+ciAIiOiiqwwHJxFVZguSRoeg0oi6+diIiIiIiIiIiIclRxzSmy/CxkP9IyooSfVXYZUOC+enr6KOvYHi9Cs//+74rfLLTz2AAn24YK/YIjz+Oy3yxkSVJhaGCOLEmKyrnNTRzhWuoThERfASDDhQeT0bnBTlialRH6yGRSPH27Fzf8F8JA3wQSaXqBY1qbl0cD989x7/n/AADXH89HbNIz1Ks0E+Ymud/LlMmkCI/zwvPQw3j2dh9GtPWDvqGFyvftQ2FqXAp1K0zFvec/AAAeBK6BqbEDapUbBz297M/1ZTIpHr3+Ew9f5vx9jkelGQUWKQyJuYETd3I+j+rmeRCu9qq9f8qszMqszMqszMqszCpWViKiD1VkZAYGD3+M4Dc5/9eu72GJqlXNkJgowfUb8YhPkCAtXYavVrxCZpYMkye4MiuzMiuzMiuzMiuzMisRERERERERERERERGVGBZZJiIiIlIDO2trNKhZAw1r10SjWjXx9FUQFv+6tkTm/mnrDqFAnb6+Pn6YMxPThg0RLj4tlUqxbs/f+PLnXyGVSnHs4mWs2r4Lc8aOKpF88mysLDGsezeM6tMT9apXg56ensLPHz55ivGLl8H36TMAwLcbNqN5/Xro0KyJWua/7n0fX61ZL7SHdOuCdUsWwsLcTLjt4u07GPbFfMQmJODlm7f4dMkyHFn3q1rmLyp9fX1Ur1gBDWvVRKPaNdGwVk0MmfMl3oSFiz53fGIShs75UigAWrdaFexb9RMquOV8aezV2xAM+vwLPHzyDOkZGRgyex4eHT8EK4uS/0Pyph51MKZvH/Tt0A42VpYKP0vPyMCq7buwYv0GSKVSBIeGYcyCJbiwbVOuNVhc4xYuFQqA2tvYYPf/vkPbJp7Cz5NTUjFt5bf4+8QpAMCCVb+hWX0PNKlbRy3zq2rroSO45JV9IdQh3boIOVWRlp6Oqcu/hUwmg3u5sihlYwMvXz+Vx80L12vRcL3mWDJlosI6KQlcr0WjS+s1KSVFocBy03p18dPc2WhUu1auvlKpFF6+fngQ8ERt8+vSa0JNZ9W114RERERERERERKQ9JowaKxRWtbO3x869f6F1u7bCz5OTkzFz8lTs3fMXAGDxvPlo2rw5GjdVz+edv/z4P6Fosb6+Pr796UdMmTFd4b2139esxcIv5kEqleLfo8fw68+/4PO5X6hlfl3KeuPadSxftERoDx42FL/+sR4Wcu+1X75wESMHDUFsbCxeBgZi8pjxOPjvUbXMX1T6+vqoVqM6GjRqhIaejdCgUSOMGDgYb4KDRZ87Pj4eIwYOFooE1vGoi78OHUD5ChWEPkGvXmFovwHwffAQ6enpGD5gEB489YeVlfoLkhamcbOmGD1uHHr37wsbGxuFn6Wnp+O3n3/B10uXZ3928fo1xo8cjTOXL6rtswtNPw8UlZ2dHeo3bIgGng3RoFEjPHv6FEsXLCrWWL4PHmDOjM+Edv2GDfDn7p2oXKWKQr/D+w9gyvgJSE5Oxl87d6FRY88iFdEtyMvAQEwZP0EortmmfTts3bMLDg4OCjkH9+mP4NevERsTgxEDB+OG910YGBioJYOuZJVIJBg+YJBQYLlc+fL4+/AB1PHwEPpERUVh7LARuHT+AmQyGSaMHosGno3UWpi8MJ5NGsOzSWOl+mZkZGD/33uF9qBhQ2FoWPhX4e3s7fHzmpL/nEeXzkWazqpr5yIAKFO2LBo0aogGno3QyNMTm//YgH8OHlJpTFNTU9Sp54GGjRqhQaOGcCpdGn26dldT4oJpeg0UFV87ERERERERERERZatQujuuP14AiTQNUQkPhNvNTZzhVuqTQvevV2kWXoWfhESahqS0tzh6uyecbBrAxsIdUlkWouIfID7lBQCgrEN7mBrb41nIfrVk96yyAEdjrkMmkyA2KQD7r30CF/vmsDR1RXpWAsJj7yAlPRR6eoZoWfMHXH00R4n78zkSU9/i6ds9AIDHr7fAP3g7HKzrwMa8EgwNLZCZlYjktBBEJz5GZlaiWu7Lh8qj0gxExN1FcNR5yCDFrYAleBy0BY62DQAAkXHeSEh9JfQv59gZdSuo53NBZmVWZmVWZmVWZmXWDzkrEZGmfTb7uVCk0NbWEBvWVUXL5jnfyU1JkeDLhYE4dCQKAPD1d0HwbGSFhvVL/rsvzMqszMqszMqszMqsupSViIiIiIiIiIiIiIiI1Edf0wGIiIiIdFndalXw6NghhF49j383rMWKGVPRq10bOJWyL5H5o+Pi8PPW7UJ79piRmDFimHBhaiD7goIzRgzD7NEjhNv+t2UbYuLjSyQjABgZGuLLCePw5MRRrFowF/VrVM/zAsZ1q1XF6c2/o6yLs3Db179vUFuOxb+uFS5e26yeB/78ZrlCMT0AaNvEE9u+WyG0T1+7IRTzLEm/LfwSEdcvwvvQXmxauRSTBg9Eo9q1FH63Yvp52w5ExcYByC4ifnT9b7kKkVZwc8WRdb/BztoaABARE4NV23eVSL536tWojpMb1+PSjj8xpm+vXAVAAcDE2BjzJ4zDt7NmCLfdvP8A527eVkuGczdv4/ytnLG2f7dSoQAoAFiYm+HPb5ajab26AACZTIZFq9eoZX5VhUZGYcEv2RcTbtGgPsb07a2WcVeu34jnr18DAH5b9CVMTIzVMm5euF6Vx/WqeVyvytO19bpo9RqhwHKvtm1wdvOGPAssA9mvz5p61MWkwQPVMreuvCbUlqy69JqQiIiIiIiIiIi0x4Wz53Dh3Dmh/eeuHQqFVQHAwsICG7dvRZPmzQBkv2f51YKFapk/Ojoaq3/8SWjPmjsH02Z+luu9tWkzP8PML2YLt/3y/Y+IiYlRSwZdyrp04SLhfcCmLZpj4/atCkUCAaB1u7bYvDPn/cozp07hysVLapm/KFat/Q1vY6Pg9fA+/vhzMyZMmYyGno1K7LPh1f/7CdFR2RcSsbOzw+ETxxWKBAJA+QoVcOjfY7CzswMAREZE4LeffymRfO941K+P42dP4/y1Kxg1bkyuAssAYGJigrkLF2DlD98Jt926fgMXzp7L1bc4NP08UBS1Peri/pPHeB0VjiOnT2Dp1yvRs09vODmVLvaY3yxbgczMTACAq5sb/jl1IleBZQDoO3AAtuzaIbS/W/E1EhISij2vvK+/Wob09OyL41Ryd8fefw4pFC0GgDoeHth35BCMjIwAAI/9HmHPjpL9rE0bsu74cxue+AcAAIyNjbHvyCGFAssA4ODggL8PH0TFSpUAAGlpafh66XK1zC+GE0ePIVbuPDFi9EgNpimcLp2LNJ1VV85FADBizGi8CAmG/6sX2H1gH+Z8OQ+t27WF+XvHq6iu3b2N0PgYXLh+Ff/7dRWGjhyBylVzP8eKRdNroCj42omIiIiIiIiIiCiHsaEVyjt1yXW7u0tf6OkV/p6ZnWVVtPfYCCODd+8HyhARfw/PQvbhReghocByxdI90NbjdwC5/y64uBxt6qFV7VXQ0zMEAEikaXgTdQEBb3bhZdhRpKSHwtjQGu09NsBViYLRAKCnp4dWtX9G8xrfw8Qo+/05mSwLkfE+eB56EAHBO/Ai9DDCYm8rFFh2tGkAfX1Dtd23D4W+ngHaeWxEFdfBwm0Jqa/wIvQQXoQeUihSWNVtKNp5rC983f33XnTOHOp5b5dZmZVZmZVZmZVZmVWUrEREH6ArV+Nw5VrOdRvWra6iUKQQAMzNDfDrL5XRqGF2YUKZDPj2+6ASzQkwq1iYVRzMKg5mFQezioNZxaFLWYmIiIiIiIiIiIiIiEi9+A0/IiIiIhXYWVvDvVxZjc2/+9gJJCQlAwBsraywcOKn+fZdOGmCUCAxLjERfx0/WSIZAcDGyhLLp0+BrbVVoX3tbWzwxdhRQvv2Qz9Ex8WpnOG+/xPcvP9AaH/7+Yx8L6zYuWULtGvaWGj//tdelecvqhrulWBpbl7i8wJAVlYWNu8/JLRnjR4B5/cu9PuOi6MDZo4aLrQ37TsIiUQiesZ3xvTtlavgZn5mjBgKF8ec+3Hq6jW1ZPjj733CdvumTdCxRbM8++nr6+PbWZ8J7Wv3fOD79JlaMqhi1rc/IC4xEcZGRlj/1cI8C6AXlY9/AFbv3A0AGNajG9o3baLymPnhei0arlfN4notGl1ar4+ePcfGfQcBAK6Ojti0cimMjEru4iq68poQ0HxWXXtNSERERERERERE2mPDuvXCdrsOHdChc6c8++nr62Pl9zkFXq9fuQq/hw9Vnv+vnbuEIqW2trb4cvGifPvOX7JYKEAbFxeHvbv3qDx/UWg66wMfH9y6fkNor/z+u3zfB+zUtQvatm8vtP9Yu07l+Yuqes2asLS0LPF5gezPLrZs2CS0Z8z5HKWdnfPs6+zighmzZwntzX9sLNHPLkaNG5OroHF+ps38DM4uLkL79An1vBeu6eeBorCzs4N75cpqGy8pKQlnTp4S2p/N+Rz29vb59u/eqycaN2sKAIiKjMT+PX+rnCEqKgoH9+0X2ouWfQXzfL5XUbtuXQwblVOAd8O6kn1sa0PWjetz1uuwUSNRq06dPPtZWFhg0bKvhPb+v/5WW8F7ddu1faewXb9hA9SsXVuDaQqmS+ciTWfVpXMRAJQrXx5OpYtfsD4/HvXrw9BQMwU8NL0GioqvnYiIiIiIiIiIiBRVcR2Q67bKedyWn3JOHdG/xSXULj8BNhaVYaBvCkMDc1ibV4S7c190brAL7ettgrFh4X8fXFRVXAeif4uLqF5mBKzNKsBA3xRGhlaws6wBj0qfoV/zC6hQuluRx61ZbjSGtLqDFjV/QIXS3WFlVh5GhlbQ0zOAsaE1bC2qomLpHmhafQUGtryO3k3/hYG+idrv34fAyNAcreusRo/GR1DNbRhsLNxhZGABIwML2Fi4o5rbMPRofAStav8CQ4PC/yY6JumxsG1tVgFONo2YlVmZlVmZlVmZlVm1NisR0Ydo644wYbtVSxu0aW2bZz99fT0snl9OaN/ySsRj/2Sx4ylgVnEwqziYVRzMKg5mFQezikOXshIREREREREREREREZF6aeZKPERERESkFkcuXBK2+3fqAHMz03z7mpuZon+nDvjz4D8AgH8uXMS04UNETlg8zevXE7ZlMhleh4ahlK2tSmMeuXBR2K5Svhya1fMosP+o3j1x4ZYXAODsjVtISU0r8Ph+SK7e80FMfLzQHtmrR4H9R/bqgWVrfwcARMbG4pr3fbT2bChqxuIwMDBA4zq1hcfNq7chKo+ZnJKKczdvC+1RfXoW2L95fQ9ULlcOz1+/BgD8c/4i6lStonKO4jp87oJwPOaOH4NqFSsgLCpapTGzsrIwZdnXkEgkKGVrgx+/+FwNSfPH9ao8rlfN43pVnq6t1437D0ImkwEAJg4eIBQGLim69JpQ01n5mpCIiIiIiIiIiIojOTkZF86eE9ojxowqsH+zFs3hXqUyXjx7DgA4evgf1K5bV6UMx/45Imz3HTgg32KdAGBubo6+Awdg2+YtwvxTZkxXaf6i0HRW+fkrV62Cps2bFdh/xJhRuHj+PADg/JmzSElJKTDzh+T6lauIlSumOmJ0wWt7+OhRWLFkKYDswrk3rl7DJ21ai5qxOAwMDODZpLGwFl69fKnymNrwPKBJ9+95IzMzU2h37NK50H06d+0Cr5u3AAD/HDqE8ZMnqpThxNHjQnFKKysr9O7fr8D+I8aMxvYtfwIAHvjcR9CrVyhfoYJKGZSl6awvAwPh99BXYfyC9BnQH59Pm4HExERkZWXhxNHjha7xkhYRHo7zZ84I7eGFPF9pmi6dizSd9UM9F+kSTa8BXcL1SkRERERERERE2qisY3t82jlUpTEszcqgafUVaFpIv9Z1fkXrOr8W2Kdh5S/QsPIXSs9ta1EZLWv9r8A+VmZli3wfjQwtUKPsKNQoq92fKegKZ7vGcLZrrPI4IdHXhe36ledAX1/9lz1iVmZlVmZlVmZlVmZVV1Yiog9NSooEV67GCe3BA50K7O/ZyBoVK5ji5as0AMDJ0zGoWcNCzIgCZhUHs4qDWcXBrOJgVnEwqzh0KSsRERERERERERERERGpn76mAxARERFR8aRnZODWg4dCu5USRRdbNcrpc/P+A2TIXQBXm+jp6Sm0pVKpymNe8rorbMsfh/zI90lJS8NtuYvPfugu3ck5VlXKl4Ork2OB/d1KO6FyuXI5+3vdES2bquTXllQqU3m8Ww8fIi09XWgrtbY8Gwjb8uuypMUmJODz734EAFSrWAHzxo9Ry7i/bN+J+wFPAADfz5kFBztbtYybH65X5XG9ah7Xq/J0ab1KpVLsPXFaaA/o1KHE5gZ06zWhNmTla0IiIiIiIiIiIioOr5u3kJaWJrSVKYz2SeucPpcvXlJp/vT0dNy+cVNu7FZKzJ/T59b1G8jIyFApg7K0Iav88Zb/PeQ7v9zvMyUlBXdu3VZpfl1y+eJFYbty1SpwcXUtsL+rmxvcq1TOc39to+7PLjT9PKBpEeHhCu1y5csXuk9Zuc+5rl+5qlCkuTiuyK23xk2bwsTEpMD+jRp7KhT9vHzhkkrzF4Wms8rvb2FhgYaejQrsb2JiAs8mTYT2FS18bP+9ew+ysrIAAMbGxhg4dIiGExVMl85Fms76IZ+LdIWm14Au4XolIiIiIiIiIiIiKj6pTIKw2FsAADvL6qjs0k/DifLHrOJgVnEwqziYVRzMKg5mJSIiZd31TkRaes53aps1tS50n+Zyfa7fiBclV16YVRzMKg5mFQezioNZxcGs4tClrERERERERERERERERKR+LLJMREREpKOevHwFiUQitOvXqFboPvVrVBe2s7IkePoqSJRsqvJ9+kyhXca5tMpjBgS+FLbryR2H/Lg6OaJ0KXuh7f8iUOUMusL/ec59VeZYAYrrT5uPle+z58K2OtaV/H11digFF0eHQvepXz3nmAYEau5YffnTaoRFRUNPTw9rlyyAibGxymM+exWEbzdsAQC0adwII3v1UHnMwnC9Ko/rNbf7/gFYu/svLFq1Bgt++RX/27INRy9cQlRsnFrGfx/Xq/J0ab0+fhGIuMREAIC1pQXcy5WFRCLB7mMn0GPyDFTs0BXWjZqjfLvO6DBuIn7cshUx8er7ArYuvSbUhqx8TUhERERERERERMXh//ixsF3a2RnOLi6F7lOvfn1hO+Cxv0rzPw0IUHhvzaNB/QJ65+6TlZWFZ0+eqJRBWdqQ9Ync8Zb/PeTHxdUVTqVz3tuW/31/6Pwf5dxXZY7V+/3k99c2j3z9hO0yZcuoPJ6mnwd0XWZmJp4/farSGPK/A48G9Qrtb2hoiJp1aue5v9g0nTVAbv+adWrD0NCw0H3kc2rj8+CeHTuF7a49usPe3r6A3oqysrJw4ew5/PzDj1jwxTwsW7QYa1atxpWLl5CamipGXJ06F2k664d8LtIVml4DuoTrlYiIiIiIiIiIiHTd5tMuwr8d5wv/ux51ik7wRUZW9t9UNaw8D3p62nvJI2YVB7OKg1nFwaziYFZxMCsRESnr6bOc78s5ORqhtFPh126pXdsiZ//n4nzfLi/MKg5mFQezioNZxcGs4mBWcehSViIiIiIiIiIiIiIiIlK/wq+aRURERERa6f0Cc2WdnQvd5/0+T16+Qu0qldWaSx22HT4qbNepWgWlS5VSabyI6BjEJiQI7fKuhR8rIPt4hUfHAACevHqlUgZd8jQoZ22Vd1HyWMn1e/LylbojqcXVe9548TpYaHdo1kTlMeUfh+WUuIg2oHisouPiERkTC0d7O5WzFMX5W7ex48gxAMDoPr3wScMGKo8pk8kwefk3SEtPh6mJCdYtWajymMrgelUe12tuQ+Z8meftBgYG6N2uDRZPnoCald3VNh/Xq/J0ab3e8X0kbJcpXRpvIyIwYu4C3Hrgq9AvPDoG4dExuHbPBz9v3YE1ixZgUNdOKs+vS68JNZ2VrwmJiIiIiIiIiKi4nj3JKQxatnw5pfYpU66ssB0THY3IyEg4OjqqPD8AlC1XeIb3+zwNeIJadeoUa/6i0HTWyIgIxMbG5oyt5O+rbLmyiAgPF+b/WDx7qtraflpCxbuL6tqVq3jx/LnQbtexg8pjavp5QNMc3sv9OigIVasVfNH14NevFdpPA56gRq1axc4g/zsoV668UvuULVsWd297CfOXFE1nVZxf2efBnH7a9jx439tHoXD68NGjirR/yNu36N2lW54/s7KywuhPx2PuwvlFKtxcEF06F2lD1g/1XKQrtGEN6BKuVyIiIiIiIiIiIqLiC4m+BgBwtK6HCqW7ajhNwZhVHMwqDmYVB7OKg1nFwaxERKSsF4E5hQbd3EyU2sfNNadfbGwWoqMzUaqUkdqzvY9ZxcGs4mBWcTCrOJhVHMwqDl3KSkREREREREREREREROrHIstEREREOiomPl7Ytra0gJmpaaH7mJuZwsrCAonJyf+NkVDIHiXvyPmLuHznrtCeMnSQymPKHysAcLJXrmhzaYecftp4rMQSE5dzvJyULHAtXwhbvnihtpBIJJj3v1VCu4KbK7q2aqnyuIrHSrmL7cqvKwCITYgv0aK1KalpmLbiWwCAk709vpv9mVrG3bT/IK57+wAAFkwcD3e5C4SKietVeVyvypNIJDh09jxOXLmGNYvnY2SvHmoZl+tVebq0Xt/8d+Hod3pPnYlHz18AACqXKwfPOrVgbGSEgMCX8PL1g0wmQ3xiEkYvWIyUtDSM6dtLpfl16TWhprPyNSERERERERERERVXTHS0sO3k5KTUPqWdnRXasTExxS6uGhMdI2xbW1vDzMys0H3Mzc1hZWWFxMTE/+aPLWQP9dB01mi53xUAOJVW7vflVLq0sB0bE1NAzw+L/O9L/hgURH5tl9S6KgqJRIIFc74Q2hUqVkSX7nkXVy0KTT8PaFqdeh7Q19eHVCoFAJw9dbrQIsunT55SaEdHF/+xlZqaitTUnAvkOCr52FZYr7El89jWhqwxMXLrVcnHtny/lJQUpKenw8REuQsRiW339h3CdmlnZ3Ts0lltYycmJmLtqtX458BB7D6wDw0aNVR5TF06F2lD1g/xXKRLtGEN6BKuVyIiIiIiIiIiItJFNcuOzfN2A4PCP89XJ49K0+FRaXqJzllczCoOZhUHs4qDWcXBrOJgViIiUlZsbJaw7eigXLFBJ0fFfrFxWSVSqJBZxcGs4mBWcTCrOJhVHMwqDl3KSkREREREREREREREROrHIstEREREOiopJeeCrGZFuKipmYmJUKQuOSVF7blU8SY8HJ99873QrlutCkb37qnyuEnv3U8zU+WOl/xx1bZjJSb546Xs2pI/pvJrU1ssX78BPv4BQvvbzz+DsZHqX3pLSi364/D9fiV9vJauXY9Xb0MAAP+bNxt21tYqj/kmPByLVq8FANR0r4TZo0eqPKayuF6Vx/WazcjQED3atEK31p+gUa2aqODmCnNTU8QnJeF+wBPsP3UWu4/9i8ysLKSlp2PS0pWwsbREr3ZtVJ6b61V5urRe4/8r+gEAj18EAgBMTUzw+9JFGNq9q0Lfe48eY9gXCxAUEgKZTIbPv/8RLep7oEqF8sWeX5deE2o6K18TEhERERERERFRcSUlJQvbyhQNBgBTM1OFdrLcGEWePzlJblzlL3JsamYmFC6WH0NMms76/nFWNoP87zUpqWSOlTZIlruvZqZKHiu5fslaeKy+XroM9719hPbK77+FsbGxyuNq+nlA0+zs7NCi1Se4eukyAOC3n1dh6MgRsLe3z7P/v0ePwevmLYXbkpIS8+yrjPcfl8X5HZTUetWGrPIZ3l+H+Xk/Z1JSklYUWc7MzMT+v/cK7UHDhsLQULmvv1tbW6PPgP7o1KUzanvUhbOLC4yMjBAZEYE7t27jz42bcfH8eQDAm+Bg9OveExduXEUld3eVMuvSuUgbsn6I5yJdog1rQJdwvRIREREREREREZEual7zW01HICIiIiIiIi2QnCIRtk1N9ZXa5/1+KXJjiIlZxcGs4mBWcTCrOJhVHMwqDl3KSkREREREREREREREROqn3CdERERERKR10tLThW2jIhQzNDbO6ZsqN4ampaWnY8jn8xAeHQMAMDc1xY7vv4GBgYHqY2dkKLSNjJS72Kr8hZa16ViJTf54Kbu2jI2091gdOnseP27eKrRH9e6Jfh3bq2Xs4jwO5R+DAJCaVnLHy+uhH9btyb74cKcWzTC4a2e1jDtj5fdITE6Gnp4e1n21UOnHmDpwvSqP6zXblZ1/4sCvP2Ncvz6oW60qrC0tYWhoiFK2tmjftAn+WLYY57duQilbGwCAVCrFtBXfCgVeVcH1qjxdWq95FXPesHxJrgLLANCwVk2c2LAW5qbZF7NPTUvH//7crtL8uvSaUNNZ+ZqQiIiIiIiIiIiKKz09TdhWtljr+4UpU1Nzv5eo9PxpRZ///QxpKsxfFJrOmiY3f1EyKMz/3hgfMvn7aqTksTKWO1aqrGsx/HPgIH767gehPWLMaPQZ0F8tY2v6eUAbfLloobAd8vYt+nTphufPnuXq98+Bg/h05Ohct6vy2E5Xx2M7tWQe29qQNV3uc7LirteSOm8U5uTxfxEdFSW0R4weqdR+zi4ueBL8Cus2bUDv/v3gXrkyLCwsYGxsDLcyZdBnQH8cPXMSv/6+Hnp6egCA6KgozJk+U+XMunQu0oasH9q5SNdowxrQJVyvRERERERERERERERERERERKSr0tOlwraRkZ5S+xgbK16uNi1Nmk9P9WJWcTCrOJhVHMwqDmYVB7OKQ5eyEhERERERERERERERkfqxyDIRERGRjjKVu/heZmam0vtlZOT0NXvvAqmaIpFIMPLLRbj76DEAQF9fHxuWL0H1ShXVMr7pexc0zMzMUmq/DLlCfNpyrEqC/PFSdm1lZGrnsbrm7YPxi5cK7Ua1amLV/LlqG784j0P5xyAAmJmWzPHKzMzClOVfQyqVwtzUFL8tmq+WcfeePI2TV68BACYM7Idm9TzUMq6yuF6Vx/WarZStbaF9Gtetje3ffyO0I2NjsfXQEZXn5npVni6t1/dfZzSoWaPAouDu5cpi4qCcgg6Hzp6HRCIp/vw69JpQ01n5mpCIiIiIiIiIiIrLxMRU2JZ/v6gg6enpCm0zM7Piz29a9Pnfz2CqwvxFoemspnLzFyWDwvzvjfEhk7+vmUoeqwy5Y6XKula361evYeKYcUK7oWcj/PTbarWNr+nnAW3Qul1bfD7vC6Htc88bnrU90LVdB0yfOBkTR49F/Rq1MHLwUCQlJaH5Jy1RysFB6G9pZVXsuU3U8dg2K5nHtjZkNZH7nKy467WkzhuF2b19h7Bdv2ED1KxdW6n9TExMYGlpWWi/cRM/xZz584T2uTNn8MDHp+hB5ejSuUgbsn5I5yJdpA1rQJdwvRIRERERERERERERERERERGRrjIxybn0bGamTKl9MjIUCxOampbM5WuZVRzMKg5mFQezioNZxcGs4tClrERERERERERERERERKR+/KSHiIiISEdZmudccC/1vQudFkS+r4W5uVozFYdMJsPEpStx7OJl4bZfF36JgV06qW0Oy/fuZ2qacsdL245VSZE/XsquLfljKr82NcnHPwD9P5stZKtV2R1H1v8KCzXmszQr+uPw/X4ldbx+2LIVj56/AAAsnjIRFdxcVR4zKjYOX/zwMwDA1dERKz+brvKYRcX1qryPfb0WVYdmTdC8fj2hferadZXH5HpVni6tV0sLxdcIvdu3LXSfXu1y+iSlpODh02fFn1+HXhNqOitfExIRERERERERUXFZWloI26mpqUrtk5aaptC2kBujyPNb5BSJTFNy/vf7yo8hJk1nff84K5tB/veqTFHOD4WF3H1NTVPyWMn1s9CSY3Xf2weDe/cVfo81a9fCwX+PwcKi+I+792n6eUBbrPjuWyz/7hsYGxsDALKysnDt8hVs3/In/tq1G8//+8yjQ6dO+OvQAYXCkjY2NsWe9/3HZXF+ByW1XrUhq3yG99dhft7PqQ3PhZGRkTh76rTQHj56lCjzzJn/pULh0zMnT6k0ni6di7Qh64dyLtJV2rAGdAnXKxERERERERERERERERERERHpKgtzA2E7LU1aQM8c7/czlxtDTMwqDmYVB7OKg1nFwaziYFZx6FJWIiIiIiIiIiIiIiIiUj8WWSYiIiLSUfZyF59NSEpGmhKF6lJS05CYnCw3hrUo2Ypi5rc/YPexf4X2D3NmYcLAfmqdw/69C/VGxEQrtV94VE4/bThWJcXeNud4RUQreazk+tlZa/5YPX7+Aj2nzEB8YhIAoHK5cvh3w1qUsrVV6zyKxypGqX3k1xUA2FkX/0LSynr2Kgg/bt4KAPCoVhWfjRiqlnEX/PIrImNjAQA/z/8CNlYlfyFQrlflfezrtTjaNW0sbAe8eKnyeFyvytOV9QoApWwV56lRqWKh+9RwV+wTEh5R7Pl16TWhprPyNSERERERERERERWXfalSwnZEhHLv54WHhSm07eztVZg/Z9+EhASkpRVeMDMlJQWJiYly89sVe/6i0HTWUnK/KwCIUPL914jwcLn5i/+70jXyvy/5Y1AQ+bVdUuuqIP6PHqFP1+6Ij48HALhXqYyjp0/mWguq0vTzgDaZPW8uHjz1xxcLvkSjxp6wL1UKRkZGcHVzQ5fu3bBr3984fPI4zM3NkZSUJOxXpmzZYs9pZmamUAQ3UsnHtsJ6tSuZ468NWe3t5darko9t+X7m5uYwMTFRKYM67NvzFzIzMwEAxsbGGDh0iCjzWFpaolETuc+GH/urNJ4unYu0IeuHcC7SZdqwBnQJ1ysRERERERERERERERERERER6So7O0NhOzIqU6l9IiIV+9nZGubTU72YVRzMKg5mFQezioNZxcGs4tClrERERERERERERERERKR+/KSHiIiISEdVrVBeof06NBRVK1QocJ/g9y7gW61iwf3F9uVPq7Bx30GhvXTaZMwcNVzt8ziVsoedtTViExIAAEEhYYXskU3+eFUr5Nh+SKqWL4+AwOxiokGhSh4ruX6aXlfPg16j26RpiIqNAwCUd3XFyU3r4OzgoPa55B+Hr0NDldpH/ljZ29jAsQQunukf+BIZ/114ODYxEe3GTMi3b4JcIUsAaDVirLA9sEtHzBgxTGg/ePIEAGBgYIBV23Zi1badBWZ4Z9uhIzh7/abQPrFxHSzNzZW8N4q4XpX3sa/X4nB2yLmYcFRcnEpjAVyvRaEr6xUAqldULJhsYW6WT88cVu895yWmpBR7fl16TajprHxNSERERERERERExVWlWlVhOzjotVL7vHkdLGzb2dvD0dFRLfMDwOugIFStVq3AfYJfK+asWr3g/uqi6ayOTk6ws7NDbGxs9thK/r6C5X5fJXWstEGVqlXxxD8AQPHWdmG/W7E9f/YMPTt1RXRUFACgfIUKOH72NEo7O6t9Lk0/D2ibMmXLYunXK7H065X59nni7w+ZTAYA0NPTQ/1GDVWas0q1qnh4/wEA4PXrIKX2CQ7WzGNb01mrVKuKM6dO/Te/ss+DOf205Xlw9/YdwnbXHt1hL2IhV2e5543oqGiVxtKlc5E2ZNX1c5Gu04Y1oEu4XomIiIiIiIiIiIiIiIiIiIhIV7lXyrkWxtu36Urt8zYkp5+trSFKlTJSe668MKs4mFUczCoOZhUHs4qDWcWhS1mJiIiIiIiIiIiIiIhI/fQ1HYCIiIiIiqdaxQowMDAQ2vf9nxa6j89/F/gDsouivl/oriQtXfs7ft25R2jP+3QsFkwcL9p81SvlFEB8EPCk0P4hEZEIj44R2jXcK4mSSxvVqJxzX5U5VgDg45/TT5PH6uWbt+g8YQrC/rvgrZuTE05uWoeyIlxEG1C8r2FR0Qj77+LdBfEJyHkcauJYvQ4JhZevX77/AuSKIQNQ+FlQSN6FTiUSSYFjevn6IVGuGO7biAiFn2VlSYp9f7helcf1WnQpqWnCtoVZ4YVzC8P1qjxdWq81K7srtJNTUgvd5/2iyjaWlsWeX5deE2pDVr4mJCIiIiIiIiKi4qhRs6awHR4WhvCwsEL3ue/jk7N/rZoF9Cxc1erVFd5be+hzv9B9HnjnzG9gYIAqJVTQTRuyVqtZI2fs+4XPHxoSgojwcKEt//v+0MmvTWWOFaDeta2KVy9fokeHzsLj0dXNDcfOnkKZsmVFmU/TzwO66PbNW8J2jVo1YW1trdJ48r+Dhz4PCu2flZWFx75+ee4vNk1nrS63/2NfP2RlZRW6zwPv+2qbXx18HzyA74OHQnv46FGizpcs950GcwtzlcfTpXORprPq8rnoQ6HpNaBLuF6JiIiIiIiIiIiIiIiIiIiISFdVrZJz3ZSIyExERGYUuo+fX85366pVUf26K8piVnEwqziYVRzMKg5mFQezikOXshIREREREREREREREZH6scgyERERkY4yMTZGU4+6QvvK3XuF7nP1rrew3by+B4yNjETJVpjvNm7BD5v+FNqfjRiGFTOmijpnm8aNhG2ljtW9nGNlbmqKJnXriJJLG7XxzDlWT18FITSy4MKWIRGReP76dc7+jT1Fy1aQ4LAwdJkwFW/DIwAAzg6lcGrTelQqU0a0OZvWrQtTExOhfeWOdwG9s8k/DuXXJRUP16vyuF6L7r5cAVYXRweVx+N6VZ4urdfyri5wL5dTsMH/veLfefF/odinrEvxi1Xr0mtCbcjK14RERERERERERFQcjZs1hampqdC+eulyoftcu3JF2G7dto1K85uYmKBJ82Y581++UkDvd/NfFbabtWwBY2NjlTIoSxuyyh/vq5eV+F3JZTQ3N4dn0yYqza9LWrdtK2w/e/IUYaGhBfYPDQnBi2fP89y/JL0JDkaPDp3x9s0bAEBpZ2ccP3caFStVEm1OTT8P6KKD+/YL20NHjlB5vFZy683r1i1kZBR8gZx7d+4iJSVFaLdu10blDMrSdFb5/ZOTk+FdyGci6enpuHP7ttBupaHHtrzd23cK26WdndGxS2dR53t4P6cYtourq8rj6dK5SNNZdfVc9CHR9BrQJVyvRERERERERERERERERERERKSrGjWwgqmJntC+eSuh0H1u3s7p06K5jSi58sKs4mBWcTCrOJhVHMwqDmYVhy5lJSIiIiIiIiIiIiIiIvVjkWUiIiIiHdarbWth+8Dps0hNS8u3b2paGg6eOSe0+7TTzAX7Vm3fieXr/hDakwYPwI9zPxd93l5yF5B9+ioItx/6Fth/55HjwnbH5k1hbmZaQO8PyycN68PeJueLYbuOHi+gN7DrWM7PHexs0bJBPbGi5Ss0MgpdJkxFUEiIkOPEhnWoUqG8qPNamJuhfdPGQnvn0WMF9r/14CGeBeUUTO3TvmQeh73atUHagztK/Tu9+Q+FfeV/9tO8OQo/89q3R+lxP2nUQNhv0eQJCj+ztbYq9n3jelXex75eiyo6Lg7H5S6O39pT9aK9XK/K05X1+k5fufmOXrhYaH/5PqVsbVCrsrtK8+vSa0JNZ+VrQiIiIiIiIiIiKg4LCwu07dBeaMsXfszL7Zu38PzpM6Hdq28flTP06N1L2D60bz9SU1Pz7ZuamorD+w+odf6i0HTWHr17C9vPnjyF163bBfRW/H2279QR5ubmKmfQFS1afQI7e3uhvXtHwWtb/uelHBzQ/JOWomXLT1hoKHp06IygV6+EHMfOnESVqlVFnVcbngd0ycVz53Hj6jUAgKmpKYaPHqXymF17doeBgQEAICEhAUcPHS6w/+7tO4Rtj/r1UL5CBZUzKEvTWStWqoRadWrnOX5ejh46jMTERACAoaEhuvXqodL8qsrKysK+v/4W2oOGDYWhoaFo8108dx5vgoOFdqs2rQvorRxdOhdpOqsunos+NJpeA7qE65WIiIiIiIiIiEh7SWUSBIYdxVmfsdh7pQm2nq2IXRdq4fDNTrj77AckpARpOqKAWcXBrOJgVnEwqzh0IatMJkNc8nM8CzmAm/6LcfR2T2w9WxGbT7tg82kX/H3ZU9MRc9GF4/qOLmQt6TWQkZWIPZcaCONvPu2Ce89/UuscRESkO8zNDfBJS1uhve9ARIH973onIvBlzvUguna2L6C3ejGrOJhVHMwqDmYVB7OKg1nFoUtZiYiIiIiIiIiIiIiISP1YZJmIiIhIhw3v2R3WlhYAgLjERHy/eWu+fb/duAVx/10Q1dbKCkN7dC2RjPI27N2PBb/8JrTH9O2N1Qvmlcjc9WtUR9N6dYX2wlVrIJPJ8ux79sYtnLt5S2hPHjJI9HzaxNDQEOMH9BXaq3fsQnh0dJ59w6KisHr7bqE9YWB/4ULBJSUqNg7dJk7Fi9fZF7y1s7bGiQ3rUFPFgpXKkl8f2Wsn7wuNSqVSLFy1Rmi3aFAfdapWET3fh47rtWg+9vWalJKiVD+JRIIpy75BQlKycNuwHt1Unp/rtWh0ab1OGDQAJsbGAIB7j/xx4PTZfPsGvnmDTfsPCe0RPbtDT09Ppfl16TWhprPyNSERERERERERERXXpGlThe1zZ87gwtlzefaTSqVYMn+B0G7+SUvUrls3z75FMXTkCFhbWwMA4uLi8L9vv8u37w9ff4O4uDgAgK2tLQYPH6by/EWh6az1GtRHk+bNhPaS+QvyfR/w/JmzOH825z1d+d/zx8DQ0BDjJn4qtH/7eRUiwsPz7BseFobffl4ltD+dPLHkP7uIikLPTl3w4vlzAICdnR2OnTmJGrVqlcj8mn4e0BWvg4IwbcIkoT3/q8VwdHRUeVxHR0f0GzhAaH+9bHm+Rdwf+/kpFBaeOLVkH9vakFV+nN3bd8D/0aM8+6WkpOCbZSuE9sAhg2Fvr9mLCZ0+cRKRETkXQBoxemSR9k9LS0NWVpZSfSMjIzFr6nSh7ejkhPadOxVpvrzo0rlI01l17Vz0IdL0GtAlXK9ERERERERERETaKSElCMe9+uDCg0kIijiFxNTXkEjTkJYZg+gEX9wPXI2D19vAL2izpqMyK7MyK7My60ecNTL+PnZcqIYD1z7BZd8ZePR6CyLi7kIiTSt8Zw3RheOqS1k1sQa8nqxESnqoaOMTEZHuGTvKWdi+dCUeV67G5dlPKpXhm++ChHYTTyvUrGEhdjwFzCoOZhUHs4qDWcXBrOJgVnHoUlYiIiIiIiIiIiIiIiJSLxZZJiIiItJCVbv2gqmHJ0w9PPHpkmX59nOws8XsMaOE9v+2bMO63X9DKpUKt0mlUqzb/Td+3ppzQda548fA3sYm33Ev37knzG/q4YnLd+6pdocA7DhyDLO++5/QHtajG9Z/tVDlooKfLlkm5KzatVeBfb+ZOUOY77q3D8YvXobkFMWL2F7yuosxCxYL7c4tm6NtE88Cx5U/Vit/31jMeyK+HUeOKWR99TYk375fjB0NBztbAEB0XDx6T52JoBDFP54KCglFn2mzEBMfDwBwsrfH7DEFX9i24/hJwvwdx08qsK8y4hIS0WPydPgHvgQA2FhZ4vgfa1C3WlWVxn31NkThWO04cizfvh2bN0W7po2F9uj5i3I9ZpJTUvHpkuW44XMfAKCnp4dvP59RYIaVv29UyPCx4XpVHter8ur3G4yFq37Dg4An+fbxffoMXSZOxdGLl4TbhnTrAs86+V+cn+tVeR/qei3v6oIZw4cI7QlfLce+k2dy9fPxD0D3SdOR/N9F9B3sbPF5Ab/bD/E1oVhZteE1IRERERERERERfdjad+qItu3bC+2xw0fi6qXLCn2Sk5Mxeex43Lx2HUD2e5Yrv8+/wDAA1KpUBVYGxrAyMMaksePz7efg4IBZc+cI7Z+//xG/r1mb672139esxaoffxJumz1/XoHFMq9euizMb2VgnOs+FYdYWSeNHS/krFWpSoEZVnz3rfA+4I2r1zBpzDgkJycr9Lly8RLGjch5v7JTly5o3a5tgePKH6tvl68osK8m7dq2QyFr0KtX+fb9fN5clHJwAADEREejX/eeeB0UpNDndVAQ+vfohdiYGADZRUhnfjEn11jyurbrIMzftV0H1e4Qsgt29+nSDQGP/QEANjY2+OfUCdTx8FBp3KBXrxSO1a5tO/LtK9bzwLfLVyhk0GYL536Jfw4czLNgsFQqxZGDh9DxkzYIfv0aAODZtAlmzpld4JhFuf9LVi6HiYkJAODFs+cY0qc/oqOjFfr4PXyIQb37ISMjAwBQs3YtDC+kSK+yz8VFIUbWojxnjxo3BlWrVwMApKenY2CvvvB7+FChT3R0NIb2HSAULjc1NcXiFcsKvF9FeS4uLvmi0/UbNkDN2rWLtP/TgADUr14La1f/irdv3uTZRyaT4eTxf9GmSXMEvngh3P7VyhWwtLTMd+wP9VwkRtYP8Vykaz7U9SoGbVivREREREREREREVDwp6ZE4cXcgIuLuCrc52tRHVbchqODUDcaG2X+LIpGm4VbAEjx89YemojKrSJhVHMwqDmYVh65kzZSkIDMrUSNzF4euHFdAd7KW9BoIjbmBgDe7Smw+IiLSDa1b2eKTFjnXbZg68xlu3IpX6JOSIsGsL57D6272eUtPD1i0oHyB4/68OhhuFW8K/5iVWZmVWZmVWZmVWbU5KxEREREREREREREREWk/Q00HICIiItJ1k5d9De/HjxVui4lPELZDIyLReNCwXPt9NXUSerRprfL8c8eNxq0HD3Hq6nVIpVLM+fFnrPtrLxrXyb7AqJevHwKDcy4Y2qNNK3w+eoTK8xaF37PnmLL8G8hkMgCAqYkJLMzMMPv7nwrZM9uwHt3QuG7RLpialxYN6mHFjKlY8ts6AMCe4ydw8so1tGncCFYWFggIfAkvXz+hfwU3V2xasVTleYvj3qPHmLL861y3h0ZECtsr1m/A2t1/KfzcxdERR9b9qvL8NlaW2PPT9+gxeQYyMjNxP+AJavfsh7ZNPOHq5IS34eG45HUXmVlZAAATY2P89fMPsLKwUHnuopi28lvclyuWWtPdHTuPHMfOI8cL3dfe1gZfTVW9ECkA/PnNcrQaOQ6vQ0IRHRePzp9ORuM6tVG9UkUkJifjktddxCbkPC98+/kMNKlbRy1zE9drUX3M6zUhKQm/bNuJX7bthJO9PepUrYLSDqVgYWaGuMRE+D59hoD/igq/06yeB35fukhtGbhei0aX1uvSaVNwP+Apzt28hdS0dIyavwgrf98Azzq1YWxkhIDAQNx+6Ce8HjIxNsb277+G838XX1aVLrwm1JasuvSakIiIiIiIiIiItMumHVvRrvkneB0UhJjoaHRr3xGNmjRG9Ro1kJiQgCsXLyE2Nlbov/KH79C4aRO1zT/7y3m4deMWzpw8CalUinmzZuOPNevg2aQxAODObS+FQpHdevYotLipWDSdtXnLFlj6zUosW7gYAPDXrt049e8JtGrbBlbW1gjw98fd215C/woVK+KPrZvVNn9ReN+9h+kTc7+vHhoSImx/s2w51v/2m8LPXVxccfDfoyrPb2Njg137/kbvLt2QkZGBBz73Ua9aTbRp1w4ubq4IefMWly9eRGZmJgDAxMQEu/bvhZWVlcpzF8Vnk6bggc99oV2jdi3s3r5DoRhrfuxL2WPRMvW8z6vp54GimDZhEnzu3VO4LTYmJ1toSAiaN2iUa79Fy5aie6+eeY558/p1rPllFczNzeHRoD4qVKwIExMTREZEwOvWbURGRAh9G3o2wqF/j8HQUH1fVa5YqRJ+37IJ40eOhkwmw4Vz51CzgjvatG8HB0dHvAwMxLXLV4TPY+zs7bFr/14YGBioLYOuZDU0NMTuA/vQsWVrxMXFIejVKzRv4ImWrVuhYqVKiIqMxKXzF5CSkgIguyD4hq1bUK68Zi8mFB0djdMnTgrt4aNHFdA7f69evsSCOXOx8It5qFCxImrUqgn7UqVgZGSEyIgI3PW6g7DQUIV9pn8+C2M+HadSfnm6dC7SdFZdORe9k9dz55vXwcL2yWPH8+xz8PhRuLi65jnmlj82YsvGjQq3vSvA/k7/Hr1gbKxYjL5bzx5YvHyZstHzpek1UBR87URERERERERERETyLvtOR1Jq9nu0JkZ2aO+xEa6lWgo/z8xKwbXHc/Ei9BAAwOvJCjjbesLJtiGzMiuzMiuzMmuJZwUAE0NbONjUhYNNPTha10N88gvcefaNRrIURJeOqy5lBUpmDWRJ0nD10VwAMlibV4SJkR0i473VOgcREemu31ZVRs++fnjzNh2xsVkYOPQx6tezRNUqZkhMlODGzXjExUuE/ovnl0fD+pr57guzMiuzMiuzMiuzMqsuZSUiIiIiIiIiIiIiIiL1YZFlIiIiIhW9CA7GwyfP8v15ZlZWnj+XL8SsCgMDA+z+8TvM+u5H7DyaXfgwMPiNQmG6d0b36YVV8+dCX1+/wDHfXcA1Z46C+xcmOi4eEknOl4/S0tOxaf9BpfdvUKuGWoosA8Dc8WNgYmyMr9asR1p6OmITEnD43IVc/ZrWq4ut36yAUyn7AsfLdawKObbKSkpJLXBdAcCbsHC8CQtXuC0uMUkt8wNAq0YNcXjtKkxYvBwhkZHIzMrCmes3c/Vzc3LC5q+XoUWDeoWOKX+81HGsImJiFNo37z/AzfsPlNq3nKuL2oqAOjs44NSm9Ri74CvcfugLILtApHyBRiC7wPjXM6dh+vChhY4pf6wKe8wS12tRcL1mi4iJwflbt/P9uYmxMaYPG4Kl0yfD2MhIrXNzvSpPl9arkZEh9v7yI+b8+DO2HT4CAHgW9BrPgl7n6lvO1QXbv1uJZvU81Da/LrwmFDNrUan7NSEREREREREREX0cSjs74/i50xg/cjTu/Pce893bXgoF5wDA1NQUy7/7BlM/m6HW+Q0MDLBj7x7MmTFTKCwb+OKFQrHid0aOHYOffltd5PcB9dVU3FOMrEU158t5MDExwfJFS5CWlobY2FgcOXQ4V78mzZth845tcHRyKnC83O+ZqudYJSclwffBwwL7vAkOxpvgYIXb4uPi1TI/ALRs3QoHjh3BpLHjERoSgszMTJw9fTpXP1c3N2zc9ieat2xR6JgKn12o4VhFRkYqtG9dv4Fb128otW+58uXVVmRZjOcBsT67CHzxosC1lZmZmefP5Qsx5yclJQU3r13HzWvXc/3MwMAAk6ZNxZKVy2FpaVm00EoYOHQIZDIZ5syYibi4OKSkpODEseO5+lWrUR1/7tqBKlWrFjqmutermFmLonqNGjh29jTGjxyFpwFPIJPJcPXSZVy9dFmhn62tLVavX4t+gwYWOqZYx+qd/X/9LRSWNTY2xsChQ1QaTyaT4WVgIF4GBubbp5SDA7776UcMHTlCpbnyoivnIjGyFpUunIveKey8HRsbi9jY3M+l7xdNlhceHlbouE/8A3LdVsdDfZ8568p6/VBfOxEREREREREREVHRvYm6jLfRV4R227rrFAoqAoCRoTna1FmDxNRgRMTdASCD19Ov0aNx7vc/mZVZmZVZmZVZxVTKqiYGtrwBG4uKCrc/fbu3RHMoQ5eOqy5lLck14P38JySkZH9XokXN7+HzYrXa5yAiIt3l5GiMfXtqYvqsZ/D2yb5Wlc/9JPjcV7xulamJHhZ8WR6fjnUpdEz5rwqp8yvhzMqszMqszMqszMqsYmQlIiIiIiIiIiIiIiIi7cciy0REREQfAAtzM2xauRRj+/XBzqPHcN37PkIisi8w7OrkiBYN6mFkr55oXl+5iyr6Pcsp7lupbBk0rVtHlNya8tnIYejephW2/3MUp69eR3BYOJJTU1HaoRQ8qlXF4K6d0bdDO6Uu7Oj7NOdYGRoaYFCXTmJGL3HtmzaB96G92H3sXxw6dwGBwcGIjotHKVsbuJcri77t22FErx6wsSr8wsgymQyPn+dctHZo965iRi9xlcqUwYVtm3Do7HnsO3UGD548RXhUNCzMzFDWuTQ6f9ICo/v0gnvZMkqN5/f0ubD9oR0rsXC9Ku9jXa+39+7G7Ye+uP3AF/cDniAyJgYx8fGIT0qCuakp7G1sUKdqFbRsUB/DenSDo72daFm4XpWnS+vVwtwMfyxbjPH9+2L3sX9x+c5dhEZGITU9HQ62tvCoXhXd27TCyF491F68+938uvKaUN1Zi0OdrwmJiIiIiIiIiOjjUbFSJZy9cgn/HDiI/X/vhe+DhwgPC4O5hQXKliuLTl27YOTYMajk7i7K/BYWFvjjz80YPX4cdm/fgRvXriH0bQgAwMXNFc1btsTw0aPQrEVzpcbz8/UVtiu5u6NJs6Zam7U4ps+aiW49e2Dn1m04c/IUgl8HIyU5GaWdnVHHoy4GDR2C3v37KfU+oN/DnGJ+hoaG6D94kGi5NaFth/bw8r2Pv3buwj8HDyHw+QvEREfDvlQpuFepjN79+mLYqJGwsbEpdCyZTIbHfo+E9uBhw8SMXuLU/Tzg9zDncTh4uHYfqw1bt+DC2XO4fOEinj19iojwCCQnJaGUgwPKlCuLTl06o//gQWovFvy+QcOGolXbNti5bTtOHD2GVy9fISE+Ho5OTqheowb6DhyAwcOHwtTUtNCxYmNj8fbNG6E9RM2/A3VmLY56Derj+r072Lv7LxzefwAB/v6IjIiAja0tylcoj+69e2HkmNEo7eys1HiPfOXX61C1592zY6ew3bVHd9jb2xd5jNp16+KG9x143bwNr9u38cTfH9FR0YiJjkZKSgqsrK3hVNoJDRo2RLuOHdB34ACYmJio824o0KVzkTqzFgfPRZqnS+tV09S5XomIiIiIiIiIiKh4Hr/eKmy7lWqFMg5t8+ynp6ePxlUX47hXbwBAWOwtRCc+RimrmiWSE2BWsTCrOJhVHMwqDl3KamJkCxMj2xKbTxW6dFx1KWtJrYGohIfwDfoDAFDZdQDcSrVikWUiIsqlfDlT/LO/No6fjMaRo1F49DgFkZEZMDM3gJurMdq1scOQQU6oUF657zb6ByQL2/36ODIrszIrszIrszIrs2p1ViIiIiIiIiIiIiIiItJ+ejKZTKbpEERERJQ3b29vNGzYEDf/3on6NaprOg59RAbMnIPjl64AAP78ZjmG9eim4UTa67edezDvp1UAgDF9e+OPZYs1nEh73fd/gqZDRgAAqlYoD59De1m0MB9SqRRurTsiNiEBRoaGeHjkACqWcdN0rI8K16vyuF41j+tVeVyvRcPXhKRLfPwD0GzISNy7dw8NGjTQdBwiIiIiIiIirfDu8+ard26jXoP6mo5DWmpwn344cew4AGDT9q0YMmK4hhNpr7Wrf8WCOXMBAKPGjcW6TRs0nEh7PfDxQctGTQAAVapVxR3fB/zsIh9SqRQVnFwQGxsLIyMjePv7oULFipqO9VE5evgfDB+QXfizTft2OHbmlIYTaa+YmBhUcHKBTCaDnb09/F48hbW1taZjfVR4LlIez0Wax/VKYrnv7YNPPJvws2EiIiIiIiIi0knvPsfv0+w0HKzrajqOTsvMSsGui7UgkaYBANrWXQ93l74F7rPvagskpAQCAOq7z0HDyl+InhNgVrEwqziYVRzMKg5dylqQp2/34orfLACApWkZDGl9R6N5dOm46lLWgqhzDUilWThyqyuiE/1gYmSHgS2vwtS4FI579UNY7E0A2nO/PyRRCQ/xz83O/AyTqIje/R/51LE6qFPbUtNxSAVSqQx1GtxBXLwERkZ6uHK+HsqV1c4Ch8wqDmYVB7OKg1nFwaziYFbSNb5+SejS05f/PyYiIiIiIiIiIiIiIrXQ13QAIiIiItIuEokE1+75AABqVXbHkG5dNJxIu13yyv4DJRNjYyya/KmG02i3d8cKAL6aOokXLi3A/YAniE1IAACM7debBUA1gOtVeVyvmsf1qjyuV+XxNSEREREREREREdGHTyKR4MbVawCAmrVrYdCwoRpOpN0uX7gIADAxMcGCrxZrOI12u3zxkrC9eNlSfnZRgAc+9xEbGwsAGD1+HAssa8AVufW69OuVmguiA65evASZTAYA+HzeFyywrAE8FymP5yLN43olIiIiIiIiIiIiMUXE3xUKKgKAi33zQvdxsW8mbIfGXBMlV16YVRzMKg5mFQezikOXsuoSXTquupS1pDx8tR7RiX4AgCbVlsHUuJSGExER0cfA71Ey4uIlAIChg520uqAis4qDWcXBrOJgVnEwqziYlYiIiIiIiIiIiIiIiD5mLLJMRERERAp8/AMQl5gIAFg6bTL09fmSMT8SiQTXvLOLD04Y2A9lnZ01nEi7XbpzFwBQr3o19O/UQcNptNslr+xjZWZqggUTWbxbE7helcf1qnlcr8rjelUeXxMSERERERERERF9+O57+yAuLg4AsHj5Mr4PWAD5gtTjJ01EmbJlNZxIu12+cAkA4FG/HvoOHKDZMFru8sXsApRmZmb4cvFCDaf5OL37HXTv1RONGntqOI12e1e01tnFBZOnT9NsmI8Qz0VFw3ORZnG9EhERERERERERkdhik54I22bGTjA3KV3oPg7WdeT2fypKrrwwqziYVRzMKg5mFYcuZdUlunRcdSlrSYhPfgGfF6sAAK72LVHVbZCGExER0cfi+o14AICpqT5mzSij4TQFY1ZxMKs4mFUczCoOZhUHsxIREREREREREREREdHHjFdFJCIiIiIF74oPNqpVE73atdFsGC1375E/EpKSYWFmhnnjx2o6jlbLysrCde/7AIBl06dAT09Ps4G03CWvOwCAKUMGwcXRQcNpPj5cr0XD9apZXK9Fw/WqPL4mJCIiIiIiIiIi+vC9Kyza0LMRevbpreE02s377j0kJCTAwsICXyz4UtNxtFpWVhZuXssuqrhkxXJ+dlGIK/8VAZ04bQqcXVw0G+YjFBEejoDH/tDX18dXK5drOo7We3femLdoAczMzDSc5uPDc5HyeC7SPK5XIiIiIiIiIiIiElt88gth29JMuYINlqY5/dIzY5GaEaX2XHlhVnEwqziYVRzMKg5dyqpLdOm46lJWsclkMlx9NAcSaRoM9E3RouaPmo5EREQfkes3EwAAY0c5o7STsYbTFIxZxcGs4mBWcTCrOJhVHMxKREREREREREREREREHzNDTQcgIiIiIu3yxbjR+GLcaE3H0AmN69ZG2oM7mo6hEwwNDRF545KmY+iMo+t/03SEjxrXa9FwvWoW12vRcL0qj68JiYiIiIiIiIiIPnyz583F7HlzNR1DJ3g2aYxESYamY+gEQ0NDhMRFazqGzjh04pimI3zUnEqX5mO7CO498tV0hI8az0XK47lI87heiYiIiIiIiIiISGxpmbHCtpmxo1L7mJko9kvPjIOZsYNac+WFWcXBrOJgVnEwqzh0Kasu0aXjqktZxeYfvANhsbcBAPXdZ8HGoqKGExER0cdk17Yamo6gNGYVB7OKg1nFwaziYFZxMCsRERERERERERERERF9zPQ1HYCIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIqDBZWcnCtqGBqVL7GOgr9pMfQ0zMKg5mFQezioNZxaFLWXWJLh1XXcoqpuS0ENx5+jUAwM6yGupWmKrhREREREREREREREREREREREREREREqmGRZSIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiLSehJpurCtr2+k1D4G+iYK7Sxpmloz5YdZxcGs4mBWcTCrOHQpqy7RpeOqS1nFdO3xl8iUJAHQQ8ua/1P6WBARERERERERERERERERERERERERaSsWWSYiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIirSdfIFEqzVRqH/lCjABgqG+q1kz5YVZxMKs4mFUczCoOXcqqS3TpuOpSVrG8CD2M4MhzAIAaZUehtJ2nhhMREREREREREREREREREREREREREamORZaJiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiISOsZGloI21mSNKX2kUgV+8mPISZmFQezioNZxcGs4tClrLpEl46rLmUVQ1pGNG4GLAEAmJs4w7PKQg0nIiIiIiIiIiIiIiIiIiIiIiIiIiJSDxZZJiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiKtZ2pkJ2ynZkQqtU9qumI/EyNbdUbKF7OKg1nFwaziYFZx6FJWXaJLx1WXsorh9pOVSMuIBgA0q74SxkbWGk5ERERERERERERERERERERERERERKQehpoOQERERERERERERERERERERERERERERERERERERERERERERERUGBsLd2E7KfWNUvskpeX0MzGyg5mxg9pz5YVZxcGs4mBWcTCrOHQpqy7RpeOqS1nFEJ3oBwDQ0zPAw1e/4+Gr3/PtG5f0VNh+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YdvMzAxl9VSozxCylq9UMevYt/Me/21gIEKUPm+vWKmSTuMbk4qVs35XTc4VANy+lfV8Ke8vNbmzKs+L4KAgBAcF6XV8Y2II64Cm7O3t4VO8uNCOj4vXaD/lwsqOTpp9P5cbrlmak3sd0MXLFy/QpU17Ye3wLlIE+48dRtFixTQ+hiG8toxpvsqd1Zjnq77xGktEREREREREREREREREREREpKpc2axChSGhKQgJTc5zn/v3s/4GsrzS/lJjVmkwqzSYVRrMKg1mlQazSsOYshIREREREREREREREZH4WGSZiIiISI+CQrOKNLpmK56prdI+xVDMy1Non712I899zl2/KWy3qFdHp/GNTXOl3/fsdQ3O1Y2sc1Xc2xulihaVJFdO5M7aol5dYfvK3XtITklR2//6g4dIUCiU9pdnbt178hRdRo1FdGwcAKB8yRI4+NtKuDk7Szam8u8an5iIGw991fZPSk7G1Xv3c9xfn6Jj49Bl1Fjce/IUAGBva4u9K39GbQlvEGqsa1ZGRgbGzF+ILQcOCo8tmToJI3r3knzst6GqhX1ddbyRdou6WefwyUv/946fXWBIKJ69epW1v9LaIDW5szaoVg3WVlZC++y1m2p6ZzKE+SoWW2trlXZEdIxG+0UoFQJ3dnDQKYOxXovkYEzXIrmzGuu1iIiIiIiIiIiISApWVlao36ih0D535mye+5w/e07YbtikMSwtLSXJlp0hZG3esoXS+GfyHl8po62tLeo2qK/T+MakecuWwvbTx08Q9Pat2v5vAwPx/OmzHPeXmtxZ6zVsAGul72XOndZgbp3NmlvK87KgM4R1QBvNW2XNjUd5fB8CAKmpqSpzq5iP5kVycxy/ZQthm2uWenKvA/kV8Po1urRpjzcBAQCAwp6eOHD8CEqWKqXVcQzhtWVM81XurMY6X+XAaywRERERERERERERERERERERkao6tRxgbWUitC9dzvteIpeuZPVp3Ei3+95og1mlwazSYFZpMKs0mFUazCoNY8pKRERERERERERERERE4mORZSIiIiI9CY+KwpW794R2+VIldT5m1xbNhe2N+w6o7fs6KAinrl4T2j1afzg3TQSAbi2zztXJK9cQEBystv/GvVnns3urFlLFypHcWTs3bwozMzMAQExcPPYcP6Xx+DUqlEeJIt46Z9DWI78X6DRyDCKiMwt8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IiISU2pqvLBtbmat0T5mpqr9lI8hJWaVBrNKg1mlwazSYFZpMKs0jCkrEREREREREREREREREREREREREZEUWGSZiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiAqUtPQkYdvU1EKjfcxMrVTaqekKUTPlhlmlwazSYFZpMKs0mFUazCoNY8pKRERERERERERERERERERERERERCQFFlkmIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiogJFuehgenqKRvsoFzcEAHNTa1Ez5YZZpcGs0mBWaTCrNJhVGswqDWPKSkREREREREREREREREREREREREQkBRZZJiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIqICxdzcTthOTVNotE9aumo/5WNIiVmlwazSYFZpMKs0mFUazCoNY8pKRERERERERERERERERERERERERCQFFlkmIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiogLF2sJF2E5MDtVon8Qk1X5WFs5iRsoVs0qDWaXBrNJgVmkwqzSYVRrGlJWIiIiIiIiIiIiIiIiIiIiIiIiISAosskxEREREREREREREREREREREREREREREREREREREREREREREBYqTXWlhOy4xQKN94hRZ/awsXGBjWUj0XDlhVmkwqzSYVRrMKg1mlQazSsOYshIRERERERERERERERERERERERERSYFFlomIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIioQHGxLy9sJyaHICEpJM99wmLuKe1fTpJcOWFWaTCrNJhVGswqDWaVBrNKw5iyEhERERERERERERERERERERERERFJgUWWiYiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiKhA8XCqAzNTa6H9NuJinvsERVwWtr1cm0iSKyfMKg1mlQazSoNZpcGs0mBWaRhTViIiIiIiIiIiIiIiIiIiIiIiIiIiKZjLHYCIiIhIXzIyMvDU3x/X7z/EjQeZ/915/ASJiiQAgI+3F54c2qeXLBdv3cGm/Qdw4eZtBIaEAgC8PdzRuFYNDOzaBY1qVtdLDnUCQ0Jx48FDXH/wEDcfPMSNB76IiI4Wfv7o4F6UKOKt9XHT09Ox6+hx7Dt5Gtfu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W3fk5bf+kckzns2c+RPTrGmbtGu1dXps8f7suvVp6dBmu2pHBQBoNF4cPafaEQAAgHrgd3sAAAAAAKA+KbIMAACwlvbfe69KkeUxY8etdNybEyflXw88mCTp0K5tPn3qyRsk3xKPDB66RoWDzzz+2EqR5YlTp+bRIU/nkEL/9ZqxobjutroX+J07b17+8s/bkrxTmPcr55293vMt6+U33sjwF16s9M86YdUPhf7w4Yfl89//cWa+/XYWLlyUOwY+vNptNrTxkyfnvieeqPRXd63W1duz5+Q/TzxV6Z914qo/9/5998pOPXtm9GuvJUn+ef+DiiwDAAAAAACwwc2fPz8333BjpX/Kx05Ls2b1809/7/jXbZX26WeflZqampWO3aZnz7zv/e/PA/955/74bf/45wYtWnvdn/+SOXPeedjKyaedmm23226DzZ0km222WXrt3jvDhj6dJHn1lTHrvM9XXn45I54ZXumfcc6q7zefeNJH8sXPfi4zZ87MwoULc+dtd+SMc85a5xyNRWO6XgEAAAAAAICNV5Oaptmx+wnZsfsJ1Y4CANCodenSJW3atMrnvji62lEAAIB60qZNq3Tp0qXaMQAAAAAAgI2AIssAAABradmH9i5evHil4266654sXLgoSXLUwQemdatW6z3bsgaWB1XaO2/bM1t13WKV47fesutyBWYHlsqbRJHl8ZMn597H617g9+5HHsvkae8Ury7uuUe26dZtveZ7t4Glpee1bevWGbB771WOb9miRYp99sj9Tz5V2b6hFVn+2x13VX5WWjRvno8efUS97PfJZ57J3HnzKv2DB6z+ej640G+Zn4FBufjTn6yXLAAAAAAAAFBXd91+R6ZOmVLpn3H2mfWy35dGj87r/70XliQHHXLIarc58H0HV4rWPvzgwHrJUVc3XPfXSvvDJ5+0Qedeoq7/PqCuHnpgYKXdtm3b9C8MWOX4li1bprDPPsucgwc3mSLLje16BQAAAAAAAAAAYNV69uyZ554blUmTJlU7CgAAUE+6dOmSnj17VjsGAAAAAACwEVBkGQAAYC0Nf/HFSrtHty1XOu6Jp4dV2v169UqSjH71tfzplltz96OP5/U330pNTU26demS/fbeMx89+sh8YL996i3nc6NfrrT37rVbnbbp22vXSoHZ5156eTWjNw5rWuB3Red13ISJ+dMtt+aO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yoOXX5qfffaTOWrgwem2/fZp17Zteu68U976hkNz7be+luu//Y106thxlSa022+75hcS07xOO+7YDL/6inzj/efnkP32rf37222nbhlSGpTLPv+pPHTlz9O/z95NPvdRAw/OY9f+Jld948s57bhjs0+vntlu223SunWrdN6mY/bqsWtOOvaoXP6lz2bM9Ve/aoPllbbp0CGXf+mzGXrpj/Lut78l+/TqmW07dMi2HTpkn1498+63vyVDL/1RfvGFT6dj+/ZN/rkAAICtU89evXLfIw/np7/4eY485uh07dYt7dq1S89evfKWt78t19x4ff5wy03p1KlTXpo1q3bddhvQ2JZN59Qzz0j18VH52re+mUPKpdq/v9169Mjg447Lzy7/ZR4cVslBBx/c5HMfeczRGfnUE/nttdfk1DNOT5+++2S77bZL69at07lz5+y199458ZST84tfX5HR48f+P/buOjqqq+vj+DeZJBOHGA7B3d2dYqW4U+ru7u7eUoVSpxQpxYq7u0uChRjE3ZOR5488TEjjJEDl91mL9Z57777n7DtJ1/tsmHN3kQ2WAbp278bpsGBm/vAdd9xzN126d6N6jRo4OztjMBioXLkyDRo2ZMSokbz1wXsEBJ/j06++KFOD5fj4eFavWGk7nnrL9HI8vYiIiIiIiPwdJMWmsGnRbtvxbS+MLdBg+ZIGLesweEov2/HimWsrJIfdaw6ze83h3DVa1eGBd6cV2WC5op06GMT5k+G24yFTexcZO2x632IbLF9u7AND8alW2XZ86flERERERETkvyUrJ57Q2Lx9uy1rP1mgwfIlld2aU9cvb3/zmcjvKySHM5E/2MZ1/cYXaLB8iYPBlVa1n7Qdh8QuISsnoUJyEBEREREREcnJjCc2KK9Grt3+yQINli9x82mOX6O8GjnyRMXUyJEn82pkv0bjCzRYvsTg6ErtDnk1cuzZJeRkqkYWEREREREREREREREREREREZHrw+F6JyAiIv8MZrOZn+bNZ94fSzgeEEBSSgrVqvjRukULbpk4gZHDhmJnZ0f/UWPYunMXAOsXL6Jvj+4F5rr9oUf4ef4CAL6b8Sm3TJpYIOa19z/kjQ8/AuClJ5/glaefxGw2s2DJUn6ev4CTp04TExdHZU9P2rdpzc0TxjNh1MhiXy4VHBpGw465DYr8a9fi3IF95f5c/q6W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U3uWRURERERERErj4Lwu7Jpdk12za5KZonpaRERERERERERERERERERERETk38TheicgIiIiciXCLlxg/ZatbN25ixOBgZwPDSMlNRU3V1eq+vnRqV1bRg4dwshhQzEYDKWaMycnh+179rJp+3b2HzpM4JkzxMTFYTZb8KpUiSaNGtKra1dumzKZunVqlznnPQcOMvf3Rezev5/zoWEkp6TgbDTi5+ND6xbNGX7DICaMHIm7u1uZ5xYRERERkdIZ2r0L3y9bAUB0fEK+a5c3SUrLzCx2HrPZzHdLV1R8gldZVnYOCzds4rYRRTfksVqtzF2zznbc57Kmu2UxtHtX3vlxDgArd+4mPDqGWlX8rmiusrCzs2Noty6s37sfKPhzLqubhw3m5mGDKyK16youKZk9J07ajpv41yk07sZe3Zm7Zj0Amw4cLPHnNmfVWtv4pl49yp1nVnY27/8813Z858gbyz2niIiIiIgUbsjwYfzw7WwAWxPXSy6vkdPT0oudx2w2893MWRWf4FWWlZXF7/MWcOudtxcZY7Va+e2XObbjPv36XtFaQ4YP59033gJg1Z8ruBAeTs1ata5orrKws7Nj8PChrF+bW7tFR0WXa75pt05n2q3TKyK1q8JkMnHLpCmsXb0ayG02PevH7xk5ZnSZ59p5cH+pY4f2H8j2LVsBeO7lF3n+lZfLvF5R3nz1Ndt46i3TcXZ2rrC5RURERERERACiw+PYv/EYR7YHcj4gjMiQGNJTMnF2M+LtV4mmHevT48aO9LyxIwaD/RWtkZWRzY4VB9i6bB9Bx0OJj0rEbLLgVcUTvxreNO/ciLa9mtGud3OcnJ0q+AlFRERERERESma1WknJPEd86hHiU48Ql3qYxPQTmC25+wpcjbW4qf2eClsvx5TCyiN9yciOtJ1rUetxWtV+osLWEBEREREREbnarFYrmUnnSI05QmrsEVJjDpMedwKLObeeNrrXov2kiqunRURERERERERERERERERERETkv0FNlkVEROQf5eiJk9z35NPsOXCg0OtJyckkJSdz+tw5fv19EY3q1+f7zz+jW6eOxc77/JtvMfuXX4lPKLz5VlRMDFExMWzduYt3Pv2Mh+66k7deeK5UL7FOSEzk7seeYPGKlQWupZpMpKalcT40lKWrVvPKu+/z9UcfcOMNg0qcV0REREREcmVlZ5Nj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AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABFIWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoCiHLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAUQhZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAikLIMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUBRClgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgKIQsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABSFkGUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAohCwDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABFIWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoCiHLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAUQhZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAikLIMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUBRClgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgKIQsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABSFkGUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAohCwDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABFIWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoCiHLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAUQhZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAikLIMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUBRClgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgKIQsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABSFkGUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAohCwDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABFIWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoCiHLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAUQhZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAikLIMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUBRClgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgKIQsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABSFkGUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAohCwDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABFIWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoCiHLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAUQhZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAikLIMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUBRClgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgKIQsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABSFkGUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAohCwDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABFIWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoCiHLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAUQhZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAikLIMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUBRClgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgKIQsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABSFkGUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAohCwDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABFIWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoCiHLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAUQhZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAikLIMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUBRClgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgKIQsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABSFkGUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAohCwDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABFIWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoCiHLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAUQhZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAikLIMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUBRClgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgKIQsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABSFkGUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAohCwDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABFIWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoCiHLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAUQhZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAikLIMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUBRClgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgKIQsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABSFkGUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAohCwDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABFIWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoCiHLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAUQhZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAikLIMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUBRClgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgKIQsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABSFkGUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAohCwDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABFIWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoCiHLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAUQhZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAikLIMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUBRClgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgKIQsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/P3h0LAAAAAAzytx7GnhIJAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYSJYBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICFZBkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFhIlgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgIVkGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWEiWAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAhWQZAAAAAAAAAAAAAAAAAAAAAAAAAABi744FAAAAAAb5Ww9jT4kEAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJMsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMBCsgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEKyDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCTLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAQrIMAAAAAAAAAAAAAAAAAACxd8cCAAAAAIP8rYexp0QCAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWkmUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAhWQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaSZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYCFZBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFpJlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgIVkGAAAAAAAAAIDau2MBAAAAgEH+1sPYUyIBAAAAAAAAAAAAAAAAAAAAAAAAAACwkCwDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALyTIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCQLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvJMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJAsAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8kyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkCwDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALyTIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCQLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvJMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJAsAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8kyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkCwDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALyTIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCQLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvJMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJAsAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8kyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkCwDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALyTIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCQLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvJMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJAsAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8kyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkCwDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALyTIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCQLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvJMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJAsAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8kyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkCwDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALyTIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCQLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvJMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJAsAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8kyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkCwDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALyTIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCQLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvJMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJAsAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8kyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkCwDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALyTIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCQLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvJMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJAsAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8kyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkCwDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALyTIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCQLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvJMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJAsAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8kyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkCwDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALyTIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCQLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvJMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJAsAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8kyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkCwDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALyTIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCQLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvJMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJAsAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8kyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkCwDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALyTIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCQLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvJMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJAsAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8kyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkCwDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALyTIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCQLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvJMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJAsAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8kyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkCwDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALyTIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCQLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvJMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJAsAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8kyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkCwDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALyTIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCQLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvJMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJAsAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8kyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkCwDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALyTIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCQLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvJMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJAsAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8kyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkCwDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALyTIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCQLAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvJMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsJAsAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8kyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwkCwDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACLADRVgNvG2r70AAAAAElFTkSuQmCC",
"text/plain": [
"<Figure size 10000x15000 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=(100,150))\n",
"ax=plt.subplot()\n",
"\n",
"tree.plot_tree(c,ax=ax,filled=True,feature_names=X.columns);\n"
]
},
{
"cell_type": "markdown",
"id": "038cd38e-3890-4f73-91a7-c30294b3bc5b",
"metadata": {},
"source": [
"## III. Pattern Mining"
]
},
{
"cell_type": "code",
"execution_count": 37,
"id": "2e6b0dc1-030c-4239-803f-52736a41bcb5",
"metadata": {},
"outputs": [],
"source": [
"unused_columns = {\"vegetarian\", \"vegan\", \"cheese\", \"region\", \"color\", \"location\", \"latitude\", \"longitude\", \"country\", \"color_r\", \"color_g\", \"color_b\"}\n",
"data_features_only=data_features.drop(columns=list(unused_columns.intersection(data_features.columns)))"
]
},
{
"cell_type": "code",
"execution_count": 38,
"id": "23b75579-95bb-4889-928f-9c3c1309a18a",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"164"
]
},
"execution_count": 38,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"data_features_only.shape[1]"
]
},
{
"cell_type": "markdown",
"id": "b76e8b2f-2efc-43f7-9aa7-fffb960313ad",
"metadata": {},
"source": [
"We have $196$ features in our data, that is very big compared to the number of rows of our data. So, we choose a min_support of $0.1$ during the apriori algorithm for pattern mining. "
]
},
{
"cell_type": "code",
"execution_count": 39,
"id": "e7113235-7546-4c71-9b34-181472466d20",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>support</th>\n",
" <th>itemsets</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>0.229825</td>\n",
" <td>(white)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>0.228947</td>\n",
" <td>(semi-soft)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>0.126316</td>\n",
" <td>(fresh)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>0.135965</td>\n",
" <td>(tangy)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>0.224561</td>\n",
" <td>(goat)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>0.160526</td>\n",
" <td>(sheep)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>0.328947</td>\n",
" <td>(soft)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>0.100877</td>\n",
" <td>(milky)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>0.541228</td>\n",
" <td>(artisan)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>0.221053</td>\n",
" <td>(firm)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <td>0.135088</td>\n",
" <td>(spicy)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <td>0.298246</td>\n",
" <td>(smooth)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12</th>\n",
" <td>0.371053</td>\n",
" <td>(natural)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>13</th>\n",
" <td>0.655263</td>\n",
" <td>(cow)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>14</th>\n",
" <td>0.203509</td>\n",
" <td>(buttery)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>15</th>\n",
" <td>0.108772</td>\n",
" <td>(soft-ripened)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>16</th>\n",
" <td>0.188596</td>\n",
" <td>(hard)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>17</th>\n",
" <td>0.136842</td>\n",
" <td>(strong)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>18</th>\n",
" <td>0.227193</td>\n",
" <td>(pale yellow)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>19</th>\n",
" <td>0.254386</td>\n",
" <td>(sweet)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>20</th>\n",
" <td>0.560526</td>\n",
" <td>(creamy)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>21</th>\n",
" <td>0.188596</td>\n",
" <td>(crumbly)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>22</th>\n",
" <td>0.108772</td>\n",
" <td>(washed)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>23</th>\n",
" <td>0.195614</td>\n",
" <td>(semi-hard)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>24</th>\n",
" <td>0.203509</td>\n",
" <td>(nutty)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>25</th>\n",
" <td>0.135088</td>\n",
" <td>(rich)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>26</th>\n",
" <td>0.123684</td>\n",
" <td>(ivory)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>27</th>\n",
" <td>0.198246</td>\n",
" <td>(mild)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>28</th>\n",
" <td>0.104386</td>\n",
" <td>(goat, white)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>29</th>\n",
" <td>0.111404</td>\n",
" <td>(soft, white)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>30</th>\n",
" <td>0.132456</td>\n",
" <td>(white, artisan)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>31</th>\n",
" <td>0.149123</td>\n",
" <td>(white, creamy)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>32</th>\n",
" <td>0.126316</td>\n",
" <td>(semi-soft, artisan)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>33</th>\n",
" <td>0.153509</td>\n",
" <td>(semi-soft, cow)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>34</th>\n",
" <td>0.151754</td>\n",
" <td>(semi-soft, creamy)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>35</th>\n",
" <td>0.100877</td>\n",
" <td>(goat, soft)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>36</th>\n",
" <td>0.128070</td>\n",
" <td>(goat, artisan)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>37</th>\n",
" <td>0.133333</td>\n",
" <td>(goat, creamy)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>38</th>\n",
" <td>0.104386</td>\n",
" <td>(sheep, artisan)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>39</th>\n",
" <td>0.153509</td>\n",
" <td>(soft, artisan)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>40</th>\n",
" <td>0.124561</td>\n",
" <td>(smooth, soft)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>41</th>\n",
" <td>0.200000</td>\n",
" <td>(soft, cow)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>42</th>\n",
" <td>0.228070</td>\n",
" <td>(soft, creamy)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>43</th>\n",
" <td>0.135965</td>\n",
" <td>(firm, artisan)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>44</th>\n",
" <td>0.169298</td>\n",
" <td>(smooth, artisan)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>45</th>\n",
" <td>0.238596</td>\n",
" <td>(natural, artisan)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>46</th>\n",
" <td>0.331579</td>\n",
" <td>(artisan, cow)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>47</th>\n",
" <td>0.103509</td>\n",
" <td>(buttery, artisan)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>48</th>\n",
" <td>0.110526</td>\n",
" <td>(hard, artisan)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>49</th>\n",
" <td>0.142982</td>\n",
" <td>(pale yellow, artisan)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>50</th>\n",
" <td>0.151754</td>\n",
" <td>(sweet, artisan)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>51</th>\n",
" <td>0.306140</td>\n",
" <td>(artisan, creamy)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>52</th>\n",
" <td>0.122807</td>\n",
" <td>(artisan, crumbly)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>53</th>\n",
" <td>0.122807</td>\n",
" <td>(semi-hard, artisan)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>54</th>\n",
" <td>0.121053</td>\n",
" <td>(artisan, nutty)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>55</th>\n",
" <td>0.106140</td>\n",
" <td>(mild, artisan)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>56</th>\n",
" <td>0.143860</td>\n",
" <td>(firm, cow)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>57</th>\n",
" <td>0.103509</td>\n",
" <td>(spicy, cow)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>58</th>\n",
" <td>0.103509</td>\n",
" <td>(smooth, natural)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>59</th>\n",
" <td>0.187719</td>\n",
" <td>(smooth, cow)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>60</th>\n",
" <td>0.193860</td>\n",
" <td>(smooth, creamy)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>61</th>\n",
" <td>0.250000</td>\n",
" <td>(natural, cow)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>62</th>\n",
" <td>0.103509</td>\n",
" <td>(natural, hard)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>63</th>\n",
" <td>0.106140</td>\n",
" <td>(pale yellow, natural)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>64</th>\n",
" <td>0.100877</td>\n",
" <td>(natural, sweet)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>65</th>\n",
" <td>0.184211</td>\n",
" <td>(natural, creamy)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>66</th>\n",
" <td>0.101754</td>\n",
" <td>(natural, crumbly)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>67</th>\n",
" <td>0.110526</td>\n",
" <td>(natural, semi-hard)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>68</th>\n",
" <td>0.163158</td>\n",
" <td>(buttery, cow)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>69</th>\n",
" <td>0.142982</td>\n",
" <td>(hard, cow)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>70</th>\n",
" <td>0.178070</td>\n",
" <td>(pale yellow, cow)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>71</th>\n",
" <td>0.160526</td>\n",
" <td>(sweet, cow)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>72</th>\n",
" <td>0.378070</td>\n",
" <td>(cow, creamy)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>73</th>\n",
" <td>0.124561</td>\n",
" <td>(cow, crumbly)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>74</th>\n",
" <td>0.143860</td>\n",
" <td>(semi-hard, cow)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>75</th>\n",
" <td>0.142105</td>\n",
" <td>(nutty, cow)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>76</th>\n",
" <td>0.109649</td>\n",
" <td>(rich, cow)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>77</th>\n",
" <td>0.126316</td>\n",
" <td>(mild, cow)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>78</th>\n",
" <td>0.131579</td>\n",
" <td>(buttery, creamy)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>79</th>\n",
" <td>0.124561</td>\n",
" <td>(pale yellow, creamy)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>80</th>\n",
" <td>0.140351</td>\n",
" <td>(sweet, creamy)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>81</th>\n",
" <td>0.100000</td>\n",
" <td>(nutty, creamy)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>82</th>\n",
" <td>0.130702</td>\n",
" <td>(mild, creamy)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>83</th>\n",
" <td>0.104386</td>\n",
" <td>(cow, semi-soft, creamy)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>84</th>\n",
" <td>0.106140</td>\n",
" <td>(soft, artisan, creamy)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>85</th>\n",
" <td>0.145614</td>\n",
" <td>(soft, cow, creamy)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>86</th>\n",
" <td>0.108772</td>\n",
" <td>(smooth, artisan, creamy)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>87</th>\n",
" <td>0.151754</td>\n",
" <td>(natural, artisan, cow)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>88</th>\n",
" <td>0.121053</td>\n",
" <td>(natural, artisan, creamy)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>89</th>\n",
" <td>0.110526</td>\n",
" <td>(pale yellow, artisan, cow)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>90</th>\n",
" <td>0.192982</td>\n",
" <td>(cow, artisan, creamy)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>91</th>\n",
" <td>0.130702</td>\n",
" <td>(smooth, cow, creamy)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>92</th>\n",
" <td>0.135088</td>\n",
" <td>(natural, cow, creamy)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>93</th>\n",
" <td>0.107895</td>\n",
" <td>(buttery, cow, creamy)</td>\n",
" </tr>\n",
" <tr>\n",
" <th>94</th>\n",
" <td>0.100000</td>\n",
" <td>(pale yellow, cow, creamy)</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"frequent_itemsets=apriori(data_features_only,min_support=.1, use_colnames=True)\n",
"display(HTML(frequent_itemsets.to_html()))"
]
},
{
"cell_type": "code",
"execution_count": 40,
"id": "61959c04-61bf-464a-89ca-72ec4782f927",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>antecedents</th>\n",
" <th>consequents</th>\n",
" <th>antecedent support</th>\n",
" <th>consequent support</th>\n",
" <th>support</th>\n",
" <th>confidence</th>\n",
" <th>lift</th>\n",
" <th>representativity</th>\n",
" <th>leverage</th>\n",
" <th>conviction</th>\n",
" <th>zhangs_metric</th>\n",
" <th>jaccard</th>\n",
" <th>certainty</th>\n",
" <th>kulczynski</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>(white)</td>\n",
" <td>(artisan)</td>\n",
" <td>0.229825</td>\n",
" <td>0.541228</td>\n",
" <td>0.132456</td>\n",
" <td>0.576336</td>\n",
" <td>1.064867</td>\n",
" <td>1.0</td>\n",
" <td>0.008069</td>\n",
" <td>1.082867</td>\n",
" <td>0.079093</td>\n",
" <td>0.207418</td>\n",
" <td>0.076526</td>\n",
" <td>0.410534</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>(white)</td>\n",
" <td>(creamy)</td>\n",
" <td>0.229825</td>\n",
" <td>0.560526</td>\n",
" <td>0.149123</td>\n",
" <td>0.648855</td>\n",
" <td>1.157582</td>\n",
" <td>1.0</td>\n",
" <td>0.020300</td>\n",
" <td>1.251545</td>\n",
" <td>0.176752</td>\n",
" <td>0.232558</td>\n",
" <td>0.200987</td>\n",
" <td>0.457448</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>(semi-soft)</td>\n",
" <td>(artisan)</td>\n",
" <td>0.228947</td>\n",
" <td>0.541228</td>\n",
" <td>0.126316</td>\n",
" <td>0.551724</td>\n",
" <td>1.019393</td>\n",
" <td>1.0</td>\n",
" <td>0.002403</td>\n",
" <td>1.023414</td>\n",
" <td>0.024673</td>\n",
" <td>0.196185</td>\n",
" <td>0.022879</td>\n",
" <td>0.392556</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>(semi-soft)</td>\n",
" <td>(cow)</td>\n",
" <td>0.228947</td>\n",
" <td>0.655263</td>\n",
" <td>0.153509</td>\n",
" <td>0.670498</td>\n",
" <td>1.023250</td>\n",
" <td>1.0</td>\n",
" <td>0.003488</td>\n",
" <td>1.046236</td>\n",
" <td>0.029469</td>\n",
" <td>0.210084</td>\n",
" <td>0.044193</td>\n",
" <td>0.452384</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>(semi-soft)</td>\n",
" <td>(creamy)</td>\n",
" <td>0.228947</td>\n",
" <td>0.560526</td>\n",
" <td>0.151754</td>\n",
" <td>0.662835</td>\n",
" <td>1.182523</td>\n",
" <td>1.0</td>\n",
" <td>0.023423</td>\n",
" <td>1.303439</td>\n",
" <td>0.200181</td>\n",
" <td>0.237964</td>\n",
" <td>0.232799</td>\n",
" <td>0.466785</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>(goat)</td>\n",
" <td>(artisan)</td>\n",
" <td>0.224561</td>\n",
" <td>0.541228</td>\n",
" <td>0.128070</td>\n",
" <td>0.570312</td>\n",
" <td>1.053738</td>\n",
" <td>1.0</td>\n",
" <td>0.006531</td>\n",
" <td>1.067687</td>\n",
" <td>0.065766</td>\n",
" <td>0.200825</td>\n",
" <td>0.063396</td>\n",
" <td>0.403471</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>(goat)</td>\n",
" <td>(creamy)</td>\n",
" <td>0.224561</td>\n",
" <td>0.560526</td>\n",
" <td>0.133333</td>\n",
" <td>0.593750</td>\n",
" <td>1.059272</td>\n",
" <td>1.0</td>\n",
" <td>0.007461</td>\n",
" <td>1.081781</td>\n",
" <td>0.072160</td>\n",
" <td>0.204576</td>\n",
" <td>0.075599</td>\n",
" <td>0.415811</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>(sheep)</td>\n",
" <td>(artisan)</td>\n",
" <td>0.160526</td>\n",
" <td>0.541228</td>\n",
" <td>0.104386</td>\n",
" <td>0.650273</td>\n",
" <td>1.201477</td>\n",
" <td>1.0</td>\n",
" <td>0.017505</td>\n",
" <td>1.311801</td>\n",
" <td>0.199758</td>\n",
" <td>0.174743</td>\n",
" <td>0.237689</td>\n",
" <td>0.421571</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>(soft)</td>\n",
" <td>(cow)</td>\n",
" <td>0.328947</td>\n",
" <td>0.655263</td>\n",
" <td>0.200000</td>\n",
" <td>0.608000</td>\n",
" <td>0.927871</td>\n",
" <td>1.0</td>\n",
" <td>-0.015547</td>\n",
" <td>0.879431</td>\n",
" <td>-0.103815</td>\n",
" <td>0.255034</td>\n",
" <td>-0.137099</td>\n",
" <td>0.456610</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>(soft)</td>\n",
" <td>(creamy)</td>\n",
" <td>0.328947</td>\n",
" <td>0.560526</td>\n",
" <td>0.228070</td>\n",
" <td>0.693333</td>\n",
" <td>1.236933</td>\n",
" <td>1.0</td>\n",
" <td>0.043687</td>\n",
" <td>1.433066</td>\n",
" <td>0.285445</td>\n",
" <td>0.344828</td>\n",
" <td>0.302196</td>\n",
" <td>0.550110</td>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <td>(firm)</td>\n",
" <td>(artisan)</td>\n",
" <td>0.221053</td>\n",
" <td>0.541228</td>\n",
" <td>0.135965</td>\n",
" <td>0.615079</td>\n",
" <td>1.136451</td>\n",
" <td>1.0</td>\n",
" <td>0.016325</td>\n",
" <td>1.191861</td>\n",
" <td>0.154141</td>\n",
" <td>0.217087</td>\n",
" <td>0.160976</td>\n",
" <td>0.433147</td>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <td>(smooth)</td>\n",
" <td>(artisan)</td>\n",
" <td>0.298246</td>\n",
" <td>0.541228</td>\n",
" <td>0.169298</td>\n",
" <td>0.567647</td>\n",
" <td>1.048813</td>\n",
" <td>1.0</td>\n",
" <td>0.007879</td>\n",
" <td>1.061105</td>\n",
" <td>0.066321</td>\n",
" <td>0.252618</td>\n",
" <td>0.057586</td>\n",
" <td>0.440225</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12</th>\n",
" <td>(natural)</td>\n",
" <td>(artisan)</td>\n",
" <td>0.371053</td>\n",
" <td>0.541228</td>\n",
" <td>0.238596</td>\n",
" <td>0.643026</td>\n",
" <td>1.188087</td>\n",
" <td>1.0</td>\n",
" <td>0.037772</td>\n",
" <td>1.285169</td>\n",
" <td>0.251707</td>\n",
" <td>0.354167</td>\n",
" <td>0.221892</td>\n",
" <td>0.541934</td>\n",
" </tr>\n",
" <tr>\n",
" <th>13</th>\n",
" <td>(artisan)</td>\n",
" <td>(cow)</td>\n",
" <td>0.541228</td>\n",
" <td>0.655263</td>\n",
" <td>0.331579</td>\n",
" <td>0.612642</td>\n",
" <td>0.934955</td>\n",
" <td>1.0</td>\n",
" <td>-0.023068</td>\n",
" <td>0.889969</td>\n",
" <td>-0.131676</td>\n",
" <td>0.383367</td>\n",
" <td>-0.123634</td>\n",
" <td>0.559333</td>\n",
" </tr>\n",
" <tr>\n",
" <th>14</th>\n",
" <td>(cow)</td>\n",
" <td>(artisan)</td>\n",
" <td>0.655263</td>\n",
" <td>0.541228</td>\n",
" <td>0.331579</td>\n",
" <td>0.506024</td>\n",
" <td>0.934955</td>\n",
" <td>1.0</td>\n",
" <td>-0.023068</td>\n",
" <td>0.928733</td>\n",
" <td>-0.167919</td>\n",
" <td>0.383367</td>\n",
" <td>-0.076735</td>\n",
" <td>0.559333</td>\n",
" </tr>\n",
" <tr>\n",
" <th>15</th>\n",
" <td>(buttery)</td>\n",
" <td>(artisan)</td>\n",
" <td>0.203509</td>\n",
" <td>0.541228</td>\n",
" <td>0.103509</td>\n",
" <td>0.508621</td>\n",
" <td>0.939753</td>\n",
" <td>1.0</td>\n",
" <td>-0.006636</td>\n",
" <td>0.933641</td>\n",
" <td>-0.074494</td>\n",
" <td>0.161423</td>\n",
" <td>-0.071075</td>\n",
" <td>0.349934</td>\n",
" </tr>\n",
" <tr>\n",
" <th>16</th>\n",
" <td>(hard)</td>\n",
" <td>(artisan)</td>\n",
" <td>0.188596</td>\n",
" <td>0.541228</td>\n",
" <td>0.110526</td>\n",
" <td>0.586047</td>\n",
" <td>1.082809</td>\n",
" <td>1.0</td>\n",
" <td>0.008453</td>\n",
" <td>1.108269</td>\n",
" <td>0.094251</td>\n",
" <td>0.178470</td>\n",
" <td>0.097692</td>\n",
" <td>0.395130</td>\n",
" </tr>\n",
" <tr>\n",
" <th>17</th>\n",
" <td>(pale yellow)</td>\n",
" <td>(artisan)</td>\n",
" <td>0.227193</td>\n",
" <td>0.541228</td>\n",
" <td>0.142982</td>\n",
" <td>0.629344</td>\n",
" <td>1.162807</td>\n",
" <td>1.0</td>\n",
" <td>0.020019</td>\n",
" <td>1.237728</td>\n",
" <td>0.181173</td>\n",
" <td>0.228612</td>\n",
" <td>0.192068</td>\n",
" <td>0.446763</td>\n",
" </tr>\n",
" <tr>\n",
" <th>18</th>\n",
" <td>(sweet)</td>\n",
" <td>(artisan)</td>\n",
" <td>0.254386</td>\n",
" <td>0.541228</td>\n",
" <td>0.151754</td>\n",
" <td>0.596552</td>\n",
" <td>1.102219</td>\n",
" <td>1.0</td>\n",
" <td>0.014074</td>\n",
" <td>1.137127</td>\n",
" <td>0.124379</td>\n",
" <td>0.235695</td>\n",
" <td>0.120591</td>\n",
" <td>0.438470</td>\n",
" </tr>\n",
" <tr>\n",
" <th>19</th>\n",
" <td>(artisan)</td>\n",
" <td>(creamy)</td>\n",
" <td>0.541228</td>\n",
" <td>0.560526</td>\n",
" <td>0.306140</td>\n",
" <td>0.565640</td>\n",
" <td>1.009123</td>\n",
" <td>1.0</td>\n",
" <td>0.002768</td>\n",
" <td>1.011773</td>\n",
" <td>0.019707</td>\n",
" <td>0.384785</td>\n",
" <td>0.011636</td>\n",
" <td>0.555903</td>\n",
" </tr>\n",
" <tr>\n",
" <th>20</th>\n",
" <td>(creamy)</td>\n",
" <td>(artisan)</td>\n",
" <td>0.560526</td>\n",
" <td>0.541228</td>\n",
" <td>0.306140</td>\n",
" <td>0.546166</td>\n",
" <td>1.009123</td>\n",
" <td>1.0</td>\n",
" <td>0.002768</td>\n",
" <td>1.010880</td>\n",
" <td>0.020572</td>\n",
" <td>0.384785</td>\n",
" <td>0.010763</td>\n",
" <td>0.555903</td>\n",
" </tr>\n",
" <tr>\n",
" <th>21</th>\n",
" <td>(crumbly)</td>\n",
" <td>(artisan)</td>\n",
" <td>0.188596</td>\n",
" <td>0.541228</td>\n",
" <td>0.122807</td>\n",
" <td>0.651163</td>\n",
" <td>1.203121</td>\n",
" <td>1.0</td>\n",
" <td>0.020733</td>\n",
" <td>1.315146</td>\n",
" <td>0.208069</td>\n",
" <td>0.202312</td>\n",
" <td>0.239628</td>\n",
" <td>0.439034</td>\n",
" </tr>\n",
" <tr>\n",
" <th>22</th>\n",
" <td>(semi-hard)</td>\n",
" <td>(artisan)</td>\n",
" <td>0.195614</td>\n",
" <td>0.541228</td>\n",
" <td>0.122807</td>\n",
" <td>0.627803</td>\n",
" <td>1.159960</td>\n",
" <td>1.0</td>\n",
" <td>0.016935</td>\n",
" <td>1.232604</td>\n",
" <td>0.171436</td>\n",
" <td>0.200000</td>\n",
" <td>0.188709</td>\n",
" <td>0.427354</td>\n",
" </tr>\n",
" <tr>\n",
" <th>23</th>\n",
" <td>(nutty)</td>\n",
" <td>(artisan)</td>\n",
" <td>0.203509</td>\n",
" <td>0.541228</td>\n",
" <td>0.121053</td>\n",
" <td>0.594828</td>\n",
" <td>1.099033</td>\n",
" <td>1.0</td>\n",
" <td>0.010908</td>\n",
" <td>1.132288</td>\n",
" <td>0.113133</td>\n",
" <td>0.194093</td>\n",
" <td>0.116833</td>\n",
" <td>0.409245</td>\n",
" </tr>\n",
" <tr>\n",
" <th>24</th>\n",
" <td>(mild)</td>\n",
" <td>(artisan)</td>\n",
" <td>0.198246</td>\n",
" <td>0.541228</td>\n",
" <td>0.106140</td>\n",
" <td>0.535398</td>\n",
" <td>0.989228</td>\n",
" <td>1.0</td>\n",
" <td>-0.001156</td>\n",
" <td>0.987452</td>\n",
" <td>-0.013399</td>\n",
" <td>0.167590</td>\n",
" <td>-0.012707</td>\n",
" <td>0.365754</td>\n",
" </tr>\n",
" <tr>\n",
" <th>25</th>\n",
" <td>(firm)</td>\n",
" <td>(cow)</td>\n",
" <td>0.221053</td>\n",
" <td>0.655263</td>\n",
" <td>0.143860</td>\n",
" <td>0.650794</td>\n",
" <td>0.993179</td>\n",
" <td>1.0</td>\n",
" <td>-0.000988</td>\n",
" <td>0.987201</td>\n",
" <td>-0.008740</td>\n",
" <td>0.196407</td>\n",
" <td>-0.012965</td>\n",
" <td>0.435169</td>\n",
" </tr>\n",
" <tr>\n",
" <th>26</th>\n",
" <td>(spicy)</td>\n",
" <td>(cow)</td>\n",
" <td>0.135088</td>\n",
" <td>0.655263</td>\n",
" <td>0.103509</td>\n",
" <td>0.766234</td>\n",
" <td>1.169353</td>\n",
" <td>1.0</td>\n",
" <td>0.014991</td>\n",
" <td>1.474708</td>\n",
" <td>0.167446</td>\n",
" <td>0.150702</td>\n",
" <td>0.321899</td>\n",
" <td>0.462099</td>\n",
" </tr>\n",
" <tr>\n",
" <th>27</th>\n",
" <td>(smooth)</td>\n",
" <td>(cow)</td>\n",
" <td>0.298246</td>\n",
" <td>0.655263</td>\n",
" <td>0.187719</td>\n",
" <td>0.629412</td>\n",
" <td>0.960548</td>\n",
" <td>1.0</td>\n",
" <td>-0.007710</td>\n",
" <td>0.930242</td>\n",
" <td>-0.055292</td>\n",
" <td>0.245132</td>\n",
" <td>-0.074989</td>\n",
" <td>0.457946</td>\n",
" </tr>\n",
" <tr>\n",
" <th>28</th>\n",
" <td>(smooth)</td>\n",
" <td>(creamy)</td>\n",
" <td>0.298246</td>\n",
" <td>0.560526</td>\n",
" <td>0.193860</td>\n",
" <td>0.650000</td>\n",
" <td>1.159624</td>\n",
" <td>1.0</td>\n",
" <td>0.026685</td>\n",
" <td>1.255639</td>\n",
" <td>0.196154</td>\n",
" <td>0.291557</td>\n",
" <td>0.203593</td>\n",
" <td>0.497926</td>\n",
" </tr>\n",
" <tr>\n",
" <th>29</th>\n",
" <td>(natural)</td>\n",
" <td>(cow)</td>\n",
" <td>0.371053</td>\n",
" <td>0.655263</td>\n",
" <td>0.250000</td>\n",
" <td>0.673759</td>\n",
" <td>1.028226</td>\n",
" <td>1.0</td>\n",
" <td>0.006863</td>\n",
" <td>1.056693</td>\n",
" <td>0.043647</td>\n",
" <td>0.322034</td>\n",
" <td>0.053652</td>\n",
" <td>0.527642</td>\n",
" </tr>\n",
" <tr>\n",
" <th>30</th>\n",
" <td>(hard)</td>\n",
" <td>(natural)</td>\n",
" <td>0.188596</td>\n",
" <td>0.371053</td>\n",
" <td>0.103509</td>\n",
" <td>0.548837</td>\n",
" <td>1.479136</td>\n",
" <td>1.0</td>\n",
" <td>0.033530</td>\n",
" <td>1.394059</td>\n",
" <td>0.399221</td>\n",
" <td>0.226923</td>\n",
" <td>0.282670</td>\n",
" <td>0.413899</td>\n",
" </tr>\n",
" <tr>\n",
" <th>31</th>\n",
" <td>(crumbly)</td>\n",
" <td>(natural)</td>\n",
" <td>0.188596</td>\n",
" <td>0.371053</td>\n",
" <td>0.101754</td>\n",
" <td>0.539535</td>\n",
" <td>1.454066</td>\n",
" <td>1.0</td>\n",
" <td>0.031775</td>\n",
" <td>1.365896</td>\n",
" <td>0.384856</td>\n",
" <td>0.222222</td>\n",
" <td>0.267880</td>\n",
" <td>0.406883</td>\n",
" </tr>\n",
" <tr>\n",
" <th>32</th>\n",
" <td>(semi-hard)</td>\n",
" <td>(natural)</td>\n",
" <td>0.195614</td>\n",
" <td>0.371053</td>\n",
" <td>0.110526</td>\n",
" <td>0.565022</td>\n",
" <td>1.522755</td>\n",
" <td>1.0</td>\n",
" <td>0.037943</td>\n",
" <td>1.445931</td>\n",
" <td>0.426780</td>\n",
" <td>0.242308</td>\n",
" <td>0.308404</td>\n",
" <td>0.431447</td>\n",
" </tr>\n",
" <tr>\n",
" <th>33</th>\n",
" <td>(buttery)</td>\n",
" <td>(cow)</td>\n",
" <td>0.203509</td>\n",
" <td>0.655263</td>\n",
" <td>0.163158</td>\n",
" <td>0.801724</td>\n",
" <td>1.223515</td>\n",
" <td>1.0</td>\n",
" <td>0.029806</td>\n",
" <td>1.738673</td>\n",
" <td>0.229359</td>\n",
" <td>0.234552</td>\n",
" <td>0.424849</td>\n",
" <td>0.525360</td>\n",
" </tr>\n",
" <tr>\n",
" <th>34</th>\n",
" <td>(hard)</td>\n",
" <td>(cow)</td>\n",
" <td>0.188596</td>\n",
" <td>0.655263</td>\n",
" <td>0.142982</td>\n",
" <td>0.758140</td>\n",
" <td>1.157000</td>\n",
" <td>1.0</td>\n",
" <td>0.019402</td>\n",
" <td>1.425354</td>\n",
" <td>0.167236</td>\n",
" <td>0.204005</td>\n",
" <td>0.298420</td>\n",
" <td>0.488173</td>\n",
" </tr>\n",
" <tr>\n",
" <th>35</th>\n",
" <td>(pale yellow)</td>\n",
" <td>(cow)</td>\n",
" <td>0.227193</td>\n",
" <td>0.655263</td>\n",
" <td>0.178070</td>\n",
" <td>0.783784</td>\n",
" <td>1.196136</td>\n",
" <td>1.0</td>\n",
" <td>0.029199</td>\n",
" <td>1.594408</td>\n",
" <td>0.212181</td>\n",
" <td>0.252802</td>\n",
" <td>0.372808</td>\n",
" <td>0.527769</td>\n",
" </tr>\n",
" <tr>\n",
" <th>36</th>\n",
" <td>(sweet)</td>\n",
" <td>(cow)</td>\n",
" <td>0.254386</td>\n",
" <td>0.655263</td>\n",
" <td>0.160526</td>\n",
" <td>0.631034</td>\n",
" <td>0.963025</td>\n",
" <td>1.0</td>\n",
" <td>-0.006163</td>\n",
" <td>0.934333</td>\n",
" <td>-0.048973</td>\n",
" <td>0.214286</td>\n",
" <td>-0.070282</td>\n",
" <td>0.438007</td>\n",
" </tr>\n",
" <tr>\n",
" <th>37</th>\n",
" <td>(cow)</td>\n",
" <td>(creamy)</td>\n",
" <td>0.655263</td>\n",
" <td>0.560526</td>\n",
" <td>0.378070</td>\n",
" <td>0.576975</td>\n",
" <td>1.029344</td>\n",
" <td>1.0</td>\n",
" <td>0.010778</td>\n",
" <td>1.038882</td>\n",
" <td>0.082694</td>\n",
" <td>0.451309</td>\n",
" <td>0.037427</td>\n",
" <td>0.625733</td>\n",
" </tr>\n",
" <tr>\n",
" <th>38</th>\n",
" <td>(creamy)</td>\n",
" <td>(cow)</td>\n",
" <td>0.560526</td>\n",
" <td>0.655263</td>\n",
" <td>0.378070</td>\n",
" <td>0.674491</td>\n",
" <td>1.029344</td>\n",
" <td>1.0</td>\n",
" <td>0.010778</td>\n",
" <td>1.059071</td>\n",
" <td>0.064868</td>\n",
" <td>0.451309</td>\n",
" <td>0.055777</td>\n",
" <td>0.625733</td>\n",
" </tr>\n",
" <tr>\n",
" <th>39</th>\n",
" <td>(crumbly)</td>\n",
" <td>(cow)</td>\n",
" <td>0.188596</td>\n",
" <td>0.655263</td>\n",
" <td>0.124561</td>\n",
" <td>0.660465</td>\n",
" <td>1.007939</td>\n",
" <td>1.0</td>\n",
" <td>0.000981</td>\n",
" <td>1.015321</td>\n",
" <td>0.009707</td>\n",
" <td>0.173171</td>\n",
" <td>0.015090</td>\n",
" <td>0.425279</td>\n",
" </tr>\n",
" <tr>\n",
" <th>40</th>\n",
" <td>(semi-hard)</td>\n",
" <td>(cow)</td>\n",
" <td>0.195614</td>\n",
" <td>0.655263</td>\n",
" <td>0.143860</td>\n",
" <td>0.735426</td>\n",
" <td>1.122337</td>\n",
" <td>1.0</td>\n",
" <td>0.015681</td>\n",
" <td>1.302988</td>\n",
" <td>0.135509</td>\n",
" <td>0.203474</td>\n",
" <td>0.232533</td>\n",
" <td>0.477485</td>\n",
" </tr>\n",
" <tr>\n",
" <th>41</th>\n",
" <td>(nutty)</td>\n",
" <td>(cow)</td>\n",
" <td>0.203509</td>\n",
" <td>0.655263</td>\n",
" <td>0.142105</td>\n",
" <td>0.698276</td>\n",
" <td>1.065642</td>\n",
" <td>1.0</td>\n",
" <td>0.008753</td>\n",
" <td>1.142556</td>\n",
" <td>0.077337</td>\n",
" <td>0.198286</td>\n",
" <td>0.124770</td>\n",
" <td>0.457572</td>\n",
" </tr>\n",
" <tr>\n",
" <th>42</th>\n",
" <td>(rich)</td>\n",
" <td>(cow)</td>\n",
" <td>0.135088</td>\n",
" <td>0.655263</td>\n",
" <td>0.109649</td>\n",
" <td>0.811688</td>\n",
" <td>1.238721</td>\n",
" <td>1.0</td>\n",
" <td>0.021131</td>\n",
" <td>1.830672</td>\n",
" <td>0.222815</td>\n",
" <td>0.161082</td>\n",
" <td>0.453752</td>\n",
" <td>0.489512</td>\n",
" </tr>\n",
" <tr>\n",
" <th>43</th>\n",
" <td>(mild)</td>\n",
" <td>(cow)</td>\n",
" <td>0.198246</td>\n",
" <td>0.655263</td>\n",
" <td>0.126316</td>\n",
" <td>0.637168</td>\n",
" <td>0.972385</td>\n",
" <td>1.0</td>\n",
" <td>-0.003587</td>\n",
" <td>0.950128</td>\n",
" <td>-0.034209</td>\n",
" <td>0.173703</td>\n",
" <td>-0.052489</td>\n",
" <td>0.414970</td>\n",
" </tr>\n",
" <tr>\n",
" <th>44</th>\n",
" <td>(buttery)</td>\n",
" <td>(creamy)</td>\n",
" <td>0.203509</td>\n",
" <td>0.560526</td>\n",
" <td>0.131579</td>\n",
" <td>0.646552</td>\n",
" <td>1.153473</td>\n",
" <td>1.0</td>\n",
" <td>0.017507</td>\n",
" <td>1.243389</td>\n",
" <td>0.167048</td>\n",
" <td>0.208044</td>\n",
" <td>0.195746</td>\n",
" <td>0.440647</td>\n",
" </tr>\n",
" <tr>\n",
" <th>45</th>\n",
" <td>(pale yellow)</td>\n",
" <td>(creamy)</td>\n",
" <td>0.227193</td>\n",
" <td>0.560526</td>\n",
" <td>0.124561</td>\n",
" <td>0.548263</td>\n",
" <td>0.978121</td>\n",
" <td>1.0</td>\n",
" <td>-0.002786</td>\n",
" <td>0.972852</td>\n",
" <td>-0.028130</td>\n",
" <td>0.187831</td>\n",
" <td>-0.027906</td>\n",
" <td>0.385242</td>\n",
" </tr>\n",
" <tr>\n",
" <th>46</th>\n",
" <td>(sweet)</td>\n",
" <td>(creamy)</td>\n",
" <td>0.254386</td>\n",
" <td>0.560526</td>\n",
" <td>0.140351</td>\n",
" <td>0.551724</td>\n",
" <td>0.984297</td>\n",
" <td>1.0</td>\n",
" <td>-0.002239</td>\n",
" <td>0.980364</td>\n",
" <td>-0.020949</td>\n",
" <td>0.208062</td>\n",
" <td>-0.020029</td>\n",
" <td>0.401058</td>\n",
" </tr>\n",
" <tr>\n",
" <th>47</th>\n",
" <td>(mild)</td>\n",
" <td>(creamy)</td>\n",
" <td>0.198246</td>\n",
" <td>0.560526</td>\n",
" <td>0.130702</td>\n",
" <td>0.659292</td>\n",
" <td>1.176202</td>\n",
" <td>1.0</td>\n",
" <td>0.019580</td>\n",
" <td>1.289884</td>\n",
" <td>0.186847</td>\n",
" <td>0.208101</td>\n",
" <td>0.224736</td>\n",
" <td>0.446234</td>\n",
" </tr>\n",
" <tr>\n",
" <th>48</th>\n",
" <td>(semi-soft, cow)</td>\n",
" <td>(creamy)</td>\n",
" <td>0.153509</td>\n",
" <td>0.560526</td>\n",
" <td>0.104386</td>\n",
" <td>0.680000</td>\n",
" <td>1.213146</td>\n",
" <td>1.0</td>\n",
" <td>0.018340</td>\n",
" <td>1.373355</td>\n",
" <td>0.207559</td>\n",
" <td>0.171223</td>\n",
" <td>0.271856</td>\n",
" <td>0.433114</td>\n",
" </tr>\n",
" <tr>\n",
" <th>49</th>\n",
" <td>(semi-soft, creamy)</td>\n",
" <td>(cow)</td>\n",
" <td>0.151754</td>\n",
" <td>0.655263</td>\n",
" <td>0.104386</td>\n",
" <td>0.687861</td>\n",
" <td>1.049748</td>\n",
" <td>1.0</td>\n",
" <td>0.004947</td>\n",
" <td>1.104435</td>\n",
" <td>0.055869</td>\n",
" <td>0.148564</td>\n",
" <td>0.094559</td>\n",
" <td>0.423583</td>\n",
" </tr>\n",
" <tr>\n",
" <th>50</th>\n",
" <td>(soft, artisan)</td>\n",
" <td>(creamy)</td>\n",
" <td>0.153509</td>\n",
" <td>0.560526</td>\n",
" <td>0.106140</td>\n",
" <td>0.691429</td>\n",
" <td>1.233535</td>\n",
" <td>1.0</td>\n",
" <td>0.020095</td>\n",
" <td>1.424220</td>\n",
" <td>0.223654</td>\n",
" <td>0.174603</td>\n",
" <td>0.297861</td>\n",
" <td>0.440393</td>\n",
" </tr>\n",
" <tr>\n",
" <th>51</th>\n",
" <td>(soft, cow)</td>\n",
" <td>(creamy)</td>\n",
" <td>0.200000</td>\n",
" <td>0.560526</td>\n",
" <td>0.145614</td>\n",
" <td>0.728070</td>\n",
" <td>1.298905</td>\n",
" <td>1.0</td>\n",
" <td>0.033509</td>\n",
" <td>1.616129</td>\n",
" <td>0.287651</td>\n",
" <td>0.236805</td>\n",
" <td>0.381238</td>\n",
" <td>0.493926</td>\n",
" </tr>\n",
" <tr>\n",
" <th>52</th>\n",
" <td>(soft, creamy)</td>\n",
" <td>(cow)</td>\n",
" <td>0.228070</td>\n",
" <td>0.655263</td>\n",
" <td>0.145614</td>\n",
" <td>0.638462</td>\n",
" <td>0.974359</td>\n",
" <td>1.0</td>\n",
" <td>-0.003832</td>\n",
" <td>0.953527</td>\n",
" <td>-0.032967</td>\n",
" <td>0.197384</td>\n",
" <td>-0.048738</td>\n",
" <td>0.430342</td>\n",
" </tr>\n",
" <tr>\n",
" <th>53</th>\n",
" <td>(smooth, artisan)</td>\n",
" <td>(creamy)</td>\n",
" <td>0.169298</td>\n",
" <td>0.560526</td>\n",
" <td>0.108772</td>\n",
" <td>0.642487</td>\n",
" <td>1.146221</td>\n",
" <td>1.0</td>\n",
" <td>0.013876</td>\n",
" <td>1.229252</td>\n",
" <td>0.153566</td>\n",
" <td>0.175141</td>\n",
" <td>0.186497</td>\n",
" <td>0.418270</td>\n",
" </tr>\n",
" <tr>\n",
" <th>54</th>\n",
" <td>(smooth, creamy)</td>\n",
" <td>(artisan)</td>\n",
" <td>0.193860</td>\n",
" <td>0.541228</td>\n",
" <td>0.108772</td>\n",
" <td>0.561086</td>\n",
" <td>1.036690</td>\n",
" <td>1.0</td>\n",
" <td>0.003850</td>\n",
" <td>1.045243</td>\n",
" <td>0.043903</td>\n",
" <td>0.173669</td>\n",
" <td>0.043285</td>\n",
" <td>0.381029</td>\n",
" </tr>\n",
" <tr>\n",
" <th>55</th>\n",
" <td>(natural, artisan)</td>\n",
" <td>(cow)</td>\n",
" <td>0.238596</td>\n",
" <td>0.655263</td>\n",
" <td>0.151754</td>\n",
" <td>0.636029</td>\n",
" <td>0.970647</td>\n",
" <td>1.0</td>\n",
" <td>-0.004589</td>\n",
" <td>0.947156</td>\n",
" <td>-0.038199</td>\n",
" <td>0.204492</td>\n",
" <td>-0.055793</td>\n",
" <td>0.433811</td>\n",
" </tr>\n",
" <tr>\n",
" <th>56</th>\n",
" <td>(natural, cow)</td>\n",
" <td>(artisan)</td>\n",
" <td>0.250000</td>\n",
" <td>0.541228</td>\n",
" <td>0.151754</td>\n",
" <td>0.607018</td>\n",
" <td>1.121556</td>\n",
" <td>1.0</td>\n",
" <td>0.016447</td>\n",
" <td>1.167411</td>\n",
" <td>0.144509</td>\n",
" <td>0.237311</td>\n",
" <td>0.143403</td>\n",
" <td>0.443703</td>\n",
" </tr>\n",
" <tr>\n",
" <th>57</th>\n",
" <td>(natural, artisan)</td>\n",
" <td>(creamy)</td>\n",
" <td>0.238596</td>\n",
" <td>0.560526</td>\n",
" <td>0.121053</td>\n",
" <td>0.507353</td>\n",
" <td>0.905137</td>\n",
" <td>1.0</td>\n",
" <td>-0.012687</td>\n",
" <td>0.892066</td>\n",
" <td>-0.120993</td>\n",
" <td>0.178525</td>\n",
" <td>-0.120993</td>\n",
" <td>0.361658</td>\n",
" </tr>\n",
" <tr>\n",
" <th>58</th>\n",
" <td>(natural, creamy)</td>\n",
" <td>(artisan)</td>\n",
" <td>0.184211</td>\n",
" <td>0.541228</td>\n",
" <td>0.121053</td>\n",
" <td>0.657143</td>\n",
" <td>1.214170</td>\n",
" <td>1.0</td>\n",
" <td>0.021353</td>\n",
" <td>1.338085</td>\n",
" <td>0.216223</td>\n",
" <td>0.200290</td>\n",
" <td>0.252663</td>\n",
" <td>0.440403</td>\n",
" </tr>\n",
" <tr>\n",
" <th>59</th>\n",
" <td>(pale yellow, artisan)</td>\n",
" <td>(cow)</td>\n",
" <td>0.142982</td>\n",
" <td>0.655263</td>\n",
" <td>0.110526</td>\n",
" <td>0.773006</td>\n",
" <td>1.179688</td>\n",
" <td>1.0</td>\n",
" <td>0.016835</td>\n",
" <td>1.518706</td>\n",
" <td>0.177731</td>\n",
" <td>0.160714</td>\n",
" <td>0.341545</td>\n",
" <td>0.470840</td>\n",
" </tr>\n",
" <tr>\n",
" <th>60</th>\n",
" <td>(pale yellow, cow)</td>\n",
" <td>(artisan)</td>\n",
" <td>0.178070</td>\n",
" <td>0.541228</td>\n",
" <td>0.110526</td>\n",
" <td>0.620690</td>\n",
" <td>1.146817</td>\n",
" <td>1.0</td>\n",
" <td>0.014150</td>\n",
" <td>1.209490</td>\n",
" <td>0.155757</td>\n",
" <td>0.181556</td>\n",
" <td>0.173205</td>\n",
" <td>0.412452</td>\n",
" </tr>\n",
" <tr>\n",
" <th>61</th>\n",
" <td>(artisan, cow)</td>\n",
" <td>(creamy)</td>\n",
" <td>0.331579</td>\n",
" <td>0.560526</td>\n",
" <td>0.192982</td>\n",
" <td>0.582011</td>\n",
" <td>1.038329</td>\n",
" <td>1.0</td>\n",
" <td>0.007124</td>\n",
" <td>1.051399</td>\n",
" <td>0.055225</td>\n",
" <td>0.276035</td>\n",
" <td>0.048886</td>\n",
" <td>0.463149</td>\n",
" </tr>\n",
" <tr>\n",
" <th>62</th>\n",
" <td>(creamy, cow)</td>\n",
" <td>(artisan)</td>\n",
" <td>0.378070</td>\n",
" <td>0.541228</td>\n",
" <td>0.192982</td>\n",
" <td>0.510441</td>\n",
" <td>0.943116</td>\n",
" <td>1.0</td>\n",
" <td>-0.011640</td>\n",
" <td>0.937112</td>\n",
" <td>-0.088407</td>\n",
" <td>0.265700</td>\n",
" <td>-0.067108</td>\n",
" <td>0.433502</td>\n",
" </tr>\n",
" <tr>\n",
" <th>63</th>\n",
" <td>(artisan, creamy)</td>\n",
" <td>(cow)</td>\n",
" <td>0.306140</td>\n",
" <td>0.655263</td>\n",
" <td>0.192982</td>\n",
" <td>0.630372</td>\n",
" <td>0.962014</td>\n",
" <td>1.0</td>\n",
" <td>-0.007620</td>\n",
" <td>0.932660</td>\n",
" <td>-0.053843</td>\n",
" <td>0.251142</td>\n",
" <td>-0.072202</td>\n",
" <td>0.462442</td>\n",
" </tr>\n",
" <tr>\n",
" <th>64</th>\n",
" <td>(smooth, cow)</td>\n",
" <td>(creamy)</td>\n",
" <td>0.187719</td>\n",
" <td>0.560526</td>\n",
" <td>0.130702</td>\n",
" <td>0.696262</td>\n",
" <td>1.242157</td>\n",
" <td>1.0</td>\n",
" <td>0.025480</td>\n",
" <td>1.446883</td>\n",
" <td>0.240002</td>\n",
" <td>0.211648</td>\n",
" <td>0.308859</td>\n",
" <td>0.464719</td>\n",
" </tr>\n",
" <tr>\n",
" <th>65</th>\n",
" <td>(smooth, creamy)</td>\n",
" <td>(cow)</td>\n",
" <td>0.193860</td>\n",
" <td>0.655263</td>\n",
" <td>0.130702</td>\n",
" <td>0.674208</td>\n",
" <td>1.028912</td>\n",
" <td>1.0</td>\n",
" <td>0.003673</td>\n",
" <td>1.058151</td>\n",
" <td>0.034857</td>\n",
" <td>0.181929</td>\n",
" <td>0.054955</td>\n",
" <td>0.436836</td>\n",
" </tr>\n",
" <tr>\n",
" <th>66</th>\n",
" <td>(natural, cow)</td>\n",
" <td>(creamy)</td>\n",
" <td>0.250000</td>\n",
" <td>0.560526</td>\n",
" <td>0.135088</td>\n",
" <td>0.540351</td>\n",
" <td>0.964006</td>\n",
" <td>1.0</td>\n",
" <td>-0.005044</td>\n",
" <td>0.956107</td>\n",
" <td>-0.047423</td>\n",
" <td>0.200000</td>\n",
" <td>-0.045908</td>\n",
" <td>0.390676</td>\n",
" </tr>\n",
" <tr>\n",
" <th>67</th>\n",
" <td>(natural, creamy)</td>\n",
" <td>(cow)</td>\n",
" <td>0.184211</td>\n",
" <td>0.655263</td>\n",
" <td>0.135088</td>\n",
" <td>0.733333</td>\n",
" <td>1.119143</td>\n",
" <td>1.0</td>\n",
" <td>0.014381</td>\n",
" <td>1.292763</td>\n",
" <td>0.130499</td>\n",
" <td>0.191781</td>\n",
" <td>0.226463</td>\n",
" <td>0.469746</td>\n",
" </tr>\n",
" <tr>\n",
" <th>68</th>\n",
" <td>(buttery, cow)</td>\n",
" <td>(creamy)</td>\n",
" <td>0.163158</td>\n",
" <td>0.560526</td>\n",
" <td>0.107895</td>\n",
" <td>0.661290</td>\n",
" <td>1.179767</td>\n",
" <td>1.0</td>\n",
" <td>0.016440</td>\n",
" <td>1.297494</td>\n",
" <td>0.182083</td>\n",
" <td>0.175214</td>\n",
" <td>0.229283</td>\n",
" <td>0.426889</td>\n",
" </tr>\n",
" <tr>\n",
" <th>69</th>\n",
" <td>(buttery, creamy)</td>\n",
" <td>(cow)</td>\n",
" <td>0.131579</td>\n",
" <td>0.655263</td>\n",
" <td>0.107895</td>\n",
" <td>0.820000</td>\n",
" <td>1.251406</td>\n",
" <td>1.0</td>\n",
" <td>0.021676</td>\n",
" <td>1.915205</td>\n",
" <td>0.231338</td>\n",
" <td>0.158915</td>\n",
" <td>0.477863</td>\n",
" <td>0.492329</td>\n",
" </tr>\n",
" <tr>\n",
" <th>70</th>\n",
" <td>(buttery)</td>\n",
" <td>(creamy, cow)</td>\n",
" <td>0.203509</td>\n",
" <td>0.378070</td>\n",
" <td>0.107895</td>\n",
" <td>0.530172</td>\n",
" <td>1.402312</td>\n",
" <td>1.0</td>\n",
" <td>0.030954</td>\n",
" <td>1.323741</td>\n",
" <td>0.360195</td>\n",
" <td>0.227778</td>\n",
" <td>0.244565</td>\n",
" <td>0.407778</td>\n",
" </tr>\n",
" <tr>\n",
" <th>71</th>\n",
" <td>(pale yellow, cow)</td>\n",
" <td>(creamy)</td>\n",
" <td>0.178070</td>\n",
" <td>0.560526</td>\n",
" <td>0.100000</td>\n",
" <td>0.561576</td>\n",
" <td>1.001873</td>\n",
" <td>1.0</td>\n",
" <td>0.000187</td>\n",
" <td>1.002395</td>\n",
" <td>0.002275</td>\n",
" <td>0.156593</td>\n",
" <td>0.002389</td>\n",
" <td>0.369990</td>\n",
" </tr>\n",
" <tr>\n",
" <th>72</th>\n",
" <td>(pale yellow, creamy)</td>\n",
" <td>(cow)</td>\n",
" <td>0.124561</td>\n",
" <td>0.655263</td>\n",
" <td>0.100000</td>\n",
" <td>0.802817</td>\n",
" <td>1.225182</td>\n",
" <td>1.0</td>\n",
" <td>0.018380</td>\n",
" <td>1.748308</td>\n",
" <td>0.209946</td>\n",
" <td>0.147097</td>\n",
" <td>0.428018</td>\n",
" <td>0.477714</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"display(HTML(association_rules(frequent_itemsets, min_threshold=0.5).to_html()))"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "955d93ad-0a98-4420-9c8f-23c6c2155c7f",
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.13.2"
}
},
"nbformat": 4,
"nbformat_minor": 5
}