diff --git a/cookbook/1-RiskReturnModels.ipynb b/cookbook/1-RiskReturnModels.ipynb index 3da6e9e0..a1d46f4e 100644 --- a/cookbook/1-RiskReturnModels.ipynb +++ b/cookbook/1-RiskReturnModels.ipynb @@ -24,7 +24,7 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": 10, "metadata": { "colab": { "base_uri": "https://localhost:8080/" @@ -32,7 +32,53 @@ "id": "ajpb4cfuzzCd", "outputId": "c075b649-0764-4b2d-cd48-65d6a85e7003" }, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Requirement already satisfied: pandas in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (2.2.3)\n", + "Requirement already satisfied: numpy in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (2.4.2)\n", + "Requirement already satisfied: matplotlib in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (3.10.0)\n", + "Requirement already satisfied: PyPortfolioOpt in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (1.6.0)\n", + "Requirement already satisfied: python-dateutil>=2.8.2 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from pandas) (2.9.0.post0)\n", + "Requirement already satisfied: pytz>=2020.1 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from pandas) (2025.1)\n", + "Requirement already satisfied: tzdata>=2022.7 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from pandas) (2025.1)\n", + "Requirement already satisfied: contourpy>=1.0.1 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from matplotlib) (1.3.1)\n", + "Requirement already satisfied: cycler>=0.10 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from matplotlib) (0.12.1)\n", + "Requirement already satisfied: fonttools>=4.22.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from matplotlib) (4.56.0)\n", + "Requirement already satisfied: kiwisolver>=1.3.1 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from matplotlib) (1.4.8)\n", + "Requirement already satisfied: packaging>=20.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from matplotlib) (24.2)\n", + "Requirement already satisfied: pillow>=8 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from matplotlib) (11.1.0)\n", + "Requirement already satisfied: pyparsing>=2.3.1 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from matplotlib) (3.2.1)\n", + "Requirement already satisfied: cvxpy>=1.1.19 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from PyPortfolioOpt) (1.8.1)\n", + "Requirement already satisfied: scikit-base<0.14.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from PyPortfolioOpt) (0.13.1)\n", + "Requirement already satisfied: scikit-learn>=0.24.1 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from PyPortfolioOpt) (1.6.1)\n", + "Requirement already satisfied: scipy>=1.3.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from PyPortfolioOpt) (1.15.2)\n", + "Requirement already satisfied: osqp>=1.0.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from cvxpy>=1.1.19->PyPortfolioOpt) (1.1.1)\n", + "Requirement already satisfied: clarabel>=0.5.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from cvxpy>=1.1.19->PyPortfolioOpt) (0.11.1)\n", + "Requirement already satisfied: scs>=3.2.4.post1 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from cvxpy>=1.1.19->PyPortfolioOpt) (3.2.11)\n", + "Requirement already satisfied: highspy>=1.11.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from cvxpy>=1.1.19->PyPortfolioOpt) (1.13.1)\n", + "Requirement already satisfied: six>=1.5 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from python-dateutil>=2.8.2->pandas) (1.17.0)\n", + "Requirement already satisfied: joblib>=1.2.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from scikit-learn>=0.24.1->PyPortfolioOpt) (1.4.2)\n", + "Requirement already satisfied: threadpoolctl>=3.1.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from scikit-learn>=0.24.1->PyPortfolioOpt) (3.5.0)\n", + "Requirement already satisfied: cffi in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from clarabel>=0.5.0->cvxpy>=1.1.19->PyPortfolioOpt) (1.17.1)\n", + "Requirement already satisfied: jinja2 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from osqp>=1.0.0->cvxpy>=1.1.19->PyPortfolioOpt) (3.1.5)\n", + "Requirement already satisfied: setuptools in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from osqp>=1.0.0->cvxpy>=1.1.19->PyPortfolioOpt) (65.5.0)\n", + "Requirement already satisfied: pycparser in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from cffi->clarabel>=0.5.0->cvxpy>=1.1.19->PyPortfolioOpt) (2.22)\n", + "Requirement already satisfied: MarkupSafe>=2.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from jinja2->osqp>=1.0.0->cvxpy>=1.1.19->PyPortfolioOpt) (2.1.5)\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "[notice] A new release of pip available: 22.3 -> 26.0.1\n", + "[notice] To update, run: python.exe -m pip install --upgrade pip\n" + ] + } + ], "source": [ "!pip install pandas numpy matplotlib PyPortfolioOpt\n", "import os\n", @@ -44,7 +90,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 11, "metadata": { "colab": { "base_uri": "https://localhost:8080/", @@ -57,10 +103,10 @@ { "data": { "text/plain": [ - "'1.5.6'" + "'1.6.0'" ] }, - "execution_count": 2, + "execution_count": 11, "metadata": {}, "output_type": "execute_result" } @@ -78,7 +124,7 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 12, "metadata": {}, "outputs": [], "source": [ @@ -87,7 +133,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 13, "metadata": { "colab": { "base_uri": "https://localhost:8080/", @@ -99,7 +145,7 @@ "outputs": [ { "data": { - "image/png": "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JTw9PUvsU6lUIisry+RuKVuGrPfaGsWSn5+fcU5IWlqamD9/fqUvVzOsG3yK7v9r0qQJtmzZggcffBAAkJKSghdeeAG///57pXMaDAYIIUq9X794uxACTk5OFc65atUqCFH+WxYWFmZWX//Ny8sLL774IsLCwtChQwccOXIE33//PT777DOz8nTo0AGrV6/Ggw8+aOyzQqHAX3/9hdDQULO/txqNBosWLcL06dOh1WrNOrY0rq6ueOKJJxAbGwsAmD17NlxdXY379Xo93nvvvQo/+nvQoEEIDQ1F9+7dsWPHDqxatQqxsbEoKiqyqJ9z5szBm2++iZycHFy8eBEAcN9998HLywsLFizAW2+9VaE8BoPB+N+lfYYq83m8m8DAQKhUKrz88suoVasWdu7ciWeffbZCx3br1g2//vqrSZ+9vb0xfPhwhIWFoX379jh9+jTatGlT4f4EBwdXqN2+ffsqnBMAPvroI4SHh5f6/nz66acIDw+vcK5evXph+/btZe4PCAjA119/jaeeesqsPlqbJe91cHAwDh48aPJeW0qr1SIlJQVRUVHYsmULdDpdqe1OnTol7TWpcliE/L8NGzbgoYcewgcffIDCwkJMnToVbm5u6NixY6VzBgQEVKjd5cuXK/0a1taqVSuoVCq8+OKL8PX1rVSONm3aoHnz5lAoFEhISMCJEycqladbt27Yv39/ie1NmzaFu7s7zp49W6ECrdirr76Kvn37on///gAAtVqNM2fOoKCgAADQsmVLfPrppxUuvgwGAy5fvoy1a9ciPT29zHaLFi2qcB+Lde7cGcOGDUPz5s0BAImJiYiJicHhw4crnMNav4TL4+DggH79+iEsLAzPPfdchY7R6/Vo0KABbty4Uer+Nm3aICwsDK+//rrEnlZeUFAQhg8fjmbNmhk/599++y2OHj1q665VKQcHBzzzzDMICwurcBHy8ssvV6idOYtFllZw3/nHoMyCmyqPRcj/u3btGgYOHIiDBw8CAPz8/HD16lV4e3sjPz/fxr37x2OPPYbDhw+XWdm7urpi8ODBFq3uWhonJydpq2kqlUoMHz4cKpUKQUFBZvVhxowZaN++PX777TfMmTMH0dHRGDx4MADg/Pnz6NOnDy5dulShfPv27cMnn3yCbdu2AbhdhLRp0wbJyckAgOHDh2P8+PF49NFHK5QvOTm53CJI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", + "image/png": "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9913S8mSJd32+Z///EdN1XzyyScqyMHUjTP8niJFiuT6OYyy9OzZU15//XVf7wYREVEBrZhaSMKFz2eKIANpsjkDEDMI2bJlS67ME4xslC1b1uMIB7JhMjMzVfBSoUKFXA2pwJ4899xzYreH0+ATERGRe+beMYG2AjsSgtEKT5o1a+ZI082ZrusMUyjOt//+++9e/W53tUiqVaum0m+JiIgovHADOyIiIouwi021QPsIFwxCiIiILCJbw3RKOE3HhM+ZEhERUYES8SMhRf5Kl+hofUNXmfF6H9IOnXqKbiuWz9feZ8eOfxeu08V2Xv86n8yKuRdTByKtQTnRLRhfYIr+rneLgvPVS4huF0tEae8zbkPuTTUDUahEcdEt9sQFvR1e1P93Yy9SSnufhb7fqbU/e4OaevvLDt3382wNFU/DqWJqxAchREREVmE3bKoF2ke4CJ9wiYiIiAoUjoQQERFZhF3DdEw4FStjEEJERGQRdqOQaoH2ES7C50yJiIioQAk4CMEOtjabzdHKlCmjyq9v374917EPPvigREVFqX1icho7dqxLPygLf+ONN8qaNWvc/t7k5GTVF/adISIiKgiyxaalRdRICIKOo0ePqrZq1Sq1R8xtt93mcsz58+dl4cKF8sQTT8isWbPc9lO/fn1HPxs3bpQrr7xS9ZOSkpLrWPSRV19EREThOh1jD7CFCy1nGhsbK+XLl1cN+8KMGjVKDh06JMePH3ccg9GPevXqqdvWrl2rbs8JwYvZD47F5nRpaWmye/dul+MwOnLhwgV1OzbL27Bhg467QURERPlIe7iEoOGdd96RmjVrqqkZ5913e/XqpaZZOnbs6HYzOmfYlG727NlSsmRJqV27tstt6KtHjx5SuHBh9X9cJiIiCnfZWqZkJLKyY5YtWybx8fHq3+fOnZMKFSqo6woV+jvG+e233+Tbb7+VDz74QF1GMDJ8+HB5+umn1foP008//eToB9M3xYsXl0WLFkmJEv+r0IiRj/fee09N15h9Ye3IpEmTHD/rKahx3m0X/RAREVmJndkxvmvdurVs27ZNtc2bN0v79u3VaMeBAwfU7Vi3gevKli2rLt96661qncdXX33l0g9GPMx+vv/+exk0aJDcfffdsmXLFscxCxYskCuuuEIaNWqkLmP6p2rVqipYyQsWsmIUxmyJiYk67joRERGFMggp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H9MjWJCK6R2sJenVq5fH34m5sGeffTbo50NEROQ3Q8PeMX78PJZHHD9+XEaPHq2mVLDucsWKFY7FqgcPHlQZMyasN/n888/lsccek6uuukrVCUFAgoGIoAUhyIbBlAcWgzrD6AQgUwUw3QKIplq2bJmrH1xfr149x7EYvThy5IhUrFjR5TjMK+3du1dat26tLl955ZWyfv16NX1j5iWjMAra4cOH8zx3RHCI9EwYCcGDSERERCJDhgxRzZ3Vq1fnug5TNVirGQifpmPKlCmjKqRNmTJFDdN40q5dOyldurRK18kJGS2//fab9OjRQ13u2rWrCijcHYtVtvg95rH4f1pamkybNk18hbmwnPNjREREllyYagTYwoTP0zEIALAg5dprr5WxY8eqYRgM0Xz33XcqDReLW7Bo9c0331Rptg888ICKrPChj0Uu//73v+Wuu+6Sbt26OTJbkPGCbBjUEundu7cKSj766CN58skn1fXIjDGjLlxGQ3nYf/3rX2o04+jRozJz5kw1SuM8XERERBRObMbfLdA+CmwQcsUVV6jaIFiAgikOTINglAHTK8hwMTNXEGigPsiLL74oN954o1y8eFFNpyCPGOm4zpksuIwpnVdeeUWl36L4Sf369VXxM3NRjAnHNGvWTN2GsrEojoY5q5tuuknVK+EIBxERUXjwa2EqMllQYAwtLwg+sLDFG1hciuYNjKKYIylEREQFhhGahamhwg3siIiICmCxsnDABRREREQUEhwJISIisgojsqZjOBJCREREIRHxIyHFD2VJdOEssaqY7P/V5del6O/6S9aXn3paa3+n91bV2p/qs4HerwdFD+uP4ZuMc78vUiC2Pul7XZ281Jw/SHS7cu4p7X2m1C+ptb+4w/rfJwzN+12lldf/lp5ZQv/6gqiMolr7052SGtIUVyOyRkIiPgghIiKyDCOyghBOxxAREVFIcCSEiIjIKozIStFlEEJERGQRtggr287pGCIiIoqsIKRv375yxx13OP6NvWTQYmJipGbNmvLcc89JVlaWYwth3FaqVCm1B40zbJxn/iwREVGBWJhqBNjChGVGQjp06KB2w/3tt9/ULrnYofc///mPyzHFixeXpUuXulyH3XOxEy8RERGFF8sEIdiJt3z58lK1alUZNGiQtGnTRj7++GOXY+677z61c67pwoULsnDhQnU9ERER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l6CzYcOGKrgzd9M+efKktGjRwqcPpilTpqi/4aFDh7p9nWPUAiNWTz31lFf9IcjA6wOPG4IR87lBP/369VMf2Phi461atWpd8ktLoKMQOp7rS52jr9Af9gbD32Tnzp3V3yRZFEZC6NK2bdtmFCpUyKefGTx4sHHLLbe4vc1ut6vbhgwZEvC57dy507jjjjuMqKgoo0+fPsb+/fv96mfjxo3GgAEDjBIlShgNGjRQ/a1du9avvmrUqGH8+OOPHm/fvn27Ub16dZ/6PHfunPHwww8bcXFxxvPPP29kZ2cbgbDZbMaff/7puBwfH2/s3bvXcfnYsWM+Pef16tUzypQpYwwbNizP++6LOnXqGD/88IPHc/z222+NKlWq+NTnhQsXjP/+97/q9Ve0aFGje/fuxhdffBHwuR49etRITk42atasaVx++eXqtR0dHW388ssvfvW3efNm44EHHlCvxyZNmhivvPKKek362583zzeO8UWjRo2MlStXerwdtzVu3NinPnH/rr32WqNChQrGkiVLjEceeUQ9jkOHDjXOnz/vdT+4L5MmTTLmzJmTZwv1c43zvPXWW40777wzz+br+b300ktG7dq1jXLlyhmPP/648euvv/p8bhR8DA//gW+Tefnjjz987nP16tWSnJzsMVJ/9NFHJSkpSfx15MgRVYZ47ty50r59ezV036BBA5/7wagFvlFj+LhHjx7qmw2mSQoXLixlypTx69zweGHqwBOMGPgyvQNFixZV37AwVI0prk8++URGjRqVax1Dly5dJBR++eUX2bRpk2OarWbNmuo8Mdrg7y6gmMZzHk5HxkPZsmVdvt1jyN0X2KWzV69eqv3+++/qHDt06KCmN0qXLu3XeeLbJl43nTp1UtNs6A/PC6YO/HHVVVepEYR7771XNmzYIPXr11fX4/kOJl+/ke/du1euvPJKj7fjNhzji3r16sm3336rXjfdu3dXr/uVK1fKzTffLL665557tE5zBOO5BrxXFClSRNs5li9fXo0qoa1fv15mz56tRqTx2OL1joZRJbKAfAh0wkK1atW8ar4oXry48fvvv3u8fd++ferbmK/OnDljPPHEE0aRIkWMFi1a+D1aYcK3yyeffNLIyspyuT6Qb7GVK1c2PvvsM4+3f/rpp+oYf3300UfqvPEtyrn5MnKB41988UX1bRENIyzPPPOM4/IL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", "text/plain": [ "
" ] @@ -109,7 +155,7 @@ }, { "data": { - "image/png": "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uXJltGjRArt378aePXv0Iy/t2rWDs7NzketawsPDMWzYMABA3759kZiYiBMnTkjpV1hYGDw8PPTh6+srJS8RERFZnvSCZdeuXahcuTICAwPRoUMHxMfH4/r169i9e7f+OpbOnTsjMTERly5dMjh269atqFy5Mjp27IiQkBBpoysAoFarkZ2dbRBEREQ2RUDCCIu1T8IypN/WXFiIBAUFwcvLC7t37wYAXLlyBZcuXcLTTz+NoKAg7Nixo8ixOp0OK1euxPTp09G2bVu88sorsrtHRERku7jSrVEWWThu586d6Ny5Mzp37oxdu3bpt+/Zswfdu3dHmzZtikwHFQoPD9dfqJuRkWGJ7hEREdEDxiILx+3cuROLFi2Cg4ODfoQFAHbv3o2FCxfCycnJaMFy9uxZVKtWDXl5eZboGhERke0qKLgT5uaogCxWsLi6uuLMmTO4evWqfvvu3bvh4eGBs2fPIi0tzejxN2/etES3iIiI6AFlkYIlOTkZCoWiyPaLFy8Wu71Bgwb3zefl5VXs9nsXmiMiInqg8RoWo/gsISIiIlvBgsUoPq2ZiIiIbN5DP8LifC0fBbkqa3fDKO/d16TnvN6uhvScOXWLTvWZwyNJ/kVjThlyc15t5SA1HwDU25whPee/vatIzVflvPz3xuVKvvSc2Q3cpOZLeUH+efuHF/8okbLKrusoNR8AOGXKP++urw6Vmu/39RFS80FRGcD7cnOWloyl9Svo0vwPfcFCRERkK4QogBDmFYnmHm+rOCVERERENo8jLERERLZCSJgSqqAX3bJgISIishW8S8goTgkRERGRzeMICxERka3g0vxGWWyExc7ODvv378f69esNtnt4eODixYv47LPPAAA9evTArl27kJWVhdzcXBw+fBhDhxre8lavXj0IIaDValG7dm2DfT4+PtBoNBBCoF69epY6HSIiIssrnBIyNyogixUsBQUFGDZsGLp164bXXntNv33BggW4efMmpk+fjnHjxmHjxo3Yv38/2rZtiyeffBKrV6/Gd999h6+++qpIzpSUFAwZMsRg29ChQ5GSkmKp0yAiIiIbYNFrWBISEvDhhx9iwYIF8PHxQe/evTFw4EAMGTIE3t7emDNnDubNm4ePPvoIZ86cQWJiIubOnYv33nsPkyZNQps2bQzyRUREFHl+UHBwMCIiJC8aREREZAWioEBKVEQWv+h2wYIFOHHiBFauXIklS5ZgxowZOHnyJPr27QtHR0fMnj27yDHff/89srOzMWjQIIPtmzZtgpeXF9q3bw8AaN++Pby8vLB58+YS++Ho6Ah3d3eDICIisimcEjKqXO4SGj16NJ577jmkp6dj5syZAAB/f39kZGQgLS2tSHuNRoMLFy7A39+/yPbIyEiEhIQAAEJCQhAZGQmNpuTlrUNDQ5GVlaUPTiMRERGZxsvLC5GRkcjMzMStW7fwww8/wM3N+GMwvLy88M033+Ds2bPIy8tDcnIy5s+fDw8PD5Nfu1wKlpCQEOTm5qJBgwaoU6eOWbnCw8PRr18/eHt7o1+/fggPDy/VcWFhYfDw8NCHr6+vWf0gIiKSrvBZQuaGhaxatQpPPPEEnn/+efTs2RMdO3bEkiVLjLavXbs2ateujUmTJqFp06b6a1uXLVtm8mtbvGBp164d3nnnHfTs2ROHDx/WdzI+Ph5VqlRBrVq1ihzj4OCARx99FPHx8UX2nT59GmfPnkVUVBTOnDmDuLi4UvVDrVYjOzvbIIiIiGyKEIAoMDPuFCz3Xgbh6GjewzGbNGmC7t27Y/jw4Th8+DD279+Pt956CwMHDiz2dzkAxMXFoW/fvtiyZQsuXLiAnTt34qOPPkKvXr1gb29v0utbtGBxcXHBihUrsHjxYuzatQtKpRJt2rTBqFGjsH79eqjVarz77rtFjhs1ahQqV66MqKioYvOGh4cjKCio1KMrRERED5uUlBSDSyFCQ0PNyteuXTvcunULx44d02+LjY1FQUEB2rZtW+o8np6eyMrKgk6nM+n1LbpwXFhYGBQKBT788EMAQHJyMiZNmoTZs2cjOjoa77//PubMmYPbt29j5cqV0Gg0eOmll/DFF19g9uzZOHz4cLF5ly5dinXr1iEjI8OS3SciIipXokBAmDmlU3i8r6+vwWyCSqUyK6+Pjw+uXr1qsE2n0+HmzZvw8fEpVY5q1aph6tSp951GMsZiBUvHjh0xduxYdO7cGfn5+frtS5YsQZ8+fbBs2TI899xzuHDhAiZNmoS3334b9vb2iIuLw+jRo7FixQqjuXU6HW7cuGGprhMREVlH4bSOuTmAUl/+EBYWph9YMKZJkybm9Ql3pqi2bt2Kf/75B9OmTTP5eIsVLHv27IGDg0Ox+7p166b/782bN5d4W3JycjIUCoXR/SdOnLjvfiIiIirenDlz7jtIAAAXLlxAWloaatasabDd3t4eVatWLfaO37tVrlwZ27ZtQ3Z2Nl555RVotVqT+8lnCREREdkImVNCpXX9+nVcv369xHYHDhyAl5cXWrZsib/++gsA8Oyzz8LOzg6HDh0yepy7uztiYmKgUqnQu3fvMk9N8WnNREREtsLsO4QkTCkZcfbsWURHR2Pp0qUIDAzE008/jYULF2L16tW4cuUKgDu3MZ85cwaBgYEA7hQrv//+O9zc3KBUKuHh4QFvb294e3vDzs60EuShH2FxcTXvNi9Ls7PA7fRuzvLPWTjJnZJzc5b/D87RRW5ONyf5/3xc3Zyk53Rzkvt+u0n+PgKAq2vJiz+aSuci97wrO5h2R0NpuLrK/QeutsC/bUe1/PfbxVVyTkVlyfmML4Rmaa4eLjaRw5jBgwdj4cKF+OOPP1BQUID169dj/Pjx+v0ODg5o0qQJXF1dAQAtW7bEU089BQBITEw0yFW/fn0kJyeX+rUVACrmGr4lqF27Nle7JSIio3x9fZGamlour+Xk5ISkpCSj65mY6sqVK2jQoIHZdwbZkoe2YAHuFC0lXUHt7u6OlJSUIreHmUN2zgehj5bI+SD00RI52Ufbzck+2m5OU/O5u7uXW7FSyMnJyezF3Qqp1eoKVawAD/mUkCkfRkusjis754PQR0vkfBD6aImc7KPt5mQfbTdnafNZYzV0lUpV4YoMmXjRLREREdk8FixERERk81iwlEClUmHatGlSh+lk53wQ+miJnA9CHy2Rk3203Zzso+3mtEQfqXw91BfdEhER0YOBIyxERERk81iwEBERkc1jwUJEREQ2jwULERER2TwWLEREFdDUqVPh4mK5Z8oQlTcWLKXk6emJQYMGWbsbRESl8sknn6ByZckPBbSADh06wN7e3trdoAcAb2supSeffBJ//fUXKlUq29MMWrVqhfr160MIgaSkJPz999+Se2hZdnZ2KCiwzCPLreW9997DggULcPv2bQDA008/jaNHj0KtVgMAKleujFmzZmHs2LGlyvfGG2+Uqt3KlSvL1uH/90mh+O/J2AUFBcjNzS3VsVqttlTtyvoZL8kTTzyBuLg4KbkUCgVefPFFbN26VUo+W1GjRg1cu3btvm2eeeYZ7Nu3r8RcOp0OPj4+JeazBFPea61Wi1q1akntZ926dUvV7tKlS9Jek8qHYJQcTz75pNBqtSYf17lzZ5GYmCi0Wq3Q6XRCp9MJrVYrEhISRIcOHUzOV3j8/UKj0Ug770aNGolZs2aJ1NRUk45r2bKl2LFjh3B3dy+yz8PDQ+zYsUM8+eSTJuWcNWuWcHBwkHZuWq1W1KhRQ/91ZmamaNCggf7rmjVrmvSe63Q6kZmZKW7cuCFu3rxZbNy4ccOkPjZv3lxs3bpV/3VWVlaR97p169al7t+FCxfEJ598Inr37m00ZH1/AYjKlSuLESNGiEOHDpXp38+98eijj4rPP/9cpKSkCLVabdKxd7/XxYW9vb0IDAw0KWeVKlXEuHHjjH7Oje0zFunp6eLVV18tdp+zs7OYP3++UKlUpX6/q1evLvX9tMR7rdPpSnxvTI27/43c/XP37m0yPo+Mcg+rd+CBiLIULI8++qjIyckRf/zxh+jdu7fw9/cXjRs3Fq+88orYuXOnyM7ONvgFWZq43y+asLAwkZubK/Lz8806VxcXFzFs2DCxZ88eodFoxIEDB8SkSZNMyrFq1SoxZcoUo/tDQ0PFypUrTcp5/vx5cfLkSdG8eXMp7+m9PyizsrLMKlhOnz4trl27Jr7++mvRrFkzKX384YcfRGhoqEEfBw0aJDp27Cg6deokIiIixI8//liqXK1atRLffvutuHnzpjh27JgYO3asqFKlipR+3hsdOnQQK1asENnZ2eLcuXMiLCys1IXVveHs7CzeeOMNsXv3bqHVasXOnTvFyJEjRc2aNU3Kc2+BevLkSVGnTp0yv98AxJQpU8TatWuN7l+zZo2YPHlyqfNNnDhR5Obmip9++sngvXnmmWdEQkKCOHfunHj66adLlUun0+mL5PuFtd9rSxRWGo1GJCUliU8++US0bNlSPPnkk8WGzNdklEtYvQMPRJSlYFmwYIGIjY01uj82NlZ88803ZvfN399f/PLLL0Kj0YgVK1YIPz+/MuVp27atWLp0qcjIyBAnT54UGo1GPPPMM2XKdf78+fv+0m7atKlITEw0KaeLi4tYuHChyMvLEx999JFQKBRmfd9kFywARJs2bcR3330nbt26JY4cOSJGjRpl0l/Y98Y///wjAgICjPaxTZs24t9//zUpp5OTkxg8eLCIjY0VOTk5IioqSjz33HNmfw69vb3FBx98IOLj40VaWpr45ptvhFqtFo899liZ8rVu3Vp89913IiMjQxw7dkxMnDhRaDSaMucrzfut0+lMyvn333+LZ5991uj+Z599Vvz1118m5XzsscfE4cOHRUpKinj11VfFvHnzhFqtFvPnzxfOzs4mne9bb70lhgwZct+w9nut0+nEli1bxPr16+8bpvbv/fffF2fOnBFXrlwRX331lWjSpInZn3GG1cPqHbCJeOutt+4bM2fONPmX16lTp0TPnj2N7u/Zs6c4depUmftcq1YtsWTJEqFSqcSmTZvEE088UaY8EydOFKdPnxaXLl0SX375pf4vD3N+2eTn54v69esb3V+/fn2Rl5dXptyF02wHDx4UL7/8sujVq5dBlDaPJQqWwigcFdixY4fIyckRkZGRwtHR0eQ8ubm5wtfXV//1hAkTDAqgunXrmjWiVr9+ffHHH38IrVYrvLy8ypxn06ZNIiMjQ6xatUq8+OKLws7OzqzP0IkTJ0RSUpL4/PPPxeOPP67fbs5n0hLvd1ZWlqhbt67R/XXr1hWZmZkm99XOzk5ERUUJrVYrsrKyRMeOHc0+X1kh+73W6XQiKipKhIeH3zfK2t/27duLH374QWRmZooDBw6I4cOHm/3HDsNqYfUO2ERcuHChVGFKzszMTFGvXj2j++vXry+ysrJM7quHh4eYOXOmyM3NFfv37y/zKEhhaDQa8dlnn+l/8BSGOb8cLl68KF544QWj+7t16yYuXrxY5j736tVLaDQa/fz03fPUpc2h0+lEaGiovijNy8sT06dP1389efJks+e5O3ToIHbs2CG0Wm2Zpl9u3Lhx3ymAp59+ukzD+r6+vuKjjz4SCQkJIiUlRYSFhQl7e3uzPkNz5swRDRs2lPIZun37toiIiCgy8mNrBcutW7dE27Ztje5v27atuHXrlkk5K1WqJD7//HOhUqnEqlWrxI0bN8S2bdsMCtfSxL1TYLJC9nttqcLq3qhZs6aU4pxh1bB6BypslPQPsSw/IN977z1x/fp1cfr0aWkXSH744Yfi3LlzIjk5WcycOVM/UmPOL4fw8HCxZ88eo/v37t1bpr+aCi88zM/PFx9//HGRIsuUSEpKkl6kAhC1a9cWoaGhIj4+XqSkpIhZs2aJxo0bl6mPsbGx4ssvvzS6f/bs2feddrw7HBwcRP/+/UVMTIzIy8sT69evFz169DDre1gYbdu2FUuWLBGZmZni4MGDYuzYsaJatWpl/gzVrl1bTJ48WSQkJIjLly+Lr776SgQEBAiVSlXmz6RWqxWPPPKIcHd3Fx4eHiIzM1M0a9ZMuLu7C3d3d9GwYUOT/z3u2LFDhIWFGd0/c+ZMsWPHjlLna968uTh58qRITEwUnTt31n8vtm7dKm7duiVCQkJKnctShYDs99pShVVhtGvXTj/VfejQITFy5EiOsDy4YfUO2FQ0bNhQPP7442b9tVkYOp1OdOrUSTRr1qzYCAoKMvkHpE6nEzk5OeLXX3+VNt9bGB07dhQrVqwQOTk54vjx40Kj0ZT6Ar9745FHHhG3bt0SBw8eFP369dNf5Na/f39x6NAhcevWLfHoo4+alLNdu3YiPj5enDp1SrRs2dLqn5V7o1+/fuK3334Tubm54pdffhG9evUyuxjo06ePUKvVYsyYMQY/ZO3s7MS4ceOESqUyelfJvXH9+nWRlJQkpk2bJh599FH9L+p7w5z+urq6iuDgYLF3716hUqmEVqsV48ePF5UrVy5zzqCgILFy5UqRm5srdDqdmDVrlmjUqJHJeYzdKWLOnSOF78/YsWMN3uuyvD/AnZGl77//Xri5uRXZp1QqRUZGhsFdY9YMWe+1JQorHx8f/TUsaWlpYs6cOWWeMmfYTnAdlv+rX78+Nm3ahMcffxwAkJKSgldffRVHjx4tc06dTgchhMG6GYUKtwshTFr3Yvny5RCi5LcsJCTEpL7erXLlynjttdcQEhKCVq1a4fDhw/j555/x9ddfm5SnVatWWLFiBR5//HF9nxUKBf755x8EBweb/L1VqVRYsGABJk+erF8rxRxOTk547rnn9Gt5fPHFF3ByctLv12q1+Pjjj6FSqUqVT6fT4eLFi1i1ahXS09ONtluwYIFJ/Zw5cybee+89ZGdn48KFCwCARx55BJUrV8bcuXPx/vvvl7p/hYr7DJXl83g//v7+UCqVeOONN1ClShVs374dL730UqmO7dChA/7880+DPnt4eGDw4MEICQlBy5Ytcfr0aTRv3rzU/enYsWOp2u3Zs6fUOQHgs88+Q2hoaLHvz1dffYXQ0NBS5+rWrRu2bdtmdL+fnx9++OEHdO3a1aQ+Wpo573XHjh2xf/9+g/faXGq1GikpKYiIiMCmTZug0WiKbXfq1Clpr0mWx4Ll/9atW4cnnngCM2bMwO3btzFp0iQ4OzujdevWZc7p5+dXqnYXL14s82tYWtOmTaFUKvHaa6/B29u7TDmaN2+ORo0aQaFQID4+HidOnChTng4dOmDv3r1Ftjdo0AAuLi44c+ZMqYq5QiNHjkSPHj3Qu3dvAEBWVhbi4uKQn58PAGjSpAm++uqrUhdqSUlJJb6+EAKPPvpoqftYqG3bthg0aBAaNWoEAEhISEBUVBQOHTpU6hyW+oVdEjs7O/Ts2RMhISF4+eWXS3VMSYuJNW/eHCEhIXj77bcl9rTsAgMDMXjwYDRs2FD/Of/pp59w5MgRa3etXNnZ2aFXr14ICQkpdcFiiQUXiyvO7/3DUWZxTuWDBcv/XblyBX379sX+/fsBAD4+Prh8+TI8PDyQl5dn5d7955lnnsGhQ4eM/sXg5OSE/v37m7WaanEqVapU6pVSS+Lu7o7BgwdDqVQiMDDQpD5MmTIFLVu2xMGDBzFz5kxERkaif//+AIBz587hxRdfRHJycqny7dmzB19++SW2bNkC4E7B0rx5cyQlJQEABg8ejLFjx+Lpp5828QwfPsuWLStVO6VSWap2llildfr06Zg5c6a+IK1SpQoyMjKk5S+Oj48PPvroI7z11lulat+rV69it2dmZiI+Ph5paWkyu2cRpq5CrNPpkJOTA61WW+xoNHCnuKhWrVqp+1AR/likoliw/J9Op0OtWrVw9epV/bbs7Gw0a9YM//77b5lyWmJ5aJ1Oh8OHD+OVV14p9odXzZo1kZqaavJfDpUrV4a/vz/OnTuH3NxctGjRAhMmTICLiwt+/fVX/PTTTyblK07nzp0REhKCPn36IDMzExs2bMC4ceNKffzs2bPxxhtvYOPGjXj22Wdx+vRpNG7cGJ988gkKCgowdepUnDp1Cq+//nqp8qWmpqJdu3b6Aufq1asIDAzUf92oUSMcOXIEVapUKVU+2VNMd2vdujUGDRoEf39/AHeKs6ioKBw7dqzUORQKBd577z307t0bjo6O+OOPPzB9+nT9ownModPpkJycjL///vu+v3ReffXVUufz9vbG9evXze5boXtHbTIzMxEQEKAvUMvq8ccfR1BQEFQqFdatW4fMzExUq1YNH330EUaNGoULFy6gadOmpcp1v2kRIQRWr16NESNG6IsuW/Loo48iJCQEw4YNQ40aNeDo6Fiq406fPg1vb29ERkYiPDyc0zR0X1a/kMYW4u47CArj3rsITL0g0RLLQ+t0OnHixAlx+fJl0aZNmyL7y3LnUYcOHURmZqbQ6XTi+vXr4vnnnxeZmZnin3/+EadOnRJarVYMHz68TN/Xu+/2uHbtmtBqtaJ///5lyvXvv/+K7t27C+DOIwN0Op3o1q2bfn/Hjh3FpUuXSp0vLy9P+Pv7G93fuHFjk9Y4GTlypNi0aZP+66ysLHHgwAGxY8cOsWPHDpGamireeecdk8971qxZ+mX///77b/H333/rl+ifOXNmqfNMmTJFaLVasW3bNrFhwwaRl5cnli1bVqb34t5YuHChuHHjhvjrr7/EW2+9ZfZto5ZYTKyk25rLEr169RIqlUr/7zshIUF07txZXL16VURHR9/31n5TwsPDQwQFBYl//vlHfP7551JyyghZqxDLXnCxMFq3bi3mzJkjNm/eLDZv3izmzJkjWrVqZfXvG6PMYfUO2EQU94yeu7eVpbiwxPLQWq1W1KlTRyxZskTk5eWJYcOGGewvS8Gye/du8cMPP4jatWuLKVOmiJs3bxr8UPzoo4/E33//bVLOPn36iK1bt4rs7Gyxdu1a0bt3b+Hg4GDWrdJqtVrUrl1b/3VeXp7BWhA+Pj4mPUcpPj5e9OnTx+j+fv36iYSEhFLn27Nnj8FCgff+Qhw8eLD4888/TTrnIUOGiLy8PDF27FhRqVIl/fZKlSrp14554403Sn2+b775pv7rLl26iNu3b0u7xdPR0VEMHDhQ/P777yInJ0esWbNGdO3atUy5LLGYmCUKlkOHDom5c+cKNzc38fbbbwudTidOnjxZ5scQlBQvvPCCOHPmjEVymxKyVyEuDFkLLgLyCn2GTYXVO2AT0bFjx1KFKTktsTz03T90R48eLW7fvi3mzZun/6VT1sWvCtcJcXBwEFqt1qCQevTRR01e4K5wMbp7b3G0pYW/5s2bJ06fPi2cnJyK7HN2dhanT58W8+bNK3W+1NRUg4UCr169avB1o0aNREZGhknnfOjQITFhwgSj+9955x1x6NChUuW6ffu2wbNzgDsrEpu6IFlpws/PT3z88cfi/Pnz4t9//y32Nl1T3msZUdI6LGUZRc3IyNDfnm9nZyc0Go3o0qWL9O9nYdSrV09kZ2dbLH9pwhKrEN8b5i64KLPQZ9hUWL0DD0yYM8wta3noe3+Qd+jQQaSlpYnt27eLKlWqlKlgscQKoIXDu/v27RMjR47U/9Axt2B5/fXX9Uvw5+TkiOHDh+u/fuONN0zqZ82aNUVqaqr4999/xaRJk/QPkXzvvfdEcnKySElJMWloW/YUEwCRk5Nz31GABg0aiJycnFLl0mq1RR4yl5WVdd9HKJQ16tSpI6ZOnSoSExPFpUuXTC5YLLGYmCXWYbHEqM39IigoSJw7d85i+UsTlliFGJC74KLMQp9hU2H1Dth8PP/882LNmjVlfvbN3WHu8tDF/eVZt25dcfToUZGQkCCee+45k3/o3vuLLDMz0+CXWFmfqePs7CyGDBkidu3aJfLz88Wvv/4qNBpNmRdwuncZ/uLC1H7Wr19fREdHF7nOKDo62uRfPLKnmArfi/v90Pb39y/1s2qKuy5ErVaLbdu2mb3oIGA4JZSXlyfWrl0runfvLqUwlxGWGEUtqYg29flW94vmzZuLY8eOiblz50r9vpgaslchtsSCizILfYbtBO8SMsLPzw8hISEYOnQovLy8EB0djfXr1+Pnn38uU7527dohJCQE/fr1w7lz5xAeHo4lS5aYtG4IYPx2TycnJyxbtgx9+/ZFpUqVTLpLSKfT4fTp0/rblp988kmcPXtWvzhbpUqV8MQTT5i1ZkHDhg0REhKCIUOGoHLlyti6dSt+/vlnbNiwocw5ZfLy8kLDhg0BAOfPn8etW7dMzjFv3jw899xzaNWqVZE7gZydnXH06FHExsZiwoQJpc65c+dO7N27Fx9//HGx+z/99FM888wzCAoKKjGXJRcdXLRoEQYOHIhLly4hPDwcq1atwo0bN0zOU8gSi4nZ2dlh0qRJUu+SKk3/TFnv4+bNm8W+R25ubqhUqRK2b9+O/v37Izs72+S+WkJQUJD+zj9nZ2fMnj0bP/zwAxISEkqdwxILLmZmZqJNmzY4d+5csfv9/f1x5MgReHp6ljonWR8Llrs4ODigT58+GD58ONq3b4/Y2Fh0794dLVq0wOnTp03O5+PjgyFDhiA4OBheXl5YtWoVwsPDERcXV+Y+7tixA6+88goyMzOL3T9p0iSMHj3apMXJjP0yvNeMGTNKndOYwjUahg8fju7du8PZ2dnkHFWrVsXNmzcBAHXq1MGIESPg7OyMzZs3Y9++fWb3saxq1qyJ48ePQ61WY+HChYiPjwcANG7cGOPGjUOlSpXQokULg1vnS9KjRw/8+uuvmDt3LubMmaM/1tvbG++++y4mTJiAV155pdRrXlhK4S+dv//++75FUWlva966dSsGDRqErKwsAMAHH3yA7777Tv+5r1q1Kvbu3Ysnnnii1H2cMmUKpk2bhtjYWOTn5+OFF15AVFRUqdeGKSsXF5dS34Y8ZMiQYrdnZWXh3LlzOHPmjMyuSePp6alfHdvUVYgtseCizEKfbAcLlv/75ptvMGjQICQkJCAyMhKrV6/GzZs3oVar0bx58zL9oODy0MUXFy4uLti8eTPOnj1r0sJgTZs2xebNm1G3bl0kJCRg4MCB2LZtG9zc3FBQUAA3Nzf07dsXGzdutNTplKh+/fpYvHgxnn/+ef16JEIIbN++HWPGjCnTmh/jxo3D7NmzUalSJf0vbE9PT2i1Wrz//vv45ptvSpVn/fr1JbbRarVIS0vD9u3b9QvqlYbs0ZuS1kwpy3pD8fHxmD17NpYsWQIA6NKlC7Zu3QoXFxeTRzpLw9HREWPHjsX777+PWrVqSc9vq0xdhbh+/fplXuvKmAel0CfTsGD5P41Gg1mzZmHmzJnIycnRbzenYLHE8tCWWIzufsq6Kq0liovffvsNWq0WM2fOxBtvvIGePXsiJiYGI0aMAHBnyLhVq1Zo166dyecpm4wpprv5+vqiX79++qX54+PjsX79ely+fLnUOcLDw0tsY2dnh5o1a6JTp06YPXs2PvnkkzL32Rz3Tn3euwpxWQqW27dvo2HDhgbfs/z8fDRs2BApKSll6qejoyOmTZuG559/Hmq1Gl9++SU2btyI4OBgfPbZZ9DpdFi4cCG+/PLLMuUvFBQUBBcXF/z5558WX523JMamrQpX4509ezZiY2NLna9w0cGdO3dix44d2LlzJ1JTU83up6xCn2yL1S+ksYUovFgwOztbrF69WvTo0UPY2dmZdeW7n59fiWHqBaiWWIyuuOjcubP48ccfRU5OjkhJSRELFy406fjffvtNbNq0STz99NNi8eLF4tKlS+KHH34QCoVCKBQKsXDhQnHgwAGTcl67dk00a9ZMABBubm5Cp9MZPLW5cePG4tatW1b/LFWE6NGjh0hOTrba61vizjVL3CU1c+ZMcevWLbFu3TqRkpIi1Gq1+P7778WJEyfEgAEDTL541NPTU6xYsUKcPHlSLFmyRLi7u4u9e/fq/61fuXJF/2/AWjFkyJBiY/z48SIiIkLcvn3bYD2ikqJTp07ik08+ETt37hR5eXlCq9WK+Ph48d1334kBAwaYvAgdADFjxgxhb28vfH19xYQJE8SiRYvEokWLxNtvvy3q1Kkj/Pz8xO+//27V7yOjTGH1DthU1K9fX0ybNk38+++/4urVq0Kr1Zr0ePjSROXKlcWIESPEwYMHbWIxusKQuSqtJYoLS/wSe1Cib9++Yv369eLUqVPi1KlTYv369dI/l3eHp6enWXcMmRv3Fhf3FhZlvX1f9l1SiYmJ+ruAnnjiCaHT6cxaPXjp0qXi3LlzYvLkyeLAgQNi//794s8//xRt2rQRrVu3Fjt27DBYTdkW45133hH79+8v07FOTk4iKChITJ8+XezevVvk5+cLrVYrTp8+bVKe5ORkcezYsWL/IHzzzTdFRkaG+O2336z+vWKYHFbvgM1G165dxZo1a0R+fr64dOmSmD9/vln5OnToIFasWCGys7PFuXPnRFhYmMkrYlpiMTpLrEprieJCp9NJ/yVm66FQKMTq1auFTqcTZ86cERs2bBAbNmwQZ8+eFVqtVkRFRVm9j5aIe4uLewuLLVu2mPxel7RqbllWz1WpVEVWX27atGmZz/vy5cv6W6tr164tdDqd6NSpk35/YGCguHLlitXfn/tFo0aNxI0bN8zK4eDgIDp37ixmzZolMjIyTH6v3d3dRUREhMjPzxcffvihUCgUom7duuL3338XGRkZYsSIEVb/PjHKFFbvgM2Hl5eXGD9+vEnLvheGt7e3+OCDD0R8fLxIS0sT33zzjbQVIWUtRmepVWkt/ReyjF9ith4TJkwQ169fFz169Ciyr1evXuL69evi7bfftno/Zcfy5culFxeWiJJGgkwNjUYjfHx89F/n5uaKRx55RP+1t7e3zX/GmzZtanJR5eDgIDp06CA+/vhjsWPHDpGbmyvOnj0rlixZIl5//XVRt27dMvWld+/e4sqVK+Lvv/8WGRkZYvv27cLPz8/q3yNG2YIX3ZagcuXKGDRoEIYPH45WrVqZdJHfpk2b0LFjR2zduhWrVq3Ctm3bUFBQYNaFvMWpWbMmoqKi0KlTJ9SoUcPkCzy/++47DBgwAHFxcVi5ciXWrFmDjIwMsy84jo6O1q9H0qtXL+zYsQO5ubkA7qwb061bN5O+n6W5aBQo2zoiturEiROYN28eli9fXuz+wrsxSnsLKclV0ue8kClPqZZ9sXF5+/rrr9GkSRN07969VO3/+OMPtG3bFklJSdi9ezf27t2L3bt3F/s0elPVrFkTkZGR6NKlC3Jzc9GzZ0/s2bPH7LxkHbb7qbeyDh06QKlU4tVXX0Vqaip++eUXjB071qQc3bt3xzfffIPFixfj/Pnz0vt472J0Y8eOLdMdBKNGjcKECRPQv39/hISEYN68eYiJiYFCoYCdnV2Z+hYREWHwdWRkZJE2P/74o0k5K1IhUlqNGjW67x0XsbGxWLhwYTn2qHwsW7asxDZCCAwfPrwcemNcaT7npho+fLj+TsVKlSph2LBhuH79OoA7d+1Z25w5c4rd7unpiZYtW8Lf3x8dO3Ysdb4OHTrgypUr2LFjB3bt2oXdu3frl0Iwx8CBA7Fw4UIcP34cjz32GJRKJX7//Xd8++23CA0NLbK4I9k+jrDcxdvbG8OGDYNSqYSHhwfWrl2LUaNGlXmUoW3btlAqlRgwYADOnDmDlStXYvXq1bhy5UqZc1piMbp72fqqtA+TGzduoHPnzkbX6mnatCn27NmDqlWrlnPPLKvwVte///67yFIAd+vTp0859srySrOIGgA88sgj5dCb4u3YsaPY7YWL2y1evNikdVVcXV3RoUMHdO7cGUFBQQgICEB8fDx2796tL2AKC7bS+vnnn/HCCy8gNDTUoKBv166dfrRy2LBhOHjwoEl5yfqsPi9lC7Fp0yaRkZEhVq1aJV588UX97YgyrjdxdXUVwcHBYu/evUKlUgmtVivGjx9f5JqR0oRarRZJSUli2rRpomXLlqJZs2bFhozviUKhED169BAbNmwQt2/ftvp79DDGli1bxLfffmt0/+LFi8XWrVut3k/ZsXDhQnHjxg3x119/ibfeesusB48yHqyoXLmy6Natm5g1a5Y4dOiQuH37tjh16pRJOfbt2ycaNmxY7D5nZ2cxb948oVKprH6uDJPD6h2widBoNGLOnDlFPuQyH5kO3HlY3axZs0RqaqrIy8sTGzduNOn4ex/0d/d6LGV9AGBhVK1aVf/fderUEdOnTxdffvml6NChg/QH0TFKF+3atRMqlUqsWbNGBAYGCnd3d+Hh4SHatm0r1q5dK1QqlXj66aet3k9LxN0PU8zJyRFr1qwRXbt2tXq/LBlPPfVUkQus33jjDXHhwgWRnp4uvv/+e+Ho6Gj1floyFAqFaNOmjfjggw/Etm3bRE5Ojsk/00pz80GHDh2sfq4Mk8PqHbCJaNu2rViyZInIzMwUBw8eFGPHjhXVqlWTXrAUhp2dnXjppZdMLlgssRhd06ZNRVJSktBqteLMmTOiefPm4sqVKyIrK0tkZGQIjUYjXnrpJau/Rw9rvPzyy/o1ge4uUq9du3bfp0NXpPDz8xMff/yxOH/+vPj333+Fm5ub1ftkiYiOjhbvv/++/uumTZsKtVotlixZIt555x2RmpoqPvnkE6v3U2YoFAoRGBgo3nvvPfHbb7+JzMxModVqRXJyslixYoUYOnQo7+xhFIbVO2BTIXP6pjzDnMXoLLEqLUNuuLi4iJdfflm899574r333hMvvfSScHFxsXq/yivq1Kkjpk6dKhITE8WlS5cqbMGSmpoqWrVqpf/6s88+E3v37tV/3bdvXxEXF2f1fsqMwgLl8uXLYuXKlSIkJMTgVm4G466wegdsNsydvimPkLEYHZe8t91wdnY2mCL44osvxJw5c/Qxa9Ys4eTkZPV+WiLunhLKy8sTa9euFd27dy/TWkMPSuTn54s6derov967d6+YPHmy/ut69eqJrKwsq/dTZrz55puiUaNGVu8H44EIq3fA5qOs0zeWCtmL0T3MS97beowcOdJgKfasrCxx4MABsWPHDrFjxw6RmpoqJkyYYPV+yo5FixaJGzduiOPHj4vx48eLatWqWb1P5RH//vuv/toKBwcHkZubK5599ln9/qZNm5q9iiyD8QCH1TvAMCEscTfTw7jk/YMSe/bsMXiQ3L3F5ODBg8Wff/5p9X7KDp1OJ5KSksQvv/xi8Jyfe8Pa/ZQd3377rdi/f7945plnxOzZs8W1a9eEg4ODfv9rr70mDh8+bPV+MhjWCC4c94Cx1GJ0K1as0C+k5OzsjO+++85gVVqyjoYNGxqswXL79m0UFBTovz58+DAWLVpkja5Z1I8//liq9UgqmqlTp+KXX37B7t27kZOTg6FDh0Kj0ej3h4SE4Pfff7diD4mshwvHPWAssRjdw7jk/YMiLy9Pv5BWcRo3bozjx4/DxcWlnHtGluTh4YGcnByD4hQAvLy8kJOTY1DEED1MrD7MwzA9HtS7mRimRXx8/H1vXe7Xr59ISEiwej8ZDAajHMLqHWCYGQ/C3UyMssW8efPE6dOni70TyNnZWZw+fVrMmzfP6v1kMBgMSwenhCoQOzs79OrVCyEhIXjppZes3R2SoGbNmjh+/DjUajUWLlyonxpq3Lgxxo0bh0qVKqFFixa4evWqlXtKRGR5Vq+aGAyG8ahfv76Ijo42eAyDVqsV0dHRBncMMRgMRkUOjrAQPSC8vLzQsGFDAMD58+dx69YtK/eIiKj8sGAhIiIim2dn7Q4QERERlYQFCxEREdk8FixERERk81iwEBERkc1jwUJEREQ2jwULERER2TwWLERERGTz/ge7ClggD1XMIQAAAABJRU5ErkJggg==", + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAiwAAAHVCAYAAADSAqClAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAb7ZJREFUeJzt3Qd4k1XbB/C7g5YCHexZQEQ2goBFXIwXAUVQX0RE2YjKEgUV6wAUpcorQ5kqlPEqU0UBERFkgwxZomwFyt4tszPf9T++T76kTdqkOWmfpv+f17kkT56cJk2a3Dnn3Pfxs1gsFiEiIiIyMf/cvgNEREREWWHAQkRERKbHgIWIiIhMjwELERERmR4DFiIiIjI9BixERERkegxYiIiIyPQYsBAREZHpMWAhIiIi02PAQkRERKbHgIWIiCifW7dunbRr107KlSsnfn5+8t1332V5mzVr1kiDBg0kODhYqlatKjNnzvTqfWTAQkRElM9dv35d6tWrJ5MmTXLp/L///lvatm0rzZs3l127dsnLL78szz33nPz0009eu49++XXzw7S0NDl16pSEhoaqaJKIiAjwsXj16lU12uDvn3Pf62/duiVJSUla+goKCpKCBQtm67b4TFy0aJE8/vjjTs8ZOnSo/PDDD7J3717rsaefflquXLkiy5cvF28IlHwKwUpkZGRu3w0iIjKpuLg4qVChQo4FK7dVKiJnzqVq6a9MmTKye/duu6AFUzdoOmzevFlatmxpd6x169ZqpMVb8m3AgpEVOLajsoQV0RdBR33+nOiUGqJ/ACz8sPYuJfiynj8yw43SAaKbf7Le/oLj9T5mOBul/3FX+vGm1v6uVA0R3ZJC9Y9yRhzW+4SnFNL/TTtZ43sPlFh9XHQ7/6+K2vssdDZFa38Fz+t9jaekJsr6PeOsnxM5ASMrCFaO/VZZwkI9e10kXE2TSg2PSunSpe2ODx8+XEaMGCE6nDlzJkP/uJyQkCA3b96UkBD97xP5NmAxpoEQrHj64rAVEJy9IThnLAX1BywBQdq7lMACej+8A4K8ELD4mfsxg39B/Y87MFDvayggSO9rXPUZrD9gCSyg+XdZQH/Akhakt89Afz3fnr39fAcW0BuwBAakiTfkxnKBIqF+qnkiTfysI0RhYWHW47pGV3JLvg1YiIiIfFlYWJhdwKITppzOnj1rdwyX8fO8MboCDFiIiIhMItWSJqkWz/vwtiZNmsiyZcvsjv3888/quLcwrZmIiMgk0sSipbnr2rVrKj0ZzUhbxr+PH/9nXVR0dLR069bNev6LL74of/31l7z++uuyf/9+mTx5sixYsEBeeeUV8RYGLERERPnc9u3b5a677lINBg8erP49bNgwdfn06dPW4AVuu+02ldaMURXUbxkzZoxMmzZNZQrlqYAF6U4BAQGqqIwzc+fOVef079/fYfU8LHYyGlYed+jQQUVzhsqVK8v48eO9cfeJiIhyRZqm/9zVrFkzVX8mfTOq1+L/+GxOf5udO3dKYmKiHDlyRHr06CHe5JWAZfr06TJw4EBV6hf1Tpydg6EkBC7IP3fkwIED6vYLFy6UP/74Q5UNTk3Vn5lBRERkBqkWi5bmi7QHLJgHmz9/vvTt21eNsDjaWwBzY5s2bZI33nhDqlWrJt9++63DvkqVKiVly5aVBx98UA1L/fnnn3L4sBeKiBAREVH+Cliw6KZGjRpSvXp16dKli8TGxqphJVszZsxQwUx4eLg6B6MtWTHSpLJbthhDVihoY9uIiIjMJLcW3ebLgAXBB4IQaNOmjcTHx8vatWvt9vDBqItxDvYe2LBhgxp1cQaLfT7++GMpX768CoSyIyYmRgVIRmNZfiIiMhsEG6ketjQGLFnDmpOtW7dK586d1eXAwEDp1KmT3QgKVhRjV8hHHnlEXS5RooQ89NBDaiQmPezhULhwYbUBFW7zzTffqA2dsgMpWQiejIYKgERERJQ3aC0ch8AkJSVFBRgGTAehHPDEiRPVyAbOuXTpkl0lPIy67NmzR9599127nTHXr1+vquZhLYunezro3PSJiIjIG3RM6aT56AiLtoAFgcrs2bNVLnarVq3srsMW1cgG6tixo3z//fcyb948qV27tvV6ZP7cf//9smLFCjWNZJvnHRERoesuEhERmZqOLJ9UH80S0hawLF26VC5fviy9e/dWIym2UEMFIytIXy5evLg89dRTGTaVwhQRzrENWLJy8uRJa1U+Q6VKlaRo0aIePhoiIiLyyTUsCDZatmyZIVgxAhZU0UPlvCeeeMLhDpg4Z/HixXLhwgWXfyYW4hqV+YyGyntERER5UZqm5ou0jbAsWbLE6XVRUVEZUpvTw6gLmm3FvcwcPXo0m/eUiIjInIxMH0/78EXcS4iIiIjyV5YQERERZV+q5Z/maR++iAELERGRSehYg5ImvinfByxRnz8nAcEFtfX3x4DJolO12X1Ft6TQjIuePRWQqHd2MeSS/j+5izUDtPbnn6J/RjUgUf9zk1BZ3+sbUvV2p9wor/8rYdkNN7T2d6FBmOiWGqT3+bbcuCm6BSTqf26CrmRvixXK3/J9wEJERGQWaeInqeLncR++iAELERGRSaRZ/mme9uGLmCVEREREpscRFiIiIpNI1TAllMopISIiIvImBizOcUqIiIiITM/rAcvmzZslICBA2rZtm6G0PvYUwnXYxNDW6dOnJTAwUF1vlOA3zjdaaGio2vG5f//+cujQIW8/DCIiIq9Ls/hpab7I6wELNkUcOHCgrFu3Tk6dOpXh+vLly8vs2bPtjs2aNUsdd2TlypUqoNm9e7eMGjVK9u3bJ/Xq1ZNVq1Z57TEQERGRDwcs165dk/nz50vfvn3VCMvMmTMznNO9e3eZMWOG3TFcxnFHihcvLmXKlJEqVarIY489pgKYxo0bS+/evSU1NdXpfUlMTJSEhAS7RkREZMY1LJ42X+TVgGXBggVSo0YNqV69unTp0kViY2Mz7MLcvn17uXz5smzYsEFdxv9xuV27di79DH9/fxk0aJAcO3ZMfvvtN6fnxcTESHh4uLVFRkZ6+OiIiIj0ShV/Lc0X+Xt7OgiBCrRp00bi4+Nl7dq1ducUKFDAGswA/o/LOO4qBEVgrHdxJDo6Wv18o8XFxWXzUREREZHPBCwHDhyQrVu3SufOndVlLKLt1KmTCmLS69WrlyxcuFDOnDmj/o/L7jBGbbAY15ng4GAJCwuza0RERGZi0bDg1uKji269VocFgUlKSoqUK1fOLrBA4DBx4kS7c+vWratGSRDc1KxZU+rUqSO7du1y+Wdh4S3cdtttGh8BERFRzmIdlhweYUGggsyfMWPGqMDDaMjsQQAzd+7cDLfBqMqaNWvcHl1JS0uTTz/9VAUrd911l8ZHQURERD49wrJ06VK1cBaZO1jgaqtDhw5q9AVrWmz16dNHOnbsKBEREZn2ffHiRTV1dOPGDdm7d6+MHz9eTT398MMPqqYLERFRXpVq8VfNsz7EJ3klYEFA0rJlywzBihGwjB49OkNaMda4lChRIsu+0S8UKlRIKlWqJM2bN5fPP/9cqlatqvEREBER5bw08ZM0Dyc/0sQ3IxavBCxLlixxel1UVJR1kWz6FGdb9evXt7u+cuXKmZ5PREREvoubHxIREZkEF906x4CFiIjIp9awWMQX5fuAJTXEIpaC+p7carP7ik4Hu00R3e557UXtfSYX0hvRB1zR/weXHKa3z8BEL7wp1LyqvcvE86Fa+0vS250SVvOC9j4TS2ZcQ+eJNC+s6Q89maK1v9TLl0U3S4D+b+sX6xTS2l/ptee19uefmqi1P9Ij3wcsRERE5lp061mQmMYpISIiIvKmNA17AaX5aJaQb+6QRERERD6FIyxEREQmwUW3zjFgISIiMtGUEAvHOcYpISIiIjI9jrAQERGZRKrFTzVP+/BFHo2wbN68WW042LZtW7vjR48eFT8/P3XdyZMn7a47ffq02jcI1+M8aNasmbrsrK1du1ad16NHD3X5ww8/tOvzu+++U8eJiIjyMmQI6Wi+yN/TTQ4HDhwo69atk1OnTmW4vnz58jJ79my7Y7NmzVLHbX377bcqkLFtx44dkzp16kijRo2kcePG1nMLFiwoH330kdoNmoiIiPKHbAcs165dk/nz50vfvn3VCMvMmTMznNO9e3eZMWOG3TFcxnFbxYoVkzJlyti1kSNHyoULF2TRokUqSLHdrRnXx8TEuHV/ExMT1Q7Rto2IiMhM0iz+WpovyvajWrBggdSoUUOqV68uXbp0kdjY2Ay7Kbdv316NhGzYsEFdxv9xuV27dpn2PXnyZDUy880330iFChXsrsM006hRo2TChAly4sQJl+8vApzw8HBri4yMdOvxEhEReRunhJzz92Q6CIEKtGnTRuLj461rTQwFChSwBjOA/+MyjjuD6aWXX35ZJk2aJPfee6/Dc5544gmpX7++DB8+3OX7Gx0dre6j0eLi4ly+LREREeXBgOXAgQOydetW6dy5s7qMRbSdOnVSQUx6vXr1koULF8qZM2fU/3HZmePHj8uTTz4pzz//vDz33HOZ3gesY8F6mH379rl0n4ODgyUsLMyuERERmUmaTaZQdlua+KZsBSwITFJSUqRcuXIqWEGbMmWKmsLB6IWtunXrqqkjBDc1a9ZUC2kduXnzpho5qV27towfPz7L+/Dggw9K69at1cgJERER+Ta367AgUMH6kjFjxkirVq3srnv88cdl7ty5aorIFkZV+vXrp4IaZzCicunSJfnpp59UAOQKpDdjagjraIiIiPI6PZVu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LEhdxojJl19+qaZ7sAh24cKFMnr0aHnssces5129elXVSEFq89atW9UUUcmSJeXee+9V19euXVtatWqlAg9MGaEfTPn069dPZf8gswiOHTsmgwcPlo8//lhlI8FHH32k1sS88cYbnj4cIiIi8tUsIWT7INX4yJEjkpycLJGRkWrKBotvDcOGDVMNEKjcfffdsmLFCrvFsvPnz1fTSC+88IJaE4PFuU888YSaZgKLxaIKzjVp0kSef/556+2wjgXrZVD7BQtxjfRqIiKiPIWl+b0XsGAxK1KG0Zw5evSoS30hy+iTTz5RzRGMoqxcudLhdffff7+aUiIiIsqr/DSkJfuJb+JeQkRERGR63K2ZiIjILHSU1rf45pxQvg9YSqw+LoH+WVfndZXlxj9ZT7qk2mwQqUva/fW193nl9kJa+yt8xj69XYeCJ69q7e9WnaKiW9GN+gsaXmwaqbW/8L/1T70GbfpDe58nBjbQ2l/xP5JFtxbdemvt75fZ00W3Zs/10d5nYlG9Hz1XI4O09peaFCCyTXIFK906xykhIiIiMr18P8JCRERkGswScooBCxERkUn4WSyqedqHL+KUEBEREZkeR1iIiIjMAvkGnuYcpIlP4ggLERERmV6eDFhQ8TazNmLEiNy+i0RERNlew+Jp80V5MmDBBopGGz9+vISFhdkde/XVV3P7LhIREWU/S8jTlg2TJk2SypUrS8GCBdUegdioODPY6LhGjRrq/Lp168qyZcvEm/JkwFKmTBlrCw8PV6MqtsewISMRERG5BpsPDx48WG1AvGPHDqlXr560bt1azp075/D8TZs2SefOndWGxDt37pTHH39ctb1794q35MmAJTsSExMlISHBrhEREZmyNL+nzU1jx46VPn36SM+ePaVWrVoydepUKVSokMTGxjo8H5sUt2nTRl577TWpWbOmjBw5Uho0aCATJ04Ub8k3AQt2k8ZojNEiI/WWKyciItJVmt/TBum/pOOLuyNJSUny22+/ScuWLa3H/P391eXNmzc7vA2O254PGJFxdr4O+SZgiY6Olvj4eGuLi9O/ZwsREZFZREZG2n1Rxxd3Ry5cuCCpqalSunRpu+O4fObMGYe3wXF3ztch39RhCQ4OVo2IiCg/7NYcFxenklIMef0zMN8ELERERGbnl/ZP87QPQLBiG7A4U6JECQkICJCzZ8/aHcdl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", "text/plain": [ "
" ] @@ -140,7 +186,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 14, "metadata": { "colab": { "base_uri": "https://localhost:8080/", @@ -152,7 +198,7 @@ "outputs": [ { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAu0AAAGdCAYAAACmdE07AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/GU6VOAAAACXBIWXMAAA9hAAAPYQGoP6dpAABeB0lEQVR4nO3deVxP+f4H8FepkMo6aRgVRbKVJVT4diUaBuEa6yjbYAaNKReDicaMMdkzslyyTJZhyDCUrYUkslSjJKGVSGnfnd8ffp3rq0VM+R55PR+P87h9v+ecz+f9OeXO6/vpc05KAAQQEREREZFkKSu6ACIiIiIiqhxDOxERERGRxDG0ExERERFJHEM7EREREZHEMbQTEREREUkcQzsRERERkcQxtBMRERERSRxDOxERERGRxKkougAiqj4tWrRAVlaWossgIiKiN6CpqYnk5ORKj2FoJ6olWrRogaSkJEWXQURERG+hZcuWlQZ3hnaiWqJ0hr1ly5acbSciInpPaGpqIikp6bX/7WZoJ6plsrKyGNqJiIhqGd6ISkREREQkcQztREREREQSx9BORERERCRxDO1ERERERBLH0E5EREREJHEM7UREREREEsfQTkREREQkcQztREREREQSx9BORERERCRxDO1ERERERBLH0E5EREREJHEM7UREREREEsfQTkREREQkcSqKLoCIqpft7P3IKyhWdBlERES1xom1doougTPtRERERERSx9BORERERCRxDO1ERERERBLH0E5EREREJHEM7UREREREEsfQTkREREQkcQztREREREQSx9BORERERCRxDO1ERERERBLH0E5EREREJHEM7UREREREEsfQTkREREQkcQzttYRMJoMgCGjYsKGiS5EET09PHD16VCF96+npQRAEmJiYKKR/IiIiqn1UFF0AUU1wdHSEkpJSjffj6emJRo0aYcSIEeJ7CQkJ0NHRQWpqao33T0RERB8GhnYJqFOnDkpKShRdhiSoqqqiqKjoH7eTmZlZDdW8nefPnyMlJUVh/RMREVHtw+UxNUBNTQ0bNmxASkoK8vLycOHCBfTo0QPA/5ax2NraIjQ0FAUFBejTpw/atGkDb29vPHr0CFlZWbhy5Qqsra3LtPvzzz8jPj4e+fn5iImJwZQpUyqsw9LSEoGBgcjNzUV8fDw2bNgAdXX1Ko1h4sSJuHr1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Y2NjbN++Herq6tixY0eF58XExGDkyJEwMTFBly5dsG/fPrlZ2Li4OOzevRs7d+7E8OHDoa+vD5lMJq6tftWqVatgYWEBd3d3mJiYwNDQEMOGDYO7u/trxxAfH4+CggLMmTMHrVu3xtChQ7F06dJyj/3+++/Rv39/dOzYEbt27UJqaiq8vb3F/YWFhXB3d0fPnj3RrVs37Nq1C8HBwXJLZl519uxZREREwMvLC127doWZmRn27NkDf39/XLt2DQCwZcsWJCQkYMWKFfj2229Rp04drF69+rVjexMxMTHo0aMHBg4ciLZt28LV1bVMkH7w4AG6dOmCdu3aoWnTpnI34b4Jd3d3TJ06FZMmTYKhoSEWL16MLl26iDPyRERE9GFjaK8BCxcuxB9//IG9e/fi+vXrMDQ0xKBBg/Ds2bMKz/n222+Rnp6OS5cu4fjx4/D19cX169fljpk1axYOHz6MzZs34/bt29i+fTsaNGhQbnsRERGQyWRo164dLly4gBs3bsDV1RXJycmvrT81NRUODg4YPXo0IiMjsXDhQjg7O1c41g0bNuDatWvQ0dHB0KFD5Wbyc3NzsWrVKuzbtw9BQUHIzs7GmDFjXlvD8OHDkZ6ejsDAQJw9exb37t0Tz/viiy8wePBgfPHFFygpKUFubi4mTpyI6dOny92M+k9t3boVR44cwcGDBxESEoKmTZti8+bNcsds374d0dHRCA0NRWpqqtxvWN7Evn37sHLlSqxevRrXr19H69atsWvXLvERmERERPRh49Nj6K28+rSa8tjb22P9+vVyj7qkqjt9+jQePXqESZMmVen40rvP+fQYIiKi6iWFp8fwRlQiCahfvz5mzpwJX19flJSUYNy4cbCxscGAAQMUXRoRERFJAEP7B6hPnz44depUhfv5R3revdK/Lrt48WLUq1cP0dHRGDlyZLnP5CciIqIPD5fHfIDq1atX6TO9Y2Nj32E1VF24PIaIiKhmcHkMKUR+fj6DOREREdF7hE+PISIiIiKSOIZ2IiIiIiKJY2gnIiIiIpI4hnYiIiIiIoljaCciIiIikjiGdiIiIiIiieMjH4lqGZ9N4yp9zisRERG9fzjTTkREREQkcQztREREREQSx9BORERERCRxDO1ERERERBLH0E5EREREJHEM7UREREREEsfQTkREREQkcQztREREREQSxz+uRFTL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YPTs2RNhYWHYsmULduzYUaZuIiIiosooAeB0H1EtoKmpiczMTHz+3V/IKyhWdDlERES1wom1djXaful/v7W0tJCVlVXhcZxpJyIiIiKSOD49hugVlX3K/fTTT3Hx4sV3WA0RERERQztRGaamphXu4x8wIiIiIkVgaCd6RWxsrKJLICIiIpLDNe1ERERERBLH0E5EREREJHEM7UREREREEsfQTkREREQkcQztREREREQSx9BORERERCRxfOQjUS3js2lcpX8gioiIiN4/nGknIiIiIpI4hnYiIiIiIoljaCciIiIikjiGdiIiIiIiiWNoJyIiIiKSOIZ2IiIiIiKJY2gnIiIiIpI4hnYiIiIiIonjH1ciqmVsZ+9HXkGxosv44J1Ya6foEoiIqBbhTDsRERERkcQxtBMRERERSRxDOxERERGRxDG0ExERERFJHEM7EREREZHEMbQTEREREUkcQzsRERERkcQxtBMRERERSRxDOxERERGRxDG0ExERERFJHEM7EREREZHEMbQTEREREUkcQzsRERERkcQxtBMRERERSRxDO9UaSkpKWLhwIe7du4fc3FzcvHkTo0aNAgCcOXMGPj4+4rGNGzdGQkICli9fDgCQyWQQBAGDBw9GWFgY8vLyEBwcjI4dO1a5fwsLC/j5+SEnJwdpaWnw8fFBo0aNAABqamrYsGEDUlJSkJeXhwsXLqBHjx5i3QkJCZg5c6Zce6ampigpKYGuru4/uSxERERUCzC0U62xaNEiTJo0CTNnzkTHjh2xbt06/Pbbb+jXrx/s7e1hZmaGuXPnAgC2bNmCpKQkuLq6yrXh5uYGJycnmJmZ4cmTJzh+/DhUVFRe27eJiQnOnTuHyMhImJubo0+fPjh+/Djq1KkDAPjll18watQo2Nvbo1u3brh79y58fX3RuHFjCIKA/fv3Y/z48XJtTpgwAUFBQYiPjy+3TzU1NWhqasptREREVDspARAUXQTRP6Wmpoa0tDQMGDAAly9fFt/fvn071NXVMWHCBPz73//Gnj17sH79esyZMwddu3bF3bt3AbyYaff398eYMWPw+++/A3gxG5+YmAgHBwccOnSo0v69vLygq6uLvn37ltmnrq6O9PR0ODg4YP/+/QAAFRUVPHjwAOvXr8fq1athYmKC69evQ19fHwkJCVBSUkJ8fDxWrFiBrVu3ltuni4sL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", + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAu0AAAGdCAYAAACmdE07AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAATrFJREFUeJzt3QmcTfX/x/GPdez7viY7WSJbKopCKrRIyVISStqolEILKiqpKCkUiZKSFku27BFSErJnKbJljft/vL//37mPO2NmDGbmnrnzej4et3HvPfec7/ecS5/v53y+30kTCAQCBgAAAMC30oa7AQAAAADiR9AOAAAA+BxBOwAAAOBzBO0AAACAzxG0AwAAAD5H0A4AAAD4HEE7AAAA4HME7QAAAIDPpQ93AwAkjtOnT9uff/5p2bNntzRp0oS7OQAAIAH0e04PHTpkRYoUsbRp486nE7QDEUIBe/HixcPdDAAAcB62bdtmxYoVi/N9gnYgQijD7v2lz5EjR7ibAwAAEuDgwYMu6eb9fzwuBO1AhPBKYhSwE7QDAJCynK20lYmoAAAAgM8RtAMAAAA+R9AOAAAA+BxBOwAAAOBzBO0AAACAzxG0AwAAAD5H0A4AAAD4HEE7AAAA4HME7QAAAIDPEbQDAAAAPkfQDgAAAPgcQTsAAADgcwTtAAAAgM+lD3cDACSu1k9NswxRWcLdDAAAIsbUIS3C3QQy7QAAAIDfEbQDAAAAPkfQDgAAAPgcQTsAAADgcwTtAAAAgM8RtAMAAAA+R9AOAAAA+BxBOwAAAOBzBO0AAACAzxG0AwAAAD5H0A4AAAD4HEE7AAAA4HME7RFizpw5liZNGtu/f3+4m+ILHTt2tJYtW4bl2Js3b3bXYuXKlWE5PgAAiDzpw90AICkMHTrUAoFAsgwONFCaMmVK8LXixYvbzp07LV++fEl+fAAAkDoQtIeZAstTp05Z+vRcCjlx4oRlzJjxgveTM2dOC5d06dJZoUKFwnZ8AAAQeSiPSQLHjx+3Hj16WIECBSxTpkx2xRVX2LJly6KVsXzzzTdWs2ZNi4qKsh9++ME2btxoLVq0sIIFC1q2bNmsVq1aNnPmzDP2+8QTT7hMrj5XpkwZGzVqVJzt0H6vvPJKy5w5s/uM2vTvv/8mqA8ffvihXXbZZZY9e3YXgN555522Z8+e4PteP6ZNm2ZVq1Z1/axbt66tWbMmuM3o0aMtV65cLgtdtmxZt02TJk1s27ZtwW369etn1atXt/fee89KlSrltpGtW7e686FzkSNHDmvdurXt3r3bvffbb79ZlixZbPz48cH9TJw40fXz119/jbU8pmHDhvbggw/aww8/bLlz53bneeTIke583H333a6fOp+6Lh4Npjp16uTapX2XL1/eZfBD2z5mzBj74osv3LnQQ+clZnmMd65mzZrlzqnafvnll9u6deuinfMXXnjBfWfUlnvvvdeefPJJd24AAAAI2pPA448/bp999pkL6FasWOGCQQWr+/btC26jgGzQoEG2du1aF/QePnzYrr/+ehfY/fTTT9a0aVO78cYbXfDqad++vX388cf2xhtvuM+98847LqiNjQYB2sctt9xiq1evtk8++cQF8d27d09QH06ePGnPP/+8rVq1ygXdCkQVCMfUq1cvGzJkiBuU5M+f37VZn/UcOXLEXnzxRRs7dqwtWLDAlZK0adMm2j42bNjgztfkyZNdoHv69GkXsOt8zZ0712bMmGF//PGH3X777W77ChUq2ODBg+3+++9352f79u3WtWtXe+mll6xSpUpx9knXQyUrS5cudQF8t27d7LbbbnMBtK7TddddZ+3atXNtFrWjWLFiNmnSJDcYePbZZ+2pp55yAwTp2bOnG0zoPKscRg/tKy5PP/20O1c//viju7Nyzz33BN8bN26cO0/qw/Lly61EiRI2fPjweK+RBnEHDx6M9gAAAJEpTSA5Cn9TEWVulclVllnZaVEQe9FFF7ksrzLoV199tQuEFZjG55JLLnHBqALt33//3WV6FcA2btz4jG2VzdV+//nnH5fdVqZWZRoK7D0K2hs0aODa6GW0E0qBptp+6NAhN1DwjjdhwoRgMK0gW0Gu+q5gVj+VxV68eLHVqVMnmCWvWLGiLVmyxGrXru2y1QMGDLAdO3a4oF/Ux2bNmtmmTZvcHQJR0Fy5cmUXcKsdcsMNN7hAVeU06uu3337rMtqx1Zor067M+fz5891z/VklNDfffLMbUMiuXbuscOHCtmjRInfXIDa6Ftru008/jfU4ogGOsvMafClT7p0r3Tlp1KiR2+brr7+25s2b29GjR4N3KZSFf/PNN4P70R0aDebimtCqc9e/f/8zXm/ywHjLEJXlnK4vAACI29Qh8cdsF0KxjGKSAwcOuOqC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Lr30Uve6yknis2bNGkubNq399ddf7vm+ffvc8zZt2gS3eeGFF+yKK64IPp87d67Vrl3boqKirHDhwvbkk0/af//9F+v+dfwhQ4bYvHnzEtQeefvtt61s2bKWKVMmK1iwoN16661xlsdcdNFFNmDAALvnnnsse/bs7ly+++670fanjLfuOmh/l112mTtXasvKlSvjbMMPP/xgV155pWXOnNmKFy9uPXr0sH///fesbY+rv7pmOrbaqEHWnXfeaXv27In22V9++cVuuOEGV1aj7XR8DQD69evnsvdffPGF26ce3vfo559/tmuuuca1M2/evHbffffZ4cOHo2XoW7ZsaS+++KIVKVLEfX8AAAAI2kN0797dFi1aZBMmTLDVq1fbbbfdZk2bNrX169e795csWWKdOnVy2ymAvPrqq12AHOrzzz+3hx56yB577DEXYHfp0sXuvvtumz17dqzHXLp0qfs5c+ZMVzajcpL4VK5c2QV7CsRFZR2hz0V/9oLPHTt22PXXX2+1atWyVatWuQHFqFGjzmi3R8fv3Lmz1atXL0Ht+fHHH12A/Nxzz9m6devs22+/tauuuirezyhIVkCskqD777/funXr5j4rBw8etBtvvNGqVKliK1assOeff96eeOKJePenQFnXSXXpum6ffPKJC+J1nc4mrv6ePHnSHVvnTIMGlTEpoPbovKqfGgh9//33tnz5cjcQ0WBIA7/WrVu7Nmmfelx++eVuENGkSRNXGrVs2TKbNGmSu+4x2zlr1ix3PmbMmGFfffVVvINMna/QBwAAiEyUx/zP1q1b7YMPPnA/leEUBV8KQvW6ssNDhw51gdjjjz/u3i9XrpzLCmsbz+DBg11wp2BUHn30UVu8eLF7XUF+TPnz53c/FXgnpGxGWVsFi8rcKqOtnxoUvPfee/bbb7+5DL/a5LVRWXBlnt9880332QoVKtiff/7pAuFnn33WZeljlrPoLoLuEiSkPTpfuiuhjLOyzSVLlnR3DeKjQYR3ftSO1157zQ1qlFUeP368a+fIkSNdpr1SpUouQFZgHZeBAwda27Ztgxl9Zf3feOMNa9CggRukaD9xiau/CsA9F198sdufBj7KimfLls3eeustV/uuAZ5Xs6/vg0eZdAXVoftU9v3YsWM2duxYd85E10WDlJdeesndpRC9p+t5trIY9bt///7xbgMAACID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", "text/plain": [ "
" ] @@ -198,7 +244,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 15, "metadata": { "colab": { "base_uri": "https://localhost:8080/", @@ -210,7 +256,7 @@ "outputs": [ { "data": { - "image/png": "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bNmyBcCdB8r26tULS5YsKfe4t956C++99x6effZZHD9+vFJdNbkIycvLQ25uLl544QUcOnSozPmmu9WvXx/PPfccDh8+XOnXDAkJQVxcHJo0aYKHHnoIffr0uecxDg4OcHT8Z4Gcu+fKiIiIaqrw8HBERkbi2LFjOHLkCKZMmQJXV1esXr0aABAZGYnU1FTMmDEDAPD2229j9uzZePnll/H333/rR1Hy8vKQn59f4dc1+ZoQnU6HoKAgjB49GllZWfjtt9/w6aefok2bNgbt5s2bh9zcXBQUFCA1NRVCCEybNq3Sr7t792788MMPGDZsGCZPnnzfK3JDQ0MN5sZSU1Mr/dpERETmYKnFyjZs2IDp06dj9uzZOHHiBPz9/dGnTx9cv34dANCwYUPUq1dP3378+PFwdHTEpk2bkJ6ero/p06cb9bpSLkz98ccfUb9+fQwcOBA7duxAz5498ccff2D06H+WOf7888/h7++Pxx57DE899RQAICYmBjY2letC/fr10adPH+Tn56Nbt273bR8WFgYPDw99+Pr6Vup1iYiIzEZIikpYunQpGjduDCcnJzz++OM4cuSIfl9gYCCCg4P1Xzdp0gQKhaJUzJo1y6jXlLZOiEqlQnx8PD755BN07doVa9asMejMzZs3kZSUhIsXL2L37t2YMmUKunbtisDAQABATk4OXF1doVAoDPJ6enoCALKzsw22r1y5EsePH8eAAQMwfvx4dO/e/Z79U6vV+vmxis6TERERkfmYbbGyv/76C66uruXu1+nuPFzK2dkZAHDhwgXY29vD39/foF379u0BAAkJCfptSqUSTz75JJRKJfbs2YNly5YhIiICLi5yH1BGRERUlSz57BhLMLkIqV27Nn799VeMHDkSbdq0QePGjTF48GC8/fbb+qtsgTsXgnp7e8PHxwcBAQH4/PPPcf36dfz+++8A7hQtcXFxiIiIwFNPPYXGjRvj2WefxVdffYXvv/8eaWlpAO7MS4WHh2P69Om4fPkygDv3KAshMHfuXFNPh4iIyHKKhZyoJqTcHXP48GFMnToVDz/8MOzt7XHlyhWsXLkSc+bM0bf7+OOP8fHHHwMArl+/jqNHj6J3794GF5QOGzYMs2bNwtdff4369evj6tWr2Lx5s/44AFi1ahUOHjyIlStX6rcVFhYiKCgIe/bswQ8//KC/VZiIiIis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", + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAiEAAAHWCAYAAAChaFm7AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAbQJJREFUeJzt3Qd4VEXXB/CTQkJJSCBIjxSRjqA0UVHgQ0ER1BcFUTqiIiKKBWJDUYn6iqBUC1WlqigiooJUQYo0C02RonSEhJaQZO/3/EfvvrvJbtgym72b/f985sHdvZnczbazM3PORBiGYQgRERFRAYss6F9IREREBAxCiIiIKCgYhBAREVFQMAghIiKioGAQQkREREHBIISIiIiCgkEIERERBQWDECIiIgoKBiFEREQUFAxCiIiIKCgYhBAREYW5lStXSseOHaVixYoSEREhn3322UV/Zvny5XLVVVdJbGys1KhRQ6ZNm+b172UQQkREFObOnj0rDRs2lPHjx3t0/B9//CEdOnSQ1q1by5YtW+TRRx+V++67T77++muvfm8EN7AjIiIiE0ZC5s+fL7fffru4M3ToUPnyyy/l559/tl939913y6lTp2Tx4sXiqWgJUzabTQ4ePCjx8fHqD05ERAT4bn769Gk1NREZWXATBhkZGXLhwgVt9yH3ZxumTdB0WLt2rbRt29bpunbt2qkREW+EbRCCACQ5OTnYp0FERBZ14MABqVy5coEFINWqxMnhozla+ouLi5MzZ844XTd8+HB54YUXtPR/+PBhKVeunNN1uJyeni7nz5+XYsWKedRP2AYhGAGBfZuqSsk4fZHuFZ/3EZ0icvSP0lyyQXuXEqF5Uu9sBf3fPmyan+1xf9n0digix9tnau+z+GbP3gw8dbqenm9qjiKi9P8tq0/R82ZuijqfLboduClBa38VV54V3U7WLq69z8Q9GVr7i07X+5zMzsmUlb+MsX9OFIQLFy6oAGTfj1WlZLx/73/pp21SpfFeFUSVLFnSfr2uURCdwjYIMYepEID4+4A7iixWVHSKyNYfhEQXsX4QEhWrPwiJ0Pxsjy6i/4Mzsrj+xzsqVu9zMrJYZEgEIdHRmoOQqCyt/QXisdF9nyEqRu85QrTu12JUYKbUgzFVHxcfoZo/bPLv51vJkk5BiE7ly5eXI0eOOF2Hy/h9no6CALNjiIiIyCstWrSQpUuXOl337bffquu9wSCEiIjIInIMm5bmLawfQaotmpmCi//fv3+/upySkiI9e/a0H//ggw/Knj175KmnnpIdO3bIhAkTZO7cufLYY4959XvDdjqGiIjIamxiqOZvH97auHGjqvlhGjJkiPq3V69eqgjZoUOH7AEJVKtWTaXoIuh466231ALe999/X2XIBH0kBKk7UVFRqpCJO7NmzVLHDBw40GUVNszFmQ0rbjt37qyiLlPVqlVlzJgxgTh9IiKisNKqVSuV1pu7mVVQ8S8+m3P/zObNmyUzM1N+//136d27t9e/NyBByOTJk2XQoEGqDCxSYd0dg2EcBCNITXJl586d6ufnzZsnv/zyiyopm5Ojf+EVERGRFdg0/RcqtAchmFeaM2eODBgwQI2EuKolj7mmNWvWyLBhw6RmzZry6aefuuyrbNmyUqFCBbn++uvl+eefl19//VV+++033adMRERkCTmGoaWFbRCChSm1a9eWWrVqSffu3WXKlClqSMfR1KlTVYCSkJCgjsGoyMWYKT+6qskRERFRIQtCEFAgsID27dtLWlqarFixwqlcOkZHzGNQa3716tVqdMQdLIh54403pFKlSiq48QXmrFDJzbERERFZcWGqzc8WlkEI1nCsX79eunXrpi5HR0dL165dnUY6kEeM3fpuueUWdblMmTJy4403qhGT3LDatkSJEqp+P37mk08+kZiYGJ/OLTU1VY28mI0l24mIyGpsYkiOny2UghCtKboINrKzs1XQYMJUDErFjhs3Tn3445i///7bqaIaRke2bdsmL774otNmQatWrVLV17A2xN/yuchxNlOOACMhDESIiIgKQRCC4GPGjBkyatQouemmm5xuw3bAyIK566675PPPP5fZs2dLvXr17Lcj4+W6666Tb775Rk3hOOYhJyYmajk/nbsHEhERFaY6ISEfhCxcuFBOnjwp/fr1UyMejlDjAyMgSMVNSkqSLl265KnJj+kZHOMYhFzMX3/9Za/uZqpSpYqUKlXKz3tDRERU8HI0ZLeEZXYMAoi2bdvmCUDMIATV2DAdcscdd7jcFAjHLFiwQI4fP+7x78Ri1SuvvNKpoYIbERERhdFIyBdffOH2tmbNmuVJ080NoyNojpXb8rN3714fz5SIiMiabP82f/sIFdw7hoiIyCJy/s1w8bePUMFddImIiCgoOBJC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u13ygBmIa6+9Vu655x41enLTTTepQYGLjZ4EJAhp3bq1bNmyRTWcAKInjHbs27dP3Y47gevKlCmjLt9yyy1qncd3333n1A9GPMx+fvzxRxkwYIDcddddsnHjRvsxCEouu+wyFaUBpn+qVKmigp78YCErRmHMhqEjIiKiwio91xdvfBl35cKFC+ozt23btvbrMIiAy1if6co111yjfsYMOvbs2SOLFi1Sn+8FHoSUKFFCTb+gNW3aVN5//305e/asvPfee5KTkyPTp0+XL7/8Uq35QEN09ffff+eJsGJiYuz9XHnllfLqq69KpUqV1LyTCUM+v/zyi70vtF9//fWiC1RTUlJU4GM2V2tSiIiIrLCLbo6fDfBl2/HLN76Mu3L8+HH1WV2uXDmn63H58OHDLn8GIyBYl3ndddeppREYHGjVqpXX0zEBKVaGFFtEUVg8isjo9OnTsnnzZpVSa/r555/VsM+pU6fUug938DPox5yuwajI8uXLpXTp0vZjENDgzu/YsUNq167tdvEsGhERkVUZEiE2P1Ns0Qfgy7bjcgadn4H4HB45cqRMmDBBLWL97bffZPDgwfLSSy/Jc889V7BBCIZ4zGjp5MmTMm7cOLVGo2PHjmoUo0OHDvbpExPmnLCS9qOPPpKBAweq67Kzs+39IHDBFAtGOYYOHWofBWnWrJlcf/31ec4BIzC4nXVDiIiIRAUgjkGIO1gqgS/8R44ccboel5Gt6goCjR49esh9992nLjdo0EDNgNx///3yzDPP2NeEFsh0zOLFi6VChQqqISLasGGDSsmtU6eOmobp3Llz3l8cGSl33HGHU2YLplnMfrDWAwtOJ06cKD179lRzVsi6cdUX4PoZM2ZIVlaWjrtEREQU0tMxnsJSiMaNG6s6XyabzaYut2jRwuXPoPZX7kDDnO3InXQS0JEQpNrml26bX1CAYRzHiqlo+f2RMG/lDgqXoREREYUqmxGhmr99eAvpub169ZImTZqoGQfMYmBkA8smAIMBWKNprivBTAcyarB+05yOwegIrndcenEx3MCOiIgozHXt2lUVGH3++efVsgjMRmCWw1ysun//fqeRj2effVat/8S/f/31l1xyySUqAHnllVe8+r0MQoiIiCwiRyJV87cPXzz88MOquVuI6giZqShUhuaP0CkwT0RERIVK2I+ERBj/NF1yYvTGdUVP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Ekhuv/12CekgxJySQRAyffp09f+5IdjIzs6WihUrqgAEbeLEifLJJ5+oERF3UlJS1O1mO3DgQIDvCRERkXciNCxM9aVOCNZZDhkyRIYPHy6bNm2Shg0bSrt27eTo0aP5/tzevXvliSeekJYtW/p0fy0XhGB65cKFC5KVlaX+AI4QfMyYMUNGjRolW7ZssbetW7eqoGTWrFlu+42NjZWSJUs6NSIiIhJ58803pX///modZt26dWXSpElSvHhxtebSnZycHLn33nvlxRdflOrVqxeOiqmo/bF9+3b7/ztauHChnDx5Uvr166emVBx17txZjZK4qjVCREQUbtJzrX3El3G03PDF/8cff1QzBqbIyEhp27atqsnlzogRI6Rs2bLqM3nVqlWFYyQE3I1UIMjAHyV3AGIGIRs3bpRt27YV0FkSERFZd2FqcnKy01pIrI105fjx42pUo1y5ck7X4/Lhw4dd/gySSPCZ/N577/l1dy0xEnKxOh+fffbZRfto1qwZ03SJiCikRWjcOwZrHx2/0LsaBfHF6dOnpUePHioAyZ08EpJBCBEREenl6fpHBBJY/nDkyBGn63G5fPnyeY7//fff1YLUjh072q+z2WzqXySLIIv1sssuC93pGCIiorBlFGyNkJiYGGncuLEsXbrUKajA5RYtWuQ5HsVCf/rpJ6cEkU6dOknr1q3V/3tTAoMjIURERFZhaCg25sPPIz23V69e0qRJE7W8YcyYMXL27Fl71fKePXtKpUqV1LoS1BGpX7++088nJiaqf3NffzEMQoiIiMJc165d5dixY/L888+rxaiNGjWSxYsX2xer7t+/X2XM6Bb2QUhElE01XbLKZolOxRP/t6uwLpG79NdIKbv5gtb+TlcuIrrFntT7Akr4Q+9jDacHuC+456viU0pp7a/2+YdEtx39J2jv85aZd2rtL6dUcdGt1E69z/MSv58U3aIy9L9fRJ/L1tpfxJqtWvvLNvS/toOxMNVbDz/8sGquLF++PN+f9XUj2bAPQoiIiMJ9OiZYuDCViIiIgoIjIURERBYREcTpmGBgEEJERGQVBqdjiIiIiEIjCOndu7dERES43Dxu4MCB6jYc43hs7obdc7H61tVtjs1cofvnn3+qAive5iQTERGFw94xYTUdgwpps2fPltGjR0uxYsXUdRkZGTJz5ky59NJLnY5FwDF16lSn61DTvkSJEnLo0CH7dYMHD1a7ADoeW7p0aXs6UJcuXWTlypWybt06ad68ua67QkREFBQRXBPim6uuukrVk//000/l3nvvVdfh/xGAVKtWLU/A4aoePThej2AmMzMzz7HYqA6ByYQJE6Ry5cpqJz8GIURERKFF65qQvn37Oo1aTJkyxV7yVadly5bJuXPnpG3bttK9e3c1AoPysvlBMINRFcdGRERkKUZ4TcdoDUIQEKxevVr27dun2vfff6+uy23hwoUSFxfn1EaOHOnx78HIx9133612/cOakOrVq8u8efPy/RnUu09ISLA3bzbYISIiIoun6F5yySXSoUMHtV4DUyb4f2wRnBt22ps4caLTdeZaj4s5deqUmuZBsGNCoIPAxFz86kpKSoraoMeEkRAGIkREZClGeKXoaq8TgikZs/b8+PHjXR6DBag1atTwqX8sdMWCV8c1IAh4sO3wrl27pGbNmi5/DutQ0IiIiKwqIswWpmqvE4LMlwsXLkhWVpa0a9dOd/dqxOPxxx+XLVu22NvWrVulZcuWag0KERERhelICNZpbN++3f7/7haJYqtgpxOJjnY5deMIAcemTZvko48+ktq1azvd1q1bNxkxYoS8/PLLqi8iIqKQY4TXdExAKqaWLFlSNXcWL14sFSpUcGrXXXedR6MgdevWzROAwB133CFHjx6VRYsW+X3+REREwZyOifCzhQotQwZYiJqfzz77zOnYix3vrt+xY8e6PRa1RHJycjzql4iIiIKP8xZERERWYYTXdAyDECIiIqswwisI4S66REREFBQcCSEiIrKIiH+bv32EirAPQqpPyZHoaH0LWoscPC462RLjRLcz1W3a+0yvUkRrf3F/ZotuJXYc1drfkTYVRbekV4tr7/N8Wb39lV+fpbdDEbll5p3a+1y07GOt/d3UuZfoFntK72L6C+XiRbfM0npf26A7eyO2rusilb4ycjJFdmjt0otfLpyOISIiIgq0sB8JISIisoqIMCvbziCEiIjIKgxOxxAREREFHEdCiIiIrMSQsBG0kZDevXtLRESEajExMVKjRg21AV12drYsX77cfptje/bZZ9XPursdLffGeERERKEignvHFJz27dvL1KlT1a662Hhu4MCBUqRIEWnRooW6fefOnU4b4cXFOaer5r4dypbVnI9IREREhS8IiY2NVRvPwYABA2T+/PmyYMECexCCgCIxMdHtz1/sdiIiopBihNfCVEutCSlWrJicOHEiIH1jtAXNlJ6eHpDfQ0RE5KuIMEvRtUR2jGEYsmTJEvn666+lTZs29usrV66spmDMljtAyX17vXr13P6O1NRUSUhIsLfk5OSA3iciIiKy8EjIwoULVfCQlZUlNptN7rnnHnnhhRdkw4YN6vZVq1ZJfPz/yhCXKlXK6edz3471JO6kpKTIkCFDnEZCGIgQEZGlGJyOKTCtW7eWiRMnquyYihUrSnS08+lUq1Yt3zUfF7s99/oTNCIiIquKCLPpmKAGISVKlFCpuURERBR+LLUw1VtHjx6VjIwMp+uSkpLynZYhIiKyLIPTMSGjVq1aea5bu3atXH311UE5HyIiIgqBIGTatGlub2vVqpXKmPH1diIiopBkcCSEiIiIgiAizBamWqJOCBEREYUfjoQQERFZhcHpmLASdT5boqKytPV3oUqS6BR94rzW/lSfZ3O095lRM0prf9lF9Wc4xaQ7F7uzoqjTztleOpxpVFxrf6W3Z4tuOaX0niPc1LmX1v6++WS66HbTnXrPMTIzAI9N5RjtfRb5W+/zfMcDpbX2ZzufITJUgiLCMFTzt49QwekYIiIiCoqwHwkhIiKyDIPTMURERBQEEcyOISIiIgo8joQQERFZhRFe0zEFNhLSu3dviYiIUA17u2AH3Keeespp7xfzdrSSJUtK06ZN5fPPP8/T1yeffKKqpiYkJEhcXJxcccUVMmLECPn7778L6u4QEREFbDomws8WKgp0OqZ9+/Zy6NAh2bNnj4wePVreeecdGT58uNMxU6dOVcds3LhRrr32Wrnzzjvlp59+st/+zDPPSNeuXVWA8tVXX8nPP/8so0aNkq1bt8oHH3xQkHeHiIiIQmU6JjY2VsqXL6/+Pzk5Wdq2bSvffvutvPbaa/ZjEhMT1TFoL730krz11luybNkyadCggaxfv15GjhwpY8aMkcGDB9t/pmrVqnLjjTfKqVOnCvLuEBER6WVwOqZAYARjzZo1EhPjuhBOdna2TJ48Wf2/ecxHH32kpl8eeughlz+DAIaIiChURYTZdEyBjoQsXLhQBREIMDIzMyUyMlLGjRvndEy3bt0kKipKzp8/LzabTY1ydOnSRd22e/duqV69ulpT4i38PjRTenq6hntEREREITES0rp1a9myZYusW7dOevXqJX369JHOnTs7HYO1IjgG6z3q1q0r77//vpQu/U9JXsOPUrSpqalqIavZMB1ERERkyekYw88WIgo0CClRooTUqFFDGjZsKFOmTFHBiDnlYsJaEBxz0003qUWqWIR69OhRdVvNmjXVotasLO/3eklJSZG0tDR7O3DggLb7RUREpEtEmEzFBHVNCKZinn76aXn22WfV1IsrzZo1k8aNG8srr7yiLt9zzz1y5swZmTBhgsvj81uYikWxSPt1bERERBSmFVPvuusutf5j/Pjxbo959NFHVSrvX3/9Jc2bN1e1RR5//HH179q1a2Xfvn2ydOlS1df06fp3uSQiIiowhqGnhYigBiHR0dHy8MMPy+uvvy5nz551W1sEhc3M0RCk886cOVNN5bRr107q1asnQ4YMUQXLsM6EiIgoVEUwOyYwpk2b5vL6YcOGqeZu4Smqp27fvt3pOmTLmBkzREREFJq4dwwREZFVGOFVrIxBCBERkUVE2P5p/vYRKoK6JoSIiIjCF0dCiIiIrMLgdExYOXBTgkTFFtXWX/x+veNgRhV95xZIWXF6n/XFD4t2xxoW19pfiSM5otvxxqW095n5T8FhbQ62jNXboYiU2un9VgwXE3tK7+Nz0536s++++VhvWYFW/fqLbqcv1T9gHven3udQhe+1difZWSIsZ1kwOB1DRERkERFBTNFFzS7s11a0aFFVlws717vz3nvvScuWLaVUqVKqtW3bNt/j3WEQQkREFObFyubMmaNqbg0fPlw2bdqktldBLS5z25Tcli9frjacXbZsmSociv3YsN0KCot6g0EIERFRmHvzzTelf//+amNZbB47adIkKV68uNrnzZWPPvpIHnroIWnUqJHUrl1bbTaLne9RwdwbDEKIiIjCeDrmwoUL8uOPP6opFcf93XAZoxyeOHfunNpc1tz13lNhvzCViIioMGbHpKen59nIFS2348ePS05OjpQrV87pelzesWOHR79y6NChUrFiRadApsBGQo4dOyYDBgyQSy+9VN3B8uXLq7mk77//Z8kyFrqg/DoaNqzDifbr109OnjzpVNY9MTHRZf/4uc8++0z9/6JFiyQmJkbNWTkaNWqUlClTRg4fDkBaBRERUYhJTk6WhIQEe0tNTQ3I73n11Vdl9uzZMn/+fLWotcBHQjp37qyGc7CLbfXq1eXIkSNqXujE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", "text/plain": [ "
" ] @@ -220,7 +266,7 @@ }, { "data": { - "image/png": "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uXJltGjRArt378aePXv0Iy/t2rWDs7NzketawsPDMWzYMABA3759kZiYiBMnTkjpV1hYGDw8PPTh6+srJS8RERFZnvSCZdeuXahcuTICAwPRoUMHxMfH4/r169i9e7f+OpbOnTsjMTERly5dMjh269atqFy5Mjp27IiQkBBpoysAoFarkZ2dbRBEREQ2RUDCCIu1T8IypN/WXFiIBAUFwcvLC7t37wYAXLlyBZcuXcLTTz+NoKAg7Nixo8ixOp0OK1euxPTp09G2bVu88sorsrtHRERku7jSrVEWWThu586d6Ny5Mzp37oxdu3bpt+/Zswfdu3dHmzZtikwHFQoPD9dfqJuRkWGJ7hEREdEDxiILx+3cuROLFi2Cg4ODfoQFAHbv3o2FCxfCycnJaMFy9uxZVKtWDXl5eZboGhERke0qKLgT5uaogCxWsLi6uuLMmTO4evWqfvvu3bvh4eGBs2fPIi0tzejxN2/etES3iIiI6AFlkYIlOTkZCoWiyPaLFy8Wu71Bgwb3zefl5VXs9nsXmiMiInqg8RoWo/gsISIiIlvBgsUoPq2ZiIiIbN5DP8LifC0fBbkqa3fDKO/d16TnvN6uhvScOXWLTvWZwyNJ/kVjThlyc15t5SA1HwDU25whPee/vatIzVflvPz3xuVKvvSc2Q3cpOZLeUH+efuHF/8okbLKrusoNR8AOGXKP++urw6Vmu/39RFS80FRGcD7cnOWloyl9Svo0vwPfcFCRERkK4QogBDmFYnmHm+rOCVERERENo8jLERERLZCSJgSqqAX3bJgISIishW8S8goTgkRERGRzeMICxERka3g0vxGWWyExc7ODvv378f69esNtnt4eODixYv47LPPAAA9evTArl27kJWVhdzcXBw+fBhDhxre8lavXj0IIaDValG7dm2DfT4+PtBoNBBCoF69epY6HSIiIssrnBIyNyogixUsBQUFGDZsGLp164bXXntNv33BggW4efMmpk+fjnHjxmHjxo3Yv38/2rZtiyeffBKrV6/Gd999h6+++qpIzpSUFAwZMsRg29ChQ5GSkmKp0yAiIiIbYNFrWBISEvDhhx9iwYIF8PHxQe/evTFw4EAMGTIE3t7emDNnDubNm4ePPvoIZ86cQWJiIubOnYv33nsPkyZNQps2bQzyRUREFHl+UHBwMCIiJC8aREREZAWioEBK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", + "image/png": "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lixxel1UVJR1kWz6FGdb9evXt7u+cuXKmZ5PREREvoubHxIREZkEF906x4CFiIjIp9awWMQX5fuAJTXEIpaC+p7carP7ik4Hu00R3e557UXtfSYX0hvRB1zR/weXHKa3z8BEL7wp1LyqvcvE86Fa+0vS250SVvOC9j4TS2ZcQ+eJNC+s6Q89maK1v9TLl0U3S4D+b+sX6xTS2l/ptee19uefmqi1P9Ij3wcsRERE5lp061mQmMYpISIiIvKmNA17AaX5aJaQb+6QRERERD6FIyxEREQmwUW3zjFgISIiMtGUEAvHOcYpISIiIjI9jrAQERGZRKrFTzVP+/BFHo2wbN68WW042LZtW7vjR48eFT8/P3XdyZMn7a47ffq02jcI1+M8aNasmbrsrK1du1ad16NHD3X5ww8/tOvzu+++U8eJiIjyMmQI6Wi+yN/TTQ4HDhwo69atk1OnTmW4vnz58jJ79my7Y7NmzVLHbX377bcqkLFtx44dkzp16kijRo2kcePG1nMLFiwoH330kdoNmoiIiPKHbAcs165dk/nz50vfvn3VCMvMmTMznNO9e3eZMWOG3TFcxnFbxYoVkzJlyti1kSNHyoULF2TRokUqSLHdrRnXx8TEuHV/ExMT1Q7Rto2IiMhM0iz+WpovyvajWrBggdSoUUOqV68uXbp0kdjY2Ay7Kbdv316NhGzYsEFdxv9xuV27dpn2PXnyZDUy880330iFChXsrsM006hRo2TChAly4sQJl+8vApzw8HBri4yMdOvxEhEReRunhJzz92Q6CIEKtGnTRuLj461rTQwFChSwBjOA/+MyjjuD6aWXX35ZJk2aJPfee6/Dc5544gmpX7++DB8+3OX7Gx0dre6j0eLi4ly+LREREeXBgOXAgQOydetW6dy5s7qMRbSdOnVSQUx6vXr1koULF8qZM2fU/3HZmePHj8uTTz4pzz//vDz33HOZ3gesY8F6mH379rl0n4ODgyUsLMyuERERmUmaTaZQdlua+KZsBSwITFJSUqRcuXIqWEGbMmWKmsLB6IWtunXrqqkjBDc1a9ZUC2kduXnzpho5qV27towfPz7L+/Dggw9K69at1cgJERER+Ta367AgUMH6kjFjxkirVq3srnv88cdl7ty5aorIFkZV+vXrp4IaZzCicunSJfnpp59UAOQKpDdjagjraIiIiPI6PZVu/cUXuR2wLF26VC2c7d27t1q8aqtDhw5q9CV9wNKnTx/p2LGjREREOOzzP//5j5ouWrJkiQqIMH1kCz8nJCQkw+0wevPss8/Kp59+6u7DICIi8tG9hPzFF7n9qBCQILU4fbBiBCzbt2/PkDKMEZMSJUo4HTlBVlBycrIKdMqWLZuhIX3amffee0/S0nx1xo6IiIiyNcKCURBnoqKirKnN6VOcbWEax/b6v//+26Wf7ajWS+XKlVWNFSIiorwuTbBo1rPK7Wke3t6suJcQERGRSXBKyDnffFRERETkFtQ/w6wFqstjSxyUL8kMMnqR9II1pijG+sorr8itW7fEW/L9CEv4YZGAIH39JYXqHYq757UXRbdf/zNVe5/N+vTR2t/N4vpfmpV+1Dt1eDUyWHQLXV5Ee59hx/Q+7pRCAaKb/86Ma+I8db2M3tdQQJJo55eqt7+0++vr7VBEbhXTP71QcpfeD7ULTUpq7S816ZbIIa1duv6zNVSqTc3G7bFWdPDgwTJ16lQVrCAYQekQ1F0rVapUhvPnzJkjb7zxhioIiyKvBw8etG5QPHbsWPEGjrAQERGZRBoKv2lo7kKQgYzenj17Sq1atVTgUqhQIWul+vQ2bdok9913nzzzzDNqVAZlTlBvLatRGU8wYCEiIvJBCek2/HWWoJKUlCS//fabygA2+Pv7q8ubN292eBuMquA2RoDy119/ybJly+SRRx7x0qPhlBAREZFppGmYEkr73+3Tb/KL/fdGjBiR4fwLFy5IamqqlC5d2u44Lu/fv9/hz8DICm53//33q6xf1FB78cUX5c033xRvYcBCRERkEmkWf9U87QOwya/tvnnYU0+XNWvWyKhRo1QdNax5OXz4sAwaNEhGjhwp77zzjngDAxYiIiIfFObiRr8o7BoQECBnz561O47LZcqUcXgbBCVdu3a1blSMyvPXr19Xmxe/9dZbakpJN65hISIiMolU8dPS3BEUFCQNGzaUVatWWY+hgjwuN2nSxOFtbty4kSEoQdCTVeHYXA1YjDQmoxUvXlyV2N+zZ0+Gc1944QX1gLBvUHqYV7PtB6X/H3jgAVm7dq3DnxsTE6P6wj5EREREvjQl5GlzF1Kav/jiC5k1a5bs27dP+vbtq0ZMkDUE3bp1k+joaOv57dq1Uxsaz5s3T1Wr//nnn9WoC44bgYspR1gQoJw+fVo1RGTYM+jRRx/NEI3hgb3++utO06Rq165t7Qcrk++44w7VT3x8fIZz0UdmfREREZFrOnXqJB9//LEMGzZMbZ+za9cuWb58uXUh7vHjx9Vns+Htt9+WIUOGqP8jDRobIqNuy2effSbeoiVgwUIezHOh4YGimAwW+5w/f956DkZV8KBw3bp169T16SHQMfrBudjY8Nq1a6ogjS2Muty8eVNdj1Qt5IMTERHldagl6PmUUPYMGDBAjh07ptKft2zZohbT2i6ytd3PD5/XyDrCYlt8HiOgQaXciIgI8Rbta1gQYHz55ZdStWpVNT1ku8tzly5d1FTPww8/7HAjQ1v4hc2YMUM9eJT+tYW+UKCmQIEC6v+4nBX0lz4nnYiIyExya0ooL9DyqJYuXSpFihRRLTQ0VBYvXqzK/BoLcg4dOiS//vqrGnICBC4IRtIvzPn999+t/WBvAgxPzZ07126VMwKNr7/+WvVh9LVgwQIVKGUGa14QLBktfX46ERER+XjA0rx5czXfhYaqd5jHwigKhpYA60xwDKlTgEp4WJfyyy+/2PWDkRSjH1TQw6Kfjh07yvbt263nIIC5/fbbpV69euoypqAqVaqkAqTMYLEQfqbRHE1JERERmWG3Zk+bL9LyqAoXLqymgNDuvvtumTZtmlpdjBXHqJ6HVcc//PCDmvNCw/4Ely5dyrBgFqlVRj933XWXfPjhh1K+fHm1CZMB0z9//PGHtS+0P//8M8vFt1hnY+Sku5qbTkRElJMs4idpHjaLm2nNeYVXCschLRnTQViIg70Frl69Kjt37rRLddq7d69Kl7py5Uqmi3RwG/RjTBlhtAWLf4oVK2Y9B8FPs2bNVAnhGjVqeOMhERERUV4PWLCg9cyZM+rfly9flokTJ6o1JcjHxuhI27ZtrVM4BmQBvfLKK/LVV19J//791THsRWD0gyAH0zwYPRk6dKh1dCUqKkoefPDBDPcBIzu4nnVZiIgor9IxpZPKKSHnkKtdtmxZ1ZAGtW3bNpXGXLNmTTUV1KFDh4w/2N9fnnjiCbsMH0z1GP1gbQoW06IwDQrWYDdJZB856gtwfPbs2ZKcnKzjIREREeW4NIufluaLPB5hQXpyZinKmQUQ2DTJttKto10kbde3YGdIZ1BEDo2IiIh8Dzc/JCIiMolU8VfN0z58kW8+KiIiIvIp+X6EJfhyqgQWyG4h44wCEvXGgMmF9M9FNuvTR3ufa774Qmt/dcf2E92SQgtq7e9K3RTRrdRG/ZuGVf/wD639bZ7VQHQLO6b/dxlyUd/fNZy+T/9zU+CG3veLK7cXEt2Cr+jfeTcpXO9Hz7VIve+TqYm5twZExxqUNK5hISIiIm9KE3/VPO3DF/nmoyIiIiKfwhEWIiIik0i1+KnmaR++iAELERGRSXANi3OcEiIiIiLT4wgLERGRSVgs/pLmYWl9i4+W5mfAQkREZBKp4qeap334ohwLw3r06KF2cTZa8eLFpU2bNrJnz54M577wwgtql2bsR+TI4cOH1U7PFSpUkODgYLntttukc+fOaidnIiIi8j05Om6EAOX06dOqrVq1SgIDA+XRRx+1O+fGjRsyb948tS9QbGxshj4QlDRs2FAOHjwon332mdrNedGiRVKjRg0ZMmRIDj4aIiIivdIsOjZAFJ+Uo1NCGA0pU6aM+jf+/8Ybb8gDDzwg58+fl5IlS6rjGFWpVauWuq5cuXISFxcnkZGR6jqLxaJGau644w5Zv3692vHZgN2dBw0a5PRnJyYmqmZISEjw4iMlIiJyX5qGNSxpPrqGJdce1bVr1+TLL7+UqlWrqukhw/Tp06VLly4SHh4uDz/8sN1O0Lt27ZI//vhDjaTYBiuGiIgIpz8vJiZG9Wk0IwgiIiIi88vRgGXp0qVSpEgR1UJDQ2Xx4sUyf/58a/Bx6NAh+fXXX6VTp07qMgKXGTNmqJEV43rA9I+7oqOjJT4+3towckNERGQmaeKnpfmiHA1YmjdvrkZJ0LZu3SqtW7dWoyjHjh1T12PNCo6VKFFCXX7kkUdUcPHLL7+oy0bgkt3pqLCwMLtGRERkxkq3njZflKMBS+HChdUUENrdd98t06ZNk+vXr8sXX3whqampMmvWLPnhhx/UYly0QoUKyaVLl6yLb6tVq6b+v3///py820RERJSf67AgvRnTQTdv3pRly5bJ1atXZefOnSql2bB3716VwnzlyhW1sBYLcseMGaOmjdKvY8E5ma1jISIiMjMuunUuRx8VsnTOnDmj2r59+2TgwIFq8W27du3UYtu2bdtKvXr1pE6dOtb21FNPqSDkq6++UgEO1rQgpRnZRQhy/vrrL1XL5YMPPpDHHnssJx8OERGRVmoNiqdpzcIpIY8tX75cypYtq1rjxo1l27ZtKo25Zs2aaiqoQ4cOGe+gv7888cQTKqCBqKgoVYsF00p9+vRRt23fvr3KHho/fnxOPhwiIiLytSkhpCfbpiinl5yc7PS6yZMn213GWhasdyEiIvIlFg1ZPhYfHWHhXkJEREQmYUzreNqHL/LNlTlERETkU/L9CMuN0gESEPT/WUmeCrmUJjoFXNG/KcTN4vqf9rpj+2nt7/fB9tOAOjQZ8qLW/gpc0fe6MYQfuaG9z21T7tLan1+w/tekX4r+PlMK6/0+Vny3/vuYGKb3m3DhM3rffyChkv7vtYXP6P1dhv2t93GnJun/PbqKWULO5fuAhYiIyCw4JeScb4ZhRERE5FM4wkJERGQSOvYCSvPRLCGOsBAREZHpcYSFiIjIJLiGxTkGLERERCbBgMVEU0I9evRQewIZrXjx4tKmTRu1H5DB9nrs2lyxYkUZPHiw2oto7dq1UqBAAdmwYYNdv9j1uUqVKvLqq6/m9EMiIiIiX1zDggDl9OnTqq1atUoFJY8++qjdOdjkENf//fffqjT/f//7X3n//feladOmatNEBD4IUgyvv/66hISEqHOIiIjyIo83PrR4PkJjVrkSsAQHB0uZMmVUq1+/vrzxxhsSFxcn58+ft56DHZpxfWRkpApmsBPzjh071HWjRo2SoKAgGTp0qLq8evVqmTZtmsyePVsKFiyYGw+JiIjIYwxYTLyG5dq1a/Lll1+q3ZcxPeTIwYMH5ZdfflGjKoCgBMHJvffeKw899JC8/PLL8uabb0rDhg2d/hxMJ6EZEhISvPBoiIiIyGcClqVLl0qRIkXUvzGtU7ZsWXXM3///B3w6d+4sAQEBkpKSogINjLJER0dbr2/UqJG6/O9//1vuuusueeuttzL9mTExMfLuu+968VERERF5BpsWeL5bs2/KlSmh5s2by65du1TbunWrtG7dWh5++GE5duyY9Zxx48ap63fv3q2CGYyydO3a1a6fd955R9LS0tSUEtbBZAbBTXx8vLVhCoqIiMhMOCVkshGWwoULqykgA9afhIeHyxdffGFdNIv1K8Y51atXl6tXr6pRF1xvHDeClKyCFWPdDBoRERHlPbm+hgWQvozpoJs3bzo9B9NDkNk5REREeRnrsJgsYMGalDNnzqh/X758WSZOnKgW37Zr1856zpUrV9Q5mPI5dOiQvPfee1KtWjWpWbNmbtxlIiIir2PAYrKAZfny5WqhLYSGhkqNGjVk4cKF0qxZM+s5PXv2tI6+YHrowQcfVOnMrkz/EBERkW/J8U//mTNnqpYZi8X1Nc7unEtERGRmHGFxjsMVREREJmGx+KnmaR++KFfSmomIiIjcwREWIiIik0DROE8Lx6V5eHuzyvcBi3+yiL/G5/ZizX/Sr3VJDtO/RqfSj/+/RYEuSaF693BqMuRF0W3zmKla+2v6/POi26VahbT3mVhU75uXX6pod65BAe19VlhzQ2t/Z+7R/9yU+D1Ja38FT14V3YKuhmnvM7Wg3tdk8JU0rf2lJOvtzx1cw+Icp4SIiIhIJk2aJJUrV1b79TVu3FhVos8Myo/0799fZf2iMCtKjyxbtsxr9y/fj7AQERHl90W38+fPl8GDB8vUqVNVsDJ+/Hi1bc6BAwekVKlSGc5PSkpSmw/juq+//lrKly+vtteJiIgQb2HAQkREZBK5NSU0duxY6dOnj7UGGgKXH374QWJjY9V+fenh+KVLl2TTpk1SoMA/U7oYnfEmTgkRERH5oISEBLuGKvOOYLTkt99+k5YtW1qPYbscXN68ebPD2yxevFiaNGmipoRKly4tderUUcVdU1O9sMjNuE9e65mIiIiyNSXkaYPIyEi1sbDRYmJixJELFy6oQAOBhy1cNrbRSe+vv/5SU0G4HdatvPPOOzJmzBjrBsbewCkhIiIik7BomBKy/O/2cXFxEhb2/1leWBirC/b5w/qVzz//XG1O3LBhQzl58qT85z//keHDh0u+GGFBNDdo0CCpWrWqWqmMCO++++6TKVOmyI0bN6zzZNhjKH378MMPc/vuExERmUJYWJhdcxawlChRQgUdZ8+etTuOy9jLzxFkBiErCLczYHNifIZjisnnR1gwxITgBKuMMRdWt25d9Qv+/fffVRSHVcjt27dX52L3ZiwQsoWNFImIiPIqVN7ydIs8i5vnBwUFqRGSVatWyeOPP24dQcHlAQMGOLwNPqvnzJmjzsN6Fzh48KAKZNCfzwcs/fr1U7sxb9++XQoXLmw9XqVKFXnsscfsNjpEcOIs8nMEi41sFxxhARIRERGJSmnu3r27NGrUSKKiolRa8/Xr161ZQ926dVODBsY6mL59+8rEiRPVjMjAgQPl0KFDaqDhpZde8tp9NE3AcvHiRVmxYoV6wLbBii1M+2QXfsnvvvuuB/eQiIjIu1BWH/952oe7OnXqJOfPn5dhw4apaZ369evL8uXLrQtxjx8/bh1JMRb0/vTTT/LKK6/InXfeqYIZBC9Dhw4VbzHNGpbDhw+rEZTq1atnmFsrUqSIara/CPzbOG609evXO+0/Ojpa4uPjrQ2LkYiIiHw1S8hdmP5B8TfMRmzZskUVkDOsWbNGZs6caXc+0pp//fVXuXXrlhw5ckTefPNNuzUtPjvC4gxKA2OO7Nlnn7Wb0nnttdekR48educiwnMGa2F0rpAmIiKinGOagAVZQZjyQRlgW1i/AiEhIRlGXnAbIiIiX4GUZj9ufmjuKaHixYurfQmwiAcLfYiIiPIb5JboaL7INAELTJ48WVJSUtQqZWzEtG/fPjXi8uWXX8r+/fvt5sauXr2qFgbZNmb+EBER+SZTBSy333677Ny5U+1fgEWy9erVU8HLhAkT5NVXX5WRI0daz8VKZuR727bXX389V+8/ERFRXl10a3amWcNiQOCBAAXNmaNHj+bofSIiIsoJOgIOi48GLKYaYSEiIiLKEyMsRERE+RWzhJzL9wFLcHyqBBZI1daff4reQavARP3Lva9G6q9Hc6Vuitb+ClzRX3yo6fPPa+1v7eefi273v/SC9j4v19L75lXotP6B2VK7krX3ea1CQa39pXphe5Tkwnpf57fqFBXdrpXX/3wX26/3+T7XsIDW/lITA0WWS67QkeVjYZYQERERUe7I9yMsREREZvHPCIuni27FJzFgISIiMglmCTnHKSEiIiIyPY6wEBERmQRmczyd0bGIb2LAQkREZBKcEnKOU0JERERkeqYIWLBx4aBBg6Rq1apSsGBBKV26tNx3330yZcoUuXHjhjqncuXK4ufnJ/Pmzctw+9q1a6vrZs6cmQv3noiISPOckKfNB+X6lNBff/2lgpOIiAgZNWqU1K1bV4KDg+X333+Xzz//XMqXLy/t27dX50ZGRsqMGTPk6aeftt7+119/VQFP4cKFc/FREBERaaBj80KLb04J5XrA0q9fPwkMDJTt27fbBR1VqlSRxx57TCw2CeXPPvusjBs3TuLi4lTwArGxser47NmzM/05iYmJqhkSEhK88niIiIjIx6aELl68KCtWrJD+/fs7HSHBVI8BU0WtW7eWWbNmqcuYLpo/f7706tUry58VExMj4eHh1mYEPERERGZhlOb3tPmiXA1YDh8+rEZQqlevbne8RIkSUqRIEdWGDh1qdx2CE6xVwe2+/vpruf3226V+/fpZ/qzo6GiJj4+3NozSEBERmTFLyNPmi0yx6Da9rVu3yq5du9RiWttpHGjbtq1cu3ZN1q1bp6aDXBldAayLCQsLs2tERESUN+TqGhZkBWHK58CBA3bHsX4FQkJCMtwG6126du0qw4cPly1btsiiRYty7P4SERF5FUZHuOjWfCMsxYsXl4ceekgmTpwo169fd/l2GFVZu3atWpRbtKj+7dSJiIjIXHI9S2jy5MkqrblRo0YyYsQIufPOO8Xf31+2bdsm+/fvl4YNG2a4Tc2aNeXChQtSqFChXLnPRERE3qBj0azFRxfd5nrAgkWzO3fuVDVYsDD2xIkTar1JrVq15NVXX1Vpz85GZ4iIiHwKNxMyb8ACZcuWlQkTJqjmzNGjRzPt48qVK164Z0RERGQGpghYiIiIiJsfZoYBCxERkZn46JSOp/J9wHI2KkD8CwZo6y8gUXNkW/Oq3v5EJHR5Ee19ltqo73cI4Uf+2fRSp0u19C7Svv+lF0S3DZ9+pr3PJq++qLW/WxGi3Ynmel8/UHF5stb+bpYIFu00v10U3ai/IGZyq4qm/0CutETvkoCU1EQ5rLVH0iHfByxERERmwSkh5xiwEBERmQWzhPJWaX4iIiIiWxxhISIiMg1M53g6peMnvogBCxERkVlwSsgpTgkRERGRbwYsZ86ckUGDBqndlgsWLCilS5dW+wFNmTJFbtz4/3TUTZs2ySOPPKI2KMR5devWlbFjx0pqamqGPpcuXSpNmzaV0NBQtUfQ3XffLTNnznT487/55htp0aKF6hc7OlevXl1tiIgS/0RERHl+hMXT5oPcDlj++usvueuuu2TFihVq/x8ECZs3b5bXX39dBR0rV65U5y1atEgFIBUqVJDVq1erjQwR5Lz//vvy9NNPi8VmdyaU5MfOywh6tmzZInv27FHnvPjii2o/IVtDhw6VTp06Sf369WXx4sVy4MABmTNnjlSpUkXtRURERJRnISVZR/NBbq9hwWaEgYGBsn37dilcuLD1OAIGBB0IRK5fvy59+vSR9u3by+eff24957nnnlOjMTi+YMECFXjExcXJkCFD5OWXX1YBkAHHgoKC5KWXXpKOHTtK48aN5ddff5XRo0fLJ598oo4bKlasqHZ1tg2CiIiIKJ+OsFy8eFGNrPTv398uWLHl5+enzsG56UdHoF27dlKtWjWZO3euuvz1119LcnKyw3NfeOEFKVKkiPVc/B+Xne3gjJ/tTGJioiQkJNg1IiIiM8H3bh1N8nvAcvjwYTWKgTUjtkqUKKECCTRM2Rw8eFAdr1mzpsN+atSoYT0H/w8PD1c7NqeHERaM3Niei8sY4TFgTYzxs9Hi4+Md/syYmBj1c4wWGRnpzkMnIiLyPq5h8W6W0NatW2XXrl1Su3ZtNZJhyIkpGiy2xc/+7LPP1FSUs5+J9S0IZoyGqSgiIiLywYAFWUGYdsFCV1sY9cB1yNgBTPnAvn37HPaD48Y5+D8CiFOnTmU4LykpSY4cOWI994477lCLfjGFZIiIiFA/u3z58pne9+DgYAkLC7NrREREpsJFt3oCluLFi8tDDz0kEydOVKMZzrRq1UqKFSsmY8aMyXAdMnsOHToknTt3Vpc7dOggBQoUcHju1KlT1c8xzsX/r127JpMnT3bnbhMREeUJfhY9zRe5nSWEYAHpx40aNZIRI0bInXfeKf7+/rJt2zaVuoxsHSzIxRQNUpOff/55GTBggBrRWLVqlbz22mvy5JNPylNPPWXN8EHmD7KCUKula9euKoD5/vvv5c0331THkSEETZo0UZfRjh07Jv/+97/VWpTTp0/L9OnT1egP7gsRERHl84Dl9ttvV7VXkIKMdSEnTpxQ0y21atVSmT5GBg+CEtRf+eCDD+SBBx6QW7duqSmdt956S6Uw22b04DKmlT7++GOVsozCclgPg0J0PXv2tPv5OCcqKkpdFxsbqwrVIVX6wQcfVPVgONVDRER5Fkvz691LCBk9KPaGlhkEKsuXL3epT9RmQXMFRmeMERoiIiKfoWMNioVrWIiIiIhyBXdrJiIiMgtOCTnFERYiIiIyvXw/wlLpx5sSGKgvHE2oXFB0SjwfKrqFHfv/4n66VP/wD639bZtyl+iWWFTvvO7lWvrniZu8+qL2Pjd/PFVrf9Vm9hXdyq9J097njTIFtPaXrP9PUdLO630NXWyqv4J3oXOp2vsUzX86R9tHaO0vNfGWyB7JHRxhcSrfByxERESmwYDFKU4JERERkekxYCEiIjKLXCzNP2nSJKlcubIq4oqCrdgn0BXz5s1TtdUef/xx8SYGLERERPm8NP/8+fNl8ODBMnz4cNmxY4fUq1dPWrduLefOncv0dkePHlVFY1F3zdsYsBAREeVzY8eOlT59+qjq8qhcj738ChUqpCrKO4Oq9M8++6y8++67qlq9tzFgISIiMtuiW0+biCQkJNi1xETHGaJJSUny22+/ScuWLa3HsC8fLmPLG2fee+89KVWqlPTu3VtyQq4FLD169LDOd+HfmP9CCwoKkqpVq6pfREpKirp+zZo16rqiRYuqPYlsYdNF47ZERET0D2wOHB4ebm0xMTHiyIULF9RoCfbls4XLZ86ccXibDRs2qE2Hv/jiC8l3ac1t2rSRGTNmqAhw2bJl0r9/f7VrMzZYNISGhsqiRYukc+fO1mP4hWHH5+PHj+fSPSciIjKfuLg4uw2BsVGxDlevXpWuXbuqYKVEiRKSU0wzJYRfZJkyZaRSpUrSt29fNRS1ePFiu3O6d+9uN5928+ZNtToZx7OCQCj98BgREZGZYK7A40W38g8EK7bNWcCCoCMgIEDOnj1rdxyX8bmc3pEjR9Ri23bt2klgYKBqs2fPVp/Z+Deu9+mAJb2QkBA1r2YLEd369eutoynffPONSsFq0KBBlv1hKMx2aAxDZURERPk9rTkoKEgaNmwoq1atsh5LS0tTl5s0aZLh/Bo1asjvv/8uu3btsrb27dtL8+bN1b+99flquoDFYrHIypUr5aeffpIWLVrYXYfFPQ8//LDMnDlTXcZoS69evVzqF1NL8fHx1oahMiIiIhKV0owpnlmzZsm+ffvUTMf169dV1hB069bNukQDdVrq1Klj1yIiItSyDfwbAZBPr2FZunSpFClSRJKTk1Vk98wzz8iIESMynIcAZdCgQdKlSxe1ennhwoVq1CUrGArTNX9HRETkS6X5O3XqJOfPn5dhw4aphbb169eX5cuXWxfiYmYDmUO5yTQBC4aSpkyZoiKzcuXKqXkwRzDC8vzzz6s0KsyfFS9ePMfvKxERka/tJTRgwADVHEG2bmaMmY98EbAULlxYpTNnBYEMhqZGjx4tP/74Y47cNyIiIspdplvD4oqRI0eqoSuUDSYiIvIVuVWaPy/ItREWrFNxNu2TFUwb5WTuNxERka9PCZldrgUs2FDJmALKau6rWbNmKnvIGVTMzex6IiIiyttyfEro8uXLKiMIC3hs9y0gIiLK9zTuJeRrcnyEBWnJ2P9nyJAh8thjj+X0jyciIjItHWtQ/Biw6IG9gMzkStUQCQgqqK2/VH1dKUmhol1KoQDtfW6elXW1YXf4Bev/i/NL1dtfodP6ByhvRWjvUqrN7Ku1v4M9pohuDY/qvY8QGvfP5qm6JBfWv8Hq9TJ6X0Phf+t9zJASov9xp4TofQ+KOJymtb/UZL39kY+lNRMREeV72Sitn4GntzcpBixERERmwSwh36rDQkRERPkLR1iIiIhMgotuneMICxEREZkeR1iIiIjMgmtYzD3C0qNHD/Hz85MXX3wxw3X9+/dX1+EcW5s3b5aAgABp27ZtDt5TIiIiL9Kxj5BFfJIpAhaIjIyUefPmyc2bN63Hbt26JXPmzJGKFStmOH/69OkycOBAWbdunZw6dSqH7y0RERHly4ClQYMGKmj59ttvrcfwbwQrd911l925165dk/nz50vfvn3VCEtWexERERHlCSzNb/6AxSjbP2PGDOvl2NhY6dmzZ4bzFixYIDVq1JDq1atLly5d1HlZbX6YmJgoCQkJdo2IiMhUGLDkjYAFwceGDRvk2LFjqm3cuFEdczQdZBxv06aNxMfHy9q1azPtOyYmRsLDw60NozlERESUN5gqYClZsqR1igcjLfh3iRIl7M45cOCAbN26VTp37qwuBwYGSqdOnVQQk5no6GgV2BgtLi7Oq4+FiIjIXZ4uuPXTUMfFrEyX1oxpoQEDBqh/T5o0KcP1CExSUlKkXLly1mOYDgoODpaJEyeq0RNHcD0aERER5T2mGmExpniSkpIkOTlZWrdubXcdApXZs2fLmDFjZNeuXda2e/duFcDMnTs31+43ERER5aMRFtRW2bdvn/XftpYuXSqXL1+W3r17ZxhJ6dChgxp9cVTLhYiIKE9g4bi8M8ICYWFhqqWHgKRly5YOp30QsGzfvl327NmTQ/eSiIhIL65hMfkIS1Z1VL777rss+4iKisoytZmIiIjyJlMELERERPQ//O7tEAMWIiIis+Aalry1hoWIiIjIVr4fYUkK9ZOAYD9t/d0orze0Dat5QXTz3+m4Vo0nwo6laO3PL0X/V4RzDQpo7a/UrmTR7URz+8w4HcqvSdPaX8OjfUW330ZM0d7nv7r01tpfcLz+12TIuSSt/QVt+kN0u9yhvvY+g+NTtfYXcvr/N83VISXlluQWHYtm/Xx0hCXfByxERESmwSkhpzglRERERKbHERYiIiKT4JSQcwxYiIiIzIJTQk5xSoiIiIhMjyMsREREZsERFu+OsPTo0UP8/PwcbjzYv39/dR3OsT03fcMuzWvWrHF4nW3DOXDixAkJCgqSOnXq6HgIREREuY57CeXACEtkZKTMmzdPxo0bJyEhIerYrVu3ZM6cOVKxYkW7cxGczJgxw+5YcHCwFC5cWE6fPm09NmjQIElISLA7t1ixYtb9h5566ilZt26dbNmyRRo3bqzroRAREZGvBiwNGjSQI0eOyLfffivPPvusOoZ/I1i57bbbMgQnZcqUcdiP7XEEPomJiRnOxSaHCGImT54sFSpUULs4ZxWwoB80AwIhIiIiU+GUUM4suu3Vq5fdaEhsbKz07NlTdFu9erXcuHFDWrZsKV26dFEjO9evX8/0NjExMRIeHm5tGBEiIiKifBiwIHjYsGGDHDt2TLWNGzeqY+ktXbpUihQpYtdGjRrl8s/BiMrTTz8tAQEBag1LlSpVZOHChZneJjo6WuLj460tLi4uW4+RiIjI6yMsnjYfpDVLqGTJktK2bVu1vgTTNvh3iRIlMpzXvHlzmTLFfu8QY21KVq5cuaKmmhAYGRAUIYgxFvY6gmkoNCIiIrNi4bgcTGvGtNCAAQPUvydNmuTwHCyurVq1arb6xyJeLOa1XbOC4CgtLU0OHjwo1apVy+Y9JyIionxTOA4ZQElJSZKcnCytW7fW3b0aSRkyZIjs2rXL2nbv3i0PPPCAWjNDRESUZ3FKKOdGWLCuZN++fdZ/O4JsnTNnztjfkcBAh9NHthCc7NixQ7766iupUaOG3XWdO3eW9957T95//33VFxERUV7DKaEcLs0fFhammjPLly+XsmXL2rX777/fpdGVWrVqZQhW4IknnpBz587JsmXLPL7/REREZC5ahiKwyDYz3333nd25WZ3vrN8JEyY4PRe1WlJTU13ql4iIyJRYh8Upzp0QERGZBQMWp7hbMxEREZkeR1iIiIhMwu9/zdM+fFG+D1giDidLYAHH2UzZUXbDDdEpsWS46Ha9jP6nPeSi3vVDKYX1D/5VWKP3ublWoaDoVnF5svY+b5QpoLW/0LgU0e1fXXpr73PVl9O19tfymV6iW1qg3o+WEwMbiG7F9ul/vlOD9T7uq7cV1tpfSnKAyG+SOzgl5BSnhIiIiMj08v0ICxERkVmwDotzDFiIiIjMglNCTnFKiIiIiEyPAQsREZGZ5NI+QpMmTZLKlStLwYIF1QbDW7dudXruF198ofbwK1q0qGotW7bM9HwdGLAQERGZbA2Lp81d8+fPl8GDB8vw4cPVnn316tVTGxhjyxtH1qxZo/bwW716tWzevFkiIyOlVatWcvLkSfG5gKVHjx7i5+enWlBQkFStWlVtXpiSkqJ+EcZ1tu3tt99Wt3V2PVr6TRWJiIgoc2PHjpU+ffpIz5491Z59U6dOlUKFCklsbKzD87EJcb9+/aR+/fpqf79p06ZJWlqarFq1Snxy0W2bNm1kxowZavdmbFrYv39/KVCggDRp0kRdf+DAAbtNFIsUKWJ3+/TXQ6lSpXLo3hMREZl30W1CQoLd4eDgYNXSS0pKkt9++02io6Otx/z9/dU0D0ZPXHHjxg1JTk6WYsWKiU8GLPjFYdNC6Nu3ryxatEgWL15sDVgQfERERDi9fVbX20JQhGZI/0QSERH5UlpzZGSk3XFM94wYMSLD+RcuXFCbB5cuXdruOC7v37/fpZ85dOhQKVeunApy8kVac0hIiFy8eNErfcfExMi7777rlb6JiIjMJi4uzm4WwtHoig4ffvihzJs3Ty3XwIJdn150a7FYZOXKlfLTTz9JixYtrMcrVKigpoGMlj6YSX997dq1nf4MDHXFx8dbG55IIiIin8oQsvz/lBCCFdvmLGApUaKEBAQEyNmzZ+2O47IxC+LMxx9/rAKWFStWyJ133inelKsjLEuXLlWBBua9sFjnmWeeUcNV27ZtU9evX79eQkNDrecjdcpW+uux/sUZZ3N3RERE+bnSbVBQkDRs2FAtmH388cfVMWMB7YABA5zebvTo0fLBBx+owYZGjRqJt+VqwNK8eXOZMmWK+mVh7isw0P7u3HbbbZmuUcnqeiIiIsoaUpq7d++uAo+oqCgZP368XL9+XWUNQbdu3aR8+fJqeQV89NFHMmzYMJkzZ46q3WJk6BozHj4XsBQuXFilMxMREVHulebv1KmTnD9/XgUhCD6Qrrx8+XLrQtzjx4+rzCEDBhuQXfTkk0+6tLDX5xbdugsFbW7dumV3rHjx4plODREREVFGmP5xNgWEBbW2jh49KjktTwcs1atXz3AMOeP33HNPrtwfIiIij3DzQ/MFLDNnznR6XbNmzVTmUHavJyIiyotyY9FtXmGKtGYiIiIin50SIiIi8imcEnIq3wcsKYX8RQroG2i60MB+byNPpQWIdgFJ+vs8fZ/eO1p8t/6/uDP3FNLaX2qQaHezhP5aQcmhmvsr7Ke3Q9RJitf/fLd8ppfW/lbOcbwJnCea9e6jtb/ifySLdl748Av4/11StDjZOk1rf2k3U0W+kVzhZ7Go5mkfvohTQkRERGR6+X6EhYiIyDQ4JeQUAxYiIiKTYJaQc5wSIiIiItPjCAsREZFZcErIKQYsREREJsEpIRNMCfXo0UP8/PxUw14/2Gn59ddft9sLyLgeLSwsTO6++275/vvvM/T1zTffqGq34eHhalfIO++8U9577z25dOlSTj0cIiIi8tU1LG3atJHTp0/LX3/9JePGjZPPPvtM7exoa8aMGeqc7du3y3333ad2gvz999+t17/11ltqV0kEMz/++KPs3btXxowZI7t375b//ve/OflwiIiIvDMl5GnzQTk6JRQcHCxlypRR/46MjJSWLVvKzz//LB999JH1nIiICHUO2siRI+WTTz6R1atXS926dWXr1q0yatQoGT9+vAwaNMh6m8qVK8tDDz0kV65cycmHQ0REpBWnhEy4hgUjI5s2bZJKlSo5vD4lJUWmT5+u/h0U9E9J0a+++kpNAfXr18/hbRDsOJOYmKiaISEhwcNHQERERD4ZsCxdulQFHAhGEDz4+/vLxIkT7c7p3LmzBAQEyM2bNyUtLU2Nnjz11FPqukOHDkmVKlXUGhh3xcTEyLvvvqvtsRAREWnHLCFzrGFp3ry57Nq1S7Zs2SLdu3eXnj17SocOHezOwdoWnIP1KbVq1ZJp06ZJsWLF1HUWD/ZHiI6Olvj4eGuLi4vz+PEQERF5a1oou81X5WjAUrhwYalatarUq1dPYmNjVeBiTPsYsHYF57Rq1UotwMUC23PnzqnrqlWrphbsJicnZ2v9DDKPbBsRERHlDblW6RbTQW+++aa8/fbbavrHkaioKGnYsKF88MEH6vIzzzwj165dk8mTJzs8n4tuiYgoT8NMgo7mg3K1NH/Hjh3VepVJkyY5Pefll19W6c8nT56Uxo0bq9otQ4YMUf/fvHmzHDt2TFatWqX6mjVrVo7efyIiIjNNB/n58LRQrgYsgYGBMmDAABk9erRcv37dae0WFJkzRlmQAj1nzhw1ndS6dWupXbu2DB48WBWPw7oYIiIi8j05liU0c+ZMh8ffeOMN1ZwtqkXV23379tkdQ9aQkTlERETkM5gl5BT3EiIiIjIJv7R/mqd9+KJcnRIiIiIicgVHWIiIiMyCU0JO5fuAJbmIv6QF6RtoSg3yE51CT6aIbn6p2ruUAjf0DtYlhun9PUKJ35O09pdcOEC00/+wJe283k6vl9E/MBtyTu9zA2mBeh93s959RLc107/Q2l+Lbr1Ft5ul3K8snpVCZ92vpZWZarF6+0tJSZQTWnskHfJ9wEJERGQW3PzQOQYsREREZqGj8JvFNyMWLrolIiIi0+MICxERkUlwSsg5BixERERmwSwhpzglRERERPkjYDl//rz07dtXKlasKMHBwVKmTBm1z8/GjRvV9ZUrV1Yl9tGw2WG5cuWkd+/ecvnyZbvS/REREQ77x+2+++479e9ly5ZJUFCQ7Nixw+6cMWPGSIkSJeTMmTM6HhIREVGO4+aHXg5YOnToIDt37lS7JR88eFAWL14szZo1k4sXL1rPee+99+T06dNy/Phx+eqrr2TdunXy0ksvuf2zHnnkEenWrZtqiYmJ6tiff/4pb7/9ttr1GcESERFRns4S8rT5II/XsFy5ckXWr18va9askaZNm6pjlSpVkqioKLvzQkNDrcFE+fLl1c7Kc+fOzdbPHDdunNStW1eGDx8u77//vuqrXbt20qlTJ6e3QXBjBDiQkJCQrZ9NREREeTBgKVKkiGqYsrnnnnvUlFBWTp48KUuWLJHGjRtn62ci+ImNjVXTTn///bfExcXJ8uXLM71NTEyMvPvuu9n6eURERDmBWUJenBIKDAxU608wHYQ1KPfdd5+8+eabsmfPHrvzhg4dqgKbkJAQqVChglqXMnbs2Gz/3BYtWsiTTz4pCxYskE8//VSKFy+e6fnR0dESHx9vbQhyiIiITJkl5GnzQdrWsJw6dUqtXWnTpo2aHmrQoIEKZAyvvfaa7Nq1SwUyq1atUsfatm0rqanZ29gGozQYVSlUqJCaksoKRn7CwsLsGhEREeWztOaCBQvKQw89JO+8845s2rRJevToodaYGJDBU7VqVbnjjjvU6Mj48ePVeatXr1bXI4C4fv26pKWlZVgjA+Hh4XbH+/TpIw0bNpSlS5fKlClTZO3atboeChERUa5gllAu1GGpVauWCkCcQXoz3Lx5U/2/evXqkpKSokZhbBnpy9WqVbMemzZtmmzYsEGmT58uzZs3VynVvXr1yvTnERERmV6aRU/zQR4HLEhdxojJl19+qaZ7sAh24cKFMnr0aHnssces5129elXVSEFq89atW9UUUcmSJeXee+9V19euXVtatWqlAg9MGaEfTPn069dPZf8gswiOHTsmgwcPlo8//lhlI8FHH32k1sS88cYbnj4cIiIi8tUsIWT7INX4yJEjkpycLJGRkWrKBotvDcOGDVMNEKjcfffdsmLFCrvFsvPnz1fTSC+88IJaE4PFuU888YSaZgKLxaIKzjVp0kSef/556+2wjgXrZVD7BQtxjfRqIiKiPIWl+b0XsGAxK1KG0Zw5evSoS30hy+iTTz5RzRGMoqxcudLhdffff7+aUiIiIsqr/DSkJfuJb+JeQkRERGR63K2ZiIjILHSU1rf45pxQvg9YSqw+LoH+WVfndZXlxj9ZT7qk2mwQqUva/fW193nl9kJa+yt8xj69XYeCJ69q7e9WnaKiW9GN+gsaXmwaqbW/8L/1T70GbfpDe58nBjbQ2l/xP5JFtxbdemvt75fZ00W3Zs/10d5nYlG9Hz1XI4O09peaFCCyTXIFK906xykhIiIiMr18P8JCRERkGswScooBCxERkUn4WSyqedqHL+KUEBEREZkeR1iIiIjMAvkGnuYcpIlP4ggLERERmV6eDFhQ8TazNmLEiNy+i0RERNlew+Jp80V5MmDBBopGGz9+vISFhdkde/XVV3P7LhIREWU/S8jTlg2TJk2SypUrS8GCBdUegdioODPY6LhGjRrq/Lp168qyZcvEm/JkwFKmTBlrCw8PV6MqtsewISMRERG5BpsPDx48WG1AvGPHDqlXr560bt1azp075/D8TZs2SefOndWGxDt37pTHH39ctb1794q35MmAJTsSExMlISHBrhEREZmyNL+nzU1jx46VPn36SM+ePaVWrVoydepUKVSokMTGxjo8H5sUt2nTRl577TWpWbOmjBw5Uho0aCATJ04Ub8k3AQt2k8ZojNEiI/WWKyciItJVmt/TBum/pOOLuyNJSUny22+/ScuWLa3H/P391eXNmzc7vA2O254PGJFxdr4O+SZgiY6Olvj4eGuLi9O/ZwsREZFZREZG2n1Rxxd3Ry5cuCCpqalSunRpu+O4fObMGYe3wXF3ztch39RhCQ4OVo2IiCg/7NYcFxenklIMef0zMN8ELERERGbnl/ZP87QPQLBiG7A4U6JECQkICJCzZ8/aHcdlJLI4guPunK9DvpkSIiIiooyCgoKkYcOGsmrVKuuxtLQ0dblJkyYObiHquO358PPPPzs9XweOsBAREfnglJA7kNLcvXt3adSokURFRakaZ9evX1dZQ9CtWzcpX768dR3MoEGDpGnTpjJmzBhp27atzJs3T7Zv3y6ff/65eEueD1h69OihGhERUZ7nQeE3q2zcvlOnTnL+/HkZNmyYWjhbv359Wb58uXVh7fHjx1XmkOHee++VOXPmyNtvvy1vvvmm3HHHHfLdd99JnTp1xFvyfMBCREREnhswYIBqjqxZsybDsY4dO6qWUxiwEBERmYSOvYD8fHQvIQYsRERE+XwNS16Q7wOW8/+qKAFBBbX1F5Co94ViCfAT3W4V099n8BW9jzuhkv4EtqCrWaf3ueNaef33MblVRe19FjqXqrW/lBD9r5/LHepr77PYvhS9HXrhM+BmqQJa+2v2XB/Rbc20L7T3+WC/57X2FxzvYR5wOinJevsjPfJ9wEJERGQaCIw9jZcs4pMYsBAREZkE17A4x8JxREREZHocYSEiIjJVHRZPF92KT2LAQkREZBbMEnKKU0JERERkejkSsDRr1kxefvnlDMdnzpwpERERdsdOnDihNmLKqrzv5s2b1e6S2MOAiIjIJ6Rpaj7IdCMsCGKeeuopSUhIkC1btjg9b/r06TJw4EBZt26dnDp1KkfvIxERkTezhDxtvshUAYvFYpEZM2ZI165d5ZlnnlFBiSPXrl2T+fPnS9++fdUIC4IcIiIi8l2mClhWr14tN27ckJYtW0qXLl3UdtXY3jq9BQsWSI0aNaR69erqvNjYWBXsZCYxMVGN2tg2IiIiUy669bT5IFMFLBhRefrpp9XaFKxhqVKliixcuNDheQhUoE2bNhIfHy9r167NtO+YmBgJDw+3tsjISK89DiIiIvLRgOXKlSvy7bffWgMRwL/TTwsdOHBAtm7dKp07d1aXAwMDpVOnTk6njwzR0dEqsDFaXFyclx4JERFRNnGEJXfrsISFhakgwVGQgtEOmDNnjty6dUsaN25svR7TPGlpaXLw4EGpVq2aOobAJCUlRcqVK2d3XnBwsEycONHaX3q4Ho2IiMi0WIcld0dYsNZkx44dGY7jmG0gMmTIENm1a5e17d69Wx544AG1RgUQqMyePVvGjBmT4TwEMHPnzs2Jh0NERES+OMKCbB6Mfrz00kvy3HPPqZGOH374QQUYS5YsUUEHgpevvvpKLaa1hamf9957T95//31ZunSpXL58WXr37p1hJKVDhw4q6HnxxRdz4iERERHphxoqfhr68EE5MsKCxbOol7J//36VAYRpH2T6YEEtFs0i0KhVq1aGYAWeeOIJOXfunCxbtkydh9s7mvZBwLJ9+3bZs2dPTjwkIiIi7ViHxQR7Cd19992yYsUKh9dNmDDB6e3KlCkjqamp6t/t27d3el5UVFSWqc1ERESUN3HzQyIiIrPgolunGLAQERGZRZoF80Ke9+GDTFOHhYiIiMiZfD/CUuhsigQWSNHWX9CVJNHpYp1ColvJXbe095kUrvelVPiM/m8IqQU9XXpvr9j+ZNHOG1+M9D5sSQkJ0Nsh6iTF/7NOTafUYL0PPCBRtCt0Vu9rKLGo/rf0B/s9r73PdZM/19pfqw7dtfaXkqL/PdJlnBJyKt8HLEREROaho1KtRXwRp4SIiIjI9DjCQkREZBacEnKKAQsREZFZqAwfZgk5wikhIiIiMj2OsBAREZmFJe2f5mkfPkjrCMvUqVMlNDRU7apsuHbtmhQoUECaNWtmd+6aNWvEz89Pjhw5IpUrV1b/njdvXoY+a9eura6bOXOm9TaZNZxDRESUp9eweNp8kNaApXnz5ipAwSaEhvXr16v9gLZs2SK3bv1/bvvq1aulYsWKcvvtt6vLkZGRMmPGDLv+fv31Vzlz5owULlxYXb733nvl9OnT1vbUU0+pzRNtj+EcIiIi8i1aA5bq1atL2bJl7UY58O/HHntMbrvtNhWA2B5HgGN49tlnZe3atRIXF2c9Fhsbq44HBv4zcxUUFKSCH6OFhIRIcHCw3TGc40hiYqIkJCTYNSIiIlPBglkdzQdpX3SLIASjJwb8G9NBTZs2tR6/efOmGnGxDVhKly4trVu3llmzZqnLN27ckPnz50uvXr203K+YmBgJDw+3NozoEBERmQqnhHI2YNm4caNax3L16lXZuXOnClYefPBB68jL5s2b1YiHbcACCE6wVsViscjXX3+tpovq16+v5X5FR0dLfHy8tdmO5BAREVE+C1gwmnL9+nXZtm2bWr9SrVo1KVmypApajHUsCFyqVKmi1rDYatu2rVoDs27dOjUdpGt0BTB1FBYWZteIiIhMRZVh8XSERXyS9rTmqlWrSoUKFdT0z+XLl1WgAuXKlVPTMJs2bVLXtWjRIuOdCQyUrl27yvDhw1Vws2jRIt13j4iIyLxY6TZnC8dhqgejKGi26cyYFvrxxx9l69atGaaDDBhVweJbLNQtWrSoN+4eERER5TFeKRyHYKR///6SnJxsHWEB/HvAgAGSlJTkNGCpWbOmXLhwQQoVKuSNu0ZERGReaSj6lqahD9/jtYAFmUA1atRQ2T+2AQsW4hrpz84UL17cG3eLiIiI8iivBCyoXItMn/QqVark8PjRo0cz7e/KlSsOjyOjiIiIyGdwDYtT3EuIiIjILBiwOMXdmomIiMj08v0IS8HzNyUwwLwLlEqvPa+9zwtNSmrv81qkn9b+wv7W/5wEX9Hb57mGBUS3SkscT3964mj7CK39RRzW/9yEnL6pvc+rt/2zB5kuJ1vrf9zVYpO19nc10vHWJJ4Ijtf/uFt16K61vxXf/FMhXZeEq2lStJrkDlVW38MRkjTfHGHJ9wELERGRWVgsaap52ocv4pQQERERmR5HWIiIiMwCC2Y9ndKxcEqIiIiIvEkFGwxYHOGUEBEREZkeR1iIiIjMAmX1/TxcNGvholu3pKamyr333iv//ve/7Y7Hx8erXZvfeustdXnp0qWqZH9oaKjaP+juu+/OUMEWlXD9/PwkICBATp48aXfd6dOn1S7PuD6rirlERER5onCcp80HeS1gQXCBwGP58uXy1VdfWY8PHDhQihUrJsOHD5cJEyaoXZnvu+8+2bJli+zZs0eefvppefHFF+XVV1/N0Gf58uVl9uzZdsdmzZqljhMREZHv8uoalmrVqsmHH36oghSMhHz//fcyb948FXScPXtWhgwZIi+//LKMGjVKatWqJVWrVlXH/vOf/8iYMWNUEGOre/fuMmPGDLtjuIzjREREeZ0lLU1L80VeX3SLYKVevXrStWtXef7552XYsGHq8tdffy3JyckOR1JeeOEFKVKkiMydO9fuePv27eXy5cuyYcMGdRn/x+V27dpleT8SExMlISHBrhEREZkKp4RyL2DB2pIpU6bIqlWrpHTp0vLGG2+o4wcPHpTw8HApW7ZshtsEBQVJlSpV1Dm2ChQoIF26dJHY2Fh1Gf/HZRzPSkxMjPp5RsM6GiIiInLdpUuX5Nlnn5WwsDCJiIiQ3r17y7Vr1zI9HwMX1atXl5CQEKlYsaK89NJLaj2rKdOaEVhgQe3ff/8tJ06c8KivXr16ycKFC+XMmTPq/7jsiujoaPULMlpcXJxH94OIiEg7FI3T0bwEwcoff/whP//8s0qaWbdunZo9cebUqVOqffzxx7J3717r2lYEOqYLWDZt2iTjxo1TDywqKkrdSYvFota3IHDAA0kvKSlJjhw5os5Jr27dulKjRg3p3Lmz1KxZU+rUqePS/QgODlYRoW0jIiIyFTWlk+Zhs6iu0i+DwNIIT+zbt08FG9OmTZPGjRvL/fffr5JnsDbV0Wc54DP6m2++UUs3br/9dmnRooV88MEHsmTJEklJSTFPwHLjxg3p0aOH9O3bV5o3by7Tp0+XrVu3ytSpU6VDhw5qKgeLa9PD9devX1dBiSMYVVmzZo3LoytERET5TWRkpN1SCCyN8MTmzZvVNFCjRo2sx1q2bCn+/v4ZkmQyg8EKDBqgJIlpCsdhGgajKcgUgsqVK6thISy0ffjhh2X06NEqK6hgwYJqUS4CGGQSvfnmm+o4IjhH+vTpIx07dlS/OCIiIl9hSbOIxc+zKR3L/0ZYsPTBdjYBMw2ewFKMUqVK2R1D0IFSJbjOFRcuXJCRI0dmOo2U4wHL2rVrZdKkSWokBOtXbDOAvv32WzU1tHLlSrW4FkHMJ598oorN1a5dWy3S7dmzp/M7HRgoJUqU8NZdJyIiyh2qSq2eSrdhLi5/QDLMRx99lOV0kKcwLdW2bVtVxmTEiBHmCVhQvdbZ/NRPP/1kl6qMlhmMzBgRoyP169fP9HoiIiJyDDMaWL6RGQwulClTRs6dO2d3HJ/zyATCdZm5evWqtGnTRlW1X7RokUvZvelxLyEiIiIfnBJyVcmSJVXLSpMmTeTKlSvy22+/ScOGDdWxX375RdLS0pwu4TBGVlq3bq2mpBYvXqyWgWQHd2smIiIyC48zhNK8tvkhMnMxSoJ1pEig2bhxowwYMEBtqVOuXDl1Dvb7QyYvrjeClVatWqlEGiTe4DLWu6BhGYg78u0IixGBpqR6lublbf5euH+pSbf095nop7e/JP1/cCnJevtMTdT/5+ON12Nqot7nO1Xz7xFSUvS/JlOSA7T2l3bTvTdXV6Sk6H2+U5P0PmZv/N144/lOuKr3PiZc+6e/3FhqkCLJIhYNfXgJ9gZEkPKvf/1LZQch4/fTTz+1Xo8K9gcOHFBZwrBjxw5rBhG237GF2mxY8uEqP0s+XfyBAnasdktERM4gy6ZChQo58rNu3bolt912m8vZNlnBmhIEBNmdfjGjfBuwYM4NhW6wAAjbBziD4SsENunTwzyhu8+8cB+90WdeuI/e6JP30bx98j6at093+sPHIhaJYpoDowg5BUELCqfqEBQU5FPBSr6eEsKL0J3I2RvVcXX3mRfuozf6zAv30Rt98j6at0/eR/P26Wp/KLSW0xBg+FqQoRMX3RIREZHpMWAhIiIi02PAkgXkjQ8fPtzjksbe7DMv3Edv9JkX7qM3+uR9NG+fvI/m7dMb95FyVr5ddEtERER5B0dYiIiIyPQYsBAREZHpMWAhIiIi02PAQkRERKbHgIWIyAe999571v1ciHwBAxYXYUvtOXPm5PbdICJyybvvvivXrl0Ts1u3bp2kpKTk9t2gPIBpzS7avXu3NGjQwO3tsAG/4t9++02OHj2q9i3CBld33XVXpnsYmQ0ed0CA/p1gc9Po0aNl4MCBEhISoi5jq/RGjRpZ6zRgL5GhQ4fK5MmTXepv9uzZLp3XrVu3bN9n3CfbP1lsMVGkSBGXbuvq85ed17gr9u7dK3Xq1NG2F9iyZcvk0UcfFV9y7tw5KVWqVKbnrF+/Xh544IEs+8JrAxvpZdVfbj/XeF2ePn1a6/08fvy4S+dVrFhR28+kHICAhbK2a9cui7+/v9u3++WXXyy33Xabuq2fn59q+Pftt99uWbt2rdv9GbfPrAUEBFh0OXDggOW1116zlClTxq3bbd++3dKsWTNLfHx8huuuXLmirsPv1B24H4mJiRZd8Ls6e/as9XJoaKjlyJEj1stnzpxx6znHc4M+ihYtaomIiHDYcJ07du7caXn44Yetl4sUKZLhud66davL969y5cqW4cOHW7777junTaeEhATLZ599Zrn77ruz9feT3qFDhyzR0dGWsmXLWgIDA926re1z7UhycrJly5YtbvV56dIly6effur0de7sOmdKlixpWbhwocPrbty4YRk4cKClQIECLj/f586ds+SU7D7XuJ9ZPTfusv0bsX3ftT2m4/VIOSvfbn6YEw4fPqy+ATZu3FjGjRsnNWrUUN+O//zzT/n000/lkUcekT179kiVKlVc7nPRokVOr9u8ebPqF98+PYF57/nz50tsbKzqE6MOgwcPdquPMWPGSIsWLRxuMoZNxR566CH5z3/+I19++aXLfX7zzTfy448/yn//+1+pX7++eCr94KKng401a9aUs2fPSpcuXaRXr15y5513engPRSZMmCD333+/3TE8/vLly6v7i+cIzzmOZWXr1q0yffp0+eSTT9QoH+7js88+K0WLFhVvDPPjZ+E5w463//73v2XSpEnZ6uvmzZuycOFCmTZtmhoFw+jCsGHD5IknnnCrn7Jly9p9k69bt64apcEOvnDx4kVp0qSJWyNMEydOVH/DGKlz9DrHaAh2CX7rrbdc6g8jehiBw+8NI3vGc4N+evbsqUZNVq9e7fL9q1atWpYjuZcuXZLcfq51jzajP2xu26NHD2nXrp0EBvKjzifkcICUr0ZY+vfvb2nRooXD69LS0tR1AwYM8Pi+7d+/3/L444+rb9vdunWzHD16NFv9bN682dK7d29LWFiYpU6dOqq/devWZauvKlWqWHbv3u30+j179qiRJ3dcv37d0q9fP0vBggUtI0eOtKSmplo8kf6bHUYvPBlhgV9//dXy/PPPW8LDwy0NGza0TJ482a1v2OnVqFHDsmPHDqf3ET+vYsWKbvV58+ZNy3//+1/1+itUqJClU6dOlhUrVlg8dfr0aUtMTIylatWqllKlSqnXNkZB/vjjj2z1h5Ej/C7xerzrrrssH3/8sXpNZrc/V55vnOOOevXqWVauXOn0elxXv359t/rE42vUqJEaRcJoy0svvaR+jxhdwSiLq/BYPvnkE8vMmTMzbbn9XON+PvLII5Ynnngi0+bu/fvwww8t1atXt5QuXdoyZMgQy59//un2fSNzYdj5P/iWmpmTJ0+63eeaNWskJibG6TeAl19+WaKjoyW7Tp06pfbGmDVrlrRu3Vp27dqVrTUCGA3BN/X4+Hjp3Lmz+sZUr149KVCggBQvXjxb9w2/r9DQUKfXY90Fvu26o1ChQuqb25NPPim9e/eWJUuWyBtvvJFhbUb79u0lt2A0DW38+PFqVGDGjBny6quvyuOPP65+x+7uY3Ls2DEpWbKkXeZHiRIl7EYNMKrjDmxfj1EgtL///lv9Ltu0aSPnz5+XYsWKSXbgWyxeN23btlWPHf3heZk6dWq2+sPoFEYmnnnmGdm0aZPUrl1bHcfz7U3uftM/cuSI3HHHHU6vx3U4xx21atWSX3/9VY1+derUSb3uV65cKU2bNhV3Pf3009rXsOh+rgHvFcZaMh3KlCmjRqvQNmzYoP4O8XeJ3y1e72gYraI8JrcjJrPA3L4rzR1Yz/D33387vf6vv/5S3/Lchbnx119/3RISEmJp0qRJtkdBDPjW+uabb1pSUlLsjnvy7bhChQqWH3/80en1y5YtU+dk1/fff6/utzE/bTtP7Sqc/8EHH6hvoWgYuXnnnXesl99//32P57mxTgnrddAP1ju4C2teNmzY4PR6XOfuuhiIi4tTo1RYS4Vv8kOHDlVrOLILz8Urr7xiOXjwoJbXUFBQkKVr165q5AejkZ72560RNYykYWTSGVyHc9yRlJSk1ulgrUrnzp3V89uqVSv1nHmyRksX3c+1N9awOILnt3nz5ur3cvHiRa//PNKPAYsXZfWHmJ03yI8++shSrFgxS61atbQtkBw1apTljjvusERGRqpA6Pfff/f4w6FHjx6W+++/3+F1+AC677771DnuMhYeBgcHW0aMGJEhyHJHpUqVtAepcOLECRUIYbgcwQAWC+/bty9b9xHTNq+++qrT6wcPHux02jE9LFieN2+e5aGHHlLBGYbZlyxZ4tHv0PaD+bnnnlNBelRUlGXChAmW8+fPZ/s1hN8hAkYEVOXKlVND+pgaw4d4dl+T+Fs7fPiwmqJD0I/7imlLXEbDB7C7f48IRhHsOYO/J5zjziJrTMdiuhQL9o3fBRZeI/CZNm1argcCup9rbwVWho0bN1qnurEgeMqUKR5PJ1PuYMCS7oMUb1p79+716Num7RvG6tWr1Zuio7Zq1Sq33yDRJ9YdtG/fXtt8r2HNmjVqDQz6v/POO9U3qcy+3WcGHwx4g8Ub2vz589UaIDR8YOJNA9ch48PdNx4EAbVr11ZZSGaDx9mmTRs18oU1RRgF8jQY+Prrr9UHwcSJE+3eZNEvMlDwAe4sqyQ9BLoI0oYNG6Z+98YHdfrmiWvXrlmmT5+uAlLcN7y+x48frzJIsgt/J88++6z6veL1jwAQ2WvucpYp4knmiPH84EPb9rnOzvNjjCz16dPHcvXq1QzXffHFF+pD1zZrLDfpeq69EVidOnXKuoYFa2wwImR8EaO8i3VY/gdz+Vj7gAweQBYGVr3ffffd2e4Tc6SYE3f0KzaO4//uZCVg1bsr8+yYs/Wk1geK5GHNBerHREVFqXUj7mYKbd++Xd1f/E6N+4zHjHlk3D93f7dBQUEqG2PUqFFurwVx5NatW2ptgFHLA+uJEhMTrdcjswBrRrDmw9XnG3UdsPagdOnSTs976aWX3LqfmIdHRhXm+Y2Msr/++ksVBcNzgutcvX8GR6+h7LweM3PgwAGVPYIMJhReRGbY4sWLXbot1kjce++9dtkdWGP11Vdfqdfljh071HotZOi4au3atS6d5+5aEWQAYa2ao+fntddekw8//NDlvpAF9/DDD2e6pum5556Tn3/+WczEk+caz8t9992nNZMH6+/wHt69e3f1vo7LjujI5KOcw4Dlf/CB/Mcff6h0SXxAffzxx+oDDR/Y2YU3F1dUqlRJzOr3339Xb0QIYFDUKjuwGPjQoUPqAxFpltlNScaH2IMPPpjhOD4ckPqKtGJ3FtJhkeAPP/ygFu8CPnCwuNNY/Ld//371geNqoFa5cuUsg0lcj/vrLizCnDt3rvo9Gos5sUD6nnvuyfUP7KwgAFq6dKkKNL7//nstxcTwmjJSus0AKeMIplDKwHidY8Ewgv38BM81/p7w3LgasHij4KKj4Dz9R53O4JxyBgMWm1XlX3/9tbXmBd4skcePTIXChQuLWaAeA1a7Y7TBEQRZCxYs8KiaqiPJyclOv6W4C79TvLkjEMIojDv34f3331ffrvFBjYwRZLrg8UL16tVVXQ0EDq5APY/XX39dZT0YAQsqGhvfklEjBllJqEVDmUNNF1fgg8wV3qjSii8jeM0g6wYuX77slRo0tvA+8sEHH6h6La5w9iGPmi4IgpAVZnbuViE2qjVjhMXZxxGCC3fqxfjCl0XKiAGLzR8N3lxsh/LxR4QRBhTZMkt5aNxPfGtDATlHb15IcUXxJne/OWAa6ODBg+pDH48bQQFSFjFygZRcTHN4CgWv8IH17bffqjdgFP5yp8DUkCFD1JDzY489Jr/88ouaEsBQNPZMwe9l5MiRqhgYgiFX4PeHYMQIcJA+vG3bNutl/D4wbYWpiNyYYrKF+4URFtwnwPOEERYU9XPngwTTR/hQTEpKkn/9618qLV5HOil+/3jzx5YTmX3o4Ll3tT+8lm1Tuj2VftQGRQ0xUuNO4UZHMDKL1zamKTt27CgRERFy4cIFFahgFA/94xxXZDZCiN8f0pS/+OILa9BlJhhdwt/3zJkzVYo8vmC4AqOaugsuko/K5TU0pmGbQWC09FkE7i5I9EZ5aNymbt26KnMCRcN0ZB4h9RaPFX1jYeZPP/2kLqNoGRa4or/PP//ckh222R7FixdXfWHhrW2qqqtQIO2HH35Q/8aiS9xfpEfbLhouX768y/0hUwZF95xBZg+ykVyF7INHH33ULm22cePGKksEDdsbjBkzxuIuLDI1yv6jUBmaUaIfWSiueu+999RtkCL72GOPqcffs2dPiw4o6If0WxRJQ0q4p2mj3igmllVac3ZgYTUWnBp/33idI7unRIkSltatW2ea2u8OZDVh8TH+JpHybBbI2ps1a5blgQceUK+tpk2bqr8DvA/lZsFF2+KDWHDbtm1b1fDvbdu2edwv5Q4GLJns0WN7LDvBBbJskJWBvVuQ1WJkyqRv7sB9OH78uEorxAdObGysxwEL3mx69eqlggt8qGHPG9s3RdTrwIeku9kTyGYoXLiw5cknn1Qp2Eir9SRVGrfFfTTg8dvWgkBmgDv7KCHjCPczs6wffAC5CmncixcvdvqBiOqy99xzj8UdqESKx4ksFNTnMODfRu0YfGC4+ninTp1qvfzzzz+rrBRdKZ63bt2yzJkzx9KyZUuVadaxY0fL8uXLsxWc4u8NFXiR+p5Zy+2ABRlvL7/8ssrqGTdunPoZSEt2dX8ndyEAQuZLbtNdhTh9AIQAH6+hZ555Rr2uskNXoE/mwYDF5tu5Ky23y0PbvulOmjRJfeCgdLfxoZPd4ldGnRAEFbi9bSCFFFh3C9wZxejSpziaqfAXfm+oZ4NS9Y7eOHEdznEVRlBsCwXiW7btZYwK4Q3e3Q/EsWPHOr0eIzY4xxV4rSDYtYURJHcLkrkC20OgTg62aMDImKM03dzYEC+zOizZGUXF82mk5yOVGa97BILegtcTvgTkJozw4osYvtSgBISOv23dBRd1BvpkHgxY3ODJMPf69evVKAbeJDFNgCmW7HyzTf9Gjj9s1Bn417/+pf6wsxOweKMCqDG8e++996ohYuNNx9OAZfbs2WoYHg3fwPB7NC7jDcid+4nHhSADH6ijR4+27laM4nwoooeib+4MbeueYgI8xsxGAXAdznEFfjfpd+/Fc42Ky7ohMHr33XdVATRM07kbsHijmJg36rB4Y9QmM5gWQpHH3OSNKsS6Cy7qDPTJPLiXkAtWrFihdopFuh4WoWYHso/QUEMEiyVffPFF6dChQ7b3bjEgzRcLMrGAFQtEp0yZ4nYfWMxnm46b/nJ2fPbZZ2rRLjJ4sBAP+yZhvyMEyZ7sJo26CrZeeOEFu8vu3G8ssMY+NX379lXZI8ZiUfSBOhLYLTezeirpIats7969akGsI6gZgnPcXSiKBbLOYGFj+r2UnMHjQ10c2xo2WCiM16JtJpyrC2PTwwJj3BbPN/ZvweJjZMdgrxl3923xRi6AO7scu+Onn35Si8gBr+1Vq1ap14Hu/a2wQBj7UmEPn9yEtHwsrMXfDd4P8X6GRfnZfc/AewTqMiHtHu8R2NsMj9HV17UjWOSMxfnOIJHgnXfeyXb/lDuYJZRJWhzeeLGxINIfUcwJAQayALIDH4zoDxvi4QMNq+Gff/55t9/InaV74oMHG3ohNTslJcWtLCH0iYwbo3ATPlhr1KhhTZ1Gf3gD8KRmAeqH4PGj5gIKauENCbVvsBW9GSBlElkOULVq1WwFkoMGDVJZQqjdkz4TCG/syOhp2bKlfPLJJy732axZM5V+jQwoR95++20VHGCjzdwsOtivXz+ZN2+eREZGqtc2PsBsN2l0lzeKieH1i/pKOrOkXPn7dafeB9KsHT1H169fV3+HCKTxAY8MJzNAtp6R+Yf3IARUKGyHFGxXeaPgIn4/qI2D9zFHkF2IL3gosUB5BwMWG3gTwx8eRlM2btyoPlxQeXLnzp0qXdZdSKHEBzQ+ABD04A8Sb+bZ2VHZ0Lx5c5XSjNRJR5C2ilEWd4qTIS3YFXhz11WjAb9j/G5t035ddfHiResu0nFxcSrNE2+WqKeCD/fcgtRMFMVDoDdgwADrmzbeHDHSgA8cvJbcGbVBwTV8G0TxOqR1G7dF0IpvohjFwuvB1ZoX3mJ86CCtObOgyNXRm0ceeUSlcRsjF6gWi5Eg43WP1wCea6MytSsQ9I0YMUL9XSNIwcgIRgdcrQ2TXTdu3HA5DRlfkJx9AOOLDqpEmxGq2xrVsd2tQuyNgos6A30yDwYs/4OS73iDRAVR1ANAvQN8KKJYGoqJZeeNguWhHQcXGG1AcIFvP+4UBkNNHNwO/eB5wjd6TDfg2yc+MPF/jDDhAz43t3jAUDlKpzuaYspOzY8JEyaob64IeIwPcNSGwejD6NGj1ciOK1wZzUKfKKKI+2sU1HOF7tGbrGqmZKfeEF4z+D0a04gYDcNIH16P7o50ugLBOOoM4TlCgJlfuFuFGH8z2a11ldcDfXIPAxabN2rs2YK1DKh4avAkYPFGeWhvFKPzRlVabwQXmJbD84TnCAXk8KaEOW8EQUbQiekYlLH3hSkmWydOnFDTiUZpfozeYIoSUzCu6tmzp0sjYNiCAVMy+HBHobvckH7qM30V4uwELFi7g+fE9neGqTscc3dtkW1QglEbBKgYWUPlZLym8YGNb/EIvDDahveW7MJ7BtbfILDC/krers6b3WkroxovXjcIeN0tOojR4xYtWqj/44uep3QF+mQiubzo1zSM+hFIGXzqqacsS5YsUWmKnqx8R2pnVs3dHUS9UYzOERS/6tKli8pAwYp9FAZzB3YtRhE17Pb8wgsvqEwRZEkhMwoN/SFbyh0oPIc0VEDWCR6r7a7NyChAZhJ5Dq9/ZErlFm9krnkjSwr1PPCa69Chg/o7wfsFdltG6u/cuXPd3q378uXLasd01HJBrSWkWWM3ZONvHeURjL+B3IKUYUcNOzUjewhZRLb1iLKCHe1RqwpF55Bph+cJmULINMTv0N0idPD2229bkpOTVco+soX69u2rGmrlIIMN7714v6e8hQFLOnjzGjZsmEp1RR0N/PG4sz28K1Cb5LPPPrNERUWZohidN6rSeiO48MaHWF6xYMECVdkVlYfR8G/dr8v0H5zuVpLVKX1wkT6wyG76fvrquQgwUPk3u9VzkbaNlHrAlw/8DFQPzs7fDPTu3VulLePvEAF9kyZNVLFBVIJFsTbUJrGtpmxGSBnG/c4O1ERC6vY777yjClqiDACeZ9REcgeCbRS0c/SFEMUTUT8HX6oob2HA4gTecFClE9U68UeDEYKBAwd61CdqpuDbE0Zx8KY0dOhQtytieqMYnTeq0nojuECfuj/EzA6jURjxw2PHc46S+mjVqlVTjxXVYLP74Whm6YOL9IEFrnP3uc6qam52queiLH/66st79uyxZBe23DAKVKJf/B4wAmHYsmWL+rs3MxRIxDYNnsD7D0Z5UYsFwYW7zzVGpjDag/fuUaNGqb+jY8eOqVEV9IcvjJT3cA2Li+sRsGYCi7cwH+oOzMOjZgHWgGA9yFNPPaU2RMvuuhhbWOWORYxY24C+kNaM5u4CQm+t37HdvA79ImvAWFyXnTUI6BPrWIw6IqiLgzlvo4YI1hMsX77cp7aMHzdunNqhGtkj6RcIIj0X61JQTwJ1bnyJN1OwdcIaFfyNO3uduwt/i1j3ZWxsiuwirAe7/fbb1WX8LKzvMPNrHPcXa1jcWWiMDE2sPcNaHWTubNmyRa01Qp0ptKZNm2ZrXd7333+vFlljITkW9yKVGe/F3KU5b2LA4sIuxsgeQhouFnS680aBRafr1q1TmQhIacaiU7zBeRIIOIIPf6RnYqEkdkl1d4En/qDnz5+vdk3t2rWrdOrUSS2s8zRg0R1cuLJo1AwfYjohgwzBCNLhHcGbL+q6uJpCSnpl9To3uLNLte7FxjkNr9f9+/erv29X4PeFAAVBHgITpCPj/452o3eXsQs0ivnhOcFCffRNeRMr3TqBQAMfBt988416g0BKKFIU3YE6Iyh2hDRXZMrolr4YHe6fs/osOV2VNn1FWrxppNetWze3+vSlQMRVyApC3RBncB2yUHyNswDNFkZg8Deam1x5nbsLX46KFCmi/o0RXYzQGkX48AUqtyFV2BFk4KAGy8GDB9X7p6vWr1+vghMELqifgoDCKIXgCXzRxN8GaiPt27dPvVZatWqlihzGxMRkKO5I5scRFi9O32CIE31h9KJmzZpq9AL1XfDHmd0+vVGMLq9Vpc1PMFqGIXJntXow/I4hc7wWfImR6opCdJm9RaGWhi9xpYgaYHojtyDtOLPidviC5s6UGEocIGjB6xxTQqjjgvRoBC5GAGNMubkKKf8oDIjABOUObL/kGSO1eK9v0qSJW/1S7mLAkgPTN/iDRNCCIADlojGcO3bsWBVo2K4ZMVsxOh1VackzeD1i7t7ZHlGo/oraPHiefEn//v3VN2QELfiAwciFp7VsKG/AKBLW5xnrWfD+ixHq9PszZQbbOiAgcTSyjXo2WK+Hv6nM9ukiE8rlRb+mgXThV155xXLw4EG74zq3TAfs5ouV79glGBkF7dq1c+v2Rj0G2/ortsc8qcNy4cIF679RqwCpha+++qrKbtK9cy65ZuPGjSoTBdlqyBBB9sOVK1csmzdvVhlduA61bnzRrVu3rPWRUA8IvwNk7vliVpRh06ZNqgaOLexCXrlyZUvJkiVVjRf8XnwZMnqQxh0TE6Myw/Dcu/uehj6ygvc1ylsYsPwPPgBQqCk0NFTVR5kwYYLl/Pnz2gMWAwpKLVq0yO2AxRvF6JCGidoueFNA6uzOnTtV6iTShpECiGAO95Vyx7fffmutCWQbpKLWDVLS8wO8rkeMGGGpUqWKqpGE2j6+qHXr1qpsge3fJt6D8N6E+ib4ooMaTL4EwQWC8Y8++kjVRsF7MF7jqKWCMhAzZsxQzz8Rp4S8OH2TG9lMRgl9d7II8lLJ+/wKG+hhTt62ND8WELq6qV5eh1RfrNvCMD+G8ZGFYixM9SVY34ZMI+zsDW+99ZbK/sMUCWCBPTYhdWfTR7PD2he87yL1GOtj0LB2xUjlJjIwYMkEdtlFAIAPcexGitoCqH1h9mwmLDhDvQFXIQMB28Rj3QsW2eINZNu2bdKwYUN1PT4c7rnnHvU7oJyF+XakZBo1WKKjo+3WEiHQxH4/vpjxgMeJdGB8ecAHNn4HWM+C9WXe2KzQDPA8Iig19ju6//771RcKBC5w9OhRtXO8GbKFdEGWIoIUY3dzIqdye4gnL8ju9I23oNot5nex30apUqUsAwYMMF1VWtJjypQpdqXY8dygZDtKtKNhigB7pfga7PuCaql33nmn2qMG07P5Aaa7jLUVqPYaEhJiWblypd0UkadVZInyKo6w5DHeyGbyRlVa0gNFtLADMJ53R4XEvvzyS1V/Z/PmzeJL8JpEdhTSmjNL83W1IFtegZRgPL8fffSRfPfdd6rC8alTp9RO0ICd01EzCSOgRPkNC8flMd4qRodS6Ea1zlu3bql0WduqtJQ7Dh8+rKYAbKcMbKdDoqKiVAqwr0FRQVfqkfiakSNHqmld1B7BGh0ELEawApgew9olovyIIyx5jDeK0eXHkvd5RUhIiCqkhYJcjmB9ESp5Isgk34GqsQhYMHqafl8zHLcNYojyC46w5DFY/IqGYWEjmwmlslHk7eeff1aL9dzNZmIgYl4VKlRQBbOcBSyYusM55FvCw8MdHmfxPMrPOMLiA/JCNhNlz6BBg2TlypUqrTx9JhAyiJD+iv2EsAEiEZEvY8DiQ7AoFjUcMOrCgMU3YMEzpnwwBYCN3IzUTwSpEydOVJvj7dy5U0qXLp3bd5WIyKsYsBCZHDa6wyJrTPkZf65YkIqRtMmTJ1szhoiIfBkDFqI8AgsukTUEVatW5XoGIspXGLAQERGR6flmfWsiIiLyKQxYiIiIyPQYsBAREZHpMWAhIiIi02PAQkRERKbHgIWIiIhMjwELERERidn9H55LahDlyIJoAAAAAElFTkSuQmCC", "text/plain": [ "
" ] @@ -249,7 +295,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 16, "metadata": { "colab": { "base_uri": "https://localhost:8080/", @@ -261,7 +307,7 @@ "outputs": [ { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAq4AAAGdCAYAAADT+fGYAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/GU6VOAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAq1klEQVR4nO3deVxVdeL/8TcIaihmOm45aSG5NqJf9yWXcCunvlrzRadFqdEWR2XKFb8WiplLBJZ+M3PU0TS/+HXUHhZqppal5sMFBQU3BExwQxi4sZqc3x/9uCMKBnLx8sHX8/E4j7j3nnvO53y4j+vL07lXF0mWAAAAgArO1dkDAAAAAEqCcAUAAIARCFcAAAAYgXAFAACAEQhXAAAAGIFwBQAAgBEIVwAAABiBcAUAAIAR3Jw9AMBRHnzwQdlsNmcPAwAAlIKnp6eSk5NLtC7hikrhwQcfVFJSkrOHAQAA7kDjxo1LFK+EKyqFgjOtjRs35qwrAACG8PT0VFJSUon/7CZcUanYbDbCFQCASooPZwEAAMAIhCsAAACMQLgCAADACIQrAAAAjEC4AgAAwAiEKwAAAIxAuAIAAMAIhCsAAACMQLgCAADACIQrAAAAjEC4AgAAwAiEKwAAAIxAuAIAAMAIbs4eAOBIg8auVXbuL84eBgCgEvsydIizh3DP4owrAAAAjEC4AgAAwAiEKwAAAIxAuAIAAMAIhCsAAACMQLgCAADACIQrAAAAjEC4AgAAwAiEKwAAAIxAuAIAAMAIhCsAAACMQLgCAADACIQrAAAAjEC4AgAAwAiEKwAAAIxAuAIAAMAIhCsAAACMQLgCAADACIQrAAAAjEC4AgAAwAiEKwAAAIxAuAIAAMAIhCsAAACMQLgCAADACIQrAAAAjEC4AgAAwAiEKwAAAIxAuAIAAMAIhCsAAACMQLgCAADACIQrAAAAjEC4AgAAwAiEKwAAAIxAuAIAAMAIhCsAAACMQLgCAADACIQrAAAAjEC4AgAAwAiEKwAAAIxAuAIAAMAIhCsAAACMQLgCAADACIQrAAAAjEC4otSaNm0qy7Lk4+Pj7KEAAIB7COGKQtzc3O7q/tzd3e/q/gAAgLkIVwdycXHRpEmTdPr0aeXk5CgxMVHTpk2TJM2dO1cnT55UZmam4uLiFBwcXCgSg4KCFBkZqVdffVXnzp1TZmamwsPDVatWLfs6K1as0MaNGxUYGKiLFy8qLS1Nb7/9tqpUqaL58+fr6tWr+umnn+Tv71+i8RacOfXz89O3336r7OxsvfDCC5Kkv/zlL4qJiVF2drZiY2P1xhtv2J+XkJAgSTpy5Igsy9KuXbskSbt27VJYWFihfWzcuFErVqyw346Pj9f06dO1cuVKpaen69NPP9XIkSOVlpamAQMGKCYmRjabTVu2bFHDhg1LPvkAAKDSu7un1yq5OXPmaPTo0XrzzTf1ww8/qFGjRmrZsqUkyWazyd/fX8nJyfrDH/6gpUuXymaz6f3337c/39vbW35+fnr66adVq1YtLVu2TB9//LFefPFF+zpPPPGEzp8/r169eqlHjx5avny5unfvrt27d6tLly4aNmyYlixZou3btyspKalE4547d64mTJigyMhI5eTk6Pnnn1dwcLDGjh2ryMhItW/fXkuXLlVmZqZWrVqlTp066cCBA/L19dXx48eVl5dXqnmaOHGigoODNXPmTEnS448/Lg8PD02cOFEvvfSS8vPztXr1aoWEhBQ69htVrVpV1apVs9/29PQs1RgAAIB5CFcHqVmzpgICAjR27FitWrVKknT27Fnt2bNHkjR79mz7uomJiQoJCdHw4cMLhWv16tU1YsQIJScnS5LGjRunr776ShMmTNClS5ckSampqRo/frwsy9KpU6c0efJkeXh4aM6cOZJ+jeepU6eqZ8+eCg8PL9HYFyxYoI0bN9pvz5w5UxMmTLDfl5CQoNatW+u1117TqlWrdOXKFUnS1atX7eMqjZ07dyo0NNR++/HHH1fVqlX1+uuv6+zZs5KkRYsW6Z133il2G4GBgZoxY0ap9w0AAMxFuDpIq1atVL16de3YsaPIx/38/DR+/Hg1a9ZMNWvWlJubmzIyMgqtc+7cOXu0StK+fftUpUoVtWjRwh6Ix48fl2VZ9nUuXbqkY8eO2W/n5+fr6tWrql+/fonHfvDgQfvPHh4e8vb21rJly7R06VL7/W5ubkpPTy/xNku6vwKZmZn2aJWkCxcu3PYY5syZUyh+PT09S3yGGQAAmIlwdZDs7OxiH+vatavWrFmjoKAgbdu2Tenp6Ro+fLgmTJhQ6v1cu3at0G3Lsoq8z9W15JcvZ2Zm2n+uWbOmJGn06NHav39/ofWuX79+2+3k5+fLxcWl0H1Fffjqxv0VKO0x5OXllfoSBQAAYDY+nOUgp0+fVlZWlnx9fW95rHv37kpMTNR7772nQ4cO6cyZM2ratOkt6zVp0kSNGjWy3+7atauuX7+ukydPluvYb3T58mUlJSXJy8tLcXFxhZaCD2UVBGOVKlUKPffKlSuFxu/q6qrHHnvsro0dAABUbpxxdZDc3FzNmzdP8+fPV15envbs2aN69eqpTZs2On36tJo0aaJhw4bpwIEDGjx4sIYOHXrLNnJycrRy5UpNnDhRtWrV0kcffaR169bd0XWkZREUFKSPPvpI6enp2rp1q6pVq6aOHTvqgQceUFhYmC5fvqysrCwNGjRI58+fV05OjjIyMuzXrj711FOKi4vTW2+9pdq1a9/VsQMAgMqLM64ONGvWLH3wwQcKDg5WbGyswsPDVb9+fW3evFlhYWFatGiRjhw5ou7du2vWrFm3PP/MmTPasGGDIiIi9PXXXysqKkpjxoy568exbNkyjRo1Si+//LKio6P13Xffyd/fX/Hx8ZJ+vWRg/Pjxeu2115ScnKwvvvhCkrR8+XKtXLlSq1at0nfffaezZ8/avyoLAACgrFwkWb+5FspdUFCQhgwZovbt2zt7KEby9PRURkaG/KZ9pezcX5w9HABAJfZl6BBnD6HSKPjzu1atWrLZbL+5PmdcAQAAYATCtRILDAyUzWYrcomIiHD28AAAAEqFSwUqsQceeEB16tQp8rHs7OxC3xlrOi4VAADcLVwq4DilvVSAbxWoxNLS0pSWlubsYQAAADgElwoAAADACIQrAAAAjEC4AgAAwAiEKwAAAIxAuAIAAMAIhCsAAACMQLgCAADACIQrAAAAjEC4AgAAwAiEKwAAAIxAuAIAAMAIhCsAAACMQLgCAADACIQrAAAAjEC4AgAAwAiEKwAAAIxAuAIAAMAIhCsAAACMQLgCAADACIQrAAAAjEC4AgAAwAiEKwAAAIxAuAIAAMAIhCsAAACMQLgCAADACIQrAAAAjEC4AgAAwAiEKwAAAIxAuAIAAMAIhCsAAACMQLgCAADACIQrAAAAjEC4AgAAwAiEKwAAAIxAuAIAAMAIhCsAAACMQLgCAADACG7OHgDgSFsX/Vk2m83ZwwAAAOWAM64AAAAwAuEKAAAAIxCuAAAAMALhCgAAACMQrgAAADAC4QoAAAAjEK4AAAAwAuEKAAAAIxCuAAAAMALhCgAAACMQrgAAADAC4QoAAAAjEK4AAAAwAuEKAAAAIxCuAAAAMALhCgAAACMQrgAAADAC4QoAAAAjEK4AAAAwAuEKAAAAIxCuAAAAMALhCgAAACMQrgAAADCCm7MHADjSoLFrlZ37i7OHAQBApfFl6BBnD8GOM64AAAAwAuEKAAAAIxCuAAAAMALhCgAAACMQrgAAADAC4QoAAAAjEK4AAAAwAuEKAAAAIxCuAAAAMALhCgAAACMQrgAAADAC4QoAAAAjEK4AAAAwAuEKAAAAIxCuAAAAMALhCgAAACMQrgAAADAC4QoAAAAjEK4AAAAwAuEKAAAAIxCuAAAAMALhCgAAACMQrgAAADAC4QoAAAAjEK4AAAAwAuEKAAAAIxCuAAAAMALhCgAAACMQrgAAADAC4QoAAAAjEK4AAAAwAuEKAAAAIxCuAAAAMALhCgAAACMQrgAAADAC4QoAAAAjEK4AAAAwAuEKAAAAIxCuAAAAMALhCgAAACMQrgAAADAC4QoAAAAj3BPh2rRpU1mWJR8fn2LXGTlypNLS0u7iqP5txYoV2rhxo8O2FxQUpMjISIdtDwAAoCK4J8K1JMLDw9W8efMSrevoyA0ICJC/v7/Dtnc3ODq2AQAAfoubswdQUeTk5CgnJ+eu7tPV1VWWZSkjI+Ou7vd23N3dde3atbu2v4I5sCzrru0TAACYqVzOuLq4uGjq1Kk6e/assrKydOTIET333HOSpN69e8uyLA0YMECHDx9WVlaWduzYoXr16mnQoEGKiYlRenq61qxZo/vuu8++zYEDB+r7779XWlqaUlJStHnzZnl5eZVqXF5eXtq5c6cyMzN15MgRde3a1f7YzWdR27Ztq507dyojI0Pp6ek6ePCgOnTooN69e+sf//iHateubQ+uoKAgSVLt2rW1cuVKpaamKjMzUxEREfL29r5lH08//bSOHz+u3NxcNWnS5Jazly4uLpo0aZJOnz6tnJwcJSYmatq0afbH586dq5MnTyozM1NxcXEKDg6Wm9ud/R2kYN/Tpk1TUlKSTp48KUn6/e9/r/DwcKWlpenq1avatGmTmjZtKunXSxH8/f01ZMgQ+xz07t3b/ru9//777dv38fGRZVn25xY3B/Hx8QoMDNSyZcuUkZGhxMREjR49+o6OCQAAVE7lEq6BgYEaMWKEXn/9dbVp00ZhYWFavXq1evXqZV9nxowZGjt2rLp3766HHnpI69at09/+9jc9//zzGjx4sAYMGKBx48bZ169Ro4ZCQ0PVsWNH+fr6Kj8/Xxs3bpSLi0uJxzV79myFhISoXbt2OnXqlNauXasqVaoUue6aNWt0/vx5derUSR06dNDcuXN17do17d27VwEBAUpPT1fDhg3VsGFDhYSESJL+8Y9/qGPHjnrmmWfUrVs3ubi4KCIiolBUenh4aMqUKRo1apTatGmjy5cv37LvOXPmaOrUqZo1a5Zat26t559/XpcuXbI/brPZ5O/vr9atWysgIECjR4/Wm2++WeJ5uJmvr69atGih/v37649//KPc3Ny0bds22Ww2Pf744+rRo4d+/vlnbd26Ve7u7goJCVF4eLi2bNlin4O9e/eWeH/FzcGECRN08OBBtW/fXh9//LEWL15c7OUbVatWlaenZ6EFAABUbg6/VKBq1aqaNm2a+vXrpx9//FGSFB8fr549e+q1117Tp59+KkmaPn26PXaWLVumuXPnysvLS/Hx8ZKk9evXq2/fvpo/f74kacOGDYX288orryglJUWtW7fW8ePHSzS2kJAQRURESPr1rGFMTIy8vb3tZxlv1KRJE73//vv2x86cOWN/LD09XZZlFYpJb29v/ed//qe6d++uffv2SZJeeOEF/fTTTxoyZIjWr19vn58xY8YoKiqqyDHWrFlTAQEBGjt2rFatWiVJOnv2rPbs2WNfZ/bs2fafExMTFRISouHDh+v9998v0TzcLDMzU6NGjbJfIvDCCy/I1dVVo0aNsq/z8ssv61//+pf69Omj7du3Kzs7W9WqVSs0ByVV3BxERERo8eLFkqR58+bpzTffVN++fXXq1KlbthEYGKgZM2aUet8AAMBcDj/j6u3trRo1amj79u2y2Wz2ZcSIEWrWrJl9vRuj5dKlS8rMzLRHa8F99evXL7Tdzz//XHFxcUpPT1dCQoKkXwOzpG7c54ULFySp0D5uFBoaqr///e/avn27pkyZ8puXJbRq1UrXrl3T/v377felpqbq5MmTatWqlf2+3NzcYqO1YDvVq1fXjh07il3Hz89PP/zwgy5cuCCbzaZ33323VPNws+jo6ELXtfr4+Mjb27vQ7y81NVXVq1cv9Du8U8XNwc33Xbx4sdjfz5w5c1SrVi370rhx4zKPCwAAVGwOP+Nas2ZNSdLgwYOVlJRU6LHc3Fx7+NwYSpZl3fKBIMuy5Or6767evHmz/brH5ORkubq66vjx46patWqJx3bzPiUV2seNZs6cqc8//1yDBw/Wk08+qZkzZ2r48OHatGlTifdXlOzs7DI93rVrV61Zs0ZBQUHatm2b0tPTNXz4cE2YMOGOx5SZmVnods2aNXXo0CG98MILt6x75cqVYreTn58vSYUu33B3d79lveKO8bdeAzfKy8tTXl5esWMBAACVj8PPuMbExCgnJ0dNmjRRXFxcoeX8+fN3tM06deqoZcuWevfdd7Vz506dOHFCDzzwgINHfqvTp09rwYIFGjhwoDZs2KCXX35Z0q/RdPO1sbGxsXJ3d1eXLl0KjbtFixaKiYkp1T6zsrLk6+tb5OPdu3dXYmKi3nvvPR06dEhnzpyxf/DJUQ4fPqxHH31Uly9fvuV3WPANCEXNQUHUNmrUyH5fu3btHDo2AABw73J4uP78888KCQlRWFiYRowYIS8vL7Vv315jx47ViBEj7mibBd8k8Oqrr6pZs2bq27evQkNDHTzyf6tevboWLlyo3r17q0mTJurevbs6deqk2NhYSVJCQoI8PT31xBNPqG7durrvvvt05swZbdq0SUuXLlWPHj3Utm1brV69WklJSfriiy9KvO/c3FzNmzdP8+fP10svvSQvLy916dJFr7zyiqRfw7ZJkyYaNmyYvLy8NG7cOA0dOtShx79mzRqlpKToiy++UM+ePfXwww+rd+/e+vDDD+3/Sz4hIUFt27ZV8+bNVbduXbm5uenMmTM6d+6cZsyYIW9vbz311FNlOhMMAABwo3L5VoG3335bs2bNUmBgoGJjY7V161YNHjy40DWspWFZloYPH64OHTro2LFjCgsL06RJkxw86n+7fv266tatq1WrVunUqVNat26dtmzZYv/aq3379mnx4sUKDw9XSkqKJk+eLOnXDzAdOnRIX375pfbt2ycXFxc99dRT+uWXX0q1/1mzZumDDz5QcHCwYmNjFR4ebr/Wc/PmzQoLC9OiRYt05MgRde/eXbNmzXLo8WdnZ6tXr146d+6cNmzYoNjYWC1btkzVq1e3n3FdunSpTp48qYMHDyolJUU9evTQL7/8oj//+c9q2bKloqKiNGXKFE2fPt2hYwMAAPcuF0l88zuM5+npqYyMDPlN+0rZuaX7iwIAACjel6FDym3bBX9+16pVSzab7TfX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", + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAq4AAAGdCAYAAADT+fGYAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAJahJREFUeJzt3QmUlNWZP+DLriiLK4jiilvcl+gx7qKCkohRg0k0SlzH6HiiGJe4xxEQZVxQY4JjXJKIxHEZQ4L7Lmo0blFDhKjoxH0DRVGh/ue9868+3diN3dDQ3O7nOaekq+rrr766VVb/+v3ee7tdpVKpJAAAWMy1b+kDAACAxhBcAQAoguAKAEARBFcAAIoguAIAUATBFQCAIgiuAAAUQXAFAKAIHVv6AKA5zJkzJ/3rX/9K3bp1S+3atWvpwwEAGiH+DtaMGTNSnz59Uvv2X19PFVxpFSK09u3bt6UPAwCYD6+99lpaZZVVvnY7wZVWISqt1Td+9+7dW/pwAIBGmD59ei48VX+Ofx3BlVah2h4QoVVwBYCyNLbNz+QsAACKILgCAFAEwRUAgCIIrgAAFEFwBQCgCIIrAABFEFwBACiC4AoAQBEEVwAAiiC4AgBQBMEVAIAiCK4AABRBcAUAoAgdW/oAoDkN+fmE1KlL15Y+DABasdtGD27pQ2izVFwBACiC4AoAQBEEVwAAiiC4AgBQBMEVAIAiCK4AABRBcAUAoAiCKwAARRBcAQAoguAKAEARBFcAAIoguAIAUATBFQCAIgiuAAAUQXAFAKAIgisAAEUQXAEAKILgCgBAEQRXAACKILgCAFAEwRUAgCIIrgAAFEFwBQCgCIIrAABFEFwBACiC4AoAQBEEVwAAiiC4AgBQBMEVAIAiCK4AABRBcAUAoAiCKwAARRBcAQAoguAKAEARBFcAAIoguAIAUATBFQCAIgiuAAAUQXAFAKAIgisAAEUQXAEAKILgCgBAEQRXAACKILjSZK+88kpq165devrpp1v6UACANkRwpY4vvvhikT7e559/vkgfDwAol+DajObMmZNGjRqV+vXrl7p06ZJWXXXVdO655+b7TjrppLTOOuukrl27pjXXXDOdfvrpdULiWWedlTbddNP0q1/9KvXt2zdvN2TIkPTRRx/VbDN06NC09957p+HDh6devXqlnj17pl/84hfpyy+/TD/72c/Ssssum1ZZZZX0m9/8pkmV0xtuuCHtuOOOaYkllki/+93v8n1XXnllWn/99fNt6623Xrr88strvm+NNdbI/2622Wb5+3faaad8Pf796U9/Wucx4njjuKtWX331dM4556SDDjoode/ePR1xxBHp6quvzs/l9ttvz4+59NJLp4EDB6Y33nhjPl8JAKA16tjSB9CanHLKKWns2LHpwgsvTNttt10OXn//+9/zfd26dcsBrU+fPum5555Lhx9+eL7txBNPrPn+KVOmpPHjx6fbbrstTZ8+PR166KHpJz/5SU2YDPfcc08Opw888EB6+OGH8zaPPPJI2mGHHdJjjz2WQ+iRRx6Zdtttt7xdY5x88slp9OjROYhWw+sZZ5yRLr300nzbU089lY93qaWWSgcffHB6/PHH01ZbbZXuuuuutMEGG6TOnTs3aZwuuOCCvP8zzzwzX3/wwQfTzJkz8+3XXXddat++fTrwwAPTCSecUOe51zZr1qx8qYrxAgBaN8G1mcyYMSNdfPHFOexFuAtrrbVWDrDhtNNOq1N1jFA2bty4OsH1s88+S9dee21aeeWV8/UxY8akQYMG5VDZu3fvfFtUVS+55JIc7tZdd91c4Y3Q9/Of/7wmPI8cOTI99NBD6fvf/36jjj2qpPvss0/N9QiU8ZjV26LC+sILL+RqcDy3FVZYId++3HLL1RxXU+yyyy5p2LBhNdcjuEb1+YorrshjFo455phcTW7IiBEj0tlnn93kxwYAyiW4NpMXX3wxVwD79+9f7/1RCY3AOXXq1PTxxx/n0/txqry2aC2ohtawzTbb5PaDyZMn1wTEqHBGaK2KloENN9yw5nqHDh1yoHz77bcbfexbbrllzdeffPJJPsao5EaVtSqOt0ePHo3eZ2MfrypaI6qhNay00krzfA4R0I8//vg6FddosQAAWi/BtZksueSSDd43adKkdMABB+QK4YABA3IAjGprVDWbqlOnTnWuR49pfbdF4G2saAGoilAdouVh6623rrNdhOJ5iUBdqVS+drJX7cerqu85zL2v2qKHOC4AQNthclYzWXvttXN4vfvuu79yX/SgrrbaaunUU0/N1cbY9tVXX/3KdtOmTUv/+te/aq4/+uijNS0Bi0pUcKMP95///GeeZFb7Up2UVe1pnT17dp3vjRaC2hOq4v6//e1vi+zYAYDWTcW1mcSkplg5IHpWI9htu+226Z133knPP/98DqoRSqPK+s1vfjNNmDAh3XzzzfXuI3pIY5JSnPo+9thj88oC89NHuiCiMhyPHZXhmN0fLRBPPPFE+uCDD/Lp+RVXXDGH9IkTJ+YJYHHcsW30rsb98fzitP9//ud/pg8//HCRHjsA0HqpuDajWOIqJh3FjPlY1mn//ffPfZp77bVXOu644/KEo1jyKiqwse3coqoZE6L23HPPtPvuu6eNN964zjJUi8phhx2Wl8OKZbU22mijvFRWrIhQrbh27Ngx9+vGZK2ozg4ePDjffsghh+TgHUtdxffEsl8777zzIj9+AKB1aleZVyMhi0ys43rLLbf4a1TzKSrUUfUdcPTvU6cuXVv6cABoxW4b/X8FG5rv53esWz/3pPX6qLgCAFAEwbUVi7+wFX+Fqr7LHnvs0dKHBwDQJFoFWrH3338/X+oTk6tqrxlbOq0CACwqWgVarlXAqgKtWPyVrbgAALQGWgUAACiC4AoAQBEEVwAAiiC4AgBQBMEVAIAiCK4AABRBcAUAoAiCKwAARRBcAQAoguAKAEARBFcAAIoguAIAUATBFQCAIgiuAAAUQXAFAKAIgisAAEUQXAEAKILgCgBAEQRXAACKILgCAFAEwRUAgCIIrgAAFEFwBQCgCIIrAABFEFwBACiC4AoAQBEEVwAAiiC4AgBQBMEVAIAiCK4AABRBcAUAoAiCKwAARRBcAQAoguAKAEARBFcAAIoguAIAUATBFQCAInRs6QOA5jR++KDUvXv3lj4MAGAhUHEFAKAIgisAAEUQXAEAKILgCgBAEQRXAACKILgCAFAEwRUAgCIIrgAAFEFwBQCgCIIrAABFEFwBACiC4AoAQBEEVwAAiiC4AgBQBMEVAIAiCK4AABRBcAUAoAiCKwAARRBcAQAoguAKAEARBFcAAIoguAIAUATBFQCAInRs6QOA5jTk5xNSpy5dW/owAKDVuG304LS4UHEFAKAIgisAAEUQXAEAKILgCgBAEQRXAACKILgCAFAEwRUAgCIIrgAAFEFwBQCgCIIrAABFEFwBACiC4AoAQBEEVwAAiiC4AgBQBMEVAIAiCK4AABRBcAUAoAiCKwAARRBcAQAoguAKAEARBFcAAIoguAIAUATBFQCAIgiuAAAUQXAFAKAIgisAAEUQXAEAKILgCgBAEQRXAACKILgCAFAEwRUAgCIIrgAAFEFwBQCgCIIrAABFEFwBACiC4AoAQBEEVwAAiiC4AgBQBMEVAIAiCK4AABRBcAUAoAiCKwAARWgTwfWVV15J7dq1S08//XSD21x99dWpZ8+eqSUMHTo07b333s22v7POOittuummzbY/AIDFQZsIro2x//77p3/84x+N2ra5Q+7FF1+c91mS5g7bAABfp2NLH8DiYskll8yXRWn27Nm5EtyjR4+0uPj8889T586dF/kYtG/vdygAYN4WSlqYM2dOGjFiRFpjjTVyGNxkk03SjTfemO+77777clC5/fbb02abbZbv32WXXdLbb7+d/vznP6f1118/de/ePf3whz9MM2fOrNnnxIkT03bbbZcrncstt1z69re/naZOndqk4/rnP/+Zdt5559S1a9d8TJMmTWqwivrMM8/kbbt165aPZ4sttkhPPPFEPv4f//jH6aOPPsrPIy5xaj588MEH6aCDDkrLLLNMfow99tgjvfTSS195jP/5n/9J3/jGN1KXLl3StGnTvlK9jPEbNWpU6tevX95m1VVXTeeee27N/SeddFJaZ5118mOsueaa6fTTT09ffPFFmh/Vx4799+nTJ6277rr59tdeey0NGTIkH++yyy6bBg8enFsuQjzfa665Jt166601YxDjUn1tP/zww5r9R3tG3Fb93obGYPXVV0/Dhw9PhxxySB7zeM6//vWv5+s5AQCt00IJrhFar7322nTFFVek559/Ph133HHpwAMPTPfff3/NNhF+Lr300vTII4/UhKSLLroo/f73v08TJkxId9xxRxozZkzN9p988kk6/vjjc3i8++67c4Xuu9/9bg55jXXqqaemE044IYepCH4/+MEP0pdfflnvtgcccEBaZZVV0l/+8pf05JNPppNPPjl16tQpfetb38rHGWH2jTfeyJfYZzUExvFFKItQXKlU0p577lknVEYYP++889KVV16Zx2bFFVf8ymOfcsopaeTIkTmQvvDCC3lMevXqVXN/BLsIgHFftBmMHTs2XXjhhWl+xXhOnjw53XnnnemPf/xjPt4BAwbkx3nwwQfTww8/nJZeeuk0cODAXJGN5xuvV1yvjkGMS2M1NAajR49OW265ZXrqqafST37yk3TUUUfl46rPrFmz0vTp0+tcAIDWrdlbBSJQROXsrrvuSttss02+LaqCDz30UPrVr36V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KwAARRBcAQAoguAKAEARBFcAAIoguAIAUIRWH1yvvvrq1LNnz3luM3To0LT33nunlrD66quniy66qNn2t9NOO6Wf/vSnzbY/AIDFRceWPoDFwcUXX5wqlUqjto2Q++GHH6ZbbrmlWR77L3/5S1pqqaVSSSJsRzgWkAGARUlwTSn16NFjkT/m559/njp37pxWWGGFtLioHlNrfTwAoA21CsRp6H//93/PlbZlllkm9erVK40dOzZ98skn6cc//nHq1q1b6tevX/rzn/9c8z1/+9vf0h577JGWXnrpvP2PfvSj9O6779bcP3HixLTddtvl0/nLLbdc+va3v52mTp1ac/8rr7yS2rVrl2666aa08847p65du6ZNNtkkTZo0qUlP9Pbbb0/rr79+Po6BAwemN954o8FWgRtvvDFttNFGackll8zHtOuuu+bneNZZZ6Vrrrkm3XrrrfmY4nLffffl73nuuefSLrvsUvM9RxxxRPr444+/8hjnnntu6tOnT1p33XXrbRWIau6RRx6Zx2qJJZZIG264YfrjH/+Y73vvvffSD37wg7TyyivncYhjvP7669P8isc+55xz0kEHHZS6d++ejzk89NBDafvtt8/PpW/fvunYY4/Nz7/6Hnj11VfTcccdVzMGIcZm0003rbP/eF7xGPMag+Z6fQGA1q/JPa4R3JZffvn0+OOP5xB71FFHpe9973vpW9/6VvrrX/+adt999xxOZ86cmUNYhLnNNtssPfHEEzmkvvXWW2nIkCE1+4tAdPzxx+f777777tS+ffv03e9+N82ZM6fO45566qnphBNOSE8//XRaZ511coD78ssvG3XMcSwXXHBBuu6669IDDzyQpk2blvdVnwi0se9DDjkkvfjiizmY7rPPPrmVIL4njr0afOMSzzuew4ABA3KYj1P/f/jDH9Jdd92VjjnmmDr7juc3efLkdOedd9aE0driOUfIf/jhh9Nvf/vb9MILL6SRI0emDh065Ps/++yztMUWW6QJEybkXwgiaMZYx2sxv2JcIig+9dRT6fTTT8+/NMTz23fffdOzzz6bbrjhhhxkq88lAuYqq6ySfvGLX9SMQVM0NAZNfX1nzZqVpk+fXucCALRuTW4ViJBz2mmn5a9POeWUHKwiyB5++OH5tjPOOCP98pe/zKEnwluE1uHDh9d8/1VXXZWreP/4xz9yQImA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B6bWqinj9/zzz6d99903bx/jctFFFy3wPluD5h7Ds8466yvvwXjPtlZNGb+xY8em7bffPi2zzDL5Ep9vc2/f1j4DF8YY+hx8vMFtb7rpprTlllumnj17pqWWWiptuumm6brrrmv+92CsKgCLm3HjxlU6d+5cueqqqyrPP/985fDDD6/07Nmz8tZbb9W7/cMPP1zp0KFDZdSoUZUXXnihctppp1U6depUee6552q2GTlyZKVHjx6VW265pfLMM89U9tprr8oaa6xR+fTTTyutzcIYv4MPPrgycODAyhtvvFFzef/99yutUVPH7/HHH6+ccMIJleuvv77Su3fvyoUXXrjA+yzdwhjDM888s7LBBhvUeQ++8847ldaoqeP3wx/+sHLZZZdVnnrqqcqLL75YGTp0aP68e/3119vkZ+DCGkOfgz0bHL977723ctNNN+WfIVOmTKlcdNFF+efKxIkTm/U9KLiyWNpqq60qRx99dM312bNnV/r06VMZMWJEvdsPGTKkMmjQoDq3bb311pUjjzwyfz1nzpz8w/D888+vuf/DDz+sdOnSJf+gbG2ae/yqH9iDBw+utAVNHb/aVltttXpD14Lss0QLYwwjuG6yySaVtmBB3y9ffvllpVu3bpVrrrmmTX4GLowxDD4H+zTpM2uzzTbLhZDmfA9qFWCx8/nnn6cnn3wyn0Koat++fb4+adKker8nbq+9fRgwYEDN9i+//HJ6880362wTfxs5Tn00tM9SLYzxq7rvvvvSiiuumNZdd9101FFHpffeey+1NvMzfi2xz8XZwny+cVqxT58+ac0110wHHHBAmjZtWmptmmP8Zs6cmb744ou07LLLtrnPwIU1hlU+Byd97fdHYfTuu+9OkydPTjvssEOzvgcFVxY77777bpo9e3bq1atXndvjerzp6xO3z2v76r9N2WepFsb4hejjuvbaa/OH0XnnnZfuv//+tMcee+THauvj1xL7XJwtrOcbP+CuvvrqNHHixPTLX/4y/yCMnsQZM2ak1qQ5xu+kk07KAb8aEtrSZ+DCGsPgc7DXPMfvo48+SksvvXTq3LlzGjRoUBozZkzabbfdmvU92LGJzwVoo77//e/XfB2TtzbeeOO01lpr5epD//79W/TYaBsiIFTF+y+C7GqrrZbGjx+fDj300BY9tsXJyJEj07hx4/L/mzGphuYbQ5+D89atW7f09NNPp48//jiH++OPPz6fHdlpp51Sc1FxZbGz/PLLpw4dOqS33nqrzu1xvXfv3vV+T9w+r+2r/zZln6VaGONXn/gwiseaMmVKauvj1xL7XJwtqucbs5fXWWcd78FaLrjgghy67rjjjhyqqtrSZ+DCGsP6+BysK9oJ+vXrl1cUGDZsWNpvv/3SiBEjmvU9KLiy2IlTDFtssUX+ba1qzpw5+fo222xT7/fE7bW3D3feeWfN9mussUb+H6P2NtOnT0+PPfZYg/ss1cIYv/q8/vrrubcrljVp6+PXEvtcnC2q5xtVnalTp3oP/n+jRo1K55xzTm6liGWJamtLn4ELawzr43Nw3uJ7Zs2a1bzvwUZP44JFvAxHzDS8+uqr89IaRxxxRF6G480338z3/+hHP6qcfPLJdZZz6tixY+WCCy7Iy5jE7OP6lsOKfdx6662VZ599Ns8Mba1LwTT3+M2YMSMvVTRp0qTKyy+/XLnrrrsqm2++eWXttdeufPbZZ5W2Pn6zZs3KS+jEZaWVVspjFV+/9NJLjd5na7MwxnDYsGGV++67L78H4z276667VpZffvnK22+/XWnr4xefb7F00Y033lhnqab4f7ctfgYujDH0OXjEPMdv+PDhlTvuuKMyderUvH38PImfK2PHjm3W96DgymJrzJgxlVVXXTV/kMSyHI8++mjNfTvuuGNelqS28ePHV9ZZZ528faz1OGHChDr3x1Icp59+eqVXr175f8b+/ftXJk+eXGmtmnP8Zs6cWdl9990rK6ywQg60sVxRrOnXWkNXU8cvfohFHWDuS2zX2H22Rs09hvvvv38OtbG/lVdeOV+P9SJbq6aMX/w/Wd/4xS+hbfUzsLnH0OfgVvMcv1NPPbXSr1+/yhJLLFFZZpllKttss00Ov7U1x3uwXfyn8fVZAABoGXpcAQAoguAKAEARBFcAAIoguAIAUATBFQCAIgiuAAAUQXAFAKAIgisAAEUQXAEAKILgCgBAEQRXAACKILgCAJBK8P8AqeiF276WOyMAAAAASUVORK5CYII=", "text/plain": [ "
" ] @@ -291,7 +337,7 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 17, "metadata": { "colab": { "base_uri": "https://localhost:8080/" @@ -304,7 +350,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "[np.float64(0.2882364468648248), np.float64(0.29381479725985077), np.float64(0.2559298526725975)]\n" + "[np.float64(0.28823644686482447), np.float64(0.29381479725985093), np.float64(0.25592985267259755)]\n" ] } ], @@ -323,7 +369,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 18, "metadata": { "colab": { "base_uri": "https://localhost:8080/", @@ -335,7 +381,7 @@ "outputs": [ { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAABNMAAANECAYAAACaVWk9AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/GU6VOAAAACXBIWXMAAA9hAAAPYQGoP6dpAAB/aUlEQVR4nOzdeZxWdd0//hc7qAOiFiimaUpqmbhrGop2uyQZuS8ly1QumalZhuVWFprLbWlqmaCJ4p4KhpSJa3diVi4IgsDtAjeIIsyIMMPA9fvDH9fXcQAPOMOM8Hw+Hp+HzDmf65z3uRjPe3jNuc5plaQUAAAAAOBDtW7uAgAAAADg40KYBgAAAAAFCdMAAAAAoCBhGgAAAAAUJEwDAAAAgIKEaQAAAABQkDANAAAAAAoSpgEAAABAQcI0AAAAAChImAb/v1KplKuuuupD5/Xv3z+lUimbb775aqiqmPPPPz+lUqnJtj9s2LBMmzatybYPsKZZel7ecMMNP3TutGnTMmzYsNVQVXGlUinnn39+k2x78803T6lUSv/+/Ztk+wAATU2YBqtBp06dcv7552efffZp7lI+VgYPHpyvfe1rzV0GQItz8MEHN1nYtabac889c/7556dLly7NXQoAH9G2226b888/v0Vd4MDaRZgGK+nmm29Ox44d88orrxR+zTrrrJMLLrgg++67b5PUdNFFF6Vjx45Nsu3mdM4556Rfv37NXQZAk/rsZz+bb3/72yv1mq985Su54IILmqagJB07dsxFF13UZNtvDl/84hdzwQUXZP3112/uUgD4iLbbbrtccMEF+fSnP93cpbCWEqbBSlqyZElqamqau4wk74V0SbJ48eIWU9OKdOrUqblLSKtWrdKhQ4fmLgOgrLa2NnV1dc1dRr3zY01NTRYvXtzMFa1Yhw4d0qpVq+Yuo9yLAVh1bdq0Sbt27Zq7DOd0ChOmsVKW3gNm6623zs0335y5c+fmjTfeyM9+9rMkyaabbpp777038+bNy//93//lzDPPrPf69u3b54ILLsjkyZOzcOHCvPrqq7nkkkvSvn37evMGDBiQv/3tb5k1a1YWLlyY8ePH56STTmpQz7Rp0zJy5Mjstddeeeqpp7JgwYJMmTIl3/zmN1f5GL/2ta/l+eefz8KFC/PCCy/kwAMPrLd+WfdM23nnnfPggw9m9uzZeffddzN16tTccMMNSd67N8ybb76ZJLngggtSKpUa3IumT58+eeyxx/LOO+/k7bffzr333pttttmm3n6XvvfbbrttbrnllsyZMydPPPFEvXUfdPzxx+epp57K/PnzM2fOnDz66KP5r//6r/L6Qw89NKNGjcr06dOzcOHCvPzyy/npT3+a1q0/+qlh7Nixef7557PTTjvl0Ucfzfz58/PLX/4ySbHvg1KplPXWWy8DBgwov2dL7ym0vHu4Let9WHovvOOOOy4vvPBCampqctBBB5X/Hr/4xS/m8ssvzxtvvJF33nkn99xzTzbaaKOPfPxA49tkk01yww03ZObMmeVz9MCBA8vr99lnn5RKpRx55JE577zz8vrrr6eqqip33nlnOnfunPbt2+e///u/M2vWrFRXV2fo0KGr3H+KWn/99TNs2LC8/fbbmTt3boYOHdrgFwsfvGda27Ztc95552XSpElZsGBB3nzzzTz++OP58pe/nOS9c+Cpp56aJOXz4/vPfeuss04uu+yyvPrqq1m4cGEmTpyYH/zgBw1qW975cem6D36MdJNNNskf/vCHcs+YOnVqrrnmmvI/frp27ZpLL700zz33XKqrqzNv3rz8+c9/zhe+8IVVfv+WWvp3e/TRR+fnP/95Xn/99bz77rvp3LlzkmS33XbL6NGjM3fu3MyfPz+PPPJIvvjFL5Zff/755+eyyy5Lkvzv//5v+T3bfPPNV3gPtw++DyvqxU3xMwlAsuLzb9Fz79Lz6FFHHZVf/OIX+b//+7+88847ue+++7LpppvWm7v05/jtt98+jzzySObPn5/Jkyfn8MMPT5L07t07//jHP/Luu+9m4sSJ2X///VfqeJaed3/wgx/k+9//fl5++eXU1NRku+22S/LeFdt33nln3nrrrSxYsCBPP/10vvrVr5Zf379//9x1111JkkceeaR8Tl96S53l3ffzg/126b8Hevfund/+9reZNWtWXn/99XrvwbbbbpuHH3448+fPz+uvv54f/vCHK3WsrLnaNncBfDzdfvvtmTBhQn784x/nkEMOybnnnps5c+bkxBNPzMMPP5yzzz47xx9/fC6//PI8/fTTefzxx9OqVavcf//92XvvvfP73/8+EyZMyPbbb58zzjgjPXv2zNe//vXy9k8++eSMHz8+999/f+rq6vLVr3411157bVq3bp1rrrmmXi1bbbVV7rrrrtxwww256aabMmjQoNx444155pln8uKLL67Uce2999457LDDcs0116S6ujqnnXZa7r777my22WaZM2fOMl/ziU98In/5y18ye/bsXHzxxZk7d24+/elP57DDDkuSzJ49OyeddFKuu+663HPPPbnnnnuSJM8991ySZP/998/o0aMzderUXHDBBenUqVO+973v5cknn8xOO+3U4OOkd955ZyZPnpxzzjlnhb+RP++883LhhRfmySefzHnnnZfa2trsvvvu2W+//fLXv/41yXv/aHznnXdyxRVX5J133sl+++2Xn//85+ncuXN+9KMfrdR7tywbbrhhRo8endtuuy3Dhw/PrFmzCn8ffOMb38gf/vCHjBs3Lr///e+TJFOmTFmlOvbbb78cddRRufrqq/Pmm2/mf//3f9OrV68kyVVXXZW33347F154YT796U/n9NNPz9VXX51jjjnmIx8/0Hg++clP5h//+EdKpVKuvvrqzJ49OwcffHCGDh2azp0759e//nV57uDBg7NgwYJcfPHF2WqrrfK9730vixYtypIlS9K1a9dccMEF2WOPPTJw4MBMmzYtP//5z8uvXZn+U8Qdd9yRadOmZfDgwdlpp53y7W9/O2+88UZ+/OMfL/c1F1xwQQYPHlw+B3bu3Dm77LJLdtpppzz00EP53e9+l0022SQHHHBAvvGNbzR4/f33358+ffrkhhtuyH/+858ceOCBueyyy9KjR48Gv+Ra1vlxWTbeeOOMGzcu66+/fn7/+99n4sSJ6dGjR4444oiss846mTdvXrbccsv069cvd955Z6ZNm5Zu3brlxBNPzKOPPprtttsu//d//7fS798HnXvuuamtrc1ll12WDh06pLa2Nn369Mno0aPzzDPP5MILL8ySJUsycODAPPzww/nSl76Up59+Ovfcc0969uyZ4447Lqeffnr5l1yzZ8/OJz7xiZWuY3m9uDF/JgFIPvz8u7Ln3p/85CcplUq55JJL8slPfjKnn356HnroofTq1SsLFy4sz+vatWtGjRqV2267LXfeeWdOPvnk3HbbbTn++ONz5ZVX5rrrrsutt96aH/7wh7nrrrvyqU99Ku+8885KHdvAgQPTsWPH/P73v09NTU3mzJmT7bbbLk8++WSmT5+eiy++OPPnz89RRx2Ve++9N4cffnjuvffePPbYY/n1r3+d73//+/nFL36RCRMmJEn5vyvrmmuuyezZs/Ozn/0s6667br334MEHH8w999yTO+64I0cccUR+9atf5fnnn8+DDz64SvtizVIyjKLj/PPPL5VKpdJ1111XXta6devSq6++Wlq8eHHpRz/6UXl5ly5dSvPnzy8NGzaslKR0/PHHl+rq6kp77bVXvW1+5zvfKZVKpdKee+5ZXtaxY8cG+x49enTp5Zdfrrds2rRppVKpVNp7773LyzbaaKPSggULSpdeeulKHVupVCotXLiwtOWWW5aXbb/99qVSqVT67ne/W17Wv3//UqlUKm2++ealJKWvfe1rpVKpVNp5552Xu+0NN9ywVCqVSueff36Ddf/6179KM2fOLHXt2rXefuvq6ko33nhjg/f+lltuWe7fy9KvP/OZz5Tq6upKd999d6lVq1bLrWtZ7/O1115beuedd0rt27cvLxs2bFhp2rRpK/V+jh07tlQqlUrf+c536i1fme+D6urq8vfP+8fy6vng+7D077Wurq607bbb1lu+9O/xL3/5S73ll19+eWnRokWlzp07r5b/pwzDKDauv/760vTp00sbbLBBveW33npr6e233y517NixtM8++5RKpVLpueeeK7Vt27Y855ZbbiktXry49MADD9R77ZNPPtngXFK0/3zYWHo++sMf/lBv+d13312aPXt2vWXTpk2rd67797//XRo5cuQKt3/VVVc1ON8lKR166KGlUqlUOuecc+otv+OOO0qLFy+u1+OWd35cuu79PevGG28s1dXVrbDXtW/fvkHP2XzzzUsLFiwo/fSnP623rFQqlfr371/4/Vz6d/vyyy83+Dt66aWXSqNHj27w9zhlypTSmDFjyst+8IMf1OvfRer54Puwol7cmD+TGIZhLB0fdv4teu5deh597bXXSuutt155+RFHHFEqlUql733ve+VlS3+OP+aYY8rLevbsWe4bu+22W3n5f/3Xf630OX3peXfu3LmljTbaqN66v/71r6Vnn3223r9FkpSeeOKJ0ksvvVT++vDDDy+VSqXSPvvs02D7y/t31wf77dJ/Dzz22GOl1q1b15u79D34xje+UV7Wrl270owZM0p33nlns39fGM0/fMyTVfKHP/yh/OclS5bkn//8Z1q3bl3+aGOSzJs3Ly+99FK23HLLJMmRRx6ZCRMmZOLEidlwww3L4+GHH07y3kcdl3r/b0U6d+6cDTfcMI8++mg+85nPlD/SsdT48ePLH7FIkjfffLPeflfGQw89lKlTp5a/fv7558u/bV+euXPnJkn69u2btm1X7mLP7t27Z8cdd8yNN96Yt99+u95+//rXv+YrX/lKg9dcd911H7rdfv36pU2bNvnZz362zI9/LvX+93m99dbLhhtumMcffzzrrrtug4+ZroqFCxfWu5Q6Wbnvg8by6KOPLvc3VUuvelvq8ccfT9u2bT0ZCFqYww8/PCNHjkyrVq3qnTvGjBmT9ddfPzvttFN57h//+Md69yB76qmn0rp16wwdOrTeNp966ql86lOfSps2bcrLVqb/FPHBc/bjjz+ejTbaKBUVFct9zdy5c/O5z30uW2211Urv7ytf+Urq6urym9/8pt7yyy+/PK1bt87BBx9cb/mKzo9LtWrVKv369cvIkSPzzDPPLHdebW1tuee0bt06G2ywQd5555289NJL9f5+Poqbbrqp3t9Rr1690rNnz9x66631vi/WXXfd/O1vf0vv3r2b5L5qy+vFjfkzCUCR8+/Knnv/+Mc/1ruC7K677sqMGTMa/Lujuro6t912W/nrSZMm5e23386ECRMybty48vKnnnoqSVbpPHf33XeXrxRO3rsSbL/99ssdd9yRioqKBv2+Z8+e2WSTTVZ6Px/m+uuvz5IlSxosr66uzvDhw8tfL1q0KOPGjXNOJ4mPebKKXn311Xpfz5s3LwsWLMhbb73VYPmGG26YJNl6662z3Xbb1Tthvt8nP/nJ8p+/+MUv5sILL8yee+5Z71LbJOnSpUuqqqqWW0uSvP322+natevKHdQqbuvRRx/NXXfdlQsuuCBnnHFGHnnkkdx777259dZbU1tbu8L9LQ1sXnrppQbrJkyYkIMOOijrrLNO3n333fLyZd0r7IM+85nPZPHixR/6kZLtttsuF110Ufbbb7906dKl3roPfr0qpk+fnkWLFtVbtjLfB41lRe/ZB//Ol4aaq/L9AzSNT3ziE+natWtOPPHEnHjiicuc88lPfrL8/++yelSSvPbaaw2Wt2nTJl26dCl/lH9l+k8RKzrHVFdXL/M15513Xu67775Mnjy5/FGSm2++Oc8///yH7m/zzTfPjBkzGnzUZmlg9sFfFBTpKZ/4xCfSpUuXvPDCCyuc16pVq3z/+9/PKaecki222KLeL5g++PPBqvpgvVtvvXWS9/5xuDxdunQp/+KrsSzvfWvMn0kAipx/V/bcO3ny5AbLXn755QZPxVx677D3mzdvXoNeurQvrsp57oPn0q222iqtW7fORRddtNwnSn/yk5/MjBkzVnpfK1PHUst6D95+++1GuRcoH3/CNFbJsp7wtbynfi39jXDr1q3z3HPPNbhfy1JLT8xbbrll/va3v2XixIk588wz89prr6W2tjZf+cpXcuaZZza4Of6H7XdlrOq2jjzyyOy+++756le/mgMPPDDDhg3LD37wg+yxxx6ZP3/+StexIgsWLGiU7XTp0iWPPvpoqqqqct5552XKlClZuHBhdtppp/zqV79qlIcQLKvWot8HK7K8q+3ef3XJh9WxVGN+/wBNY+n56Oabb85NN920zDnPPfdc+cbFy/v/+sP+f1/Z/lPEqpxjHn/88XzmM5/J1772tRxwwAH51re+lTPOOCMnnXRSvSvAG0Nj9ZQkOeecc3LRRRflhhtuKN9LdcmSJbnyyisbpackDetdut2zzjor//nPf5b5mg+7h8/yesqKal7e+6anAKtbU517V7WXrozlndMvvfTSjBkzZpmvefnll1d6P0ut7L8VnNNZEWEaq82UKVOyww475G9/+9sK5331q19Nx44dc+ihh9YLVpri43+N6amnnspTTz2Vn/70pzn22GNz66235phjjskNN9yw3B/Ulz5c4LOf/WyDddtss0356aAra8qUKWnTpk222267PPvss8ucs++++2ajjTbKYYcdlscff7y8fIsttljp/a1sbUW+D5Ll/wPn7bffzvrrr99guY9mwppp9uzZqaqqSps2bQqdO1ZVS+o/b7/9dm688cbceOONWXfddfPYY4/lggsuKIdpK+orX/7yl7PeeuvVC5GWfnT/gw+1KWL27NmZN29ePv/5z69w3hFHHJGHH3443/rWt+otX3/99Zd7NfJHtfTBNFVVVR/6vbGinpKkQV/RU4DmVuT8u7Ln3qVX9L7fVlttVX44WnNaerudRYsWrfI5PUnmzJnT4Jzerl27bLzxxh+5RljKPdNYbe64445suumm+fa3v91gXceOHbPOOusk+X+/AXh/4t+5c+cMHDhw9RS6kpYV6iz97XiHDh2SpByIfXDuzJkz8+9//zv9+/ev97HKz33ucznggAPy5z//eZVquvfee7N48eKcd955y/3NybLe53bt2uWUU05ZpX0WVfT7IEnmz5+/zPd3ypQpWX/99bP99tuXl3Xv3r3eE2GBNceSJUty99135/DDD8/nPve5Bus32mijRtlPS+k/G2ywQb2v58+fn5dffrncU5YuSxp+JP/Pf/5z2rZtm1NPPbXe8jPOOCNLlizJ6NGjV7qeUqmUe++9N1/96lez8847L3fe4sWLG/ScI444IptuuulK77OoZ555Ji+//HLOOuusBh/LTep/byx9zz7YV6qrqzN79uz07t273vKm7ocAH6bI+Xdlz70nnHBC1ltvvXpzN9lkk1XqD41t9uzZGTt2bE488cR07969wfoi5/TkvX8rfPCc/p3vfGel728NK+K7idXm5ptvzlFHHZXrrrsuffr0yZNPPpk2bdpkm222yVFHHZUDDzwwzzzzTP7yl7+kpqYmI0eOzO9+97ust956+fa3v5033nijSW44+VH1798/p5xySv70pz9lypQpqaioyLe//e3MmzevHIYtXLgw48ePz9FHH51JkyZlzpw5eeGFFzJ+/Pj88Ic/zOjRo/M///M/ueGGG9KpU6d873vfy7x583LBBResUk1TpkzJL37xi5x33nl5/PHHc88996Smpia77rprZsyYkXPOOSd///vfM2fOnNx00035zW9+k1KplG9+85tNftly0e+D5L1/JH35y1/OGWeckRkzZmTatGkZN25cbrvttlxyySX505/+lN/85jdZZ511cvLJJ2fSpEkr/Ice8PH14x//OH369MlTTz2V66+/Pi+++GI22GCD7LTTTvnyl79cvj/nR9FS+s+LL76YRx55JM8880zmzJmTXXbZJUcccUSuvvrq8pyl58nf/OY3GTNmTBYvXpzbb789I0eOzMMPP5xf/OIX+fSnP51nn302BxxwQPr165f//u//rveQnZVxzjnn5IADDsijjz6a3//+95kwYUI23njjHHnkkdl7770zb968jBo1Kueff36GDh2av//979l+++1z/PHHl68eawqlUinf+ta3Mnr06IwfPz7Dhg3L9OnT06NHj/Tp0ydVVVU59NBDk/y/9+wXv/hFbrvttixatCgjR47Mu+++mz/84Q8ZPHhwrr/++vzzn/9M796907NnzyarG6CoDzv/ruy5d86cOXniiScybNiwdOvWLaeffnomT56c66+/fjUf2bJ997vfzRNPPJHnn38+119/faZOnZpu3bplzz33zKabbppevXolee/ihbq6upx99tnp0qVLampq8vDDD2f27Nn5wx/+kN/97ne566678te//jU77LBDDjzwwMyePbt5D441TrM/UtT4+Iylj4TfcMMN6y0fNmxYqbq6usH8sWPHlp5//vny123bti398Ic/LD3//POlBQsWlN56663S008/XTr33HNLFRUV5Xl9+/Yt/ec//ym9++67palTp5Z++MMflgYMGNDgkfbTpk0rjRw5cpn7HTt27EodW6lUKl111VUNli/vEcpL6+jVq1fplltuKf3v//5vacGCBaWZM2eW7r///tJOO+1Ubzt77LFH6emnny4tXLiwweOa99tvv9Ljjz9emj9/fmnu3Lml++67r7TNNtsUeu/fv+6DywcMGFB65plnyu/12LFjS/vvv395/Z577ln6+9//Xpo/f37p9ddfL1188cXlx1u//zHTw4YNK02bNm2l3s8P/t2/fxT9PujZs2fpkUceKc2fP79UKpXq/T18+ctfLj333HOlhQsXliZMmFA67rjjlvk+LO/vdenf4wcfM770seHLesy2YRjNOz7xiU+UrrrqqtIrr7xSqqmpKc2YMaP017/+tfStb32rlPy//38PP/zweq9b3v/vyzqvFu0/HzaWd87+YA9JGvaZc845p/SPf/yjNGfOnNL8+fNLL774Ymnw4MGltm3blue0bt269Otf/7o0a9as0uLFi+ud+9Zdd93S5ZdfXnr99ddLNTU1pZdeeqn0gx/8oEGNyzs/Ll33/j6VpPSpT32qdOONN5ZmzZpVWrBgQenll18uXXXVVaV27dqVkpTat29fuvTSS0vTp08vzZ8/v/T444+Xdt999wY9efPNNy+VSqVS//79C7+fy/u7XTp22GGH0l133VWaPXt2acGCBaVp06aVbrvttlKfPn3qzfvJT35Seu2110p1dXX1/h46duxYuv7660tvv/12ad68eaXbbruttNFGGzV4H1bUixvzZxLDMIz3jxWdf4uee5eeR48++ujSL37xi9LMmTNL8+fPL40cObL0qU99qt7+lvdz/PLOcyvqJ8saS/vAsnpTktIWW2xRuvHGG0szZswo1dTUlF577bXS/fffXzrssMPqzausrCy9/PLLpUWLFtX7+b1Vq1alIUOGlN54443SO++8Uxo9enRpyy23XO6/6z7488GK3oNV+XeRsWaOVv//HwAAAIA10D777JNHHnkkRxxxRO6+++7mLgc+9twzDQAAAAAKcs801njdunVb4foFCxakqqpqNVXz8de1a9e0b99+uesXL17cZE9tA2hu6667br0bNy/L7Nmzs2TJktVU0cdbu3btGjxw4YPmzZuXhQsXrqaKAFhVrVu3zic+8YkVznnnnXfKDw+Aj7tm/6ypYTTl+DDv/9y88eFj7NixK3w/3UPAMIw1eSy9Z9aKrMy91db2sfQePiuyMvdWMwzDMJY9Puzek40xlt4LbUU+eD9Ow/i4DvdMY423//77r3D9jBkzMmHChNVUzcffTjvtlK5duy53/YIFC/L3v/99NVYEsPpsscUW2XLLLVc454knnkhNTc1qqujjbf311//QpzCPHz8+M2fOXE0VAbCqOnTokL333nuFc6ZOnZpp06atpoqg6QjTAAAAAKAgDyAAAAAAgILW6gcQbLLJJqmurm7uMgDWGBUVFZkxY0Zzl9Fi6DMAjUufaUivAWg8RfvMWhumbbLJJpk+fXpzlwGwxunRo4d/6ESfAWgq+sz/o9cANL4ifWatDdOW/vamR48efpMD0AgqKioyffp059T/nz4D0Lj0mYb0GoDGszJ9Zq0N05aqrq7WeABoMvoMAE1NrwFYvTyAAAAAAAAKEqYBAAAAQEHCNAAAAAAoSJgGAAAAAAUJ0wAAAACgIGEaAAAAABQkTAMAAACAgto2dwEsW98z723uEtYao67o19wlANBM9Nvl0x/h4+OgU0dkQU1dc5fBauQcDc3LlWkAAAAAUJAwDQAAAAAKEqYBAAAAQEHCNAAAAAAoSJgGAAAAAAU1WZjWunXrPPnkk7n77rvrLe/cuXNeffXVXHTRRUmSQw45JI888kiqqqoyf/78jBs3Lv3796/3ms033zylUil1dXXZZJNN6q3r3r17Fi1alFKplM0337ypDgcAAAAAmi5MW7JkSQYMGJCDDjooxx13XHn5VVddlTlz5uTCCy/Mqaeemvvuuy9PPvlkdt9993zhC1/Ibbfdluuuuy6XXnppg21Onz49J5xwQr1l/fv3z/Tp05vqMAAAAACgrEk/5jl58uT8+Mc/zlVXXZXu3bvn0EMPzTHHHJMTTjgh3bp1y+WXX54rr7wyP/nJTzJhwoRMmTIlV1xxRX74wx/mrLPOym677VZvezfddFMGDhxYb9nAgQNz0003NeVhAAAAAECS1XDPtKuuuirPPvtsbr755vz+97/Pz372szz33HM54ogj0r59+1x22WUNXvO73/0u1dXVOfbYY+stv//++9O1a9fstddeSZK99torXbt2zciRI5v6MAAAAAAgbVfHTk4++eRMnDgxzz33XC6++OIkSc+ePTN37tzMnDmzwfxFixZl6tSp6dmzZ4Plw4cPz6BBg/Lkk09m0KBBGT58eBYtWvShNbRv3z4dOnQof11RUfERjwoA/h99BoCmptcAtAyr5WmegwYNyvz587PFFltk0003/UjbGjp0aI488sh069YtRx55ZIYOHVrodYMHD05VVVV5uM8aAI1JnwGgqek1AC1Dk4dpe+65Z84444z07ds348aNyw033JAkmTRpUtZff/1svPHGDV7Trl27fOYzn8mkSZMarHvhhRcyceLEjBgxIhMmTMj48eML1TFkyJB07ty5PHr06PHRDgwA3kefAaCp6TUALUOThmmdOnXKjTfemGuvvTaPPPJIKisrs9tuu+Wkk07K3Xffndra2vzgBz9o8LqTTjop6623XkaMGLHM7Q4dOjR9+vQpfFVaktTW1qa6urreAIDGos8A0NT0GoCWoUnvmTZkyJC0atUqP/7xj5Mkr7zySs4666xcdtllGT16dH70ox/l8ssvz8KFC3PzzTdn0aJF+drXvpZf/vKXueyyyzJu3Lhlbvf666/PnXfemblz5zZl+QAAAABQT5OFab179853v/vd7LvvvlmwYEF5+e9///scdthhueGGG/LlL385U6dOzVlnnZXvf//7adOmTcaPH5+TTz45N95443K3vXjx4rz11ltNVToAAAAALFOThWmPPfZY2rVrt8x1Bx10UPnPI0eOzMiRI1e4rVdeeSWtWrVa7vpnn312hesBAAAAoDGslqd5AgAAAMCaQJgGAAAAAAUJ0wAAAACgIGEaAAAAABTUZA8g4KMZdUW/5i4BANZ4+i2wJnjw6mNTXV3d3GUArDVcmQYAAAAABQnTAAAAAKAgYRoAAAAAFCRMAwAAAICChGkAAAAAUJAwDQAAAAAKEqYBAAAAQEHCNAAAAAAoSJgGAAAAAAWtdWHaKaeckvHjx2fcuHHNXQoAayB9BoCmptcANK9WSUrNXURzqKioSFVVVTp37pzq6urmLgfgY895tT7vB0Djcl5tyHsC0HhW5py61l2ZBgAAAACrSpgGAAAAAAUJ0wAAAACgIGEaAAAAABQkTAMAAACAgoRpAAAAAFCQMA0AAAAAChKmAQAAAEBBbZu7AJat75n3NncJfIhRV/Rr7hIA+IhaSr/VU4CP4qBTR2RBTV1zl0Ej0hegZXNlGgAAAAAUJEwDAAAAgIKEaQAAAABQkDANAAAAAAoSpgEAAABAQY0app144ompqqpKmzZtysvWXXfd1NbWZuzYsfXm7rPPPimVStlyyy0zbdq0lEqlHH300Q22+cILL6RUKqV///7l16xo7LPPPo15SAAAAABQ1qhh2tixY1NRUZFddtmlvOxLX/pSZs6cmd133z0dOnQoL+/Tp09eeeWVTJ06NUny6quvZuDAgfW2t/vuu6d79+555513kiR///vf07179/K4/fbbM3r06HrL/v73vzfmIQEAAABAWaOGaZMmTcqMGTOy7777lpftu+++ue+++zJt2rTsscce9Za//2q1W265Jfvss0823XTT8rJBgwbllltuSV1dXZJk0aJFmTVrVnksWLAgNTU19ZYtWrSoMQ8JAAAAAMoa/Z5pY8eOTZ8+fcpf9+nTJ4888kgeffTR8vKOHTtm9913rxemzZo1K2PGjEn//v2TJJ06dcrRRx+doUOHNkpd7du3T0VFRb0BAI1FnwGgqek1AC1Dk4Rpe+21V9q0aZP11lsvO+64Yx599NE89thj5SvW9txzz3Ts2LHBfdSGDh2aAQMGJEmOOOKITJkyJc8++2yj1DV48OBUVVWVx/Tp0xtluwCQ6DMAND29BqBlaPQw7ZFHHsl6662XXXfdNV/60pcyadKkvPnmm3n00UfL903bd999M2XKlLz22mv1XvvAAw9kvfXWS+/evTNo0KBGuyotSYYMGZLOnTuXR48ePRpt2wCgzwDQ1PQagJahbWNvcGlI1qdPn3Tt2jWPPvpokuT//u//8tprr+WLX/xi+vTpk4cffrjBaxcvXpybb745F154YXbfffd8/etfb7S6amtrU1tb22jbA4D302cAaGp6DUDL0OhXpiXvfdRz3333zb777ptHHnmkvPyxxx7LwQcfnN12263BRzyXGjp0aPmhBXPnzm2K8gAAAABglTT6lWnJe2Hab3/727Rr1658ZVqSPProo7n66qvT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PjbV1dXNXQbAWsOVaQAAAABQkDANAAAAAAoSpgEAAABAQcI0AAAAAChImAYAAAAABQnTAAAAAKAgYRoAAAAAFCRMAwAAAICChGkAAAAAUJAwDQAAAAAKEqYBAAAAQEHCNAAAAAAoSJgGAAAAAAUJ0wAAAACgIGEaAAAAABQkTAMAAACAgoRpAAAAAFCQMA0AAAAAChKmAQAAAEBBwjQAAAAAKKhtcxfAsvU9897mLgFWm1FX9GvuEoC1VEvqt86FwKo66NQRWVBT19xlQIun19JYXJkGAAAAAAUJ0wAAAACgIGEaAAAAABQkTAMAAACAgholTNtoo41yzTXX5JVXXsnChQvzf//3f3nwwQfzxS9+MUkybdq0lEqllEql1NXVZfr06fnDH/6Q9ddfv7yN/v375+23317m9kulUr72ta8lSQ4++ODU1NRkxx13rDfnzDPPzOzZs9OtW7fGOCQAAAAAaKBRwrS77747O+64Y/r375+ePXvm0EMPzSOPPJINN9ywPOfcc89N9+7ds9lmm+X4449P796985vf/Gal9zV69Oj88Y9/zB//+Me0b98+SbLtttvmoosuyne/+93MmjWrMQ4JAAAAABpo+1E30KVLl/Tu3Tv77LNPHnvssSTJq6++mqeffrrevOrq6nLQNWPGjNx000059thjV2mfZ5xxRp5//vlceOGF+elPf5qbbropI0eOzB133PHRDgYAAAAAVuAjh2nvvPNOqqur069fv/zjH/9IbW3th75mk002yVe/+tU89dRTq7zPQYMGZcyYMdliiy3yqU99KgcddNAqbQsAAAAAivrIH/NcvHhxBgwYkP79+2fu3Ll54okn8otf/CLbb799vXmXXHJJqqur8+6772b69OkplUo588wzV3m/Y8eOzV133ZWjjz46p512WubMmbPC+e3bt09FRUW9AQCNRZ8BoKnpNQAtQ6PcM+2ee+7JJptskkMPPTQPPvhg9t133/zrX/9K//79y3MuvfTS9OrVK1/4whey3377JUkeeOCBtG69aiVssskmOeiggzJ//vx86Utf+tD5gwcPTlVVVXlMnz59lfYLAMuizwDQ1PQagJahUcK0JKmpqclDDz2Uiy66KHvttVduvPHGXHjhheX1b775ZqZMmZKXX345Y8eOzemnn5699torffr0SZJUVVVl3XXXTatWreptt0uXLkmSefPm1Vt+/fXX55lnnknfvn1z8sknp3fv3iusb8iQIencuXN59OjRozEOGwCS6DMAND29BqBl+Mj3TFueF198Mf369Vvu+sWLFydJOnXqlCR56aWX0q5du/Tq1Sv//ve/y/N22mmnJMmkSZPKyyorK7P33ntn++23z6uvvpprr702Q4cOzRe+8IW8++67y9xfbW1tofu5AcCq0GcAaGp6DUDL8JGvTNtggw3yt7/9Lccff3y23377fPrTn84RRxyRH/3oR7nvvvvK8yoqKtKtW7d07949u+66ay699NK88cYb+fvf/57kvfBtzJgxGTp0aPbbb798+tOfzoEHHphrrrkmt912W2bMmJEk2WyzzXLFFVfkrLPOyquvvpokOfvss1MqlXLxxRd/1MMBAAAAgOVqlKd5PvXUUznjjDPymc98Ju3atctrr72W66+/Pr/85S/L837+85/n5z//eZLkjTfeyNNPP50DDjig3oMDjj766Fx44YX53e9+l0022SSvv/56/vSnP5VflyQ33HBD/ud//ifXX399edmCBQsyYMCAPPLII7nrrrvy2GOPfdTDAgAAAIAGPnKYVltbm3POOSfnnHPOcudsscUWhbY1b968nH766Tn99NOXO+e//uu/lrn8ySefTLt27QrtBwAAAABWRaM9gAAAAAAA1nTCNAAAAAAoSJgGAAAAAAUJ0wAAAACgoI/8AAKaxqgr+jV3CQCwxtNvgTXBg1cfm+rq6uYuA2Ct4co0AAAAAChImAYAAAAABQnTAAAAAKAgYRoAAAAAFCRMAwAAAICChGkAAAAAUJAwDQAAAAAKEqYBAAAAQEHCNAAAAAAoSJgGAAAAAAUJ0wAAAACgIGEaAAAAABQkTAMAAACAgoRpAAAAAFCQMA0AAAAAChKmAQAAAEBBwjQAAAAAKEiYBgAAAAAFCdMAAAAAoKC2zV0Ay9b3zHubu4RmM+qKfs1dAgBribW538L7+fnr4+2gU0dkQU1dc5cBNCLn5ZbNlWkAAAAAUJAwDQAAAAAKEqYBAAAAQEHCNAAAAAAoSJgGAAAAAAWttjBt2LBhKZVKKZVKqa2tzdSpU3PJJZekQ4cO5TlL15dKpcybNy/jxo3LoYce2mBbhx12WMaOHZu5c+emuro6zz77bM4999x07dp1dR0OAAAAAGuh1Xpl2ujRo9O9e/dsueWWOeOMM3LiiSfmwgsvrDdnwIAB6d69e3bZZZc8+eSTueuuu/L5z3++vP6iiy7K7bffnqeffjoHH3xwPv/5z+cHP/hBdthhh3zzm99cnYcDAAAAwFqm7ercWU1NTWbNmpUkef311/PQQw/lv/7rv/LjH/+4PGfu3LmZNWtWZs2alXPPPTenn356+vTpkxdeeCG77rprfvKTn+T73/9+fvOb35Rf88orr+Shhx5Kly5dVufhAAAAALCWWa1h2vt97nOfyxe/+MW88sory1zfpk2bVFZWJklqa2uTJMcff3yqq6tzzTXXLPM18+bNW+7+2rdvX+8jpRUVFataOgA0oM8A0NT0GoCWYbWGaX379k11dXXatm2bjh07ZvHixTn11FPrzRkxYkQWL16cTp06pU2bNpk2bVruuOOOJMnWW2+dqVOnpq6ubqX3PXjw4FxwwQWNcRgA0IA+A0BT02sAWobVes+0sWPHplevXtl9991z4403ZtiwYbnnnnvqzTnjjDPSq1evHHzwwRk/fny+9a1v5e23306StGrVapX3PWTIkHTu3Lk8evTo8ZGOBQDeT58BoKnpNQAtw2q9Mm3+/PmZMmVKkmTQoEF59tlnM2jQoAwdOrQ8Z+bMmZkyZUqmTJmSgQMH5s9//nO22267zJ49O5MmTcree++dtm3brvTVabW1teWPiwJAY9NnAGhqeg1Ay7Bar0x7v1KplF/+8pe56KKL0rFjx2XOefrpp/PMM8/kJz/5SZLk1ltvTUVFRU455ZRlzvcAAgAAAACaUrOFaUly5513ZvHixfnud7+73DlXXnllTjzxxGyyySYZN25cLrnkklx++eW55JJLsscee2SzzTbLfvvtlzvuuCP9+/dfjdUDAAAAsLZp1jBt8eLFufrqq/OjH/0o66yzzjLnPPjgg5k2bVr56rQf//jHOe6447L77rtnzJgxGT9+fK644oo899xzuemmm1Zn+QAAAACsZVbbPdMGDhy4zOWXXHJJLrnkkiTLf8DAdtttV+/rO++8M3feeWfjFggAAAAAH6JZr0wDAAAAgI8TYRoAAAAAFCRMAwAAAICCVts901g5o67o19wlAMAaT78F1gQPXn1sqqurm7sMgLWGK9MAAAAAoCBhGgAAAAAUJEwDAAAAgIKEaQAAAABQkDANAAAAAAoSpgEAAABAQcI0AAAAAChImAYAAAAABQnTAAAAAKCgtS5MO+WUUzJ+/PiMGzeuuUsBYA2kzwDQ1PQagObVKkmpuYtoDhUVFamqqkrnzp1TXV3d3OUAfOw5r9bn/QBoXM6rDXlPABrPypxT17or0wAAAABgVQnTAAAAAKAgYRoAAAAAFCRMAwAAAICChGkAAAAAUJAwDQAAAAAKEqYBAAAAQEHCNAAAAAAoSJgGAAAAAAW1be4CWLa+Z97b3CWslUZd0a+5SwAo0wuanvM+sCY46NQRWVBT19xl0AT0KWiZXJkGAAAAAAUJ0wAAAACgIGEaAAAAABQkTAMAAACAgpotTBs2bFhKpVJKpVJqamoyefLknHvuuWnTpk322Wef8rr3j5///OdJstz1pVIp3bp1a65DAgAAAGAN16xP8xw9enQGDhyYDh065Ctf+Up++9vfZtGiRfmf//mfJEnPnj1TVVVVnv/OO+/Ue/0H1yfJG2+80fSFAwAAALBWatYwraamJrNmzUqSXHfddfn617+eQw89tBymvfHGG5k3b95yX/9h6wEAAACgMbWoe6YtWLAg7du3b+4yAAAAAGCZmvXKtPfbf//9c+CBB+aqq64qL3v99dfrzdl8880zZ86c5a5/5ZVX8vnPf36Z22/fvn06dOhQ/rqioqIxygaAJPoMAE1PrwFoGZo1TOvbt2+qq6vTrl27tG7dOrfeemsuuOCC7LrrrkmSL33pS6muri7Pf/vtt+u9/oPrFy1atNx9DR48OBdccEHjHgAA/P/0GQCaml4D0DI0a5g2duzYnHzyyamtrc2MGTOyePHieuunTZu2wnuifdj69xsyZEiuuOKK8tcVFRWZPn36qhUOAB+gzwDQ1PQagJahWcO0+fPnZ8qUKatlX7W1tamtrV0t+wJg7aPPANDU9BqAlqHF3DNtVXzyk59Mx44d6y176623UldX10wVAQAAALAm+1iHaZMmTWqwbI899shTTz3VDNUAAAAAsKZrtjBt4MCBy1336KOPplWrVqu8HgAAAACaQuvmLgAAAAAAPi6EaQAAAABQkDANAAAAAAoSpgEAAABAQR/rp3muyUZd0a+5SwCgmekFABTx4NXHprq6urnLAFhruDINAAAAAAoSpgEAAABAQcI0AAAAAChImAYAAAAABQnTAAAAAKAgYRoAAAAAFCRMAwAAAICChGkAAAAAUJAwDQAAAAAKEqYBAAAAQEHCNAAAAAAoSJgGAAAAAAUJ0wAAAACgIGEaAAAAABQkTAMAAACAgoRpAAAAAFCQMA0AAAAAChKmAQAAAEBBwjQAAAAAKKhtcxfAsvU9897mLgGazKgr+jV3CQBJ9FtoDn4OaHwHnToiC2rqmrsMWG2cR2hurkwDAAAAgIKEaQAAAABQkDANAAAAAAoSpgEAAABAQcI0AAAAACioUcK0YcOGpVQq5dprr22w7uqrr06pVMqwYcPqzf3gGD16dPbZZ59lrnv/2GeffZIkPXr0SE1NTZ5//vnGOAQAAAAA+FBtG2tDr776ao455picccYZWbhwYZKkQ4cOOe644/LKK6/Umzt69OgMHDiw3rKamprMnz8/3bt3Ly/79a9/nc6dO9ebO2fOnCTJgAEDcscdd6R3797ZbbfdMm7cuMY6FAAAAABYpkYL0/71r3/lM5/5TA477LDceuutSZLDDjssr776aqZNm1Zvbk1NTWbNmrXM7bx/+YIFC9KhQ4dlzh04cGBOOeWUvP7666msrBSmAQAAANDkGvWeaUOHDq13FdmgQYPKH+9sTH369Mk666yThx56KMOHD88xxxyTddZZZ4Wvad++fSoqKuoNAGgs+gwATU2vAWgZGjVMGz58ePbee+9sttlm2WyzzbLXXntl+PDhDeb17ds31dXV9cbgwYML76eysjK33XZblixZkvHjx2fq1Kk58sgjV/iawYMHp6qqqjymT5++0scHAMujzwDQ1PQagJahUcO0N998Mw888EAGDBiQgQMH5oEHHshbb73VYN7YsWPTq1eveuO6664rtI8uXbrksMMOqxfSDR8+PJWVlSt83ZAhQ9K5c+fy6NGjx8odHACsgD4DQFPTawBahka7Z9pSQ4cOzdVXX50k+e53v7vMOfPnz8+UKVNWafvHHXdcOnXqlKeeeqq8rFWrVmnTpk223nrrTJ48eZmvq62tTW1t7SrtEwA+jD4DQFPTawBahka9Mi1JHnzwwbRv3z7t2rXLmDFjGnvzqayszGWXXVbvqrYddtghjz32WAYNGtTo+wMAAACApRr9yrQlS5Zk2223Lf95WTp06JBu3brVW1ZXV7fMj4S+3w477JCdd945xx9/fF566aV660aMGJHzzjsvP/3pT7N48eKPcAQAAAAAsGyNfmVakvJDBZbn4IMPzsyZM+uNJ5544kO3W1lZmfHjxzcI0pLkT3/6Uz75yU/mK1/5ykeqHQAAAACWp1GuTBs4cOAK13/961+vN/fD5i9vu6eddtpy586aNStt2zb6hXYAAAAAUNYkV6YBAAAAwJpImAYAAAAABQnTAAAAAKAgNxlroUZd0a+5SwCANZ5+C6wJHrz62BU+AA6AxuXKNAAAAAAoSJgGAAAAAAUJ0wAAAACgIGEaAAAAABQkTAMAAACAgoRpAAAAAFCQMA0AAAAAChKmAQAAAEBBwjQAAAAAKEiYBgAAAAAFCdMAAAAAoCBhGgAAAAAUJEwDAAAAgIKEaQAAAABQkDANAAAAAAoSpgEAAABAQcI0AAAAAChImAYAAAAABQnTAAAAAKAgYRoAAAAAFNS2uQtg2fqeeW9zlwB8DI26ol9zlwAfK/rth3NegZbvoFNHZEFNXXOXAUTfXFu4Mg0AAAAAChKmAQAAAEBBwjQAAAAAKEiYBgAAAAAFtYgwbdiwYSmVSrn22msbrLv66qtTKpUybNiwesv32GOP1NXVZdSoUaurTAAAAADWci0iTEuSV199Ncccc0w6duxYXtahQ4ccd9xxeeWVVxrMr6yszFVXXZXevXtn4403Xp2lAgAAALCWajFh2r/+9a+89tprOeyww8rLDjvssLz66qv597//XW/uuuuum6OPPjrXXnttHnjggQwYMGA1VwsAAADA2qjFhGlJMnTo0AwcOLD89aBBgxp8vDNJjjrqqEycODGTJk3K8OHDM2jQoNVZJgAAAABrqRYVpg0fPjx77713Nttss2y22WbZa6+9Mnz48AbzKisry8sffPDBdOnSJfvss88Kt92+fftUVFTUGwDQWPQZAJqaXgPQMrSoMO3NN98sf2xz4MCBeeCBB/LWW2/Vm9OzZ8/stttuGTFiRJJk8eLFuf3221NZWbnCbQ8ePDhVVVXlMX369CY7DgDWPvoMAE1NrwFoGVpUmJa891HPAQMGpH///hk6dGiD9ZWVlWnXrl1mzJiRRYsWZdGiRTn55JNz+OGHp3Pnzsvd7pAhQ9K5c+fy6NGjR1MeBgBrGX0GgKam1wC0DG2bu4APevDBB9O+ffuUSqWMGTOm3ro2bdrkhBNOyJlnnpm//OUv9dbde++9OfbYY/O73/1umdutra1NbW1tk9UNwNpNnwGgqek1AC1DiwvTlixZkm233bb85/fr27dvunbtmhtuuCFVVVX11t19992prKxcbpgGAAAAAB9Vi/uYZ5JUV1enurq6wfLKyso89NBDDYK05L0wbdddd83222+/OkoEAAAAYC3UIq5MGzhw4ArXf/3rX//QbTz99NNp1apVY5UEAAAAAA20yCvTAAAAAKAlEqYBAAAAQEHCNAAAAAAoSJgGAAAAAAW1iAcQ0NCoK/o1dwkAsMbTb4E1wYNXH5vq6urmLgNgreHKNAAAAAAoSJgGAAAAAAUJ0wAAAACgIGEaAAAAABQkTAMAAACAgoRpAAAAAFCQMA0AAAAAChKmAQAAAEBBwjQAAAAAKEiYBgAAAAAFCdMAAAAAoCBhGgAAAAAUJEwDAAAAgIKEaQAAAABQkDANAAAAAAoSpgEAAABAQcI0AAAAAChImAYAAAAABQnTAAAAAKCgts1dAMvW98x7m7sEVsKoK/o1dwkArAL9tnHph9A8Djp1RBbU1DV3GcBHpI9+fLgyDQAAAAAKEqYBAAAAQEHCNAAAAAAoSJgGAAAAAAUJ0wAAAACgoGYL04YNG5Y//elP5T+XSqWUSqXU1NRk8uTJOffcc9OmTZskyT777JNSqZQ5c+akQ4cO9bazyy67lF8LAAAAAE2pxVyZNnr06HTv3j1bb711Lr/88lxwwQX54Q9/WG9OdXV1vv71r9dbVllZmVdeeWV1lgoAAADAWqrFhGk1NTWZNWtWXn311Vx33XV56KGHcuihh9abc9NNN2XQoEHlrzt27JhjjjkmN9100+ouFwAAAIC1UIsJ0z5owYIFad++fb1lN998c770pS/lU5/6VJLk8MMPz//+7//mX//614dur3379qmoqKg3AKCx6DMANDW9BqBlaJFh2v77758DDzwwDz/8cL3lb7zxRkaPHp0BAwYkSQYNGpShQ4cW2ubgwYNTVVVVHtOnT2/ssgFYi+kzADQ1vQagZWgxYVrfvn1TXV2dhQsXZvTo0bn99ttzwQUXNJg3dOjQDBgwIFtssUX23HPP3HLLLYW2P2TIkHTu3Lk8evTo0chHAMDaTJ8BoKnpNQAtQ9vmLmCpsWPH5uSTT05tbW1mzJiRxYsXL3Pe6NGj8/vf/z433HBDRo4cmTlz5hTafm1tbWpraxuzZAAo02cAaGp6DUDL0GLCtPnz52fKlCkfOm/x4sX54x//mLPPPjsHHXTQaqgMAAAAAN7TYj7muTLOPffcbLTRRhkzZkxzlwIAAADAWqTZwrTWrVunrq5ulV67aNGivPXWW41cEQAAAACsWLN9zPOTn/xkXn755STJwIEDVzj30UcfTatWrZa7/r777lvhegAAAABoDKv9yrT1118/hxxySPbdd9889NBDq3v3AAAAALDKVvuVaUOHDs2uu+6ayy+/PPfdd9/q3j0AAAAArLLVHqYddthhq3uXAAAAANAomu2eaazYqCv6NXcJALDG02+BNcGDVx+b6urq5i4DYK3RbE/zBAAAAICPG2EaAAAAABQkTAMAAACAgoRpAAAAAFCQMA0AAAAAChKmAQAAAEBBwjQAAAAAKEiYBgAAAAAFCdMAAAAAoCBhGgAAAAAUJEwDAAAAgIKEaQAAAABQkDANAAAAAAoSpgEAAABAQcI0AAAAAChImAYAAAAABQnTAAAAAKAgYRoAAAAAFCRMAwAAAICChGkAAAAAUFDb5i6AZet75r3NXQJ8LI26ol9zlwB8jOi3Tc95GZreQaeOyIKauuYuA1YbvYXm5so0AAAAAChImAYAAAAABQnTAAAAAKAgYRoAAAAAFLRKYVq3bt1y5ZVXZvLkyVmwYEFmzpyZJ554IieddFI6depUnrfnnnvmgQceyJw5c7JgwYI899xzOeOMM9K6dcPdHnLIIXnkkUdSVVWV+fPnZ9y4cenfv/8y93/YYYflb3/7W+bMmZN33303EydOzA033JBevXqtyuEAAAAAQCErHaZtscUW+fe//50DDjgg55xzTnbcccfsueee+dWvfpW+ffvmy1/+cpKkX79+efTRR/P666+nT58+2WabbfLrX/86P/3pT3PbbbfV2+app56a++67L08++WR23333fOELX8htt92W6667Lpdeemm9uRdffHFuv/32/Oc//8mhhx6az372sznuuOMyderUDBky5CO8FQAAAACwYm1X9gXXXHNN6urqsssuu+Tdd98tL582bVruv//+JMk666yT66+/Pvfff39OPPHE8pwbbrghs2bNysiRI3PUUUfljjvuyKabbprLL788V155ZX7yk5+U515xxRWpra3NVVddlTvvvDPjxo3L7rvvnrPPPjunnXZarrrqqvLc1157Lf/6179W6Q0AAAAAgKJW6sq0DTbYIAcccEB++9vf1gvSPuiAAw7IRhttlMsuu6zBulGjRuWl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HnVFvybbNgBrp6bsWx9X+i2wJjjo1BFZUFPX3GXAaqF30xK4Mg0AAAAAChKmAQAAAEBBwjQAAAAAKEiYBgAAAAAFCdMAAAAAoKCPHKYNGzYspVKpPN58882MHj0622+/fYO51113Xerq6nLEEUc0WHf++efX287cuXPz2GOPpXfv3svc749//OPU1dXlrLPO+qiHAAAAAACFNMqVaaNHj0737t3TvXv37L///qmrq8uoUaPqzenUqVOOOeaY/OpXv8qgQYOWuZ0XXnihvJ0999wzkydPzqhRo9K5c+cGcwcNGrTCbQEAAABAY2uUMK2mpiazZs3KrFmz8uyzz+biiy/OZpttlo022qg858gjj8yLL76Yiy++OL17986mm27aYDt1dXXl7UyYMCHnnXdeKioq0rNnz3rzevfunU6dOuW8885L586ds+eeezbGYQAAAADACjX6PdPWXXfdfOMb38jkyZPz1ltvlZdXVlZm+PDhqaqqyujRozNgwIAVbqd9+/YZOHBg3n777bz00kv11lVWVmbEiBGpq6vLiBEjUllZ+aF1tW/fPhUVFfUGADQWfQaApqbXALQMjRKm9e3bN9XV1amurs4777yTQw89NEcffXRKpVKSZKuttsoee+yR22+/PUkyfPjwDBw4sMF2tt9++/J2FixYkLPOOivHHntsqqury3MqKipyxBFHZPjw4eVtHXXUUVl33XVXWOPgwYNTVVVVHtOnT2+MQweAJPoMAE1PrwFoGRolTBs7dmx69eqVXr16Zdddd82YMWMyevTobLbZZkneu7/ZmDFjyleq/fnPf06XLl2y33771dvOSy+9VN7OzjvvnGuvvTZ33nlndt555/KcY489NlOmTMlzzz2XJHn22Wfzyiuv5Oijj15hjUOGDEnnzp3Lo0ePHo1x6ACQRJ8BoOnpNQAtQ9vG2Mj8+fMzZcqU8tff+ta3Mm/evHz729/O+eefn/79+6d79+5ZtGjR/9tx27YZNGhQHn744fKy2traetv5z3/+k379+uX000/PN7/5zSTvfcTzc5/7XL1ttW7dOoMGDcrQoUOXW2NtbW1qa2sb43ABoAF9BoCmptcAtAyNEqZ9UKlUypIlS9KpU6d85StfSUVFRXbccccsXry4POfzn/98hg0bli5dumTevHnL3dbixYvTqVOn8mt22WWX7LvvvpkzZ055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", + "image/png": "iVBORw0KGgoAAAANSUhEUgAABNMAAANECAYAAACaVWk9AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAcYlJREFUeJzt3QucVHX9P/7PygJyW1AxQcVbKAqalqnftLwUKkaIRqKUJmpqaqZfKRUrNTPwxlfLWzcBLVMgr6CZaV4TRUvSzPstVMgroKIoMP/H+/z+s+3CLhxgZ2d29/l8PA67c+bMmc+ZHc5nzms+l6pCoVBIAAAAAMAKrbHiTQAAAACAIEwDAAAAgJyEaQAAAACQkzANAAAAAHISpgEAAABATsI0AAAAAMhJmAYAAAAAOQnTAAAAACAnYRoAAAAA5CRMg/9fVVVV+s53vrPC7SZOnJht+9JLL6VKceaZZ2ZlKpWRI0emTTbZpGT7B2htiuflN998c4Xbxvk1zrOVJMoex1AKUX/G/qM+BQBoiYRp0AwWLFiQXZTcfffd5S5KizJmzJh04403lrsYABXn1ltvLVnY1Vo98MAD2Ws2d+7cchcFgNX0r3/9KzunV1IDB9oWYRqspEMOOSR98MEHaeONN16pMO3HP/5xycK0H/7wh1mZWhthGtAWPP300+nXv/71SodpUa+UStQpUbe0tjAtXjNhGkDrCNPinC5Mo1yEabCS2rVrl9Zcc82SdqvM6/33389+VldXZ2WqdBEqltuSJUvShx9+WO5iANTq2LFjat++fUWdH6NOibqlkkVZo8yVUhcDsOoWLVqUPvroo3IXwzmd3IRprNIYMM8880w6+OCDU/fu3dO6666bfvSjH6VCoZBmzZqVhg4dmmpqalKvXr3SuHHj6j1+4cKF6Ywzzkh9+/bNLh769OmTTj755Gx9XRMmTEhf/OIX0yc+8Ylsu/79+6fLL7+8wXFmvvKVr6T7778/7bjjjtmH/8022yxdddVVq3yM0RJq6623zp53wIAB6bbbblvhmGmPPPJI2nvvvVPPnj1Tp06d0qabbpoOP/zw7L7YLl6jEN+exGOXHovmL3/5S/rCF76QunTpknr06JG9hk8++WSDr318C/P1r389rbXWWunzn/98vfuW9rvf/S57XTp37pxtv+uuu6bbb7+99v6bbropDR48OK2//vrZ8X7yk59MP/nJT9LixYvT6tp9992z1/Fvf/tb9rxRhtNOOy33+yCOJyqzK6+8svY1K44p1NgYbg29DsWx8K6++urs7xnPF3/T4t/xr3/9azrppJOyv1G8/vvvv3964403Vvv4gab36quvZufW9dZbr/YcPX78+Nr7o/Vv/L+ePHlydr7dYIMNUrdu3dLXvva1NG/evOwcc+KJJ2Z1S9euXdNhhx22yvVPXtEKKs5ZcW6POjOec+kvFpYeM+3jjz/Oyr/55ptn9do666yTne///Oc/Z/fHtpdeemn2e/H8WPfcF+fOUaNGZefWOIZ+/fqlCy64IKun85wfi/ct3Y00Xv8jjjiits6Iuu6YY46pvfh5++230/e+9720zTbbZK9vfBbYZ5990j/+8Y+0uop/22uvvTZrMRd/26hX5s+fn93/0EMPpUGDBmWvcazfbbfdsvN7URzL97///ez3KHfxNYs6enljuC39OiyvLi7FZxKAFZ1/8557i+fRSZMmZZ/J41otPvvuu+++2TVcQ5/jH3vssex8GufV+Nz+hz/8Ibv/nnvuSTvttFN23RN1zB133LFSx1M870bddNFFF2XXIHFccW4NTz31VFZ3r7322tm59LOf/Wy6+eabax8f5+sDDjgg+32PPfaoPacXewE1Nu7n0vVt8XogjufYY4/N6v4NN9yw3msQZYrniNcg6p7zzjtvpY6V1quyv3KkYh144IFpq622Suecc0665ZZb0tlnn52d7H75y19mFyHnnntu9uE8Tuw77LBDFqbEt8dxso4PmUcddVT2+McffzxdeOGFWThXtztfXLjEB/vYPr4Znzp1anaCi30cd9xx9cry3HPPZSfbqGAOPfTQ7MIqTpLbb799to+VEWW7/vrrs+eKC7Cf//znadiwYenf//53djHTkNdffz3ttddeWRhz6qmnZhdMUUHEfkKsj+OJCi+Cmq9+9avZ+k996lPZz6h8osKLD9xx0o+uNRdffHHaZZdd0t///vdlQqOoOOICK7pALn1hVFdciMX+dt5553TWWWelDh06ZBcbEdxFeYsVSFS6ESbFz7jv9NNPzy5Ozj///LS63nrrrezYDjrooCx8jQvgvO+D3/72t+lb3/pWdkES24WoaFdFHFdcXMdFYwSe8ZrOnDkzu+/444/PLoYi3Iu/W1TosV180AAqx3/+85/0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I20o+MpzTg9RLyx9To9hIpbX4hhWlpZpNJsY7yWmNY5Be+Nb/pjyOE5o8W15rI/ukTGw5l577ZV1q4mBNo8++ujsw3EEL3FyrcRvEyIIiw/cMU1znLijcoryxofzYhgWTYdj/LJJkyZlY+BEi4MY+yCW6JoSldfnPve5bAKHCJQuvvjibPyBaIWwKuKi6wc/+EHW1DsGQo7pnGP8tocffjgbS2fs2LFp5513zr61iS5TMVB1XGT99re/LXmz5bzvg+JFUrSwiO5WUe4YzyAGOY3BUKMrarzmUfYY1yim647XtqkGuQYqyznnnJOdM+IcEAMFxzk1BiqO//NxnojfV1el1D9xbHExEefAqC/iAioudr7zne/UbhP3hTgHRleYuJiKc2OUPVooRB0Q499su+222Zcz0WU0uvzUnWRnZbsRxX5ieICYuCXGYIvXJC7Y7r///mxQ6q985SvZlzjRmi7qmMcffzxdffXVtS0NSnWhGd1gox4dMGBA9twxlk5cRMb7JeriuAit+5rFaxOvVbR8iNcrLsiixV+8x+Jn1EFxEfbMM8+UrNwATXX+Xdlzb9Qrn//857Pt//Of/6SLLroou3aIurUSXHrppVn5YliYKFMcR5QzxjJ95ZVXsh4uIRokRN137rnnZl98xbVOTGgWdXacy+NaI76Ii0nd4jFxjVGqVtK0TcI0mk184I3ZaOLb8fhGJFoRRYutOEGecMIJWRBSHIw/LhpiYPzoL9+rV690zDHHZM2cl56JrRJExTZjxoysS2ec6CMEi1leohKrO5hlfNg//vjj0//+7/9mLcBigOsI06IJ82233Zbdjtk348N97DMqhjwDQzcmKtV4fARzceEQr3U0344wqzggacxAGjO8xWsdwVqMRxTdLxsbo6A53wchQrT40BDli5Axgr+4kI6yx+NOOumkdPLJJ2fHGQFhNFsXpkHrtN5662Xn2ji3Rff0+BIjzgURoMT5silUSv0TAVl0NY2Lp2iNFl0zzz777PT973+/dpv4kiTqlKh7fve732VfhERAFOfYeGzUJ/EFTrSq22STTbIvbuJ8v6oioHrooYeycXmifosBsWNdhFjF1tennXZa1ro4hjqI5/7MZz6TbrnllnTqqaemUorgMS6y4gukaJEXIWj87aK+iFC0aIcddsi2ibHnot6NltsxtEGEafF6RYuH+PvH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OQnTAAAAACAnYRoAAAAA5CRMAwAAAICcqvNuSPMaMuqmcheBFZg6bmi5iwBAK6lv1SnA6hh+2i2pfcfO5S4GTUi9AJVNyzQAAAAAyEmYBgAAAAA5CdMAAAAAICdhGgAAAADkJEwDAAAAgHKEab/4xS9St27d0qJFi2rXvffee6l9+/Zp9913r7ft3XffnaqqqtLzzz+fNtlkk+z3a6+9dpl9DhgwILtv4sSJtY9Z3hLbAAAAAEDFh2l77LFHFp498sgjtevuu+++1KtXr/TQQw+lDz/8sHb9XXfdlTbaaKP0yU9+Mrvdp0+fNGHChHr7e/DBB9OcOXNSly5dsts777xzmj17du0yfPjwNGjQoHrrYhsAAAAAqPgwrV+/fql37971WofF70OHDk2bbrppFo7VXR/hW9E3vvGNdM8996RZs2bVrhs/fny2vrq6OrvdoUOHLJgrLp06dUodO3asty62AQAAAIAWMWZaBGTR6qwofo8unrvttlvt+g8++CBrqVY3TFtvvfXS3nvvna688srs9oIFC9KkSZPS4Ycf3iTlWrhwYZo/f369BQCainoGgFJT1wC04jDtr3/9azZu2rvvvpseffTRLEjbdddda1usTZ8+PasI6oZpIYKzGButUCikP/zhD1kX0O22265JyjV27NjUvXv32iW6lQJAU1HPAFBq6hqAVhqmRSu0999/Pz388MPZeGlbbLFFWnfddbNArThuWoRqm222WTZmWl2DBw/Oxly79957sy6eTdUqLYwePTrNmzevdqnbnRQAVpd6BoBSU9cAVIb/NxhZE+rbt2/acMMNsy6d77zzThaihfXXXz/75uSBBx7I7vviF7+4bGGqq9MhhxySzjjjjCx4u+GGG5qsXDG2WiwAUArqGQBKTV0D0EpbpoXovhmtz2KJlmpF0dXzj3/8Y5oxY8YyXTyLojVaTEQQkxastdZapSgeAAAAAFRGy7QQQdlxxx2XPv7449qWaSF+/853vpM++uijRsO0rbbaKr355pupc+fOpSgaAAAAAFRemBYzdm655ZbZLJ11w7SYlKBfv36pd+/ejT5+nXXWKUWxAAAAAKDywrRNNtkkm5FzaRtvvHGD61966aXl7m/u3LkNro+ZPwEAAACgRY+ZBgAAAACtkTANAAAAAHISpgEAAABAOcdMY/VNHTe03EUAgFZPfQu0BpPHDE41NTXlLgZAm6FlGgAAAADkJEwDAAAAgJyEaQAAAACQkzANAAAAAHISpgEAAABATsI0AAAAAMhJmAYAAAAAOQnTAAAAACAnYRoAAAAA5CRMAwAAAICchGkAAAAAkJMwDQAAAAByEqYBAAAAQE7CNAAAAADISZgGAAAAADkJ0wAAAAAgJ2EaAAAAAOQkTAMAAACAnIRpAAAAAJBTdd4NaV5DRt2UWoup44aWuwgAANBqDT/tltS+Y+dyFwOgzWQDWqYBAAAAQE7CNAAAAADISZgGAAAAADkJ0wAAAAAgJ2EaAAAAAFRSmLb77runE088cZn1EydOTD169Ki37pVXXkkdOnRIW2+99XL3OX369NSuXbs0ePDgJi8vAAAAALSIlmkRsA0fPjzNnz8/PfTQQ41ud8UVV6Tjjz8+3Xvvvem1115r1jICAAAA0DZVVJhWKBTShAkT0iGHHJK+/vWvZ4FZQ9577700adKkdMwxx2Qt0yKAAwAAAIA2FabdddddacGCBWngwIHp4IMPTtdee216//33l9lu8uTJacstt0z9+vXLths/fnwWxAEAAABAmwnToiXaQQcdlI2FFmOmbbbZZmnKlCkNbhchWhg0aFCaN29euueee5a774ULF2ZdR+suANBU1DMAlJq6BqAyVEyYNnfu3HT99dfXhmQhfl+6q+fTTz+dZsyYkUaMGJHdrq6uTgceeGCjXUKLxo4dm7p371679OnTp0RHAkBbpJ4BoNTUNQBtKEyrqanJWo81FKBFJRB+//vfpw8//DDttNNOWUAWyymnnJLuv//+9Mwzz9Q+JkKzRYsWpfXXX792u8svvzxdd911DT5H0ejRo7P7i8usWbNKdLQAtEXqGQBKTV0DUBmqm+NJYmyz22+/fZn1f//739MWW2xRG5KNGjUqjRw5st42xx57bDYm2jnnnJOFaFdddVUaN25c2muvveptt99++6Vrrrkmffvb326wDB07dswWACgF9QwApaauAWhDYVrMunnJJZek7373u+lb3/pWVgHccsstWfg1derUNHPmzCxYu/rqq7OJBeqK7pxnnXVWOvvss9O0adPSO++8k4444ojaFm1Fw4YNywK5xsI0AAAAAGgR3TxjIoF77703PfXUU9lMndGVM2bkjMkFYgKBCMH69++/TJAW9t9///T666+nW2+9NdsuHr90kFYM0x555JH02GOPNcchAQAAANAGNUvLtLDDDjs02NUzXHzxxY0+rlevXmnx4sXZ7/vuu2+j2+24446pUCg0QUkBAAAAoMJn8wQAAACASidMAwAAAICchGkAAAAAkJMwDQAAAAAqbQICVs7UcUPLXQQAAKAFmDxmcKqpqSl3MQDaDC3TAAAAACAnYRoAAAAA5CRMAwAAAICchGkAAAAAkJMwDQAAAAByEqYBAAAAQE7CNAAAAADISZgGAAAAADkJ0wAAAAAgJ2EaAAAAAOQkTAMAAACAnIRpAAAAAJCTMA0AAAAAchKmAQAAAEBOwjQAAAAAyEmYBgAAAAA5CdMAAAAAICdhGgAAAADkJEwDAAAAgJyq825I8xoy6qZyF6FiTB03tNxFAKCVas76Vn0GlMrw025J7Tt2LncxaELqDKhsWqYBAAAAQE7CNAAAAADISZgGAAAAADkJ0wAAAAAgJ2EaAAAAALTmMK2qqmq5y5lnnlnuIgIAAADQClWnFmj27Nm1v0+aNCmdfvrp6emnn65d17Vr1zKVDAAAAIDWrEWGab169ar9vXv37llrtLrrAAAAAKAUWmSYtioWLlyYLUXz588va3kAaF3UMwCUmroGoDK0yDHTVsXYsWOzVmzFpU+fPuUuEgCtiHoGgFJT1wBUhjYTpo0ePTrNmzevdpk1a1a5iwRAK6KeAaDU1DUAlaHNdPPs2LFjtgBAKahnACg1dQ1AZWgzLdMAAAAAYHUJ0wAAAAAgJ2EaAAAAALSVMG3kyJFp7ty55S4GAAAAAG1Aiw/TAAAAAKC5CNMAAAAAICdhGgAAAADkVJ13Q5rX1HFDy10EAGj11LdAazB5zOBUU1NT7mIAtBlapgEAAABATsI0AAAAAMhJmAYAAAAAOQnTAAAAACAnYRoAAAAA5CRMAwAAAICchGkAAAAAkJMwDQAAAAByEqYBAAAAQE7CNAAAAADISZgGAAAAADkJ0wAAAAAgJ2EaAAAAAOQkTAMAAACAnIRpAAAAAJCTMA0AAAAAchKmAQAAAEBOwjQAAAAAyEmYBgAAAAA5CdMAAAAAIKfqvBvSvIaMuqncRYBmM3Xc0HIXAWijKqm+dS4EVtXw025J7Tt2LncxoOKpa2kqWqYBAAAAQE7CNAAAAADISZgGAAAAADkJ0wAAAACgOcO0N954Ix1zzDFpo402Sh07dky9evVKe++9d/rrX/+a3b/JJpukqqqqbGnXrl1af/310xFHHJHeeeed2n1MnDgx9ejRo8H9x+NuvPHG7Pdbb701dejQIf3973+vt824ceNSz54905w5c5rikAAAAACgNGHasGHD0qOPPpquvPLK9Mwzz6Sbb7457b777umtt96q3eass85Ks2fPTv/+97/T1Vdfne6999703e9+d6Wf68tf/nL65je/mS0LFy7M1v3rX/9KP/zhD9Oll16aBXkAAAAAUArVq7uDuXPnpvvuuy/dfffdabfddsvWbbzxxmnHHXest123bt1qg64NNtggHXrooemaa65Zpee88MIL0zbbbJPOOOOMdPbZZ2f7GjJkSDrwwANX93AAAAAAoHRhWteuXbMlumH+z//8T9bNc0VeffXVNHXq1LTTTjut0nNGMDd+/PisK+mLL76YZs2alW677bZV2hcAAAAANFs3z+rq6my8s+jiGWOe7bLLLum0005Ljz32WL3tTjnllCx069SpU9pwww2zcdD+7//+b5Wf94tf/GL62te+liZPnpx+/vOfp3XWWWe520eX0Pnz59dbAKCpqGcAKDV1DUArGzPttddey8ZKGzRoUNbl8zOf+UwWshV9//vfTzNnzsxCtjvvvDNbN3jw4LR48eJVes5o3Rat0Tp37px1M12RsWPHpu7du9cuffr0WaXnBYCGqGcAKDV1DUArCtPCmmuumfbcc8/0ox/9KD3wwANp5MiR2ZhmRTHTZt++fdPmm2+etSq76KKLsu3uuuuu7P6ampr0/vvvpyVLliwzJluIyqKuI488Mm2//fZp2rRp6fLLL0/33HPPcss3evToNG/evNoluoYCQFNRzwBQauoagFYyZlpj+vfvn42j1ph27dplPz/44IPsZ79+/dKiRYuy1mvRqq3o73//e/Zziy22qF33m9/8Jt1///3p8ccfzyY7OOaYY9Lhhx+etXrr0qVLg88XY7nlGc8NAFaFegaAUlPXALSSlmlvvfVW1tLsd7/7XRZmxYQAU6ZMSeedd14aOnRo7XbvvvtumjNnTpo9e3aaMWNG1u1z3XXXTTvvvHN2/4ABA9Jee+2VhWLRDTT2E904jz322GyWzpgBNLz88svppJNOShdccEEWpIVzzz03G4Pt1FNPXd3DAQAAAIDSzuYZs3JeeOGF6fnnn08ff/xx1nc/umHGRARFp59+eraECNF22GGHdPvtt9ebOGDSpElZ19Cjjz46G4MtJirYf//9s66joVAopCOOOCJ97nOfS0cddVTt42LctBifbffdd88mJdhtt91W97AAAAAAoOnDtGhmHANhxtKYl156Kde+YjbQn/3sZ9nSkGh9dscddzR43+c///msmygAAAAAVPwEBAAAAADQ2gnTAAAAACAnYRoAAAAA5CRMAwAAAIDmmoCA0pg6bmi5iwAArZ76FmgNJo8ZnGpqaspdDIA2Q8s0AAAAAMhJmAYAAAAAOQnTAAAAACAnYRoAAAAA5CRMAwAAAICchGkAAAAAkJMwDQAAAAByEqYBAAAAQE7CNAAAAADISZgGAAAAADkJ0wAAAAAgJ2EaAAAAAOQkTAMAAACAnIRpAAAAAJCTMA0AAAAAchKmAQAAAEBOwjQAAAAAyEmYBgAAAAA5CdMAAAAAIKfqvBvSvIaMuim1VVPHDS13EQBoI9pyfQt1+fzVsg0/7ZbUvmPnchcDaELOy5VNyzQAAAAAyEmYBgAAAAA5CdMAAAAAICdhGgAAAADkJEwDAAAAgEoL00aOHJmqqqqypX379mnTTTdNJ598cvrwww9rtyneH0tNTU3aYYcd0k03LTvL1nXXXZd233331L1799S1a9f0qU99Kp111lnp7bffbq7DAQAAAKANataWaYMGDUqzZ89OL7zwQrrwwgvTL3/5y3TGGWfU22bChAnZNo888kjaZZdd0te+9rX0+OOP197/gx/8IB144IFZ0PbHP/4x/fOf/0zjxo1L//jHP9Jvf/vb5jwcAAAAANqY6uZ8so4dO6ZevXplv/fp0ycNHDgw/fnPf07nnntu7TY9evTItonlJz/5SfrZz36W7rrrrrTNNtukGTNmpDFjxqSLLroonXDCCbWP2WSTTdKee+6Z5s6d25yHAwAAAEAb06xhWl3RouyBBx5IG2+8cYP3L1q0KF1xxRXZ7x06dMh+Xn311Vm3zmOPPbbBx0QQ15iFCxdmS9H8+fNX8wgA4L/UMwCUmroGoA2GadOmTcvCsAjKohJYY4010iWXXFJvmxEjRqR27dqlDz74IC1ZsiRrdTZ8+PDsvmeffTZtttlm2ZhrK2vs2LHpxz/+cZMdCwDUpZ4BoNTUNQBtcMy0PfbYI82cOTM99NBD6dBDD02HHXZYGjZsWL1tYiy12CbGQ+vfv3/6zW9+k9Zee+3svkKhsMrPPXr06DRv3rzaZdasWat9PABQpJ4BoNTUNQBtsGValy5dUt++fbPfx48fn7bddtusK+cRRxxRu02MlRbbxBKTEXz5y19O//rXv9InPvGJtMUWW6T7778/ffzxxyvdOi3Ga4sFAEpBPQNAqalrANpgy7R6T7zGGum0005LP/zhD7MunQ3Zcccd0/bbb59++tOfZre//vWvp/feey9ddtllDW5vAgIAAAAAWmWYFg444IBsfLRLL7200W1OPPHE9Mtf/jK9+uqraaeddkonn3xyGjVqVPZz+vTp6eWXX0533nlntq8rr7yyWcsPAAAAQNtS1jCturo6fec730nnnXdeev/99xvcZtCgQWnTTTetbZ127rnnpt///vfZuGt77713GjBgQDrppJPSpz71qWwcNgAAAABo8WOmTZw4scH1p556arY0NsFAVVVVevLJJ+uti9k9izN8AgAAAECbaJkGAAAAAC2JMA0AAAAAchKmAQAAAECljZnGypk6bmi5iwAArZ76FmgNJo8ZnGpqaspdDIA2Q8s0AAAAAMhJmAYAAAAAOQnTAAAAACAnYRoAAAAA5CRMAwAAAICchGkAAAAAkJMwDQAAAAByEqYBAAAAQE7CNAAAAADIqc2FaZdeemnq379/2mGHHcpdFABaIfUMAKWmrgEor6pCoVBIbdD8+fNT9+7d07x581JNTU25iwPQ4jmv1uf1AGhazqvL8poAlOec2uZapgEAAADAqhKmAQAAAEBOwjQAAAAAyEmYBgAAAAA5CdMAAAAAICdhGgAAAADkJEwDAAAAgJyEaQAAAACQkzANAAAAAHKqzrshzWvIqJvKXYQ2aeq4oeUuAkAtdUHpOe8DrcHw025J7Tt2LncxKAH1FFQmLdMAAAAAICdhGgAAAADkJEwDAAAAgJyEaQAAAABQ6WHayJEjU1VVVbZ06NAh9e3bN5111llp0aJF6e677669r+7ywx/+MHtsY/fHMmfOnHIdEgAAAACtXFln8xw0aFCaMGFCWrhwYbr11lvTcccdl9q3b58+97nPZfc//fTTqaampnb7rl271nv80veHT3ziE81UegAAAADamrKGaR07dky9evXKfj/mmGPSDTfckG6++ebaMC2CsR49ejT6+BXdDwAAAACtdsy0Tp06pY8++qjcxQAAAACAymuZVlQoFNKdd96Z/vSnP6Xjjz++dv2GG25Yb7uXX345rbPOOo3ev/HGG6cnnniiweeIrqSxFM2fP78JjwCAtk49A0CpqWsAKkNZw7Rp06Zl46B9/PHHacmSJenrX/96OvPMM9PDDz+c3X/fffelbt261W6/1lpr1Xv80vfHeGuNGTt2bPrxj39ckuMAAPUMAKWmrgGoDGUN0/bYY490+eWXZ7N5rr/++qm6un5xNt100+WOibai++saPXp0Oumkk+p9i9OnT5/VKD0A/Jd6BoBSU9cAVIayhmldunRJffv2bbbJDmIBgFJQzwBQauoagMpQEWOmrarXX389ffjhh/XWxZhqy+vuCQAAAABtMkzr16/fMuumT5+e/ud//qcs5QEAAACgdStbmDZx4sRG79t9992zGT5X9X4AAAAAKIU1SrJXAAAAAGiFhGkAAAAAkJMwDQAAAAByEqYBAAAAQFuYzbM1mzpuaLmLAECZqQsAyGPymMGppqam3MUAaDO0TAMAAACAnIRpAAAAAJCTMA0AAAAAchKmAQAAAEBOwjQAAAAAyEmYBgAAAAA5CdMAAAAAICdhGgAAAADkJEwDAAAAgJyEaQAAAACQkzANAAAAAHISpgEAAABATsI0AAAAAMhJmAYAAAAAOQnTAAAAACAnYRoAAAAA5CRMAwAAAICchGkAAAAAkJMwDQAAAAByqs67Ic1ryKibyl0EKJmp44aWuwgAGfUtND+fA5re8NNuSe07di53MaDZOI9QblqmAQAAAEBOwjQAAAAAyEmYBgAAAAA5CdMAAAAAICdhGgAAAAA0Z5g2cuTIVFVVlb797W8vc99xxx2X3Rfb1N126WXQoEHp7rvvbvC+uktsE1555ZXUoUOHtPXWWzfFIQAAAADAClWnJtKnT5907bXXpgsvvDB16tQpW/fhhx+m3//+92mjjTaqt20EZxMmTKi3rmPHjqlLly5p9uzZtetOOOGENH/+/Hrbrr322tnPiRMnpuHDh6d77703PfTQQ2mnnXZqqkMBAAAAgNKGaZ/5zGfS888/n66//vr0jW98I1sXv0eQtummmy4TnPXq1avB/dRdH6HcwoULl9m2UChkAdtll12WNtxww3TFFVcI0wAAAABoWWOmHX744fVakY0fPz4ddthhqandddddacGCBWngwIHp4IMPzlrEvf/++8t9TIRy0cqt7gIATUU9A0CpqWsAWmGYFsHW/fffn15++eVs+etf/5qtW9q0adNS165d6y1jxozJ/TzREu2ggw5K7dq1y8ZM22yzzdKUKVOW+5ixY8em7t271y7RLRUAmop6BoBSU9cAtMIwbd11102DBw/OxjOLFmrxe8+ePZfZbo899kgzZ86stzQ0eUFD5s6dm3UfrRvSxe8RsC3P6NGj07x582qXWbNmrcIRAkDD1DMAlJq6BqCVjZlWt6vnd77znez3Sy+9tMFtYqKBvn37rtL+Y0KDmNig7hhpMYbakiVL0jPPPJO22GKLBh8X47TFAgCloJ4BoNTUNQCtsGVacabOjz76KH388cdp7733burdZy3QRo0aVa9V2z/+8Y/0hS98IRujDQAAAABaTMu0GMfsySefrP29sYEz58yZU78g1dUNdgmtK4Kzv//97+nqq69OW265Zb37RowYkc4666x09tlnZ/sCAAAAgIpvmRZqamqypTG33XZb6t27d73l85//fK5Waf37918mSAv7779/ev3119Ott9662uUHAAAAgIY0SROumHBgeW688cZ6265o+8b2e/HFFze6ba9evdLixYtz7RcAAAAAKqZlGgAAAAC0RsI0AAAAAMhJmAYAAAAAOZn2skJNHTe03EUAgFZPfQu0BpPHDF7uBHAANC0t0wAAAAAgJ2EaAAAAAOQkTAMAAACAnIRpAAAAAJCTMA0AAAAAchKmAQAAAEBOwjQAAAAAyEmYBgAAAAA5CdMAAAAAICdhGgAAAADkJEwDAAAAgJyEaQAAAACQkzANAAAAAHISpgEAAABATsI0AAAAAMhJmAYAAAAAOQnTAAAAACAnYRoAAAAA5CRMAwAAAICchGkAAAAAkFN13g1pXkNG3VTuIgAt0NRxQ8tdBGhR1Lcr5rwClW/4abek9h07l7sYgHqzzdAyDQAAAAByEqYBAAAAQE7CNAAAAADISZgGAAAAAC0pTBs5cmSqqqpK3/72t5e577jjjsvui23qmj59emrXrl0aPHhwM5YUAAAAgLasIsK00KdPn3TttdemDz74oHbdhx9+mH7/+9+njTbaaJntr7jiinT88cene++9N7322mvNXFoAAAAA2qKKCdM+85nPZIHa9ddfX7sufo8g7dOf/nS9bd977700adKkdMwxx2Qt0yZOnFiGEgMAAADQ1lRMmBYOP/zwNGHChNrb48ePT4cddtgy202ePDltueWWqV+/funggw/OtisUCs1cWgAAAADamooK0yIYu//++9PLL7+cLX/961+zdQ118SyuHzRoUJo3b1665557lrvvhQsXpvnz59dbAKCpqGcAKDV1DUBlqKgwbd11163tthkt1OL3nj171tvm6aefTjNmzEgjRozIbldXV6cDDzwwC9iWZ+zYsal79+61S3QpBYCmop4BoNTUNQCVoaLCtGJXzwjTrrzyyuz3pUVotmjRorT++utnQVosl19+ebruuuuyFmqNGT16dHZ/cZk1a1aJjwSAtkQ9A0CpqWsAKkN1qjDRbfOjjz5KVVVVae+99653X4RoV111VRo3blzaa6+96t233377pWuuuSZ9+9vfbnC/HTt2zBYAKAX1DAClpq4BqAwVF6a1a9cuPfnkk7W/1zVt2rT0zjvvpCOOOCJr1lzXsGHDslZrjYVpAAAAANDqunmGmpqabFlahGUDBw5cJkgrhmmPPPJIeuyxx5qplAAAAAC0NRXRMi3GSFueG2+8cYX72HHHHVOhUGjCUgEAAABAC2iZBgAAAACVSJgGAAAAADkJ0wAAAAAgJ2EaAAAAALSkCQhY1tRxQ8tdBABo9dS3QGsweczgVFNTU+5iALQZWqYBAAAAQE7CNAAAAADISZgGAAAAADkJ0wAAAAAgJ2EaAAAAAOQkTAMAAACAnIRpAAAAAJCTMA0AAAAAchKmAQAAAEBOwjQAAAAAyEmYBgAAAAA5CdMAAAAAICdhGgAAAADkJEwDAAAAgJyEaQAAAACQkzANAAAAAHISpgEAAABATsI0AAAAAMhJmAYAAAAAOVXn3ZDmNWTUTeUuAith6rih5S4CAKtAfdu01IdQHsNPuyW179i53MUAVpN6tOXQMg0AAAAAchKmAQAAAEBOwjQAAAAAyEmYBgAAAAA5CdMAAAAAoNLDtJEjR6b99tuv9veqqqps6dChQ+rbt28666yz0qJFi7L777777uy+tdZaK3344Yf19vPwww/XPhYAAAAA2kTLtEGDBqXZs2enZ599No0aNSqdeeaZ6fzzz6+3Tbdu3dINN9xQb90VV1yRNtpoo2YuLQAAAABtUcWEaR07dky9evVKG2+8cTrmmGPSwIED080331xvm0MPPTSNHz++9vYHH3yQrr322mw9AAAAAJRadapQnTp1Sm+99Va9dYccckjWWu3f//531hrtuuuuS5tsskn6zGc+s8L9LVy4MFuK5s+fX5JyA9A2qWcAKDV1DUBlqJiWaUWFQiHdcccd6U9/+lP64he/WO++T3ziE2mfffZJEydOzG5HK7XDDz88137Hjh2bunfvXrv06dOnJOUHoG1SzwBQauoagMpQMWHatGnTUteuXdOaa66ZBWYHHnhgNm7a0iI8izDthRdeSNOnT0/f+MY3cu1/9OjRad68ebXLrFmzSnAUALRV6hkASk1dA1AZKqab5x577JEuv/zybDbP9ddfP1VXN1y0CNqOOuqodMQRR6QhQ4akddZZJ/eYbLEAQCmoZwAoNXUNQGWomDCtS5cuqW/fvivcLkK2b37zm+m8885Lf/zjH5ulbAAAAABQUd08V8ZPfvKT9MYbb6S999673EUBAAAAoA0pW8u0JUuWNNqVc0WiK2jPnj2bvEwAAAAAUJFh2uuvv17brbM4O2djdt9992yWz8bst99+y70fAAAAAFpkN8933nknm7nz7rvvTgMHDmzupwcAAACAltMy7fDDD08PP/xwGjVqVBo6dGhzPz0AAAAAtJww7YYbbmjupwQAAACAlj1mGss3dZxWewBQaupboDWYPGZwqqmpKXcxANqMZh8zDQAAAABaKmEaAAAAAOQkTAMAAACAnIRpAAAAAJCTMA0AAAAAchKmAQAAAEBOwjQAAAAAyEmYBgAAAAA5CdMAAAAAICdhGgAAAADkJEwDAAAAgJyEaQAAAACQkzANAAAAAHISpgEAAABATsI0AAAAAMhJmAYAAAAAOQnTAAAAACAnYRoAAAAA5CRMAwAAAICchGkAAAAAkFN13g1pXkNG3VTuIkCLNHXc0HIXAWhB1Lel57wMpTf8tFtS+46dy10MaDbqFspNyzQAAAAAyEmYBgAAAAA5CdMAAAAAICdhGgAAAACUMkybM2dOOuGEE1Lfvn3TmmuumdZbb720yy67pMsvvzwtWLCgdrsHHnggffnLX05rrbVWtt0222yT/u///i8tXrx4mX1OmzYt7bbbbqlbt26pc+fOaYcddkgTJ05s8Pmvu+669MUvfjHbb6dOnVK/fv3S4Ycfnh599NFVORwAAAAAKE2Y9sILL6RPf/rT6fbbb09jxozJAqzp06enk08+OQvE7rjjjmy7G264IQvHNtxww3TXXXelp556Kgvgzj777HTQQQelQqFQu8+LL744DR06NAvkHnroofTYY49l23z7299O3/ve9+o9/ymnnJIOPPDAtN1226Wbb745Pf300+n3v/992myzzdLo0aNX9nAAAAAAILfqtJKOPfbYVF1dnR555JHUpUuX2vURZkUgFiHZ+++/n4488si07777pl/96le123zrW9/KWrHF+smTJ2eh2KxZs9KoUaPSiSeemIVzRbGuQ4cO6bvf/W464IAD0k477ZQefPDBdN5556Wf/exn2fqijTbaKG2//fb1AjoAAAAAKGvLtLfeeitrkXbcccfVC9LqqqqqyraJbZduVRaGDBmStthii3TNNddkt//whz+kjz/+uMFtjz766NS1a9fabeNn3I5Ar7HnBgAAAICKaJn23HPPZa2/Yoyyunr27Jk+/PDD7PcI2tZee+3s96222qrB/Wy55ZbpmWeeyX6Pn927d0+9e/deZrtomRYt3upuG7ejZVxRjMF2+umn195+9dVXs/0tbeHChdlSNH/+/JU5dABYLvUMAKWmrgFoRbN5zpgxI82cOTMNGDCg3sm9ObpdxsQD8dy//OUvs+6ljT3n2LFjs5CtuPTp06fkZQOg7VDPAFBq6hqAFhimxeyd0ZUyBv2vK1qLxX0xs2aIbpzhySefbHA/sb64TfycN29eeu2115bZ7qOPPkrPP/987babb755NgFCdAst6tGjR/bcG2ywwXLLHpMTxPMUlxirDQCainoGgFJT1wC0wDBtnXXWSXvuuWe65JJLslZgjdlrr72yrp7jxo1b5r6YgfPZZ59NI0aMyG4PGzYstW/fvsFtf/GLX2TPU9w2fr733nvpsssuSyurY8eOqaampt4CAE1FPQNAqalrAFrobJ4RZO2yyy7ps5/9bDrzzDPTpz71qbTGGmukhx9+OD311FPZrJoxOUF0uzzooIPSUUcdlb7zne9kJ/o777wzff/7309f+9rX0vDhw2tn4owZOmP2zjXXXDMdcsghWbh20003pdNOOy1bHzN5hs997nPZ7Vhefvnl9NWvfjVr2jx79ux0xRVXZK3moiwAAAAAUBFh2ic/+cn06KOPpjFjxmTNjF955ZXsG5L+/ftnM3IWZ9qMwOyuu+5KP/3pT9MXvvCFbIKC6Kb5gx/8IJ144on1Zt6M29FV9IILLkg/+9nP0uLFi7Px1y6//PJ02GGH1Xv+2GbHHXfM7hs/fnxasGBBWm+99dKuu+6apk+f7tsZAAAAAConTAsx8+bFF1+cLcsTIdptt92Wa5/77rtvtuQRrdqKLdsAAAAAoLnoEwkAAAAAOQnTAAAAACAnYRoAAAAA5CRMAwAAAIBSTkBA6U0dN7TcRQCAVk99C7QGk8cMTjU1NeUuBkCboWUaAAAAAOQkTAMAAACAnIRpAAAAAJCTMA0AAAAAchKmAQAAAEBOwjQAAAAAyEmYBgAAAAA5CdMAAAAAICdhGgAAAADk1ObCtEsvvTT1798/7bDDDuUuCgCtkHoGgFJT1wCUV1WhUCikNmj+/Pmpe/fuad68eammpqbcxQFo8ZxX6/N6ADQt59VleU0AynNObXMt0wAAAABgVQnTAAAAACAnYRoAAAAA5CRMAwAAAICchGkAAAAAkJMwDQAAAAByEqYBAAAAQE7CNAAAAADIqTrvhjSvIaNuWuXHTh03tEnLAgCtra4sUmcCrcHw025J7Tt2LncxoGKo3yk1LdMAAAAAICdhGgAAAADkJEwDAAAAgJyEaQAAAACQkzANAAAAAFpSmDZnzpx0wgknpL59+6Y111wzrbfeemmXXXZJl19+eVqwYEG2zSabbJKqqqrStddeu8zjBwwYkN03ceLEMpQeAAAAgLaiutwFeOGFF7LgrEePHmnMmDFpm222SR07dkyPP/54+tWvfpU22GCDtO+++2bb9unTJ02YMCEddNBBtY9/8MEHszCuS5cuZTwKAAAAANqCsodpxx57bKqurk6PPPJIvUBss802S0OHDk2FQqF23Te+8Y104YUXplmzZmXBWhg/fny2/qqrripL+QEAAABoO8razfOtt95Kt99+ezruuOMabVkW3TeLovvn3nvvna688srsdnQBnTRpUjr88MNX+FwLFy5M8+fPr7cAQFNRzwBQauoagMpQ1jDtueeey1qe9evXr976nj17pq5du2bLKaecUu++CM5ibLR43B/+8If0yU9+Mm233XYrfK6xY8em7t271y7Flm0A0BTUMwCUmroGoDJUxAQES5sxY0aaOXNmNrFAfPtS1+DBg9N7772X7r333qyLZ55WaWH06NFp3rx5tUt0FQWApqKeAaDU1DUAlaGsY6bF7J3RjfPpp5+utz7GSwudOnVa5jExvtohhxySzjjjjPTQQw+lG264IddzxaQGsQBAKahnACg1dQ1AZShry7R11lkn7bnnnumSSy5J77//fu7HRWu0e+65J5ugYK211ippGQEAAACgYmbzvOyyy9Iuu+ySPvvZz6YzzzwzfepTn0prrLFGevjhh9NTTz2Vtt9++2Ues9VWW6U333wzde7cuSxlBgAAAKBtKnuYFhMIPProo2nMmDHZGACvvPJK1nS5f//+6Xvf+1469thjG23VBgAAAABtKkwLvXv3ThdffHG2NOall15a7j7mzp1bgpIBAAAAQIXP5gkAAAAAlUiYBgAAAAA5CdMAAAAAoCWNmcaypo4bWu4iAEBFU1cC/D+TxwxONTU15S4GQJuhZRoAAAAA5CRMAwAAAICchGkAAAAAkJMwDQAAAAByEqYBAAAAQE7CNAAAAADISZgGAAAAADkJ0wAAAAAgJ2EaAAAAAOQkTAMAAACAnIRpAAAAAJCTMA0AAAAAchKmAQAAAEBOwjQAAAAAyEmYBgAAAAA5CdMAAAAAICdhGgAAAADkJEwDAAAAgJyEaQAAAACQkzANAAAAAHKqzrshzWvIqJtSWzF13NByFwGANqot1bewqnxWq3zDT7slte/YudzFgGbhnEQl0DINAAAAAHISpgEAAABATsI0AAAAAMhJmAYAAAAALTlMmzNnTjrhhBNS375905prrpnWW2+9tMsuu6TLL788LViwINtmk002SVVVVcss55xzTrmLDwAAAEArVXGzeb7wwgtZcNajR480ZsyYtM0226SOHTumxx9/PP3qV79KG2ywQdp3332zbc8666x05JFH1nt8t27dylRyAAAAAFq7igvTjj322FRdXZ0eeeSR1KVLl9r1m222WRo6dGgqFAr1grNevXqVqaQAAAAAtDUV1c3zrbfeSrfffns67rjj6gVpdUVXTgAAAABIbT1Me+6557KWZ/369au3vmfPnqlr167Zcsopp9Suj9+L64vLfffd1+C+Fy5cmObPn19vAYCmop4BoNTUNQCVoaLCtMbMmDEjzZw5Mw0YMCCrQIq+//3vZ+vrLp/97Gcb3MfYsWNT9+7da5c+ffo04xEA0NqpZwAoNXUNQGWoqDAtZu+MbpxPP/10vfUxXlrc16lTp2VarMX6usvS2xSNHj06zZs3r3aZNWtWSY8FgLZFPQNAqalrACpDRU1AsM4666Q999wzXXLJJen4449vdNy0VREzgsYCAKWgngGg1NQ1AJWholqmhcsuuywtWrQo6645adKk9OSTT2Yt1X73u9+lp556KrVr165223fffTfNmTOn3mLcAAAAAADaTJj2yU9+Mj366KNp4MCBWTPmbbfdNgvWLr744vS9730v/eQnP6nd9vTTT0+9e/eut5x88sllLT8AAAAArVdFdfMsilAswrNYGvPSSy81a5kAAAAAoOJapgEAAABApRKmAQAAAEBOwjQAAAAAyEmYBgAAAAAteQICUpo6bmi5iwAArZ76FmgNJo8ZnGpqaspdDIA2Q8s0AAAAAMhJmAYAAAAAOQnTAAAAACAnYRoAAAAA5CRMAwAAAICchGkAAAAAkJMwDQAAAAByEqYBAAAAQE7CNAAAAADISZgGAAAAADkJ0wAAAAAgJ2EaAAAAAOQkTAMAAACAnIRpAAAAAJCTMA0AAAAAchKmAQAAAEBOwjQAAAAAyEmYBgAAAAA5CdMAAAAAIKfqvBvSvIaMuqncRYCSmDpuaLmLAJC7vnXOAlqC4afdktp37FzuYgAl5DNJZdEyDQAAAAByEqYBAAAAQE7CNAAAAADISZgGAAAAADkJ0wAAAACgUsO0kSNHpqqqqtplnXXWSYMGDUqPPfZY7TZ176+urk4bbbRROumkk9LChQvTPffck9q3b5/uv//+evt9//3302abbZa+973vNfchAQAAANBGlKVlWoRns2fPzpY777wzC8y+8pWv1NtmwoQJ2f0vvvhiuuyyy9Jvf/vbdPbZZ6fddtstHX/88VkoFwFa0cknn5w6deqUbQMAAAAArSZM69ixY+rVq1e2bLfddunUU09Ns2bNSm+88UbtNj169Mju79OnTxa0DR06NP3973/P7hszZkzq0KFDOuWUU7Lbd911V/rNb36TrrrqqrTmmmuW45AAAAAAaAOqy12A9957L/3ud79Lffv2zbp8NuSZZ55Jf/nLX7LWaCECswjOdt5557TnnnumE088MZ122mlp++23b/R5ootoLEXz588vwdEA0FapZwAoNXUNQBtumTZt2rTUtWvXbOnWrVu6+eab06RJk9Iaa/y3OCNGjMjuj+CsX79+acCAAWn06NG193/2s5/Nbn/1q1/NQrgf/OAHy33OsWPHpu7du9cu0eINAJqKegaAUlPXALThMG2PPfZIM2fOzJYZM2akvffeO+2z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t956adiwYemFF16o3WaTTTZJF110USmKDwAAAADNF6ZdccUV6fjjj0/33ntveu211xrd5uSTT85CtQ8//LDBbZ5++uns8VOmTElPPPFEGjJkSFq8eHEpigwAAAAAzR+mvffee2nSpEnpmGOOyVqmTZw4cZltXnzxxfTAAw+kU089NW2xxRbp+uuvb3Bfn/jEJ1Lv3r3Trrvumk4//fT0r3/9Kz333HNNXWQAAAAAKE+YNnny5LTlllumfv36pYMPPjiNHz8+FQqFettMmDAhC9q6d++ebROt1FakU6dO2c+PPvpolcq1cOHCNH/+/HoLADQV9QwApaauAWilYVoEYxGQhUGDBqV58+ale+65p/b+JUuWZK3VitscdNBB6f77789aqzVm9uzZ6YILLkgbbLBBFtKtirFjx2bhXXHp06fPKu0HABqingGg1NQ1AK0wTIsxzmbMmJFGjBiR3a6urk4HHnhgvZZnf/7zn9P777+fvvzlL2e3e/bsmfbcc8+sBdvSNtxww9SlS5e0/vrrZ4+57rrrUocOHVapbKNHj86CveIya9asVT5OAFiaegaAUlPXAFSG6qbcWYRmixYtysKvouji2bFjx3TJJZdk357ENm+//XZtt81ia7XHHnss/fjHP05rrPHffO++++5LNTU12dhp3bp1W62yRRliAYBSUM8AUGrqGoBWFqZFiHbVVVelcePGpb322qveffvtt182a+cBBxyQbrrppnTttdemAQMG1N4fM3R+/vOfT7fffnvWNbRo0003TT169GiqIgIAAABAZYRp06ZNS++880464ogjshZodQ0bNixrkfbhhx+mddZZJw0fPjxVVVXV2ya6fcY2dcO0FXn11VfTzJkz663beOON01prrbWaRwMAAAAAJRwzLYKwgQMHLhOkFcO0Rx55JJ100klp//33XyZIK25z8803pzfffDP3c8akBJ/+9KfrLbfccstqHwsAAAAAlLRl2tSpUxu9b8cdd8zGTlueaK0WS9h9991XuP1LL720iiUFAAAAgAqYzRMAAAAAWjNhGgAAAADkJEwDAAAAgOYeM42mNXXc0HIXAQBaPfUt0BpMHjM41dTUlLsYAG2GlmkAAAAAkJMwDQAAAAByEqYBAAAAQE7CNAAAAADISZgGAAAAADkJ0wAAAAAgJ2EaAAAAAOQkTAMAAACAnKpTG1Uo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", "text/plain": [ "
" ] @@ -383,7 +429,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.12.4" + "version": "3.11.0" } }, "nbformat": 4, diff --git a/cookbook/2-Mean-Variance-Optimisation.ipynb b/cookbook/2-Mean-Variance-Optimisation.ipynb index 7aba6f28..abbe36bf 100644 --- a/cookbook/2-Mean-Variance-Optimisation.ipynb +++ b/cookbook/2-Mean-Variance-Optimisation.ipynb @@ -29,9 +29,9 @@ "\n", "Please consult the [docs](https://pyportfolioopt.readthedocs.io/) for more info.\n", "\n", - "## Downloading data\n", + "## Importing data\n", "\n", - "To download data, we will use `yfinance`, an excellent library that provides free price data from Yahoo Finance, no API key needed.\n", + "We will use `load_stockdata`, to import some example price data.\n", "\n", "[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/pyportfolio/pyportfolioopt/blob/master/cookbook/2-Mean-Variance-Optimisation.ipynb)\n", " \n", @@ -44,379 +44,158 @@ }, { "cell_type": "code", + "execution_count": 57, "metadata": { + "ExecuteTime": { + "end_time": "2025-11-12T08:10:54.267009Z", + "start_time": "2025-11-12T08:10:53.573242Z" + }, "colab": { "base_uri": "https://localhost:8080/" }, "id": "69vaYVwZ-Cxz", - "outputId": "dee1bf4a-82ee-4909-e26b-217899258cf2", - "ExecuteTime": { - "end_time": "2025-11-12T08:10:54.267009Z", - "start_time": "2025-11-12T08:10:53.573242Z" - } + "outputId": "dee1bf4a-82ee-4909-e26b-217899258cf2" }, - "source": [ - "!pip install pandas numpy matplotlib yfinance PyPortfolioOpt\n", - "import os\n", - "if not os.path.isdir('data'):\n", - " os.system('git clone https://github.com/pyportfolio/pyportfolioopt.git')\n", - " os.chdir('PyPortfolioOpt/cookbook')" - ], "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "Requirement already satisfied: pandas in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (2.3.3)\r\n", - "Requirement already satisfied: numpy in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (2.3.4)\r\n", - "Requirement already satisfied: matplotlib in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (3.10.7)\r\n", - "Requirement already satisfied: yfinance in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (0.2.66)\r\n", - "Requirement already satisfied: PyPortfolioOpt in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (1.5.6)\r\n", - "Requirement already satisfied: python-dateutil>=2.8.2 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from pandas) (2.9.0.post0)\r\n", - "Requirement already satisfied: pytz>=2020.1 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from pandas) (2025.2)\r\n", - "Requirement already satisfied: tzdata>=2022.7 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from pandas) (2025.2)\r\n", - "Requirement already satisfied: contourpy>=1.0.1 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from matplotlib) (1.3.3)\r\n", - "Requirement already satisfied: cycler>=0.10 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from matplotlib) (0.12.1)\r\n", - "Requirement already satisfied: fonttools>=4.22.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from matplotlib) (4.60.1)\r\n", - "Requirement already satisfied: kiwisolver>=1.3.1 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from matplotlib) (1.4.9)\r\n", - "Requirement already satisfied: packaging>=20.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from matplotlib) (25.0)\r\n", - "Requirement already satisfied: pillow>=8 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from matplotlib) (12.0.0)\r\n", - "Requirement already satisfied: pyparsing>=3 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from matplotlib) (3.2.5)\r\n", - "Requirement already satisfied: requests>=2.31 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from yfinance) (2.32.5)\r\n", - "Requirement already satisfied: multitasking>=0.0.7 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from yfinance) (0.0.12)\r\n", - "Requirement already satisfied: platformdirs>=2.0.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from yfinance) (4.5.0)\r\n", - "Requirement already satisfied: frozendict>=2.3.4 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from yfinance) (2.4.7)\r\n", - "Requirement already satisfied: peewee>=3.16.2 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from yfinance) (3.18.3)\r\n", - "Requirement already satisfied: beautifulsoup4>=4.11.1 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from yfinance) (4.14.2)\r\n", - "Requirement already satisfied: curl_cffi>=0.7 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from yfinance) (0.13.0)\r\n", - "Requirement already satisfied: protobuf>=3.19.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from yfinance) (6.33.0)\r\n", - "Requirement already satisfied: websockets>=13.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from yfinance) (15.0.1)\r\n", - "Requirement already satisfied: cvxpy>=1.1.19 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from PyPortfolioOpt) (1.7.3)\r\n", - "Requirement already satisfied: scikit-learn>=0.24.1 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from PyPortfolioOpt) (1.7.2)\r\n", - "Requirement already satisfied: scipy>=1.3.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from PyPortfolioOpt) (1.16.3)\r\n", - "Requirement already satisfied: soupsieve>1.2 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from beautifulsoup4>=4.11.1->yfinance) (2.8)\r\n", - "Requirement already satisfied: typing-extensions>=4.0.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from beautifulsoup4>=4.11.1->yfinance) (4.15.0)\r\n", - "Requirement already satisfied: cffi>=1.12.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from curl_cffi>=0.7->yfinance) (2.0.0)\r\n", - "Requirement already satisfied: certifi>=2024.2.2 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from curl_cffi>=0.7->yfinance) (2025.11.12)\r\n", - "Requirement already satisfied: osqp>=1.0.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from cvxpy>=1.1.19->PyPortfolioOpt) (1.0.5)\r\n", - "Requirement already satisfied: clarabel>=0.5.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from cvxpy>=1.1.19->PyPortfolioOpt) (0.11.1)\r\n", - "Requirement already satisfied: scs>=3.2.4.post1 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from cvxpy>=1.1.19->PyPortfolioOpt) (3.2.9)\r\n", - "Requirement already satisfied: six>=1.5 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from python-dateutil>=2.8.2->pandas) (1.17.0)\r\n", - "Requirement already satisfied: charset_normalizer<4,>=2 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from requests>=2.31->yfinance) (3.4.4)\r\n", - "Requirement already satisfied: idna<4,>=2.5 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from requests>=2.31->yfinance) (3.11)\r\n", - "Requirement already satisfied: urllib3<3,>=1.21.1 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from requests>=2.31->yfinance) (2.5.0)\r\n", - "Requirement already satisfied: joblib>=1.2.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from scikit-learn>=0.24.1->PyPortfolioOpt) (1.5.2)\r\n", - "Requirement already satisfied: threadpoolctl>=3.1.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from scikit-learn>=0.24.1->PyPortfolioOpt) (3.6.0)\r\n", - "Requirement already satisfied: pycparser in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from cffi>=1.12.0->curl_cffi>=0.7->yfinance) (2.23)\r\n", - "Requirement already satisfied: jinja2 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from osqp>=1.0.0->cvxpy>=1.1.19->PyPortfolioOpt) (3.1.6)\r\n", - "Requirement already satisfied: setuptools in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from osqp>=1.0.0->cvxpy>=1.1.19->PyPortfolioOpt) (80.9.0)\r\n", - "Requirement already satisfied: MarkupSafe>=2.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from jinja2->osqp>=1.0.0->cvxpy>=1.1.19->PyPortfolioOpt) (3.0.3)\r\n", - "\r\n", - "\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m A new release of pip is available: \u001B[0m\u001B[31;49m24.3.1\u001B[0m\u001B[39;49m -> \u001B[0m\u001B[32;49m25.3\u001B[0m\r\n", - "\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m To update, run: \u001B[0m\u001B[32;49mpip install --upgrade pip\u001B[0m\r\n" + "Requirement already satisfied: pandas in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (2.2.3)\n", + "Requirement already satisfied: numpy in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (2.4.2)\n", + "Requirement already satisfied: matplotlib in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (3.10.0)\n", + "Requirement already satisfied: PyPortfolioOpt in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (1.6.0)\n", + "Requirement already satisfied: python-dateutil>=2.8.2 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from pandas) (2.9.0.post0)\n", + "Requirement already satisfied: pytz>=2020.1 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from pandas) (2025.1)\n", + "Requirement already satisfied: tzdata>=2022.7 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from pandas) (2025.1)\n", + "Requirement already satisfied: contourpy>=1.0.1 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from matplotlib) (1.3.1)\n", + "Requirement already satisfied: cycler>=0.10 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from matplotlib) (0.12.1)\n", + "Requirement already satisfied: fonttools>=4.22.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from matplotlib) (4.56.0)\n", + "Requirement already satisfied: kiwisolver>=1.3.1 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from matplotlib) (1.4.8)\n", + "Requirement already satisfied: packaging>=20.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from matplotlib) (24.2)\n", + "Requirement already satisfied: pillow>=8 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from matplotlib) (11.1.0)\n", + "Requirement already satisfied: pyparsing>=2.3.1 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from matplotlib) (3.2.1)\n", + "Requirement already satisfied: cvxpy>=1.1.19 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from PyPortfolioOpt) (1.8.1)\n", + "Requirement already satisfied: scikit-base<0.14.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from PyPortfolioOpt) (0.13.1)\n", + "Requirement already satisfied: scikit-learn>=0.24.1 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from PyPortfolioOpt) (1.6.1)\n", + "Requirement already satisfied: scipy>=1.3.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from PyPortfolioOpt) (1.15.2)\n", + "Requirement already satisfied: osqp>=1.0.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from cvxpy>=1.1.19->PyPortfolioOpt) (1.1.1)\n", + "Requirement already satisfied: clarabel>=0.5.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from cvxpy>=1.1.19->PyPortfolioOpt) (0.11.1)\n", + "Requirement already satisfied: scs>=3.2.4.post1 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from cvxpy>=1.1.19->PyPortfolioOpt) (3.2.11)\n", + "Requirement already satisfied: highspy>=1.11.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from cvxpy>=1.1.19->PyPortfolioOpt) (1.13.1)\n", + "Requirement already satisfied: six>=1.5 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from python-dateutil>=2.8.2->pandas) (1.17.0)\n", + "Requirement already satisfied: joblib>=1.2.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from scikit-learn>=0.24.1->PyPortfolioOpt) (1.4.2)\n", + "Requirement already satisfied: threadpoolctl>=3.1.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from scikit-learn>=0.24.1->PyPortfolioOpt) (3.5.0)\n", + "Requirement already satisfied: cffi in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from clarabel>=0.5.0->cvxpy>=1.1.19->PyPortfolioOpt) (1.17.1)\n", + "Requirement already satisfied: jinja2 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from osqp>=1.0.0->cvxpy>=1.1.19->PyPortfolioOpt) (3.1.5)\n", + "Requirement already satisfied: setuptools in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from osqp>=1.0.0->cvxpy>=1.1.19->PyPortfolioOpt) (65.5.0)\n", + "Requirement already satisfied: pycparser in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from cffi->clarabel>=0.5.0->cvxpy>=1.1.19->PyPortfolioOpt) (2.22)\n", + "Requirement already satisfied: MarkupSafe>=2.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from jinja2->osqp>=1.0.0->cvxpy>=1.1.19->PyPortfolioOpt) (2.1.5)\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "[notice] A new release of pip available: 22.3 -> 26.0.1\n", + "[notice] To update, run: python.exe -m pip install --upgrade pip\n" ] } ], - "execution_count": 7 + "source": [ + "!pip install pandas numpy matplotlib PyPortfolioOpt\n", + "import os\n", + "if not os.path.isdir('data'):\n", + " os.system('git clone https://github.com/pyportfolio/pyportfolioopt.git')\n", + " os.chdir('PyPortfolioOpt/cookbook')" + ] }, { "cell_type": "code", + "execution_count": 58, "metadata": { - "id": "shuJGGeo9ny8", "ExecuteTime": { "end_time": "2025-11-12T08:10:54.280850Z", "start_time": "2025-11-12T08:10:54.278023Z" - } + }, + "id": "shuJGGeo9ny8" }, + "outputs": [], "source": [ - "import yfinance as yf\n", "import matplotlib.pyplot as plt\n", "import pandas as pd\n", - "import numpy as np" - ], - "outputs": [], - "execution_count": 8 + "import numpy as np\n", + "from pypfopt.data.data_loader import load_stockdata" + ] }, { "cell_type": "code", + "execution_count": 59, "metadata": { - "id": "c4r8LJdC9ny8", "ExecuteTime": { "end_time": "2025-11-12T08:10:54.304666Z", "start_time": "2025-11-12T08:10:54.301956Z" - } + }, + "id": "c4r8LJdC9ny8" }, + "outputs": [], "source": [ "tickers = [\"MSFT\", \"AMZN\", \"KO\", \"MA\", \"COST\", \n", " \"LUV\", \"XOM\", \"PFE\", \"JPM\", \"UNH\", \n", " \"ACN\", \"DIS\", \"GILD\", \"F\", \"TSLA\"] " - ], - "outputs": [], - "execution_count": 9 + ] }, { "cell_type": "code", + "execution_count": 60, "metadata": { - "colab": { - "base_uri": "https://localhost:8080/" - }, - "id": "XWdfXpB69ny9", - "outputId": "e60980bf-21e3-470f-a4f7-99da82c820a4", "ExecuteTime": { - "end_time": "2025-11-12T08:10:56.505627Z", - "start_time": "2025-11-12T08:10:54.345590Z" - } - }, - "source": "ohlc = yf.download(tickers, period=\"max\").loc[\"1990\":]", - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/var/folders/_3/k_9k5d5n5zz57w7qfll9rzs40000gn/T/ipykernel_59786/3860718606.py:1: FutureWarning: YF.download() has changed argument auto_adjust default to True\n", - " ohlc = yf.download(tickers, period=\"max\").loc[\"1990\":]\n", - "[*********************100%***********************] 15 of 15 completed\n" - ] - } - ], - "execution_count": 10 - }, - { - "cell_type": "code", - "metadata": { + "end_time": "2025-11-12T08:10:56.559652Z", + "start_time": "2025-11-12T08:10:56.550372Z" + }, "colab": { "base_uri": "https://localhost:8080/", "height": 388 }, "id": "S7voZG_T9ny-", - "outputId": "de26041a-af6d-4554-eb32-1eb9d57d5f3e", - "ExecuteTime": { - "end_time": "2025-11-12T08:10:56.559652Z", - "start_time": "2025-11-12T08:10:56.550372Z" - } + "outputId": "de26041a-af6d-4554-eb32-1eb9d57d5f3e" }, + "outputs": [], "source": [ - "prices = ohlc[\"Close\"].dropna(how=\"all\")\n", - "prices.tail()" - ], - "outputs": [ - { - "data": { - "text/plain": [ - "Ticker ACN AMZN COST DIS F \\\n", - "Date \n", - "2025-11-05 247.820007 250.199997 935.030029 111.360001 12.960114 \n", - "2025-11-06 241.339996 243.039993 923.580017 110.489998 12.969999 \n", - "2025-11-07 245.759995 244.410004 922.739990 110.739998 13.210000 \n", - "2025-11-10 244.550003 248.399994 915.559998 112.239998 13.160000 \n", - "2025-11-11 242.559998 249.100006 913.859985 114.849998 13.300000 \n", - "\n", - "Ticker GILD JPM KO LUV MA \\\n", - "Date \n", - "2025-11-05 122.580002 311.679993 68.510002 31.620001 553.309998 \n", - "2025-11-06 123.400002 313.420013 69.059998 31.510000 553.280029 \n", - "2025-11-07 118.839996 314.209991 70.550003 32.450001 551.969971 \n", - "2025-11-10 118.150002 316.890015 70.519997 32.660000 552.960022 \n", - "2025-11-11 122.559998 315.619995 71.610001 31.990000 558.349976 \n", - "\n", - "Ticker MSFT PFE TSLA UNH XOM \n", - "Date \n", - "2025-11-05 507.160004 24.184153 462.070007 327.739990 113.680000 \n", - "2025-11-06 497.100006 24.420000 445.910004 321.559998 114.500000 \n", - "2025-11-07 496.820007 24.430000 429.519989 324.209991 117.220001 \n", - "2025-11-10 506.000000 24.389999 445.230011 321.579987 118.220001 \n", - "2025-11-11 508.679993 25.510000 439.619995 327.450012 119.779999 " - ], - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
TickerACNAMZNCOSTDISFGILDJPMKOLUVMAMSFTPFETSLAUNHXOM
Date
2025-11-05247.820007250.199997935.030029111.36000112.960114122.580002311.67999368.51000231.620001553.309998507.16000424.184153462.070007327.739990113.680000
2025-11-06241.339996243.039993923.580017110.48999812.969999123.400002313.42001369.05999831.510000553.280029497.10000624.420000445.910004321.559998114.500000
2025-11-07245.759995244.410004922.739990110.73999813.210000118.839996314.20999170.55000332.450001551.969971496.82000724.430000429.519989324.209991117.220001
2025-11-10244.550003248.399994915.559998112.23999813.160000118.150002316.89001570.51999732.660000552.960022506.00000024.389999445.230011321.579987118.220001
2025-11-11242.559998249.100006913.859985114.84999813.300000122.559998315.61999571.61000131.990000558.349976508.67999325.510000439.619995327.450012119.779999
\n", - "
" - ] - }, - "execution_count": 11, - "metadata": {}, - "output_type": "execute_result" - } - ], - "execution_count": 11 + "prices = load_stockdata(tickers=tickers)" + ] }, { "cell_type": "code", + "execution_count": 61, "metadata": { + "ExecuteTime": { + "end_time": "2025-11-12T08:10:56.882552Z", + "start_time": "2025-11-12T08:10:56.617944Z" + }, "colab": { "base_uri": "https://localhost:8080/", "height": 563 }, "id": "-8Et4dlp9ny-", - "outputId": "e35cbcf6-f837-4a84-9946-b7a31d4b6901", - "ExecuteTime": { - "end_time": "2025-11-12T08:10:56.882552Z", - "start_time": "2025-11-12T08:10:56.617944Z" - } + "outputId": "e35cbcf6-f837-4a84-9946-b7a31d4b6901" }, - "source": [ - "prices[prices.index >= \"2008-01-01\"].plot(figsize=(15,10));" - ], "outputs": [ { "data": { + "image/png": "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", "text/plain": [ "
" - ], - "image/png": "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BEEQBEEQsohYJgiCIAiCIAiCIAiCIAhZRCwbRLjdbvzwhz9Uj0L+IO2an0i75i/StvmJtGt+Iu2av0jb5ifSrvmJtGv+4s5jjSJvE/wLgiAIgiAIgiAIgiAIwq4izjJBEARBEARBEARBEARByCJimSAIgiAIgiAIgiAIgiBkEbFMEARBEARBEARBEARBELKIWCYIgiAIgiAIgiAIgiAIWUQsEwRBEARBEARBEARBEIQsIpbtI7S0tKCzsxOGYajnuUdhcNPd3Y3eBWel+Gx+kEgk9vYqCHuItWvXqj+SyWRkP+cJq1evxs9//nOsXLlyb6+KsBtpbGxEfX094vG4ei59p/wh16ZCfiH31fxl48aNqKurU//XdX1vr46wG/tPDzzwADZv3rxf7lMRy/Yy6XQaV1xxBY4++micdNJJuPzyy9UFxmaTphns7fqNb3wDJ554Ik477TQ8+uij6nVN0/b2qgmfglQqheuuuw4XXHABLr74Yrz55puyP/OIV199FWPHjsWXvvQl9dzhcOztVRI+JbyffvOb38TkyZOxfPlyNTEl5M899rDDDsOpp56KL3zhC2oSQ/pO+dG2V155Jc4880x1n33vvfdkojFP+k/f/va38fWvfx3XX3891q1bt7dXSdiNPP300xg5ciSuvvpq9dxut8v+zQNh+8orr1T9p/fff19NTu2PiCKzF1mzZg0OOuggNdP929/+Voll7777Ln72s5/tzdUSPiV0CB533HFYsmQJrrnmGtXx+8EPfqA6B8Lg5V//+hfGjBmDDz/8EMcee6x6vPnmm/Hkk0/u7VUTdhO8FnPigoLKH//4R/WazIIPbu6++2589NFHeP311/GnP/0JRx55pHpdXL6DF85u8zzlbPff/vY3XHvttdi0aRO+853v7O1VEz4lHIwdcsghWLx4sRJB+cgJ5Vy/WJyDg5PHH39cCSkLFizA0KFD1QQy2/Wdd97Z26sm7CYopvDc5bU41y8Wd9nghmPXjz/+WBkD7rvvPsycOXO/7D+JWLYXeeGFFxAIBPDMM89g9uzZasZl+PDhKCgo2JurJXxKODBramrC73//e5x77rlKZPnud7+Le+65By+++KLs30EIw/Iefvhh5fycO3euEkFfeeUVuFwuNWATBje5Gz9DCMaNG4evfOUruO2229RMON1l+1vHIB9gm0WjUfzzn//E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" + ] }, "metadata": {}, - "output_type": "display_data", - "jetTransient": { - "display_id": null - } + "output_type": "display_data" } ], - "execution_count": 12 + "source": [ + "prices[prices.index >= \"2008-01-01\"].plot(figsize=(15,10));" + ] }, { "cell_type": "markdown", @@ -429,115 +208,54 @@ }, { "cell_type": "code", + "execution_count": 62, "metadata": { + "ExecuteTime": { + "end_time": "2025-11-12T08:10:57.706490Z", + "start_time": "2025-11-12T08:10:56.962206Z" + }, "colab": { "base_uri": "https://localhost:8080/", "height": 35 }, "id": "dTFkI4ll9ny-", - "outputId": "2a0c7a48-d357-4445-bdd1-44dbe901c17a", - "ExecuteTime": { - "end_time": "2025-11-12T08:10:57.706490Z", - "start_time": "2025-11-12T08:10:56.962206Z" - } + "outputId": "2a0c7a48-d357-4445-bdd1-44dbe901c17a" }, - "source": [ - "import pypfopt\n", - "pypfopt.__version__" - ], "outputs": [ { "data": { "text/plain": [ - "'1.5.6'" + "'1.6.0'" ] }, - "execution_count": 13, + "execution_count": 62, "metadata": {}, "output_type": "execute_result" } ], - "execution_count": 13 + "source": [ + "import pypfopt\n", + "pypfopt.__version__" + ] }, { "cell_type": "code", + "execution_count": 63, "metadata": { + "ExecuteTime": { + "end_time": "2025-11-12T08:10:57.740565Z", + "start_time": "2025-11-12T08:10:57.719628Z" + }, "colab": { "base_uri": "https://localhost:8080/", "height": 520 }, "id": "0hDN8ZJG9ny_", - "outputId": "35244fed-56ac-4207-ee84-736e924b1210", - "ExecuteTime": { - "end_time": "2025-11-12T08:10:57.740565Z", - "start_time": "2025-11-12T08:10:57.719628Z" - } + "outputId": "35244fed-56ac-4207-ee84-736e924b1210" }, - "source": [ - "from pypfopt import risk_models\n", - "from pypfopt import plotting\n", - "\n", - "sample_cov = risk_models.sample_cov(prices, frequency=252)\n", - "sample_cov" - ], "outputs": [ { "data": { - "text/plain": [ - "Ticker ACN AMZN COST DIS F GILD JPM \\\n", - "Ticker \n", - "ACN 0.087879 0.045211 0.027071 0.039502 0.042549 0.027293 0.044863 \n", - "AMZN 0.045211 0.307429 0.045653 0.054003 0.051213 0.052769 0.061962 \n", - "COST 0.027071 0.045653 0.092634 0.027938 0.029847 0.025282 0.035684 \n", - "DIS 0.039502 0.054003 0.027938 0.089013 0.042917 0.030226 0.049604 \n", - "F 0.042549 0.051213 0.029847 0.042917 0.150588 0.028601 0.059010 \n", - "GILD 0.027293 0.052769 0.025282 0.030226 0.028601 0.217525 0.039475 \n", - "JPM 0.044863 0.061962 0.035684 0.049604 0.059010 0.039475 0.133386 \n", - "KO 0.019031 0.018045 0.017898 0.021648 0.022414 0.016203 0.024977 \n", - "LUV 0.036189 0.046514 0.028906 0.041307 0.050190 0.029633 0.052660 \n", - "MA 0.043097 0.052424 0.030250 0.046985 0.056848 0.029258 0.062078 \n", - "MSFT 0.039949 0.070593 0.033754 0.037004 0.038372 0.032517 0.045667 \n", - "PFE 0.024414 0.028826 0.022277 0.024385 0.024299 0.031389 0.031981 \n", - "TSLA 0.042784 0.068915 0.030881 0.044845 0.059557 0.028156 0.042675 \n", - "UNH 0.028149 0.031414 0.023572 0.028374 0.028534 0.032010 0.037662 \n", - "XOM 0.027694 0.024803 0.017215 0.027860 0.030204 0.019950 0.034202 \n", - "\n", - "Ticker KO LUV MA MSFT PFE TSLA UNH \\\n", - "Ticker \n", - "ACN 0.019031 0.036189 0.043097 0.039949 0.024414 0.042784 0.028149 \n", - "AMZN 0.018045 0.046514 0.052424 0.070593 0.028826 0.068915 0.031414 \n", - "COST 0.017898 0.028906 0.030250 0.033754 0.022277 0.030881 0.023572 \n", - "DIS 0.021648 0.041307 0.046985 0.037004 0.024385 0.044845 0.028374 \n", - "F 0.022414 0.050190 0.056848 0.038372 0.024299 0.059557 0.028534 \n", - "GILD 0.016203 0.029633 0.029258 0.032517 0.031389 0.028156 0.032010 \n", - "JPM 0.024977 0.052660 0.062078 0.045667 0.031981 0.042675 0.037662 \n", - "KO 0.047342 0.019165 0.023770 0.020717 0.021349 0.014569 0.021770 \n", - "LUV 0.019165 0.137159 0.045174 0.033364 0.024131 0.047666 0.030239 \n", - "MA 0.023770 0.045174 0.105872 0.045315 0.028930 0.046905 0.037390 \n", - "MSFT 0.020717 0.033364 0.045315 0.098125 0.025940 0.052774 0.029705 \n", - "PFE 0.021349 0.024131 0.028930 0.025940 0.070425 0.017049 0.027943 \n", - "TSLA 0.014569 0.047666 0.046905 0.052774 0.017049 0.335304 0.026924 \n", - "UNH 0.021770 0.030239 0.037390 0.029705 0.027943 0.026924 0.130707 \n", - "XOM 0.019547 0.022862 0.037327 0.023631 0.021544 0.026332 0.022519 \n", - "\n", - "Ticker XOM \n", - "Ticker \n", - "ACN 0.027694 \n", - "AMZN 0.024803 \n", - "COST 0.017215 \n", - "DIS 0.027860 \n", - "F 0.030204 \n", - "GILD 0.019950 \n", - "JPM 0.034202 \n", - "KO 0.019547 \n", - "LUV 0.022862 \n", - "MA 0.037327 \n", - "MSFT 0.023631 \n", - "PFE 0.021544 \n", - "TSLA 0.026332 \n", - "UNH 0.022519 \n", - "XOM 0.061641 " - ], "text/html": [ "
\n", "\",\"\",\" plotly-logomark\",\" \",\" \",\" \",\" \",\" \",\" \",\" \",\" \",\" \",\" \",\" \",\" \",\" \",\"\"].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](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=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;ii.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&&ti.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=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=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;u0&&t[e+1][0]<0)return e;return null}switch(e=\"RUS\"===s||\"FJI\"===s?function(t){var e;if(null===c(t))e=t;else for(e=new Array(t.length),i=0;ie?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;r0?u.properties.ct=function(t){var e,r=t.geometry;if(\"MultiPolygon\"===r.type)for(var n=r.coordinates,i=0,s=0;si&&(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;n100?(clearInterval(a),n(\"Unexpected error while fetching from \"+t)):void i++}),50)}))}for(var o=0;o0&&(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;r1||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.xo?r.x-o:0,h=r.yl?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;h0?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;_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;il||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;nr?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=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=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;n0?e:0}))},h.fillArray=function(t,e,r,n){if(n=n||h.identity,h.isArrayOrTypedArray(t))for(var i=0;i1?i+o[1]:\"\";if(a&&(o.length>1||s.length>4||r))for(;n.test(s);)s=s.replace(n,\"$1\"+a+\"$2\");return s+l},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=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;n1&&(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;o2)return c[e]=2|c[e],f.set(t,null);if(h){for(o=e;o1){var e=[\"LOG:\"];for(t=0;t1){var r=[];for(t=0;t\"),\"long\")}},a.warn=function(){var t;if(n.logging>0){var e=[\"WARN:\"];for(t=0;t0){var r=[];for(t=0;t\"),\"stick\")}},a.error=function(){var t;if(n.logging>0){var e=[\"ERROR:\"];for(t=0;t0){var r=[];for(t=0;t\"),\"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;ne/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/g),l=0;la||c===i||cs||e&&l(t))}:function(t,e){var l=t[0],c=t[1];if(l===i||la||c===i||cs)return!1;var u,h,f,p,d,m=r.length,g=r[0][0],y=r[0][1],v=0;for(u=1;uMath.max(h,g)||c>Math.max(f,y)))if(cu||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;c1&&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-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;ni.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=t.undoQueue.queue.length)){for(e=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,r=0;re}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);f90&&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;i0&&(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;ia.length)&&(o=a.length),n(r)||(r=!1),i(a[0])){for(l=new Array(o),s=0;st.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 doesnt match end tag <\"+t+\">. Pretending it did match.\",e),r=l[l.length-1].node}else i.log(\"Ignoring unexpected end tag .\",e)}_.test(e)?u():(r=t,l=[{node:t}]);for(var E=e.split(v),I=0;I|>|>)/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,_=//i;e.BR_TAG_ALL=//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;l3?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;oa.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;s0&&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;r3?(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;r0)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;n1&&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;xC.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;_=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=P);x++)O.push(b);for(x=P;x=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-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;n0&&\"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;n1;)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=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;p0&&ww)&&k.push(d);y=k}}y.length>0?function(e){if(0!==e.length){for(var i=0;i=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=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=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=0&&r=0&&r=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=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=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=t[1]||i[1]<=t[0])&&a[0]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.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)&&lT?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;fx.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;Mx[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;M1&&f.push(p(\"object\",\"layout\"))),i.supplyDefaults(d);for(var m=d._fullData,g=r.length,y=0;y0&&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;r0&&((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;a0?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;n0&&(f=a),a>p&&a-o&&(f=a),a>p&&a=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=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)=e}function T(t,e,r){return void 0===e||void 0===r||(e=t.d2l(e))=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;un&&f2e-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.3*f||u(n)||u(a))){var p=r.dtick/2;t+=t+p.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.dtickt.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]=(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=X:nt<=X;nt=Z.tickIncrement(nt,it,m,c)){if(q&&tt++,G.rangebreaks&&!m){if(nt=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&&r0?(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:vtD||nD&&(r.periodX=D),n10||\"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]=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 \")}else t._prevDateHead=l,c+=\"
\"+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\"+(h>1?\"\":z)+f+\"\",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=[\"\",o[0],\"\",\"⁄\",\"\",o[1],\"\",\"π\"].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))\"+p+\"\":\"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;i1&&r=i.min&&t=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=o(i)))){r=n;break}break;case\"log\":for(e=0;e=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;n0?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=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.leftp||a.top+(e.tickangle?0:t.fontSize/4)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))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])1)for(n=1;n2*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;u2*i}(i,g)?\"category\":function(t,e){for(var r=t.length,n=0;n=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])return void(e.enabled=!1)}else if(o[0]>f[0]&&o[1]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;nn?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;oc*x)||T)for(r=0;rz&&FI&&(I=F);f/=(I-L)/(2*P),L=l.l2r(L),I=l.l2r(I),l.range=l._input.range=S=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=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||o0){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;u1&&(void 0!==a.maxallowed&&st===(a.range[0]1&&(void 0!==o.maxallowed&<===(o.range[0]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;o0){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;x1&&(w+=d+b),_.push(n+w),r=0;r_[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;lu)){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;it._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;il[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;su&&(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;si&&(i+=7,oi&&(i+=24,o=n&&o=n&&e=s.min&&(ts.max&&(s.max=n),i=!1)}i&&c.push({min:t,max:n})}};for(n=0;nr.duration?(function(){for(var r={},n=0;n rect\").call(o.setTranslate,0,0).call(o.setScale,1,1),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;n0&&(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;r0?\".\":\"\")+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;h0&&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;u0&&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;pu*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-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;s0&&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=[];++ed?(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;nMath.abs(s)?(c.boxEnd[1]=c.boxStart[1]+Math.abs(a)*b*(s>=0?1:-1),c.boxEnd[1]l[3]&&(c.boxEnd[1]=l[3],c.boxEnd[0]=c.boxStart[0]+(l[3]-c.boxStart[1])/Math.abs(b))):(c.boxEnd[0]=c.boxStart[0]+Math.abs(s)/b*(a>=0?1:-1),c.boxEnd[0]l[2]&&(c.boxEnd[0]=l[2],c.boxEnd[1]=c.boxStart[1]+(l[2]-c.boxStart[0])*Math.abs(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).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/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;ar.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\")):\"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(\"
\")):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;dy[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;n0)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;aOpenStreetMap 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;ax/2){var _=m.split(\"|\").join(\"
\");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;n0){for(var r=0;r0}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;r1)for(r=0;r-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;eOpenStreetMap contributors',o=['© Carto',a].join(\" \"),s=['Map tiles by Stamen Design','under CC BY 3.0',\"|\",'Data by OpenStreetMap contributors','under ODbL'].join(\" \"),l={\"open-street-map\":{id:\"osm\",version:8,sources:{\"plotly-osm-tiles\":{type:\"raster\",attribution:a,tiles:[\"https://a.tile.openstreetmap.org/{z}/{x}/{y}.png\",\"https://b.tile.openstreetmap.org/{z}/{x}/{y}.png\"],tileSize:256}},layers:[{id:\"plotly-osm-tiles\",type:\"raster\",source:\"plotly-osm-tiles\",minzoom:0,maxzoom:22}],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 Stamen Design','under CC BY 3.0',\"|\",'Data by OpenStreetMap contributors','under CC BY SA'].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;l1&&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;lw/2){var T=v.split(\"|\").join(\"
\");_.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;n0){for(var r=0;r0}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;r1)for(r=0;r-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=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;a1&&O.length>1){for(l.getComponentMethod(\"grid\",\"sizeDefaults\")(c,s),o=0;o15&&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;i0){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;n1,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;a1&&(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._redrawFromAutoMarginCount0&&(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;r1)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=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;i1e-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;a0?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=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]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),tp?(t-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&&f0==(r?D>C:Dn?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;i0?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,\"+(00){for(var n=[],i=0;i=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;aE*_?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.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-1&&(h[p[r]].title={text:\"\"});for(r=0;r\")?\"\":e.html(t).text()}));return e.remove(),r}(w)).replace(/&(?!\\w+;|\\#[0-9]+;| \\#x[0-9A-F]+;)/g,\"&\")).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;rh+c||!n(u))}for(var p=0;p=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;oa))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)?e0?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;d0)-(t<0)}function A(t,e){return t0}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)&&yb){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))))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)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(\"
\")}(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]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;n1||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 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;yf.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;l0?(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;pE.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.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=0&&it0){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;r0?(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;s1,_=1-h[t+\"gap\"],b=1-h[t+\"groupgap\"];for(s=0;s0){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;l0?(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;ot.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=10)return null;for(var r=1/0,a=-1/0,o=t.length,s=0;s0?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=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;i0&&(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;a0&&(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;ix.length-1||b.push(i(O(o),{color:_.gridcolor,width:_.gridwidth,dash:_.griddash}));for(f=u;fx.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[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;fx[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;re.length&&(t=t.slice(0,e.length)):t=[],i=0;i90&&(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;h90&&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&&tm&&ed||eg},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&&(ne[c-1]|ir[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=[];ne[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)))),ir[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),e0&&void 0!==(n=t[r-1][e])&&(a++,i+=n),r0&&a0&&i1e-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\")}}(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=0;n--){var i=r[n].id;if(\"string\"==typeof i&&0===i.indexOf(\"water\"))for(var a=n+1;a=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=0;n--){var i=r[n].id;if(\"string\"==typeof i&&0===i.indexOf(\"water\"))for(var a=n+1;a=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;co.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\":p>c&&(n.prefixBoundary=!0);break;case\"<\":(pc||n.starts.length&&f===u)&&(n.prefixBoundary=!0);break;case\"][\":h=Math.min(p[0],p[1]),f=Math.max(p[0],p[1]),hc&&(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;r1e3){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])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=B;c--)if((x=F[c])=B&&x+F[_]M&&S--,t.edgepaths[S]=C.concat(p,E));break}V||(t.edgepaths[M]=p.concat(E))}for(M=0;M=v)&&(r<=y&&(r=y),o>=v&&(o=v),l=Math.floor((o-r)/s)+1,c=0),f=0;fy&&(m.unshift(y),g.unshift(g[0])),m[m.length-1]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=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;fn.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;_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;ur.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=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=0&&(f=C,d=m):Math.abs(h[1]-f[1])=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;um&&(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)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=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;h0?+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=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\"),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 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-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;n1){var e=(t[t.length-1]-t[0])/(t.length-1),r=Math.abs(e/100);for(k=0;kr)return!1}return!0}(M.rangebreaks||S.rangebreaks)&&(T=function(t,e,r){for(var n=[],i=-1,a=0;a=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;Em&&(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.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;u0;)k=A.c2p(N[L]),L--;for(k0;)C=M.c2p(j[L]),L--;C=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;LXt||Xt>M._length))for(I=Gt;IJt||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(\"
\"),ne=re.length,ie=0;for(P=0;P0&&(a=!0);for(var l=0;la){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]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&&yo){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(cr.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=0&&d=0;n--)s(n);else if(\"increasing\"===e){for(n=1;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=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;mS&&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=0&&p=0&&d-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;h0||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&&_0;)g=h.c2p(w+_*M),_--;for(_=0;void 0===v&&_0;)x=f.c2p(T+_*S),_--;gz[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;_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;l0;r--){var n=Math.min(e[r],e[r-1]),i=Math.max(e[r],e[r-1]);if(i>n&&n-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-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];in&&(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):aMath.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;i0&&(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=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;oy):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\"+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(\"
\"),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=t.length)return!1;if(void 0!==e[t[r]])return!1;e[t[r]]=!0}return!0}(r))for(e=0;e0||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\"),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;n1&&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(\"
\");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(\"
\"),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.yh.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.dragXp.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=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)),ni?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;m0?d*(y.count/p):0;for(var v,x=new Array(n.length),_=0;_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;c0?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[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*he){f=r;break}}if(a=u,isNaN(a)&&(a=isNaN(h)||isNaN(f)?isNaN(h)?f:h:e-c[h][1]t[1]+r||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=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]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;rh&&(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>>8*e)%256/255}function m(t,e,r){for(var n=new Array(8*e),i=0,a=0;ac&&(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&&ns._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=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=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;u0){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\"),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;ie&&e>n||r=-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=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;er&&(r=t.pull[e]);return r}function z(t,e){for(var r=[],n=0;n1?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\")}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;ei.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=(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;pMath.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;ld[2]&&(d[2]=i),sd[3]&&(d[3]=s);if(p)r=p;else for(r=new Int32Array(e),l=0;ld[2]&&(d[2]=i),sd[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;rx&&(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;e0&&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;eb-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;o1}))}(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\"),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\"),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()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=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;e0&&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;o0)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;el&&L[y].gap;)y--;for(x=L[y].s,m=L.length-1;m>y;m--)L[m].s=x;for(;lS[h]&&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=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=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 ar!=(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&&cot||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]ot?ot:0,K=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;rX(m,yt))break;o=m,(w=v[0]*y[0]+v[1]*y[1])>_?(_=w,p=m,g=!1):w=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=0?l=p:(l=p=f,f++),l0?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&&r0;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;g0,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;r0){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-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=0){var E=function(t,e,r){var n,i=(r+1)%3,a=(r+2)%3,o=[],l=[];for(n=0;n=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\")}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\")}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=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;r1&&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;r500?\"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;rm.TOO_MANY_POINTS||f.hasMarkers(e)?\"rect\":\"round\";if(c&&e.connectgaps){var h=n[0],p=n[1];for(i=0;i1?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 _=x100},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=Math.min(P,z)&&w<=Math.max(P,z)?0:1/0}if(h=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))v.glText.length){var T=b-v.glText.length;for(m=0;mr&&(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;hh&&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;hh&&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-1;for(m=0;m850?\" 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\")}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=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=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;r850?\" 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\")}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=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=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\")}}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=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\")}}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\"),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;cf?_.sizeAvg||Math.max(_.size,3):a(e,x),p=0;pa&&l||i-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;l1&&(u=m[v-1],f=g[v-1],d=y[v-1]),e=0;eu?\"-\":\"+\")+\"x\")).replace(\"y\",(h>f?\"-\":\"+\")+\"y\")).replace(\"z\",(p>d?\"-\":\"+\")+\"z\");var C=function(){v=0,M=[],S=[],E=[]};(!v||v2?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=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;E1){for(var P=a.randstr(),z=0;z=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\"),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;a0)},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.rpx1X?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(\"
\")}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(t0){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;ab;)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;f0&&null!==this.contourStart[t]&&null!==this.contourEnd[t]&&this.contourEnd[t]>this.contourStart[t]))for(i[t]=!0,e=this.contourStart[t];ea&&(this.minValues[e]=a),this.maxValues[e]\",maxDimensionCount:60,overdrag:45,releaseTransitionDuration:120,releaseTransitionEase:\"cubic-out\",scrollbarCaptureWidth:18,scrollbarHideDelay:1e3,scrollbarHideDuration:1e3,scrollbarOffset:5,scrollbarWidth:8,transitionDuration:100,transitionEase:\"cubic-out\",uplift:5,wrapSpacer:\" \",wrapSplitCharacter:\" \",cn:{table:\"table\",tableControlView:\"table-control-view\",scrollBackground:\"scroll-background\",yColumn:\"y-column\",columnBlock:\"column-block\",scrollAreaClip:\"scroll-area-clip\",scrollAreaClipRect:\"scroll-area-clip-rect\",columnBoundary:\"column-boundary\",columnBoundaryClippath:\"column-boundary-clippath\",columnBoundaryRect:\"column-boundary-rect\",columnCells:\"column-cells\",columnCell:\"column-cell\",cellRect:\"cell-rect\",cellText:\"cell-text\",cellTextHolder:\"cell-text-holder\",scrollbarKit:\"scrollbar-kit\",scrollbar:\"scrollbar\",scrollbarSlider:\"scrollbar-slider\",scrollbarGlyph:\"scrollbar-glyph\",scrollbarCaptureZone:\"scrollbar-capture-zone\"}}},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=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/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(/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\",\"<\",\"|\",\"/\",\"\\\\\"],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(\"
\").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(\"
\");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-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\"===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;b0){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\")),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;s0&&(g+=f?\"M\"+h[0]+\",\"+d[1]+\"V\"+d[0]:\"M\"+h[1]+\",\"+d[0]+\"H\"+h[0]),\"between\"!==p&&(r.isSum||s 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;ii&&(i=u,o=c)}}return i?a(o):s};case\"rms\":return function(t,e){for(var r=0,i=0,o=0;o\":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[0]&&eh[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 eh[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[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;T1?\"%{group} (%{trace})\":\"%{group}\");var l=t.styles,c=o.styles=[];if(l)for(a=0;af)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=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;as&&(r=s-l),a=r;a>=0;a--){for(var h=!0,f=0;fi&&(n=i):n=i;var a,o=e.length;for(n>o/2&&(n=o/2),a=0;a>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;i239?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;nn.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;er&&(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>>=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;in)&&(r=n);for(var i=\"\",a=e;ar)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||et.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>>=0,e>>>=0,r||B(t,e,this.length);for(var n=this[t],i=1,a=0;++a>>=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)<>>=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)<>>=0,e>>>=0,r||B(t,e,this.length);for(var n=this[t],i=1,a=0;++a=(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)<>>=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)<>>=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>>=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>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=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>>=0,r=void 0===r?this.length:r>>>0,t||(t=0),\"number\"==typeof t)for(a=e;a=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||t3?0===e||e===BigInt(0)?\">= 0\".concat(s,\" and < 2\").concat(s,\" ** \").concat(8*(a+1)).concat(s):\">= -(2\".concat(s,\" ** \").concat(8*(a+1)-1).concat(s,\") and < 2 ** \")+\"\".concat(8*(a+1)-1).concat(s):\">= \".concat(e).concat(s,\" and <= \").concat(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;o55295&&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=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;r0?o-4:o;for(r=0;r>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;sc?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>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;a20?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)&-(t65535)<<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<>>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=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=0;i-=3)o=t[i]|t[i-1]<<8|t[i-2]<<16,this.words[a]|=o<>>26-s&67108863,(s+=24)>=26&&(s-=26,a++);else if(\"le\"===r)for(i=0,a=0;i>>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=e;n-=2)i=l(t,e,n)<=18?(a-=18,o+=1,this.words[o]|=i>>>26):a+=8;else for(n=(t.length-e)%2==0?e+1:e;n=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;u1&&0===this.words[this.length-1];)this.length--;return this._normSign()},a.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},a.prototype.inspect=function(){return(this.red?\"\"};var u=[\"\",\"0\",\"00\",\"000\",\"0000\",\"00000\",\"000000\",\"0000000\",\"00000000\",\"000000000\",\"0000000000\",\"00000000000\",\"000000000000\",\"0000000000000\",\"00000000000000\",\"000000000000000\",\"0000000000000000\",\"00000000000000000\",\"000000000000000000\",\"0000000000000000000\",\"00000000000000000000\",\"000000000000000000000\",\"0000000000000000000000\",\"00000000000000000000000\",\"000000000000000000000000\",\"0000000000000000000000000\"],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>>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>>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=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;et.length?this.clone().ior(t):t.clone().ior(this)},a.prototype.uor=function(t){return this.length>t.length?this.clone().iuor(t):t.clone().iuor(this)},a.prototype.iuand=function(t){var e;e=this.length>t.length?t:this;for(var r=0;rt.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;nt.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;i0&&(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<t.length?(r=this,n=t):(r=t,n=this);for(var i=0,a=0;a>>26;for(;0!==i&&a>>26;if(this.length=r.length,0!==i)this.words[this.length]=i,this.length++;else if(r!==this)for(;at.length?this.clone().iadd(t):t.clone().iadd(this)},a.prototype.isub=function(t){if(0!==t.negative){t.negative=0;var e=this.iadd(t);return t.negative=1,e._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(t),this.negative=1,this._normSign();var 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>26,this.words[o]=67108863&e;for(;0!==a&&o>26,this.words[o]=67108863&e;if(0===a&&o>>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>>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>=1;return n},g.prototype.permute=function(t,e,r,n,i,a){for(var o=0;o>>=1)i++;return 1<>>=13,r[2*o+1]=8191&a,a>>>=13;for(o=2*e;o>=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>>i}return e}(t);if(0===e.length)return new a(1);for(var r=this,n=0;n=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>>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=0),i=e?(e-e%26)/26:0;var a=t%26,o=Math.min((t-a)/26,this.length),s=67108863^67108863>>>a<o)for(this.length-=o,c=0;c=0&&(0!==u||c>=i);c--){var 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<=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<=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>26)-(l/67108864|0),this.words[i+r]=67108863&a}for(;i>26,this.words[i+r]=67108863&a;if(0===s)return this.strip();for(n(-1===s),s=0,i=0;i>26,this.words[i]=67108863&a;return this.negative=1,this.strip()},a.prototype._wordDiv=function(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=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<>>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:it.length)return 1;if(this.length=0;r--){var n=0|this.words[r],i=0|t.words[r];if(n!==i){ni&&(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=e0?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>>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>>=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=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>>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;fc-l?n?function(t,e,r,n,i,a,o,s,l,c,u){for(var h=2*t,f=n,p=h*n;f0;){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)=p0)&&!(p1>=hi)\"),m=u(\"lo===p0\"),g=u(\"lo>>1,f=2*t,p=h,d=s[f*h+e];c=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;kr&&i[h+e]>c;--u,h-=o){for(var f=h,p=h+o,d=0;df;++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},\"lof;++f,l+=s)if(i[l+h]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},\"lop;++p,l+=s){var d=i[l+h],m=i[l+f];if(dg;++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(cr[e+1])}function l(t,e,r,n){var i=n[t*=2];return i>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>>1;a(d,S);var E=0,C=0;for(T=0;T=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>>1;a(d,E);var C=0,L=0,I=0;for(k=0;k>1==d[2*k+3]>>1&&(z=2,k+=1),P<0){for(var O=-(P>>1)-1,D=0;D>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>>1;a(d,C);var L=0;for(A=0;A=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>>1;a(d,T);var k=0;for(x=0;x=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=0;--L)if(l[L]===_){for(O=L+1;O0;){for(var p=r.pop(),d=(u=-1,h=-1,l=o[s=r.pop()],1);d=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;i0||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;i1&&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]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=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;ne[2]?1:0)}function y(t,e,r){if(0!==t.length){if(e)for(var n=0;n=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;m0||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;_t[r][0]&&(r=n);return er?[[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=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=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>>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;a0)return function(t,e){var r,n;for(r=new Array(t),n=0;n=r-1){f=l.length-1;var d=t-e[r-1];for(p=0;p=r-1)for(var u=s.length-1,h=(e[r-1],0);h=0;--r)if(t[--e])return!1;return!0},s.jump=function(t){var e=this.lastT(),r=this.dimension;if(!(t0;--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(!(t1e-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(!(t0;--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=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.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 te?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=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+11&&((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+10)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<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]E&&(w|=1<E&&(w|=1<c[x][1])&&(R=x);var F=-1;for(x=0;x<3;++x)(N=R^1<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< 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=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=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=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;nr)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=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;xo&&(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=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;g0){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;a0&&((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;au||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;d1&&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;yi||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>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+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 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;e0){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;e1.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;rt&&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;l0&&((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;ai[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],ki[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=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=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;rMath.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;n0&&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;tx.distance)continue;for(var c=0;c 1.0) {\\n discard;\\n }\\n baseColor = mix(borderColor, color, step(radius, centerFraction));\\n gl_FragColor = vec4(baseColor.rgb * baseColor.a, baseColor.a);\\n }\\n}\\n\"]),e.pickVertex=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>>1;for(r=0;r=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+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 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=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;n0){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;n0?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]),!(p0){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;ar)for(t=r;te)for(t=e;t=0){for(var T=0|w.type.charAt(w.type.length-1),k=new Array(T),A=0;A=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=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;u4)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;r1){s[0]in a||(a[s[0]]=[]),a=a[s[0]];for(var l=1;l1)for(var l=0;l 0 U ||b|| > 0.\\n // Assign z = 0, x = -b, y = a:\\n // a*-b + b*a + c*0 = -ba + ba + 0 = 0\\n if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {\\n return normalize(vec3(-v.y, v.x, 0.0));\\n } else {\\n return normalize(vec3(0.0, v.z, -v.y));\\n }\\n}\\n\\n// Calculate the tube vertex and normal at the given index.\\n//\\n// The returned vertex is for a tube ring with its center at origin, radius of length(d), pointing in the direction of d.\\n//\\n// Each tube segment is made up of a ring of vertices.\\n// These vertices are used to make up the triangles of the tube by connecting them together in the vertex array.\\n// The indexes of tube segments run from 0 to 8.\\n//\\nvec3 getTubePosition(vec3 d, float index, out vec3 normal) {\\n float segmentCount = 8.0;\\n\\n float angle = 2.0 * 3.14159 * (index / segmentCount);\\n\\n vec3 u = getOrthogonalVector(d);\\n vec3 v = normalize(cross(u, d));\\n\\n vec3 x = u * cos(angle) * length(d);\\n vec3 y = v * sin(angle) * length(d);\\n vec3 v3 = x + y;\\n\\n normal = normalize(v3);\\n\\n return v3;\\n}\\n\\nattribute vec4 vector;\\nattribute vec4 color, position;\\nattribute vec2 uv;\\n\\nuniform float vectorScale, tubeScale;\\nuniform mat4 model, view, projection, inverseModel;\\nuniform vec3 eyePosition, lightPosition;\\n\\nvarying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;\\nvarying vec4 f_color;\\nvarying vec2 f_uv;\\n\\nvoid main() {\\n // Scale the vector magnitude to stay constant with\\n // model & view changes.\\n vec3 normal;\\n vec3 XYZ = getTubePosition(mat3(model) * (tubeScale * vector.w * normalize(vector.xyz)), position.w, normal);\\n vec4 tubePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);\\n\\n //Lighting geometry parameters\\n vec4 cameraCoordinate = view * tubePosition;\\n cameraCoordinate.xyz /= cameraCoordinate.w;\\n f_lightDirection = lightPosition - cameraCoordinate.xyz;\\n f_eyeDirection = eyePosition - cameraCoordinate.xyz;\\n f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz);\\n\\n // vec4 m_position = model * vec4(tubePosition, 1.0);\\n vec4 t_position = view * tubePosition;\\n gl_Position = projection * t_position;\\n\\n f_color = color;\\n f_data = tubePosition.xyz;\\n f_position = position.xyz;\\n f_uv = uv;\\n}\\n\"]),a=n([\"#extension GL_OES_standard_derivatives : enable\\n\\nprecision highp float;\\n#define GLSLIFY 1\\n\\nfloat beckmannDistribution(float x, float roughness) {\\n float NdotH = max(x, 0.0001);\\n float cos2Alpha = NdotH * NdotH;\\n float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;\\n float roughness2 = roughness * roughness;\\n float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;\\n return exp(tan2Alpha / roughness2) / denom;\\n}\\n\\nfloat cookTorranceSpecular(\\n vec3 lightDirection,\\n vec3 viewDirection,\\n vec3 surfaceNormal,\\n float roughness,\\n float fresnel) {\\n\\n float VdotN = max(dot(viewDirection, surfaceNormal), 0.0);\\n float LdotN = max(dot(lightDirection, surfaceNormal), 0.0);\\n\\n //Half angle vector\\n vec3 H = normalize(lightDirection + viewDirection);\\n\\n //Geometric term\\n float NdotH = max(dot(surfaceNormal, H), 0.0);\\n float VdotH = max(dot(viewDirection, H), 0.000001);\\n float LdotH = max(dot(lightDirection, H), 0.000001);\\n float G1 = (2.0 * NdotH * VdotN) / VdotH;\\n float G2 = (2.0 * NdotH * LdotN) / LdotH;\\n float G = min(1.0, min(G1, G2));\\n \\n //Distribution term\\n float D = beckmannDistribution(NdotH, roughness);\\n\\n //Fresnel term\\n float F = pow(1.0 - VdotN, fresnel);\\n\\n //Multiply terms and done\\n return G * F * D / max(3.14159265 * VdotN, 0.000001);\\n}\\n\\nbool outOfRange(float a, float b, float p) {\\n return ((p > max(a, b)) || \\n (p < min(a, b)));\\n}\\n\\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\\n return (outOfRange(a.x, b.x, p.x) ||\\n outOfRange(a.y, b.y, p.y));\\n}\\n\\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\\n return (outOfRange(a.x, b.x, p.x) ||\\n outOfRange(a.y, b.y, p.y) ||\\n outOfRange(a.z, b.z, p.z));\\n}\\n\\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\\n return outOfRange(a.xyz, b.xyz, p.xyz);\\n}\\n\\nuniform vec3 clipBounds[2];\\nuniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity;\\nuniform sampler2D texture;\\n\\nvarying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;\\nvarying vec4 f_color;\\nvarying vec2 f_uv;\\n\\nvoid main() {\\n if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;\\n vec3 N = normalize(f_normal);\\n vec3 L = normalize(f_lightDirection);\\n vec3 V = normalize(f_eyeDirection);\\n\\n if(gl_FrontFacing) {\\n N = -N;\\n }\\n\\n float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel)));\\n float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);\\n\\n vec4 surfaceColor = f_color * texture2D(texture, f_uv);\\n vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0);\\n\\n gl_FragColor = litColor * opacity;\\n}\\n\"]),o=n([\"precision highp float;\\n\\nprecision highp float;\\n#define GLSLIFY 1\\n\\nvec3 getOrthogonalVector(vec3 v) {\\n // Return up-vector for only-z vector.\\n // Return ax + by + cz = 0, a point that lies on the plane that has v as a normal and that isn't (0,0,0).\\n // From the above if-statement we have ||a|| > 0 U ||b|| > 0.\\n // Assign z = 0, x = -b, y = a:\\n // a*-b + b*a + c*0 = -ba + ba + 0 = 0\\n if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {\\n return normalize(vec3(-v.y, v.x, 0.0));\\n } else {\\n return normalize(vec3(0.0, v.z, -v.y));\\n }\\n}\\n\\n// Calculate the tube vertex and normal at the given index.\\n//\\n// The returned vertex is for a tube ring with its center at origin, radius of length(d), pointing in the direction of d.\\n//\\n// Each tube segment is made up of a ring of vertices.\\n// These vertices are used to make up the triangles of the tube by connecting them together in the vertex array.\\n// The indexes of tube segments run from 0 to 8.\\n//\\nvec3 getTubePosition(vec3 d, float index, out vec3 normal) {\\n float segmentCount = 8.0;\\n\\n float angle = 2.0 * 3.14159 * (index / segmentCount);\\n\\n vec3 u = getOrthogonalVector(d);\\n vec3 v = normalize(cross(u, d));\\n\\n vec3 x = u * cos(angle) * length(d);\\n vec3 y = v * sin(angle) * length(d);\\n vec3 v3 = x + y;\\n\\n normal = normalize(v3);\\n\\n return v3;\\n}\\n\\nattribute vec4 vector;\\nattribute vec4 position;\\nattribute vec4 id;\\n\\nuniform mat4 model, view, projection;\\nuniform float tubeScale;\\n\\nvarying vec3 f_position;\\nvarying vec4 f_id;\\n\\nvoid main() {\\n vec3 normal;\\n vec3 XYZ = getTubePosition(mat3(model) * (tubeScale * vector.w * normalize(vector.xyz)), position.w, normal);\\n vec4 tubePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);\\n\\n gl_Position = projection * (view * tubePosition);\\n f_id = id;\\n f_position = position.xyz;\\n}\\n\"]),s=n([\"precision highp float;\\n#define GLSLIFY 1\\n\\nbool outOfRange(float a, float b, float p) {\\n return ((p > max(a, b)) || \\n (p < min(a, b)));\\n}\\n\\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\\n return (outOfRange(a.x, b.x, p.x) ||\\n outOfRange(a.y, b.y, p.y));\\n}\\n\\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\\n return (outOfRange(a.x, b.x, p.x) ||\\n outOfRange(a.y, b.y, p.y) ||\\n outOfRange(a.z, b.z, p.z));\\n}\\n\\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\\n return outOfRange(a.xyz, b.xyz, p.xyz);\\n}\\n\\nuniform vec3 clipBounds[2];\\nuniform float pickId;\\n\\nvarying vec3 f_position;\\nvarying vec4 f_id;\\n\\nvoid main() {\\n if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;\\n\\n gl_FragColor = vec4(pickId, f_id.xyz);\\n}\"]);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;re)return r-1}return r},s=function(t,e,r){return tr?r:t},l=function(t){var e=1/0;t.sort((function(t,e){return t-e}));for(var r=t.length,n=1;nh-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_||rb||nw)},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;cS&&(S=F),D.push(F),g.push({points:I,velocities:P,divergences:D});for(var B=0;B<100*c&&I.lengthA&&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;s0)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 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;rt&&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>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]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;y0){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;os||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;i1?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;s0&&(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;r0)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>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<>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<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;u0;)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=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=0&&t[n][1]>=e;--n){var i=r(t[n]);if(i)return i}}function f(t,e){for(var r=0;r>1],a=[],o=[],s=[];for(r=0;r3*(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]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);athis.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 tthis.mid&&this.right&&(n=this.right.queryInterval(t,e,r))?n:ethis.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;r13)&&32!==e&&133!==e&&160!==e&&5760!==e&&6158!==e&&(e<8192||e>8205)&&8232!==e&&8233!==e&&8239!==e&&8287!==e&&8288!==e&&12288!==e&&65279!==e)return!1;return!0}},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(!(t1&&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);i0;--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<=0)return 1< 0\"),\"function\"!=typeof t.vertex&&e(\"Must specify vertex creation function\"),\"function\"!=typeof t.cell&&e(\"Must specify cell creation function\"),\"function\"!=typeof t.phase&&e(\"Must specify phase function\");for(var o=t.getters||[],s=new Array(a),l=0;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;A0){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;A0)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;A0){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;M0)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;M2&&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&&r0;){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;T0;){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;v0;){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;Tr;){y=0,v=m-o;e:for(g=0;g_)break e;v+=h,y+=f}for(y=m,v=m-o,g=0;g>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;k0){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;k0){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;k0){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;k0){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;k0){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;k0){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;k0){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;k0){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;k0){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;k0)){if(rt<0){for(A=l*_,M=l*J,S=l*K,N=s,k=0;k0)for(;;){for(b=s+K*l,B=0,k=0;k0)){for(b=s+K*l,B=0,k=0;kV){t:for(;;){for(b=s+J*l,B=0,N=s,k=0;k1&&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=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>>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;oa){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;oa)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;oa?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;o0){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;p0&&(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;o0;){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;s0;){i[p=o.pop()]=!1;var c=r[p];for(s=0;s0}))).length,g=new Array(m),y=new Array(m);for(p=0;p0;){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=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;n0&&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]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=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;l0){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;i0){if(a<=0)return o;n=i+a}else{if(!(i<0))return o;if(a>=0)return o;n=-(i+a)}var s=33306690738754716e-32*n;return o>=s||o<=-s?o: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;h0&&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)=n?(i=h,(l+=1)=n?(i=h,(l+=1)>1,c=e[2*l+1];if(c===a)return l;a>1,c=e[2*l+1];if(c===a)return l;a>1,c=e[2*l+1];if(c===a)return l;a0)-(t<0)},e.abs=function(t){var e=t>>31;return(t^e)-e},e.min=function(t,e){return e^(t^e)&-(t65535)<<4,e|=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<>>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>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=t.length||0!==a(t[g],s)););}return r}function h(t,e){if(e<0)return[];for(var r=[],i=(1<>>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>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(n0;){var r=v(t);if(!(r>=0&&e0){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>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=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]))return i(e,t);r=e[1],a=e[0]}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])){var s=Math.min(t[0][1],t[1][1]),l=Math.max(t[0][1],t[1][1]),c=Math.min(e[0][1],e[1][1]),u=Math.max(e[0][1],e[1][1]);return lu?s-u:l-u}r=e[1],i=e[0]}t[0][1]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)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;l0||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;l0||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;l0||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=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;sn|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;o0&&(m+=.02);var y=new Float32Array(d),v=0,x=-.5*m;for(g=0;gMath.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);P0?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;e0&&(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(/\\/g,\"\\n\"):r.replace(/\\/g,\" \");var s=\"\",l=[];for(T=0;T-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\",a=\"\",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)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=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=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;rp)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=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;as&&(r=s-l),a=r;a>=0;a--){for(var h=!0,f=0;fi&&(n=i):n=i;var a,o=e.length;for(n>o/2&&(n=o/2),a=0;a>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;i239?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;nn.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;er&&(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>>=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;in)&&(r=n);for(var i=\"\",a=e;ar)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||et.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>>=0,e>>>=0,r||N(t,e,this.length);for(var n=this[t],i=1,a=0;++a>>=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)<>>=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)<>>=0,e>>>=0,r||N(t,e,this.length);for(var n=this[t],i=1,a=0;++a=(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)<>>=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)<>>=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>>=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>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=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>>=0,r=void 0===r?this.length:r>>>0,t||(t=0),\"number\"==typeof t)for(a=e;a=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||t3?0===e||e===BigInt(0)?\">= 0\".concat(s,\" and < 2\").concat(s,\" ** \").concat(8*(a+1)).concat(s):\">= -(2\".concat(s,\" ** \").concat(8*(a+1)-1).concat(s,\") and < 2 ** \")+\"\".concat(8*(a+1)-1).concat(s):\">= \".concat(e).concat(s,\" and <= \").concat(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;o55295&&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=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;a0?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;i0&&(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.y11||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;lo.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&&ga.y0&&i.y0a.y0&&i.y1a.y1)&&W(t,c,e,r)}))):(y>o.y0&&yo.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.y0o.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;r1&&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.column0?\"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;i0&&(r.y0+=n,r.y1+=n),o=r.y1+s;if((n=o-s-a)>0)for(o=r.y0-=n,r.y1-=n,i=l-2;i>=0;--i)(n=(r=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 te?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>>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>>1;t(e[a],r)>0?i=a:n=a+1}return n}}}a.ascending=g,a.descending=function(t,e){return et?1:e>=t?0:NaN},a.min=function(t,e){var r,n,i=-1,a=t.length;if(1===arguments.length){for(;++i=n){r=n;break}for(;++in&&(r=n)}else{for(;++i=n){r=n;break}for(;++in&&(r=n)}return r},a.max=function(t,e){var r,n,i=-1,a=t.length;if(1===arguments.length){for(;++i=n){r=n;break}for(;++ir&&(r=n)}else{for(;++i=n){r=n;break}for(;++ir&&(r=n)}return r},a.extent=function(t,e){var r,n,i,a=-1,o=t.length;if(1===arguments.length){for(;++a=n){r=i=n;break}for(;++an&&(r=n),i=n){r=i=n;break}for(;++an&&(r=n),i1)return o/(l-1)},a.deviation=function(){var 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=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)=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=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=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=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=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;++e0&&(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=n&&(n=e+1);!(o=s[n])&&++n1?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(f0&&(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;s1){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;f360?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+(e0&&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=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=l)return o;if(i)return i=!1,a;var e=c;if(34===t.charCodeAt(e)){for(var r=e;r++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.t1&&(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=0;--n)p.push(t[s[c[n]][2]]);for(n=+h;nEt)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=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.y1)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=s)return}else a={x:o,y:n*o+i};r={x:s,y:n*s+i}}else{if(a){if(a.x0)){if(e/=f,f<0){if(e0){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(e0)){if(e/=p,p<0){if(e0){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(e0&&(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(i-r)>Et)&&(s.splice(o,0,new ar((y=a.site,v=u,x=w(n-h)Et?{x:h,y:w(e-h)Et?{x:w(r-d)Et?{x:f,y:w(e-f)Et?{x:w(r-p)=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;++ua&&(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 am&&(m=l.x),l.y>g&&(g=l.y),c.push(l.x),u.push(l.y);else for(h=0;hm&&(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=b)<<1|e>=_,T=w+4;w=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=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]=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;++i0?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=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=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;++cs&&(s=n),o.push(n)}for(r=0;ri&&(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;a0)for(o=-1;++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;op.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;++i0;)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;++oi&&(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);++on.dx)&&(u=n.dx);++o1);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;r2?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(;c0;f--)o.push(a(c)*f);for(c=0;o[c]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;++a0?r[n-1]:t[0],nh?0:1;if(c=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=s0?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(;++u1&&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;++n9&&(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]];++e1){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;cLt)+\",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;++s0;)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;++srect,.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](n=1))return n;for(;ra?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>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@\\,;\\:\\\\\"\\/\\[\\]\\?\\=\\{\\}\\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=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()-rDate.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&&Ct0||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\":\"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;r255?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=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;e2){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=[];n1)&&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-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;a4?\"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=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;n0&&h<0||u<0&&h>0}function Be(t,e,r){for(var n=0,i=r;nr[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=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;ne))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=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;e0&&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;a1})))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=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)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;oNumber.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=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\",(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=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\":[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;r0&&\"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;rn.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=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);ee?1:0}function Sn(t){if(!Array.isArray(t))return!1;if(\"within\"===t[0])return!0;for(var e=1;e\"===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=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=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=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=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=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-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;rthis.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);ethis.end)return this.prior=null,i;if(this.value.isDataDriven())return this.prior=null,i;if(n=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);in.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.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>>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>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>1],a=r-1,o=n+1;;){do{a++}while(t[a]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-ro.x+1||lo.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;r1){if(Ao(t,e))return!0;for(var n=0;n1?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;oe.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;ne.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.xi.x&&e.x>i.x||t.yi.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=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;pt.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;l80*r){n=a=t[0],i=o=t[1];for(var d=r;da&&(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=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;e0||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.xa.x?i.x>o.x?i.x:o.x:a.x>o.x?a.x:o.x,u=i.y>a.y?i.y>o.y?i.y:o.y:a.y>o.y?a.y:o.y,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.x&&n.x>=u&&i!==n.x&&_s(ar.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=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;ar;){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);h0;)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 te?1:0}function Fs(t,e){var r=t.length;if(r<=1)return[t];for(var n,i,a=[],o=0;o1)for(var l=0;l0&&(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>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>3}if(n--,1===r||2===r)(i+=t.readSVarint())s&&(s=i),(a+=t.readSVarint())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>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;npo}))||P.every((function(t){return t.y<0}))||P.every((function(t){return t.y>po}))))for(var m=0,g=0;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=2&&t[l-1].equals(t[l-2]);)l--;for(var c=0;c0;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&&(bi&&(E=\"bevel\"),\"bevel\"===E&&(b>2&&(E=\"flipbevel\"),b100)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;O2*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=3)for(var a=0;a0?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<>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<>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<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>>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>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;i239?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.pos127;);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;e268435455||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;a55295&&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=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=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();f0&&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=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=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=0,u=0,h=0;h-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;sn;)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;rc){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=0&&_=0&&b=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=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;I0&&(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 te?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;co)&&(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;gv.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;it.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=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;heu&&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])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=0;for(var z=0,O=k.sections;z=0;s--)a[s]={x:e[s].x,y:e[s].y,tileUnitDistanceFromAnchor:i},s>0&&(i+=e[s-1].dist(e[s]));for(var l=0;l0},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;i1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(t),this.sortedAngle=t,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(var r=0,n=this.symbolInstanceIndexes;r=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\",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(\"\"===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(\"\"===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:\"\",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: , lat: }, an object {lon: , lat: }, or an array of [, ]\")};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<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>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.wrapt.wrap)&&(this.overscaledZt.overscaledZ)&&(this.canonical.xt.canonical.x)&&this.canonical.y=this.dim+1||e<-1||e>=this.dim+1)throw new RangeError(\"out of range source coordinates for DEM data\");return(e+1)*this.stride+(t+1)},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=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=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=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;yn)i=!1;else if(e)if(this.expirationTimeft&&(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;n0&&(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=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);P1){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=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=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>31}function I(t,e){for(var r=t.loadGeometry(),n=t.type,i=0,a=0,o=r.length,s=0;s>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);fh;)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=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;fa)i=f,a=p;else if(p===a){var d=Math.abs(f-o);dn&&(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;n0&&(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;i1?1:r}function lt(t,e,r,n,i,a,o,s){if(n/=e,a>=(r/=e)&&o=n)return null;for(var l=[],c=0;c=r&&d=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=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;fr&&(l=u(c,p,d,g,y,r),o&&(c.start=h+s*l)):v>n?x=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;oo.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;s0&&e.size<(i?o:n))r.numPoints+=e.length/3;else{for(var s=[],l=0;lo)&&(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;n0===e)for(n=0,i=t.length;n24)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=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));ue&&(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;T1)for(var E=0,C=f;E>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<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<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<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=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=0?1.2:1))}function y(t,e,r,n,i,a,o){for(var s=0;s65535)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;i1&&(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;c1&&(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=n&&e.x=i&&e.y0&&(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+10&&(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;or.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];tthis.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];n1||(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);hthis._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;a0||(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=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=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.length0?(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=-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;yMath.abs(n.x-r.x)*i?{useVertical:!0}:(e===t.WritingMode.vertical?r.yn.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;M0?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;O0?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)=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;s0: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=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;yo*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=1;I--)L.push(E.path[I]);for(var P=1;P0){for(var R=L[0].clone(),F=L[0].clone(),B=1;B=A.x&&F.x<=M.x&&R.y>=A.y&&F.y<=M.y?[L]:F.xM.x||F.yM.y?[]:t.clipLine([L],A.x,A.y,M.x,M.y)}for(var N=0,j=D;N=this.screenRightBoundary||nthis.screenBottomBoundary},me.prototype.isInsideGrid=function(t,e,r,n){return r>=0&&t=0&&e0?(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;i0&&(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=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=0;--E){var C=S[E];M(o.symbolInstances.get(C),o.collisionArrays[C])}else for(var L=e.symbolInstanceStart;L=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];o0||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;gt},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._currentTileIndex2};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;nt.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;u1?\"@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;r0)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=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] 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>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();_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;d0){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=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;I0){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;h256&&this.clearStencil(),r.setColorMode(Ct.disabled),r.setDepthMode(Mt.disabled);var i=this.useProgram(\"clippingMask\");this._tileClippingMaskIDs={};for(var a=0,o=e;a256&&this.clearStencil();var t=this.nextStencilID++,e=this.context.gl;return new 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=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.currentLayer0?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=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;hthis.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&&re.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<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)-ao&&(i=o-g)}if(this.lngRange){var y=p.x,v=c.x/2;y-vl&&(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=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.duration0&&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=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;nthis.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;n30)&&(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)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,!(sMath.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;aa?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=Te.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)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=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;re.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()=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()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;o180;){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)=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.longitudee.getEast()||r.latitudee.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+\" \"+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=\"×\",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.ythis._map.transform.height-c?[\"bottom\"]:[],i.xthis._map.transform.width-l/2&&s.push(\"right\"),a=0===s.length?\"bottom\":s.join(\"-\")}var u=i.add(o[a]).round();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>>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;yr||s>1073741824){for(var f=0;fr+i||M>n+i||S=L||o===s)){var l=v[a];void 0===s&&(s=l.length);for(var c=o;c=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;si&&(i=t[o]),t[o]1?r-1:0),i=1;i1?r-1:0),i=1;i1?r-1:0),i=1;i1?r-1:0),i=1;it.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;f1&&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.length1&&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&&f30)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;n0,\"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);r10)return!0;for(var e=0;e57)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>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>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>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;sc?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>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)&-(t65535)<<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<>>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-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 er?r:t:te?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;r0?\" \".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;s0?\" \".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 te?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=r)for(n=r;++an&&(n=r)}else for(;++a=r)for(n=r;++an&&(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=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=r)for(n=r;++ar&&(n=r)}else for(;++a=r)for(n=r;++ar&&(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=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();++fn.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=(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;yc+d||ih+d||os.index){var m=c-l.x-l.vx,g=h-l.y-l.vy,y=m*m+g*g;yt.r&&(t.r=t[e].r)}function c(){if(e){var n,i,a=e.length;for(r=new Array(a),n=0;nh&&(h=n),if&&(f=i));if(c>h||u>f)return this;for(this.cover(c,u).cover(h,f),r=0;rt||t>=i||n>e||e>=a;)switch(s=(ep||(a=c.y0)>d||(o=c.x1)=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=(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=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(;++o0)for(var r,n,i=new Array(r),a=0;a=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),r1?(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;c1?(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=l)){(t.data!==e||t.next)&&(0===h&&(d+=(h=a())*h),0===f&&(d+=(f=a())*f),d1?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;n0&&(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(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>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 rx&&--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;e0&&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;hl)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)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)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),cn){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=ev||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=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)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=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(_)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])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=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)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)=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;nv||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)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)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&&--o>0);return l=y(a),[(i(e)=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;l0?[-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;on^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)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);n2||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&&--u>0);var d=r*(h=y(c)),m=y(i(n)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=xi||u<=bi||u>=Ti){a[o]=Mi(l);for(var h=o+1;hyi&&pbi&&d=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;e0?_-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&&--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]),eo&&(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*so&&(o=d):_^(v*s<(x=(x+360)%360-180)&&xo&&(o=e)),_?tS(n,a)&&(a=t):S(t,a)>S(n,a)&&(n=t):a>=n?(ta&&(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]);eo&&(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]:eS(s[0],s[1])&&(s[1]=l[1]),S(l[0],s[1])>S(s[0],s[1])&&(s[0]=l[0])):c.push(s=l);for(u=-1/0,e=0,s=c[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 m0?os)&&(o+=i*a.FA));for(var f,p=o;i>0?p>s:p0?i.pi:-i.pi,c=(0,i.tn)(o-r);(0,i.tn)(c-i.pi)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?(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]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];M0^T[1]<((0,a.tn)(T[0]-A)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;t1&&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)0?0:3:(0,n.tn)(i[0]-r)0?2:1:(0,n.tn)(i[1]-e)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;rc&&(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(o0){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(o0)){if(o/=f,f<0){if(o0){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(o0&&(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=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];++n0&&(i=S(t[a],t[a-1]))>0&&r<=i&&n<=i&&(r+n-i)*(1-Math.pow((r-n)/i,2))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)=.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;++r0?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)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){to&&(o=t),es&&(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])=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||u4*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)e||(0,l.tn)((x*I+_*P)/b-.5)>.3||o*p+s*m+c*g2?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=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=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=[];n0&&r*r>n*n+i*i}function v(t,e){for(var r=0;r(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;s0)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.xu.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;++sf&&(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:l1?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=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>>1;c[m]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;++h1?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));++s53)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=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+(a68?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-e0))return o;do{o.push(a=new Date(+r)),e(r,i),t(r)}while(a=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;ss*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];i0)return function(t,e){var r,n;for(r=new Array(t),n=0;n80*n){a=s=t[0],o=l=t[1];for(var x=n;xs&&(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=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;e0||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=ia?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=sl?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.x&&n.x>=u&&i!==n.x&&d(ar.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=(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;a0&&(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=e}))}(e);for(var r,i=n(t).components.filter((function(t){return t.length>1})),a=1/0,o=0;o=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;r0?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-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=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.__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__=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;r0&&(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=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=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;ie[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;n0;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;n1&&\"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){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;f2){for(var w=!t.position[0].length,k=u.mallocFloat(2*this.count),A=0,M=0;A1?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;W4||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;J1?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>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<>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<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;n13)&&32!==e&&133!==e&&160!==e&&5760!==e&&6158!==e&&(e<8192||e>8205)&&8232!==e&&8233!==e&&8239!==e&&8287!==e&&8288!==e&&12288!==e&&65279!==e)return!1;return!0}},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-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<=0)return 1<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;i1&&(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=tk&&(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;z7&&(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;l0&&!i.call(t,0))for(var m=0;m0)for(var g=0;g=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;a1e4)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.lengtha!=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)},pointsSameX:function(e,r){return Math.abs(e[0]-r[0])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;i0}))}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;l0&&!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;othis.input.length)throw e(\"unexpected EOF\",\"EBADDATA\");for(var d=[],m=f,g=0;g0&&(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>4&15,i=15&t[4],a=t[5]>>4&15,o=n(t,6),l=8,c=0;ce.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;n1&&(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;so.width||c>o.height)&&(o=u)}return{width:o.width,height:o.height,variants:a,type:\"ico\",mime:\"image/x-icon\",wUnits:\"px\",hUnits:\"px\"}}}},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-e0&&(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>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]<t.length)){for(;e+8=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;r1)for(var r=1;r1&&(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 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=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+Ot.length)&&(e=t.length);for(var r=0,n=new Array(e);r 1.0 + delta) {\\n\\t\\tdiscard;\\n\\t}\\n\\n\\talpha -= smoothstep(1.0 - delta, 1.0 + delta, radius);\\n\\n\\tfloat borderRadius = fragBorderRadius;\\n\\tfloat ratio = smoothstep(borderRadius - delta, borderRadius + delta, radius);\\n\\tvec4 color = mix(fragColor, fragBorderColor, ratio);\\n\\tcolor.a *= alpha * opacity;\\n\\tgl_FragColor = color;\\n}\\n\"]),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;nn)?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=0)return a;if(t instanceof Uint8Array||t instanceof Uint8ClampedArray)e=t;else{e=new Uint8Array(t.length);for(var o=0,s=t.length;o4*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;i2?(s[0],s[2],n=s[1],i=s[3]):s.length?(n=s[0],i=s[1]):(s.x,n=s.y,s.x,s.width,i=s.y+s.height),l.length>2?(a=l[0],o=l[2],l[1],l[3]):l.length?(a=l[0],o=l[1]):(a=l.x,l.y,o=l.x+l.width,l.y,l.height),[a,n,o,i]}function 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;nk))&&(s.lower||!(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(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>>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,r.height>>=i,p(r,n[i]),t.mipmask|=1<e;++e)t.images[e]=null;return t}function L(t){for(var e=t.images,r=0;re){for(var r=0;r=--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;er;++r)if(0!=(e.mipmask&1<>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;ei;++i){for(c=0;ct;++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=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;lt&&(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>>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>>4&15)+\"0123456789abcdef\".charAt(15&e);return r}(function(t){for(var e=Array(t.length>>2),r=0;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;uh;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=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+\"?\"+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>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=--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=$.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;ie;++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;t4294967295||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;l0)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.lengthe.highWaterMark&&(e.highWaterMark=function(t){return t>=E?t=E:(t--,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,t|=t>>>16,t++),t}(t)),t<=e.length?t:e.ended?e.length:(e.needReadable=!0,0))}function 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.length0,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=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-t0?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;a0,!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-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;r0?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 ti.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;e0,(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,\"�\";if(t.lastNeed>1&&e.length>1){if(128!=(192&e[1]))return t.lastNeed=1,\"�\";if(t.lastNeed>2&&e.length>2&&128!=(192&e[2]))return t.lastNeed=2,\"�\"}}(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=0?(i>0&&(t.lastNeed=i-1),i):--n=0?(i>0&&(t.lastNeed=i-2),i):--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;s0)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;s0;){e=c[c.length-1];var p=t[e];if(a[e]=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;d1&&(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;Ie[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;d4?(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>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;cl&&(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\":(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)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=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;o60?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-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>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>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>13;return!g||p=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=this.toJD(-1===e?1:e+1,7,1);)e++;for(var r=tthis.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;r19||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=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;r0?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-Jum‘a\",\"Yawm al-Sabt\"],dayNamesMin:[\"Ah\",\"Ith\",\"Th\",\"Ar\",\"Kh\",\"Ju\",\"Sa\"],digits:null,dateFormat:\"yyyy/mm/dd\",firstDay:6,isRTL:!0}},leapYear:function(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;ar)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;ne);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(;oe-1+t.minMonth;)a++,o-=e,e=t.monthsInYear(a)}(this),i=Math.min(i,this.daysInMonth(a,this.fromMonthOfYear(a,o))));var s=[a,this.fromMonthOfYear(a,o),i];return this._validateLevel--,s}catch(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.minDay&&r-this.minDay13.5?13:1),c=i-(l>2.5?4716:4715);return c<=0&&c--,this.newDate(c,l,s)},toJSDate:function(t,e,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+n1}),p=function(t,e,r,n){var i=\"\"+e;if(f(t,n))for(;i.length1},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-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;n0?\" \".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;e0){e+=Math.abs(c(t[0]));for(let r=1;r=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]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;vc||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;s1)return 1;for(var r=t,n=0;n<8;n++){var i=this.sampleCurveX(r)-t;if(Math.abs(i)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;ri.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;tA(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`:\"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=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(;nt.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;r4?`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=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;oNumber.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;ie.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||ee))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=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)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:s180&&(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\"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=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\",(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;ri[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;r0&&h<0||u<0&&h>0}function cr(t,e,r){const n=[];for(let i=0;ir[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=0)break;e[t]=a,t=n}e[t]=i}};function gr(t,e){return te?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);h0;)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 te?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;t1?(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;p180;)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]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[2]&&(n=t[0]-e[2]),t[1]>e[3]&&(i=t[1]-e[3]),t[3]=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;t0;){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{return e=t,Array.isArray(e)?`(${e.map(bt).join(\", \")})`:`(${bt(e.type)}...)`;var e})).join(\" | \"),n=[];for(let r=1;r{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;et[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{const r=t.id(),n=e.value;return typeof r==typeof n&&r\":[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 te?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\"===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;en.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&&lnew 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{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;at.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=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=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.lastFloorZoomt>=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=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.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>>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>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>1];let a=r-1,o=n+1;for(;;){do{a++}while(t[a]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`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`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`#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!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;tr.x+1||ar.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;r1){if(Ko(t,e))return!0;for(let n=0;n1?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;oe.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;ne.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.xi.x&&e.x>i.x||t.yi.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;ews(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{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;e80*r){s=1/0,l=1/0;let e=-1/0,n=-1/0;for(let a=r;ae&&(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;a0)for(let i=e;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;t0||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=ia?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=sl?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.x&&r.x>=l&&n!==r.x&&Qs(ia.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=(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>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>3}if(n--,1===r||2===r)(i+=t.readSVarint())s&&(s=i),(a+=t.readSVarint())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>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=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;rUo)||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;it.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=2&&t[s-1].equals(t[s-2]);)s--;let l=0;for(;l0;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&&(xi&&(k=\"bevel\"),\"bevel\"===k&&(x>2&&(k=\"flipbevel\"),x100)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;e2*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=3)for(let e=0;e0?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<>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<>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<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>>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>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;i239?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.pos127;);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;e268435455||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;a55295&&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=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=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=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;r0&&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=0;let c=0;for(let r=0;rh){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(;it.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;a0)&&(\"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;ct.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=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;t0}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;en[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: , lat: }, an object {lon: , lat: }, or an array of [, ]\")}}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<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= 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>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.wrapt.wrap)&&(this.overscaledZt.overscaledZ)&&(this.canonical.xt.canonical.x)&&this.canonical.ythis.max&&(this.max=r),r=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=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=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(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=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{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=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(;sn;)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;rc){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=0&&y=0&&v=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;r0&&(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)=>te?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=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;to)&&(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;ed.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;it.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;rt*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=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])>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);so;)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:\"\",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(\"\"===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(\"\"===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:\"\",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{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{\"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@\\,;\\:\\\\\"\\/\\[\\]\\?\\=\\{\\}\\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;nt*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;te(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=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=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>31}function E(t,e){for(var r=t.loadGeometry(),n=t.type,i=0,a=0,o=r.length,s=0;st},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=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):i1;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;re&&(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;t1)for(const t of h){const r=t*c;if(!(s[r+2]<=e)){s[r+2]=e;for(let t=0;t>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;ni)o=n,i=e;else if(e===i){const t=Math.abs(n-a);tn&&(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;r0&&(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;i1?1:r}function tt(t,e,r,n,i,a,o,s){if(n/=e,a>=(r/=e)&&o=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)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=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;fr&&(u=l(s,p,d,g,y,r),o&&(s.start=h+c*u)):v>n?x=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;n0&&e.size<(i?o:n))return void(r.numPoints+=e.length/3);const s=[];for(let t=0;to)&&(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;e0===e)for(let e=0,r=t.length;e24)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;n1&&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<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<{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{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{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;e0;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]{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-1);l++,a[l]=s,o[l]=c,o[l+1]=A}for(let s=0,l=0;s65535)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;t0?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;t1&&(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;e1&&(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.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{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=i&&t.y{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+10&&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;tr.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;ee.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;rt)e=!1;else if(r)if(this.expirationTime{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;n1||(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()||ethis._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=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;t0?(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;tthis.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;t0}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;iMath.abs(n.x-r.x)*i?{useVertical:!0}:(t===e.ai.vertical?r.yn.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;a0?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=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=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=1;t--)l.push(o.path[t]);for(let t=1;tt.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=n.x&&r.x<=i.x&&t.y>=n.y&&r.y<=i.y?[l]:r.xi.x||r.yi.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;ewt(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=this.screenRightBoundary||nthis.screenBottomBoundary}isInsideGrid(t,e,r,n){return r>=0&&t=0&&ethis.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;em(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=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;n0||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.lastPlacementChangeTimet}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._currentTileIndext.sortKey-e.sortKey)));this._currentPartIndex!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({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.zt))}}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;tt.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[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]{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;tt.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({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({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;r0){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;er.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=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;tt.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;e0){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({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.currentLayerr.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().maxzoomo(t))),r||a.forEach((t=>o(t))),r}(this.style,this.transform.zoom);t&&function(t,e,r){for(let n=0;n0),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;at.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<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=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;ithis.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&&it.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<w&&i.zoom>=f){const t=y-i.zoom,r=c[0]-.5-(a<>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-os&&(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-nc&&(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.durationr.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)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;nthis.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){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()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{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()){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.altitudethis._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=T0,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)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:'
MapLibre'};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=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<>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<>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&&(!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=0&&nt.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<>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<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!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{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.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)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.longitudee.getEast()||r.latitudee.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} ${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.ythis._map.transform.height-e?[\"bottom\"]:[],n.xthis._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=\"×\",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()=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()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;tthis._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*(r0&&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=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=na&&(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 aESRI\"},\"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 © ESRI\"},\"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", - " \n", - " " - ] - }, - "metadata": {}, - "output_type": "display_data", - "jetTransient": { - "display_id": null - } - }, { "data": { "application/vnd.plotly.v1+json": { + "config": { + "plotlyServerURL": "https://plot.ly" + }, "data": [ { "customdata": [ [ [ - 0.0 + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + 1 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ] + ], + [ + [ + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + -1.4210854715202005e-15 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0.9999999999999987 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ] + ], + [ + [ + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + -2.842170943040401e-15 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0.9999999999999971 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ] + ], + [ + [ + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + -4.263256414560602e-15 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0.9999999999999958 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ] + ], + [ + [ + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + -5.684341886080802e-15 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0.9999999999999943 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ], + [ + 0 + ] + ], + [ + [ + 0 ], [ - 1.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + -7.105427357601002e-15 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.9999999999999929 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 3.552713678800501e-16 ], [ - 0.9999999999999999 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.062250451205266094 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.9377495487947237 ], [ - 0.0 + 0 ], [ - -3.552713678800501E-16 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 7.105427357601002e-16 ], [ - 0.9999999999999997 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.1245009024105393 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.8754990975894543 ], [ - 0.0 + 0 ], [ - -7.105427357601002E-16 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 1.0658141036401504e-15 ], [ - 0.9999999999999994 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.18675135361581252 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.813248646384185 ], [ - 0.0 + 0 ], [ - -1.0658141036401504E-15 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 1.4210854715202005e-15 ], [ - 0.9999999999999993 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.2490018048210857 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.7509981951789158 ], [ - 0.0 + 0 ], [ - -1.4210854715202005E-15 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 1.7763568394002505e-15 ], [ - 0.9999999999999991 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.31125225602635886 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.6887477439736465 ], [ - 0.0 + 0 ], [ - -1.7763568394002505E-15 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 0.0393847467431038 ], [ - 0.9000059585172998 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.3138555821346774 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 4.4408920985006264E-17 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.6467596711222247 ], [ - 0.0 + 0 ], [ - 0.09999404148269832 + 0 ], [ - 0.0 + 8.881784197001253e-17 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 0.07876949348620582 ], [ - 0.8000119170346003 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.31645890824299594 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 8.881784197001253E-17 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.6047715982708026 ], [ - 0.0 + 0 ], [ - 0.1999880829653984 + 0 ], [ - 0.0 + 1.7763568394002506e-16 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 0.11815424022930784 ], [ - 0.7000178755519009 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.3190622343513144 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 1.332267629550188E-16 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.5627835254193808 ], [ - 0.0 + 0 ], [ - 0.2999821244480985 + 0 ], [ - 0.0 + 2.664535259100376e-16 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 0.15753898697240987 ], [ - 0.6000238340692015 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.321665560459633 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 1.7763568394002506E-16 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.5207954525679589 ], [ - 0.0 + 0 ], [ - 0.3999761659307986 + 0 ], [ - 0.0 + 3.552713678800501e-16 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 0.19692373371551186 ], [ - 0.500029792586502 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.3242688865679515 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 2.220446049250313E-16 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.4788073797165371 ], [ - 0.0 + 0 ], [ - 0.4999702074134986 + 0 ], [ - 0.0 + 4.440892098500626e-16 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 0.20333176254381932 ], [ - 0.4856780422951374 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.31276946401230066 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.017957141952506417 + -2.2204460492503132e-17 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.44289087299319313 ], [ - 0.0 + 0 ], [ - 0.4963648157523569 + 0 ], [ - 0.0 + 0.04100790045068764 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 0.20973979137212673 ], [ - 0.47132629200377274 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.3012700414566497 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.03591428390501261 + -4.4408920985006264e-17 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.4069743662698492 ], [ - 0.0 + 0 ], [ - 0.4927594240912151 + 0 ], [ - 0.0 + 0.08201580090137484 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 0.21614782020043416 ], [ - 0.45697454171240803 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.28977061890099887 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.05387142585751881 + -6.66133814775094e-17 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.3710578595465052 ], [ - 0.0 + 0 ], [ - 0.48915403243007327 + 0 ], [ - 0.0 + 0.12302370135206206 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 0.2225558490287416 ], [ - 0.4426227914210433 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.27827119634534797 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.071828567810025 + -8.881784197001253e-17 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.33514135282316126 ], [ - 0.0 + 0 ], [ - 0.4855486407689315 + 0 ], [ - 0.0 + 0.16403160180274923 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 0.22896387785704903 ], [ - 0.4282710411296787 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.26677177378969713 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0897857097625312 + -1.1102230246251565e-16 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.29922484609981737 ], [ - 0.0 + 0 ], [ - 0.48194324910778974 + 0 ], [ - 0.0 + 0.20503950225343642 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 0.227858987821942 ], [ - 0.4156439327078922 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.2649668576551618 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.09141090656019465 + 0.005637288011142361 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.020791125858137874 + 0 ], [ - 0.0 + 0.29694749449024327 ], [ - 0.0 + 2.2204460492503132e-17 ], [ - 0.47215403487377494 + 0 ], [ - 0.0 + 0.20458937202151056 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 0.22675409778683492 ], [ - 0.40301682428610563 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.26316194152062655 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.09303610335785811 + 0.011274576022284833 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.04158225171627575 + 0 ], [ - 0.0 + 0.2946701428806691 ], [ - 0.0 + 4.4408920985006264e-17 ], [ - 0.4623648206397601 + 0 ], [ - 0.0 + 0.2041392417895847 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 0.22564920775172786 ], [ - 0.3903897158643191 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.26135702538609124 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.09466130015552156 + 0.016911864033427305 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.06237337757441362 + 0 ], [ - 0.0 + 0.29239279127109497 ], [ - 0.0 + 6.66133814775094e-17 ], [ - 0.4525756064057453 + 0 ], [ - 0.0 + 0.2036891115576588 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 0.2245443177166208 ], [ - 0.3777626074425326 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.259552109251556 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.09628649695318502 + 0.022549152044569778 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.0831645034325515 + 0 ], [ - 0.0 + 0.29011543966152087 ], [ - 0.0 + 8.881784197001253e-17 ], [ - 0.44278639217173044 + 0 ], [ - 0.0 + 0.20323898132573295 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 0.22343942768151376 ], [ - 0.36513549902074605 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.25774719311702066 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.09791169375084846 + 0.028186440055712247 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.10395562929068936 + 0 ], [ - 0.0 + 0.2878380880519467 ], [ - 0.0 + 1.1102230246251565e-16 ], [ - 0.43299717793771564 + 0 ], [ - 0.0 + 0.20278885109380707 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 0.22078820615108743 ], [ - 0.3339927914905363 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.2536992188797848 ], [ - 0.0 + 0 ], [ - 0.012122194014290478 + 0 ], [ - 0.09819113050048571 + 0.03438723672802628 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.14702466304527492 + 0 ], [ - 0.0 + 0.2832405518209149 ], [ - 0.0 + 0.0070434078992644535 ], [ - 0.4086692209494122 + 0 ], [ - 0.0 + 0.2008413785209227 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 0.21813698462066108 ], [ - 0.3028500839603264 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.24965124464254884 ], [ - 0.0 + 0 ], [ - 0.024244388028580956 + 0 ], [ - 0.09847056725012293 + 0.04058803340034031 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.19009369679986046 + 0 ], [ - 0.0 + 0.27864301558988314 ], [ - 0.0 + 0.014086815798528796 ], [ - 0.3843412639611088 + 0 ], [ - 0.0 + 0.1988939059480383 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 0.21548576309023476 ], [ - 0.27170737643011655 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.24560327040531296 ], [ - 0.0 + 0 ], [ - 0.03636658204287144 + 0 ], [ - 0.09875000399976018 + 0.04678883007265436 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.23316273055444603 + 0 ], [ - 0.0 + 0.2740454793588513 ], [ - 0.0 + 0.021130223697793143 ], [ - 0.36001330697280537 + 0 ], [ - 0.0 + 0.19694643337515388 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 0.21283454155980838 ], [ - 0.2405646688999068 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.24155529616807708 ], [ - 0.0 + 0 ], [ - 0.04848877605716191 + 0 ], [ - 0.09902944074939743 + 0.052989626744968384 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.27623176430903157 + 0 ], [ - 0.0 + 0.2694479431278195 ], [ - 0.0 + 0.02817363159705748 ], [ - 0.33568534998450195 + 0 ], [ - 0.0 + 0.19499896080226953 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 0.21018332002938206 ], [ - 0.20942196136969699 + 0 ], [ - 0.0 + 0 ], [ - 0.0 + 0.23750732193084118 ], [ - 0.0 + 0 ], [ - 0.060610970071452386 + 0 ], [ - 0.09930887749903466 + 0.05919042341728242 ], [ - 0.0 + 0 ], [ - 0.0 + 0 ], [ - 0.3193007980636171 + 0 ], [ - 0.0 + 0.26485040689678774 ], [ - 0.0 + 0.03521703949632182 ], [ - 0.3113573929961985 + 0 ], [ - 0.0 + 0.19305148822938512 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 0.20876329601254562 ], [ - 0.2056648768088182 + 0 ], [ - 0.0 + -1.1102230246251566e-17 ], [ - 0.0 + 0.23546844501871314 ], [ - 0.0017431603895147725 + 0 ], [ - 0.061922387798765355 + 0 ], [ - 0.09872465454654034 + 0.06113240605142709 ], [ - 0.0 + 0 ], [ - 5.551115123125783E-18 + 0.0028679563377443486 ], [ - 0.3236540735343787 + 0 ], [ - 0.0 + 0.262566347693566 ], [ - 0.0 + 0.03730411812908283 ], [ - 0.30829084692198244 + 0 ], [ - 0.0 + 0.19189743075692114 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 0.2073432719957092 ], [ - 0.20190779224793942 + 0 ], [ - 0.0 + -2.2204460492503132e-17 ], [ - 0.0 + 0.23342956810658505 ], [ - 0.003486320779029545 + 0 ], [ - 0.06323380552607832 + 0 ], [ - 0.09814043159404601 + 0.06307438868557176 ], [ - 0.0 + 0 ], [ - 1.1102230246251566E-17 + 0.005735912675488697 ], [ - 0.32800734900514017 + 0 ], [ - 0.0 + 0.26028228849034424 ], [ - 0.0 + 0.03939119676184384 ], [ - 0.3052243008477664 + 0 ], [ - 0.0 + 0.19074337328445712 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 0.2059232479788728 ], [ - 0.1981507076870606 + 0 ], [ - 0.0 + -3.33066907387547e-17 ], [ - 0.0 + 0.23139069119445704 ], [ - 0.005229481168544318 + 0 ], [ - 0.06454522325339129 + 0 ], [ - 0.09755620864155168 + 0.06501637131971642 ], [ - 0.0 + 0 ], [ - 1.665334536937735E-17 + 0.008603869013233047 ], [ - 0.33236062447590176 + 0 ], [ - 0.0 + 0.25799822928712246 ], [ - 0.0 + 0.04147827539460485 ], [ - 0.30215775477355034 + 0 ], [ - 0.0 + 0.18958931581199312 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 0.20450322396203635 ], [ - 0.19439362312618186 + 0 ], [ - 0.0 + -4.4408920985006264e-17 ], [ - 0.0 + 0.22935181428232898 ], [ - 0.00697264155805909 + 0 ], [ - 0.06585664098070426 + 0 ], [ - 0.09697198568905734 + 0.0669583539538611 ], [ - 0.0 + 0 ], [ - 2.2204460492503132E-17 + 0.011471825350977394 ], [ - 0.3367138999466633 + 0 ], [ - 0.0 + 0.25571417008390074 ], [ - 0.0 + 0.04356535402736586 ], [ - 0.29909120869933425 + 0 ], [ - 0.0 + 0.18843525833952912 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 0.2030831999451999 ], [ - 0.19063653856530308 + 0 ], [ - 0.0 + -5.551115123125783e-17 ], [ - 0.0 + 0.22731293737020092 ], [ - 0.008715801947573862 + 0 ], [ - 0.06716805870801723 + 0 ], [ - 0.096387762736563 + 0.06890033658800576 ], [ - 0.0 + 0 ], [ - 2.7755575615628914E-17 + 0.014339781688721742 ], [ - 0.3410671754174248 + 0 ], [ - 0.0 + 0.253430110880679 ], [ - 0.0 + 0.04565243266012686 ], [ - 0.2960246626251182 + 0 ], [ - 0.0 + 0.18728120086706512 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 0.1959082374554483 ], [ - 0.18662714070219782 + 0 ], [ - 0.0 + 0.009534773355127212 ], [ - 0.0 + 0.21826782893814137 ], [ - 0.0099132715495214 + 0 ], [ - 0.0682761791452737 + 0 ], [ - 0.09502251535271415 + 0.07460264178194032 ], [ - 0.0 + 0 ], [ - 0.002868510661622892 + 0.02394413151143844 ], [ - 0.34469874244800675 + 0 ], [ - 0.0 + 0.24341870947909944 ], [ - 0.0 + 0.0524890987985244 ], [ - 0.2925936401406634 + 0 ], [ - 0.0 + 0.18183457868028008 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 0.1887332749656967 ], [ - 0.18261774283909257 + 0 ], [ - 0.0 + 0.01906954671025448 ], [ - 0.0 + 0.20922272050608176 ], [ - 0.011110741151468938 + 0 ], [ - 0.06938429958253017 + 0 ], [ - 0.09365726796886531 + 0.08030494697587486 ], [ - 0.0 + 0 ], [ - 0.005737021323245756 + 0.03354848133415513 ], [ - 0.34833030947858856 + 0 ], [ - 0.0 + 0.23340730807751986 ], [ - 0.0 + 0.05932576493692192 ], [ - 0.28916261765620865 + 0 ], [ - 0.0 + 0.17638795649349504 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 0.18155831247594506 ], [ - 0.17860834497598732 + 0 ], [ - 0.0 + 0.028604320065381755 ], [ - 0.0 + 0.20017761207402218 ], [ - 0.012308210753416475 + 0 ], [ - 0.07049242001978664 + 0 ], [ - 0.09229202058501645 + 0.08600725216980941 ], [ - 0.0 + 0 ], [ - 0.00860553198486862 + 0.04315283115687183 ], [ - 0.35196187650917043 + 0 ], [ - 0.0 + 0.22339590667594028 ], [ - 0.0 + 0.06616243107531945 ], [ - 0.2857315951717539 + 0 ], [ - 0.0 + 0.17094133430670996 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 0.17438334998619345 ], [ - 0.17459894711288207 + 0 ], [ - 0.0 + 0.038139093420509015 ], [ - 0.0 + 0.1911325036419626 ], [ - 0.013505680355364013 + 0 ], [ - 0.07160054045704313 + 0 ], [ - 0.0909267732011676 + 0.09170955736374395 ], [ - 0.0 + 0 ], [ - 0.011474042646491484 + 0.05275718097958852 ], [ - 0.3555934435397523 + 0 ], [ - 0.0 + 0.21338450527436073 ], [ - 0.0 + 0.07299909721371699 ], [ - 0.28230057268729913 + 0 ], [ - 0.0 + 0.16549471211992492 ], [ - 0.0 + 0 ] ], [ [ - 0.0 + 0.16720838749644185 ], [ - 0.17058954924977682 + 0 ], [ - 0.0 + 0.04767386677563629 ], [ - 0.0 + 0.18208739520990305 ], [ - 0.014703149957311552 + 0 ], [ - 0.0727086608942996 + 0 ], [ - 0.08956152581731874 + 0.0974118625576785 ], [ - 0.0 + 0 ], [ - 0.014342553308114347 + 0.06236153080230522 ], [ - 0.35922501057033424 + 0 ], [ - 0.0 + 0.20337310387278115 ], [ - 0.0 + 0.07983576335211451 ], [ - 0.2788695502028444 + 0 ], [ - 0.0 + 0.16004808993313988 ], [ - 0.0 + 0 ] ], [ [ - 7.524112030667941E-5 + 0.16673915514939575 ], [ - 0.17055257393774714 + 0 ], [ - 0.0 + 0.04810490795692295 ], [ - 0.0 + 0.1815006872370329 ], [ - 0.014706230142165417 + 0.0008527214506208636 ], [ - 0.07271197363577815 + 0 ], [ - 0.08954299746103446 + 0.09756071850866017 ], [ - 0.0 + 0 ], [ - 0.014358012432720633 + 0.06275890024878432 ], [ - 0.3592198824477371 + 0 ], [ - 0.0 + 0.20270191455100792 ], [ - 0.0 + 0.08013082928867707 ], [ - 0.2788330888225101 + 0 ], [ - 0.0 + 0.1596501656088985 ], [ - 0.0 + 0 ] ], [ [ - 1.5048224061335881E-4 + 0.16626992280234965 ], [ - 0.17051559862571747 + 0 ], [ - 0.0 + 0.04853594913820962 ], [ - 0.0 + 0.18091397926416275 ], [ - 0.014709310327019281 + 0.0017054429012417272 ], [ - 0.07271528637725669 + 0 ], [ - 0.08952446910475016 + 0.09770957445964185 ], [ - 0.0 + 0 ], [ - 0.014373471557326916 + 0.06315626969526342 ], [ - 0.35921475432514005 + 0 ], [ - 0.0 + 0.20203072522923465 ], [ - 0.0 + 0.08042589522523962 ], [ - 0.27879662744217587 + 0 ], [ - 0.0 + 0.15925224128465706 ], [ - 0.0 + 0 ] ], [ [ - 2.2572336092003823E-4 + 0.16580069045530355 ], [ - 0.1704786233136878 + 0 ], [ - 0.0 + 0.04896699031949629 ], [ - 0.0 + 0.18032727129129258 ], [ - 0.014712390511873147 + 0.002558164351862591 ], [ - 0.07271859911873524 + 0 ], [ - 0.08950594074846588 + 0.09785843041062353 ], [ - 0.0 + 0 ], [ - 0.014388930681933202 + 0.0635536391417425 ], [ - 0.35920962620254293 + 0 ], [ - 0.0 + 0.20135953590746142 ], [ - 0.0 + 0.08072096116180218 ], [ - 0.2787601660618416 + 0 ], [ - 0.0 + 0.15885431696041566 ], [ - 0.0 + 0 ] ], [ [ - 3.0096448122671763E-4 + 0.16533145810825747 ], [ - 0.1704416480016581 + 0 ], [ - 0.0 + 0.04939803150078296 ], [ - 0.0 + 0.17974056331842242 ], [ - 0.014715470696727012 + 0.0034108858024834545 ], [ - 0.07272191186021378 + 0 ], [ - 0.08948741239218158 + 0.0980072863616052 ], [ - 0.0 + 0 ], [ - 0.014404389806539486 + 0.0639510085882216 ], [ - 0.3592044980799458 + 0 ], [ - 0.0 + 0.20068834658568815 ], [ - 0.0 + 0.08101602709836472 ], [ - 0.27872370468150737 + 0 ], [ - 0.0 + 0.15845639263617425 ], [ - 0.0 + 0 ] ], [ [ - 3.76205601533397E-4 + 0.16486222576121137 ], [ - 0.17040467268962842 + 0 ], [ - 0.0 + 0.049829072682069625 ], [ - 0.0 + 0.17915385534555228 ], [ - 0.014718550881580878 + 0.004263607253104318 ], [ - 0.07272522460169233 + 0 ], [ - 0.08946888403589728 + 0.09815614231258687 ], [ - 0.0 + 0 ], [ - 0.01441984893114577 + 0.0643483780347007 ], [ - 0.3591993699573487 + 0 ], [ - 0.0 + 0.20001715726391492 ], [ - 0.0 + 0.08131109303492728 ], [ - 0.2786872433011731 + 0 ], [ - 0.0 + 0.15805846831193285 ], [ - 0.0 + 0 ] ], [ [ - 0.01788672648431919 + 0.16276691130512705 ], [ - 0.16092586337035275 + 0.0031900264971502002 ], [ - 0.0 + 0.05117904571519243 ], [ - 0.0 + 0.17653915150897043 ], [ - 0.01517177607790952 + 0.007126068814281944 ], [ - 0.0727831941716519 + 0 ], [ - 0.08375693135429126 + 0.09831442660127028 ], [ - 0.0 + 0 ], [ - 0.01753042407467564 + 0.06548057286866124 ], [ - 0.35606929594312864 + 1.1102230246251566e-17 ], [ - 0.0 + 0.1971265668519571 ], [ - 0.0 + 0.08194258491065276 ], [ - 0.2691044135999867 + 0 ], [ - 0.006771374923684237 + 0.15633464492673677 ], [ - 0.0 + 0 ] ], [ [ - 0.035397247367104985 + 0.16067159684904267 ], [ - 0.1514470540510771 + 0.0063800529943004005 ], [ - 0.0 + 0.05252901874831523 ], [ - 0.0 + 0.17392444767238857 ], [ - 0.015625001274238163 + 0.00998853037545957 ], [ - 0.07284116374161148 + 0 ], [ - 0.0780449786726852 + 0.09847271088995367 ], [ - 0.0 + 0 ], [ - 0.02064099921820551 + 0.06661276770262178 ], [ - 0.35293922192890864 + 2.2204460492503132e-17 ], [ - 0.0 + 0.19423597643999926 ], [ - 0.0 + 0.08257407678637824 ], [ - 0.2595215838988003 + 0 ], [ - 0.013542749847368474 + 0.15461082154154066 ], [ - 0.0 + 0 ] ], [ [ - 0.052907768249890776 + 0.15857628239295835 ], [ - 0.14196824473180145 + 0.009570079491450601 ], [ - 0.0 + 0.05387899178143804 ], [ - 0.0 + 0.17130974383580672 ], [ - 0.016078226470566802 + 0.012850991936637197 ], [ - 0.07289913331157105 + 0 ], [ - 0.07233302599107916 + 0.09863099517863708 ], [ - 0.0 + 0 ], [ - 0.023751574361735375 + 0.06774496253658233 ], [ - 0.3498091479146886 + 3.33066907387547e-17 ], [ - 0.0 + 0.19134538602804144 ], [ - 0.0 + 0.08320556866210371 ], [ - 0.24993875419761388 + 0 ], [ - 0.020314124771052714 + 0.15288699815634454 ], [ - 0.0 + 0 ] ], [ [ - 0.07041828913267657 + 0.156480967936874 ], [ - 0.1324894354125258 + 0.012760105988600801 ], [ - 0.0 + 0.05522896481456084 ], [ - 0.0 + 0.16869503999922486 ], [ - 0.016531451666895444 + 0.015713453497814823 ], [ - 0.07295710288153062 + 0 ], [ - 0.06662107330947312 + 0.09878927946732047 ], [ - 0.0 + 0 ], [ - 0.026862149505265245 + 0.06887715737054287 ], [ - 0.3466790739004686 + 4.4408920985006264e-17 ], [ - 0.0 + 0.1884547956160836 ], [ - 0.0 + 0.08383706053782919 ], [ - 0.24035592449642745 + 0 ], [ - 0.027085499694736948 + 0.15116317477114846 ], [ - 0.0 + 0 ] ], [ [ - 0.08792881001546235 + 0.15438565348078964 ], [ - 0.12301062609325014 + 0.015950132485751 ], [ - 0.0 + 0.05657893784768364 ], [ - 0.0 + 0.166080336162643 ], [ - 0.016984676863224087 + 0.018575915058992448 ], [ - 0.07301507245149019 + 0 ], [ - 0.060909120627867075 + 0.09894756375600386 ], [ - 0.0 + 0 ], [ - 0.02997272464879511 + 0.07000935220450341 ], [ - 0.34354899988624854 + 5.551115123125783e-17 ], [ - 0.0 + 0.18556420520412578 ], [ - 0.0 + 0.08446855241355467 ], [ - 0.23077309479524105 + 0 ], [ - 0.033856874618421184 + 0.14943935138595235 ], [ - 0.0 + 0 ] ], [ [ - 0.09157693379942498 + 0.15294451757819924 ], [ - 0.12034325624815978 + 0.017608792890601743 ], [ - 0.0035650713499443725 + 0.0572869844336815 ], [ - 0.0 + 0.1642940569471762 ], [ - 0.016861099265163465 + 0.02019190503129083 ], [ - 0.07278094223467599 + 0 ], [ - 0.05903882475049456 + 0.09879494046405432 ], [ - 0.0 + 0 ], [ - 0.030396866310250056 + 0.07039162415788838 ], [ - 0.34217304781757285 + 0.002206415595365524 ], [ - 0.0 + 0.18350072447338356 ], [ - 2.7755575615628915E-18 + 0.08463757050732379 ], [ - 0.22811981074313664 + 0 ], [ - 0.03514414748117719 + 0.14814246792103486 ], [ - 0.0 + 2.2204460492503132e-17 ] ], [ [ - 0.09522505758338759 + 0.15150338167560884 ], [ - 0.1176758864030694 + 0.019267453295452486 ], [ - 0.007130142699888745 + 0.057995031019679344 ], [ - 0.0 + 0.16250777773170935 ], [ - 0.016737521667102843 + 0.021807895003589213 ], [ - 0.07254681201786178 + 0 ], [ - 0.057168528873122036 + 0.09864231717210475 ], [ - 0.0 + 0 ], [ - 0.030821007971705 + 0.07077389611127334 ], [ - 0.3407970957488971 + 0.0044128311907309925 ], [ - 0.0 + 0.1814372437426413 ], [ - 5.551115123125783E-18 + 0.08480658860109291 ], [ - 0.22546652669103223 + 0 ], [ - 0.036431420343933194 + 0.14684558445611734 ], [ - 0.0 + 4.4408920985006264e-17 ] ], [ [ - 0.09887318136735024 + 0.1500622457730184 ], [ - 0.11500851655797904 + 0.020926113700303228 ], [ - 0.010695214049833118 + 0.058703077605677195 ], [ - 0.0 + 0.16072149851624254 ], [ - 0.016613944069042225 + 0.023423884975887592 ], [ - 0.07231268180104758 + 0 ], [ - 0.05529823299574952 + 0.09848969388015519 ], [ - 0.0 + 0 ], [ - 0.031245149633159944 + 0.07115616806465831 ], [ - 0.3394211436802214 + 0.006619246786096463 ], [ - 0.0 + 0.17937376301189908 ], [ - 8.326672684688675E-18 + 0.08497560669486202 ], [ - 0.22281324263892777 + 0 ], [ - 0.03771869320668919 + 0.14554870099119982 ], [ - 0.0 + 6.66133814775094e-17 ] ], [ [ - 0.10252130515131284 + 0.148621109870428 ], [ - 0.11234114671288867 + 0.02258477410515397 ], [ - 0.01426028539977749 + 0.05941112419167505 ], [ - 0.0 + 0.1589352193007757 ], [ - 0.016490366470981604 + 0.025039874948185978 ], [ - 0.07207855158423336 + 0 ], [ - 0.053427937118377004 + 0.09833707058820564 ], [ - 0.0 + 0 ], [ - 0.03166929129461489 + 0.07153844001804327 ], [ - 0.33804519161154567 + 0.00882566238146193 ], [ - 0.0 + 0.17731028228115686 ], [ - 1.1102230246251566E-17 + 0.08514462478863115 ], [ - 0.22015995858682338 + 0 ], [ - 0.039005966069445196 + 0.14425181752628236 ], [ - 0.0 + 8.881784197001253e-17 ] ], [ [ - 0.10616942893527548 + 0.1471799739678376 ], [ - 0.1096737768677983 + 0.024243434510004713 ], [ - 0.01782535674972186 + 0.0601191707776729 ], [ - 0.0 + 0.15714894008530889 ], [ - 0.016366788872920982 + 0.026655864920484357 ], [ - 0.07184442136741916 + 0 ], [ - 0.05155764124100449 + 0.09818444729625608 ], [ - 0.0 + 0 ], [ - 0.03209343295606983 + 0.07192071197142824 ], [ - 0.33666923954287 + 0.011032077976827398 ], [ - 0.0 + 0.1752468015504146 ], [ - 1.3877787807814457E-17 + 0.08531364288240026 ], [ - 0.21750667453471895 + 0 ], [ - 0.04029323893220119 + 0.14295493406136484 ], [ - 0.0 + 1.1102230246251565e-16 ] ], [ [ - 0.10923528381229823 + 0.14362257624775526 ], [ - 0.10662992774774285 + 0.027633969468397364 ], [ - 0.020879294904072743 + 0.06126926499476355 ], [ - 0.0 + 0.15276867035462738 ], [ - 0.016054744539805724 + 0.029749758935523743 ], [ - 0.07102041712747902 + 0 ], [ - 0.048986600886157125 + 0.09741282616486163 ], [ - 0.0 + 0 ], [ - 0.032227440614115976 + 0.07222619235841256 ], [ - 0.3341462374286546 + 0.015174453548741541 ], [ - 0.0 + 0.1701012147431938 ], [ - 0.0055332699566346556 + 0.08520257234773208 ], [ - 0.21437772738638727 + 5.551115123125783e-18 ], [ - 0.04090905559665201 + 0.13954041194732952 ], [ - 0.0 + 0.005298088888661734 ] ], [ [ - 0.11230113868932098 + 0.14006517852767292 ], [ - 0.10358607862768737 + 0.031024504426790014 ], [ - 0.023933233058423625 + 0.06241935921185421 ], [ - 0.0 + 0.1483884006239459 ], [ - 0.01574270020669046 + 0.03284365295056312 ], [ - 0.07019641288753888 + 0 ], [ - 0.04641556053130976 + 0.09664120503346717 ], [ - 0.0 + 0 ], [ - 0.03236144827216211 + 0.07253167274539687 ], [ - 0.33162323531443927 + 0.01931682912065568 ], [ - 0.0 + 0.16495562793597296 ], [ - 0.011066539913269297 + 0.08509150181306388 ], [ - 0.21124878023805554 + 1.1102230246251566e-17 ], [ - 0.04152487226110282 + 0.13612588983329416 ], [ - 0.0 + 0.010596177777323357 ] ], [ [ - 0.11536699356634375 + 0.13650778080759057 ], [ - 0.1005422295076319 + 0.034415039385182665 ], [ - 0.026987171212774507 + 0.06356945342894485 ], [ - 0.0 + 0.1440081308932644 ], [ - 0.015430655873575201 + 0.03593754696560251 ], [ - 0.06937240864759874 + 0 ], [ - 0.0438445201764624 + 0.0958695839020727 ], [ - 0.0 + 0 ], [ - 0.03249545593020825 + 0.07283715313238118 ], [ - 0.32910023320022386 + 0.023459204692569825 ], [ - 0.0 + 0.15981004112875213 ], [ - 0.01659980986990394 + 0.08498043127839569 ], [ - 0.20811983308972382 + 1.665334536937735e-17 ], [ - 0.04214068892555363 + 0.13271136771925882 ], [ - 0.0 + 0.015894266665984983 ] ], [ [ - 0.1184328484433665 + 0.13295038308750823 ], [ - 0.09749838038757644 + 0.037805574343575316 ], [ - 0.030041109367125386 + 0.0647195476460355 ], [ - 0.0 + 0.1396278611625829 ], [ - 0.015118611540459941 + 0.03903144098064189 ], [ - 0.0685484044076586 + 0 ], [ - 0.041273479821615035 + 0.09509796277067825 ], [ - 0.0 + 0 ], [ - 0.032629463588254394 + 0.0731426335193655 ], [ - 0.3265772310860085 + 0.027601580264483967 ], [ - 0.0 + 0.15466445432153134 ], [ - 0.02213307982653858 + 0.0848693607437275 ], [ - 0.20499088594139211 + 2.2204460492503132e-17 ], [ - 0.04275650559000444 + 0.1292968456052235 ], [ - 0.0 + 0.021192355554646602 ] ], [ [ - 0.12149870332038926 + 0.12939298536742588 ], [ - 0.09445453126752097 + 0.04119610930196796 ], [ - 0.03309504752147627 + 0.06586964186312616 ], [ - 0.0 + 0.1352475914319014 ], [ - 0.014806567207344681 + 0.042125334995681274 ], [ - 0.06772440016771845 + 0 ], [ - 0.03870243946676767 + 0.09432634163928379 ], [ - 0.0 + 0 ], [ - 0.03276347124630054 + 0.07344811390634981 ], [ - 0.32405422897179315 + 0.03174395583639811 ], [ - 0.0 + 0.1495188675143105 ], [ - 0.02766634978317322 + 0.08475829020905933 ], [ - 0.2018619387930604 + 2.7755575615628914e-17 ], [ - 0.04337232225445525 + 0.12588232349118816 ], [ - 0.0 + 0.026490444443308225 ] ], [ [ - 0.12402780520008304 + 0.1261866773783263 ], [ - 0.08994126689197282 + 0.043522425846934026 ], [ - 0.035826450823468935 + 0.06660463461262356 ], [ - 0.0 + 0.13127233680819322 ], [ - 0.013617697132298445 + 0.044154092366973804 ], [ - 0.06610610268468518 + 0 ], [ - 0.03424830389137719 + 0.09334438310430783 ], [ - 0.014610865085691883 + 0 ], [ - 0.03235354916896848 + 0.07331454343429407 ], [ - 0.31779900020862695 + 0.0347414266524314 ], [ - 0.0 + 0.14484256217383426 ], [ - 0.03213149399892054 + 0.08424937345015628 ], [ - 0.19646716858619448 + 0.004897010120729504 ], [ - 0.04287029632771195 + 0.12272260213448048 ], [ - 3.469446951953614E-18 + 0.030147931916715796 ] ], [ [ - 0.1265569070797768 + 0.12298036938922671 ], [ - 0.08542800251642467 + 0.04584874239190008 ], [ - 0.0385578541254616 + 0.06733962736212094 ], [ - 0.0 + 0.12729708218448504 ], [ - 0.012428827057252208 + 0.046182849738266335 ], [ - 0.06448780520165191 + 0 ], [ - 0.029794168315986698 + 0.09236242456933183 ], [ - 0.029221730171383766 + 0 ], [ - 0.03194362709163642 + 0.07318097296223833 ], [ - 0.31154377144546075 + 0.037738897468464684 ], [ - 0.0 + 0.14016625683335798 ], [ - 0.03659663821466786 + 0.08374045669125324 ], [ - 0.19107239837932852 + 0.00979402024145898 ], [ - 0.04236827040096864 + 0.11956288077777279 ], [ - 6.938893903907228E-18 + 0.03380541939012336 ] ], [ [ - 0.1290860089594706 + 0.11977406140012714 ], [ - 0.08091473814087652 + 0.04817505893686615 ], [ - 0.041289257427454276 + 0.06807462011161834 ], [ - 0.0 + 0.12332182756077686 ], [ - 0.011239956982205972 + 0.04821160710955885 ], [ - 0.06286950771861863 + 0 ], [ - 0.025340032740596208 + 0.09138046603435587 ], [ - 0.043832595257075654 + 0 ], [ - 0.03153370501430436 + 0.07304740249018259 ], [ - 0.30528854268229455 + 0.040736368284497976 ], [ - 0.0 + 0.13548995149288173 ], [ - 0.04106178243041518 + 0.08323153993235019 ], [ - 0.18567762817246258 + 0.014691030362188455 ], [ - 0.041866244474225336 + 0.1164031594210651 ], [ - 1.0408340855860844E-17 + 0.03746290686353093 ] ], [ [ - 0.13161511083916436 + 0.11656775341102754 ], [ - 0.07640147376532837 + 0.05050137548183221 ], [ - 0.044020660729446943 + 0.06880961286111573 ], [ - 0.0 + 0.11934657293706868 ], [ - 0.010051086907159733 + 0.05024036448085139 ], [ - 0.06125121023558537 + 0 ], [ - 0.020885897165205725 + 0.09039850749937989 ], [ - 0.05844346034276753 + 0 ], [ - 0.031123782936972304 + 0.07291383201812685 ], [ - 0.29903331391912835 + 0.04373383910053126 ], [ - 0.0 + 0.13081364615240548 ], [ - 0.0455269266461625 + 0.08272262317344714 ], [ - 0.18028285796559662 + 0.019588040482917932 ], [ - 0.041364218547482026 + 0.11324343806435742 ], [ - 1.3877787807814457E-17 + 0.041120394336938496 ] ], [ [ - 0.13414421271885812 + 0.11336144542192797 ], [ - 0.07188820938978022 + 0.05282769202679827 ], [ - 0.04675206403143961 + 0.06954460561061312 ], [ - 0.0 + 0.1153713183133605 ], [ - 0.008862216832113499 + 0.05226912185214391 ], [ - 0.05963291275255209 + 0 ], [ - 0.016431761589815238 + 0.08941654896440392 ], [ - 0.07305432542845941 + 0 ], [ - 0.030713860859640243 + 0.0727802615460711 ], [ - 0.2927780851559622 + 0.046731309916564545 ], [ - 0.0 + 0.1261373408119292 ], [ - 0.04999207086190982 + 0.0822137064145441 ], [ - 0.1748880877587307 + 0.024485050603647404 ], [ - 0.04086219262073872 + 0.11008371670764974 ], [ - 1.734723475976807E-17 + 0.04477788181034606 ] ], [ [ - 0.13472658993413184 + 0.11101187254015432 ], [ - 0.0700435903886749 + 0.05399580620097993 ], [ - 0.047764504735663536 + 0.06960469276983433 ], [ - -2.168404344971009E-20 + 0.11279151961773214 ], [ - 0.008181345317792715 + 0.05320799401784184 ], [ - 0.058897013928962495 + 0.004238856404527075 ], [ - 0.014315618471093737 + 0.08833505545148801 ], [ - 0.07816492315583318 + 2.7755575615628915e-18 ], [ - 0.0304859515343123 + 0.07260618662065368 ], [ - 0.28958529382378406 + 0.04815268804732608 ], [ - 0.0 + 0.12294732943869156 ], [ - 0.051371154215581236 + 0.0816024558538976 ], [ - 0.17255900834460416 + 0.02715352990364279 ], [ - 0.04050233380400567 + 0.10783245058135829 ], [ - 0.0034026723455601593 + 0.04651956255187236 ] ], [ [ - 0.1353089671494055 + 0.10866229965838067 ], [ - 0.06819897138756958 + 0.055163920375161574 ], [ - 0.04877694543988746 + 0.06966477992905552 ], [ - -4.336808689942018E-20 + 0.11021172092210377 ], [ - 0.007500473803471933 + 0.054146866183539755 ], [ - 0.05816111510537289 + 0.00847771280905415 ], [ - 0.012199475352372235 + 0.08725356193857207 ], [ - 0.08327552088320694 + 5.551115123125783e-18 ], [ - 0.03025804220898435 + 0.07243211169523625 ], [ - 0.2863925024916059 + 0.0495740661780876 ], [ - 0.0 + 0.1197573180654539 ], [ - 0.05275023756925264 + 0.08099120529325107 ], [ - 0.17022992893047761 + 0.029822009203638172 ], [ - 0.04014247498727261 + 0.10558118445506684 ], [ - 0.006805344691120301 + 0.04826124329339865 ] ], [ [ - 0.1358913443646792 + 0.10631272677660702 ], [ - 0.06635435238646425 + 0.056332034549343234 ], [ - 0.04978938614411138 + 0.06972486708827673 ], [ - -6.505213034913028E-20 + 0.10763192222647538 ], [ - 0.006819602289151149 + 0.055085738349237676 ], [ - 0.057425216281783285 + 0.012716569213581226 ], [ - 0.010083332233650733 + 0.08617206842565617 ], [ - 0.08838611861058071 + 8.326672684688675e-18 ], [ - 0.030030132883656406 + 0.07225803676981882 ], [ - 0.28319971115942777 + 0.05099544430884914 ], [ - 0.0 + 0.11656730669221625 ], [ - 0.05412932092292405 + 0.08037995473260456 ], [ - 0.1679008495163511 + 0.03249048850363356 ], [ - 0.03978261617053955 + 0.10332991832877539 ], [ - 0.010208017036680445 + 0.050002924034924956 ] ], [ [ - 0.13647372157995288 + 0.10396315389483338 ], [ - 0.06450973338535894 + 0.057500148723524894 ], [ - 0.050801826848335306 + 0.06978495424749792 ], [ - -8.673617379884036E-20 + 0.10505212353084702 ], [ - 0.006138730774830367 + 0.0560246105149356 ], [ - 0.05668931745819368 + 0.0169554256181083 ], [ - 0.007967189114929232 + 0.08509057491274023 ], [ - 0.09349671633795448 + 1.1102230246251566e-17 ], [ - 0.029802223558328456 + 0.0720839618444014 ], [ - 0.28000691982724957 + 0.05241682243961066 ], [ - 0.0 + 0.11337729531897858 ], [ - 0.055508404276595466 + 0.07976870417195804 ], [ - 0.16557177010222457 + 0.03515896780362895 ], [ - 0.039422757353806494 + 0.10107865220248394 ], [ - 0.013610689382240585 + 0.05174460477645124 ] ], [ [ - 0.13705609879522657 + 0.10161358101305971 ], [ - 0.06266511438425362 + 0.05866826289770655 ], [ - 0.05181426755255923 + 0.06984504140671913 ], [ - -1.0842021724855044E-19 + 0.10247232483521865 ], [ - 0.005457859260509583 + 0.05696348268063352 ], [ - 0.05595341863460408 + 0.021194282022635375 ], [ - 0.005851045996207732 + 0.08400908139982433 ], [ - 0.09860731406532823 + 1.3877787807814457e-17 ], [ - 0.029574314233000512 + 0.07190988691898396 ], [ - 0.2768141284950714 + 0.0538382005703722 ], [ - 0.0 + 0.11018728394574094 ], [ - 0.05688748763026688 + 0.07915745361131152 ], [ - 0.16324269068809805 + 0.03782744710362433 ], [ - 0.03906289853707343 + 0.09882738607619249 ], [ - 0.017013361727800727 + 0.053486285517977544 ] ], [ [ - 0.1393076866931149 + 0.08878500746703967 ], [ - 0.0501320915074029 + 0.06160437651231125 ], [ - 0.056773030789666695 + 0.06867829993977805 ], [ - -8.673617379884036E-20 + 0.08932851721243402 ], [ - 0.004366287408407667 + 0.060525399711750125 ], [ - 0.05045109188478358 + 0.03788662358208629 ], [ - 0.004680836796966186 + 0.07764289866149462 ], [ - 0.13152821990321473 + 0.02447249642484124 ], [ - 0.024981269415320268 + 0.06998516658579162 ], [ - 0.25254935073005785 + 0.05854736943053865 ], [ - 0.0 + 0.09421141168420553 ], [ - 0.06482742674648592 + 0.07457224252861741 ], [ - 0.14799186848565454 + 0.04841396256840079 ], [ - 0.03576644063744886 + 0.08702158971464335 ], [ - 0.036644399001475966 + 0.05832463797606763 ] ], [ [ - 0.14155927459100326 + 0.07595643392101961 ], [ - 0.03759906863055217 + 0.06454049012691596 ], [ - 0.061731794026774166 + 0.06751155847283695 ], [ - -6.505213034913026E-20 + 0.0761847095896494 ], [ - 0.00327471555630575 + 0.06408731674286672 ], [ - 0.04494876513496308 + 0.054578965141537206 ], [ - 0.003510627597724639 + 0.07127671592316492 ], [ - 0.16444912574110118 + 0.04894499284968246 ], [ - 0.020388224597640028 + 0.06806044625259927 ], [ - 0.22828457296504429 + 0.0632565382907051 ], [ - 0.0 + 0.07823553942267014 ], [ - 0.07276736586270496 + 0.06998703144592329 ], [ - 0.13274104628321104 + 0.05900047803317725 ], [ - 0.032469982737824275 + 0.07521579335309424 ], [ - 0.056275436275151206 + 0.06316299043415771 ] ], [ [ - 0.14381086248889158 + 0.06312786037499955 ], [ - 0.025066045753701444 + 0.06747660374152066 ], [ - 0.06669055726388164 + 0.06634481700589585 ], [ - -4.336808689942017E-20 + 0.06304090196686477 ], [ - 0.0021831437042038326 + 0.06764923377398332 ], [ - 0.03944643838514258 + 0.07127130670098811 ], [ - 0.0023404183984830924 + 0.06491053318483521 ], [ - 0.19737003157898766 + 0.07341748927452368 ], [ - 0.01579517977995978 + 0.06613572591940693 ], [ - 0.20401979520003066 + 0.06796570715087155 ], [ - 0.0 + 0.062259667161134735 ], [ - 0.08070730497892402 + 0.06540182036322918 ], [ - 0.11749022408076754 + 0.0695869934979537 ], [ - 0.029173524838199696 + 0.0634099969915451 ], [ - 0.07590647354882644 + 0.06800134289224781 ] ], [ [ - 0.14606245038677992 + 0.05029928682897951 ], [ - 0.012533022876850722 + 0.07041271735612536 ], [ - 0.0716493205009891 + 0.06517807553895477 ], [ - -2.1684043449710084E-20 + 0.04989709434408014 ], [ - 0.0010915718521019163 + 0.07121115080509993 ], [ - 0.03394411163532208 + 0.08796364826043904 ], [ - 0.0011702091992415462 + 0.0585443504465055 ], [ - 0.23029093741687412 + 0.09788998569936491 ], [ - 0.01120213496227954 + 0.06421100558621459 ], [ - 0.1797550174350171 + 0.072674876011038 ], [ - 0.0 + 0.04628379489959933 ], [ - 0.08864724409514306 + 0.060816609280535075 ], [ - 0.10223940187832403 + 0.08017350896273016 ], [ - 0.025877066938575118 + 0.05160420062999599 ], [ - 0.09553751082250168 + 0.0728396953503379 ] ], [ [ - 0.14831403828466827 + 0.03747071328295946 ], [ - 0.0 + 0.07334883097073007 ], [ - 0.07660808373809656 + 0.06401133407201368 ], [ - 0.0 + 0.03675328672129552 ], [ - 0.0 + 0.07477306783621653 ], [ - 0.028441784885501583 + 0.10465598981988994 ], [ - 0.0 + 0.0521781677081758 ], [ - 0.2632118432547606 + 0.12236248212420613 ], [ - 0.0066090901445992984 + 0.062286285253022246 ], [ - 0.15549023967000353 + 0.07738404487120445 ], [ - 0.0 + 0.030307922638063933 ], [ - 0.09658718321136212 + 0.05623139819784096 ], [ - 0.08698857967588053 + 0.09076002442750662 ], [ - 0.022580609038950542 + 0.039798404268446864 ], [ - 0.11516854809617691 + 0.07767804780842798 ] ] ], - "hovertemplate": "Risk: %{x}
Return: %{y}ACN: %{customdata[0]:.4%}
AMZN: %{customdata[1]:.4%}
COST: %{customdata[2]:.4%}
DIS: %{customdata[3]:.4%}
F: %{customdata[4]:.4%}
GILD: %{customdata[5]:.4%}
JPM: %{customdata[6]:.4%}
KO: %{customdata[7]:.4%}
LUV: %{customdata[8]:.4%}
MA: %{customdata[9]:.4%}
MSFT: %{customdata[10]:.4%}
PFE: %{customdata[11]:.4%}
TSLA: %{customdata[12]:.4%}
UNH: %{customdata[13]:.4%}
XOM: %{customdata[14]:.4%}
", + "hovertemplate": "Risk: %{x}
Return: %{y}MSFT: %{customdata[0]:.4%}
AMZN: %{customdata[1]:.4%}
KO: %{customdata[2]:.4%}
MA: %{customdata[3]:.4%}
COST: %{customdata[4]:.4%}
LUV: %{customdata[5]:.4%}
XOM: %{customdata[6]:.4%}
PFE: %{customdata[7]:.4%}
JPM: %{customdata[8]:.4%}
UNH: %{customdata[9]:.4%}
ACN: %{customdata[10]:.4%}
DIS: %{customdata[11]:.4%}
GILD: %{customdata[12]:.4%}
F: %{customdata[13]:.4%}
TSLA: %{customdata[14]:.4%}
", "line": { "color": "lightskyblue", "width": 2 }, "mode": "lines", "name": "Efficient frontier", + "type": "scatter", "x": [ - 0.493331722962542, - 0.49333172296254196, - 0.4933317229625418, - 0.4933317229625417, - 0.4933317229625416, - 0.49333172296254146, - 0.4514961463687282, - 0.4133867545662052, - 0.3801259066100254, - 0.35308647419825256, - 0.33378386570917207, - 0.32886038663002176, - 0.3240795384996451, - 0.31944772521782855, - 0.314971521748482, - 0.31065765461560807, - 0.3049632570792782, - 0.29936707889189823, - 0.2938747312016955, - 0.288492144281615, - 0.28322557607722193, - 0.2704064127003166, - 0.2583564786453835, - 0.24718829468654033, - 0.23702653215504413, - 0.22800579335679444, - 0.22695853813203803, - 0.22593008693392272, - 0.22492069770715983, - 0.2239306282230032, - 0.222960135853452, - 0.22182538636441498, - 0.22071444436339235, - 0.21962767112672052, - 0.2185654271778582, - 0.21752807186503353, - 0.2175140400942568, - 0.2175000107158525, - 0.21748598373028372, - 0.21747195913801343, - 0.21745793693950463, - 0.21356396438272712, - 0.20984372522654962, - 0.20630661826575583, - 0.2029622182889138, - 0.19982020156748126, - 0.1988160269741163, - 0.19782874595916433, - 0.19685861269570593, - 0.19590588193282932, - 0.19497080878424003, - 0.19358922987484098, - 0.19223610048352852, - 0.19091202553720513, - 0.1896176136869927, - 0.18835347649036552, - 0.18546705359198726, - 0.18268109446262296, - 0.18000026395511975, - 0.17742932738881168, - 0.17497312895202435, - 0.17387649346674147, - 0.17280237603115386, - 0.17175119912370135, - 0.17072338649271457, - 0.16971936261766588, - 0.16429149239051494, - 0.15991559476909864, - 0.15667983591612092, - 0.15465579545864636, - 0.1538912918559293 + 0.3305610102231674, + 0.33056101022316703, + 0.3305610102231665, + 0.33056101022316603, + 0.33056101022316553, + 0.33056101022316514, + 0.31054426009521546, + 0.29223788269627826, + 0.2759824438146675, + 0.26215973205552, + 0.2511717092654376, + 0.24008272651924814, + 0.22996247295937963, + 0.22094410543246784, + 0.21316752060338895, + 0.20677287373860673, + 0.19673202989472224, + 0.18801486144794977, + 0.18081291693488993, + 0.17531303431899423, + 0.1716788727251553, + 0.17068389189831612, + 0.1697019604019083, + 0.168733306055042, + 0.16777815882169209, + 0.16683675068835463, + 0.1645930041839463, + 0.16238997685529521, + 0.16022934828098273, + 0.158112856620681, + 0.15604229784796805, + 0.15492158725443322, + 0.15380944361829482, + 0.15270605411666996, + 0.15161160988055872, + 0.15052630602736386, + 0.14535816392591452, + 0.14036358433979768, + 0.13556175261721498, + 0.13097387033954339, + 0.1266231954498112, + 0.12631438474260037, + 0.1260064939904968, + 0.1256995299535658, + 0.1253934994376204, + 0.1250884092942767, + 0.12368677033625325, + 0.12230103734665308, + 0.12093175711671288, + 0.11957949483928107, + 0.11824483437391031, + 0.11723383822456575, + 0.11623085055735657, + 0.11523608048429188, + 0.11424974265682426, + 0.11327205735128006, + 0.11079153003386125, + 0.10835934565651524, + 0.10597883264210928, + 0.1036535511136601, + 0.10138730128557508, + 0.0992481566479735, + 0.09715841869124187, + 0.0951213437439668, + 0.0931403872508934, + 0.09121920536459488, + 0.08977963327813325, + 0.08836835547307931, + 0.08698674910427094, + 0.0856362502897851, + 0.0843183537606879, + 0.07725821097888286, + 0.07128519025882635, + 0.06669202606497267, + 0.06377754412721887, + 0.06277598850661081 ], "y": [ - 0.35258061107335176, - 0.3525806110733516, - 0.3525806110733514, - 0.3525806110733512, - 0.3525806110733511, - 0.35258061107335087, - 0.3482396674666515, - 0.3438987238599521, - 0.3395577802532528, - 0.3352168366465534, - 0.33087589303985393, - 0.32942540889772987, - 0.32797492475560575, - 0.32652444061348157, - 0.32507395647135745, - 0.3236234723292334, - 0.32165481223049486, - 0.31968615213175644, - 0.3177174920330179, - 0.31574883193427944, - 0.31378017183554097, - 0.30880047579678827, - 0.30382077975803556, - 0.2988410837192828, - 0.29386138768053016, - 0.28888169164177746, - 0.28825560658082383, - 0.2876295215198702, - 0.28700343645891657, - 0.28637735139796305, - 0.2857512663370094, - 0.28500401105918155, - 0.2842567557813537, - 0.28350950050352575, - 0.2827622452256978, - 0.28201498994786994, - 0.2820047574200254, - 0.2819945248921809, - 0.28198429236433636, - 0.28197405983649176, - 0.2819638273086472, - 0.27906085563239974, - 0.27615788395615226, - 0.2732549122799048, - 0.2703519406036573, - 0.26744896892740977, - 0.26648130564991, - 0.26551364237241015, - 0.2645459790949104, - 0.2635783158174106, - 0.2626106525399108, - 0.26115250819713604, - 0.25969436385436123, - 0.2582362195115865, - 0.2567780751688117, - 0.25531993082603693, - 0.2518927553458695, - 0.24846557986570209, - 0.2450384043855347, - 0.24161122890536726, - 0.23818405342519985, - 0.2366003441668894, - 0.23501663490857896, - 0.23343292565026855, - 0.2318492163919581, - 0.23026550713364768, - 0.220811281609008, - 0.2113570560843684, - 0.20190283055972869, - 0.19244860503508904, - 0.1829943795104494 - ], - "type": "scatter" + 0.21709173594783918, + 0.2170917359478386, + 0.21709173594783795, + 0.21709173594783737, + 0.21709173594783676, + 0.21709173594783615, + 0.2165701743597152, + 0.21604861277159423, + 0.21552705118347326, + 0.21500548959535232, + 0.21448392800723134, + 0.2138467202697318, + 0.21320951253223222, + 0.21257230479473266, + 0.21193509705723307, + 0.2112978893197335, + 0.21009968022275866, + 0.2089014711257838, + 0.20770326202880893, + 0.20650505293183408, + 0.20530684383485925, + 0.20485519119780296, + 0.20440353856074667, + 0.2039518859236903, + 0.20350023328663402, + 0.20304858064957768, + 0.2019545344341978, + 0.2008604882188179, + 0.19976644200343804, + 0.19867239578805818, + 0.19757834957267828, + 0.196977108403775, + 0.19637586723487163, + 0.19577462606596835, + 0.19517338489706504, + 0.19457214372816176, + 0.19165179759169038, + 0.188731451455219, + 0.18581110531874764, + 0.1828907591822763, + 0.1799704130458049, + 0.17975658455067073, + 0.17954275605553657, + 0.17932892756040233, + 0.17911509906526818, + 0.178901270570134, + 0.17791192241586848, + 0.1769225742616029, + 0.17593322610733741, + 0.1749438779530719, + 0.17395452979880638, + 0.17319707993917396, + 0.17243963007954152, + 0.17168218021990903, + 0.1709247303602766, + 0.17016728050064414, + 0.16821884058931127, + 0.16627040067797835, + 0.16432196076664543, + 0.16237352085531256, + 0.16042508094397964, + 0.1585399161834505, + 0.1566547514229214, + 0.15476958666239227, + 0.15288442190186316, + 0.15099925714133403, + 0.14954972003831205, + 0.14810018293528998, + 0.14665064583226797, + 0.1452011087292459, + 0.1437515716262239, + 0.1353777891000225, + 0.12700400657382105, + 0.11863022404761961, + 0.1102564415214182, + 0.10188265899521673 + ] }, { "customdata": [ [ - 0.13156227675372253, - 0.07649575790530462, - 0.043963600475531425, - 0.0, - 0.010075922942286888, - 0.061285017204049295, - 0.020978946077726462, - 0.05813823274378687, - 0.03113234639510428, - 0.29916398848529946, - 0.0, - 0.045433647758151306, - 0.18039555716223127, - 0.04137470609680558, - 1.3805309487282116E-17 + 0.07025287074403576, + 0.0658458815202479, + 0.06699282709213952, + 0.07034099384886607, + 0.06567093932921819, + 0.06200035336639235, + 0.06844632131116596, + 0.05982542542130668, + 0.06720471868639659, + 0.0653502271960766, + 0.07113269229596367, + 0.0679484539691573, + 0.06370722579128647, + 0.06996695526824016, + 0.065314114159507 ], [ - 1.3617323952814073 + 1.78527332193839 ] ], - "hovertemplate": "Sharpe: %{{customdata[1]:.4}}
Risk: %{x}
Return: %{y}ACN: %{customdata[0]:.4%}
AMZN: %{customdata[1]:.4%}
COST: %{customdata[2]:.4%}
DIS: %{customdata[3]:.4%}
F: %{customdata[4]:.4%}
GILD: %{customdata[5]:.4%}
JPM: %{customdata[6]:.4%}
KO: %{customdata[7]:.4%}
LUV: %{customdata[8]:.4%}
MA: %{customdata[9]:.4%}
MSFT: %{customdata[10]:.4%}
PFE: %{customdata[11]:.4%}
TSLA: %{customdata[12]:.4%}
UNH: %{customdata[13]:.4%}
XOM: %{customdata[14]:.4%}
", + "hovertemplate": "Sharpe: %{{customdata[1]:.4}}
Risk: %{x}
Return: %{y}MSFT: %{customdata[0]:.4%}
AMZN: %{customdata[1]:.4%}
KO: %{customdata[2]:.4%}
MA: %{customdata[3]:.4%}
COST: %{customdata[4]:.4%}
LUV: %{customdata[5]:.4%}
XOM: %{customdata[6]:.4%}
PFE: %{customdata[7]:.4%}
JPM: %{customdata[8]:.4%}
UNH: %{customdata[9]:.4%}
ACN: %{customdata[10]:.4%}
DIS: %{customdata[11]:.4%}
GILD: %{customdata[12]:.4%}
F: %{customdata[13]:.4%}
TSLA: %{customdata[14]:.4%}
", "marker": { "color": "coral", "size": 12, @@ -6281,13 +6215,13 @@ }, "mode": "markers", "name": "Max Sharpe Portfolio", + "type": "scatter", "x": [ - 0.17748187896031908 + 0.06905443262292238 ], "y": [ - 0.2416828241556801 - ], - "type": "scatter" + 0.12328103632329537 + ] }, { "hovertemplate": "Risk: %{x}
Return: %{y}", @@ -6298,116 +6232,95 @@ }, "mode": "markers", "name": "Assets", - "x": [ - 0.24455768468095113, - 0.493331722962542, - 0.30453601208018777, - 0.2985645845530357, - 0.3877886662640967, - 0.4522288096303457, - 0.3650640671954181, - 0.2183951319084959, - 0.3701679309281042, - 0.24038998679008425, - 0.3133726691621561, - 0.2658080261671054, - 0.3790015926095876, - 0.3613958916746025, - 0.24883349140454966 - ], - "y": [ - 0.20201127420114892, - 0.35258061107335176, - 0.1756723529878449, - 0.2065326755220123, - 0.24110517437363252, - 0.24091210894821097, - 0.26308967252098153, - 0.11817473805046842, - 0.2241305400606434, - 0.24444845321680575, - 0.21557714269675948, - 0.1525603997308656, - 0.3091685882934678, - 0.19374826076199883, - 0.139997175275977 - ], - "type": "scatter" + "type": "scatter", + "x": { + "bdata": "pRVpKb2M1T/FdQPWvorLP3wf/tzFo9E/0r5Uoro71j95J/QR/VXOPyvRBHWWXsk/4cv6db130D9pkhf1PtzGP+5ERgfYjtA/tf2caXQMzT8+cA9e6SfVP3UyhOzCztA/9wfLrrRhyj9y8s9nJkXVP9ZX60RkWco/", + "dtype": "f8" + }, + "y": { + "bdata": "+RcTgKfJyT+hRQmX4/+3PyjrZ73/Lro/YKUBCR63yj/Qq9KEUBy4P3hmZhFSmK0/sEAusN1/wD8KG1B/IhepP5ZzE67Bp7w/Ecw0qfoqtD/1XBB5qcnLP3mIYw4J474/+FR7uPvOsj/URL8TPA/IP7tYGjtDjrY/", + "dtype": "f8" + } } ], "layout": { "template": { "data": { - "histogram2dcontour": [ + "bar": [ { - "type": "histogram2dcontour", - "colorbar": { - "outlinewidth": 0, - "ticks": "" + "error_x": { + "color": "#2a3f5f" }, - "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" - ] - ] + "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": [ { - "type": "choropleth", "colorbar": { "outlinewidth": 0, "ticks": "" - } + }, + "type": "choropleth" } ], - "histogram2d": [ + "contour": [ { - "type": "histogram2d", "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ - 0.0, + 0, "#0d0887" ], [ @@ -6443,73 +6356,31 @@ "#fdca26" ], [ - 1.0, + 1, "#f0f921" ] - ] + ], + "type": "contour" } ], - "heatmap": [ + "contourcarpet": [ { - "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" - ] - ] + "type": "contourcarpet" } ], - "heatmapgl": [ + "heatmap": [ { - "type": "heatmapgl", "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ - 0.0, + 0, "#0d0887" ], [ @@ -6545,31 +6416,34 @@ "#fdca26" ], [ - 1.0, + 1, "#f0f921" ] - ] + ], + "type": "heatmap" } ], - "contourcarpet": [ + "histogram": [ { - "type": "contourcarpet", - "colorbar": { - "outlinewidth": 0, - "ticks": "" - } + "marker": { + "pattern": { + "fillmode": "overlay", + "size": 10, + "solidity": 0.2 + } + }, + "type": "histogram" } ], - "contour": [ + "histogram2d": [ { - "type": "contour", "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ - 0.0, + 0, "#0d0887" ], [ @@ -6605,22 +6479,22 @@ "#fdca26" ], [ - 1.0, + 1, "#f0f921" ] - ] + ], + "type": "histogram2d" } ], - "surface": [ + "histogram2dcontour": [ { - "type": "surface", "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ - 0.0, + 0, "#0d0887" ], [ @@ -6656,187 +6530,203 @@ "#fdca26" ], [ - 1.0, + 1, "#f0f921" ] - ] + ], + "type": "histogram2dcontour" } ], "mesh3d": [ { - "type": "mesh3d", "colorbar": { "outlinewidth": 0, "ticks": "" - } - } - ], - "scatter": [ - { - "fillpattern": { - "fillmode": "overlay", - "size": 10, - "solidity": 0.2 }, - "type": "scatter" + "type": "mesh3d" } ], "parcoords": [ { - "type": "parcoords", "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } - } + }, + "type": "parcoords" } ], - "scatterpolargl": [ + "pie": [ { - "type": "scatterpolargl", - "marker": { + "automargin": true, + "type": "pie" + } + ], + "scatter": [ + { + "fillpattern": { + "fillmode": "overlay", + "size": 10, + "solidity": 0.2 + }, + "type": "scatter" + } + ], + "scatter3d": [ + { + "line": { "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 + "colorbar": { + "outlinewidth": 0, + "ticks": "" } }, - "type": "bar" + "type": "scatter3d" } ], - "scattergeo": [ + "scattercarpet": [ { - "type": "scattergeo", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } - } + }, + "type": "scattercarpet" } ], - "scatterpolar": [ + "scattergeo": [ { - "type": "scatterpolar", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } - } - } - ], - "histogram": [ - { - "marker": { - "pattern": { - "fillmode": "overlay", - "size": 10, - "solidity": 0.2 - } }, - "type": "histogram" + "type": "scattergeo" } ], "scattergl": [ { - "type": "scattergl", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } - } + }, + "type": "scattergl" } ], - "scatter3d": [ + "scattermap": [ { - "type": "scatter3d", - "line": { + "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, + "type": "scattermap" + } + ], + "scattermapbox": [ + { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } - } + }, + "type": "scattermapbox" } ], - "scattermapbox": [ + "scatterpolar": [ { - "type": "scattermapbox", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } - } + }, + "type": "scatterpolar" } ], - "scatterternary": [ + "scatterpolargl": [ { - "type": "scatterternary", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } - } + }, + "type": "scatterpolargl" } ], - "scattercarpet": [ + "scatterternary": [ { - "type": "scattercarpet", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } - } + }, + "type": "scatterternary" } ], - "carpet": [ + "surface": [ { - "aaxis": { - "endlinecolor": "#2a3f5f", - "gridcolor": "white", - "linecolor": "white", - "minorgridcolor": "white", - "startlinecolor": "#2a3f5f" - }, - "baxis": { - "endlinecolor": "#2a3f5f", - "gridcolor": "white", - "linecolor": "white", - "minorgridcolor": "white", - "startlinecolor": "#2a3f5f" + "colorbar": { + "outlinewidth": 0, + "ticks": "" }, - "type": "carpet" + "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": [ @@ -6859,84 +6749,15 @@ }, "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": "" - } + "annotationdefaults": { + "arrowcolor": "#2a3f5f", + "arrowhead": 0, + "arrowwidth": 1 }, + "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, @@ -6944,51 +6765,55 @@ } }, "colorscale": { - "sequential": [ + "diverging": [ [ - 0.0, - "#0d0887" + 0, + "#8e0152" ], [ - 0.1111111111111111, - "#46039f" + 0.1, + "#c51b7d" ], [ - 0.2222222222222222, - "#7201a8" + 0.2, + "#de77ae" ], [ - 0.3333333333333333, - "#9c179e" + 0.3, + "#f1b6da" ], [ - 0.4444444444444444, - "#bd3786" + 0.4, + "#fde0ef" ], [ - 0.5555555555555556, - "#d8576b" + 0.5, + "#f7f7f7" ], [ - 0.6666666666666666, - "#ed7953" + 0.6, + "#e6f5d0" ], [ - 0.7777777777777778, - "#fb9f3a" + 0.7, + "#b8e186" ], [ - 0.8888888888888888, - "#fdca26" + 0.8, + "#7fbc41" ], [ - 1.0, - "#f0f921" + 0.9, + "#4d9221" + ], + [ + 1, + "#276419" ] ], - "sequentialminus": [ + "sequential": [ [ - 0.0, + 0, "#0d0887" ], [ @@ -7024,106 +6849,125 @@ "#fdca26" ], [ - 1.0, + 1, "#f0f921" ] ], - "diverging": [ + "sequentialminus": [ [ 0, - "#8e0152" - ], - [ - 0.1, - "#c51b7d" + "#0d0887" ], [ - 0.2, - "#de77ae" + 0.1111111111111111, + "#46039f" ], [ - 0.3, - "#f1b6da" + 0.2222222222222222, + "#7201a8" ], [ - 0.4, - "#fde0ef" + 0.3333333333333333, + "#9c179e" ], [ - 0.5, - "#f7f7f7" + 0.4444444444444444, + "#bd3786" ], [ - 0.6, - "#e6f5d0" + 0.5555555555555556, + "#d8576b" ], [ - 0.7, - "#b8e186" + 0.6666666666666666, + "#ed7953" ], [ - 0.8, - "#7fbc41" + 0.7777777777777778, + "#fb9f3a" ], [ - 0.9, - "#4d9221" + 0.8888888888888888, + "#fdca26" ], [ 1, - "#276419" + "#f0f921" ] ] }, - "xaxis": { - "gridcolor": "white", - "linecolor": "white", - "ticks": "", - "title": { - "standoff": 15 - }, - "zerolinecolor": "white", - "automargin": true, - "zerolinewidth": 2 + "colorway": [ + "#636efa", + "#EF553B", + "#00cc96", + "#ab63fa", + "#FFA15A", + "#19d3f3", + "#FF6692", + "#B6E880", + "#FF97FF", + "#FECB52" + ], + "font": { + "color": "#2a3f5f" }, - "yaxis": { - "gridcolor": "white", - "linecolor": "white", - "ticks": "", - "title": { - "standoff": 15 + "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": "" }, - "zerolinecolor": "white", - "automargin": true, - "zerolinewidth": 2 + "bgcolor": "#E5ECF6", + "radialaxis": { + "gridcolor": "white", + "linecolor": "white", + "ticks": "" + } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", + "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", - "zerolinecolor": "white", - "gridwidth": 2 + "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", + "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", - "zerolinecolor": "white", - "gridwidth": 2 + "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", + "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", - "zerolinecolor": "white", - "gridwidth": 2 + "zerolinecolor": "white" } }, "shapedefaults": { @@ -7131,24 +6975,48 @@ "color": "#2a3f5f" } }, - "annotationdefaults": { - "arrowcolor": "#2a3f5f", - "arrowhead": 0, - "arrowwidth": 1 - }, - "geo": { - "bgcolor": "white", - "landcolor": "#E5ECF6", - "subunitcolor": "white", - "showland": true, - "showlakes": true, - "lakecolor": "white" + "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 }, - "mapbox": { - "style": "light" + "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 } } }, @@ -7162,47 +7030,17 @@ "text": "Return" } } - }, - "config": { - "plotlyServerURL": "https://plot.ly" } - }, - "text/html": [ - "
" - ] + } }, "metadata": {}, - "output_type": "display_data", - "jetTransient": { - "display_id": null - } + "output_type": "display_data" } ], - "execution_count": 55 + "source": [ + "ax = plotting.plot_efficient_frontier(cla, showfig=False, interactive=True)\n", + "ax.show()" + ] }, { "cell_type": "markdown", @@ -7224,13 +7062,15 @@ }, { "cell_type": "code", + "execution_count": 105, "metadata": { - "id": "OavRfyqJ9nzT", "ExecuteTime": { "end_time": "2025-11-12T08:11:03.546654Z", "start_time": "2025-11-12T08:11:03.525307Z" - } + }, + "id": "OavRfyqJ9nzT" }, + "outputs": [], "source": [ "import cvxpy as cp\n", "\n", @@ -7240,50 +7080,47 @@ "ef = EfficientFrontier(mu, S,)\n", "big_tech_indices = [t in {\"MSFT\", \"AMZN\", \"TSLA\"} for t in tickers]\n", "ef.add_constraint(lambda w: cp.sum(w[big_tech_indices]) <= 0.3)" - ], - "outputs": [], - "execution_count": 56 + ] }, { "cell_type": "code", + "execution_count": 106, "metadata": { "ExecuteTime": { "end_time": "2025-11-12T08:11:03.581303Z", "start_time": "2025-11-12T08:11:03.565993Z" } }, - "source": [ - "mu" - ], "outputs": [ { "data": { "text/plain": [ - "Ticker\n", - "ACN 0.202011\n", - "AMZN 0.352581\n", - "COST 0.175672\n", - "DIS 0.206533\n", - "F 0.241105\n", - "GILD 0.240912\n", - "JPM 0.263090\n", - "KO 0.118175\n", - "LUV 0.224131\n", - "MA 0.244448\n", - "MSFT 0.215577\n", - "PFE 0.152560\n", - "TSLA 0.309169\n", - "UNH 0.193748\n", - "XOM 0.139997\n", + "MSFT 0.201467\n", + "AMZN 0.093748\n", + "KO 0.102280\n", + "MA 0.208713\n", + "COST 0.094182\n", + "LUV 0.057803\n", + "XOM 0.128902\n", + "PFE 0.049005\n", + "JPM 0.111935\n", + "UNH 0.078781\n", + "ACN 0.217092\n", + "DIS 0.120652\n", + "GILD 0.073471\n", + "F 0.187965\n", + "TSLA 0.088108\n", "Name: mkt, dtype: float64" ] }, - "execution_count": 57, + "execution_count": 106, "metadata": {}, "output_type": "execute_result" } ], - "execution_count": 57 + "source": [ + "mu" + ] }, { "cell_type": "markdown", @@ -7296,39 +7133,36 @@ }, { "cell_type": "code", + "execution_count": 107, "metadata": { + "ExecuteTime": { + "end_time": "2025-11-12T08:11:03.791655Z", + "start_time": "2025-11-12T08:11:03.644554Z" + }, "colab": { "base_uri": "https://localhost:8080/", "height": 297 }, "id": "BOehDOq19nzT", - "outputId": "171cb51c-a5c4-402a-e17e-86d1dda072b1", - "ExecuteTime": { - "end_time": "2025-11-12T08:11:03.791655Z", - "start_time": "2025-11-12T08:11:03.644554Z" - } + "outputId": "171cb51c-a5c4-402a-e17e-86d1dda072b1" }, - "source": [ - "ax = plotting.plot_efficient_frontier(ef, ef_param=\"risk\", \n", - " ef_param_range=np.linspace(0.2, 0.5, 50), \n", - " showfig=False);" - ], "outputs": [ { "data": { + "image/png": "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1qxZIytXrpRPP/1U4uPjxd80VOoN7GNjYyUsLMw86jxhEwAqD399V69evVpuvPFGUxBRv359+eUvfyn79u0z6zIyMuThhx+Wpk2bmgKPFi1aSGJiollnWZa5xWLz5s0lKipKoqOj5dFHH3XtNz09XZ544glp1qyZVK9e3RSurF+/3qzTx5EjR5obxduFJLov9eqrr8oVV1xhjte4cWO56667yvX9owiWn/Xo0cMaN26caz47O9uKjo62EhMTvW5/zz33WLfddpvHsp49e1oPPfSQa3748OHWr371q0KPuWvXLkvf+tatW13LPvzwQyskJMQ6cuSI19dcunTJOnv2rGs6dOiQ2Yc+95Xz589bXbt2tUJDQ82+7UnndbmuBwCU3sWLF81vgD468bv6b3/7m/Xee+9Ze/bssb788kvr9ttvtzp06GB+O2fOnGnFxsZan376qXXgwAHrs88+sxYvXmxet2zZMqtWrVrWBx98YH3//ffW5s2brXnz5rn2O3r0aOuGG24wr927d6/ZV1RUlPXtt99a6enp1pw5c8zrjx49aiZ9j/obGhYWZo6hx9u+fbv14osvltt7D6bP4tmzZ0ucMfwa6PRDoh+G999/32P5sGHDrDvuuMPra/TDmpSU5LFsypQpVseOHT0CXe3ata2GDRtaV155pTV27Fjr1KlTrvVvvPGGVadOHY99ZGZmmnNZvny51+NOnTrV4x+uPfky0D377LMFviDcvyh0PQDAv4GuMn1Xnzx50hz3q6++sh555BGrT58+Vk5OToHtXnjhBfN7mJGRUWCdBjz9/ctfoNG3b19r0qRJ5vnChQvN76o7DZYa8s6dO+fz9xUMLvo40Pm1yvXUqVOSnZ1timnd6fyxY8e8vkaXX257rW59++23Zd26dfL888/Lhg0bZODAgeZY9j4aNWrksY/w8HCpV69eocedNGmSKW62p0OHDomvzZs3T3Jycryu0+W6HgDgX/78rt6zZ49pdtS6dWvTBlzbn6uDBw+a9uPJycly1VVXmerUjz76yPW6u+++Wy5evGheN2bMGHn//fclKyvLrPvqq6/M7+OVV14pNWrUcE3622lX53rz85//3FTr6j4feOABWbRokaSlpZXbe0fRwiUA3Xvvva7n2mmiY8eO0qZNG9MOoG/fvqXap7Y50Kk8paSklGk9AKD8+fO7+vbbbzch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", "text/plain": [ "
" - ], - "image/png": "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u3YmxH3yySdm9H77cBzatkrbaenArdq2S4fJ0IFutRF60V6wAAAAnsLlgU7bQenAtNqOSBvpa08Rbetl7yih7ZC04aGdhr3777/flLrpkBk6Ltnrr7/uGNVf2zDpOF86lIlW22rbpGuvvdZMpcRYdAAAwBO5tA2dFeutabcEd8GzCACeK8tKbegAAABQfQQ6AAAAiyPQAQAAWByBDgAAwOIIdAAAABZHoEON06m9QkNDudMAANQQAh0AAIDFEei8iA7YPHDgQFNa1qRJE/njH/9oZtKwz6v7wAMPmOnRdI7aVq1aOWbn0KEKExISpGXLlmZwZh2s+S9/+YvjvDpjh05MrzN6NGzYUPr16yfr1683+/RVZ/3QcXR8fHzMoudSL774onTo0MF8Ph1I+pZbbnHJfQEAwOoIdC6g05PpzBXR0dFmZgt91XXdXpN0lg2dau27774z8+XqDBx/+tOfzFy4CxYskA8++EDefvtt2bVrl7zxxhvSunVr87733ntP5s2bJy+//LLs3r1bVq9eLV27dnWcV4Pgxo0bZcWKFWaWjltvvVWGDRtmjh0wYICZzk0HRTxy5IhZNPzpNWgofPzxx83n07B5xRVX1OjXDwCAp3L51F/eRkNbbGyspKSkmCCldBozLbXSoJScnCyBgYE18rl1ftuilixZIs2aNZMdO3aYKda0tExL8LQUTUvo7HSfzos7ZMgQqVu3rimp03l37fteffVV86old0oDmwY03f7kk0+aka71nHqOoufU0jwtJQwKCjKfr0ePHjXydQMA4OkooatlWtJVNMzZ6bpu1/01RUvMbr/9dmnbtq0pMbOXwGm4Gj9+vPn8nTp1MiVnn332meN9WuJ25swZ876JEyfKP/7xDzl//rzZt23bNikoKJCOHTuaIGpfNJjaq3PLcs0115gQp+ccM2aMKRHMzc2tsa8dAABPRqCrZUlJSaXCnJ1u1/015YYbbpCTJ0/K4sWLZdOmTWaxt5/r2bOn7N+/31T9ani77bbbHG3atEpYq0W1zVv9+vXl/vvvN9Wj+fn5psRRq423bNliAqF92blzpzz33HPlXouWym3dulXeeust025vxowZ0r17dzl16lSNff0AAHgqH5u2eEeFJ8St7oToGn7KC3RK27VpiZeznThxQpo2bSr/+te/ZNCgQWbbhg0bzMda4jZixIhix3/6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" + ] }, "metadata": {}, - "output_type": "display_data", - "jetTransient": { - "display_id": null - } + "output_type": "display_data" } ], - "execution_count": 58 + "source": [ + "ax = plotting.plot_efficient_frontier(ef, ef_param=\"risk\", \n", + " ef_param_range=np.linspace(0.2, 0.5, 50), \n", + " showfig=False);" + ] }, { "cell_type": "markdown", @@ -7347,49 +7181,49 @@ }, { "cell_type": "code", + "execution_count": 108, "metadata": { + "ExecuteTime": { + "end_time": "2025-11-12T08:11:03.861119Z", + "start_time": "2025-11-12T08:11:03.853260Z" + }, "colab": { "base_uri": "https://localhost:8080/" }, "id": "esHxc73V9nzT", - "outputId": "decb7120-4d2e-49f3-f7d9-fcb5b78cdcce", - "ExecuteTime": { - "end_time": "2025-11-12T08:11:03.861119Z", - "start_time": "2025-11-12T08:11:03.853260Z" - } + "outputId": "decb7120-4d2e-49f3-f7d9-fcb5b78cdcce" }, - "source": [ - "n_samples = 10000\n", - "w = np.random.dirichlet(np.ones(len(mu)), n_samples)\n", - "rets = w.dot(mu)\n", - "stds = np.sqrt((w.T * (S @ w.T)).sum(axis=0))\n", - "sharpes = rets / stds\n", - "\n", - "print(\"Sample portfolio returns:\", rets)\n", - "print(\"Sample portfolio volatilities:\", stds)" - ], "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "Sample portfolio returns: [0.20296863 0.22650091 0.21093727 ... 0.24826296 0.22017591 0.19811965]\n", - "Sample portfolio volatilities: 0 0.176258\n", - "1 0.212849\n", - "2 0.186047\n", - "3 0.182062\n", - "4 0.202531\n", + "Sample portfolio returns: [0.12467897 0.12292268 0.13073263 ... 0.10921034 0.1218503 0.13818197]\n", + "Sample portfolio volatilities: 0 0.080237\n", + "1 0.084807\n", + "2 0.113201\n", + "3 0.088431\n", + "4 0.079990\n", " ... \n", - "9995 0.199046\n", - "9996 0.204033\n", - "9997 0.220805\n", - "9998 0.190212\n", - "9999 0.187209\n", + "9995 0.078739\n", + "9996 0.116583\n", + "9997 0.085528\n", + "9998 0.104105\n", + "9999 0.099938\n", "Length: 10000, dtype: float64\n" ] } ], - "execution_count": 59 + "source": [ + "n_samples = 10000\n", + "w = np.random.dirichlet(np.ones(len(mu)), n_samples)\n", + "rets = w.dot(mu)\n", + "stds = np.sqrt((w.T * (S @ w.T)).sum(axis=0))\n", + "sharpes = rets / stds\n", + "\n", + "print(\"Sample portfolio returns:\", rets)\n", + "print(\"Sample portfolio volatilities:\", stds)" + ] }, { "cell_type": "markdown", @@ -7402,13 +7236,15 @@ }, { "cell_type": "code", + "execution_count": 109, "metadata": { - "id": "H3nL43aM9nzT", "ExecuteTime": { "end_time": "2025-11-12T08:11:03.903943Z", "start_time": "2025-11-12T08:11:03.892669Z" - } + }, + "id": "H3nL43aM9nzT" }, + "outputs": [], "source": [ "# mus = []\n", "# stds = []\n", @@ -7422,24 +7258,43 @@ "# mus.append(ret)\n", "# stds.append(std)\n", "# sharpes.append(ret / std)" - ], - "outputs": [], - "execution_count": 60 + ] }, { "cell_type": "code", + "execution_count": 110, "metadata": { + "ExecuteTime": { + "end_time": "2025-11-12T08:11:04.201554Z", + "start_time": "2025-11-12T08:11:03.927248Z" + }, "colab": { "base_uri": "https://localhost:8080/", "height": 297 }, "id": "WjCjkC9p9nzU", - "outputId": "386b35b3-75fd-4186-8f65-f16317246965", - "ExecuteTime": { - "end_time": "2025-11-12T08:11:04.201554Z", - "start_time": "2025-11-12T08:11:03.927248Z" - } + "outputId": "386b35b3-75fd-4186-8f65-f16317246965" }, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\shuvam\\sparkle\\pyportfolio\\pypfopt\\base\\_base_optimizer.py:335: UserWarning: Solution may be inaccurate. Try another solver, adjusting the solver settings, or solve with verbose=True for more information.\n", + " self._opt.solve(\n" + ] + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], "source": [ "# Plot efficient frontier with Monte Carlo sim\n", "ef = EfficientFrontier(mu, S)\n", @@ -7460,36 +7315,14 @@ "ax.legend()\n", "plt.tight_layout()\n", "plt.show()\n" - ], - "outputs": [ - { - "data": { - "text/plain": [ - "
" - ], - "image/png": "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" - }, - "metadata": {}, - "output_type": "display_data", - "jetTransient": { - "display_id": null - } - } - ], - "execution_count": 61 + ] }, { "cell_type": "code", - "metadata": { - "id": "dZ0tR7Lt9nzU", - "ExecuteTime": { - "end_time": "2025-11-12T08:11:04.252440Z", - "start_time": "2025-11-12T08:11:04.243455Z" - } - }, - "source": [], + "execution_count": null, + "metadata": {}, "outputs": [], - "execution_count": null + "source": [] } ], "metadata": { @@ -7501,9 +7334,9 @@ "provenance": [] }, "kernelspec": { - "display_name": "Python 3 (ipykernel)", - "name": "python3", - "language": "python" + "display_name": "Python 3", + "language": "python", + "name": "python3" }, "language_info": { "codemirror_mode": { @@ -7515,7 +7348,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.12.4" + "version": "3.11.0" } }, "nbformat": 4, diff --git a/cookbook/3-Advanced-Mean-Variance-Optimisation.ipynb b/cookbook/3-Advanced-Mean-Variance-Optimisation.ipynb index d15ccf97..54a3eb39 100644 --- a/cookbook/3-Advanced-Mean-Variance-Optimisation.ipynb +++ b/cookbook/3-Advanced-Mean-Variance-Optimisation.ipynb @@ -18,7 +18,7 @@ "\n", "## Acquiring data\n", "\n", - "As discussed in the previous notebook, assets are an exogenous input (i.e you must come up with a list of tickers). We will use `yfinance` to download data for thesee tickers\n", + "As discussed in the previous notebook, assets are an exogenous input (i.e you must come up with a list of tickers). We will use `load_stockdata` from `pypfopt.data.data_loader` to import data for thesee tickers\n", "\n", "[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/pyportfolio/pyportfolioopt/blob/master/cookbook/3-Advanced-Mean-Variance-Optimisation.ipynb)\n", " \n", @@ -31,346 +31,126 @@ }, { "cell_type": "code", + "execution_count": 57, "metadata": { + "ExecuteTime": { + "end_time": "2025-11-12T08:11:09.802872Z", + "start_time": "2025-11-12T08:11:09.179468Z" + }, "colab": { "base_uri": "https://localhost:8080/" }, "id": "kWJJAvG4_iEz", - "outputId": "26b7d743-eb20-4fb5-a99d-f4a5098ee8ad", - "ExecuteTime": { - "end_time": "2025-11-12T08:11:09.802872Z", - "start_time": "2025-11-12T08:11:09.179468Z" - } + "outputId": "26b7d743-eb20-4fb5-a99d-f4a5098ee8ad" }, - "source": [ - "!pip install pandas numpy matplotlib yfinance PyPortfolioOpt\n", - "import os\n", - "if not os.path.isdir('data'):\n", - " os.system('git clone https://github.com/pyportfolio/pyportfolioopt.git')\n", - " os.chdir('PyPortfolioOpt/cookbook')" - ], "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "Requirement already satisfied: pandas in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (2.3.3)\r\n", - "Requirement already satisfied: numpy in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (2.3.4)\r\n", - "Requirement already satisfied: matplotlib in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (3.10.7)\r\n", - "Requirement already satisfied: yfinance in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (0.2.66)\r\n", - "Requirement already satisfied: PyPortfolioOpt in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (1.5.6)\r\n", - "Requirement already satisfied: python-dateutil>=2.8.2 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from pandas) (2.9.0.post0)\r\n", - "Requirement already satisfied: pytz>=2020.1 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from pandas) (2025.2)\r\n", - "Requirement already satisfied: tzdata>=2022.7 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from pandas) (2025.2)\r\n", - "Requirement already satisfied: contourpy>=1.0.1 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from matplotlib) (1.3.3)\r\n", - "Requirement already satisfied: cycler>=0.10 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from matplotlib) (0.12.1)\r\n", - "Requirement already satisfied: fonttools>=4.22.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from matplotlib) (4.60.1)\r\n", - "Requirement already satisfied: kiwisolver>=1.3.1 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from matplotlib) (1.4.9)\r\n", - "Requirement already satisfied: packaging>=20.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from matplotlib) (25.0)\r\n", - "Requirement already satisfied: pillow>=8 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from matplotlib) (12.0.0)\r\n", - "Requirement already satisfied: pyparsing>=3 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from matplotlib) (3.2.5)\r\n", - "Requirement already satisfied: requests>=2.31 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from yfinance) (2.32.5)\r\n", - "Requirement already satisfied: multitasking>=0.0.7 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from yfinance) (0.0.12)\r\n", - "Requirement already satisfied: platformdirs>=2.0.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from yfinance) (4.5.0)\r\n", - "Requirement already satisfied: frozendict>=2.3.4 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from yfinance) (2.4.7)\r\n", - "Requirement already satisfied: peewee>=3.16.2 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from yfinance) (3.18.3)\r\n", - "Requirement already satisfied: beautifulsoup4>=4.11.1 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from yfinance) (4.14.2)\r\n", - "Requirement already satisfied: curl_cffi>=0.7 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from yfinance) (0.13.0)\r\n", - "Requirement already satisfied: protobuf>=3.19.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from yfinance) (6.33.0)\r\n", - "Requirement already satisfied: websockets>=13.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from yfinance) (15.0.1)\r\n", - "Requirement already satisfied: cvxpy>=1.1.19 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from PyPortfolioOpt) (1.7.3)\r\n", - "Requirement already satisfied: scikit-learn>=0.24.1 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from PyPortfolioOpt) (1.7.2)\r\n", - "Requirement already satisfied: scipy>=1.3.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from PyPortfolioOpt) (1.16.3)\r\n", - "Requirement already satisfied: soupsieve>1.2 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from beautifulsoup4>=4.11.1->yfinance) (2.8)\r\n", - "Requirement already satisfied: typing-extensions>=4.0.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from beautifulsoup4>=4.11.1->yfinance) (4.15.0)\r\n", - "Requirement already satisfied: cffi>=1.12.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from curl_cffi>=0.7->yfinance) (2.0.0)\r\n", - "Requirement already satisfied: certifi>=2024.2.2 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from curl_cffi>=0.7->yfinance) (2025.11.12)\r\n", - "Requirement already satisfied: osqp>=1.0.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from cvxpy>=1.1.19->PyPortfolioOpt) (1.0.5)\r\n", - "Requirement already satisfied: clarabel>=0.5.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from cvxpy>=1.1.19->PyPortfolioOpt) (0.11.1)\r\n", - "Requirement already satisfied: scs>=3.2.4.post1 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from cvxpy>=1.1.19->PyPortfolioOpt) (3.2.9)\r\n", - "Requirement already satisfied: six>=1.5 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from python-dateutil>=2.8.2->pandas) (1.17.0)\r\n", - "Requirement already satisfied: charset_normalizer<4,>=2 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from requests>=2.31->yfinance) (3.4.4)\r\n", - "Requirement already satisfied: idna<4,>=2.5 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from requests>=2.31->yfinance) (3.11)\r\n", - "Requirement already satisfied: urllib3<3,>=1.21.1 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from requests>=2.31->yfinance) (2.5.0)\r\n", - "Requirement already satisfied: joblib>=1.2.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from scikit-learn>=0.24.1->PyPortfolioOpt) (1.5.2)\r\n", - "Requirement already satisfied: threadpoolctl>=3.1.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from scikit-learn>=0.24.1->PyPortfolioOpt) (3.6.0)\r\n", - "Requirement already satisfied: pycparser in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from cffi>=1.12.0->curl_cffi>=0.7->yfinance) (2.23)\r\n", - "Requirement already satisfied: jinja2 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from osqp>=1.0.0->cvxpy>=1.1.19->PyPortfolioOpt) (3.1.6)\r\n", - "Requirement already satisfied: setuptools in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from osqp>=1.0.0->cvxpy>=1.1.19->PyPortfolioOpt) (80.9.0)\r\n", - "Requirement already satisfied: MarkupSafe>=2.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from jinja2->osqp>=1.0.0->cvxpy>=1.1.19->PyPortfolioOpt) (3.0.3)\r\n", - "\r\n", - "\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m A new release of pip is available: \u001B[0m\u001B[31;49m24.3.1\u001B[0m\u001B[39;49m -> \u001B[0m\u001B[32;49m25.3\u001B[0m\r\n", - "\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m To update, run: \u001B[0m\u001B[32;49mpip install --upgrade pip\u001B[0m\r\n" + "Requirement already satisfied: pandas in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (2.2.3)\n", + "Requirement already satisfied: numpy in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (2.4.2)\n", + "Requirement already satisfied: matplotlib in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (3.10.0)\n", + "Requirement already satisfied: PyPortfolioOpt in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (1.6.0)\n", + "Requirement already satisfied: python-dateutil>=2.8.2 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from pandas) (2.9.0.post0)\n", + "Requirement already satisfied: pytz>=2020.1 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from pandas) (2025.1)\n", + "Requirement already satisfied: tzdata>=2022.7 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from pandas) (2025.1)\n", + "Requirement already satisfied: contourpy>=1.0.1 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from matplotlib) (1.3.1)\n", + "Requirement already satisfied: cycler>=0.10 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from matplotlib) (0.12.1)\n", + "Requirement already satisfied: fonttools>=4.22.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from matplotlib) (4.56.0)\n", + "Requirement already satisfied: kiwisolver>=1.3.1 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from matplotlib) (1.4.8)\n", + "Requirement already satisfied: packaging>=20.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from matplotlib) (24.2)\n", + "Requirement already satisfied: pillow>=8 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from matplotlib) (11.1.0)\n", + "Requirement already satisfied: pyparsing>=2.3.1 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from matplotlib) (3.2.1)\n", + "Requirement already satisfied: cvxpy>=1.1.19 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from PyPortfolioOpt) (1.8.1)\n", + "Requirement already satisfied: scikit-base<0.14.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from PyPortfolioOpt) (0.13.1)\n", + "Requirement already satisfied: scikit-learn>=0.24.1 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from PyPortfolioOpt) (1.6.1)\n", + "Requirement already satisfied: scipy>=1.3.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from PyPortfolioOpt) (1.15.2)\n", + "Requirement already satisfied: osqp>=1.0.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from cvxpy>=1.1.19->PyPortfolioOpt) (1.1.1)\n", + "Requirement already satisfied: clarabel>=0.5.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from cvxpy>=1.1.19->PyPortfolioOpt) (0.11.1)\n", + "Requirement already satisfied: scs>=3.2.4.post1 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from cvxpy>=1.1.19->PyPortfolioOpt) (3.2.11)\n", + "Requirement already satisfied: highspy>=1.11.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from cvxpy>=1.1.19->PyPortfolioOpt) (1.13.1)\n", + "Requirement already satisfied: six>=1.5 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from python-dateutil>=2.8.2->pandas) (1.17.0)\n", + "Requirement already satisfied: joblib>=1.2.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from scikit-learn>=0.24.1->PyPortfolioOpt) (1.4.2)\n", + "Requirement already satisfied: threadpoolctl>=3.1.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from scikit-learn>=0.24.1->PyPortfolioOpt) (3.5.0)\n", + "Requirement already satisfied: cffi in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from clarabel>=0.5.0->cvxpy>=1.1.19->PyPortfolioOpt) (1.17.1)\n", + "Requirement already satisfied: jinja2 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from osqp>=1.0.0->cvxpy>=1.1.19->PyPortfolioOpt) (3.1.5)\n", + "Requirement already satisfied: setuptools in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from osqp>=1.0.0->cvxpy>=1.1.19->PyPortfolioOpt) (65.5.0)\n", + "Requirement already satisfied: pycparser in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from cffi->clarabel>=0.5.0->cvxpy>=1.1.19->PyPortfolioOpt) (2.22)\n", + "Requirement already satisfied: MarkupSafe>=2.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from jinja2->osqp>=1.0.0->cvxpy>=1.1.19->PyPortfolioOpt) (2.1.5)\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "[notice] A new release of pip available: 22.3 -> 26.0.1\n", + "[notice] To update, run: python.exe -m pip install --upgrade pip\n" ] } ], - "execution_count": 1 + "source": [ + "!pip install pandas numpy matplotlib PyPortfolioOpt\n", + "import os\n", + "if not os.path.isdir('data'):\n", + " os.system('git clone https://github.com/pyportfolio/pyportfolioopt.git')\n", + " os.chdir('PyPortfolioOpt/cookbook')" + ] }, { "cell_type": "code", + "execution_count": 58, "metadata": { - "id": "yd0GLGye_YO1", "ExecuteTime": { "end_time": "2025-11-12T08:11:10.264980Z", "start_time": "2025-11-12T08:11:09.806374Z" - } + }, + "id": "yd0GLGye_YO1" }, + "outputs": [], "source": [ - "import yfinance as yf\n", "import pandas as pd\n", - "import numpy as np" - ], - "outputs": [], - "execution_count": 2 + "import numpy as np\n", + "from pypfopt.data.data_loader import load_stockdata" + ] }, { "cell_type": "code", + "execution_count": 59, "metadata": { - "id": "HRko0Vbr_YO2", "ExecuteTime": { "end_time": "2025-11-12T08:11:10.269816Z", "start_time": "2025-11-12T08:11:10.268385Z" - } + }, + "id": "HRko0Vbr_YO2" }, + "outputs": [], "source": [ "tickers = [\"BLK\", \"BAC\", \"AAPL\", \"TM\", \"WMT\",\n", " \"JD\", \"INTU\", \"MA\", \"UL\", \"CVS\",\n", " \"DIS\", \"AMD\", \"NVDA\", \"PBI\", \"TGT\"]" - ], - "outputs": [], - "execution_count": 3 + ] }, { "cell_type": "code", + "execution_count": 60, "metadata": { - "colab": { - "base_uri": "https://localhost:8080/" - }, - "id": "b8QidoAw_YO2", - "outputId": "cc6b4958-fa84-48d8-9a8a-3dd63d59d085", "ExecuteTime": { - "end_time": "2025-11-12T08:11:12.635987Z", - "start_time": "2025-11-12T08:11:10.275576Z" - } - }, - "source": [ - "ohlc = yf.download(tickers, period=\"max\")" - ], - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/var/folders/_3/k_9k5d5n5zz57w7qfll9rzs40000gn/T/ipykernel_60284/3917095853.py:1: FutureWarning: YF.download() has changed argument auto_adjust default to True\n", - " ohlc = yf.download(tickers, period=\"max\")\n", - "[*********************100%***********************] 15 of 15 completed\n" - ] - } - ], - "execution_count": 4 - }, - { - "cell_type": "code", - "metadata": { + "end_time": "2025-11-12T08:11:12.676295Z", + "start_time": "2025-11-12T08:11:12.665179Z" + }, "colab": { "base_uri": "https://localhost:8080/", "height": 368 }, "id": "41-UTlPR_YO3", - "outputId": "45e79da8-c066-4962-d5e2-57baafa8d68c", - "ExecuteTime": { - "end_time": "2025-11-12T08:11:12.676295Z", - "start_time": "2025-11-12T08:11:12.665179Z" - } + "outputId": "45e79da8-c066-4962-d5e2-57baafa8d68c" }, + "outputs": [], "source": [ - "prices = ohlc[\"Close\"]\n", - "prices.tail()" - ], - "outputs": [ - { - "data": { - "text/plain": [ - "Ticker AAPL AMD BAC BLK CVS \\\n", - "Date \n", - "2025-11-05 269.878387 256.329987 52.450001 1073.569946 78.550003 \n", - "2025-11-06 269.508728 237.699997 53.290001 1069.439941 78.660004 \n", - "2025-11-07 268.209991 233.539993 53.200001 1082.199951 78.989998 \n", - "2025-11-10 269.429993 243.979996 53.419998 1082.630005 77.540001 \n", - "2025-11-11 275.250000 237.520004 53.630001 1085.760010 79.870003 \n", - "\n", - "Ticker DIS INTU JD MA NVDA \\\n", - "Date \n", - "2025-11-05 111.360001 655.330017 32.040001 553.309998 195.210007 \n", - "2025-11-06 110.489998 653.640015 31.950001 553.280029 188.080002 \n", - "2025-11-07 110.739998 648.849976 31.790001 551.969971 188.149994 \n", - "2025-11-10 112.239998 653.270020 31.410000 552.960022 199.050003 \n", - "2025-11-11 114.849998 654.320007 31.610001 558.349976 193.160004 \n", - "\n", - "Ticker PBI TGT TM UL WMT \n", - "Date \n", - "2025-11-05 9.389523 91.940002 199.149994 60.760719 101.470001 \n", - "2025-11-06 9.280573 89.150002 202.940002 60.383999 101.680000 \n", - "2025-11-07 9.340000 91.239998 201.979996 61.470001 102.589996 \n", - "2025-11-10 9.270000 90.730003 203.940002 60.810001 102.419998 \n", - "2025-11-11 9.440000 91.580002 205.990005 61.070000 103.440002 " - ], - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
TickerAAPLAMDBACBLKCVSDISINTUJDMANVDAPBITGTTMULWMT
Date
2025-11-05269.878387256.32998752.4500011073.56994678.550003111.360001655.33001732.040001553.309998195.2100079.38952391.940002199.14999460.760719101.470001
2025-11-06269.508728237.69999753.2900011069.43994178.660004110.489998653.64001531.950001553.280029188.0800029.28057389.150002202.94000260.383999101.680000
2025-11-07268.209991233.53999353.2000011082.19995178.989998110.739998648.84997631.790001551.969971188.1499949.34000091.239998201.97999661.470001102.589996
2025-11-10269.429993243.97999653.4199981082.63000577.540001112.239998653.27002031.410000552.960022199.0500039.27000090.730003203.94000260.810001102.419998
2025-11-11275.250000237.52000453.6300011085.76001079.870003114.849998654.32000731.610001558.349976193.1600049.44000091.580002205.99000561.070000103.440002
\n", - "
" - ] - }, - "execution_count": 5, - "metadata": {}, - "output_type": "execute_result" - } - ], - "execution_count": 5 + "prices = load_stockdata(tickers=tickers)" + ] }, { "cell_type": "markdown", @@ -385,27 +165,38 @@ }, { "cell_type": "code", + "execution_count": 61, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 35 }, "id": "5_0F7H7k_YO4", - "outputId": "973ab4df-85ba-45bc-a907-2be2ec28793c", "jupyter": { "is_executing": true - } + }, + "outputId": "973ab4df-85ba-45bc-a907-2be2ec28793c" }, + "outputs": [ + { + "data": { + "text/plain": [ + "'1.6.0'" + ] + }, + "execution_count": 61, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "import pypfopt\n", "pypfopt.__version__" - ], - "outputs": [], - "execution_count": null + ] }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 62, "metadata": { "id": "U6m_oOBG_YO4" }, @@ -420,7 +211,7 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 63, "metadata": { "colab": { "base_uri": "https://localhost:8080/", @@ -432,7 +223,7 @@ "outputs": [ { "data": { - "image/png": "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drRuvfVWa8KECVZxcbH1yCOPeMbwWvO9Naul15r5X05DaOnp6dacOXM8jwMCAqwTJ05YkydPrnD8okWLrJUrV3r17dixw5o3b57ncW5urjVp0iTPY7vdbl24cMEaOXKk8ettDK0u1iw5Odlavny58WtrrK2qa/bjlp2dXeE/7msyJ83cuk2dOtXatWuX8WtrrK2mr4vAwECrsLDQ+uUvf+np4z3N99aM97SGv26SrK+++sqaPn265zGvNd9bs9p4rfHxRUlNmzbVfffdpw0bNnj6LMvShg0bFB0dXeE50dHRXuMlad26dZ7x7dq1U6tWrbzGOJ1O7dy587JzovLqYs0u6du3r/Lz85WRkaF33nlH119/fe1fgB+qzpqZmBPe6vJ3fMcddygnJ0dZWVlKSUnRT37yk5qWC9XOml177bVq2rSpCgoKJPGeVtfqYs0u4T2t7tTGuj300EPq0KGDPvvsM0m81upaXazZJTV9rRHKJN1www1q0qSJ8vPzvfrz8/MVERFR4TkRERFXHH/pv1WZE5VXF2smSWvXrtWYMWPUv39/TZ48WTExMUpNTVVgIC+VmqrOmpmYE97q6ne8c+dOxcbG6rHHHtOzzz6rdu3aaevWrQoLC6tpyX6vNtbszTffVG5urucfLryn1a26WDOJ97S6Vt11s9vtcrlccrvdWr16tV544QVea/WkLtZMqp3XWpOqXw7QeC1evNjz8759+/T111/ryJEj6tu3rzZt2mSwMqBxWbt2refnvXv3aufOnTp69KhGjBihpKQkg5Vh8uTJGjVqlPr27auioiLT5aASLrdmvKc1TC6XS127dlVYWJj69++vt956S0eOHNGWLVtMl4bLuNqa1cZrjf+rRNLJkydVUlKi8PBwr/7w8HDl5eVVeE5eXt4Vx1/6b1XmROXVxZpVJDs7W99//z13PaoF1VkzE3PCW339jgsLC5WZmclrrRbUZM0mTZqkV199VY888oj27t3r6ec9rW7VxZpVhPe02lXddbMsS1lZWdqzZ4/eeustLV26VAkJCZJ4rdW1ulizilTntUYok1RcXKyvvvpK/fv39/QFBASof//+2rFjR4Xn7Nixw2u8JD388MOe8dnZ2fr222+9xthsNvXo0eOyc6Ly6mLNKhIZGamWLVvq22+/rZ3C/Vh11szEnPBWX7/j0NBQ3XbbbbzWakF11+zll1/W73//ez322GP66quvvI7xnla36mLNKsJ7Wu2qrf99DAwMVEhIiCRea3WtLtasItV9rRm/C0pDaCNGjLAuXLhgjRkzxurYsaP17rvvWgUFBdZNN91kSbIWLFhgvfHGG57x0dHRltvttl588UWrQ4cO1tSpUyu8JX5BQYH1+OOPW3fffbe1fPlybmnagNcsNDTUmjlzptWjRw+rTZs21kMPPWR9+eWX1qFDh6zg4GDj19sYWlXXrGnTplaXLl2sLl26WDk5OdbMmTOtLl26WLfddlul56Q1zHX74x//aD344INWmzZtrOjoaOvTTz+1vvvuO+uGG24wfr2NoVV1zV555RXr4sWL1tChQ71u6RwaGuo1hvc031kz3tMa5rq9+uqr1k9/+lOrXbt2VseOHa0XX3zRcrvdlsPh8FpbXmu+s2a1+Foz/8tpKO25556zvvnmG+vixYtWenq61b17d8+xtLQ0Kzk52Wv8sGHDrIyMDOvixYvW3r17rQEDBpSbc9q0ada3335rXbhwwVq/fr11xx13GL/OxtRqc82uueYaa+3atVZ+fr5VVFRkZWdnW++99x7/uDe4Zm3atLEqkpaWVuk5aQ1z3RYuXGjl5ORYFy9etI4fP24tXLjQuvXWW41fZ2NqVVmz7OzsCtds6tSpXnPynuY7a8Z7WsNct//6r/+yMjMzrfPnz1unTp2ytm/fbo0YMaLcnLzWfGfNauu1FvD//wAAAAAAMIDvlAEAAACAQYQyAAAAADCIUAYAAAAABhHKAAAAAMAgQhkAAAAAGEQoAwAAAACDCGUAAAAAYBChDAAAAAAMIpQBAAAAgEGEMgAAAAAwiFAGAAAAAAb9fwgpkdCLMSSrAAAAAElFTkSuQmCC", + "image/png": "iVBORw0KGgoAAAANSUhEUgAAA0wAAAGsCAYAAADuRiccAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAM7pJREFUeJzt3QmYXvPdN/DfJBNDyEyIJQmDEElI1PZYqwjRRINYaqstDVqqaOkiz/O8DX0uklpqKbVmoQuRWkosadEQhFBCkdoqGiQoMSPEkOR+r/9535knY3IiNDP3PTOfz3X9O/d9zrnP/I/TSeab3zm/U1YoFAoBAABAEx2aLgIAACARmAAAAHIITAAAADkEJgAAgBwCEwAAQA6BCQAAIIfABAAAkKM82pElS5bEm2++GV26dImysrJiTwcAACiS9DjaDz74IHr27BkdOuTXkdpVYEphqbq6utjTAAAASsScOXNigw02yF3frgJTqizV/0eprKws9nQAAIAiqa2tzYop9RkhT7sKTPWX4aWwJDABAABln3OrjqYPAAAAOQQmAACAHAITAABADoEJAAAgR7tq+lBvwKgp0aGic7GnAZSQ2WOGFnsKAEAJUmECAAAoRmBKLfqWN84666yGbW+++ebYc889Y80114zVVlst+vbtGyNGjIinnnoqpk6d+rn7StsAAAC0mkvy5s6d2/B64sSJ8bOf/SxeeOGFhmVrrLFG9vWnP/1pXHjhhXHqqafG2WefHRtttFG88847cffdd8fIkSPj9ttvb7Sv0047LXvQ1Pjx4xuWrbXWWs15KAAAQDvUrIGpe/fuDa+rqqqyStDSy5JHH300zjvvvLjkkkuywFRvww03jO222y4KhUKTz6UKVF1dXZN9AQAAtKmmDzfccENWafre9773pZ68uzwpVKVRL1WlAAAAWk3ThxdffDE22WSTKC//3+z2y1/+MgtR9aOmpuZL7Xv06NFZZat+VFdXr8SZAwAAbV3RA9OypGYPM2fOjKuuuio+/PDD7LK8LyPd/5TCVv2YM2fOSp8rAADQdhX9krzNNtssHnroofj000+jU6dO2bKuXbtm4/XXX/+39l1RUZENAACAVllhOuKII2LBggXx61//uthTAQAAKK0K08477xxnnHFGNl577bU46KCDsnuNUhvxsWPHZk0fOnQoeq4DAADaoZJIIhdccEH8/ve/zx5Su++++2aX6R1yyCGxZMmSmD59elRWVhZ7igAAQDtUVviyHRVaodRWPOuW94ObokNF52JPByghs8cMLfYUAIAiZIPUHG55BZqiX5JXDM+ePVjVCgAAaB2X5AEAAJQigQkAACCHwAQAAJBDYAIAAMghMAEAAOQQmAAAAHIITAAAADkEJgAAgBwCEwAAQA6BCQAAIIfABAAAkKM82qEBo6ZEh4rOxZ4GANACZo8ZWuwpAK2YChMAAEAOgQkAAKCUAtPw4cOjrKwsG6usskr07t07fv7zn8eiRYti6tSpDevSWG211aJ///5x9dVXN9nHAQccUIzpAwAA7UTR7mEaMmRIjB8/Purq6uKuu+6Kk08+OTp16hQ777xztv6FF16IysrKWLhwYdxxxx1x0kknxaabbhp77bVXsaYMAAC0M0W7JK+ioiK6d+8eG220URaGBg0aFLfffnvD+nXXXTdb36tXrzj11FOzr08++WSxpgsAALRDJdMlL1169+677zZZXigUYsqUKfHPf/4zdtxxxy+0z1S9SqNebW3tSpkrAADQPhS96UMKRPfee28Wivbcc8+G5RtssEGsscYa2T1OQ4cOjVGjRsVuu+32hfY9evToqKqqahjV1dXNcAQAAEBbVbQK0+TJk7NA9Omnn8aSJUviW9/6Vpx11lnx+OOPZ+unTZsWXbp0ySpEM2bMiO9///ux1lprZZfvraiRI0fG6aef3qjCJDQBAAAlH5gGDhwYV1xxRVZB6tmzZ5SXN55Kumepa9eu2evUJe+xxx6Lc8455wsFpnSfVBoAAACtKjCtvvrqWTvxFdWxY8esYx4AAEC7a/rwWW+//XZ8/PHHDZfk/eY3v4lvfvObxZ4WAADQjpRsYOrbt2/2NV2ql+47+u53v5vd4wQAANBSygqpTV07kZo+pG55NTU12UNxAQCA9ql2BbNB0duKAwAAlCqBCQAAIIfABAAAkENgAgAAyCEwAQAA5BCYAAAAcghMAAAAOQQmAACAHAITAABADoEJAAAgh8AEAACQQ2ACAADIUR7t0IBRU6JDRediTwNoQ2aPGVrsKQAAzUCFCQAAIIfABAAAsDIC0/Dhw6OsrCzGjBnTaPltt92WLb/55pujY8eO8cYbbyzz85tttlmcfvrp2es99tgj+0waFRUVsf7668d+++0Xt9xyS+7379evX7btvHnzvsi0AQAAWqbCtOqqq8YvfvGLmD9/fpN1+++/f3Tr1i2uu+66JusefPDBePnll+O4445rWHbCCSfE3Llz45VXXsnC1hZbbBGHH354fOc732ny+YceeigWLlwY3/zmN5e5fwAAgKIHpkGDBkX37t1j9OjRTdZ16tQpjj766JgwYUKTdePGjYsdd9wx+vfv37Csc+fO2b422GCD2GmnnbIgdtVVV8U111wT9957b6PPjx07Nr71rW9l+0/7WhF1dXVRW1vbaAAAADRbYEqX3J177rnxq1/9Kl5//fUm61MF6aWXXsoqSvUWLFgQf/jDHxpVl/Ice+yxseaaaza6NO+DDz6ISZMmxVFHHRV777131NTUxLRp0z53XynUVVVVNYzq6uovdKwAAED79qWaPhx44IGx9dZbx6hRo5qsS5fVpWrR0lWgm266KQqFQna53edOqEOH6NOnT8yePbth2Y033pjd/5SqUymwpf2kitPnGTlyZBau6secOXO+0HECAADt25fukpcun0v3Es2aNavJuhEjRmQVpVQZSlJ4OuSQQ6JLly4rtO8UrlIziHrp86m6VC+9ThWn+v3nSQ0iKisrGw0AAIBmD0y77bZbDB48OKvifFZ9JSlVltLleQ8//PAKXY6XLF68OPtMr169svfPP/98PProo/GTn/wkysvLs5EqWB999FFWeQIAAGgu5f/Oh1N78XRpXt++fRstT5WkVFFKlaHUAS9dYve1r31thfaZqlapA9/BBx+cvU+X3qVwdvnllzfabvz48dm61GkPAACg5ALTlltuGUceeWRceumlTdalilIKSemSvZ/+9KfL/HyqEqVnKi1atChrIHHrrbfGRRddFCeddFIMHDgwPv300/jNb34TP//5z2PAgAGNPnv88cfHL3/5y3juuecadd4DAAAo+iV59VKYWbJkSZPlu+66a1Z5Sq28jznmmGV+NrUP79GjR2y66aZx0EEHZZffTZw4MX79619n62+//fZ49913syYTn7X55ptnY0WaPwAAAHwZZYXUYaGdSOEttRdPHfM0gAAAgPardgWzwb9dYQIAAGirBCYAAIAcAhMAAEAOgQkAACCHwAQAAJBDYAIAAMghMAEAAOQQmAAAAHIITAAAADkEJgAAgBwCEwAAQA6BCQAAIEd5tEMDRk2JDhWdiz0NAIAmZo8ZWuwpAEtRYQIAAGjJwDR9+vTo2LFjDB3a+F9IZs+eHWVlZdm6N954o9G6uXPnRnl5ebY+bbf09vWjS5cu0b9//zj55JPjpZdeao6pAwAANG9gGjt2bJxyyinx4IMPxptvvtlk/frrrx/XX399o2XXXXddtnxZ7r333ixQPf3003HuuefGrFmzYquttor77ruvOaYPAADQPIFpwYIFMXHixDjppJOyCtOECROabHPsscfG+PHjGy1L79PyZenWrVt07949Ntlkkxg2bFgWoHbcccc47rjjYvHixSv7EAAAAJonMN10003Rr1+/6Nu3bxx11FExbty4KBQKjbbZf//9Y/78+fHQQw9l79PX9H6//fZboe/RoUOHOO200+K1116Lv/71r7nb1dXVRW1tbaMBAABQtMCULsdLQSkZMmRI1NTUxAMPPNBom06dOjWEqSR9Te/T8hWVQllSf7/TsowePTqqqqoaRnV19Zc8KgAAoD1aqYHphRdeiBkzZsQRRxyRvU9NHA477LAsRH3WiBEjYtKkSTFv3rzsa3r/RdRXrVIziDwjR47MAlv9mDNnzhc+JgAAoP1aqc9hSsFo0aJF0bNnz0bBpqKiIi677LJG22655ZZZlSiFq8033zwGDBgQM2fOXOHvlRo/JL169crdJn3fNAAAAIpaYUpBKXW+u/DCC7PgUz9SZ7sUoG644YYmn0lVpalTp37h6tKSJUvi0ksvzcLSNttss7IOAQAAoHkqTJMnT84aN6TOdel+oaUdfPDBWfUp3dO0tBNOOCEOOeSQ6Nq163L3/e6772aX7n300Ufx7LPPxsUXX5xd+nfnnXdmz3QCAAAo6cCUAtGgQYOahKX6wHTeeec16VKX7nFae+21P3ffab9J586dY6ONNoqBAwfG1VdfHb17915Z0wcAAGi+wHTHHXfkrtthhx0amjR8tsX40rbeeutG6zfeeOPlbg8AANBqmj60Fs+ePTgqKyuLPQ0AAKC9PYcJAACgrRCYAAAAcghMAAAAOQQmAACAHAITAABADoEJAAAgh8AEAACQQ2ACAADIITABAADkEJgAAAByCEwAAAA5yqMdGjBqSnSo6FzsaQBQQmaPGVrsKQBQglSYAAAAcghMAAAApRKYhg8fHmVlZdno1KlTrLfeerH33nvHuHHjYsmSJQ3bbbzxxnHxxRc3vH/66adj//33j3XXXTdWXXXVbP1hhx0Wb7/9dksfAgAA0E4UpcI0ZMiQmDt3bsyePTvuvvvuGDhwYJx22mmx7777xqJFi5ps/84778Ree+0Va621VkyZMiVmzZoV48ePj549e8aHH35YjEMAAADagaI0faioqIju3btnr9dff/3YdtttY6eddspC0YQJE+L4449vtP3DDz8cNTU1ce2110Z5+f+bcq9evbKgBQAA0ObvYdpzzz1jq622iltuuaXJuhSuUuXp1ltvjUKhsML7rKuri9ra2kYDAACg1QWmpF+/ftllep+Vqk//+Z//Gd/61rdi7bXXjn322SfOP//8eOutt5a7v9GjR0dVVVXDqK6ubsbZAwAAbU1JBaZUPUrNIJblnHPOiXnz5sWVV14Z/fv3z76mgPW3v/0td38jR47MLuWrH3PmzGnG2QMAAG1NSQWm1Mwh3ZuUp1u3bnHIIYfEBRdckG2bmj6k18u7V6qysrLRAAAAaHWB6f7778+qRQcffPAKbb/KKqvEpptuqkseAADQtrrkpWYM6fK6xYsXZ/ch3XPPPdn9Rqmt+DHHHNNk+8mTJ8eNN94Yhx9+ePTp0ye7dO+OO+6Iu+66K2svDgAA0GYCUwpIPXr0yFqEr7nmmll3vEsvvTSOPfbY6NChadFriy22iM6dO8cZZ5yR3YeULrXbbLPNsjbjRx99dDEOAQAAaAfKCl+kT3crl9qKp255qQGE+5kAAKD9ql3BbFAy9zABAACUGoEJAAAgh8AEAACQQ2ACAADIITABAADkEJgAAAByCEwAAAA5BCYAAIAcAhMAAEAOgQkAACCHwAQAAJBDYAIAAMhRHu3QgFFTokNF52JPo92bPWZosacAAADLpcIEAACQQ2ACAAAoZmCaN29enHLKKbHJJptERUVFVFdXx3777RdTpkyJtddeO8aMGbPMz/3P//xPrLfeevHpp5/G4sWLs+369esXq622Wqy11lqx4447xrXXXtsShwAAALRDzX4P0+zZs+OrX/1qdO3aNc4///zYcsstswCUwtJpp50WRx11VIwfPz7OPPPMRp8rFAoxYcKEOOaYY6JTp07xs5/9LK666qq47LLL4j/+4z+itrY2nnjiiZg/f35zHwIAANBONXtg+t73vhdlZWUxY8aMWH311RuW9+/fP0aMGBFz5syJSy65JB566KHYddddG9Y/8MAD8Y9//COOO+647P3tt9+e7euQQw5p2GarrbZa7veuq6vLRr0UsgAAAErikrz33nsv7rnnnjj55JMbhaV6qeqUKk7bb799jBs3rtG6VHXaZZddskvwku7du8f9998f77zzzgp//9GjR0dVVVXDSJcCAgAAlERgevnll7NL6+pDT55URZo0aVIsWLAge//BBx/EH/7wh6wCVe+Xv/xlFpZScPrKV74SJ554Ytx9993L3e/IkSOjpqamYaRqFgAAQEkEphSWVsQRRxyRNXW46aabsvcTJ06MDh06xGGHHdawzRZbbBHPPvtsPProo1mQevvtt7PGEccff3zuflODicrKykYDAACgJALTZpttlt2/9Pe//32526Ug881vfjO7DC9JXw899NBYY401Gk+2Q4fs8r0f/OAHccstt2RNIcaOHRuvvvpqcx4GAADQTjVrYEqtvwcPHhyXX355fPjhh03Wv//++40uy0uNHyZPnhyPPPJIQ7OH5UlVp2RZ+wYAACj55zClsJQut9thhx3i5ptvjpdeeilmzZoVl156aey8884N2+22227Ru3fvrI14uucpNXxYWqpAXXTRRfHYY4/Fa6+9FlOnTs2aSfTp0+dz75ECAAAoycCUHlb75JNPxsCBA+OMM86IAQMGxN577x333XdfXHHFFQ3bpUv30r1J6blKSzd7qJcqVXfccUd231IKSccee2wWlP70pz9FeXmzd0cHAADaobLCinZmaAPSc5hSe/HUMU8DCAAAaL9qVzAbNHuFCQAAoLUSmAAAAHIITAAAADkEJgAAgBwCEwAAQA6BCQAAIIfABAAAkENgAgAAyCEwAQAA5BCYAAAAcghMAAAAOQQmAACAHOXRDg0YNSU6VHQu9jQAACghs8cMLfYUKEEqTAAAAKUcmPbYY4/4wQ9+0GT5hAkTomvXrtnrs846K7beeusizA4AAGivSiIwAQAAlCKBCQAAoD02fairq8tGvdra2qLOBwAAaF3adIVp9OjRUVVV1TCqq6uLPSUAAKAVadOBaeTIkVFTU9Mw5syZU+wpAQAArUhJXJJXWVmZBZrPev/997PK0JdVUVGRDQAAgFZbYerbt288+eSTTZanZX369CnKnAAAAEqiwnTSSSfFZZddFqeeemocf/zxWVXozjvvjBtuuCHuuOOOhu0WLlwYM2fObPTZLl26xKabblqEWQMA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mj9/fjz88MMxderUOPHEE5v1ez179uCorKxs1u8BAAC0fiUTmEaMGBGPP/54nHHGGTFs2LBiTwcAAKB0AtOtt95a7CkAAAA0omsCAABADoEJAAAgh8AEAACQQ2ACAADIITABAADkEJgAAAByCEwAAAA5BCYAAIAcAhMAAECO8miHBoyaEh0qOhd7GkAbMnvM0GJPAQBoBipMAAAAOQQmAACA5gpMV155ZXTp0iUWLVrUsGzBggXRqVOn2GOPPRptO3Xq1CgrK4tXXnklNt544+z1jTfe2GSf/fv3z9ZNmDCh4TPLG2kbAACAkgtMAwcOzALSE0880bBs2rRp0b1793jsscfi448/blj+l7/8JTbccMPYdNNNs/fV1dUxfvz4Rvt79NFHY968ebH66qtn73fZZZeYO3duwzj00ENjyJAhjZalbQAAAEouMPXt2zd69OjRqMqTXg8bNix69eqVBaCll6eAVe/II4+MBx54IObMmdOwbNy4cdny8vL/149ilVVWycJX/VhttdWioqKi0bK0DQAAQEnew5RCUKoe1Uuv0+V4u+++e8PyhQsXZhWnpQPTeuutF4MHD47rrrsue//RRx/FxIkTY8SIEStjWlFXVxe1tbWNBgAAQIsHpocffji7j+mDDz6Ip556KgtLu+22W0Plafr06VmAWTowJSkcpXuVCoVC/OEPf8gu19t6661XxrRi9OjRUVVV1TDSJYAAAAAtGphSNenDDz+Mxx9/PLt/qU+fPrHOOutkoan+PqYUnDbZZJPsHqalDR06NLsH6sEHH8wux1tZ1aVk5MiRUVNT0zCWvvQPAACgRR5c27t379hggw2yy+/mz5+fBaWkZ8+eWVXnkUceydbtueeeTSdQXh5HH310jBo1KgtXt956a6ws6V6nNAAAAIr6HKZ0qV2qIqWxdDvxdFne3XffHTNmzGhyOV69VFVKzR9So4g111xzZU0JAACg+BWmJIWhk08+OT799NOGClOSXn//+9+PTz75JDcwbb755vGvf/0rOnfuvLKmAwAAUFqBKXXC69evX9b9bunAlBpB1Lcfz9OtW7eVNRUAAICVoqyQ2tO1E6mteOqWlxpAVFZWFns6AABAiWeDlXYPEwAAQFsjMAEAAOQQmAAAAHIITAAAADkEJgAAgBwCEwAAQA6BCQAAIIfABAAAkENgAgAAyCEwAQAA5BCYAAAAcghMAAAAOcqjHRowakp0qOhc7GkAsJTZY4YWewoA0IQKEwAAQA6BCQAAoJQCU1lZ2XLHWWedFbNnz85ed+zYMd54441Gn587d26Ul5dn69N2AAAAbSYwpcBTPy6++OKorKxstOxHP/pRw7brr79+XH/99Y0+f91112XLAQAA2lxg6t69e8OoqqrKKkVLL1tjjTUatj322GNj/PjxjT6f3qfln6euri5qa2sbDQAAgDZzD9P+++8f8+fPj4ceeih7n76m9/vtt9/nfnb06NFZIKsf1dXVLTBjAACgrSj5wNSpU6c46qijYty4cdn79DW9T8s/z8iRI6OmpqZhzJkzpwVmDAAAtBWt4jlMI0aMiF122SXOPffcmDRpUkyfPj0WLVr0uZ+rqKjIBgAAQJusMCVbbrll9OvXL4444ojYfPPNY8CAAcWeEgAA0A60isBUX2WaOnVq9hUAAKAltIpL8pITTjghDjnkkOjatWuxpwIAALQTrSYwpQfVrr322sWeBgAA0I6UFQqFQrQT6TlMqb146piXHpYLAAC0T7UrmA1azT1MAAAALU1gAgAAyCEwAQAA5BCYAAAAcghMAAAAOQQmAACAHAITAABADoEJAAAgh8AEAACQQ2ACAADIITABAADkEJgAAABylEc7NGDUlOhQ0bnY0wAAoA2ZPWZosadAM1BhAgAAaM7ANH369OjYsWMMHZqfqm+44YZsm5NPPrnJuqlTp0ZZWVnDWG+99eLggw+Of/zjHw3bbLzxxnHxxRevjOkCAAC0XGAaO3ZsnHLKKfHggw/Gm2++mbvNT37ykyw4ffzxx8vc5oUXXsg+P2nSpHjuuediv/32i8WLF6+MKQIAALR8YFqwYEFMnDgxTjrppKzCNGHChCbbvPrqq/HII4/EmWeeGX369Ilbbrllmftad911o0ePHrHbbrvFz372s3j++efj5Zdf/nenCAAAUJzAdNNNN0W/fv2ib9++cdRRR8W4ceOiUCg02mb8+PFZmKqqqsq2SdWmz7PaaqtlXz/55JMvPbe6urqora1tNAAAAFosMKXwk0JQMmTIkKipqYkHHnigYf2SJUuyqlP9Nocffng89NBDWdUpz9y5c+OCCy6I9ddfPwtiX9bo0aOzkFY/qqurv/S+AACA9uffCkzpnqMZM2bEEUcckb0vLy+Pww47rFEF6c9//nN8+OGH8Y1vfCN7v/baa8fee++dVaI+a4MNNojVV189evbsmX3m5ptvjlVWWeVLz2/kyJFZgKsfc+bM+dL7AgAA2p9/6zlMKRgtWrQoCzj10uV4FRUVcdlll2VVnbTNe++913CJXX3V6Zlnnomzzz47OnT438w2bdq0qKyszO5l6tKlS/y70jzSAAAAaNHAlILS9ddfHxdeeGF8/etfb7TugAMOyLrhHXLIIfHHP/4xbrzxxujfv3/D+tT5btddd40//elP2WV89Xr16hVdu3b9slMCAAAojcA0efLkmD9/fhx33HFZJWlp6RlKqbKU2od369YtDj300Oz5SktLl+ilbZYOTJ/njTfeiJkzZzZattFGG8Waa675ZQ8DAABg5d/DlMLOoEGDmoSl+sD0xBNPxOmnnx4HHnhgk7BUv83tt98e//rXv1b4e6ZGENtss02jceedd37ZQwAAAFiussJne4C3YamteNYt7wc3RYeKzsWeDgAAbcjsMUOLPQW+RDZIzeFSH4VmafrQWj179uDl/kcBAABYKc9hAgAAaKsEJgAAgBwCEwAAQA6BCQAAIIfABAAAkENgAgAAyCEwAQAA5BCYAAAAcghMAAAAOQQmAACAHAITAABAjvJohwaMmhIdKjoXexpQdLPHDC32FAAASpoKEwAAQA6BCQAAoBiBafjw4VFWVtYwunXrFkOGDIlnnnmmybbf/e53o2PHjjFp0qRl7uvll1+Ob3/727HBBhtERUVF9OrVK4444oh44oknmvMQAACAdqzZK0wpIM2dOzcb9913X5SXl8e+++7baJuPPvoobrzxxvjJT34S48aNa7KPFIq22267ePHFF+Oqq66K559/Pm699dbo169fnHHGGc19CAAAQDvV7E0fUjWoe/fu2ev09cwzz4yvfe1r8c4778Q666yTLU9VpS222CJb17Nnz5gzZ05UV1dn6wqFQlap2myzzWLatGnRocP/Zrytt946TjvttOY+BAAAoJ1q0XuYFixYEL/97W+jd+/e2eV59caOHRtHHXVUVFVVxT777BMTJkxoWDdz5sx47rnnskrS0mGpXteuXXO/X11dXdTW1jYaAAAAJROYJk+eHGussUY2unTpErfffntMnDixIfy89NJL8eijj8Zhhx2WvU/Bafz48VllqX59ki6/+6JGjx6dhbD6UV+1AgAAKInANHDgwKxKlMaMGTNi8ODBWRXptddey9ane5bSsrXXXjt7/41vfCNqamri/vvvz97XB6cvY+TIkdm+6ke61A8AAKBkAtPqq6+eXYKXxvbbbx/XXnttfPjhh3HNNdfE4sWL47rrros777wzawaRRufOneO9995raP7Qp0+f7Ovf//73L3X/VGVlZaMBAABQMk0fPiu1F0+X4y1cuDDuuuuu+OCDD+Kpp57KWorXe/bZZ7MW4u+//37W2CE1hLjwwguzy/Y+ex9T2mZ59zEBAACUbIUpNV6YN29eNmbNmhWnnHJK1vxhv/32y5o9DB06NLbaaqsYMGBAwzj00EOzEPS73/0uC1jpnqbUUjx110sh6x//+Ef2LKdzzjknhg0b1tyHAAAAtFPNHpjuueee6NGjRzZ23HHHePzxx7M24ptvvnl2Kd7BBx/cdFIdOsSBBx6YBapkhx12yJ7FlC7rO+GEE7LP7r///ln3vIsvvri5DwEAAGinygr/TleFVia1FU/d8lIDCPczAQBA+1W7gtmgRZ/DBAAA0JoITAAAADkEJgAAgBwCEwAAQA6BCQAAIIfABAAAkENgAgAAyCEwAQAA5BCYAAAAcghMAAAAOQQmAACAHAITAABAjvJohwaMmhIdKjoXexoAzW72mKHFngIAtGoqTAAAADkEJgAAgGIGpuHDh0dZWVnD6NatWwwZMiSeeeaZhm3S8ttuu22Zn586dWq2/v33329Y9uabb8aWW24Zu+22W9TU1LTEYQAAAO1Mi1WYUkCaO3duNu67774oLy+Pfffd90vt65VXXoldd901Ntpoo5gyZUpUVVWt9PkCAAC0WGCqqKiI7t27Z2PrrbeOM888M+bMmRPvvPPOF9pPqkqlsLTzzjtnFanVVlstd9u6urqora1tNAAAAEr6HqYFCxbEb3/72+jdu3d2ed6KeuSRR2L33XePgw8+OPt8qlItz+jRo7PqU/2orq5eCbMHAADaixYLTJMnT4411lgjG126dInbb789Jk6cGB06rPgUDjzwwNhvv/3isssuy+5p+jwjR47M7m+qH6miBQAAUHKBaeDAgTFz5sxszJgxIwYPHhz77LNPvPbaayu8j2HDhsWtt94a06ZNW+HLACsrKxsNAACAkgtMq6++enYJXhrbb799XHvttfHhhx/GNddcs8L7uOqqq+Lwww/PgtaDDz7YrPMFAABY/k1AzShdUpcux1u4cOEX+szVV1+dfe4b3/hG3Hnnndk9TQAAAK06MKWOdfPmzctez58/P7sPKTV/SPck1Xv11VezS/aWttlmmzUJTVdeeWV07NixITTtscceLXQUAABAe9Jigemee+6JHj16ZK9T04d+/frFpEmTGoWd008/vcnnlnW/UgpNl19+eVZpGjp0aNZQIt0jBQAAsDKVFQqFQrQT6TlMqb146pinAQQAALRftSuYDYryHCYAAIDWQGACAADIITABAADkEJgAAABK7TlMxVDf3yLd4AUAALRftf8/E3xeD7x2FZjefffd7Gt1dXWxpwIAAJSADz74IOuWl6ddBaa11lor+/rPf/5zuf9RKE7CT0F2zpw5Wr6XIOentDk/pcu5KW3OT2lzfkpXbRs5N6mylMJSz549l7tduwpM6UG3SQpLrfnktmXpvDg3pcv5KW3OT+lybkqb81PanJ/SVdkGzs2KFFE0fQAAAMghMAEAAORoV4GpoqIiRo0alX2ltDg3pc35KW3OT+lybkqb81PanJ/SVdHOzk1Z4fP66AEAALRT7arCBAAA8EUITAAAADkEJgAAgBwCEwAAQA6BCQAAoC0Gpssvvzw23njjWHXVVWPHHXeMGTNmLHf7SZMmRb9+/bLtt9xyy7jrrrsarU8NA3/2s59Fjx49YrXVVotBgwbFSy+91MxH0Xat7PNzyy23xNe//vXo1q1blJWVxcyZM5v5CNq2lXl+Pv300/jpT3+aLV999dWjZ8+eccwxx8Sbb77ZAkfS9qzsn52zzjorW5/OzZprrpn92fbYY48181G0XSv7/CztxBNPzP58u/jii5th5u3Dyj4/w4cPz87J0mPIkCHNfBRtU3P87MyaNSv233//qKqqyv6M23777eOf//xnMx5F27Wyz0/ZZ35u6sf5558frU6hlbrxxhsLq6yySmHcuHGF5557rnDCCScUunbtWnjrrbeWuf3DDz9c6NixY+G8884rPP/884X//u//LnTq1Knwt7/9rWGbMWPGFKqqqgq33XZb4emnny7sv//+hV69ehUWLlzYgkfWNjTH+bn++usLZ599duGaa65JrfALTz31VAseUduyss/P+++/Xxg0aFBh4sSJhb///e+F6dOnF3bYYYfCdttt18JH1vo1x8/O7373u8Kf//znwiuvvFJ49tln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", "text/plain": [ "
" ] @@ -447,7 +238,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 64, "metadata": { "colab": { "base_uri": "https://localhost:8080/", @@ -459,7 +250,7 @@ "outputs": [ { "data": { - "image/png": "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", + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAiEAAAHWCAYAAAChaFm7AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAVzRJREFUeJzt3QucjPX+B/Dv7M193Vm33G8hRKSLKHcJSSi5xYmQcE61df7IeUWd4uiiQ4VVnVgqhdCF4xYSkhJKcinWLXbd1848/9fn13mmmd2ZtbPzzDPPM/N59/q15rLPb2Z39pnv/H7f3/fn0DRNEyIiIiKTxZjdIREREREwCCEiIqKwYBBCREREYcEghIiIiMKCQQgRERGFBYMQIiIiCgsGIURERBQWDEKIiIgoLBiEEBERUVgwCCEiIqKwYBBCREQU5davXy/dunWTihUrisPhkI8++uia37N27Vq58cYbpUCBAlKrVi1JSUkJuF8GIURERFHuwoUL0rhxY5k5c2ae7v/LL79I165dpW3btrJz5055/PHHZejQofLpp58G1K+DG9gRERGRDiMhS5YskR49eog/Tz75pHzyySfy/fffu6/r27evnD17VlatWiV5FSdRxOVyydGjR6VYsWLqh0xERJQdPpufO3dOTU3ExJg3YXD58mXJzMw07HgJCQlSsGBBCYXNmzdLu3btvK7r2LGjGhEJRFQFIQhAqlSpEu6HQURENnDkyBGpXLmyaQFI9apFJe2E07BjJiUlybfffusViCB/Ay1YaWlpUr58ea/rcDkjI0MuXbokhQoVytNxoioIwQgIHNpRTRKLhja6va/VHWKa2FhTujFr9MhZsbSYJfbMeVP6cZ04ZUo/jqRypvSj+srKiqjXt7hc5vSDrn4/a0o/joQEc/opGPybWl5pBUL/nLJcV2Tdwdnu9wwzZGZmqgDk0PZqklgs+PenjHMuqdrsYI5AYeLEiTJp0iSxiqgKQvQ3UQQgRvyScxMXY84fvxITWUGII9a8E1pszFVT+nE5EiLuZ+dwxUbU61vExCDErNeDSechR4yJQUiseefWcEzbFy3mUC1YLnG4R3MSExPd1xsxCqKPshw/ftzrOlxGX3kdBYm6IISIiCiaJCYmegUhRmnVqpWsWLHC67rPP/9cXR8ILtElIiKyCKfmMqwF4vz582qpLZq+BBf/Pnz4sLqcnJwsAwYMcN9/+PDhcuDAAXniiSdk79698vrrr8uiRYtk7NixAfXLkRAiIiKLcImmmhHHCcS2bdtUzQ/duHHj1NeBAweqImTHjh1zByRQvXp1tUQXQcfLL7+sEnjfeusttUImEAxCiIiIolybNm3U0mR/fFVDxfd88803QfXLIISIiMgiXOo/Y45jBwxCiIiILMKpaaoZcRw7MCUxddCgQWqpk95Kly4tnTp1kl27drnvk9uGOdgkB7ejHKxn4bFGjRpJ69atJT093YynQURERAYybXUMgg4ktqCtXr1a4uLi5O67787XsX7++We57bbbpGrVqmqznOLFixv+eImIiMKVmOoyoNmBaUEICqSguAlakyZN5KmnnlJFVE6ePBnQcTB6ggAEa5ExchJIURQiIiIrc4kmTgMag5BrrEd+9913pVatWmpqJq82bdokd9xxh/Tq1Ut9P0ZTiIiIyJ5Mexdfvny5FC1aVP37woULUqFCBXVdIDsU9uzZU/r06SOvvfZanu5/5coV1XTYWIeIiMiqXGGqExLxIyEogqJXY9u6dasqaNK5c2c5dOhQno/RvXt3WbJkiWzYsCFP9586darKF9Ebd9AlIiI7rI5xGtDswLQgpEiRImr6Be2mm25SldUwIvLmm2/m+RizZ8+Wvn37quBl/fr117w/ysxi5YzekINCRERE1hC2pAosucVUzKVLlwL6njfeeEN9X5cuXVTJWOSI5JYMa9SOgURERKHmMmg/Z3uUKjMxCEFuRlpamvr3mTNnVF4HElS7devmvo++YY6n2rVr5whEZs2aJbGxse5ABKVjiYiI7M75v9UtRhzHDkwLQlatWqWSUaFYsWJSr149Wbx4sVcAoW+Y48lX/gcCkZkzZ6oRka5du6oEV8+Nd4iIiMj6TAlCsPGNr81vPOW2cY6v2xGIYDQlrytliIiIrM6p/dGMOI4dhKVOCBERERGrfREREVmEi4mpREREFA4ucYhTHIYcxw44HUNERERhwZEQIiIii3BpfzQjjmMHDEKIiIgswmnQdIwRxzBDVAYh97W6Q+JiEkLax4pdq8UsHXoPMqWf+GNnTekn5mKmmEVLiDeln6yb6prST/ypi2IWV5GC5nS0/7Ap3ThiY8UsMUWLmNKPlvjHpqEhd/nPjUJDTSsY+irYmjPkXVA0ByFERERW5ORICBEREYWDS3OoZsRx7ICrY4iIiCgsOBJCRERkEU5OxxAREVE4OCVGteCPYw+cjiEiIqKw4EgIERGRRWgGJabiOHbAIISIiMginFGWExLS6ZhBgwaJw+Fwt9KlS0unTp1k165dOe77yCOPSGxsrCxevNjnsfbv3y+DBw+WypUrS4ECBaR69erSr18/2bZtWyifAhEREdk1JwRBx7Fjx1RbvXq1xMXFyd133+11n4sXL8rChQvliSeekLlz5+Y4BgKNZs2ayY8//iizZ8+WH374QZYsWSL16tWT8ePHh/opEBERmcKpxRjW7CDk0zEYtUhKSlL/xtennnpKbr/9djl58qSULVtWXY/Rj+uvv17dVrFiRTly5IhUqVJF3aZpmhpRqV27tmzYsEFiYv78wTZp0kTGjBkT6qdAREREIWBqqHT+/Hl59913pVatWmpqRjdnzhzp37+/FC9eXDp37iwpKSnu23bu3Cm7d+9WIx6eAYiuRIkSpj1+IiKiUHKJQ1wSY0BjToiyfPlyKVq0qGrFihWTpUuXSmpqqjug+Omnn2TLli3Sp08fdRnByLx589QIiH47YOolUFeuXJGMjAyvRkREZPXEVKcBzQ5CHoS0bdtWjWagbd26VTp27KhGOw4dOqRuRw4IritTpoy63KVLF0lPT5c1a9aoy3owkh9Tp05Voyt606d4iIiIKAqCkCJFiqjpF7SbbrpJ3nrrLblw4YK8+eab4nQ6Zf78+fLJJ5+ohFW0woULy++//+5OUK1Tp476unfv3oD7Tk5OVgGN3pBrQkREZFVOJqaGFpbqYirm0qVLsmLFCjl37px88803anmu7vvvv1fLcc+ePauST5G0Om3aNDVlkz0vBPfxlxeCpFg0IiIi++SEOAw5jh2EPFRCXkZaWppqe/bskdGjR6sE1W7duqmE1K5du0rjxo2lYcOG7nb//ferwOI///mPClqQI4LluVhVg8DlwIEDqtbIc889J927dw/1UyAiIiI7BiGrVq2SChUqqNayZUv5+uuv1ZLc+vXrq2mYXr165XxQMTHSs2dPFaRAixYtVK0QTOkMGzZMfe8999yjVs3MmDEj1E+BiIjIFK7/bWAXbMNx7CCk0zFYauu53Da7q1ev+r3t9ddf97qM3BDkjxAREUUqp0H5HM4gFnWYyR6hEhEREUUcbmBHRERkES6DplJcwpEQIiIiCoBTcxjWAjVz5kypVq2aFCxYUOVworZXbukUkydPlpo1a6r7Y4EJckADxSCEiIgoyqWmpsq4ceNk4sSJsmPHDhVUoJDoiRMnfN7/73//u9pQ9tVXX1Wbyg4fPlwtKEHJjUAwCCEiIrIIp0GrY9ACMX36dLX6FDW6UJtr1qxZqnior53t4Z133pGnn35aVTmvUaOGjBgxQv0bNb0CwSCEiIjIIlxajGEtrzIzM2X79u3Srl07r1IZuLx582a/NcAwDeOpUKFCsnHjxoCeL4MQIiKiCJWRbRNXBA/ZnTp1Sm2jUr58ea/rcRmFRn3BVA1GT7DJrMvlks8//1w+/PBDOXbsWECPLzpXx6BEfMyfZeJDoUPvQWKWzxb7r8VipC6N25vSj8NVSMyixYX2daBLOHTalH5ciYXFNA5zykLHFCtqSj/BbJYZcF8lipnSj+NSzjecUNAS4sUsDhN+T2b04Y8zH1Mpvo/zx3PIvnErcj4mTZoU9PFffvllNX2DHe5R2RwJqpjK8Td94090BiFEREQW5PrfChkjjgPYuDUxMdF9va/91LCLPfZvO378uNf1uJyUlOTz+GXLlpWPPvpILl++LKdPn5aKFSvKU089pfJDAsHpGCIiogiVmJjo1XwFIQkJCdKsWTNZvXq1+zpMseByq1atcj0+8kIqVaokWVlZ8sEHHwS8nxtHQoiIiCKuWFlMQPfH8tyBAwdK8+bN1X5t2JftwoULaooFBgwYoIKNqVOnqstfffWV/Pbbb2qne3zFFA8ClyeeeCKgfhmEEBERRbk+ffrIyZMnZcKECSoZFcEFio/pyaqHDx9WK2Z0mIZBrRDsal+0aFG1PBfLdkuUKBFQvwxCiIiIIm4Du5iAv2fUqFGq+bJ27Vqvy3fccYcqUhYsBiFEREQW4RKHakYcxw6YmEpERERhwZEQIiIii3CGcTomHAx5lCjrijXGXbt29XufBQsWqPuMHDnS51wTip3oDYkwvXr1UgkvOuzsh2xdIiKiSOUM094x4WLIo5wzZ46MHj1a1q9fL0ePHvV7HyzdQTCCrFpf9u3bp75/8eLFsnv3bunWrZsqJUtERESRJ+gg5Pz582oLYOygh5GQlJScJcR/+eUX2bRpk6qmVqdOHVVf3pdy5cpJhQoVpHXr1mqZEDJv9+/fH+xDJCIisgWX5jCsRUUQsmjRIlU7vm7dutK/f39VNz77Hgzz5s1TAUrx4sXVfTAqci3YjU/f3S+/sFFP9s17iIiIrMpl0FSMEQXPzBD0o0RAgcACOnXqJOnp6bJu3Tr37aightER/T59+/ZVW/1idMQf7ML30ksvqepsCG7yC5XdEPjoLftGPkRERGTTIAQ5HFu3bpV+/fqpy3FxcarqmudIB7b3RelXVFPTN8pp3769z532KleuLEWKFFEb4eB7UIceNe3zKzk5WQVFesNGPkRERFbl0mIMaxG/RBfBBjatQdCgw1QMNsh57bXX1OgD7vP777+7p1f00ZFdu3bJs88+61UGdsOGDWqDHeSGFCsW/FbXeBy+NushIiKyIqc4VDPiOBEdhCD4ePvtt2XatGnSoUMHr9t69OihVsH07t1bPv74Y1m4cKE0aNDAfTtWvNx2223y2WefqSkcXfXq1QOuO09ERET2lO8gZPny5XLmzBl5+OGH1YiHJ9T4wAgIluKWLl1a7r//flX/wxOmZ3AfzyDkWrBT386dO72uq1q1qpQsWTK/T4OIiMgyXAZNpdhlOibfjxIBRLt27XIEIHoQsm3bNrU1cM+ePXMEIPp9li5dKqdOncpzn0hWbdq0qVf75JNP8vsUiIiILMXpMSUTXIvwkZBly5b5va1FixY5lulmh9ERNGjTps0173/w4MF8PlIiIiKyIu4dQ0REZBEuTscQERERhR5HQoiIiCzCGWW76DIIISIisghNHOIyoMYHjmMH9giViIiIKOJwJISIiMginJyOiXyoW+KrdomR4o+dFbN0adzelH5WfPu5Kf10affH0m1TOF3m9HM5/7tBB8Jx8YqYxVmqqCn9xBT+c8uHkIo176StFYg3p6OrWaZ0ox09LmaJKV825H04XOb9HWXn0hyqBcuIY5jBHqESERERRZyoHAkhIiKyIqfEqGbEceyAQQgREZFFuDgdQ0RERBR6HAkhIiKyCJfEqGbEceyAQQgREZFFODWHakYcxw7sESoRERFRxOFICBERkUW4mJhqXrEwf23SpEly8OBB9e/Y2Fj57bffvL7/2LFjEhcXp27H/YiIiCKBpsWIy4CG49hBWB4lggi9zZgxQxITE72u++tf/+q+b6VKleTtt9/2+v758+er64mIiMi+whKEJCUluVvx4sXViIbndUWL/lkOeuDAgTJv3jyv78dlXE9ERBRJnOIwrNmB5cdr7rnnHjlz5oxs3LhRXcZXXO7WrVu4HxoRERFFchASHx8v/fv3l7lz56rL+IrLuP5arly5IhkZGV6NiIjIqlzan8mpwTWxBcsHITBkyBBZvHixpKWlqa+4nBdTp05V0z16q1KlSsgfKxERUX65DEpMRbMDWzzKRo0aSb169aRfv35Sv359adiwYZ6+Lzk5WdLT093tyJEjIX+sREREFGF1QjD68eijj8q///3vPH9PgQIFVCMiIrIDlzhUM+I4dmCbIGTYsGHSu3dvKVGiRLgfChERUUg4o6xsu22CEBQnK1OmTLgfBhEREUVKEDJo0CDVsqtWrZpomv/03iZNmuR6OxERkd24DEoqtUtiatiDECIiIvLICdGiJyfEHqESERERRRwGIURERBah/W91TLANxwnUzJkzVSpEwYIFpWXLlrJ169Zc74+93+rWrSuFChVSdbjGjh0rly9fDqhPTscQERFZhOt/FU+NOE4gUlNTZdy4cTJr1iwVgCDA6Nixo+zbt0/KlSuX4/7vvfeePPXUU6qK+S233CI//vijyu/EXnDTp0/Pc78cCSEiIopy06dPV6UwBg8eLNdff70KRgoXLuzeMiW7TZs2ya233ioPPPCAGj3p0KGDKih6rdGT7BiEEBERRWjZ9oxs+6dhT7XsMjMzZfv27dKuXTv3dTExMery5s2bfT5OjH7ge/Sg48CBA7JixQrp0qVLQM83KqdjnBVLiyM2tJVUYy5milkcrkKm9NOl3f2m9LPii0Vilk7dHzKln9jzF03pJ7NySTGLw2nSEnmn05x+CiaY97M7f8mcjuLNOcW7LgWWBxAMhwm/J82s17YJ0zHZ90ybOHGiTJo0yeu6U6dOidPplPLly3tdj8t79+71eXyMgOD7brvtNlUuIysrS4YPHy5PP/10QI8zKoMQIiKiaHDkyBFJTEx0XzZqK5O1a9fKlClT5PXXX1c5JPv375cxY8bIP/7xD/m///u/PB+HQQgREVGE7h2TmJjoFYT4gmrksbGxcvz4ca/rcTkpKcnn9yDQeOihh2To0KHujWYvXLggf/nLX+SZZ55R0zl5wZwQIiIii3D9bzrGiJZXCQkJ0qxZM1m9evWfj8PlUpdbtWrl83suXryYI9BAIAOBVDPnSAgREVGUGzdunAwcOFCaN28uLVq0UEt0MbKB1TIwYMAAqVSpkkydOlVd7tatm1pR07RpU/d0DEZHcL0ejOQFgxAiIqIorxPSp08fOXnypEyYMEHS0tLU/myrVq1yJ6sePnzYa+Tj73//u6oJgq+//fablC1bVgUgzz33XED9MgghIiIiGTVqlGr+ElGz72yPlTZowWAQQkREFOUjIeHCIISIiMgiXFEWhAS9OgalXYsVK6YKlejOnz8v8fHx0qZNmxzDOZhD+vnnn1WZV/x74cKFOY7ZoEEDdVtKSor7e3Jr2YeJiIiIKAqCkLZt26qgY9u2be7rNmzYoNYWf/XVV1476v33v/+V6667TmrWrOmu5DZv3jyv423ZskUlxRQpUsRdGvbYsWPudv/990unTp28rsN9iIiI7E7zqBUS3C66URKEYBvfChUqeI1G4N/du3eX6tWrq6DC83oELboHH3xQ1q1bpyq66bBZDq5H0ou+fhkBjd6wZTAqvnleh/sQERHZnSsMdULCyZBiZQgsMMqhw78xFXPHHXe4r7906ZIaGfEMQrD0B1sFz58/3138BNsJDxkyxIiHRURERNEQhHz55ZcqL+TcuXPyzTffqACkdevW7hES7MSH3fs8gxBAwIHcD1RYe//999VUDdYnGwH9Zd9BkIiIyKpcHAkJHEY9UFnt66+/VvkgderUUYVLEIjoeSEIRmrUqKFyQjx17dpV5ZSsX79eTcUYOQqCym7Fixd3t+y7CRIREVmJi0FI4GrVqiWVK1dWUy9oCD6gYsWK6o1/06ZN6vo777wzx/ci9wOb4KDgCQIW5IMYJTk5WdLT093NM/eEiIiIwsuwDewwzYLRDjTPpbmYklm5cqVs3bo1x1SMDqMfSFBFMmvJkiWNekgqgVXfQTAvOwkSERGFkyvKRkIMK1aGAGPkyJFy9epV90gI4N8oA5uZmek3CKlfv76cOnVKChcubNTDISIish1Nc6hmxHGiLgjBCph69eq5N7zRgxAkq+pLef0pXbq0UQ+FiIiIoikIQQVUrHDJrmrVqj6vP3jwYK7HO3v2rM/rsZKGiIgoErn+V2zMiOPYAfeOISIisggX944hIiIiCj2OhBAREVmEFmWJqRwJISIiorDgSAgREZFFuKIsJ4RBCBERkUVonI4hIiIiCr2oHAmJPXNeYmOuhrQPLSE+pMf36isu1pyOnC5TuunU/SExy6qP3zGlny539TalnwIHT4lZssoVN6UfrahJlZR91DMKFcflTFP60RzmfBqOLV1KzOIsWiD0fWSZ91rwNYLhiqKRkKgMQoiIiKxIMygeDl8YFRhOxxAREVFYcCSEiIjIIlziUP8ZcRw7YBBCRERkERpXxxARERGFHkdCiIiILMKlOcTBYmVERERkNk0zaHWMTZbHcDqGiIiIwsJyQcigQYOkR48e7n87HA7V4uPjpXz58tK+fXuZO3euuFzmFM4iIiIyOzFVM6DZgeWCkOw6deokx44dk4MHD8rKlSulbdu2MmbMGLn77rslKysr3A+PiIjIMFqUBSGWzwkpUKCAJCUlqX9XqlRJbrzxRrn55pvlrrvukpSUFBk6dGi4HyIRERFF4kiIL3feeac0btxYPvzww1zvd+XKFcnIyPBqREREVuX6394xRjQ7sGUQAvXq1VNTNLmZOnWqFC9e3N2qVKli2uMjIiKiCA1CNE1TCau5SU5OlvT0dHc7cuSIaY+PiIgov0t0NQOaHVg+J8SfPXv2SPXq1a+ZT4JGRERkB5oKIIwo2y62YMuRkDVr1sh3330nvXr1CvdDISIiokgdCUFyaVpamjidTjl+/LisWrVK5Xpgie6AAQPC/fCIiIgMo0XZBnaWC0JQhCwu7s+HhaCjQoUK6rqSJUuqVTGvvPKKDBw4UGJibDmQQ0RE5BNmUYyYSbHJbIz1gpATJ05IrVq11L9RBwSNiIiIIo9lhhLOnDkjy5cvl7Vr10q7du3C/XCIiIhMp0VZxVTLBCFDhgyR4cOHy/jx46V79+7hfjhEREThm4/RDGgBmjlzplSrVk0KFiwoLVu2lK1bt/q9b5s2bdx7u3m2rl272nM6ZsmSJeF+CERERFEpNTVVxo0bJ7NmzVIByIwZM6Rjx46yb98+KVeuXI77o2J5Zmam+/Lp06dVzmbv3r3tORJCREQU9TSDpmICnI6ZPn26DBs2TAYPHizXX3+9CkYKFy6sdq33pVSpUmpfN719/vnn6v4MQoiIiGxKM7hiavb901D2IjuMaGzfvt0rHxOrT3F58+bNeXrcc+bMkb59+0qRIkUCer4MQoiIiCJUlSpVvPZQQ52t7E6dOqVqcZUvX97relxGna5rQe7I999/n69d7S2TE2Im14lT4nIkhLSPrJvqilkSDp02p6PLf87/hVLs+Ytili53BTZ0mF8rVi82pZ8uTTuIWbS4kuZ0lHnVnH7iYiXiXGN/LcNkZZnTD84PZy6EvA/NmXO0wK7Fyo4cOSKJiYnu60OxlQlGQRo1aiQtWrQI+HujMgghIiKyJC3wfA6/xxFRAYhnEOJLmTJlJDY2VlUl94TLyPfIzYULF2ThwoUyefLkfD1MTscQERFFsYSEBGnWrJmsXr3aq3o5Lrdq1SrX7128eLHKM+nfv3+++uZICBERkUVoHkmlwR4nEFiei+1QmjdvrqZVsEQXoxxYLQPYq61SpUo5ckowFdOjRw8pXbp0vh4ngxAiIqIo3zymT58+cvLkSZkwYYJKRm3SpInau01PVj18+HCO/dpQQ2Tjxo3y2Wef5fthMgghIiIiGTVqlGq+YEuV7OrWrStakMM2DEKIiIgsQjN4dYzVMTGViIiIwoIjIURERFaiSdQwbCRk0KBBKkNW/zd203v++ee97vPRRx+p6z3v469hJz/AV2TpZjdp0iSVOENERBQpNIP2jon66RhsBfzCCy/ImTNnfN7+8ssvy7Fjx9wN5s2b57789ddfh+qhERERUSQHIdj4BpXWfNWpB9Sw99yBD0qUKOG+XLZs2VA9NCIiImsv0dUMaNEchKAE7JQpU+TVV1+VX3/9NVTdEBERRRCHgS3KV8f07NlT5W1MnDhRwgGlZLNvY0xERERRskQXeSHz58+XPXv2iNkwFeS5hTG2NCYiIrIsjdMxhmrdurV07NhRkpOT8/X92P0vPT09x/Vnz55VgUVu0Ce+V2/Y0piIiMiytOgKQkypE4KlupiWQYnXQOF7tm/fnuP6HTt2XPN4BQoUUI2IiIiiNAhp1KiRPPjgg/LKK68E/L1jx46V22+/XZ577jm59957xel0yoIFC2Tz5s3y+uuvh+TxEhERhYXm+KMZcRwbMK1s++TJk8XlcgX8fbfccousXLlStVtvvVXatGkjmzZtktWrV0vDhg1D8liJiIjCQdOMa1E1EpKSkuLz3zpUPsVqFX9y24mvQ4cOqhEREVHk4N4xREREVqEZlFQabSMhREREFCSNOSFEREREIceRECIiIotwaH80I45jBxwJISIiorDgSAgREZFVaExMjXiOpHLiiA1tJdX4UxfFLK7Ewqb047jof4m1kTIrlxSzFDh4ypR+ujQ1Z4n5im8+E7N07tzPlH60I0dN6SemYpKYJi7WnH5izRnsdp45I2aJqVQ+5H1ozjC+g2tMTCUiIiIKuagcCSEiIrIkjdMxREREFA5adAUhnI4hIiKisOBICBERkVVo0TUSwiCEiIjIKjSujiEiIiIKOY6EEBERWYSDZdvNMWjQIHE4HDJ8+PAct40cOVLdhvt42rx5s8TGxkrXrl1NfKREREQm54RoBjQbCOt0TJUqVWThwoVy6dIl93WXL1+W9957T6677roc958zZ46MHj1a1q9fL0ePmlNFkYiIiCIwCLnxxhtVIPLhhx+6r8O/EYA0bdrU677nz5+X1NRUGTFihBoJSUlJCcMjJiIioohJTB0yZIjMmzfPfXnu3LkyePDgHPdbtGiR1KtXT+rWrSv9+/dX99M0m4w3ERER5YHDIy8kqCb2EPYgBAHFxo0b5dChQ6p9+eWX6jpfUzH69Z06dZL09HRZt25drse+cuWKZGRkeDUiIiKyhrAHIWXLlnVPr2BEBP8uU6aM13327dsnW7dulX79/ti1My4uTvr06aMCk9xMnTpVihcv7m6Y+iEiIrJ8nRDNgGYDlliiiymZUaNGqX/PnDkzx+0INrKysqRixYru6zAVU6BAAXnttddUgOFLcnKyjBs3zn0ZIyEMRIiIyLI0Vkw1HaZXMjMz1bLcjh07et2G4OPtt9+WadOmSYcOHbxu69GjhyxYsMDnMl9AkIJGRERE1mOJIAS1P/bs2eP+t6fly5fLmTNn5OGHH84x4tGrVy81SuIvCCEiIrIVLbpGQsKeE6JLTExULTsEGe3atfM55YIgZNu2bbJr1y6THiURERHZfiTkWnU+Pvroo2seo0WLFlymS0REEcMRZWXbLTEdQ0RERMLpGCIiIoo+M2fOlGrVqknBggWlZcuWqjRGbs6ePav2eqtQoYJaBFKnTh1ZsWJFQH1yJISIiCjKR0JSU1NVSYtZs2apAGTGjBlqtSrqdJUrVy7H/bGitX379uq2999/XypVqqQKjpYoUSKgfhmEEBERRXlOyPTp02XYsGHubVMQjHzyySdqi5Snnnoqx/1x/e+//y6bNm2S+Ph4dR1GUQLF6RgiIqIolpmZKdu3b1crUXUxMTHq8ubNm31+z9KlS6VVq1ZqOqZ8+fLSsGFDmTJlijidzoD65kgIERGRVWgGlVz/3zGy75nmq4jnqVOnVPCAYMITLu/du9fn4Q8cOCBr1qyRBx98UOWB7N+/Xx599FG5evWqTJw4Mc8PkyMhREREVssJ0QxoImqrEs891LCnmhFcLpfKB3njjTekWbNmaj+3Z555Rk3jBCIqR0IcWVnicHlXZjWaq0hBMY3DnI2KnKWKmtKPw2ne2rKscr73HTKaFlfSlH46d/5jk0czrFy5wJR+utzV25R+rpYoLGaJTztrSj+OS1dM6Se2Tk0xiyP9fMj7iHGZ83Mzw5EjR7wKgfraygSbxqJa+fHjx72ux+WkpCSfx8WKGOSCeFY5r1+/vqSlpanpnYSEhDw9Po6EEBERWSwx1WFA86xGrjdfQQgCBoxmrF692mukA5eR9+HLrbfeqqZgcD/djz/+qIKTvAYgwCCEiIgoQqdj8grLc998802ZP3++2sttxIgRcuHCBfdqmQEDBqid6XW4HatjxowZo4IPrKRBYioSVQMRldMxRERE9CfkdJw8eVImTJigplSaNGkiq1atcierHj58WK2Y0SHX5NNPP5WxY8fKDTfcoOqEICB58sknJRAMQoiIiKxCM2jfl3wcY9SoUar5snbt2hzXYapmy5YtEgwGIURERFahce8YIiIiopDjSAgREZFVaBwJISIiIoqOIKRNmzby+OOP57g+JSXFvSPfpEmTVLYuERFRpHIYXCfE6iwRhBAREVH0YRBCREREYRHRialXrlxRTZd9N0EiIiJL0ZiYGjGwW6Dn7oGo8EZERGRVDuaERA7UuU9PT3c37CZIRERE1mCJ6Rjs7IcgIbuzZ8+qEYz8wm6BvnYMJCIisixNooYlRkLq1q0rO3bsyHE9rqtTp05YHhMREVG07KIb1SMh2BL4tddek8cee0yGDh2qRi+wLfCCBQtk2bJl7vtdunRJdu7c6fW9xYoVk5o1a4bhURMREZHtg5AaNWrI+vXr5ZlnnpF27dpJZmam1KtXTxYvXiydOnVy3+/HH3+Upk2ben3vXXfdJV988UUYHjUREZGxHAYlldolMdUSQQjcdNNN8tlnn/m9HRVT0YiIiCKWxiW6RERERNEzEkJERBTtHJyOISIiorDQOB1DREREFHIcCSEiIrIKjSMhRERERCEXnSMhsbEiMbGh7WP/YTFLTLGi5vRTuJAp/YjTaU4/+LBQtLA5HWVeNaUb7chRMUuXu3qb0s+K1YtN6adL+z5iFtfxk6b046hcwZR+5PezYpo4E962XFkSLg4mphIREVFYaJyOISIiIgo5joQQERFZhRZdIyEMQoiIiCzCEWU5IZyOISIiorDgSAgREZFVaJyOISIiojBwcDqGiIiIKEKCkLS0NBk9erTUqFFDChQoIFWqVJFu3brJp59+KmXKlJHnn3/e5/f94x//kPLly8vVq1fF6XSq+9WrV08KFSokpUqVkpYtW8pbb71lxlMgIiIybzpGM6DZQMinYw4ePCi33nqrlChRQl588UVp1KiRCioQgIwZM0b69+8v8+bNk6eeesrr+zRNk5SUFBkwYIDEx8fLhAkTZPbs2fLaa69J8+bNJSMjQ7Zt2yZnzpwJ9VMgIiIyh8acEEM9+uij4nA4ZOvWrVKkSBH39Q0aNJAhQ4bIkSNH5OWXX5aNGzfKbbfd5r593bp1cuDAAXn44YfV5aVLl6pj9e79Z6noxo0bh/rhExERkR2nY37//XdZtWqVjBw50isA0WF0BCMjN910k8ydO9frNoyO3HLLLWr6BZKSkmTNmjVy8qQ5ey4QERGZzWFgk2gPQvbv36+mVfRAwh+MdixevFjOnz+vLp87d07ef/99NVKimz59ugpAEIzccMMNMnz4cFm5cmWux71y5YqatvFsRERElqVFV05ISIMQBCB50a9fP5V4umjRInU5NTVVYmJipE+fP3e1vP766+X777+XLVu2qODkxIkTKrl16NChfo87depUKV68uLshIZaIiIiiIAipXbu2ygfZu3dvrvdLTEyU++67T03BAL7ef//9UrSo9xb1CEwwdfP444/Lhx9+qBJX58yZI7/88ovP4yYnJ0t6erq7If+EiIjI6nVCHAY0ifYgBMtoO3bsKDNnzpQLFy7kuP3s2bNeUzJITl2+fLls2rTJnZCaG4yOgK9jA5YDI8DxbERERJalcTrGUAhAMNXSokUL+eCDD+Snn36SPXv2yCuvvCKtWrVy369169ZSq1YttSQXOSRISvWEkZJ//etf8tVXX8mhQ4dk7dq1KuG1Tp0618w5ISIioigMQlCgbMeOHdK2bVsZP368NGzYUNq3by+rV6+Wf//73+77YdoGuR6o++GZkKrDiMqyZctUHggCj4EDB6rg47PPPpO4OFafJyKiCKFFxygImPLuXaFCBVVkDC03yOFA82XYsGGqERERUWTg3jFEREQW4QhjYirSJ6pVqyYFCxZU26KgyKg/WBiCGQzPhu8LFIMQIiKiKE9MTU1NlXHjxsnEiRNVCgUqkiMNAuUw/MFij2PHjrkb8jUDxSCEiIgoyk2fPl2lPAwePFitPJ01a5YULlw4RzVzTxj9QAFRvWHD2UAxCCEiIori6ZjMzEzZvn27tGvXzqsuFy5v3rzZ7/ehynnVqlVVIdDu3bvL7t27A36+DEKIiIgidDomI9vWJdjOJLtTp06pUhrZRzJwOS0tzefDrFu3rhol+fjjj+Xdd98Vl8ulSmv8+uuvAT1dBiFEREQRqkqVKl7bl2A7EyOgzhfqejVp0kTuuOMOVcW8bNmyMnv27ICOE50FNlwu/C+kXThiY8Used2jJ2ixJsWsBRPENGb97OLMeT3EVEwSs1wtUdiUfrq0/3MPqVBa8XmqmKVzh76m9OM4dcaUfqRQITFNVlbo+3CEbw9ah0El1/VjYLsSz2rhqCSeXZkyZSQ2NlaOHz/udT0uI9cjL+Lj46Vp06Zq49pAcCSEiIgoQqdjErNtXeIrCElISJBmzZqpIqI6TK/gsmdl89xgOue7775TdcECEZ0jIUREROSG5bmoRN68eXO1zcqMGTPUvmxYLQOYeqlUqZJ7Omfy5Mly8803q+1WsA/ciy++qJbo5razvS8MQoiIiKxCM6jseoDH6NOnj5w8eVImTJigklGR67Fq1Sp3surhw4fVihkdtljBkl7ct2TJkmokBZvP6hvL5hWDECIiIotwGJwTEohRo0ap5gs2jfWEDWXRgsWcECIiIgoLjoQQERFF+XRMuDAIISIisgiHpqlmxHHsgNMxREREFB1ByKBBg9zb/qK4CTJv27dvr8q/Yl2yDtsJY4mQ7ttvv5V77rlHypUrp7YLxu3I5s1thz8iIiJb0cKzi25UjYR06tRJbft78OBBWblypbRt21bGjBkjd999t2T5qIaHZUN33XWXlCpVSj799FPZs2ePzJs3TypWrKjWMRMREZH9hCUnBBXb9FKwKH5y4403qqInCDRSUlJyFDv58ssvJT09Xd566y2Ji/vjIVevXl0FL0RERJHCEcYlulGdE3LnnXdK48aN1SY42SFgwQjJkiVLzNsnhYiIyGwap2PCpl69emqKJjuMkjz99NPywAMPqI12OnfurErEZt9sJztsWZx9G2MiIiKyBksFIRjlQMKqL88995wqDztr1ixp0KCB+oqgBRvm+IMa955bGGNLYyIiIqtPxzgMaHZgqSAECafI9fCndOnS0rt3b3nppZfUfZGYin/7k5ycrHJJ9IYtjYmIiCxLi67pGMsUK1uzZo0a1Rg7dmye7o+th2vWrJnr6hgkwPratpiIiIiiNAhBrgamVpxOp8rrwE59mDrBEl1sF5zd8uXLZeHChdK3b1+pU6eOmrZZtmyZrFixQi3VJSIiigSOKFsdE5YgBEFHhQoV1HJbbAGMVTGvvPKKDBw40GurYB22Bi5cuLCMHz9eTalgdKN27dpqye5DDz0UjqdARERkPI17x4QU6oCgXYvnKpkaNWrIG2+8EeJHRkRERFGZE0JERERim6kUIzAIISIisgpN+6MZcRwbsNQSXSIiIooeHAkhIiKyCAdXxxAREVFYaNG1OobTMURERBQWHAkhIiKyCIfrj2bEcewgKoMQ1+9nxeVICGkfMUWLiFm0EsXM6adAvCn9OM5fMqUf1dflTIkocbGmdRWfdtaUflzHT5rST+cOfcUsKz9baEo/nTuZ85wcR835Ham+4kx427LJypJIEJVBCBERkSVp0ZUTwiCEiIjIIhxRtjqGialEREQUFhwJISIisgotuiqmMgghIiKyCAenY4iIiIhCjyMhREREVqFxdQwRERGFgYPTMcHbvHmzxMbGSteuXb2uP3jwoDgcDnXbb7/95nXbsWPHJC4uTt2O+3neX2/FihWTBg0ayMiRI+Wnn34KxUMnIiIiOwchc+bMkdGjR8v69evl6NGjOW6vVKmSvP32217XzZ8/X13vyxdffKGClG+//VamTJkie/bskcaNG8vq1atD8fCJiIjCuzpGM6BFYxBy/vx5SU1NlREjRqiRkJSUlBz3GThwoMybN8/rOlzG9b6ULl1akpKSpEaNGtK9e3cVlLRs2VIefvhhcTqdRj8FIiKisE7HOAxoURmELFq0SOrVqyd169aV/v37y9y5c0XLFpHdc889cubMGdm4caO6jK+43K1bt7w96JgYGTNmjBw6dEi2b9/u935XrlyRjIwMr0ZEREQRGoRgKgbBB3Tq1EnS09Nl3bp1XveJj493ByiAr7iM6/MKgQ7o+SO+TJ06VYoXL+5uVapUyeezIiIiMnF1jGZAi7YgZN++fbJ161bp16+fuoxE0z59+qjAJLshQ4bI4sWLJS0tTX3F5UDooytIWPUnOTlZBUF6O3LkSMDPiYiIyCyOKJuOMXSJLoKNrKwsqVixolewUKBAAXnttde87tuoUSM1moGApX79+tKwYUPZuXNnnvtCcipUr17d733QLxoRERFF8EgIgg+seJk2bZoKJvSGFS0IShYsWJDjezD6sXbt2oBHQVwul7zyyisqAGnatKlRT4GIiCi8XJpxLZpGQpYvX66SS7FiBfkXnnr16qVGSZAj4mnYsGHSu3dvKVGiRK7HPn36tJq2uXjxonz//fcyY8YMNe3zySefqJojREREEUFjxdR8QZDRrl27HAGIHoT885//zLE6BTkjZcqUueaxcVwoXLiwVK1aVdq2bStvvPGG1KpVy6iHT0RERHYNQpYtW+b3thYtWrgTSbMv1/XUpEkTr9urVauW6/2JiIgiicOgkuv+l2xYC3fRJSIiIpk5c6b68F+wYEFVEBRpD3mxcOFCtVK1R48eAffJIISIiCjKy7anpqbKuHHjZOLEibJjxw61NUrHjh3lxIkTuX4fanX99a9/ldtvvz1fT5dBCBERUZTXCZk+fbpaLDJ48GC5/vrrZdasWSoPUy8q6gu2TXnwwQfl2WefVduq5AeDECIiogiVkW3rEmxnkl1mZqbaAkVfBKJvj4LLmzdv9nvsyZMnS7ly5dSq2PxiEEJERBShZdurVKnitX0JtjPJ7tSpU2pUo3z58l7X4zLKY/iCPd+wKvbNN9+0TsVUIiIiyj+HpqlmxHEA25UkJia6rzeiivi5c+fkoYceUgFIXsps5CYqgxBHQoI4YhJC2oeWWFTM4riUc3gtJK5mmdNPvHkvSy2XvYcMZVY/sTER97pzVK5gTj+nzohZOnfqa0o/K1ctNKWfzjVuFrM4SpYwoRO7LHC9NgQgnkGILwgkUPjz+PHjXtfjclJSUo77//zzzyoh1XPne1Qy1+t/YR+5mjVr5uHRcTqGiIjIOlwGtjxKSEiQZs2ayerVq/98GC6XutyqVasc98e+b999953XFi333HOPKiSKfweyY31UjoQQERFFw3RMXmF57sCBA6V58+aqwCi2R7lw4YJaLQMDBgyQSpUqqZwS1BHBprOe9O1Xsl9/LQxCiIiIolyfPn3k5MmTMmHCBJWMigrmq1atcierHj58WK2YMRqDECIiIqvQwreB3ahRo1TzBTve5yYlJSXwDhmEEBERWYgWeLVTv8exASamEhERUVhwJISIiMgiHPkoue7vOHbAIISIiMgqNE7H+DVo0CC1Xe/zzz/vdf1HH32krv/ggw9UwZPffvvN5/fXrl1bLQOCNm3aqO9BQwU3LP1B4ZMPP/zQb/9Ym4z7+isjS0RERPYRcE4I1ge/8MILcuZMzuqCKFZSunRpmT9/fo7b1q9fL/v37/fa6AY79h07dkxVX0MAg537+vbtK3/5y1981qm/dOmS3HfffT6PT0REZHcOl3EtIoMQ7KqHMq6+NsGJj49X9eR9LdXBdsAtW7aUBg0auK/DNsE4VuXKleXmm29Wwc3s2bNVPfovvvjC6/uxUc4DDzygjp/b1sJEREQUoUEIplumTJkir776qvz66685bsdIx08//aRGPnTnz5+X999/P0/b/aJiW8mSJb2mZbBZzuLFi6V///7Svn17SU9Plw0bNgT60ImIiOyRE6IZ0CJ1iW7Pnj1VNbWJEyfmuA1TKhjV8BytWLRokWiapqZarvmAYmKkTp06anMc3cKFC1U+CUZREAThOBgZuZYrV65IRkaGVyMiIrJ8sTLNgBbJdUIwdYLcjD179uS4bciQIWrkAyMYgICkd+/eUqxYsTwdGwELElZ1+H6Mgujwb4yM6Mf3B1NGxYsXd7dANtUhIiIiiwYhrVu3lo4dO0pycnKO2/QRD4yAYGrmyy+/zNNUDDidTvU91atXV5d/+OEH2bJlizzxxBNqi2A0jLRcvHhRjZDkBo8NUzd6O3LkSL6eKxERkZkb2DkMaBFfJwRLdTEtU7duXa/rMeKBkQ+MYGDlC6ZXbr/99jwdE6MrWHnTq1cvdRnTLgh4Zs6c6XW/efPmqduwwsYfLOdFIyIisgUtuuqEBBWENGrUSB588EF55ZVXctyGkQ8EHpiuefLJJ31+P0YzUPMjKytLJbkuWbJE/vWvf8mIESOkbdu2cvXqVXnnnXdk8uTJObYHHjp0qEyfPl12797tteKGiIiIJDr2jkGA4HLlXJB82223qRESJIMOGDDA5/diKW6FChWkZs2acu+996qpl9TUVHn99dfV7UuXLpXTp0+rRNjs6tevr1peElSJiIhsQRMRlwHNHgMhgY2E+Kr/Ua1aNbUKxZe9e/f6Pda1tgUGTMkgR8QfBC1ERESRwmFQPoddckK4iy4RERGFBTewIyIisgrNoKRSewyEMAghIiKyDC26VsdwOoaIiIjCgiMhREREVuFCVqlBx7EBBiFEREQW4Yiy1TFRGYQ4ChYQR0yIK6le9r1sORS0hHhz+jl63JR+XJcui1liS5cyp6OsLFO6cZ45I2aJrVPTnI5+P2tOP4UKmXcOOnrSlH4617jZlH5WHtgiZul6a/fQd2KTUYRIEJVBCBERkSVp0ZWYyiCEiIjIKrToCkK4OoaIiIjCgiMhREREVqFxJISIiIgo5DgSQkREZBUu1gkhIiKiMHBEWZ0QTscQERFR9AQhgwYNEofDoVpCQoLUqlVLJk+eLFlZWbJ27Vr3bWiFChWSBg0ayBtvvJHjGD169AjHwyciIgptYqpmQLOBsE3HdOrUSebNmydXrlyRFStWyMiRIyU+Pl5atWqlbt+3b58kJibKpUuXZNmyZTJixAipWbOm3HXXXeF6yERERKHl0jCXYsxxbCBs0zEFChSQpKQkqVq1qgow2rVrJ0uXLnXfXq5cOXV79erV5bHHHlNfd+zYEa6HS0RERJGaE4Jpl8zMzBzXa5omq1atksOHD0vLli3D8tiIiIhMoXE6xlQIMlavXi2ffvqpjB492n195cqV1VdM17hcLpUz0rp164COje9F02VkZBj4yImIiIymGRRAMAjJ1fLly6Vo0aJy9epVFWQ88MADMmnSJPn666/V7Rs2bJBixYqpIGLr1q0yatQoKVWqlJq6yaupU6fKs88+G8JnQURERLYLQtq2bSv//ve/1eqYihUrSlyc90NBDkiJEiXUv7E65quvvpLnnnsuoCAkOTlZxo0b5zUSUqVKFQOfBRERkYG06CrbHrYgpEiRImppbl7FxsaqlTKBJr+iERER2YILwUP0rI4Je06IPydOnJDLly+7p2Peeecdue+++8L9sIiIiCjSg5C6deuqr5imwRTKI488onJGiIiIIpbm+qMZcRwbCEsQkpKS4ve2Nm3aqBUzwRyDiIjIlrToygmxTJ0QIiIiCp+ZM2dKtWrVpGDBgqouF1Ih/Pnwww+lefPmagEJcjybNGmi0iYCxSCEiIjIKlyacS0AqampajXpxIkTVXXyxo0bS8eOHVV+pi8omfHMM8/I5s2bZdeuXTJ48GDVUPMrEAxCiIiIotz06dNl2LBhKpC4/vrrZdasWVK4cGGZO3eu39SJnj17Sv369dW+bmPGjJEbbrhBNm7cGFC/DEKIiIgitGx7RkaGV/OsIq7Dlinbt29Xe7jpYmJi1GWMdOS18jk2ng20sjmDECIiIqvQjApE/jgcVpcWL17c3VBJPLtTp06J0+mU8uXLe12Py2lpaX4fanp6uqp8jqKjXbt2lVdffVXat28fGUt0iYiIKDhHjhyRxMRE92UjC3hia5WdO3fK+fPn1UgIckpq1KihpmryikEIERFRhC7RTUxM9ApCfClTpoyqSn78+HGv63E5KSnJ7/dhykavfI7VMXv27FEjLQxCrkErkCBabEJo+yhoXrl4h0nrwWPKlzWlH0fB0P5uPDmLmvN7ij1zwZR+Yip5D6eGkiP9vDkdZdtXKmSyssz72Zn0nBwl/9h/K9S63tpdzPLJlx+HvI+Mcy4pWUfCw4UiYy6DjpM3mE5p1qyZGs3o0aPH/77dpS5j89i8d+nymXOSm6gMQoiIiOhPmEoZOHCgqv3RokULmTFjhly4cEGtloEBAwZIpUqV3Dkl+Ir7YmUMAo8VK1aoOiHYmDYQDEKIiIiivGJqnz595OTJkzJhwgSVjIrplVWrVrmTVQ8fPqymX3QIUB599FH59ddfpVChQlKvXj1599131XEC4dDyUiM9QmB5ErKD76rxmMTFhnYYPhKnYxyXAhtmyy+N0zFBTTWaJcas6ZirV83px+EQ05h12jXrOZl4vjNvOuaAWv1xrXwKo9+f2pUZInExwf8dZ7ky5YtTc019DvnBJbpEREQUFpyOISIisgqXKhRi0HGsj0EIERGRRWiaSzUjjmMHnI4hIiKisOBICBERkVVoge+A6/c40T4S4nA4cm2TJk1y3/eDDz6QO++8U0qWLKmW+9StW1eGDBki33zzjaxdu/aax8J9iIiIbE0zdgO7qB4JOXbsmPvfqampav0xdtnTYeMbePLJJ2XatGny2GOPybPPPitVq1ZV65VXrlwpycnJsnTpUq9jYctgLGeaN2+e+7pSpUqF8qkQERGRnYIQz5rzWP+MEYvsdei3bNki//znP+Xll19WQYjuuuuuU2VkUcYk+/dhpAQV2nKraU9ERGQ7LpeIw4CkUpskpoY9J2TBggVqRASV13xBAJJfCFQ869hj9ISIiIisIeyrY3788Ue19W+cx4ZO06dPV4GJ3lDxLT9Q2x4jMHqrUqWKgY+ciIjIYFp05YSEPQjxBQmpO3fulNmzZ6v69PmtLI98EgQwejty5Ijhj5WIiMgomstlWLODsE/H1K5dWzZu3ChXr16V+Ph4dV2JEiVUw8Y4wShQoIBqREREZD1hHwnp16+fnD9/Xl5//fVwPxQiIqLw0qJrOibsIyGtWrWS8ePHq3bo0CG59957Ve4GluTOmTNHJaZ6bh9MREQUsVwatkYP/jg2CUIs8e7+0ksvyXvvvacKk919991qiqZ3797icrlk8+bNlt6GmIiIiCw+EjJo0CDV/Ln//vtVy4uUlBQDHxkREZFFaBjBcEXNSEjYp2OIiIjoD5pLE82A6Zj8riqNyukYIiIiij4cCSEiIrIKDVMxLNtOREREJtM4HUNEREQUelE1EqJHhlmuK6HvyymmcZgU8TpM+LmB5jQvgndmmdOX5oy8n12MSa8HcWWZ008Qm2UGzKxPqWY9JxNH/jPOhb6zjPOusI0mZGlXDJlKyZKrYgdRFYScO3dOfV13cHa4HwoREeVDyTrmvmdg81MzJCQkSFJSkmxMW2HYMXE8HNfKHJpdJo4MgOJnR48elWLFiqlKrHmRkZGhKrhi87tQFk2LtH7M7CvS+jGzr0jrx8y+Iq0fM/uyej94W0QAUrFiRVMrdl++fFkyMzMNOx4CkIIFC4qVRdVICF5MlStXztf34gVsRuXWSOvHzL4irR8z+4q0fszsK9L6MbMvK/dj1giIJwQMVg8ajMbEVCIiIgoLBiFEREQUFgxCrqFAgQIyceJE9ZX9WLOvSOvHzL4irR8z+4q0fszsK9L6ofyLqsRUIiIisg6OhBAREVFYMAghIiKisGAQQkRERGHBIISIiGxt/fr1kpVlUnl/MhSDELIVnmyIKLu2bdvK77//Hu6HQfnA1TEeUKYXJd1zs27dOrnjjjskEpw9e1ZWrFghDzzwQFDHOXz4cJ7ud91110mwYmNj5dixY1KuXDkJdYn/lJQU+fDDD+XgwYOqzH/16tXlvvvuk4ceeijPZf/JfIcOHZILFy5IvXr1TC25bRSckrdv3+71umvatClfc7nA7zktLS3k5wUKAQQh9Ic77rhDu3z5st/b165dqxUtWlSLFDt37tRiYmKCPg6OoTeHw6Fa9uuM6AdwrOPHj2uh5HK5tK5du6q+mjRpovXt21fr06ePdsMNN6jrunfvrkWq7777zpR+fv75Z619+/ZBHWPOnDnatGnTvK4bNmyY+3VXv3597fDhw5qdrFmzRqtevXqOv6WaNWtq69atM/Wx/PDDD9r48eM1O8DP6cSJE+F+GJQPUbV3zLWcPn1a7r//flmyZEmOT1CYBujatasMHjw46H7wKeevf/2rfPzxxzn2M0hPT5cePXrIjBkzpHHjxmIH+ISGPXkGDRok3bp1k7i40L6sQv2JECMg+H2vXr1aDfN6WrNmjfr9vP322zJgwABD+vP3KRd7V9SpU0cef/xxqV+/voRyBHDBggXy1ltvqdem0+kMWV+efeLnG4w33nhDHnnkEfflVatWybx589TvBj+vUaNGybPPPqueV7BOnTqlRleqVq3qvm737t3y0ksvqevxmgh2RHH//v1y9913S8uWLeVf//qXGsnBqMgPP/wgr7zyinTp0kV27dolNWrUkFDBc1m4cKHMmTNHtmzZItdff716jsG4995783Q/jDoGA+efaxUlC7YPMh6DEA+ffvqp3H777erFjBOZbsOGDerkMHDgQHn11VeD7mfatGly5513+txQCW887du3lxdffFHeffddsYNff/1V5s+fr94AZs2aJf3795eHH344ZG+coT7Z4A356aefzhGAAH5vTz31lPznP/8xLAjBG5i/6bIdO3ZIkyZNVPBz6623ipEQaOHN5oMPPlC7heLNYubMmWIXP/30kzRv3tx9GUF99+7d5cEHH1SXp0yZYsiHBhg9erT6GeFvF06cOKHOFbiuZs2a6jWJ4A1TdfmFDx4333xzjuAMwUjPnj2lXbt2Kjgx4hyU3ZdffqleC4sWLZJLly7J2LFjZe7cuarvYJm1ERym0gsVKmRKX2Sg/AyfRLL9+/drFSpU0B577DF1ecOGDWoK5pFHHjGsjxo1amjffvut39t37dqlhmTtMh3jCT+vIUOGaMWKFdNatmypvfHGG5rT6TR02BVTI4MGDcq1BaN8+fLaN9984/f2HTt2qPuY5emnn9buvPNOQ4517NgxberUqVqtWrW0cuXKaaNGjdLi4uK03bt3a2Yy4rVXqFAh7eDBg+7LmC57+eWX3ZcPHTqkFSxYUDNCtWrV1HSs7sUXX1RTJFevXnVfxus9GA0aNNCWLl3q93bchvsYBdOaL7zwgla3bl0tKSlJGzt2rPb111+H5fVgh2laCg2OhGSDTzUY1m3Tpo2aGsHUTL9+/dQnfKP89ttvuSbAFi1aVCVfBgtDuNd6HEa77bbbVMOnUPzchg8fLr169ZJSpUoZ1geeVygT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", "text/plain": [ "
" ] @@ -487,7 +278,7 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 65, "metadata": { "id": "70ib0FwA_YO5" }, @@ -499,7 +290,7 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 66, "metadata": { "colab": { "base_uri": "https://localhost:8080/" @@ -511,24 +302,24 @@ { "data": { "text/plain": [ - "OrderedDict([('AAPL', 0.04712),\n", - " ('AMD', 0.0),\n", - " ('BAC', 0.03863),\n", - " ('BLK', 0.06667),\n", - " ('CVS', 0.06667),\n", - " ('DIS', 0.06667),\n", - " ('INTU', 0.06667),\n", - " ('JD', 0.19043),\n", - " ('MA', 0.06667),\n", - " ('NVDA', 0.05715),\n", - " ('PBI', 0.06667),\n", - " ('TGT', 0.06667),\n", + "OrderedDict([('BLK', 0.06667),\n", + " ('BAC', 0.07983),\n", + " ('AAPL', 0.06667),\n", " ('TM', 0.06667),\n", + " ('WMT', 0.06667),\n", + " ('JD', 0.06667),\n", + " ('INTU', 0.06667),\n", + " ('MA', 0.0443),\n", " ('UL', 0.06667),\n", - " ('WMT', 0.06667)])" + " ('CVS', 0.07587),\n", + " ('DIS', 0.06667),\n", + " ('AMD', 0.06667),\n", + " ('NVDA', 0.06667),\n", + " ('PBI', 0.06667),\n", + " ('TGT', 0.06667)])" ] }, - "execution_count": 11, + "execution_count": 66, "metadata": {}, "output_type": "execute_result" } @@ -556,7 +347,7 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 67, "metadata": { "colab": { "base_uri": "https://localhost:8080/" @@ -568,24 +359,24 @@ { "data": { "text/plain": [ - "OrderedDict([('AAPL', 0.0),\n", + "OrderedDict([('BLK', 0.02806),\n", + " ('BAC', 0.34701),\n", + " ('AAPL', 0.0),\n", + " ('TM', 0.0622),\n", + " ('WMT', 0.06667),\n", + " ('JD', 0.07787),\n", + " ('INTU', 0.0),\n", + " ('MA', 0.0),\n", + " ('UL', 0.0),\n", + " ('CVS', 0.28462),\n", + " ('DIS', 0.0431),\n", " ('AMD', 0.0),\n", - " ('BAC', 0.0),\n", - " ('BLK', 0.06667),\n", - " ('CVS', 0.0538),\n", - " ('DIS', 0.0),\n", - " ('INTU', 0.00851),\n", - " ('JD', 0.298),\n", - " ('MA', 0.27222),\n", - " ('NVDA', 0.0),\n", + " ('NVDA', 0.02379),\n", " ('PBI', 0.0),\n", - " ('TGT', 0.0),\n", - " ('TM', 0.06667),\n", - " ('UL', 0.14875),\n", - " ('WMT', 0.08539)])" + " ('TGT', 0.06667)])" ] }, - "execution_count": 12, + "execution_count": 67, "metadata": {}, "output_type": "execute_result" } @@ -611,7 +402,7 @@ }, { "cell_type": "code", - "execution_count": 13, + "execution_count": 68, "metadata": { "colab": { "base_uri": "https://localhost:8080/" @@ -623,24 +414,24 @@ { "data": { "text/plain": [ - "OrderedDict([('AAPL', 0.0623),\n", - " ('AMD', 0.05356),\n", - " ('BAC', 0.06263),\n", - " ('BLK', 0.07041),\n", - " ('CVS', 0.06715),\n", - " ('DIS', 0.06528),\n", - " ('INTU', 0.06667),\n", - " ('JD', 0.07589),\n", - " ('MA', 0.07336),\n", - " ('NVDA', 0.06317),\n", - " ('PBI', 0.0644),\n", - " ('TGT', 0.06588),\n", - " ('TM', 0.06934),\n", - " ('UL', 0.07131),\n", - " ('WMT', 0.06866)])" + "OrderedDict([('BLK', 0.06676),\n", + " ('BAC', 0.07158),\n", + " ('AAPL', 0.06283),\n", + " ('TM', 0.06769),\n", + " ('WMT', 0.06878),\n", + " ('JD', 0.06939),\n", + " ('INTU', 0.06472),\n", + " ('MA', 0.06166),\n", + " ('UL', 0.0629),\n", + " ('CVS', 0.07157),\n", + " ('DIS', 0.06681),\n", + " ('AMD', 0.06446),\n", + " ('NVDA', 0.06675),\n", + " ('PBI', 0.06572),\n", + " ('TGT', 0.06837)])" ] }, - "execution_count": 13, + "execution_count": 68, "metadata": {}, "output_type": "execute_result" } @@ -665,7 +456,7 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": 69, "metadata": { "colab": { "base_uri": "https://localhost:8080/" @@ -677,24 +468,24 @@ { "data": { "text/plain": [ - "OrderedDict([('AAPL', 0.02309),\n", - " ('AMD', 0.0),\n", - " ('BAC', 0.01226),\n", - " ('BLK', 0.099),\n", - " ('CVS', 0.06667),\n", - " ('DIS', 0.04427),\n", - " ('INTU', 0.05892),\n", - " ('JD', 0.16678),\n", - " ('MA', 0.14089),\n", - " ('NVDA', 0.02294),\n", - " ('PBI', 0.03273),\n", - " ('TGT', 0.04921),\n", - " ('TM', 0.08801),\n", - " ('UL', 0.11292),\n", - " ('WMT', 0.08232)])" + "OrderedDict([('BLK', 0.06667),\n", + " ('BAC', 0.13774),\n", + " ('AAPL', 0.0232),\n", + " ('TM', 0.07336),\n", + " ('WMT', 0.09046),\n", + " ('JD', 0.09757),\n", + " ('INTU', 0.03845),\n", + " ('MA', 0.013),\n", + " ('UL', 0.02072),\n", + " ('CVS', 0.13294),\n", + " ('DIS', 0.06667),\n", + " ('AMD', 0.0389),\n", + " ('NVDA', 0.06667),\n", + " ('PBI', 0.05086),\n", + " ('TGT', 0.08281)])" ] }, - "execution_count": 14, + "execution_count": 69, "metadata": {}, "output_type": "execute_result" } @@ -710,7 +501,7 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": 70, "metadata": { "colab": { "base_uri": "https://localhost:8080/" @@ -723,9 +514,9 @@ "name": "stdout", "output_type": "stream", "text": [ - "Expected annual return: 17.0%\n", - "Annual volatility: 10.1%\n", - "Sharpe Ratio: 1.69\n" + "Expected annual return: 3.0%\n", + "Annual volatility: 9.7%\n", + "Sharpe Ratio: 0.31\n" ] } ], @@ -744,7 +535,7 @@ }, { "cell_type": "code", - "execution_count": 16, + "execution_count": 71, "metadata": { "colab": { "base_uri": "https://localhost:8080/", @@ -756,7 +547,7 @@ "outputs": [ { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAxYAAAMWCAYAAABsvhCnAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/GU6VOAAAACXBIWXMAAA9hAAAPYQGoP6dpAADRu0lEQVR4nOzdd3hb5dk/8K+OtjUsee8VO9NxdsiehBASRtirJRBGB93l7Vu6B4XSUtrf2/m2Bd4SChQoUEYIKwkhe+9FYjvee8qy9u+PkBBn2pbOeY6k7+e6fAGydM7XIZZ06zzPfWsAhEBERERERBQGSXQAIiIiIiKKfiwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiIiIiIgobCwsiCgmPf3003j11VdP/3soFMJ3vvOdPve59tprEQqF+tznQl/l5eUAgPLycnzta18753w/+tGPsHPnTpl/KiIiIvViYUFEccHtduM73/kOHA7Heb//ta99DRkZGae/AGDZsmWn/3vSpEkKpiVRziwwvV4v6uvr8e677+Luu++GRqM5fb+zC8yysjK8/vrraGhogNvtRnl5OV544QWkpqaK+DGIiIRgYUFEceH9999HfX09vvvd7573+52dnWhoaDj9BQDt7e2n/7u5uVnJuCTQypUrkZGRgYKCAixatAirV6/G7373O7z55pvQarXn3D8lJQUffPABWltbsXDhQowYMQJ33303amtrYbFYBPwERERi6EQHICJSQiAQwMMPP4x//vOf+H//7/+hpqZGdCRSKY/Hc7q4rK2txc6dO7Fp0yZ8+OGHWLZsGf7+97/3uf/06dORmJiIe++9F4FAAABQUVGBNWvWKB2diEgoXrEgorjx2muvYdeuXfjJT34iOgpFmdWrV2PXrl24/vrrz/lefX099Ho9li5dKiAZEZF6sLAgorjyne98B3fddReGDx8uOgpFmUOHDqGgoOCc2zdv3oxHHnkE//znP9Hc3Iy3334b3/72t5GWlqZ8SCIigVhYEFFcWbduHVatWoVHH310UI/v7OxEYmLiObc7HA50dHSEG49UTKPRnO4idrbvf//7yMjIwBe+8AXs378fX/jCF3Do0CGUlpYqnJKISBwWFkQUd/77v/8bV199NaZOnTrgxx4+fBgTJkw45/bx48fjyJEjkYhHKjVixIjTbYfPp7W1FS+//DIeeughjBgxArW1tfj2t7+tYEIiIrG4eZuI4s6+ffvw3HPP4atf/eqAH/vkk09i3bp1ePjhh/Hvf/8bWq0Wt912G6ZOnYovfelLMqQlNZg7dy7Kysrw5JNP9uv+Pp8Px44dY1coIoorvGJBRHHphz/8ISRp4E+BGzduxKJFi7Bo0SKsX78ea9aswbRp0zB//nzs379fhqSkNKPRiPT0dGRlZWHcuHH47ne/i9dffx1vvPEG/vGPf5xz/8WLF+PZZ5/F4sWLUVJSgqFDh+Jb3/oWrrrqKrz++usCfgIiInFC/OIXv/jFL37xC6Gnn346dIrX6w01NDSE3n333dCyZctCGo3m9P3Ky8tDX/va10IAQoWFhaG//OUvoUOHDoVcLleotbU1tHnz5tBdd90l/OfhF7/4xS8lvzSf/gsREREREdGgcSkUERERERGFjYUFERERERGFjYUFERERERGFjYUFERERERGFjYUFERERERGFjYUFERERERGFjYUFERERERGFjYUFERERERGFjYUFERERERGFjYUFERERERGFjYUFERERERGFjYUFERERERGFjYUFERERERGFjYUFERERERGFjYUFERERERGFjYUFERERERGF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", + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAxYAAAMWCAYAAABsvhCnAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAA2SBJREFUeJzs3QecVOXVP/DfnZmd2Tbbe6ErICAqIqKyiMHeNSYaTWKKKSam//Mmvm8Skzc9MTF51USNDRXF3gEr2OhtgWVhG9vb7E7v5f4/dxaQzpa589yZ+X3zmbDMztx7dl125tznnPNIsizLICIiIiIiGgPdWJ5MRERERESkYGJBRERERERjxsSCiIiIiIjGjIkFERERERGNGRMLIiIiIiIaMyYWREREREQ0ZkwsiIiIiIhozJhYEBERERHRmDGxICIiIiKiMWNiQUREREREY8bEgoiIiIiIxoyJBRERERERjRkTCyIiIiIiGjMmFkRERERENGZMLIiIiIiIaMyYWBARERER0ZgxsSAiIiIiojFjYkFERERERGPGxIKIiIiIiMaMiQUREREREY0ZEwsiIiIiIhozJhZERERERDRmTCyIiIiIiGjMmFgQEREREdGYMbEgIiIiIqIxY2JBRERERERjxsSCiIiIiIjGjIkFERERERGNGRMLIiIiIiIaMyYWREREREQ0ZkwsiIiIiIhozJhYEBERERHRmDGxICIiIiKiMWNiQUREREREY8bEgoiIiIiIxoyJBRERERERjRkTCyIiIiIiGjMmFkRERERENGZMLIiIiIiIaMyYWBARERER0ZgxsSAiIiIiojFjYkFERERERGPGxIKIiIiIiMaMiQUREREREY0ZEwsiIiIiIhozJhZERERERDRmTCyIiIiIiGjMmFgQEREREdGYMbEgIiIiIqIxY2JBRERERERjxsSCiIiIiIjGjIkFEZFKJEk67u2uu+7C3r17ox/r9Xp0dnYe8vzu7m4YDIbo55XHERERaRkTCyIilSiJwf7bPffcg5ycnEPu+8lPfnLgsZWVlViyZMkhz3/88cej9xMRESUCJhZERCopKys7cMvNzY2uPBx8X3Z29oHHfvnLX8ajjz56yPOVvyv3ExERJQImFkREGnDVVVfBarXio48+iv5d+VP5+5VXXik6NCIiomFhYkFEpAFpaWm45ZZb8Mgjj0T/rvyp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/6zcVz7glD8n7Vu5cqXSgC2v1CSPPux7OeOMMw46HeqXv/yl0tj/056cn2poaFBC6ZYtW/Dyyy+jrKxMmXIlP6a8JwYRkVaweZuIqB/effddZfThqquu6tf9bTYbsrOzuSqUTsgH+fIBf0RExAG3ycHiT3/6E1paWva7Xp4qJU+NOxz5cWUhISHIyMhQmv4fe+wx5OTk+PEnICIKPAYLIqKf6O7uVs4gy3sIyH0Sb7zxBu666y5ludkLLrjgoGezly5dinPOOQd5eXnKlKlXXnkFr7322gH7GZA2yf+fhyKv2rSn2frnmveHDRu23+3yXids9iciPWGwICL6CTlIJCUlKWeco6KilNWg5Dnv8gZn8h4DP1VQUKCcbV6wYAG2b9+uLFebm5urLD87c+ZMIT8DERFRsEleni4hIiIiIiIfsXmbiIiIiIh8xmBBREREREQ+Y7AgIiIiIiKfMVgQEREREZHPGCyIiIiIiMhnDBZEREREROQzBgsiIiIiIvIZgwUREREREfmMwYKIiIiIiHzGYEFERERERD5jsCAiIiIiIp8xWBARERERkc8YLIiIiIiIyGcMFkRERERE5DMGCyIiIiIi8hmDBRERERER+YzBgoiIiIiIfMZgQUREREREPmOwICIiIiIinzFYEBERERGRzxgsiIiIiIjIZwwWRERERETkMwYLIiIiIiLyGYMFERERERH5jMGCiIiIiIh8xmBBREREREQ+Y7AgIiIiIiKfMVgQEREREZHPGCyIiIiIiMhnDBZEREREROQzBgsiIiIiIvIZgwUREREREfmMwYKIiIiIiHzGYEFERERERD5jsCAiIiIiIp8xWBARERERkc8YLIiIiIiIyGcMFkRERERE5DMGCyIiIiIi8hmDBRERERER+YzBgoiIiIiIfMZgQUREREREPmOwICIiIiIinzFYEBERERGRzxgsiIiIiIjIZwwWRERERETkMwYLIiIiIiLyGYMFERERERH5jMGCiIiIiIh8xmBBREREREQ+Y7AgIiIiIiKfMVgQEREREZHPGCyIiIiIiMhnDBZEREREROQzBgsiIiIiIoKv/h/durT0bSgJ+wAAAABJRU5ErkJggg==", "text/plain": [ "
" ] @@ -797,7 +588,7 @@ }, { "cell_type": "code", - "execution_count": 17, + "execution_count": 72, "metadata": { "id": "5WjglE6d_YO9" }, @@ -823,7 +614,7 @@ }, { "cell_type": "code", - "execution_count": 18, + "execution_count": 73, "metadata": { "colab": { "base_uri": "https://localhost:8080/" @@ -835,24 +626,24 @@ { "data": { "text/plain": [ - "OrderedDict([('AAPL', 0.03946),\n", - " ('AMD', 0.02568),\n", - " ('BAC', 0.0386),\n", - " ('BLK', 0.07889),\n", - " ('CVS', 0.05889),\n", - " ('DIS', 0.04687),\n", - " ('INTU', 0.05174),\n", - " ('JD', 0.17291),\n", - " ('MA', 0.12155),\n", - " ('NVDA', 0.03982),\n", - " ('PBI', 0.04325),\n", - " ('TGT', 0.04885),\n", - " ('TM', 0.07227),\n", - " ('UL', 0.09158),\n", - " ('WMT', 0.06963)])" + "OrderedDict([('BLK', 0.06134),\n", + " ('BAC', 0.12392),\n", + " ('AAPL', 0.04174),\n", + " ('TM', 0.06798),\n", + " ('WMT', 0.07782),\n", + " ('JD', 0.0837),\n", + " ('INTU', 0.04715),\n", + " ('MA', 0.03877),\n", + " ('UL', 0.04158),\n", + " ('CVS', 0.12008),\n", + " ('DIS', 0.06228),\n", + " ('AMD', 0.04705),\n", + " ('NVDA', 0.06144),\n", + " ('PBI', 0.05161),\n", + " ('TGT', 0.07355)])" ] }, - "execution_count": 18, + "execution_count": 73, "metadata": {}, "output_type": "execute_result" } @@ -866,7 +657,7 @@ }, { "cell_type": "code", - "execution_count": 19, + "execution_count": 74, "metadata": { "colab": { "base_uri": "https://localhost:8080/" @@ -879,9 +670,9 @@ "name": "stdout", "output_type": "stream", "text": [ - "Expected annual return: 18.0%\n", - "Annual volatility: 10.7%\n", - "Sharpe Ratio: 1.68\n" + "Expected annual return: 3.3%\n", + "Annual volatility: 10.1%\n", + "Sharpe Ratio: 0.32\n" ] } ], @@ -900,7 +691,7 @@ }, { "cell_type": "code", - "execution_count": 20, + "execution_count": 75, "metadata": { "colab": { "base_uri": "https://localhost:8080/" @@ -912,24 +703,24 @@ { "data": { "text/plain": [ - "OrderedDict([('AAPL', 0.03989),\n", - " ('AMD', 0.02581),\n", - " ('BAC', 0.03888),\n", - " ('BLK', 0.08151),\n", - " ('CVS', 0.06007),\n", - " ('DIS', 0.04754),\n", - " ('INTU', 0.05276),\n", - " ('JD', 0.15),\n", - " ('MA', 0.12901),\n", - " ('NVDA', 0.04043),\n", - " ('PBI', 0.04397),\n", - " ('TGT', 0.04958),\n", - " ('TM', 0.07429),\n", - " ('UL', 0.09494),\n", - " ('WMT', 0.0713)])" + "OrderedDict([('BLK', 0.06135),\n", + " ('BAC', 0.12391),\n", + " ('AAPL', 0.04174),\n", + " ('TM', 0.06797),\n", + " ('WMT', 0.07782),\n", + " ('JD', 0.08367),\n", + " ('INTU', 0.04715),\n", + " ('MA', 0.03877),\n", + " ('UL', 0.04158),\n", + " ('CVS', 0.12007),\n", + " ('DIS', 0.0623),\n", + " ('AMD', 0.04706),\n", + " ('NVDA', 0.06144),\n", + " ('PBI', 0.05163),\n", + " ('TGT', 0.07354)])" ] }, - "execution_count": 20, + "execution_count": 75, "metadata": {}, "output_type": "execute_result" } @@ -960,7 +751,7 @@ }, { "cell_type": "code", - "execution_count": 21, + "execution_count": 76, "metadata": { "id": "WYIshUU__YO-" }, @@ -973,7 +764,7 @@ }, { "cell_type": "code", - "execution_count": 22, + "execution_count": 77, "metadata": { "colab": { "base_uri": "https://localhost:8080/" @@ -985,24 +776,24 @@ { "data": { "text/plain": [ - "OrderedDict([('AAPL', 0.04227),\n", - " ('AMD', 0.03306),\n", - " ('BAC', 0.04204),\n", - " ('BLK', 0.08771),\n", - " ('CVS', 0.0706),\n", - " ('DIS', 0.0552),\n", - " ('INTU', 0.06376),\n", - " ('JD', 0.10104),\n", - " ('MA', 0.09691),\n", - " ('NVDA', 0.04684),\n", - " ('PBI', 0.05062),\n", - " ('TGT', 0.0585),\n", - " ('TM', 0.08268),\n", - " ('UL', 0.09063),\n", - " ('WMT', 0.07813)])" + "OrderedDict([('BLK', 0.06667),\n", + " ('BAC', 0.06667),\n", + " ('AAPL', 0.06667),\n", + " ('TM', 0.06667),\n", + " ('WMT', 0.06667),\n", + " ('JD', 0.06667),\n", + " ('INTU', 0.06667),\n", + " ('MA', 0.06667),\n", + " ('UL', 0.06667),\n", + " ('CVS', 0.06667),\n", + " ('DIS', 0.06667),\n", + " ('AMD', 0.06667),\n", + " ('NVDA', 0.06667),\n", + " ('PBI', 0.06667),\n", + " ('TGT', 0.06667)])" ] }, - "execution_count": 22, + "execution_count": 77, "metadata": {}, "output_type": "execute_result" } @@ -1045,7 +836,7 @@ }, { "cell_type": "code", - "execution_count": 23, + "execution_count": 78, "metadata": { "colab": { "base_uri": "https://localhost:8080/" @@ -1057,24 +848,24 @@ { "data": { "text/plain": [ - "OrderedDict([('AAPL', 0.05695),\n", - " ('AMD', 0.0304),\n", - " ('BAC', 0.05892),\n", - " ('BLK', 0.07322),\n", - " ('CVS', 0.06945),\n", - " ('DIS', 0.0644),\n", - " ('INTU', 0.06689),\n", + "OrderedDict([('BLK', 0.06439),\n", + " ('BAC', 0.06453),\n", + " ('AAPL', 0.06398),\n", + " ('TM', 0.06443),\n", + " ('WMT', 0.06447),\n", " ('JD', 0.1),\n", - " ('MA', 0.07491),\n", - " ('NVDA', 0.05933),\n", - " ('PBI', 0.06263),\n", - " ('TGT', 0.06564),\n", - " ('TM', 0.07206),\n", - " ('UL', 0.07388),\n", - " ('WMT', 0.07132)])" + " ('INTU', 0.06418),\n", + " ('MA', 0.06384),\n", + " ('UL', 0.064),\n", + " ('CVS', 0.06454),\n", + " ('DIS', 0.06439),\n", + " ('AMD', 0.06414),\n", + " ('NVDA', 0.06439),\n", + " ('PBI', 0.06425),\n", + " ('TGT', 0.06446)])" ] }, - "execution_count": 23, + "execution_count": 78, "metadata": {}, "output_type": "execute_result" } @@ -1108,7 +899,7 @@ }, { "cell_type": "code", - "execution_count": 24, + "execution_count": 79, "metadata": { "colab": { "base_uri": "https://localhost:8080/" @@ -1120,24 +911,24 @@ { "data": { "text/plain": [ - "OrderedDict([('AAPL', 0.04699),\n", - " ('AMD', 0.03341),\n", - " ('BAC', 0.04672),\n", - " ('BLK', 0.07872),\n", - " ('CVS', 0.06334),\n", - " ('DIS', 0.05386),\n", - " ('INTU', 0.05806),\n", - " ('JD', 0.13128),\n", - " ('MA', 0.10312),\n", - " ('NVDA', 0.04802),\n", - " ('PBI', 0.05095),\n", - " ('TGT', 0.05554),\n", - " ('TM', 0.07354),\n", - " ('UL', 0.08566),\n", - " ('WMT', 0.07079)])" + "OrderedDict([('BLK', 0.06414),\n", + " ('BAC', 0.10512),\n", + " ('AAPL', 0.04703),\n", + " ('TM', 0.06939),\n", + " ('WMT', 0.07655),\n", + " ('JD', 0.08082),\n", + " ('INTU', 0.05212),\n", + " ('MA', 0.04418),\n", + " ('UL', 0.04686),\n", + " ('CVS', 0.10367),\n", + " ('DIS', 0.0648),\n", + " ('AMD', 0.05179),\n", + " ('NVDA', 0.06425),\n", + " ('PBI', 0.05574),\n", + " ('TGT', 0.07354)])" ] }, - "execution_count": 24, + "execution_count": 79, "metadata": {}, "output_type": "execute_result" } @@ -1157,7 +948,7 @@ }, { "cell_type": "code", - "execution_count": 25, + "execution_count": 80, "metadata": { "colab": { "base_uri": "https://localhost:8080/" @@ -1169,24 +960,24 @@ { "data": { "text/plain": [ - "OrderedDict([('AAPL', 0.1),\n", - " ('AMD', 0.0339),\n", - " ('BAC', 0.04866),\n", - " ('BLK', 0.07516),\n", - " ('CVS', 0.06205),\n", - " ('DIS', 0.05424),\n", - " ('INTU', 0.05646),\n", - " ('JD', 0.11054),\n", - " ('MA', 0.09092),\n", - " ('NVDA', 0.049),\n", - " ('PBI', 0.05258),\n", - " ('TGT', 0.05526),\n", - " ('TM', 0.06836),\n", - " ('UL', 0.0771),\n", - " ('WMT', 0.06577)])" + "OrderedDict([('BLK', 0.1),\n", + " ('BAC', 0.09752),\n", + " ('AAPL', 0.04681),\n", + " ('TM', 0.06702),\n", + " ('WMT', 0.07246),\n", + " ('JD', 0.07691),\n", + " ('INTU', 0.05186),\n", + " ('MA', 0.04374),\n", + " ('UL', 0.04673),\n", + " ('CVS', 0.09528),\n", + " ('DIS', 0.06269),\n", + " ('AMD', 0.05138),\n", + " ('NVDA', 0.06267),\n", + " ('PBI', 0.05454),\n", + " ('TGT', 0.07039)])" ] }, - "execution_count": 25, + "execution_count": 80, "metadata": {}, "output_type": "execute_result" } @@ -1203,7 +994,7 @@ }, { "cell_type": "code", - "execution_count": 26, + "execution_count": 81, "metadata": { "colab": { "base_uri": "https://localhost:8080/" @@ -1215,24 +1006,24 @@ { "data": { "text/plain": [ - "OrderedDict([('AAPL', 0.09422),\n", - " ('AMD', 0.1627),\n", - " ('BAC', 0.04346),\n", - " ('BLK', -0.04221),\n", - " ('CVS', -0.1778),\n", - " ('DIS', 0.20785),\n", - " ('INTU', 0.1059),\n", - " ('JD', 0.31068),\n", - " ('MA', 0.37613),\n", - " ('NVDA', 0.41065),\n", - " ('PBI', -0.02656),\n", - " ('TGT', 0.01202),\n", - " ('TM', -0.47356),\n", - " ('UL', -0.83251),\n", - " ('WMT', -0.17096)])" + "OrderedDict([('BLK', -0.00721),\n", + " ('BAC', -0.47178),\n", + " ('AAPL', 0.30834),\n", + " ('TM', 0.11669),\n", + " ('WMT', -0.12519),\n", + " ('JD', -0.00213),\n", + " ('INTU', 0.00338),\n", + " ('MA', 0.33556),\n", + " ('UL', 0.33878),\n", + " ('CVS', -0.81831),\n", + " ('DIS', 0.11905),\n", + " ('AMD', 0.21248),\n", + " ('NVDA', -0.09365),\n", + " ('PBI', 0.22629),\n", + " ('TGT', -0.1423)])" ] }, - "execution_count": 26, + "execution_count": 81, "metadata": {}, "output_type": "execute_result" } @@ -1265,7 +1056,7 @@ }, { "cell_type": "code", - "execution_count": 27, + "execution_count": 82, "metadata": { "colab": { "base_uri": "https://localhost:8080/" @@ -1277,24 +1068,24 @@ { "data": { "text/plain": [ - "OrderedDict([('AAPL', 0.0),\n", - " ('AMD', 0.05561),\n", + "OrderedDict([('BLK', 0.0),\n", " ('BAC', 0.0),\n", - " ('BLK', 0.0),\n", - " ('CVS', 0.0),\n", - " ('DIS', 0.0),\n", - " ('INTU', 0.0),\n", + " ('AAPL', 0.2054),\n", + " ('TM', 0.00401),\n", + " ('WMT', 0.0),\n", " ('JD', 0.0),\n", - " ('MA', 0.0),\n", - " ('NVDA', 0.94439),\n", - " ('PBI', 0.0),\n", - " ('TGT', 0.0),\n", - " ('TM', 0.0),\n", - " ('UL', 0.0),\n", - " ('WMT', 0.0)])" + " ('INTU', 0.0),\n", + " ('MA', 0.24622),\n", + " ('UL', 0.23133),\n", + " ('CVS', 0.0),\n", + " ('DIS', 0.02419),\n", + " ('AMD', 0.14958),\n", + " ('NVDA', 0.0),\n", + " ('PBI', 0.13927),\n", + " ('TGT', 0.0)])" ] }, - "execution_count": 27, + "execution_count": 82, "metadata": {}, "output_type": "execute_result" } @@ -1318,7 +1109,7 @@ }, { "cell_type": "code", - "execution_count": 28, + "execution_count": 83, "metadata": { "colab": { "base_uri": "https://localhost:8080/" @@ -1330,10 +1121,10 @@ { "data": { "text/plain": [ - "np.float64(1.0)" + "np.float64(0.9999999999999999)" ] }, - "execution_count": 28, + "execution_count": 83, "metadata": {}, "output_type": "execute_result" } @@ -1344,7 +1135,7 @@ }, { "cell_type": "code", - "execution_count": 29, + "execution_count": 84, "metadata": { "colab": { "base_uri": "https://localhost:8080/" @@ -1356,24 +1147,24 @@ { "data": { "text/plain": [ - "OrderedDict([('AAPL', 0.06667),\n", - " ('AMD', 0.06667),\n", + "OrderedDict([('BLK', 0.06667),\n", " ('BAC', 0.06667),\n", - " ('BLK', 0.06667),\n", - " ('CVS', 0.06667),\n", - " ('DIS', 0.06667),\n", - " ('INTU', 0.06667),\n", + " ('AAPL', 0.06667),\n", + " ('TM', 0.06667),\n", + " ('WMT', 0.06667),\n", " ('JD', 0.06667),\n", + " ('INTU', 0.06667),\n", " ('MA', 0.06667),\n", + " ('UL', 0.06667),\n", + " ('CVS', 0.06667),\n", + " ('DIS', 0.06667),\n", + " ('AMD', 0.06667),\n", " ('NVDA', 0.06667),\n", " ('PBI', 0.06667),\n", - " ('TGT', 0.06667),\n", - " ('TM', 0.06667),\n", - " ('UL', 0.06667),\n", - " ('WMT', 0.06667)])" + " ('TGT', 0.06667)])" ] }, - "execution_count": 29, + "execution_count": 84, "metadata": {}, "output_type": "execute_result" } @@ -1409,9 +1200,9 @@ "provenance": [] }, "kernelspec": { - "display_name": "Python 3 (ipykernel)", - "name": "python3", - "language": "python" + "display_name": "Python 3", + "language": "python", + "name": "python3" }, "language_info": { "codemirror_mode": { @@ -1423,7 +1214,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.12.4" + "version": "3.11.0" } }, "nbformat": 4, diff --git a/cookbook/4-Black-Litterman-Allocation.ipynb b/cookbook/4-Black-Litterman-Allocation.ipynb index 46c1a0b8..6d361ee5 100644 --- a/cookbook/4-Black-Litterman-Allocation.ipynb +++ b/cookbook/4-Black-Litterman-Allocation.ipynb @@ -35,156 +35,118 @@ }, { "cell_type": "code", + "execution_count": 55, "metadata": { + "ExecuteTime": { + "end_time": "2025-11-12T08:11:48.286018Z", + "start_time": "2025-11-12T08:11:47.649567Z" + }, "colab": { "base_uri": "https://localhost:8080/" }, "id": "sXdbiHc0AnfS", - "outputId": "5ced30c2-5248-4827-a15d-955380574b51", - "ExecuteTime": { - "end_time": "2025-11-12T08:11:48.286018Z", - "start_time": "2025-11-12T08:11:47.649567Z" - } + "outputId": "5ced30c2-5248-4827-a15d-955380574b51" }, - "source": [ - "!pip install pandas numpy matplotlib yfinance PyPortfolioOpt\n", - "import os\n", - "if not os.path.isdir('data'):\n", - " os.system('git clone https://github.com/pyportfolio/pyportfolioopt.git')\n", - " os.chdir('PyPortfolioOpt/cookbook')" - ], "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "Requirement already satisfied: pandas in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (2.3.3)\r\n", - "Requirement already satisfied: numpy in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (2.3.4)\r\n", - "Requirement already satisfied: matplotlib in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (3.10.7)\r\n", - "Requirement already satisfied: yfinance in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (0.2.66)\r\n", - "Requirement already satisfied: PyPortfolioOpt in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (1.5.6)\r\n", - "Requirement already satisfied: python-dateutil>=2.8.2 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from pandas) (2.9.0.post0)\r\n", - "Requirement already satisfied: pytz>=2020.1 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from pandas) (2025.2)\r\n", - "Requirement already satisfied: tzdata>=2022.7 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from pandas) (2025.2)\r\n", - "Requirement already satisfied: contourpy>=1.0.1 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from matplotlib) (1.3.3)\r\n", - "Requirement already satisfied: cycler>=0.10 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from matplotlib) (0.12.1)\r\n", - "Requirement already satisfied: fonttools>=4.22.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from matplotlib) (4.60.1)\r\n", - "Requirement already satisfied: kiwisolver>=1.3.1 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from matplotlib) (1.4.9)\r\n", - "Requirement already satisfied: packaging>=20.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from matplotlib) (25.0)\r\n", - "Requirement already satisfied: pillow>=8 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from matplotlib) (12.0.0)\r\n", - "Requirement already satisfied: pyparsing>=3 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from matplotlib) (3.2.5)\r\n", - "Requirement already satisfied: requests>=2.31 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from yfinance) (2.32.5)\r\n", - "Requirement already satisfied: multitasking>=0.0.7 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from yfinance) (0.0.12)\r\n", - "Requirement already satisfied: platformdirs>=2.0.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from yfinance) (4.5.0)\r\n", - "Requirement already satisfied: frozendict>=2.3.4 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from yfinance) (2.4.7)\r\n", - "Requirement already satisfied: peewee>=3.16.2 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from yfinance) (3.18.3)\r\n", - "Requirement already satisfied: beautifulsoup4>=4.11.1 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from yfinance) (4.14.2)\r\n", - "Requirement already satisfied: curl_cffi>=0.7 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from yfinance) (0.13.0)\r\n", - "Requirement already satisfied: protobuf>=3.19.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from yfinance) (6.33.0)\r\n", - "Requirement already satisfied: websockets>=13.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from yfinance) (15.0.1)\r\n", - "Requirement already satisfied: cvxpy>=1.1.19 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from PyPortfolioOpt) (1.7.3)\r\n", - "Requirement already satisfied: scikit-learn>=0.24.1 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from PyPortfolioOpt) (1.7.2)\r\n", - "Requirement already satisfied: scipy>=1.3.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from PyPortfolioOpt) (1.16.3)\r\n", - "Requirement already satisfied: soupsieve>1.2 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from beautifulsoup4>=4.11.1->yfinance) (2.8)\r\n", - "Requirement already satisfied: typing-extensions>=4.0.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from beautifulsoup4>=4.11.1->yfinance) (4.15.0)\r\n", - "Requirement already satisfied: cffi>=1.12.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from curl_cffi>=0.7->yfinance) (2.0.0)\r\n", - "Requirement already satisfied: certifi>=2024.2.2 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from curl_cffi>=0.7->yfinance) (2025.11.12)\r\n", - "Requirement already satisfied: osqp>=1.0.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from cvxpy>=1.1.19->PyPortfolioOpt) (1.0.5)\r\n", - "Requirement already satisfied: clarabel>=0.5.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from cvxpy>=1.1.19->PyPortfolioOpt) (0.11.1)\r\n", - "Requirement already satisfied: scs>=3.2.4.post1 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from cvxpy>=1.1.19->PyPortfolioOpt) (3.2.9)\r\n", - "Requirement already satisfied: six>=1.5 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from python-dateutil>=2.8.2->pandas) (1.17.0)\r\n", - "Requirement already satisfied: charset_normalizer<4,>=2 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from requests>=2.31->yfinance) (3.4.4)\r\n", - "Requirement already satisfied: idna<4,>=2.5 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from requests>=2.31->yfinance) (3.11)\r\n", - "Requirement already satisfied: urllib3<3,>=1.21.1 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from requests>=2.31->yfinance) (2.5.0)\r\n", - "Requirement already satisfied: joblib>=1.2.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from scikit-learn>=0.24.1->PyPortfolioOpt) (1.5.2)\r\n", - "Requirement already satisfied: threadpoolctl>=3.1.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from scikit-learn>=0.24.1->PyPortfolioOpt) (3.6.0)\r\n", - "Requirement already satisfied: pycparser in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from cffi>=1.12.0->curl_cffi>=0.7->yfinance) (2.23)\r\n", - "Requirement already satisfied: jinja2 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from osqp>=1.0.0->cvxpy>=1.1.19->PyPortfolioOpt) (3.1.6)\r\n", - "Requirement already satisfied: setuptools in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from osqp>=1.0.0->cvxpy>=1.1.19->PyPortfolioOpt) (80.9.0)\r\n", - "Requirement already satisfied: MarkupSafe>=2.0 in /Users/thomasschmelzer/projects/PyPortfolioOpt/.venv/lib/python3.12/site-packages (from jinja2->osqp>=1.0.0->cvxpy>=1.1.19->PyPortfolioOpt) (3.0.3)\r\n", - "\r\n", - "\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m A new release of pip is available: \u001B[0m\u001B[31;49m24.3.1\u001B[0m\u001B[39;49m -> \u001B[0m\u001B[32;49m25.3\u001B[0m\r\n", - "\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m To update, run: \u001B[0m\u001B[32;49mpip install --upgrade pip\u001B[0m\r\n" + "Requirement already satisfied: pandas in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (2.2.3)\n", + "Requirement already satisfied: numpy in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (2.4.2)\n", + "Requirement already satisfied: matplotlib in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (3.10.0)\n", + "Requirement already satisfied: PyPortfolioOpt in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (1.6.0)\n", + "Requirement already satisfied: python-dateutil>=2.8.2 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from pandas) (2.9.0.post0)\n", + "Requirement already satisfied: pytz>=2020.1 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from pandas) (2025.1)\n", + "Requirement already satisfied: tzdata>=2022.7 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from pandas) (2025.1)\n", + "Requirement already satisfied: contourpy>=1.0.1 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from matplotlib) (1.3.1)\n", + "Requirement already satisfied: cycler>=0.10 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from matplotlib) (0.12.1)\n", + "Requirement already satisfied: fonttools>=4.22.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from matplotlib) (4.56.0)\n", + "Requirement already satisfied: kiwisolver>=1.3.1 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from matplotlib) (1.4.8)\n", + "Requirement already satisfied: packaging>=20.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from matplotlib) (24.2)\n", + "Requirement already satisfied: pillow>=8 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from matplotlib) (11.1.0)\n", + "Requirement already satisfied: pyparsing>=2.3.1 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from matplotlib) (3.2.1)\n", + "Requirement already satisfied: cvxpy>=1.1.19 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from PyPortfolioOpt) (1.8.1)\n", + "Requirement already satisfied: scikit-base<0.14.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from PyPortfolioOpt) (0.13.1)\n", + "Requirement already satisfied: scikit-learn>=0.24.1 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from PyPortfolioOpt) (1.6.1)\n", + "Requirement already satisfied: scipy>=1.3.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from PyPortfolioOpt) (1.15.2)\n", + "Requirement already satisfied: osqp>=1.0.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from cvxpy>=1.1.19->PyPortfolioOpt) (1.1.1)\n", + "Requirement already satisfied: clarabel>=0.5.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from cvxpy>=1.1.19->PyPortfolioOpt) (0.11.1)\n", + "Requirement already satisfied: scs>=3.2.4.post1 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from cvxpy>=1.1.19->PyPortfolioOpt) (3.2.11)\n", + "Requirement already satisfied: highspy>=1.11.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from cvxpy>=1.1.19->PyPortfolioOpt) (1.13.1)\n", + "Requirement already satisfied: six>=1.5 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from python-dateutil>=2.8.2->pandas) (1.17.0)\n", + "Requirement already satisfied: joblib>=1.2.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from scikit-learn>=0.24.1->PyPortfolioOpt) (1.4.2)\n", + "Requirement already satisfied: threadpoolctl>=3.1.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from scikit-learn>=0.24.1->PyPortfolioOpt) (3.5.0)\n", + "Requirement already satisfied: cffi in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from clarabel>=0.5.0->cvxpy>=1.1.19->PyPortfolioOpt) (1.17.1)\n", + "Requirement already satisfied: jinja2 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from osqp>=1.0.0->cvxpy>=1.1.19->PyPortfolioOpt) (3.1.5)\n", + "Requirement already satisfied: setuptools in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from osqp>=1.0.0->cvxpy>=1.1.19->PyPortfolioOpt) (65.5.0)\n", + "Requirement already satisfied: pycparser in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from cffi->clarabel>=0.5.0->cvxpy>=1.1.19->PyPortfolioOpt) (2.22)\n", + "Requirement already satisfied: MarkupSafe>=2.0 in c:\\users\\shuvam\\appdata\\local\\programs\\python\\python311\\lib\\site-packages (from jinja2->osqp>=1.0.0->cvxpy>=1.1.19->PyPortfolioOpt) (2.1.5)\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "[notice] A new release of pip available: 22.3 -> 26.0.1\n", + "[notice] To update, run: python.exe -m pip install --upgrade pip\n" ] } ], - "execution_count": 6 + "source": [ + "!pip install pandas numpy matplotlib PyPortfolioOpt\n", + "import os\n", + "if not os.path.isdir('data'):\n", + " os.system('git clone https://github.com/pyportfolio/pyportfolioopt.git')\n", + " os.chdir('PyPortfolioOpt/cookbook')" + ] }, { "cell_type": "code", + "execution_count": 56, "metadata": { - "id": "bs5cBlLfAbNf", "ExecuteTime": { "end_time": "2025-11-12T08:11:48.297230Z", "start_time": "2025-11-12T08:11:48.294399Z" - } + }, + "id": "bs5cBlLfAbNf" }, + "outputs": [], "source": [ "import numpy as np\n", "import pandas as pd\n", "import matplotlib.pyplot as plt\n", - "import yfinance as yf" - ], - "outputs": [], - "execution_count": 7 + "from pypfopt.data.data_loader import load_stockdata, load_marketcaps" + ] }, { "cell_type": "code", + "execution_count": 57, "metadata": { - "id": "_2kfAeqOAbNg", "ExecuteTime": { "end_time": "2025-11-12T08:11:48.315503Z", "start_time": "2025-11-12T08:11:48.312797Z" - } + }, + "id": "_2kfAeqOAbNg" }, + "outputs": [], "source": [ "tickers = [\"MSFT\", \"AMZN\", \"NAT\", \"BAC\", \"DPZ\", \"DIS\", \"KO\", \"MCD\", \"COST\", \"SBUX\"]" - ], - "outputs": [], - "execution_count": 8 + ] }, { + "cell_type": "code", + "execution_count": 58, "metadata": { "ExecuteTime": { "end_time": "2025-11-12T08:11:49.603251Z", "start_time": "2025-11-12T08:11:48.335629Z" } }, - "cell_type": "code", - "source": [ - "ohlc = yf.download(tickers, period=\"max\")\n", - "prices = ohlc[\"Close\"]\n", - "prices.tail()" - ], "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/var/folders/_3/k_9k5d5n5zz57w7qfll9rzs40000gn/T/ipykernel_60334/2708075403.py:1: FutureWarning: YF.download() has changed argument auto_adjust default to True\n", - " ohlc = yf.download(tickers, period=\"max\")\n", - "[*********************100%***********************] 10 of 10 completed\n" - ] - }, { "data": { - "text/plain": [ - "Ticker AMZN BAC COST DIS DPZ \\\n", - "Date \n", - "2025-11-05 250.199997 52.450001 935.030029 111.360001 400.410004 \n", - "2025-11-06 243.039993 53.290001 923.580017 110.489998 401.459991 \n", - "2025-11-07 244.410004 53.200001 922.739990 110.739998 410.179993 \n", - "2025-11-10 248.399994 53.419998 915.559998 112.239998 407.589996 \n", - "2025-11-11 249.100006 53.630001 913.859985 114.849998 409.230011 \n", - "\n", - "Ticker KO MCD MSFT NAT SBUX \n", - "Date \n", - "2025-11-05 68.510002 305.670013 507.160004 3.57 82.879997 \n", - "2025-11-06 69.059998 298.410004 497.100006 3.59 82.220001 \n", - "2025-11-07 70.550003 299.660004 496.820007 3.56 85.570000 \n", - "2025-11-10 70.519997 299.100006 506.000000 3.65 84.599998 \n", - "2025-11-11 71.610001 306.829987 508.679993 3.63 86.419998 " - ], "text/html": [ "
\n", "